.story-intro,.story-outro{padding:4rem var(--gutter);max-width:100rem;margin:auto}.story-intro h1{max-width:16ch;font-size:clamp(3rem,7vw,7rem)}.story-intro .lede{max-width:44rem}.story-intro .source-note{max-width:52rem}.scrolly{position:relative}.stage{position:sticky;top:var(--header);height:calc(100svh - var(--header));margin-bottom:calc(-100svh + var(--header));overflow:hidden;background:#11191c}#world{width:100%;height:100%;display:block}.stage-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101716ed 0%,#101716b0 26%,transparent 64%),linear-gradient(0deg,#101716ce,transparent 30%);pointer-events:none}.stage-label{position:absolute;top:1.2rem;right:var(--gutter);font-size:.65rem;color:#c9ccc5;letter-spacing:.08em;max-width:30ch;text-align:right}.chapters{position:relative;pointer-events:none}.chapter{min-height:100svh;display:flex;align-items:center;padding:4rem var(--gutter);scroll-margin-top:var(--header)}.chapter-copy{max-width:31rem;pointer-events:auto}.chapter h2{font-size:clamp(2.5rem,4.6vw,5.5rem);text-shadow:0 3px 20px #000a}.narrative{font-size:1rem;line-height:1.8;color:#d8ddd5;margin-top:1.5rem;max-width:29rem}.fact{margin-top:1.5rem;padding:1rem 0;border-top:1px solid #69766b;max-width:30rem;font-size:.82rem;color:#bac6bb}.fact summary{min-height:44px;cursor:pointer;color:var(--copper)}.fact p{padding:.5rem 0 1rem}.story-controls{position:fixed;bottom:1rem;right:var(--gutter);z-index:15;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;max-width:calc(100vw - 2 * var(--gutter));padding:.5rem;background:#101716f5;border:1px solid #526157}.story-controls button{min-height:44px;color:var(--ink);background:transparent;border:1px solid #526157;padding:.5rem .75rem;font-size:.75rem;cursor:pointer}.story-controls button[aria-pressed=true]{border-color:var(--copper)}.story-controls output{font-variant-numeric:tabular-nums;font-size:.7rem;padding:0 .5rem}.story-outro{padding-bottom:9rem;display:flex;gap:2rem;flex-wrap:wrap}.story-outro .source-note{width:100%}#fallback{position:absolute;top:30%;right:10%;max-width:30ch;color:var(--muted)}@media(max-width:760px){.story-intro{padding-top:2rem}.stage-shade{background:linear-gradient(0deg,#101716fc 0%,#101716dd 25%,#10171611 70%)}.stage-label{top:.75rem;font-size:.55rem}.chapter{align-items:flex-end;padding-bottom:8.5rem;padding-top:45svh;min-height:115svh}.chapter-copy{max-width:100%}.chapter h2{font-size:2.6rem;max-width:13ch}.narrative{font-size:.9rem;line-height:1.7}.story-controls{bottom:.5rem;left:var(--gutter);right:var(--gutter);gap:.25rem;justify-content:center}.story-controls button{font-size:.65rem;padding:.35rem .5rem}.story-intro h1{font-size:clamp(2.6rem,10vw,5rem)}}@media(prefers-reduced-motion:reduce){.stage{scroll-behavior:auto}}@media print{.stage,.story-controls{display:none}.chapter{min-height:auto;padding:2rem 0}.chapters{pointer-events:auto}.story-intro,.story-outro{padding:2rem 0}}

/* Original local artwork. No remote fonts, embeds, trackers or media. */
.stage{background:#171a1c url('/assets/art/shore.webp') center / cover no-repeat}
.stage-label{padding:.55rem .75rem;border:1px solid #7b726655;background:#171a1cc9;color:#e0d9cd;max-width:42ch;line-height:1.5}
.stage-shade{background:linear-gradient(90deg,#13181bec 0%,#13181bbd 25%,#13181b22 65%),linear-gradient(0deg,#13181baa,transparent 32%)}
.chapter-copy{padding:1.5rem 0}
.chapter .eyebrow{color:#d2a276}
.chapter h2{letter-spacing:-.035em}
.chapter .narrative{color:#e2e2db;text-shadow:0 2px 12px #000}
.fact{background:#13181b63;border-color:#bd9a7555;padding:.4rem .8rem}
.story-controls{display:none}
.has-art .story-controls{display:flex}
@media(max-width:760px){
  .stage{background-position:70% center}
  .stage-shade{background:linear-gradient(0deg,#101619fa 0%,#101619e3 28%,#10161966 51%,transparent 76%)}
  .stage-label{max-width:29ch;font-size:.6rem}
  .chapter{padding-top:40svh;padding-bottom:10rem;min-height:120svh}
  .chapter-copy{padding:0}
  .chapter h2{font-size:clamp(2.25rem,10vw,3.2rem)}
  .fact{background:#13181bd4}
  .story-controls{flex-wrap:nowrap;width:max-content;max-width:calc(100vw - 2 * var(--gutter));margin-inline:auto;left:var(--gutter);right:var(--gutter)}
  .story-controls #motion,.story-controls #sound{font-size:0;min-width:44px}
  #motion::before,#sound::before{font-size:1.1rem;line-height:1}
  #motion::before{content:'Ⅱ'}
  #motion[aria-pressed=false]::before{content:'▶'}
  #sound::before{content:'♪'}
  #sound[aria-pressed=false]::before{opacity:.45}
}
@media(prefers-reduced-motion:reduce){.chapter *{scroll-behavior:auto}}

/* Readable chapters reserve the control bar and follow the measured header. */
.chapter { scroll-margin-top:0; }
.story-controls { bottom:calc(.5rem + env(safe-area-inset-bottom,0px)); }
@media(max-width:760px) {
 .chapter { min-height:calc(100svh - var(--header)); padding-top:30svh; padding-bottom:calc(var(--story-controls-height,4.5rem) + env(safe-area-inset-bottom,0px) + 2rem); }
}
