:root{color-scheme:dark;--ink:#e8f6fa;--muted:#9fb5c0;--cyan:#57decf}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:#09151e;color:var(--ink);font-family:Arial,Helvetica,sans-serif}header{position:fixed;inset:0 0 auto;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:24px 4vw;background:linear-gradient(#09151ef5,transparent)}a{color:inherit;text-decoration:none}.brand{font-size:16px;letter-spacing:3px}.brand b{color:var(--cyan)}.brand small{display:block;font-size:8px;letter-spacing:2.4px;margin-top:8px;color:var(--muted)}.explore{font-size:12px;border:1px solid #6c8b9855;padding:12px 16px;border-radius:4px;background:#1026328c}#stage{position:fixed;inset:0;z-index:0}#stage canvas{width:100%;height:100%;display:block;pointer-events:none}#load{position:absolute;top:45%;left:45%;padding:20px;background:#112c3a;border:1px solid #53899c;max-width:45vw;z-index:3}.ambient{position:fixed;inset:0;pointer-events:none;z-index:1;background:linear-gradient(90deg,#09151eed 0%,#09151e99 25%,transparent 52%)}main{position:relative;z-index:2;pointer-events:none}.chapter{height:115vh;min-height:720px;display:flex;align-items:center;padding:100px 5vw}.chapter:last-child{height:100vh}.copy{width:min(340px,30vw);pointer-events:auto;text-shadow:0 2px 15px #09151e;transition:none}.chapter:not(.current) .copy{opacity:.32}.eyebrow{font:11px/1.6 monospace;letter-spacing:1.5px;color:var(--cyan);margin:0 0 20px}.copy h1,.copy h2{font-size:clamp(32px,3.8vw,62px);letter-spacing:-2px;line-height:1.04;margin:0 0 24px;font-weight:500}.copy p.description{font-size:15px;line-height:1.75;color:var(--muted);margin:0}.scroll-cue{display:inline-flex;gap:18px;align-items:center;margin-top:35px;padding-top:18px;border-top:1px solid #5b778b60;font-size:11px;letter-spacing:1.5px;color:#b7d7de}.copy .cta{display:inline-block;margin-top:24px;padding:12px 18px;background:var(--cyan);color:#09242c;font-size:12px;border-radius:3px;text-shadow:none}#scroll-progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--cyan);z-index:10}.tour-control{position:fixed;bottom:24px;right:4vw;display:flex;align-items:center;gap:10px;z-index:5;background:#0d222ed9;padding:7px 10px;border:1px solid #5b829440;border-radius:5px}.tour-control button,.tour-control select{font:12px Arial;color:var(--ink);background:transparent;border:0;padding:8px;cursor:pointer}.tour-control button:disabled{opacity:.25;cursor:default}.tour-control select{width:170px}.tour-control option{background:#102632}#step-number{font:11px monospace;color:var(--cyan);white-space:nowrap}.bottom-note{position:fixed;bottom:35px;left:5vw;z-index:4;font:9px monospace;letter-spacing:1.2px;color:#91a6b4}.bottom-note span{color:var(--cyan);padding:0 10px}#target-label{position:absolute;z-index:3;border:1px solid #62c5cb70;border-left:2px solid var(--cyan);background:#123441a8;padding:7px 10px;font:11px monospace;color:#c6f7f3;pointer-events:none;max-width:260px;transform:translate(-50%,0)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.no-js{position:fixed;top:40%;left:10%;z-index:10;background:#123441;padding:25px}@media(max-width:700px){header{padding:18px 5vw}.brand{font-size:12px;letter-spacing:1.5px}.brand small{font-size:7px;letter-spacing:1px}.explore{padding:10px;font-size:10px}.ambient{background:linear-gradient(0deg,#09151ef5 0%,#09151eb3 22%,transparent 50%)}.chapter{align-items:flex-end;padding:0 6vw 120px;min-height:650px}.copy{width:100%;max-width:480px}.copy h1,.copy h2{font-size:35px;max-width:330px;margin-bottom:14px}.eyebrow{margin-bottom:12px}.copy p.description{font-size:13px;line-height:1.6;max-width:400px}.scroll-cue{margin-top:14px;padding-top:10px}.bottom-note{display:none}.tour-control{bottom:18px;right:5vw;left:5vw;justify-content:space-between}.tour-control select{width:47%}#load{left:10%;max-width:80vw;top:35%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.copy{transition:none}}

/* Each section lands with its copy vertically centered in the viewport. */
html{scroll-snap-type:y mandatory;scroll-padding-top:0}
.chapter,.chapter:last-child{height:100svh;min-height:100svh;align-items:center;padding:90px 5vw;scroll-snap-align:start;scroll-snap-stop:always}
@media(max-width:700px){.chapter,.chapter:last-child{padding:90px 6vw}.copy{background:#09151e80;padding:16px;border-radius:4px}.copy h1,.copy h2{font-size:32px}}

:root{color-scheme:dark;--ink:#e8f6fa;--muted:#9fb5c0;--cyan:#57decf;--blue:#328cff}
body{background:#020407;color:var(--ink);font-family:"D-DIN",Arial,Helvetica,sans-serif}
body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(87,222,207,.045) 1px,transparent 1px),linear-gradient(rgba(87,222,207,.035) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 78%)}
#particles{position:fixed;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;opacity:.82;mix-blend-mode:screen}
header{background:linear-gradient(to bottom,rgba(4,8,18,.9),rgba(4,8,18,.32),transparent);border-bottom:1px solid rgba(217,255,245,.12)}
.brand{color:#eef7ff;text-shadow:0 0 20px rgba(50,140,255,.2)}.brand b{color:var(--cyan)}.brand small{color:#8fa9bd}
.explore{border-color:rgba(87,222,207,.38);background:rgba(5,18,30,.68);color:#dffefa;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.ambient{z-index:1;background:linear-gradient(90deg,rgba(2,4,7,.86) 0%,rgba(2,4,7,.52) 25%,transparent 58%)}
main,.tour-control,.bottom-note{z-index:2}
.copy{text-shadow:0 2px 18px #020407}.eyebrow{color:var(--cyan)}.copy p.description{color:#b6c8d5}.scroll-cue{border-color:rgba(91,209,218,.38);color:#c6e9ed}
.copy .cta{background:linear-gradient(135deg,#328cff,#55dfd3);color:#03111c;box-shadow:0 0 24px rgba(50,140,255,.28)}
#scroll-progress{background:linear-gradient(90deg,#328cff,var(--cyan))}
.tour-control{background:rgba(5,18,30,.84);border-color:rgba(91,130,148,.35);box-shadow:0 16px 38px rgba(0,0,0,.25)}
.tour-control button,.tour-control select{color:var(--ink)}.tour-control option{background:#0b1d2b}
#step-number{color:var(--cyan)}.bottom-note{color:#91a6b4}
#target-label{background:rgba(10,42,54,.78);border-color:rgba(98,197,203,.55);color:#c6f7f3;box-shadow:0 12px 28px rgba(0,0,0,.25)}
#stage{z-index:0}#load{background:rgba(8,28,42,.9);border-color:rgba(83,137,156,.72);color:var(--ink);box-shadow:0 16px 40px rgba(0,0,0,.3)}
@media(max-width:700px){.copy{background:rgba(5,18,30,.58);border:1px solid rgba(87,222,207,.18);box-shadow:0 16px 40px rgba(0,0,0,.2);backdrop-filter:blur(10px)}}
@font-face{font-family:"D-DIN";src:url("../assets/fonts/d-din/D-DIN.otf") format("opentype");font-weight:400;font-display:swap}@font-face{font-family:"D-DIN";src:url("../assets/fonts/d-din/D-DIN-Bold.otf") format("opentype");font-weight:700;font-display:swap}
.app-toolbar{position:fixed;inset:0 0 auto;z-index:5;height:102px;padding:0;border-bottom:1px solid rgba(217,255,245,.14);background:linear-gradient(to bottom,rgba(4,8,18,.88),rgba(4,8,18,.22),transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}
.app-toolbar__rail{width:100%;height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:0 4.5vw;pointer-events:auto}
.app-toolbar__brand{justify-self:start;display:inline-flex;align-items:center;min-width:0}.app-toolbar__logo{display:block;width:174px;height:auto;object-fit:contain}
.app-toolbar__nav{justify-self:center;display:flex;align-items:center;gap:38px}.app-toolbar__link{position:relative;display:inline-flex;align-items:center;justify-content:center;color:rgba(238,247,244,.72);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;transition:color .2s ease}.app-toolbar__link:hover,.app-toolbar__link:focus-visible,.app-toolbar__link.is-active{color:#72f8d3;outline:none}
.app-toolbar__actions{justify-self:end;display:inline-flex;align-items:center;gap:12px}.language-toggle{display:inline-flex;align-items:center;gap:2px;min-height:42px;padding:3px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.05)}.language-toggle__button{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:34px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:rgba(247,249,255,.72);font-size:12px;font-weight:700;cursor:pointer}.language-toggle__button.is-active,.language-toggle__button:hover{background:linear-gradient(135deg,#087cff,#3267ff);color:#fff;box-shadow:0 0 14px rgba(8,124,255,.24)}
.app-toolbar__explore{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid rgba(217,255,245,.14);border-radius:100px;color:#eef7f4;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}.app-toolbar__explore:hover{color:#72f8d3;border-color:rgba(114,248,211,.38)}
@media(max-width:900px){.app-toolbar__rail{grid-template-columns:auto 1fr auto;gap:18px;padding:0 22px}.app-toolbar__nav{gap:20px}.app-toolbar__link{font-size:10px}.app-toolbar__logo{width:142px}}
@media(max-width:700px){.app-toolbar{height:76px}.app-toolbar__rail{gap:12px;padding:0 16px}.app-toolbar__nav{display:none}.app-toolbar__logo{width:124px}.language-toggle{min-height:38px}.language-toggle__button{min-width:34px;min-height:30px;padding:0 8px;font-size:11px}.app-toolbar__explore{min-height:38px;padding:0 12px;font-size:10px;letter-spacing:.12em}}
.copy h1,.copy h2{font-family:"D-DIN",Arial,Helvetica,sans-serif;font-size:clamp(42px,5.2vw,78px);font-weight:700;line-height:.96;letter-spacing:0;text-transform:uppercase;margin:0 0 26px;background:linear-gradient(135deg,#75a9ff 0%,#2f78ff 62%,#4ce1d0 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.copy p.description{font-family:"D-DIN",Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:1.55;color:#c6d4e1;max-width:470px}
.eyebrow{font-family:"D-DIN",Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#55e8d1}
.scroll-cue,.bottom-note,.tour-control{font-family:"D-DIN",Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:.08em}
@media(max-width:700px){.copy h1,.copy h2{font-size:clamp(36px,10vw,54px);line-height:.98;margin-bottom:18px}.copy p.description{font-size:14px;line-height:1.5}}
.chapter{overflow:visible}
.chapter .copy{position:relative;z-index:20;width:min(620px,46vw);max-width:620px;overflow:visible}
.chapter .copy h1,.chapter .copy h2{position:relative;z-index:21;max-width:100%;overflow:visible;overflow-wrap:anywhere;word-break:normal}
@media(max-width:700px){.chapter .copy{width:100%;max-width:620px}.chapter .copy h1,.chapter .copy h2{max-width:100%;overflow-wrap:anywhere}}
.skip-animation{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid rgba(87,222,207,.38);border-radius:100px;background:rgba(5,18,30,.68);color:#dffefa;font:700 11px "D-DIN",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.skip-animation:hover,.skip-animation:focus-visible{background:rgba(26,71,83,.8);border-color:rgba(114,248,211,.72);color:#72f8d3;outline:none}
@media(max-width:700px){.skip-animation{min-height:38px;padding:0 10px;font-size:9px;letter-spacing:.08em}}
.tour-control{display:none!important}.bottom-note{display:none!important}
.skip-animation{position:fixed;right:4.5vw;bottom:28px;z-index:7}
@media(max-width:700px){.skip-animation{right:16px;bottom:18px}}
.eyebrow{display:none!important}

.app-toolbar__nav{display:none!important}
.app-toolbar{position:fixed}
.app-toolbar__rail{position:relative;display:block}
.app-toolbar__brand{position:absolute;left:4.5vw;top:30px}
.app-toolbar__nav{display:none!important;pointer-events:none!important}
.app-toolbar__actions{position:absolute;right:4.5vw;top:30px;display:inline-flex!important}#skip-animation-slot{position:fixed;right:4.5vw;bottom:28px;z-index:7;display:flex;gap:10px;align-items:center}
#skip-animation-slot .skip-animation{position:static}
#auto-animation.is-playing{border-color:rgba(114,248,211,.78);background:rgba(26,71,83,.8);color:#72f8d3}
@media(max-width:700px){#skip-animation-slot{right:16px;bottom:18px;gap:7px;flex-wrap:wrap;justify-content:flex-end}#skip-animation-slot .skip-animation{min-height:38px;padding:0 10px;font-size:9px;letter-spacing:.08em}}