@font-face{font-family:Riviera;src:url(../media/riviera-light.otf) format("opentype");font-weight:300;font-display:swap}@font-face{font-family:Riviera;src:url(../media/riviera-regular.otf) format("opentype");font-weight:400;font-display:swap}:root{font-family:Riviera,Arial,sans-serif;color:#f7f5fa;background:#151218;font-synthesis:none;font-weight:300;--line:rgba(255,255,255,.17);--muted:#c2beca;--soft:rgba(255,255,255,.055)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0;background:none}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline:2px solid #d3b9fa;outline-offset:5px}button{touch-action:manipulation}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:300}button svg,a svg{flex-shrink:0}button{transition:background .2s,border-color .2s,transform .2s}button:not(:disabled):active{transform:scale(.985)}.app{min-height:100svh;position:relative;display:flex;flex-direction:column;isolation:isolate;overflow:hidden}.backdrop{position:fixed;inset:0;z-index:-3}.backdrop img,.backdrop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,#0d091385,#0d09131f 48%,#0d0913cc)}.page-welcome .shade{background:linear-gradient(90deg,#170b22c7,#170b221a),linear-gradient(0deg,rgba(13,9,19,.5),transparent)}.header{height:104px;display:flex;align-items:center;justify-content:space-between;margin:0 4.7%;border-bottom:1px solid var(--line);flex-shrink:0}.wordmark{display:flex;gap:16px;align-items:center;padding:0}.wordmark img{width:33px;height:43px;object-fit:contain}.wordmark>span{font-size:13px;letter-spacing:.19em;font-weight:400;text-align:left}.wordmark>span>span{display:block;font-size:8px;letter-spacing:.39em;margin-top:7px}.header-right{display:flex;align-items:center;gap:25px}.mode{font-size:10px;letter-spacing:.11em;text-transform:uppercase;display:flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid var(--line);border-radius:30px}.mode i,.scene-status i{width:5px;height:5px;background:#e5d8f4;box-shadow:0 0 8px #e5d8f480;border-radius:50%;display:inline-block}.mode.disconnected{color:#f2b9af}.mode.disconnected i{background:#f2b9af}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#dfdbe5}.icon-button:hover{background:var(--soft)}main{width:90.6%;margin:0 auto;flex:1}.welcome{padding:clamp(65px,11vh,145px) 0 70px}.eyebrow{font-size:10px;letter-spacing:.3em;font-weight:400;text-transform:uppercase;color:#e0d7e8;line-height:1.6}.welcome h1{font-size:clamp(46px,5.5vw,82px);line-height:1.16;letter-spacing:-.025em;margin-top:26px}.welcome-copy{color:#ddd3e5;font-size:14px;line-height:1.85;margin-top:26px}.primary{min-height:50px;padding:15px 24px;border:1px solid #f5f3f6;border-radius:30px;background:#f5f3f6;color:#26212b;font-size:12px;letter-spacing:.025em;font-weight:400;display:inline-flex;gap:24px;align-items:center;justify-content:center}.primary:hover{background:#e7e0ed}.enter{margin-top:35px;min-width:245px}.welcome-caption{display:block;font-size:10px;margin-top:52px;letter-spacing:.1em;color:#c8bbd5}.footer{width:90.6%;margin:0 auto;height:94px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:20px;flex-shrink:0}.footer-note,.footer-center{font-size:8px;letter-spacing:.23em;color:#c9bfce}.footer-center{position:absolute;left:50%;transform:translate(-50%)}.footer-center>span{display:flex;align-items:center;gap:9px}.footer-right{display:flex;gap:12px;align-items:center}.footer-button{display:flex;align-items:center;gap:15px;font-size:12px;min-height:48px;border:1px solid var(--line);border-radius:30px;padding:12px 21px}.footer-button:hover,.footer-button.active{background:#ffffff12;border-color:#ffffff5c}.footer-button svg{stroke-width:1.3}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:31px 0 24px}.page-heading h1{font-size:clamp(27px,2.7vw,43px);letter-spacing:-.015em;margin-top:8px}.page-heading>p{font-size:11px;line-height:1.8;color:var(--muted);padding-bottom:3px}.model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.scene-card{border:1px solid var(--line);border-radius:3px;background:linear-gradient(135deg,#ffffff08,#ffffff02);position:relative;overflow:hidden;text-align:left;padding:0;min-width:0}.scene-card:hover:not(:disabled){background:#ffffff0e;border-color:#ffffff75}.motion{position:relative;aspect-ratio:392/243;width:100%;pointer-events:none}.motion>img,.motion>video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.motion>video{background:transparent}.card-label{display:flex;align-items:center;justify-content:space-between;padding:15px 22px 19px;font-size:11px;font-weight:400;letter-spacing:.18em;text-transform:uppercase}.card-label svg{opacity:.65;stroke-width:1.2}.model-card .motion{margin-top:-6px}.section-label{display:flex;gap:20px;align-items:center;font-size:8px;letter-spacing:.2em;margin:26px 0 13px;color:#d1c6d9}.fine-line{height:1px;background:var(--line);flex:1}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:30px}.signature-grid .scene-card{display:flex;align-items:center;min-height:145px}.signature-grid .motion{width:56%;flex-shrink:0}.signature-grid .card-label{padding:0 22px 0 4px;flex:1;gap:7px;font-size:10px;letter-spacing:.12em}.unavailable{font-size:9px;color:#c9c3cd;display:block;padding:0 22px 10px}.back{display:flex;align-items:center;gap:10px;color:#d1c6d9;font-size:11px;min-height:40px;padding:0;margin-bottom:12px}.back:hover{color:#fff}.events .page-heading{margin-top:22px}.segmented{padding:5px;border:1px solid var(--line);border-radius:30px;display:flex;gap:2px}.segmented button{padding:12px 30px;border-radius:25px;font-size:12px;min-width:115px;color:#cfc3d8}.segmented button[aria-selected=true]{background:#f1edf4;color:#281d31}.events-copy{font-size:12px;color:var(--muted);margin:0 0 24px}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:35px}.event-grid .motion{height:150px}.event-grid.kinetic{grid-template-columns:repeat(4,1fr);margin-top:45px}.event-grid.kinetic .motion{height:240px}.scene-detail{position:relative;padding-top:24px;display:flex;flex-direction:column}.scene-detail>.back{position:absolute;top:20px;left:0}.detail-title{text-align:center;padding-top:23px}.detail-title h1{font-size:clamp(28px,4vw,54px);text-transform:uppercase;letter-spacing:.21em;margin:12px 0 17px;padding-left:.21em}.detail-title>p:last-child{color:#d0c4dc;font-size:12px}.hero-scene{position:relative;min-height:280px;flex:1;max-height:480px;display:flex;align-items:center;justify-content:center}.hero-scene>.motion{max-width:630px;height:100%;min-height:310px;max-height:440px}.hero-car{position:relative;width:min(83%,1050px);z-index:2;align-self:flex-end;margin-top:140px;max-height:330px;object-fit:contain}.pendants{position:absolute;top:5px;width:72%;max-width:850px;height:160px;display:flex;justify-content:space-between;z-index:1}.pendants>span{width:1px;height:calc(62px + var(--n)*6px);background:linear-gradient(180deg,#eee5f222,#f3e4ff80);position:relative}.pendants>span>i{position:absolute;bottom:0;left:-3px;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 12px 3px #e2bbfa,0 0 35px 8px #b19add55}.pendants-ghost>span,.pendants-phantom>span{height:calc(112px - var(--n)*3px)}.pendants-spectre>span{height:calc(70px + var(--n)*2px)}.floor-glow{position:absolute;bottom:9%;height:8%;width:80%;background:#c29eda24;filter:blur(24px);border-radius:50%;z-index:0}.scene-controls{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:22px 0 30px}.scene-status{font-size:11px;display:flex;gap:10px;align-items:center;color:#d8cfdf}.secondary{border:1px solid #ffffff50;border-radius:28px;padding:13px 23px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:11px}.secondary:hover{background:#ffffff10;border-color:#ffffff90}.direction-controls{display:flex;gap:10px}.physical-note{font-size:9px;text-align:center;color:#bdb2c5;margin-bottom:15px}.error-banner{position:relative;z-index:4;margin:14px 4.7% 0;padding:16px 20px;background:#392728;border:1px solid #976561;display:flex;gap:20px;align-items:center;justify-content:space-between;font-size:12px;line-height:1.5;border-radius:4px}.error-banner button{text-decoration:underline;min-height:30px}.toast{position:fixed;bottom:105px;left:50%;transform:translate(-50%);background:#efeaf3;color:#2c2034;border-radius:30px;padding:15px 25px;font-size:12px;display:flex;gap:12px;align-items:center;z-index:8}.connecting{min-height:450px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px}.spin{animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}dialog{background:#211c27;color:#f7f2fc;border:1px solid #ffffff2c;border-radius:8px;padding:30px;width:min(590px,92vw);max-height:85svh;box-shadow:0 30px 100px #0009}dialog.wide{width:min(940px,94vw)}dialog::backdrop{background:#08040cd4;backdrop-filter:blur(12px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.modal-head h2{font-size:24px}.muted{color:#bcb3c6;font-size:12px;line-height:1.85;margin-bottom:24px}.small{font-size:10px;margin-top:25px}.light-row{padding:20px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.light-row>div:first-child{display:flex;align-items:center;gap:15px;font-size:13px}.light-row small{display:block;font-size:9px;color:#b7acbf;margin-top:7px}.light-switch{display:flex;gap:4px;border:1px solid var(--line);padding:4px;border-radius:24px}.light-switch button{border-radius:20px;padding:11px 12px;font-size:11px;display:flex;align-items:center;gap:5px}.light-switch button[aria-pressed=true]{background:#f1ebf5;color:#2d2136}.about h3{font-size:24px;margin:12px 0 18px}.about p,.help-content p{font-size:13px;line-height:1.9;color:#ccc0d7;margin-bottom:22px}.large-icon{width:56px;height:56px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center}.info-row{font-size:11px;display:flex;gap:20px;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line)}.about .muted{margin-top:25px}.help-content strong{font-weight:400;color:#f5eff9}label{display:flex;flex-direction:column;gap:10px;font-size:12px;margin-bottom:18px;color:#d0c6d8}input,select{background:#16131b;color:#eee8f4;border:1px solid #ffffff40;padding:13px;border-radius:4px;min-height:45px;width:100%}input:focus,select:focus{outline:1px solid #dec2f6}.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px 20px}.preset-grid label{text-transform:capitalize;font-size:11px}.preset-grid input{font-size:11px}.wide h3{font-size:23px;margin:22px 0 10px}.form-actions{display:flex;justify-content:space-between;gap:15px;margin-top:18px}.form-error{color:#ffc7c1;line-height:1.6;font-size:12px;margin:15px 0 20px}.history{margin-top:25px;font-size:10px;max-height:250px;overflow:auto}.history>div{padding:15px 0;border-bottom:1px solid var(--line)}.history p{margin-top:5px;color:#c6b9d1}@media(min-width:1500px){.showroom,.events,.scene-detail{max-width:1440px}.signature-grid .scene-card{min-height:170px}.page-heading{margin-top:45px}.model-grid .motion{max-height:245px}.signature-grid .motion{max-height:190px}}@media(max-width:1100px){.header{height:86px}.page-heading{margin-top:25px}.card-label{padding:13px 16px 17px;font-size:10px}.signature-grid .scene-card{min-height:125px}.signature-grid .card-label{font-size:9px;padding-right:13px}.signature-grid .card-label svg{width:14px}.footer{height:80px}.hero-scene{min-height:260px}.hero-car{margin-top:115px}.footer-center{font-size:7px}.event-grid.kinetic .motion{height:190px}}@media(max-width:760px){.header{height:80px;margin:0 6%}.wordmark>span{font-size:10px}.wordmark img{width:27px;height:36px}.header-right{gap:6px}.mode{font-size:8px;letter-spacing:.035em;padding:9px}.header-right .icon-button{width:34px}.wordmark{gap:10px}main{width:88%}.welcome{padding:85px 0 75px}.welcome h1{font-size:48px}.welcome-copy{font-size:12px}.welcome-caption{margin-top:40px}.footer{width:88%;height:85px}.footer-center{display:none}.footer-note{font-size:7px;max-width:110px;line-height:1.8}.footer-button{font-size:10px;padding:12px 15px;gap:10px}.footer-right{gap:5px}.footer-right>.icon-button{width:34px}.page-heading{display:block;margin:30px 0 20px}.page-heading>p{margin-top:15px;font-size:11px}.page-heading h1{font-size:27px}.model-grid{grid-template-columns:repeat(2,1fr);gap:12px}.signature-grid{grid-template-columns:1fr;gap:10px}.signature-grid .scene-card{min-height:104px}.signature-grid .motion{width:43%;max-height:130px}.signature-grid .card-label{font-size:12px;padding:0 22px}.section-label,.eyebrow{font-size:8px}.event-grid,.event-grid.kinetic{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.event-grid .motion,.event-grid.kinetic .motion{height:auto;aspect-ratio:392/243}.event-grid .card-label{font-size:9px;letter-spacing:.1em}.event-grid .card-label svg{width:14px}.segmented{margin-top:22px;width:fit-content}.segmented button{min-width:105px}.detail-title{padding-top:64px}.detail-title h1{font-size:32px}.detail-title>p:last-child{font-size:11px;line-height:1.8}.hero-car{width:105%;margin-top:135px}.hero-scene{min-height:265px;max-height:330px}.hero-scene>.motion{min-height:250px}.pendants{width:90%;height:140px;top:15px}.scene-controls{align-items:center;flex-direction:column;gap:25px;padding:15px 0 30px}.scene-status{font-size:10px}.direction-controls{gap:7px}.direction-controls .secondary{font-size:10px;padding:10px 17px}.modal-head h2{font-size:22px}dialog{padding:23px}.light-row{flex-wrap:wrap;gap:18px}.light-switch{margin-left:36px}.config-grid{grid-template-columns:1fr}.preset-grid{grid-template-columns:repeat(2,1fr)}.form-actions{flex-wrap:wrap}.toast{max-width:90%;font-size:11px;bottom:90px}.error-banner{font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
