@font-face{font-family:"GWM Sans UI";src:url("/assets/fonts/GWMSansUI-Light.woff2") format("woff2");font-display:swap;font-style:normal;font-weight:300}
@font-face{font-family:"GWM Sans UI";src:url("/assets/fonts/GWMSansUI-Regular.woff2") format("woff2");font-display:swap;font-style:normal;font-weight:400}
@font-face{font-family:"GWM Sans UI";src:url("/assets/fonts/GWMSansUI-Bold.woff2") format("woff2");font-display:swap;font-style:normal;font-weight:700}
:root{color-scheme:dark;--bg:#080c09;--ink:#e7e8dd;--muted:#939b8e;--leaf:#b7bd9d;--copper:#b69c7d;--line:#293029;--display:"GWM Sans UI",sans-serif;--body:"GWM Sans UI",sans-serif;--mono:"GWM Sans UI",sans-serif;--gutter:clamp(24px,5.3vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:clip}body:has(dialog[open]){overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%}figure,h1,h2,h3,p{margin:0}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--leaf);outline-offset:6px}::selection{background:var(--leaf);color:var(--bg)}
h1,h2{font-family:var(--display);font-weight:500;line-height:1.1;letter-spacing:-.045em;text-wrap:balance}h2{font-size:clamp(42px,5.7vw,88px)}.eyebrow{font:11px/1.5 var(--mono);color:var(--copper);letter-spacing:.2em}.section-shell{width:calc(100% - var(--gutter)*2);max-width:1320px;margin-inline:auto}.skip-link{position:fixed;z-index:100;top:-80px;left:20px;padding:10px 20px;background:var(--leaf);color:var(--bg)}.skip-link:focus{top:12px}
.site-header{position:fixed;inset:0 0 auto;z-index:40;height:74px;padding:0 var(--gutter);display:flex;align-items:center;gap:32px;background:rgb(8 12 9 / 72%);backdrop-filter:blur(18px);border-bottom:1px solid rgb(231 232 221 / 8%)}.brand{display:inline-flex;align-items:center;gap:11px;font:600 23px var(--body);white-space:nowrap}.brand img{border-radius:7px}.desktop-nav{display:flex;gap:27px;margin-left:auto;font-size:12px;color:var(--muted)}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--ink)}.header-actions{display:flex;gap:15px;align-items:center}.header-cta{font-size:11px;border:1px solid #41483b;padding:8px 16px;border-radius:30px}.header-cta:hover{background:#242b20}.menu-toggle{display:none;width:36px;height:40px;background:none;padding:9px 5px}.menu-toggle span{height:1px;background:var(--ink);display:block;margin:6px 0}.mobile-nav{position:absolute;inset:100% 0 auto;background:#0d120f;padding:20px var(--gutter);border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:12px 0;color:var(--muted)}
.page-progress{position:fixed;z-index:60;inset:0 auto 0 0;width:2px;background:#22291e}.page-progress>span{display:block;width:100%;height:100%;transform:scaleY(0);transform-origin:top;background:linear-gradient(var(--leaf),var(--copper))}
.cinema-story{height:100svh;position:relative;isolation:isolate}.cinema-story.is-enhanced{height:1660svh}.cinema-stage{position:sticky;top:0;height:100svh;min-height:520px;overflow:hidden;background:var(--bg)}.ambient-light{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 70% 54%,#37433540,transparent 58%);transition:background 1s}.cinema-stage[data-active="2"] .ambient-light{background:radial-gradient(ellipse at 30% 54%,#43332138,transparent 58%)}.cinema-stage[data-active="4"] .ambient-light{background:radial-gradient(ellipse at 30% 54%,#30413438,transparent 60%)}
.device-viewport{position:absolute;inset:0;z-index:2;pointer-events:none}.phone-canvas{display:block;position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .8s;pointer-events:auto;touch-action:pan-y;cursor:grab}.phone-canvas.is-dragging{cursor:grabbing}.model-ready .phone-canvas{opacity:1}.device-fallback{position:absolute;left:42%;top:54%;width:57%;transform:translateY(-50%) rotate(-7deg);transition:opacity .4s}.fallback-phone{position:relative;padding:8px;border:2px solid #62695c;background:#020303;border-radius:32px;box-shadow:0 25px 65px #0009;overflow:hidden}.fallback-phone img,.fallback-phone canvas{width:100%;aspect-ratio:1664/768;object-fit:contain;background:#020403;border-radius:24px}.dynamic-island{position:absolute;left:calc(8px + 1.2%);top:35%;width:3.9%;height:30%;border-radius:15px;background:#000}.model-ready .device-fallback{opacity:0;visibility:hidden}#model-status{position:absolute;top:78%;left:45%;width:50%;text-align:center;font-size:11px;color:var(--muted)}
.cinema-copy{position:absolute;left:var(--gutter);top:50%;transform:translateY(-50%);z-index:5;width:38%;max-width:590px;pointer-events:none;will-change:transform,opacity}.cinema-copy>*{pointer-events:auto}.cinema-copy .eyebrow{margin-bottom:25px}.cinema-copy h1,.cinema-copy h2{font-size:clamp(45px,5.5vw,88px);line-height:1.11}.cinema-copy[data-scene="0"] h1{font-size:clamp(56px,7.2vw,116px)}.scene-description{font-size:clamp(13px,1.15vw,18px);line-height:1.9;color:var(--muted);margin-top:27px;max-width:38em}.cinema-copy.align-right{left:63%;width:calc(37% - var(--gutter));max-width:510px}.cinema-copy.align-right h2{font-size:clamp(49px,5.5vw,86px)}.text-link{display:inline-flex;align-items:center;gap:28px;background:none;padding:10px 0;font-size:13px;margin-top:28px;color:#c4cbb9}.text-link:hover{color:white}.text-link span{font-size:18px}.pill-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 23px;border:1px solid #59604d;border-radius:30px;background:#aebc9810;font-size:12px;color:#e1e5d4}.pill-button:hover{background:#bbc5a924}.quiet-button{background:none;font-size:12px;color:var(--muted);padding:12px}.layer-key{display:flex;gap:22px;margin:28px 0 25px;color:#b3bcaa;font-size:11px}.layer-key span:before{content:'';display:inline-block;width:4px;height:4px;border:1px solid #94a67c;margin:0 7px 2px 0;transform:rotate(45deg)}.layer-key span:nth-child(2):before{border-color:#c7b287}.layer-key span:nth-child(3):before{border-color:#f4d64c}.layer-key span:nth-child(4):before{border-color:#e6e9dc}
.simulation-copy{padding-top:16px}.simulation-copy h2{font-size:clamp(45px,4.8vw,76px)!important}.simulation-controls{margin-top:22px;max-width:335px}.simulation-controls label{display:flex;justify-content:space-between;align-items:center;color:#b6c0ad;font-size:12px}.simulation-controls label small{font:11px var(--mono);margin-left:7px;color:#85927c}.simulation-controls output{font:22px var(--body);color:var(--ink);font-variant-numeric:tabular-nums}.simulation-controls input{display:block;width:100%;height:22px;margin:5px 0 18px;accent-color:var(--leaf);cursor:ew-resize}.simulation-actions{display:flex;align-items:center;gap:8px}.simulation-actions>span{font-size:10px;color:#7e8b76;margin-left:auto}.simulation-actions .pill-button{min-height:36px;padding:7px 17px;font-size:11px}
.parameter-summary{display:flex;align-items:center;gap:14px;margin-top:21px}.parameter-summary strong{font:500 50px/1 var(--body);color:var(--ink)}.parameter-summary span{font-size:11px;line-height:1.5;color:var(--muted)}.parameter-summary b{font:10px var(--mono);font-weight:400;color:var(--copper)}.sensor-copy{left:var(--gutter);width:42%;max-width:560px}.sensor-actions{display:flex;align-items:center;gap:14px;margin-top:24px}.sensor-actions span{font:10px var(--mono);color:var(--copper)}.sensor-grid{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:7px;margin-top:20px;max-width:470px}.sensor-grid div{display:flex;flex-direction:column;gap:2px;border-top:1px solid #303a2e;padding:9px 0}.sensor-grid span{font-size:10px;color:var(--muted)}.sensor-grid strong{font:18px var(--body);font-weight:500}.cinema-stage[data-active="15"] .ambient-light{background:radial-gradient(ellipse at 72% 54%,#4c402544,transparent 60%)}.cinema-stage[data-active="13"] .ambient-light{background:radial-gradient(ellipse at 28% 54%,#30496748,transparent 60%)}
.scene-switches{display:flex;flex-wrap:wrap;gap:6px;margin-top:27px}.scene-switches button,.style-picker button{background:transparent;border:1px solid transparent;border-radius:30px;min-height:40px;padding:8px 19px;color:var(--muted);font-size:12px}.scene-switches button[aria-pressed=true],.style-picker button[aria-pressed=true]{border-color:#626b54;color:#e6eadc;background:#b7bd9d0d}.scene-switches button:hover,.style-picker button:hover{color:#fff}.capture-state{font-size:10px;letter-spacing:.03em;color:#7e8c76;margin-top:21px}.cinema-copy.centered{top:21%;left:10%;width:80%;max-width:none;text-align:center}.cinema-copy.centered h2{font-size:clamp(45px,5.7vw,88px)}.cinema-copy.centered h2 span{display:inline-block;margin-left:.25em}.cinema-copy.centered .scene-description{margin-inline:auto;margin-top:18px}.style-picker{position:absolute;bottom:14%;left:50%;transform:translateX(-50%);display:flex;white-space:nowrap;z-index:6;padding:5px;border-radius:40px;border:1px solid #353e30;background:#0b100cd9;backdrop-filter:blur(12px)}
.orbit-gallery{position:absolute;inset:0;z-index:1;pointer-events:none}.orbit-card{position:absolute;width:25%;left:62%;top:49%;opacity:0;will-change:transform,opacity;filter:brightness(.6);border-radius:15px;padding:5px;border:1px solid #6f78645c;background:#020303;box-shadow:0 25px 35px #0008}.orbit-card img{aspect-ratio:2.2;object-fit:contain;border-radius:10px}.orbit-card figcaption{font:9px var(--mono);letter-spacing:.15em;position:absolute;bottom:-26px;left:12px;color:#939d85}.cinema-stage[data-active="15"] .orbit-card{width:min(14vw,220px);filter:brightness(.76) saturate(.9);border-color:#8a96745c;box-shadow:0 20px 45px #000b}.cinema-stage[data-active="15"] .orbit-card figcaption{color:#c4cbb2;font-size:8px}.cinema-bottom{position:absolute;bottom:0;inset-inline:var(--gutter);height:64px;display:flex;gap:30px;align-items:center;z-index:6;border-top:1px solid #c3d1b214;font-size:10px;color:#89947f}.cinema-bottom>span:first-child{min-width:92px}.scene-dots{display:flex;gap:2px}.scene-dots button{padding:12px 6px;background:none;position:relative;width:22px;height:32px}.scene-dots button:after{content:'';display:block;width:4px;height:4px;border-radius:50%;background:#49563e;transition:background .25s,transform .25s}.scene-dots button[aria-current]:after{background:#ccd2bd;transform:scale(1.55)}.scroll-hint{margin-left:auto;letter-spacing:.1em}.scroll-hint>span{margin-left:9px}.skip-story{margin-left:15px;color:#bac3ad}.scene-marker{position:absolute;left:0;width:1px;height:1px;scroll-margin-top:-86px;pointer-events:none}summary::-webkit-details-marker{display:none}
.connect{padding:85px 0 110px;border-top:1px solid var(--line)}.faq-heading,.faq{max-width:900px;margin-inline:auto;min-width:0}.faq-heading h2{font-size:clamp(32px,4vw,56px);margin-bottom:36px}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:48px;cursor:pointer;list-style:none;padding:23px 0;font-size:14px}.faq summary>span{color:var(--leaf)}.faq details>p,.faq-answer{font-size:13px;line-height:1.9;color:var(--muted);padding:0 40px 25px 0}.site-footer{display:flex;flex-wrap:wrap;align-items:center;gap:30px;border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:11px}.site-footer>.brand{color:var(--ink);margin-right:auto}.site-footer small{width:100%;font-size:9px;line-height:1.9;color:#74816c}.site-footer small a{text-decoration:underline;text-underline-offset:3px}
#capture-dialog{padding:52px 18px 20px;width:min(1600px,96vw);max-width:96vw;max-height:96svh;background:#080c09;border:1px solid #47543d;color:var(--ink);border-radius:10px;overflow:auto}#capture-dialog::backdrop{background:#020602ed;backdrop-filter:blur(10px)}#capture-dialog img{width:100%;height:auto;max-height:80svh;object-fit:contain}#capture-dialog p{text-align:center;margin-top:18px;color:var(--muted);font-size:12px}.capture-close{position:absolute;right:15px;top:10px;padding:7px 16px;min-height:34px;border:1px solid #4f5a45;border-radius:25px;background:#20291d;font-size:12px}.noscript-note{padding:25px;text-align:center;color:var(--muted)}
@media(min-width:1700px){.cinema-copy{width:35%}.cinema-copy.align-right{left:65%;width:30%}}
@media(max-width:1100px){.desktop-nav{gap:18px}.site-header{gap:20px}.brand{font-size:21px}.cinema-copy{width:40%}.cinema-copy h1,.cinema-copy h2{font-size:clamp(42px,5.5vw,64px)}.cinema-copy.align-right{left:61%;width:calc(39% - var(--gutter))}.scene-description{font-size:13px}.layer-key{gap:13px}}
@media(max-width:800px){.site-header{height:66px}.desktop-nav{display:none}.header-actions{margin-left:auto}.menu-toggle{display:block}.cinema-stage{min-height:600px}.cinema-copy,.cinema-copy.align-right{top:15%;left:var(--gutter);width:calc(100% - var(--gutter)*2);max-width:none;text-align:center;transform:none}.cinema-copy h1,.cinema-copy h2,.cinema-copy.align-right h2{font-size:clamp(38px,6.5vw,55px);line-height:1.12}.cinema-copy[data-scene="0"] h1{font-size:clamp(48px,8vw,68px)}.cinema-copy .eyebrow{margin-bottom:15px;font-size:9px}.scene-description{font-size:12px;line-height:1.8;margin:18px auto 0}.scene-description br:nth-of-type(2){display:none}.text-link{margin-top:14px;font-size:11px;padding:8px 0}.cinema-copy.centered{top:16%;left:5%;width:90%}.cinema-copy.centered h2{font-size:39px}.cinema-copy.centered h2 span{display:block;margin:4px 0 0}.layer-key{justify-content:center;margin:18px 0}.cinema-copy[data-scene="1"] .pill-button{position:fixed;top:64svh;left:50%;transform:translateX(-50%);min-height:37px;font-size:11px}.cinema-bottom{gap:12px;height:58px;font-size:9px}.cinema-bottom>span:first-child{min-width:65px}.scene-dots{gap:0}.scene-dots button{width:19px;padding-inline:6px}.scroll-hint{display:none}.skip-story{margin-left:auto;font-size:9px}.scene-switches{justify-content:center;margin-top:18px}.scene-switches button{font-size:11px;min-height:34px;padding:6px 17px}.capture-state{margin-top:12px;font-size:9px}.simulation-copy{padding-top:0}.simulation-copy h2{font-size:38px!important}.simulation-copy .scene-description{margin-top:12px}.simulation-controls{position:fixed;top:52svh;left:50%;width:min(340px,calc(100vw - 64px));transform:translateX(-50%);margin:0;max-width:none;text-align:left}.simulation-controls label{font-size:10px}.simulation-controls input{margin:0 0 9px;height:20px}.simulation-controls output{font-size:19px}.simulation-actions .pill-button{font-size:10px;min-height:32px}.simulation-actions{margin-top:8px}.device-fallback{top:61%;left:4%;width:92%}.orbit-card{width:38%;left:50%;top:58%}.cinema-stage[data-active="0"] .orbit-gallery{opacity:.2}#model-status{top:72%;left:10%;width:80%;font-size:10px}.style-picker{bottom:15%;padding:4px}.style-picker button{font-size:10px;padding:7px 13px;min-height:32px}.connect{padding:65px 0 70px}}
@media(max-width:480px){:root{--gutter:22px}.brand{font-size:20px;gap:8px}.brand img{width:28px;height:28px}.site-header{gap:12px}.header-cta{font-size:10px;padding:7px 12px}.header-actions{gap:10px}.eyebrow{font-size:9px}.cinema-copy{top:15%}.cinema-copy h2,.cinema-copy.align-right h2{font-size:39px}.cinema-copy[data-scene="0"] h1{font-size:49px}.scene-description{font-size:11px}.cinema-copy.centered h2{font-size:36px}.scene-dots button{width:16px;padding-inline:5px}.cinema-bottom{gap:7px}.cinema-bottom>span:first-child{min-width:60px}.skip-story{font-size:8px}.faq summary{font-size:14px}.site-footer{gap:15px}.site-footer>.brand{width:100%}}
@media(max-height:740px) and (max-width:800px){.cinema-copy,.cinema-copy.align-right{top:13%}.cinema-copy .eyebrow{margin-bottom:10px}.cinema-copy h2,.cinema-copy.align-right h2{font-size:33px}.cinema-copy[data-scene="0"] h1{font-size:42px}.scene-description{margin-top:12px}.simulation-copy .scene-description{display:none}.simulation-controls{top:53svh}.cinema-copy.centered{top:15%}.layer-key{margin:14px 0}}
@media(max-height:560px) and (orientation:landscape){.cinema-stage{min-height:360px}.cinema-copy,.cinema-copy.align-right{top:50%;left:var(--gutter);width:37%;text-align:left;transform:translateY(-50%)}.cinema-copy.align-right{left:63%;width:32%}.cinema-copy .eyebrow{font-size:8px;margin-bottom:10px}.cinema-copy h1,.cinema-copy h2,.cinema-copy[data-scene="0"] h1,.cinema-copy.align-right h2{font-size:34px}.scene-description{font-size:10px;margin-top:12px}.cinema-copy.centered{left:10%;width:80%;top:25%;text-align:center}.cinema-copy.centered h2{font-size:30px}.cinema-copy.centered h2 span{display:inline}.simulation-controls{position:static;transform:none;width:100%;margin-top:10px}.simulation-copy h2{font-size:30px!important}.simulation-controls input{height:16px;margin-bottom:5px}.simulation-copy .scene-description{display:none}.cinema-copy[data-scene="1"] .pill-button{position:static;transform:none}.layer-key{justify-content:flex-start;gap:8px;font-size:9px}.scene-switches{justify-content:flex-start;gap:2px}.scene-switches button{padding-inline:12px}.cinema-bottom{height:44px}.style-picker{bottom:12%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* NISMO, acceleration film and user-defined alarm chapters. */
.layer-actions{display:flex;align-items:center;gap:18px}.layer-actions{margin-top:24px}.layer-actions .pill-button{margin-top:0}.sprint-target{display:flex;align-items:baseline;gap:12px;margin:25px 0 20px}.sprint-target strong{font:500 clamp(40px,5vw,76px)/1 var(--body);letter-spacing:-.03em}.sprint-target strong span{font-size:.65em;color:#c84c45;margin-inline:6px}.sprint-target small{color:var(--muted);font:12px var(--mono)}.feature-footnote{margin-top:14px;color:var(--muted);font-size:10px}.rule-steps{list-style:none;padding:0;margin:25px 0 0}.rule-steps li{display:flex;gap:16px;margin-top:17px}.rule-steps li>span{color:var(--copper);font:12px/1.8 var(--mono)}.rule-steps strong{font-size:13px;font-weight:500}.rule-steps p{font-size:11px;color:var(--muted);margin-top:3px;line-height:1.7}.cinema-stage[data-active="6"] .ambient-light{background:radial-gradient(ellipse at 70% 54%,#4c402544,transparent 60%)}.cinema-stage[data-active="8"] .ambient-light{background:radial-gradient(ellipse at 72% 56%,#73101855,transparent 60%)}.cinema-stage[data-active="9"] .ambient-light{background:radial-gradient(ellipse at 28% 56%,#1c305849,transparent 60%)}
.obd-copy{width:36%;max-width:480px}.cinema-stage[data-active="5"] .ambient-light{background:radial-gradient(ellipse at 70% 57%,#667c514d,transparent 58%)}.card-switches{max-width:540px}.card-switches button{font-size:11px;padding-inline:14px}
#obd-play{margin-top:12px;min-height:44px}
@media(max-width:800px){.obd-copy{top:12%;left:var(--gutter);width:calc(100% - var(--gutter)*2);max-width:none}}
@media(max-width:1100px){.desktop-nav{gap:15px}.desktop-nav a{font-size:11px}.rules-copy h2{font-size:clamp(36px,5vw,64px)}}
@media(max-width:800px) and (min-height:561px){.layer-actions,.sprint-target{justify-content:center}.layer-actions{position:fixed;top:64svh;left:0;width:100%;margin:0}.cinema-copy[data-scene="1"] .layer-actions .pill-button{position:static;transform:none}.sprint-copy .scene-description br:last-of-type{display:none}.sprint-target{margin:15px 0}.sprint-target strong{font-size:43px}.sprint-copy .feature-footnote{display:none}.rule-steps{display:flex;gap:12px;justify-content:center;margin-top:18px;text-align:left}.rule-steps li{display:block;margin:0;flex:1;max-width:150px}.rule-steps strong{display:block;font-size:11px}.rule-steps p{font-size:10px}.rules-copy .text-link{position:fixed;top:65svh;left:0;width:100%;justify-content:center}.rules-copy .scene-description{margin-top:14px}.cinema-bottom .skip-story{display:none}.cinema-bottom .scene-dots{margin-left:auto}}
@media(max-height:740px) and (max-width:800px){.sprint-copy .scene-description{font-size:10px}.sprint-target{margin:10px 0}.sprint-target strong{font-size:35px}.rule-steps p{font-size:9px}.rule-steps{margin-top:12px}.rules-copy .scene-description{display:none}}
@media(max-height:560px) and (orientation:landscape){.sprint-copy .scene-description{font-size:10px}.sprint-target{margin:10px 0}.sprint-target strong{font-size:36px}.feature-footnote{display:none}.rule-steps{margin-top:12px}.rule-steps li{margin-top:8px}.rule-steps p{font-size:9px}.rules-copy .scene-description{display:none}.layer-actions{margin-top:10px}}
.parameter-copy h2,.sensor-copy h2{font-size:clamp(43px,5vw,76px)}
@media(max-width:800px){.parameter-copy,.sensor-copy{top:12%;text-align:center}.parameter-copy h2,.sensor-copy h2{font-size:35px}.parameter-summary{justify-content:center;margin-top:14px}.parameter-summary strong{font-size:42px}sensor-actions{justify-content:center;margin-top:15px}.sensor-grid{margin:14px auto 0;max-width:380px;text-align:left}.sensor-grid strong{font-size:16px}.sensor-copy .scene-description{margin-top:12px}}
@media(max-height:740px) and (max-width:800px){.parameter-copy,.sensor-copy{top:10%}sensor-grid{margin-top:9px}.sensor-copy .capture-state{margin-top:8px}}
/* The expanded style collection keeps all choices in one scrollable rail. */
.style-picker{width:max-content;max-width:min(960px,calc(100% - var(--gutter)*2));overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:5px;scrollbar-width:thin;scrollbar-color:#626b54 transparent;bottom:10%;padding-bottom:8px;gap:3px}
.style-picker button{flex:0 0 auto;min-height:44px;letter-spacing:0}
.style-picker button:focus-visible{outline-offset:-4px}
.style-picker::-webkit-scrollbar{height:4px}
.style-picker::-webkit-scrollbar-thumb{background:#626b54;border-radius:4px}
.cinema-copy.centered{top:13%}
.orbit-card img{width:100%;height:auto;aspect-ratio:2556/1179}
.cinema-stage[data-active="15"] .orbit-card figcaption{bottom:-18px;letter-spacing:0}
@media(min-width:801px) and (max-height:740px){.cinema-copy.centered h2{font-size:48px}.cinema-copy.centered .eyebrow{margin-bottom:12px}.cinema-copy.centered .scene-description{margin-top:12px}}
@media(max-width:800px){.cinema-stage[data-active="15"] .orbit-card{width:25%}}
@media(max-width:800px) and (min-height:561px){.cinema-copy.centered{top:16%}}
@media(max-width:800px) and (min-height:561px) and (max-height:740px){.cinema-copy.centered{top:13%}}
@media(max-height:560px) and (orientation:landscape){.cinema-copy.centered{top:17%}.cinema-copy.centered h2{font-size:30px}}

/* Canvas tools and AI share the same 3D phone chapter. */
.canvas-copy h2{font-size:clamp(34px,4.6vw,74px)}
.canvas-modes{display:flex;gap:24px;margin-top:22px;border-bottom:1px solid var(--line)}.canvas-modes button{min-height:42px;padding:8px 0;background:none;border-bottom:2px solid transparent;font-size:13px;color:var(--muted)}.canvas-modes button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--leaf)}.canvas-copy .scene-switches{margin-top:12px;gap:4px}.canvas-copy .scene-switches button{font-size:11px;padding:6px 12px;min-height:34px}.canvas-caption{max-width:44em;min-height:3.4em;line-height:1.7}.canvas-ai-note{font-size:10px;line-height:1.8;color:var(--copper);margin-top:12px}.canvas-copy .text-link{margin-top:12px}
@media(max-width:1440px){.desktop-nav{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}.mobile-nav{max-height:calc(100svh - 74px);overflow-y:auto}}
@media(max-width:800px) and (min-height:561px){.canvas-copy{top:11%}.canvas-copy .scene-description{margin-top:12px}.canvas-modes{justify-content:center;margin-top:12px}.canvas-modes button{font-size:11px;min-height:34px}.canvas-copy .scene-switches{margin-top:8px}.canvas-copy .scene-switches button{font-size:10px;padding:5px 10px;min-height:30px}.canvas-copy .canvas-caption{position:fixed;top:77svh;left:var(--gutter);width:calc(100vw - var(--gutter)*2);margin:0;min-height:0;font-size:10px}.canvas-copy .text-link{position:fixed;top:84svh;left:0;width:100%;justify-content:center;margin:0}.canvas-ai-note{font-size:9px;margin-top:8px}.mobile-nav{max-height:calc(100svh - 66px)}}
@media(max-height:560px) and (orientation:landscape){.canvas-copy h2{font-size:30px}.canvas-copy .scene-description{font-size:9px;margin-top:8px}.canvas-modes{margin-top:8px;gap:18px}.canvas-modes button{font-size:10px;min-height:28px}.canvas-copy .scene-switches{margin-top:6px;gap:2px}.canvas-copy .scene-switches button{font-size:9px;padding:3px 8px;min-height:25px}.canvas-copy .canvas-caption{font-size:9px;margin-top:8px}.canvas-ai-note{font-size:8px;margin-top:6px}.canvas-copy .text-link{margin-top:5px;font-size:10px}}
.vehicle-copy .scene-switches{gap:3px;margin-top:18px}.vehicle-copy .scene-switches button{min-height:34px;padding:6px 11px;font-size:11px}.vehicle-copy .canvas-caption{max-width:44em;min-height:3.4em;line-height:1.7}
@media(max-width:800px) and (min-height:561px){.vehicle-copy{top:10%}.vehicle-copy .scene-description{margin-top:10px}.vehicle-copy .scene-switches{justify-content:center;gap:0;margin-top:9px}.vehicle-copy .scene-switches button{min-height:30px;padding:5px 10px;font-size:10px}.vehicle-copy .canvas-caption{position:fixed;top:77svh;left:var(--gutter);width:calc(100vw - var(--gutter)*2);margin:0;min-height:0;font-size:10px}.vehicle-copy .text-link{position:fixed;top:84svh;left:0;width:100%;justify-content:center;margin:0;font-size:10px}}
@media(max-height:560px) and (orientation:landscape){.vehicle-copy .scene-description{font-size:9px;margin-top:8px}.vehicle-copy .scene-switches{gap:1px;margin-top:8px}.vehicle-copy .scene-switches button{min-height:25px;padding:3px 8px;font-size:9px}.vehicle-copy .canvas-caption{font-size:9px;min-height:0;margin-top:8px}.vehicle-copy .text-link{font-size:10px;margin-top:5px}}

.cinema-copy.sound-copy h2{font-size:clamp(34px,4.2vw,64px);letter-spacing:0}.sound-copy .scene-switches{margin-top:18px}.sound-copy .text-link{margin-top:12px}
@media(max-width:800px) and (min-height:561px){.sound-copy{top:10%}.cinema-copy.sound-copy h2{font-size:33px}.sound-copy .scene-description{margin-top:10px}.sound-copy .scene-switches{justify-content:center;margin-top:10px}.sound-copy .canvas-caption{position:fixed;top:77svh;left:var(--gutter);width:calc(100vw - var(--gutter)*2);margin:0;min-height:0;font-size:10px}.sound-copy .text-link{position:fixed;top:86svh;left:0;width:100%;justify-content:center;margin:0;font-size:10px}}
@media(max-height:560px) and (orientation:landscape){.cinema-copy.sound-copy h2{font-size:26px}.sound-copy .scene-description{font-size:9px;margin-top:8px}.sound-copy .scene-description br{display:none}.sound-copy .scene-switches{margin-top:8px}.sound-copy .scene-switches button{min-height:25px;padding:3px 8px;font-size:9px}.sound-copy .canvas-caption{font-size:9px;min-height:0;margin-top:8px}.sound-copy .text-link{font-size:10px;margin-top:5px}}

.cinema-copy.hud-copy h2{font-size:56px;letter-spacing:0}.hud-copy .scene-description{letter-spacing:0}.hud-copy .feature-footnote{max-width:33em;line-height:1.8}.hud-playback{display:inline-grid;place-items:center;width:44px;height:44px;margin-top:12px;padding:0;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink)}.hud-playback:hover{background:#ffffff12}.hud-playback .hud-play,.hud-playback[data-paused=true] .hud-pause{display:none}.hud-playback[data-paused=true] .hud-play{display:block}
@media(max-width:800px) and (min-height:561px){.hud-copy{top:13%}.cinema-copy.hud-copy h2{font-size:36px}.hud-copy .scene-description{margin-top:12px;font-size:12px}.hud-copy .feature-footnote{display:none}.hud-playback{position:fixed;top:79svh;left:calc(50% - 22px);margin:0}}
@media(max-height:560px) and (orientation:landscape){.cinema-copy.hud-copy h2{font-size:30px}.hud-copy .scene-description{font-size:10px}.hud-playback{margin-top:8px;width:36px;height:36px}}

/* Cards adapted from Bodyhc / kamehame-ha (MIT); see assets/MEMBERSHIP-CARD-LICENSE.txt. */
.membership{padding:80px 0 100px;border-top:1px solid var(--line);scroll-margin-top:90px}.membership-heading{margin-bottom:44px}.membership-heading h2{font-size:clamp(30px,3.6vw,56px);margin:16px 0}.membership-heading>p:last-child{font-size:12px;color:var(--muted);line-height:1.9}
.membership-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,90px);align-items:start}.membership-selector{padding-top:16px}.plan-deck{display:flex;flex-direction:column;gap:15px;width:min(300px,100%);margin:0 auto}
.plan-card{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;width:100%;min-height:160px;border-radius:10px;cursor:pointer;transition:transform .4s,filter .4s,box-shadow .4s;transform:scale(.9);filter:blur(10px);background:var(--card-bg);color:var(--card-ink)}.plan-free{--card-bg:#f43f5e;--card-ink:#19151a}.plan-pro{--card-bg:#f8f8f8;--card-ink:#111}.plan-ultimate{--card-bg:#3b22c5;--card-ink:#fff}.plan-card[aria-pressed=true]{transform:scale(1.1);filter:blur(0);box-shadow:0 12px 30px #0003}.plan-card>strong{font-size:27px;font-weight:700;line-height:1.3}.plan-card-price{font-size:12px;margin:8px 0}.plan-card-bottom{font-size:10px}.plan-card:focus-visible{outline-offset:5px}
.membership-price-note{font-size:10px;color:var(--muted);line-height:1.9;margin:24px auto 0;max-width:300px}
.membership-panels{min-height:405px}.membership-panel h3{font-size:clamp(23px,2.8vw,40px);font-weight:500;line-height:1.35;margin:18px 0}.plan-description{font-size:13px;line-height:1.9;color:var(--muted)}.plan-benefits{list-style:none;padding:0;margin:22px 0;font-size:12px;line-height:1.9}.plan-benefits li{padding:9px 0;border-bottom:1px solid var(--line)}.plan-download{display:flex;align-items:baseline;gap:10px;margin-top:24px}.plan-download strong{font-size:42px;line-height:1;font-weight:500}.plan-download span{font-size:11px;color:var(--muted)}.plan-footnote{font-size:10px;line-height:1.9;color:var(--muted);margin-top:14px}.membership-panel .text-link{font-size:11px;margin-top:12px}.membership-rules{border-top:1px solid var(--line);margin-top:22px;scroll-margin-top:100px}.membership-rules details{border-bottom:1px solid var(--line)}.membership-rules summary{display:flex;justify-content:space-between;gap:20px;min-height:48px;align-items:center;font-size:11px;list-style:none;cursor:pointer}.membership-rules summary>span{color:var(--leaf)}.membership-rules details[open] summary>span{transform:rotate(45deg)}.membership-rules details>p{font-size:11px;line-height:1.9;color:var(--muted);padding-bottom:15px}
@media(max-width:700px){.membership{padding:55px 0 70px}.membership-heading{margin-bottom:22px}.membership-showcase{grid-template-columns:1fr;gap:32px}.membership-selector{padding-top:10px}.plan-deck{width:min(300px,calc(100% - 24px))}.membership-panels{min-height:0}.membership-panel h3{font-size:27px}.membership-price-note{max-width:300px;margin-inline:auto}}

.ui-arrow{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.1em}.pill-button>.ui-arrow{margin-left:.35em}
.faq details[open] summary>span{transform:rotate(45deg)}.faq a{color:var(--ink);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.faq details>p>a{display:block;width:fit-content;margin-top:12px}.faq-answer p+p{margin-top:12px}.faq-answer ol{margin:16px 0 0;padding-left:22px}.faq-answer li+li{margin-top:10px}.faq-answer strong{font-weight:500;color:var(--ink)}
@media(max-width:480px){.faq details>p,.faq-answer{padding-right:0}}

/* Reuse the App's launch composition and phase timing. */
.launch-pending{overflow:hidden}
.launch-pending body{overflow:hidden}
.launch-pending .launch-screen{display:grid!important}
.launch-screen{position:fixed;inset:0;z-index:1000;display:none;place-items:center;background:#000;color:#fff;opacity:1;transition:opacity .32s ease}
.launch-screen.is-leaving{opacity:0}
.launch-composition{--launch-size:min(220px,calc(100vw - 48px),max(96px,calc(100svh - 96px)));display:flex;flex-direction:column;align-items:center;gap:6px}
.launch-logo{width:var(--launch-size);height:var(--launch-size)}
.launch-title{display:flex;align-items:center;justify-content:center;height:36px;overflow:hidden;font:700 28px/36px var(--body);letter-spacing:0;gap:.4px}
.launch-title span{display:block;transform:translateY(40px)}
.launch-skip{position:absolute;top:max(20px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));min-width:44px;min-height:44px;padding:10px;background:none;color:#aaa;font-size:12px}
.launch-skip:hover{color:#fff}
.launch-skip:focus-visible{outline-color:#ff5a3d}
.is-playing .launch-title span{animation:launch-letter 1s cubic-bezier(.86,0,.07,1) both;animation-delay:1.45s}
.is-playing .launch-title span:nth-child(2){animation-delay:1.52s}
.is-playing .launch-title span:nth-child(3){animation-delay:1.59s}
.is-playing .launch-title span:nth-child(4){animation-delay:1.66s}
.is-playing .launch-title span:nth-child(5){animation-delay:1.73s}
.is-playing .launch-title span:nth-child(6){animation-delay:1.8s}
.is-playing .launch-title span:nth-child(7){animation-delay:1.87s}
.is-playing .launch-title span:nth-child(8){animation-delay:1.94s}
.is-playing .launch-title span:nth-child(9){animation-delay:2.01s}
.is-playing .launch-title span:nth-child(10){animation-delay:2.08s}
.launch-screen.is-paused *,.launch-screen.is-paused *::after{animation-play-state:paused!important}
@keyframes launch-letter{from{transform:translateY(40px)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.launch-pending{overflow:initial}.launch-pending body{overflow-x:clip;overflow-y:auto}.launch-pending .launch-screen{display:none!important}}
