@font-face{font-family:Manrope;src:url('assets/manrope-latin.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
:root{--ink:#04181e;--paper:#f4f0e8;--accent:#d5cab3;--muted:#c0cccb;--pad:clamp(24px,4.5vw,80px);--sans:Manrope,Arial,sans-serif;--px:0px;--py:0px;--light-x:68%;--light-y:48%}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--paper);outline-offset:6px}.skip{position:fixed;top:8px;left:8px;padding:12px;background:var(--paper);color:var(--ink);z-index:100;transform:translateY(-150%)}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.header{position:absolute;z-index:20;inset:0 0 auto;padding:30px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:24px;font-weight:500;letter-spacing:.14em}.brand>span:not([data-brand]){vertical-align:top;font-size:10px;letter-spacing:0;margin-left:8px}.edition{font-size:10px;letter-spacing:.15em;color:var(--muted)}nav{display:flex;gap:40px;font-size:13px}nav a{padding:10px 0;border-bottom:1px solid transparent}nav a:hover{border-color:currentColor}nav span{margin-left:14px}
.journey{position:relative}.stage{position:sticky;top:0;height:100svh;overflow:hidden;margin-bottom:-100svh;background:var(--ink)}.surface-plane,.depth-window,.depth-plane,.shade,.spotlight,.scene-grain{position:absolute;inset:0}.parallax-plane{inset:-2%;transform:translate(var(--px),var(--py));will-change:transform}.stage img{height:100%;width:100%;object-fit:cover;display:block}.surface-image{object-position:64% center;transform-origin:73% 49%;will-change:transform}.depth-window{opacity:0;will-change:opacity}.depth-image{object-position:67% center;will-change:transform}.shade{background:linear-gradient(90deg,rgba(1,13,20,.36),transparent 80%),linear-gradient(0deg,rgba(1,13,20,.22),transparent 45%);pointer-events:none}.scene-grain{display:none}
.chapter{position:relative;min-height:100svh;padding:0 var(--pad);display:flex;align-items:center;isolation:isolate}.chapter-copy{position:relative;z-index:4;width:100%;padding:16vh 0 12vh}.kicker{margin:0 0 30px;font-size:11px;font-weight:500;letter-spacing:.15em;line-height:1.5}.kicker span{color:var(--accent);margin-right:20px}h1,h2,p{margin-top:0}h1,h2{font-weight:200;letter-spacing:-.065em;line-height:1.02;margin-bottom:0}h1{font-size:clamp(76px,10.7vw,168px)}h2{font-size:clamp(70px,9.2vw,144px)}h1 em,h2 em{font-style:normal;color:var(--paper)}.hero-lower{display:flex;align-items:flex-start;gap:28px;margin-top:38px;margin-left:9px}.hairline{display:block;width:65px;height:1px;background:var(--paper);margin-top:11px;flex-shrink:0}.hero-lower p,.body{font-size:16px;line-height:1.7;color:var(--muted);max-width:390px;margin-bottom:0}.body{margin:32px 0 0 9px}.cue{position:absolute;z-index:5;bottom:45px;left:var(--pad);display:flex;align-items:center;gap:18px;font-size:13px}.cue>span{font-size:24px;line-height:1}.side-note{position:absolute;right:var(--pad);top:50%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.18em;color:var(--muted)}.passage .chapter-copy{padding-left:1.5vw}.scene-label{position:absolute;bottom:45px;right:var(--pad);display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.15em}.dot{height:5px;width:5px;border-radius:50%;background:var(--accent)}
.discovery .chapter-copy{max-width:62%;pointer-events:none}.discovery .controls{pointer-events:auto}.controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;max-width:430px}.controls button{padding:15px 18px;border:1px solid rgba(244,240,232,.65);border-radius:0;background:rgba(3,19,26,.2);color:var(--paper);font-size:14px;display:flex;gap:25px;align-items:center;justify-content:space-between;cursor:pointer;min-height:52px}.controls button[aria-pressed=true],.controls button:not(:disabled):hover{background:var(--paper);color:var(--ink)}.controls button:disabled{opacity:.45;cursor:default}.controls p{flex-basis:100%;margin:4px 0 0;font-size:14px;line-height:1.5;color:var(--paper);white-space:normal;overflow-wrap:anywhere;max-width:100%}.explore-target{position:absolute;z-index:3;inset:17% 4% 12% 49%;touch-action:pan-y;cursor:crosshair}.explore-target:focus-visible{outline:1px solid var(--paper);outline-offset:-8px}.target-label{position:absolute;bottom:24px;right:24px;display:flex;gap:16px;align-items:center;font-size:11px;letter-spacing:.12em;pointer-events:none}.target-label span{font-size:30px;font-weight:200}.spotlight{pointer-events:none;opacity:0;background:radial-gradient(circle clamp(110px,17vw,260px) at var(--light-x) var(--light-y),transparent 28%,rgba(1,8,13,.05) 45%,rgba(1,8,13,.82) 100%);z-index:2}.light-on .stage-light{opacity:1}.local-light{display:none}.journey-progress{position:absolute;right:var(--pad);top:calc(100svh - 57px);z-index:6;display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.12em;pointer-events:none}.progress-line{height:1px;width:90px;background:#c0cccb55;overflow:hidden}.progress-line i{height:100%;display:block;width:100%;transform:scaleX(0);transform-origin:left;background:var(--paper)}
.outro{position:relative;background:#ece7db;color:#122d32;padding:80px var(--pad) 24px}.outro .kicker span{color:inherit}.outro-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:7vw;align-items:end}.outro h2{font-size:clamp(40px,5.3vw,82px);line-height:1.1;letter-spacing:-.05em}.outro h2 em{color:#122d32}.outro-grid p{font-size:16px;line-height:1.7;max-width:330px}.return{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #122d32;padding:18px 0;font-size:14px;max-width:330px}.return span{font-size:24px}.outro footer{display:flex;justify-content:space-between;gap:16px;margin-top:100px;padding-top:24px;border-top:1px solid #122d3233;font-size:10px;letter-spacing:.12em}
.no-js .stage,.reduced .stage{display:none}.no-js .chapter,.reduced .chapter{background-size:cover;background-position:64% center}.no-js .surface,.reduced .surface{background-image:linear-gradient(90deg,#03131a70,transparent),var(--image-surface,url('assets/umbral-surface.png'))}.no-js .passage,.no-js .discovery,.reduced .passage,.reduced .discovery{background-image:linear-gradient(90deg,#03131a70,transparent),var(--image-depth,url('assets/umbral-depth.png'))}.no-js .controls,.no-js .explore-target,.no-js .journey-progress{display:none}.reduced .local-light{display:block}.reduced.light-on .local-light{opacity:1}.reduced .journey-progress{display:none}
@media(max-width:700px){:root{--pad:24px}.header{padding-top:24px;align-items:flex-start}.brand{font-size:20px}.edition{display:none}nav{gap:18px;font-size:12px}nav a{padding:3px 0}nav span{margin-left:4px}.chapter{min-height:100svh}.chapter-copy{padding:16vh 0 15vh}.kicker{font-size:10px;letter-spacing:.09em;margin-bottom:22px}.kicker span{margin-right:9px}h1{font-size:clamp(48px,14.8vw,86px);letter-spacing:-.065em}h2{font-size:clamp(47px,14.5vw,82px);letter-spacing:-.07em}.hero-lower{margin:28px 0 0;gap:16px}.hairline{width:34px}.hero-lower p,.body{font-size:15px;line-height:1.6;max-width:300px}.body{margin:25px 0 0}.cue{bottom:34px;font-size:12px}.side-note{display:none}.scene-label{bottom:32px;font-size:9px}.passage .chapter-copy{padding-left:0}.discovery{align-items:flex-start;min-height:115svh}.discovery .chapter-copy{max-width:none;padding-top:12vh;padding-bottom:10vh}.discovery h2{font-size:14vw}.discovery .body{max-width:290px}.controls{max-width:100%;margin-top:28px;gap:10px}.controls button{font-size:14px;padding:14px 16px;gap:20px}.controls p{font-size:14px;line-height:1.55;max-width:330px}.explore-target{inset:65% 0 4% 0}.target-label{font-size:10px;right:24px;bottom:24px}.journey-progress{top:calc(100svh - 48px);gap:10px}.journey-progress>span:last-child{display:none}.progress-line{width:40px}.surface-image{transform-origin:58% 46%;object-position:64% center}.depth-image{object-position:67% center}.depth-window{opacity:0}.outro{padding-top:56px}.outro-grid{grid-template-columns:1fr;gap:32px}.outro h2{font-size:43px}.outro-grid p{font-size:15px}.outro footer{margin-top:56px;font-size:9px}.spotlight{background:radial-gradient(circle 135px at var(--light-x) var(--light-y),transparent 20%,rgba(1,8,13,.04) 42%,rgba(1,8,13,.85) 100%)} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.parallax-plane{transform:none}}

/* A photographic dissolve, not an unsupported claim of continuous 3D passage. */
.depth-window{clip-path:none}.surface-image{transform-origin:78% 45%}.depth-image{object-position:var(--depth-position-desktop,74%) center}
.journey-progress{position:fixed;top:auto;bottom:32px;opacity:1;transition:opacity .15s}.outro-visible .journey-progress{opacity:0}
.light-on .journey-progress{opacity:0}
@media(max-width:700px){
 .surface-image{transform-origin:68% 42%}.depth-image{object-position:var(--depth-position-mobile,84%) center}
 .discovery{min-height:145svh;display:block;padding:0}.discovery .chapter-copy{padding:56px var(--pad) 40px;max-width:100%;background:linear-gradient(#03161ef2 75%,#03161e00);min-height:66svh}
 .discovery h2{font-size:clamp(48px,14vw,68px);line-height:1.03}.discovery .body{max-width:300px}
 .explore-target{inset:62svh 0 0}.target-label{bottom:6svh}.journey-progress{bottom:34px}
 .spotlight{background:radial-gradient(circle 170px at var(--light-x) var(--light-y),transparent 25%,rgba(1,8,13,.04) 48%,rgba(1,8,13,.85) 100%)}
 .reduced .discovery,.no-js .discovery{background-position:84% bottom;background-size:auto 100svh;background-repeat:no-repeat;background-color:#03161e}
}

.mobile-light-dock{display:none}
@media(max-width:700px){
 .surface-image{object-position:82% center}.surface{background-position:82% center!important}
 .mobile-exploring .mobile-light-dock{display:flex;position:fixed;z-index:30;bottom:18px;left:24px;right:24px;gap:8px;padding:8px;background:#03161eea;border:1px solid #f4f0e842;backdrop-filter:blur(12px)}
 .mobile-light-dock button{color:var(--paper);background:transparent;border:1px solid #f4f0e88a;padding:12px 14px;font-size:14px;min-height:48px;flex:1;cursor:pointer}
 .mobile-light-dock button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.mobile-light-dock button:disabled{opacity:.45}
 .target-label{bottom:13svh}.mobile-exploring .journey-progress{opacity:0}
}
