:root{--ink:#070d16;--paper:#f0ede6;--muted:#b3bfcc;--accent:#b6dceb;--line:rgba(219,233,243,.25);--serif:Georgia,'Times New Roman','Yu Mincho',serif;--sans:Arial,'Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;color-scheme:dark;font-family:var(--sans);background:var(--ink);color:var(--paper)}
#asset-status{position:fixed;top:110px;left:6vw;z-index:15;font-size:12px;color:#f9d6ac}#asset-status:empty{display:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid #c2eaf7;outline-offset:6px}button{border:0;background:transparent}button[hidden],[hidden]{display:none!important}.skip{position:fixed;z-index:30;left:20px;top:-90px;background:var(--paper);color:var(--ink);padding:15px}.skip:focus{top:12px}#universe{position:fixed;inset:0;width:100%;height:100%;z-index:0}.shade{position:fixed;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(3,8,16,.6),transparent 65%),linear-gradient(0deg,rgba(3,8,16,.8),transparent 23%,transparent 82%,rgba(3,8,16,.35))}header{position:fixed;z-index:10;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:30px 4.2vw;background:linear-gradient(#070d1666,transparent)}.wordmark{font-size:23px;letter-spacing:.24em;position:relative;line-height:1.1}.brand-symbol{font-family:var(--serif);font-size:33px;vertical-align:middle;display:inline-block;margin-right:9px}.brand-caption{font-size:8px;letter-spacing:.3em;display:block;padding-left:44px;margin-top:3px}.header-actions{display:flex;align-items:center;gap:26px;font-size:10px;letter-spacing:.08em}.concept{color:#a8b6c6;font-size:9px;letter-spacing:.15em}#motion{border-bottom:1px solid var(--line);padding:12px 0;min-height:44px}.contact-link{border:1px solid var(--line);padding:13px 20px;border-radius:30px}.contact-link span{margin-left:20px}main{position:relative;z-index:2;pointer-events:none}section{height:100svh;min-height:660px;position:relative;display:flex;align-items:center;padding:100px 7.7vw 120px;scroll-margin-top:0}section a,section button{pointer-events:auto}.chapter-copy{max-width:650px}.hero-copy{padding-top:35px}.eyebrow{font-size:10px;letter-spacing:.24em;line-height:1.8;margin:0 0 28px;color:#c4d4df}h1,h2,p{margin-top:0}h1{font:normal clamp(62px,7.8vw,124px)/.96 var(--serif);letter-spacing:-.05em;margin-bottom:34px}h1 em{font-weight:normal;color:#dae8f0}h2{font:normal clamp(34px,4vw,63px)/1.4 var(--serif);letter-spacing:.06em;margin-bottom:23px}h2 em{font-style:normal;color:#d5e4ed}.lead{font-size:14px;line-height:2.15;letter-spacing:.13em;color:#d4dce2;text-shadow:0 2px 10px #070d16}.text-link{display:inline-flex;align-items:center;gap:66px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.12em;margin-top:14px;min-height:44px}.annotation{position:absolute;right:4.3vw;bottom:142px;font-size:8px;line-height:2;letter-spacing:.19em;text-align:right;color:#b9c7d2}.annotation span{font-size:10px;letter-spacing:.1em}.journey-controls{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:22px 4.2vw 26px;border-top:1px solid #ffffff16;background:linear-gradient(transparent,#070d1699);font-size:9px;letter-spacing:.14em}.journey-label{display:flex;gap:16px;align-items:center;width:300px}.journey-label #chapter-number{font-size:15px}.divider{color:#657589}#chapter-name{margin-left:12px;color:#afc0cd;font-size:8px}nav{display:flex;gap:4px}nav a{width:48px;height:44px;display:flex;align-items:center;justify-content:center}nav i{display:block;width:30px;height:1px;background:#ffffff50;transition:height .3s,background .3s}nav a[aria-current] i{background:#d2eff8;height:3px}.scroll-guide{width:300px;text-align:right;font-size:8px;color:#acbdcc}.scroll-guide span{font-size:16px;margin-left:20px}.room-options{display:flex;flex-direction:column;gap:0;margin:24px 0 10px;max-width:370px}.room-options button{display:flex;gap:17px;align-items:center;border-top:1px solid var(--line);text-align:left;min-height:60px;padding:14px 4px;font-family:var(--serif);font-size:21px;transition:color .2s,background .2s}.room-options button:last-child{border-bottom:1px solid var(--line)}.room-options button span{font:9px var(--sans);color:#93a6b7}.room-options button b{font:18px var(--sans);margin-left:auto;font-weight:normal}.room-options button:hover,.room-options button[aria-pressed=true]{color:#c5ebf6;background:#bbdaed0d}.room-hint{font-size:9px;letter-spacing:.12em;color:#afbcc7}#room-description{max-width:370px;min-height:40px;font-size:12px;line-height:1.9;margin-top:20px}#room-reset{font-size:10px;min-height:44px;border-bottom:1px solid var(--line)}.room-copy{padding-top:5px}.final-copy{max-width:none;margin:auto;text-align:center;padding-top:70px}.final-copy h2{font-size:clamp(36px,4.4vw,70px);text-shadow:0 5px 22px #06111d}.final-copy .lead{margin-bottom:32px}.primary{background:var(--paper);color:#17232f;padding:19px 26px;border-radius:40px;font-size:12px;letter-spacing:.1em;min-height:48px;display:inline-flex;align-items:center;gap:50px}.primary:hover{background:#d4e9f1}.fiction{font-size:9px;margin:25px 0 0;color:#bdcbd3;letter-spacing:.09em}#loading{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;background:var(--ink);font-size:12px;letter-spacing:.2em;transition:opacity .6s}#loading span{width:100px;height:1px;background:#b6dceb;animation:breathe 1.5s infinite}#loading.loaded{opacity:0;pointer-events:none}#fallback,.no-script{position:fixed;z-index:12;left:20px;right:20px;top:105px;background:#152733;padding:15px;font-size:12px}body.fallback #loading{display:none}body.fallback section{background:linear-gradient(130deg,#142b3d,#070d16);border-bottom:1px solid var(--line)}dialog{color:var(--paper);background:#111d29;border:1px solid #aabdc444;border-radius:2px;padding:50px;max-width:560px;width:calc(100% - 36px)}dialog::backdrop{background:#020912bb;backdrop-filter:blur(9px)}dialog h2{font-size:30px}dialog p{font-size:12px;line-height:1.9}dialog label{display:block;font-size:11px;margin:26px 0 10px}dialog textarea{width:100%;resize:vertical;border:1px solid var(--line);background:#ffffff05;padding:15px;color:var(--paper)}dialog .dialog-note{font-size:10px;color:#aabac6;margin-top:12px}.dialog-close:not(.primary){position:absolute;right:14px;top:8px;font-size:30px;width:44px;height:44px}.dialog-close.primary{margin-top:16px}body[data-chapter="3"] .shade{background:linear-gradient(90deg,#050c16ad,transparent 75%),linear-gradient(0deg,#050c16aa,transparent 35%)}@keyframes breathe{50%{opacity:.3;transform:scaleX(.6)}}
.room-copy{max-width:440px}.room-copy h2{font-size:clamp(32px,3.2vw,46px);line-height:1.3;margin-bottom:16px}.room-copy .eyebrow{margin-bottom:16px}.room-copy .lead{margin-bottom:10px}.room-copy .room-options{margin-top:16px}.room-copy #room-description{min-height:48px;margin:12px 0 0}.room-copy #room-reset[hidden]{display:block!important;visibility:hidden}
@media(min-width:1500px){section{padding-left:9vw}.chapter-copy{max-width:740px}.room-copy{max-width:470px}}
@media(max-width:1024px){.concept{display:none}section{padding-left:6vw}.annotation{right:5vw}.journey-label,.scroll-guide{width:230px}h1{font-size:88px}}
@media(max-width:768px){header{padding:22px 6vw}.wordmark{font-size:17px}.brand-symbol{font-size:27px;margin-right:2px}.brand-caption{font-size:6px;padding-left:32px}.header-actions{gap:15px}.contact-link{display:none}section{padding:110px 7vw 125px;min-height:650px;align-items:flex-end}.hero-copy{padding:0 0 65px}h1{font-size:clamp(60px,11vw,85px)}h2{font-size:37px}.eyebrow{font-size:8px;margin-bottom:20px}.lead{font-size:12px}.annotation{display:none}.journey-controls{padding:12px 6vw 18px}.journey-label{width:auto;gap:9px}#chapter-name{display:none}.scroll-guide{display:none}nav a{width:35px}.final-copy{padding-top:0;margin:auto 0 5vh;width:100%}.final-copy h2{font-size:38px}.room-options{margin-top:15px}.room-options button{font-size:20px;min-height:52px}.room-copy h2{font-size:34px}.room-hint{font-size:8px}#room-description{margin-top:10px;margin-bottom:0}.room-copy{padding:0}.shade{background:linear-gradient(0deg,#030b17ed,transparent 85%)}dialog{padding:35px 25px}.fiction{font-size:8px}}
@media(max-width:480px){#motion{font-size:9px}h1{font-size:61px}section{padding-left:6vw;padding-right:6vw}.journey-controls{padding-left:6vw;padding-right:6vw}.final-copy h2{font-size:34px}.room-copy h2{font-size:30px}.primary{padding:17px 23px;gap:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:768px){body[data-chapter="3"] .shade{background:linear-gradient(90deg,rgba(4,10,19,.72),rgba(4,10,19,.33)),linear-gradient(0deg,#030b17aa,transparent 85%)}.room-copy{text-shadow:0 2px 12px #020712}.room-copy #room-description{font-size:11px}}

/* Give the close hull pass and planetary arc enough scroll distance to read. */
#passage{height:220svh;align-items:flex-start;padding-top:28svh}
#passage .chapter-copy{position:sticky;top:28svh}
#arrival{height:140svh;align-items:flex-start;padding-top:28svh}
#arrival .chapter-copy{position:sticky;top:28svh}
@media(max-width:768px){#passage,#arrival{padding-top:36svh}#passage .chapter-copy,#arrival .chapter-copy{top:36svh}}
