:root{color-scheme:dark;--night:#02090f;--white:#f1f7fa;--muted:#a1b6c2;--ice:#bce8ff;--line:rgba(171,215,240,.15);font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--night);color:var(--white);font-size:17px;line-height:1.65;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--ice);outline-offset:7px}button:disabled{cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:20;top:-80px;left:20px;background:#fff;color:#02090f;padding:12px}.skip:focus{top:10px}#world{position:fixed;inset:0;z-index:-2;pointer-events:none}#world canvas{display:block;width:100%;height:100%}.vignette{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 42%,rgba(2,16,28,.06) 78%,rgba(2,12,24,.22) 100%)}
.site-header{height:84px;position:fixed;z-index:10;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:linear-gradient(#0b213b70,transparent);transition:background .5s}.site-header.scrolled{background:#02090fc9;backdrop-filter:blur(18px)}.brand{font-size:20px;font-weight:600;letter-spacing:-.07em;line-height:1}.site-header nav{display:flex;gap:34px;margin-left:10px}.site-header nav a{font-size:14px;color:#d2dce1;transition:color .2s}.site-header nav a:hover{color:#fff}.motion-button{display:grid;place-items:center;border:1px solid #c5eaff26;background:#b0dcff08;border-radius:50%;width:36px;height:36px}.motion-button svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5}.motion-button .play-icon{display:none}.motion-button[aria-pressed=true] .pause-icon{display:none}.motion-button[aria-pressed=true] .play-icon{display:block}
.intro{height:260vh;position:relative}.word-stage{position:fixed;inset:0;pointer-events:none;z-index:3;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:clamp(54px,7.6vw,132px);font-weight:600;letter-spacing:-.055em;line-height:1;opacity:0;transition:opacity .8s}.ready .word-stage{opacity:1}.word-stage span{position:absolute;top:44.96%;will-change:transform,opacity;white-space:nowrap}#word-ai{left:0}#word-sberg{left:0}.intro-statement{position:fixed;top:56%;left:0;width:100%;text-align:center;pointer-events:none;opacity:0;font-size:20px;line-height:1.55;letter-spacing:-.015em;color:#c8dbe6}.intro-statement p{margin:0}.intro-bottom{position:fixed;bottom:38px;left:40px;right:40px;display:flex;align-items:flex-end;justify-content:space-between;z-index:3}.intro-bottom p{margin:0;font-size:14px;color:#a8bdc9}.intro-bottom a{display:flex;align-items:center;gap:20px;color:#b2c3ce;font-size:13px;margin-right:58px}.scroll-line{display:block;position:relative;width:1px;height:36px;background:#b7e3ff3b;overflow:hidden}.scroll-line:after{content:'';position:absolute;top:0;left:0;width:1px;height:16px;background:#d7f1ff;animation:scrolldown 2.3s ease-in-out infinite}@keyframes scrolldown{0%{transform:translateY(-18px)}100%{transform:translateY(45px)}}.replay{position:fixed;bottom:28px;right:32px;border:1px solid #caeaff24;background:#c1e6ff0c;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;z-index:4}.replay svg{width:20px;stroke:#d6e8f3;stroke-width:1.4;fill:none}.replay:hover{background:#c1e6ff20}
.vision-section{height:145vh;position:relative}.vision-copy{position:relative;top:16vh;width:420px;margin-left:12%;padding:60px 0}.eyebrow{font-size:12px;letter-spacing:.16em;color:#8fb3c9;line-height:1.5;margin:0 0 30px}h2{font-weight:400;font-size:clamp(44px,5.4vw,80px);letter-spacing:-.06em;line-height:1.06;margin:0 0 36px}.vision-copy>p:not(.eyebrow){color:#a6becd;max-width:345px;font-size:17px;line-height:1.8}.chapter{height:185vh;position:relative}.chapter-visual{height:102vh}.chapter-copy{width:min(650px,calc(100% - 48px));margin:0 auto;text-align:center;padding-top:0}.chapter-copy h2{font-size:clamp(42px,4.9vw,68px);margin-bottom:28px}.chapter-copy>p:last-child{max-width:460px;margin:0 auto;color:#a8bdcb;font-size:18px;line-height:1.8}.chapter-copy .eyebrow{margin-bottom:23px}.closing{height:105vh;min-height:660px;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:80px 24px}.closing h2{font-size:clamp(56px,7.1vw,108px);margin-bottom:28px}.closing>p:not(.eyebrow){color:#a9c0cf;font-size:18px;line-height:1.7;margin:0}.back-top{display:flex;align-items:center;gap:25px;margin-top:44px;padding-bottom:8px;border-bottom:1px solid #c5e4f44f;font-size:14px}.back-top span{font-size:20px}.back-top:hover{border-color:#fff}footer{min-height:160px;padding:48px 38px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:#02080d;position:relative;border-top:1px solid #b5e1ff0d}footer p,footer span{font-size:13px;color:#879aa6}#fallback{position:fixed;bottom:10px;width:100%;text-align:center;font-size:13px;color:#afc7d4;pointer-events:none}.no-webgl .word-stage{opacity:1}.no-webgl #world{background:radial-gradient(ellipse at center,#173349,#02090f 65%)}
@media(min-width:1600px){.vision-copy{margin-left:17%}}@media(max-width:700px){.site-header{height:68px;padding:0 22px}.brand{font-size:18px}.site-header nav{gap:18px;margin:0}.site-header nav a{font-size:12px}.site-header nav a:nth-child(3){display:none}.motion-button{width:30px;height:30px}.word-stage{font-size:clamp(40px,11vw,72px)}.word-stage span{top:45%}.intro-bottom{left:23px;right:23px;bottom:31px}.intro-bottom p{font-size:12px;max-width:155px;line-height:1.5}.intro-bottom a{font-size:12px;gap:12px;margin-right:38px}.replay{right:17px;bottom:23px;width:32px;height:32px}.intro-statement{top:53%;font-size:17px}.vision-section{height:155vh}.vision-copy{top:57vh;margin-left:24px;width:calc(100% - 48px);padding-top:20px}.vision-copy h2{font-size:58px}.vision-copy>p:not(.eyebrow){font-size:16px;max-width:305px}.eyebrow{font-size:12px}.chapter{height:175vh}.chapter-visual{height:94vh}.chapter-copy>p:last-child{font-size:17px;max-width:340px}.closing{height:100vh;min-height:630px}footer{padding:35px 24px;min-height:200px;flex-wrap:wrap;gap:16px}footer p{width:100%;order:3;margin:0}footer span{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-line:after{animation:none}.word-stage{transition:none}}
.vision-copy,.chapter-copy,.closing{position:relative;z-index:3}.no-webgl .intro{height:100vh}.no-webgl .word-stage{position:absolute;height:100vh;display:flex;align-items:center;justify-content:center;gap:0}.no-webgl .word-stage span{position:static;transform:none!important;opacity:1!important}.no-webgl .intro-bottom{position:absolute}.no-webgl .replay,.no-webgl .motion-button,.no-webgl .lizzy-star{display:none}.no-webgl .vision-section,.no-webgl .chapter,.no-webgl .closing{height:auto;min-height:0;padding:90px 24px}.no-webgl .vision-copy{top:0;width:min(650px,100%);margin:auto}.no-webgl .chapter-visual{height:0}.no-webgl .intro-statement{display:none}@media(max-width:700px){.site-header nav a{font-size:14px}.site-header nav{gap:16px}.site-header nav a:nth-child(2){display:none}}
.intro-statement{top:calc(44.96% + 106px)}@media(max-width:700px){.intro-statement{top:calc(45% + 70px)}}
.word-stage span{text-shadow:0 2px 22px #02060fcc,0 0 5px #02060f80}.menu-button{display:none}.menu-button svg,.nav-dialog button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4}.nav-dialog{inset:0;margin:0;width:100%;height:100dvh;max-width:none;max-height:none;background:#02090f;color:var(--white);border:0;padding:105px 26px 35px}.nav-dialog::backdrop{background:#02090f}.nav-dialog>.brand{position:absolute;top:29px;left:24px}.nav-dialog>button{position:absolute;top:18px;right:18px;width:38px;height:38px;border:0;background:none;display:grid;place-items:center}.nav-dialog nav{display:flex;flex-direction:column;gap:18px}.nav-dialog nav a{font-size:32px;letter-spacing:-.045em;line-height:1.6}.nav-dialog nav a:last-child{font-size:18px;letter-spacing:-.02em;margin-top:25px;padding-top:25px;border-top:1px solid var(--line);color:var(--muted)}@media(max-width:700px){.site-header{justify-content:flex-start;gap:16px}.site-header>.brand{margin-right:auto}.site-header>nav{display:none}.menu-button{border:0;background:none;display:grid;place-items:center;padding:0;width:24px;height:32px}}

/* The name exists only under a mouse pointer: no click or focus toggle. */
.lizzy-star{position:fixed;top:0;left:0;width:28px;height:28px;z-index:5;border-radius:50%;cursor:default}.lizzy-star span{position:absolute;left:32px;top:2px;font-size:12px;line-height:24px;letter-spacing:.06em;color:#d7e2ec;opacity:0;transform:translateX(-3px);transition:opacity .16s,transform .16s;pointer-events:none;text-shadow:0 1px 10px #02090f}.lizzy-star.is-hovered span{opacity:1;transform:none}

/* The opening is the scene, the split title and one quiet scroll cue. The
   scene clock owns both reveals; CSS never adds a second fade or blur. */
body{background:#02090f}
#world{opacity:var(--scene-reveal,0)}
.word-stage,.ready .word-stage{opacity:var(--title-reveal,0);transition:none}
/* White lettering uses only a compact shadow over the stars and ice. */
.word-stage span{top:50%;transform:translateY(-50%);color:#f1f7fa;text-shadow:0 2px 3px rgb(3 17 29 / .65),0 0 10px rgb(3 17 29 / .32)}
.intro-statement{top:calc(50% + clamp(52px,5.9vw,90px));z-index:3;padding:0 20px;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:clamp(18px,1.75vw,26px);font-weight:500;line-height:1.3;letter-spacing:-.015em;color:#f1f7fa;text-shadow:0 1px 2px rgb(3 17 29 / .75),0 0 7px rgb(3 17 29 / .4)}
.intro-statement p{white-space:nowrap}
.site-header{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility .5s,background .5s}
body.past-intro .site-header{opacity:1;visibility:visible;pointer-events:auto}
#replay{display:none!important}
.intro-bottom{left:0;right:0;bottom:max(17px,calc(env(safe-area-inset-bottom) + 10px));display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none}
.intro-bottom .scroll-cue{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:64px;min-height:58px;margin:0;padding:4px 12px;font-size:12px;line-height:1.2;letter-spacing:.015em;color:#d6e3eb;pointer-events:auto}
.scroll-cue-arrow{display:block;width:19px;height:24px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;animation:scroll-cue-drift 2.4s ease-in-out infinite}
@keyframes scroll-cue-drift{0%,100%{transform:translateY(-2px);opacity:.48}55%{transform:translateY(3px);opacity:.95}}
body:not(.ready) .intro-bottom{opacity:0!important;visibility:hidden!important;pointer-events:none}
body:not(.ready) .intro-bottom .scroll-cue{pointer-events:none}
body:not(.ready) .lizzy-star{visibility:hidden}
.no-webgl #world,.no-webgl .word-stage{opacity:1}
.no-webgl .intro-bottom{opacity:1}
@media(max-width:700px){.word-stage span{top:50%}.intro-statement{top:calc(50% + 46px);font-size:clamp(14px,4vw,19px);}.intro-bottom{left:0;right:0;bottom:max(13px,calc(env(safe-area-inset-bottom) + 8px))}.intro-bottom .scroll-cue{font-size:12px;gap:4px;margin:0}}
@media(prefers-reduced-motion:reduce){.scroll-cue-arrow{animation:none;transform:none;opacity:.8}.site-header{transition:none}}
