:root{--ground:#062f38;--ink:#fff9e9;--accent:#f86b42;--panel:#073541;--text:Arial,Helvetica,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{background:var(--ground);color:var(--ink);font-family:var(--text);scroll-behavior:auto}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button,a{color:inherit}a{text-underline-offset:5px}button{font:inherit;cursor:pointer;border:0}button:disabled{opacity:.45;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button,a{touch-action:manipulation}button:hover:not(:disabled),.top-actions a:hover{color:var(--accent)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;top:-100px;left:20px;z-index:60;background:var(--ink);color:var(--ground);padding:15px}.skip:focus{top:10px}.masthead{position:fixed;z-index:20;top:0;left:0;width:100%;padding:26px 40px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.masthead a,.masthead button{pointer-events:auto}.wordmark{font-size:32px;font-weight:900;letter-spacing:-.07em;text-decoration:none}.top-actions{display:flex;gap:22px;align-items:center;font-size:16px}.top-actions button{background:transparent;padding:13px 0}.top-actions a{text-decoration:none;padding:13px 0}.world{display:none}.chapter{position:relative;min-height:100svh;isolation:isolate;overflow:clip}.still-scene{position:absolute;inset:0;z-index:-2}.still-scene img{width:100%;height:100%;object-fit:cover}.chapter::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(0,15,20,.3)}.scene-copy{position:relative;padding-top:26svh;padding-left:6vw;padding-bottom:130px;max-width:55vw}h1,h2{margin:0;font-weight:900;letter-spacing:-.065em;line-height:.91;font-size:clamp(64px,7.4vw,114px)}.scene-copy p{font-size:20px;line-height:1.5;margin:30px 0 24px;max-width:390px}.scene-copy .first-note,.scene-copy .aside{font-size:16px;margin-top:30px;max-width:330px}.primary{display:inline-flex;align-items:center;min-height:48px;padding:14px 20px;background:var(--ink);color:var(--ground);font-size:16px;font-weight:700;text-decoration:none;transition:background .18s,color .18s,transform .14s}.primary:hover{background:var(--accent);color:#092e37}.primary:active{transform:translateY(2px)}.return{display:block;font-size:16px;margin-top:26px;width:max-content}.dive-controls{position:fixed;left:0;bottom:0;z-index:20;width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 40px;background:var(--ground);font-size:16px;min-height:82px}.place{display:flex;flex-direction:column;gap:5px;min-width:136px}#scene-count{font-size:14px}.chapter-links{display:flex;gap:8px;align-items:center}.chapter-links a{padding:12px 16px;text-decoration:none;transition:background .18s}.chapter-links a:hover{background:#144955}.chapter-links a[aria-current]{background:var(--ink);color:var(--ground)}.depth-controls{display:flex;align-items:center;gap:14px}.depth-controls[hidden]{display:none}.depth-controls button{padding:12px 4px;background:none;font-size:16px}#depth{width:135px;accent-color:var(--accent);height:32px;cursor:pointer}.token-note{position:fixed;z-index:15;right:40px;top:98px;text-align:right;font-size:14px;line-height:1.5;text-decoration:none}.token-note span{display:block}.project-info{position:relative;background:var(--panel);padding:120px 6vw 160px}.project-info h2{font-size:clamp(40px,5vw,64px);letter-spacing:-.05em;line-height:1}.project-info p{max-width:480px;font-size:18px;line-height:1.6;margin:28px 0}.project-info dl{max-width:480px;display:grid;gap:20px;margin:32px 0}.project-info dl div{display:grid;grid-template-columns:1fr 1fr;gap:20px}.project-info dt{font-size:16px}.project-info dd{margin:0;font-size:16px;font-weight:700}.project-info .project-fine{font-size:14px;line-height:1.6}.project-info>a{font-size:16px}dialog{background:var(--panel);color:var(--ink);border:0;width:min(580px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:32px;overscroll-behavior:contain}dialog::backdrop{background:rgba(0,14,20,.8)}dialog .project-info{padding:30px 0 8px}dialog .project-info h2{font-size:52px}#close-project{display:block;margin-left:auto;background:var(--ink);color:var(--ground);min-height:44px;padding:10px 18px;font-size:16px}body:has(dialog[open]){overflow:hidden}
/* One inhabited ocean. Native page scroll supplies the camera position. */
.enhanced:not(.still) .world{display:block;position:fixed;inset:0;overflow:clip;pointer-events:none}.water{position:absolute;inset:0;background:var(--ground)}.environment{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;will-change:transform,opacity}.environment:first-child{opacity:1}.world::after{content:"";position:absolute;inset:0;background:rgba(0,13,22,.16)}.traveller{position:absolute;z-index:2;left:56%;top:27%;width:clamp(300px,38vw,580px);will-change:transform}.traveller img{display:block;width:100%;height:auto}.near-kelp{position:absolute;bottom:-6%;left:-3%;height:100%;width:28%;object-fit:fill;z-index:3;opacity:.78;will-change:transform}.enhanced:not(.still) .chapter{height:100svh;min-height:650px;overflow:visible;pointer-events:none}.enhanced:not(.still) .scene-copy a{pointer-events:auto}.enhanced:not(.still) .still-scene{display:none}.enhanced:not(.still) .chapter::after{display:none}.enhanced:not(.still) .scene-copy{padding-bottom:0;will-change:opacity}.enhanced:not(.still) #story{position:relative}.enhanced:not(.still) #surface .scene-copy{padding-top:25svh}.still .world{display:none}.still .chapter .scene-copy{min-height:100svh}.still .chapter::after{background:rgba(0,15,20,.47)}.still .token-note{display:none}

@media(max-width:1000px){.masthead{padding:20px 24px}.dive-controls{padding:12px 24px;gap:12px}.place{min-width:100px}.chapter-links{gap:2px}.chapter-links a{padding:12px 10px}.depth-controls{gap:8px}#depth{width:84px}.token-note{right:24px;top:84px}.scene-copy{max-width:56vw}h1,h2{font-size:clamp(56px,8.2vw,90px)}.traveller{left:55%;width:42vw;top:34%}}
@media(max-width:600px){.masthead{padding:17px 20px}.wordmark{font-size:28px}.top-actions{gap:16px;font-size:14px}.top-actions button{font-size:14px}.token-note{left:20px;right:auto;top:79px;text-align:left;font-size:13px}.token-note span{display:inline;margin-left:8px}.scene-copy{padding:20svh 20px 120px;max-width:none}h1,h2{font-size:clamp(44px,13vw,68px);letter-spacing:-.065em;line-height:.94}.scene-copy p{font-size:16px;line-height:1.45;margin:20px 0 18px;max-width:300px}.scene-copy .first-note{display:none}.scene-copy .aside{font-size:14px;max-width:260px;margin-top:20px}.primary{min-height:44px;padding:12px 16px;font-size:14px}.return{font-size:14px;margin-top:20px}.enhanced:not(.still) #surface .scene-copy{padding-top:20svh}.enhanced:not(.still) .chapter{min-height:600px}.traveller{left:50%;top:48%;width:min(76vw,37svh);transform:translateX(-50%)}.near-kelp{left:-8%;width:36%;height:70%;bottom:0}.environment{object-position:57% center}.environment:nth-child(3){object-position:72% center}.environment:nth-child(4){object-position:65% center}.dive-controls{display:grid;grid-template-columns:1fr;gap:0;padding:6px 12px calc(6px + env(safe-area-inset-bottom));min-height:100px}.place{display:none}.chapter-links{justify-content:space-between;gap:4px}.chapter-links a{padding:11px 14px;font-size:14px;flex:1;text-align:center}.depth-controls{justify-content:center;gap:18px}.depth-controls button{min-width:46px;min-height:36px;padding:7px 4px;font-size:14px}#depth{width:min(44vw,220px);height:28px}.still .chapter{min-height:100svh}.still .scene-copy{padding-top:110px}.still-scene img{object-position:50% 65%}.still .chapter::after{background:rgba(0,15,20,.44)}.project-info{padding:100px 20px 150px}dialog{padding:24px}dialog .project-info{padding-top:28px}dialog .project-info h2{font-size:40px}.project-info p{font-size:16px}.project-info dl div{gap:16px}.project-info dt,.project-info dd{font-size:14px}.project-info .project-fine{font-size:13px}}
@media(max-width:360px){.token-note{font-size:12px}.token-note span{margin-left:5px}.scene-copy{padding-top:19svh}.enhanced:not(.still) #surface .scene-copy{padding-top:19svh}.traveller{top:50%;width:min(72vw,34svh)}.chapter-links a{padding:11px 8px}.top-actions{gap:12px}}
@media(max-height:650px) and (min-width:601px){.scene-copy,.enhanced:not(.still) #surface .scene-copy{padding-top:150px}h1,h2{font-size:58px}.scene-copy p{margin-top:18px;font-size:16px}.scene-copy .first-note{display:none}.traveller{width:35vw;top:25%}.token-note{top:80px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Flat, unblurred reading scrim; the ocean remains visible underneath. */
.masthead{background:rgba(2,27,34,.65)}
@media(max-width:600px){.environment,.environment:nth-child(3),.environment:nth-child(4){object-position:center}.near-kelp{opacity:.36}.token-note{background:var(--ground);padding:5px 8px;left:12px;top:76px}}
/* Keep the seabed furniture above the navigation, not hidden behind it. */
.water{bottom:82px}
:root{--ink:#f5f5ef}
.token-note{background:var(--ground);padding:6px 10px}
.scene-copy p{background:rgba(2,28,36,.72);width:fit-content;padding:4px 8px;margin-left:-8px}
@media(max-width:600px){.water{bottom:100px}.scene-copy p{background:rgba(2,28,36,.38)}}

/* Stable reading area: captions never travel across the character or chrome. */
.enhanced:not(.still) .scene-copy{position:fixed;inset:0 auto auto 0;width:55vw;max-width:55vw}
@media(max-width:600px){.enhanced:not(.still) .scene-copy{width:100%;max-width:100%}}
