*{box-sizing:border-box}body{margin:0;--bg:#edf4f5;--ink:#15333e;--muted:#57717a;--accent:#e66c4b;--line:#bcced3;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}body[data-theme=night-lab]{--bg:#071d25;--ink:#e6f6f6;--muted:#94b8c0;--accent:#ff895e;--line:#33515c}body[data-theme=signal]{--bg:#fff18a;--ink:#062d80;--muted:#375391;--accent:#f5573b;--line:#c7b858}button,a,input{ -webkit-tap-highlight-color:transparent}button,a{color:inherit}button{font:inherit;cursor:pointer}button{border:1px solid var(--line);border-radius:100px;padding:12px 19px;background:transparent}button:hover{background:var(--ink);color:var(--bg)}a{text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.workbench{position:relative;z-index:10;background:#fff;color:#142b36;min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:10px 26px;gap:12px;border-bottom:1px solid #ddd}.workbench>span{font-size:10px;letter-spacing:2px}.workbench button{font-size:12px;border-color:#ddd;padding:9px 15px}.workbench button.active{background:#173944;color:white}.workbench #themes{display:flex;gap:6px}#preview{position:relative;height:calc(100svh - 128px);min-height:650px;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#fff9,transparent 60%)}[data-theme=night-lab] #preview{background:radial-gradient(ellipse at 50% 65%,#20576788,transparent 65%)}nav{position:absolute;top:0;width:100%;height:88px;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 4%}.brand{font-weight:800;font-size:23px;letter-spacing:-1.2px}.brand span{font-size:10px;vertical-align:top;margin-left:5px}nav div{display:flex;gap:32px;font-size:13px}nav button{font-size:11px;padding:9px 13px}#viewport{position:absolute;inset:160px 15% 45px;z-index:2;transition:inset 1.2s cubic-bezier(.2,.7,.2,1);pointer-events:none}#viewport canvas{position:absolute;inset:0;width:100%;height:100%}#viewport>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.loaded>img,.loaded #loading{display:none}#loading{position:absolute;bottom:30%;left:35%;font-size:12px}.screen{display:none;position:absolute;inset:110px 5% 30px;z-index:3;pointer-events:none}.screen.active{display:block}.screen button,.screen input,.screen details{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;margin:0 0 20px}h1{font-family:Manrope,sans-serif;font-size:clamp(44px,5.7vw,90px);line-height:1.04;letter-spacing:-.065em;margin:0;font-weight:600}h1 em{font-style:normal;color:var(--muted)}[data-theme=signal] h1{font-weight:800}[data-theme=signal] h1 em{color:var(--ink)}.hero{text-align:center}.hero h1{font-size:clamp(48px,5.8vw,94px)}.hero h1 br{display:none}.hero h1 em{margin-left:.2em}.hero .eyebrow{margin-bottom:13px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:end;text-align:left}.hero-bottom p{font-size:16px;line-height:1.5}.hero-bottom>span{text-align:right;font-size:9px;line-height:1.8;letter-spacing:1.3px}.hero-bottom button{margin-left:4%}.copy{width:39%;margin-top:5vh}.right .copy{margin-left:auto}.copy>p:not(.eyebrow){font-size:17px;line-height:1.65;max-width:390px}.copy .annotation{font-size:12px!important;color:var(--muted)}.copy button{margin-top:24px}.copy small{font-size:11px;line-height:1.5;display:block;max-width:330px;color:var(--muted)}body[data-stage="1"] #viewport,body[data-stage="3"] #viewport{inset:100px 42% 28px 0}body[data-stage="2"] #viewport{inset:88px 0 0 42%}body[data-stage="4"] #viewport{inset:90px 0 120px 57%}body[data-stage="5"] #viewport{display:none}.zones{display:flex;gap:15px;margin:28px 0 14px;font-size:11px}.zones span:nth-child(1){color:#219371}.zones span:nth-child(2){color:#b69718}.zones span:nth-child(3){color:#e4644b}.calculator{margin-top:0}.calculator h1{font-size:65px}.calculator label{display:block;font-size:12px;margin:25px 0}.calculator output{float:right;font-weight:700}input[type=range]{width:100%;accent-color:var(--accent);margin:14px 0 0}.estimate{border-top:1px solid var(--line);padding-top:20px}.estimate>span{font-size:11px}.estimate strong{display:block;font-size:57px;letter-spacing:-3px}.calculator button{background:var(--ink);color:var(--bg);margin-top:20px}details{font-size:10px;margin-top:14px;max-width:390px}details p{line-height:1.5}.progress h1{font-size:clamp(48px,5.2vw,82px)}.results{display:flex;gap:50px;margin-top:38px}.results strong{font-size:40px;letter-spacing:-2px}.results p{font-size:12px}.timeline{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin:48px 0 18px;font-size:10px;letter-spacing:1px}.timeline b{display:block;margin-top:12px;font-weight:400;font-size:14px;letter-spacing:0}.progress>small{font-size:10px;color:var(--muted)}.progress>button{display:block;margin-top:25px}.about h1{font-size:clamp(44px,5vw,76px)}.names{display:flex;justify-content:space-between;max-width:650px;margin:28px 0 20px;font-size:20px}.photo{height:190px;border:1px solid var(--line);background:linear-gradient(115deg,transparent,#70a3b733);padding:30px;display:flex;flex-direction:column;justify-content:center}.photo span{font-size:11px;letter-spacing:1px}.photo strong{font-size:28px;letter-spacing:-1px;margin-top:12px}.photo p{font-size:12px;color:var(--muted)}footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-size:12px}.stagebar{height:64px;position:relative;z-index:10;display:flex;justify-content:center;align-items:center;gap:15px;background:var(--bg);border-top:1px solid var(--line)}.stagebar button{border:0;font-size:11px;padding:10px 16px}.stagebar button.active{background:var(--ink);color:var(--bg)}#stages{display:flex;gap:6px}#board{padding:40px max(20px,8vw);background:#eceeea;color:#18313a}#board>div{margin-bottom:24px}#board h2{font-size:40px;letter-spacing:-2px;margin:0}#board small{font-size:11px}#board img{width:100%;display:block;box-shadow:0 20px 60px #0002}[hidden]{display:none!important}
@media(max-width:700px){.workbench{padding:10px;flex-wrap:wrap;justify-content:center}.workbench>span{display:none}.workbench button{padding:8px 11px;font-size:10px}#preview{min-height:870px;height:calc(100svh - 150px)}nav{height:70px;padding:0 6%}.brand{font-size:20px}nav div{gap:15px;font-size:11px}nav button{display:none}.screen{inset:92px 7% 25px}.hero h1{font-size:49px}.hero h1 br{display:block}.hero h1 em{margin:0}.hero .eyebrow{font-size:8px}#viewport{inset:235px 0 110px}.hero-bottom>span{display:none}.hero-bottom p{font-size:12px}.hero-bottom button{font-size:11px}.copy,.right .copy{width:100%;margin:0}.copy h1{font-size:48px}.copy>p:not(.eyebrow){font-size:14px;max-width:100%}.copy button{margin-top:8px}body[data-stage="1"] #viewport{inset:365px 0 0}body[data-stage="2"] #viewport{inset:440px 0 0}body[data-stage="3"] #viewport{inset:530px 0 0}.calculator h1{font-size:48px}.calculator label{margin:14px 0}.estimate strong{font-size:40px}.calculator button{margin-top:8px}.progress h1,.about h1{font-size:45px}.results{gap:30px;margin-top:25px}.results strong{font-size:32px}.timeline{flex-direction:column;margin-top:30px;gap:18px}.timeline b{margin-top:5px}.progress>small{display:block;max-width:220px}body[data-stage="4"] #viewport{inset:440px 0 40px 44%}.names{font-size:17px}.photo{height:240px;padding:20px}.photo strong{font-size:25px}footer{align-items:start;gap:20px}.stagebar{height:auto;padding:10px 5px;gap:0}.stagebar>button{padding:8px}#stages{gap:2px;flex-wrap:wrap;justify-content:center}#stages button{font-size:9px;padding:8px}.zones{gap:10px}}
@media(prefers-reduced-motion:reduce){#viewport{transition:none}}
/* Air Studio — continuous scroll demo */
html{scroll-behavior:smooth;scroll-padding-top:100px}body{--bg:#edf4f5;--ink:#173945;--muted:#6b8790}.skip{position:fixed;top:-100px;left:20px;z-index:50;background:white;padding:15px}.skip:focus{top:15px}nav{position:fixed;height:86px;background:#edf4f5d9;backdrop-filter:blur(18px);border-bottom:1px solid #b5cbd32b;z-index:20}nav .brand{font-size:26px}nav .brand span{color:var(--accent);font-size:22px;margin-left:8px}nav div a{position:relative}nav div a:after{content:'';position:absolute;height:1px;left:0;bottom:-5px;background:var(--ink);width:0;transition:width .2s}nav div a:hover:after{width:100%}.journey{height:440svh}#preview{position:sticky;top:0;height:100svh;min-height:650px;background:radial-gradient(ellipse at 50% 55%,#fff 0%,#f3f8f9 36%,#e5eff2 100%)}#viewport{transition:none;z-index:2}.ambient-orbit{position:absolute;left:20%;width:60%;height:18%;bottom:9%;border:1px solid #a6c0ca4a;border-radius:50%;box-shadow:0 30px 100px #749aa518;transform:rotate(-8deg);opacity:.5}.screen{inset:116px 6% 62px;display:block!important;visibility:hidden}.screen.active{visibility:visible}.hero .eyebrow{letter-spacing:2px;font-size:10px}.hero h1{font-size:clamp(48px,5.9vw,94px);letter-spacing:-.07em}.hero h1 em{color:#6b8994}.hero-bottom{bottom:8px}.hero-bottom p{font-size:14px}.hero-bottom button{border-color:#8da9b4;font-size:12px;padding:15px 22px;background:#ffffff5c}.hero-bottom>span{font-size:8px;max-width:220px}.right .copy{width:36%;margin-top:9vh}.left .copy{width:37%;margin-top:12vh}.copy h1{font-size:clamp(50px,5.5vw,80px)}.copy p{color:#496a76}.copy button{font-size:12px}.chapter-index{position:absolute;bottom:17px;left:6%;right:6%;display:flex;gap:16px;align-items:center;font-size:9px;text-transform:uppercase;letter-spacing:1.6px;z-index:4;color:var(--muted)}.chapter-index>div{height:1px;background:#c3d4da;flex:1}.chapter-index i{display:block;height:1px;background:var(--ink)}.right .calculator{margin-top:3vh}.calculator h1{font-size:66px}.calculator>p{margin-bottom:24px!important}.calculator label{margin:22px 0}.calculator input{cursor:ew-resize}.calculator .estimate strong{font-size:55px}.control-actions{display:flex;gap:8px}.control-actions button+button{background:transparent;color:var(--ink)}details summary{cursor:pointer}details[open]{padding:8px 12px;background:#f8fbfc;border-radius:8px}.recap{position:relative;padding:110px 9%;border-top:1px solid var(--line)}.recap h1{max-width:800px;font-size:clamp(50px,6.5vw,100px)}.recap.progress{background:#dce9ee}.results{gap:100px;margin:65px 0}.results strong{font-size:70px;font-family:Manrope,sans-serif;font-weight:500}.results p{font-size:15px}.timeline{margin-top:65px}.recap-note{font-size:13px;color:var(--muted);margin:35px 0}.recap>button{font-size:13px}.about .names{max-width:none;margin:50px 0 25px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:28px}.photo{height:260px;border:0;background:#dfeaf0;position:relative;overflow:hidden}.photo:after{content:'↗';position:absolute;right:50px;font-size:180px;font-weight:400;color:#a5c2ce55}.photo strong{font-size:35px}.photo p{font-size:13px}.about footer{margin-top:45px}.about footer button{font-size:12px}input,summary{pointer-events:auto}canvas{outline:none}
@media(max-width:700px){nav{height:72px;padding:0 5%}nav .brand{font-size:21px}nav div{gap:14px}nav button{display:block;position:fixed;bottom:12px;right:15px;background:var(--bg);font-size:9px}nav div a{font-size:10px}#preview{min-height:0;height:100svh}.journey{height:440svh}.screen{inset:98px 7% 50px}.hero h1{font-size:clamp(40px,11vw,60px)}.hero h1 br{display:block}.hero .eyebrow{font-size:7px;letter-spacing:1.4px}.hero-bottom{bottom:7px;align-items:center}.hero-bottom p{font-size:10px}.hero-bottom button{font-size:9px;padding:10px}.hero-bottom>span{display:none}.right .copy,.left .copy{width:100%;margin:0}.copy h1{font-size:46px}.copy>p:not(.eyebrow){font-size:13px;line-height:1.55;max-width:90%;margin:13px 0}.copy .eyebrow{font-size:8px;margin-bottom:14px}.copy button{font-size:10px;padding:10px 14px;margin-top:8px}.copy small{font-size:9px;max-width:90%}.zones{margin:15px 0 9px;font-size:9px}.chapter-index{font-size:7px;left:7%;right:7%;bottom:22px}.chapter-index>span:last-child{display:none}.chapter-index>div{margin-right:95px}.right .calculator{margin:0}.calculator h1{font-size:45px}.calculator label{width:52%;margin-left:auto;font-size:10px;margin-top:16px;margin-bottom:16px}.calculator .estimate{margin-left:auto;width:52%;padding-top:12px}.calculator .estimate strong{font-size:39px}.calculator .estimate>span{font-size:9px}.calculator .estimate small{font-size:9px}.control-actions{margin-left:auto;width:52%;display:block}.control-actions button{font-size:9px}.control-actions button+button{margin-left:4px}details{margin-left:auto;width:52%;font-size:9px}.calculator>p{margin-bottom:25px!important}.recap{padding:75px 7%}.recap h1{font-size:49px}.results{gap:30px;margin:40px 0}.results strong{font-size:43px}.results p{font-size:11px}.timeline{margin:40px 0 25px}.about .names{font-size:19px;margin:35px 0 20px}.photo{padding:24px;height:240px}.photo strong{font-size:25px;max-width:190px}.photo p{font-size:10px;max-width:180px}.photo:after{right:10px;font-size:130px}.about footer{display:block}.about footer button{margin-top:12px}.ambient-orbit{left:7%;width:86%;bottom:16%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

#motion{position:fixed;top:26px;right:4%;z-index:25;font-size:11px;padding:9px 13px;background:var(--bg)}nav>div{position:absolute;left:50%;transform:translateX(-50%)}@media(max-width:700px){#motion{top:auto;bottom:12px;right:15px;font-size:9px}nav>div{position:static;transform:none}.hero h1 em{display:inline-block}}

/* A stable canvas prevents buffer clears during scroll-driven composition. */
body #preview #viewport{inset:0!important;width:100%!important;height:100%!important;transform:none!important}#viewport canvas{width:100%!important;height:100%!important}#viewport>img{object-fit:contain;padding:20vh 15% 10vh}

/* Quiet loading state; reveal only after the first complete 3D frame. */
#viewport>img{display:none}
#viewport canvas{opacity:0;transition:opacity .45s ease}
#viewport.loaded canvas{opacity:1}
#viewport #loading{display:flex;position:absolute;top:53%;left:50%;bottom:auto;transform:translate(-50%,-50%);align-items:center;flex-direction:column;gap:13px;opacity:1;transition:opacity .18s ease;color:var(--muted);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap}
.loading-line{width:64px;height:2px;background:#c4d6dc;overflow:hidden;border-radius:2px}
.loading-line:after{content:'';display:block;width:28px;height:100%;background:var(--accent);animation:loading-air 1s ease-in-out infinite alternate}
#viewport.loaded #loading{display:flex;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility 0s .18s}
body[data-model="fallback"] #viewport>img{display:block}
body[data-model="fallback"] #viewport #loading{top:auto;bottom:12%;font-size:10px;letter-spacing:0;text-transform:none}
@keyframes loading-air{to{transform:translateX(36px)}}
@media(prefers-reduced-motion:reduce){#viewport canvas,#viewport #loading{transition:none}.loading-line:after{animation:none}}

/* Original project content, restored in the Air Studio editorial style. */
.editorial h2{font-family:Manrope,sans-serif;font-weight:500;font-size:clamp(42px,5.7vw,86px);line-height:1.08;letter-spacing:-.055em;margin:0 0 30px}.editorial h2 em{font-style:normal;color:var(--muted)}.editorial h3{font-family:Manrope,sans-serif;font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-1px;margin:0 0 16px}.editorial p{line-height:1.75;max-width:650px;font-size:15px;color:#496a76}.editorial .eyebrow{font-size:10px;line-height:1.5;max-width:none}.editorial .lede{font-size:21px;line-height:1.65;max-width:720px}.editorial figure{margin:0;min-width:0}.editorial img{display:block;width:100%;height:auto;border-radius:5px}.editorial figcaption{font-size:10px;letter-spacing:.5px;color:var(--muted);margin-top:12px;line-height:1.5}.editorial a:not(.contact-link){text-decoration:underline;text-underline-offset:5px}.context-stats{display:flex;gap:70px;margin:45px 0 30px}.context-stats strong{font-size:54px;font-weight:500;letter-spacing:-2px;display:block}.context-stats span{font-size:12px;color:var(--muted)}.editorial .story-details{max-width:none;width:auto;margin:25px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;background:transparent}.story-details summary{cursor:pointer;font-weight:500}.story-details p{font-size:14px;max-width:780px}.story-details img{margin-top:20px}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:55px 0}.reason-grid article{border-top:1px solid var(--line);padding-top:25px}.reason-grid h3{font-size:23px}.editorial-row{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-top:90px}.research-links{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0 10px;font-size:12px}.award-row{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin-top:45px}.award-row .results{gap:35px;margin:0 0 25px;flex-wrap:wrap}.award-row .results strong{font-size:47px}.award-row .results p{font-size:12px}.section-intro{margin-top:85px}.phase-list{list-style:none;margin:35px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.phase-list>li{display:flex;gap:25px;border-top:1px solid var(--line);padding:30px 0}.phase-number{font-size:32px;font-weight:400;color:var(--muted)}.phase-list h3{font-size:25px}.phase-list ul{padding-left:16px;list-style:disc;font-size:13px;line-height:1.9;color:#496a76}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin:35px 0 60px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.team-grid img{aspect-ratio:3/4;object-fit:cover;object-position:center top}.team-grid h3{font-size:21px;margin:20px 0 6px}.team-grid p{font-size:11px;margin:0}.wide-photo{margin-top:55px!important}.wide-photo img{max-height:600px;object-fit:cover}.backing{grid-template-columns:1fr 1fr;margin-bottom:0}.contact-section{background:#dce9ee}.contact-link{display:inline-block;margin:22px 0 45px;font-size:clamp(16px,2.7vw,36px);letter-spacing:-.5px;border-bottom:1px solid var(--ink);padding-bottom:10px}.contact-section footer{border-top:1px solid var(--line);padding-top:30px}.contact-section footer p{font-size:11px}.editorial-row img{max-height:500px;object-fit:contain}.paris-story img{object-fit:cover}nav div{gap:24px}
@media(max-width:700px){nav div{gap:9px}nav div a{font-size:9px}nav .brand{font-size:18px}.editorial h2{font-size:43px}.editorial h3{font-size:26px}.editorial .lede{font-size:18px}.editorial p{font-size:14px}.context-stats{gap:24px}.context-stats strong{font-size:39px}.context-stats span{display:block;font-size:10px;max-width:140px}.reason-grid,.editorial-row,.award-row,.story-columns,.phase-list{grid-template-columns:1fr;gap:25px}.editorial-row{margin-top:55px}.reason-grid{margin:40px 0}.team-grid{grid-template-columns:1fr 1fr;gap:25px 16px}.team-grid h3{font-size:18px}.team-grid p{font-size:10px}.section-intro{margin-top:50px}.phase-list{gap:0}.phase-list h3{font-size:23px}.phase-number{font-size:26px}.award-row .results{gap:30px}.award-row .results strong{font-size:40px}.backing{grid-template-columns:1fr}.contact-section footer{display:block}.story-columns{margin-bottom:40px}.wide-photo img{max-height:none}.contact-link{font-size:17px}.editorial .story-details{margin-left:0}.photo:after{display:none}}
.dashboard-video{aspect-ratio:16/9;background:#dce9ee;border-radius:8px;overflow:hidden}.dashboard-video iframe{width:100%;height:100%;display:block;border:0}.training-card{display:block;width:100%;padding:0!important;border:1px solid #bfd1d9!important;border-radius:10px!important;background:white!important;overflow:hidden;box-shadow:0 10px 30px #1739450d;cursor:pointer;transform-origin:center}.editorial .training-card img{aspect-ratio:1379/832;width:100%;max-height:none;object-fit:contain;border-radius:0}.card-hint{display:block;background:#e4eef2;color:#173945;padding:12px 16px;text-align:right;font-size:11px}.training-card:hover{box-shadow:0 14px 35px #17394520}.deck-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.deck-controls button{padding:8px 14px;font-size:16px}.deck-controls span{font-size:11px;color:var(--muted);text-align:center}

/* Video facade: thumbnail until the visitor asks for the player. */
.video-facade{position:relative;display:block;width:100%;height:100%;padding:0!important;border:0!important;border-radius:0!important;background:#173945!important;cursor:pointer}.video-facade img{width:100%;height:100%;object-fit:cover;border-radius:0!important;opacity:.92}.video-facade .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:#fffffff0;color:#173945;display:grid;place-items:center;font-size:22px;padding-left:4px;box-shadow:0 10px 30px #0003;transition:transform .2s}.video-facade:hover .play{transform:translate(-50%,-50%) scale(1.08)}
nav .brand{white-space:nowrap}

/* Phones: copy on top, the hood in its own measured band, calculator controls docked at the bottom. */
@media(max-width:699px){
#preview{height:100svh}
.screen{inset:84px 6% 50px}
.copy h1{font-size:clamp(36px,11vw,46px)}
.copy>p:not(.eyebrow){margin:10px 0}
.hero .eyebrow{font-size:8px}
.hero-bottom{bottom:4px}
.screen .calculator{display:flex;flex-direction:column;height:100%}
.calculator h1{font-size:clamp(34px,10vw,42px)}
.screen .calculator>p:not(.eyebrow){margin:6px 0 0!important;font-size:12px}
.calculator .calc-controls{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;column-gap:18px;background:#edf4f5e6;border-radius:14px 14px 0 0;padding-top:4px}
.calculator .calc-controls label{width:auto;margin:0 0 6px;font-size:10px}
.calculator .calc-controls input{margin-top:8px;height:28px}
.calculator .calc-controls .estimate{grid-column:1/-1;width:auto;margin:4px 0 0;padding-top:8px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:end}
.calculator .calc-controls .estimate>span{grid-column:1/-1}
.calculator .calc-controls .estimate strong{font-size:34px;letter-spacing:-1.5px}
.calculator .calc-controls .estimate small{padding-bottom:6px}
.calculator .calc-controls .control-actions{grid-column:1/-1;width:auto;margin:6px 0 0;display:flex;gap:6px;align-items:center}
.calculator .calc-controls .control-actions button{margin:0;padding:9px 13px}
.calculator .calc-controls details{grid-column:1/-1;width:auto;margin:6px 0 0}
.chapter-index>div{margin-right:110px}
}
@media(max-width:699px) and (max-height:720px){.copy .annotation,.left .copy small{display:none}.copy h1{font-size:clamp(34px,10vw,40px)}.copy>p:not(.eyebrow){font-size:12.5px}.zones{margin:8px 0 4px}.calculator .calc-controls details{display:none}}
@media(max-width:400px){nav div a[href="#explore"]{display:none}}
#motion{transition:opacity .2s}.past-journey #motion{opacity:0;pointer-events:none}

/* Motion toggle: icon pill on phones, labelled on desktop. */
.motion-icon{display:none;font-size:10px;letter-spacing:-1px}
@media(max-width:699px){#motion{width:38px;height:38px;padding:0;display:grid;place-items:center;bottom:14px;right:14px}#motion .motion-icon{display:block}#motion .motion-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* Feather the hood's band edges instead of a hard clip. */
#viewport canvas{-webkit-mask-image:linear-gradient(to bottom,transparent calc(var(--band-top,0px) + 2px),#000 calc(var(--band-top,0px) + 26px),#000 calc(var(--band-bottom,100%) - 30px),transparent var(--band-bottom,100%));mask-image:linear-gradient(to bottom,transparent calc(var(--band-top,0px) + 2px),#000 calc(var(--band-top,0px) + 26px),#000 calc(var(--band-bottom,100%) - 30px),transparent var(--band-bottom,100%))}
nav div a{padding:12px 2px}
.calculator .calc-controls{padding-bottom:12px}
.chapter-index>div{margin-right:56px}
body[data-model="fallback"] #viewport #loading{display:none}
#viewport>img{padding:30svh 6% 18svh}
}
@media(max-width:699px) and (max-height:720px){.screen[data-screen="1"] .copy>button,.screen[data-screen="2"] .copy>button{display:none}}
#motion .motion-icon svg{display:block}
@media(max-width:699px) and (max-height:720px){.screen .calculator>p[data-model-above]{display:none}.calculator h1{font-size:34px}.calculator .calc-controls .estimate strong{font-size:28px}.calculator .calc-controls .estimate{padding-top:4px}.calculator .calc-controls input{height:24px;margin-top:4px}.calculator .calc-controls .control-actions button{padding:8px 12px}}
/* Soft edges on the 3D clip rect, every screen size (vars set per frame in main.js). */
#viewport canvas{--fade:56px;-webkit-mask-image:linear-gradient(to right,transparent var(--band-left,-200px),#000 calc(var(--band-left,-200px) + var(--fade)),#000 calc(var(--band-right,200vw) - var(--fade)),transparent var(--band-right,200vw)),linear-gradient(to bottom,transparent var(--band-top,-200px),#000 calc(var(--band-top,-200px) + var(--fade)),#000 calc(var(--band-bottom,200vh) - var(--fade)),transparent var(--band-bottom,200vh));-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent var(--band-left,-200px),#000 calc(var(--band-left,-200px) + var(--fade)),#000 calc(var(--band-right,200vw) - var(--fade)),transparent var(--band-right,200vw)),linear-gradient(to bottom,transparent var(--band-top,-200px),#000 calc(var(--band-top,-200px) + var(--fade)),#000 calc(var(--band-bottom,200vh) - var(--fade)),transparent var(--band-bottom,200vh));mask-composite:intersect}
@media(max-width:699px){#viewport canvas{--fade:28px}}
@media(max-width:700px){.ambient-orbit{display:none}}
