:root{--paper:#f4f0e7;--ink:#292d2e;--muted:#726c62;--line:#d5cbbb;--gold:#b49968;--size:21px;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif}a{color:inherit}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #ba9351;outline-offset:5px}.skip{position:fixed;top:-60px;z-index:20;padding:12px;background:var(--paper)}.skip:focus{top:70px}.bar{height:66px;position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:var(--paper);border-bottom:1px solid var(--line);font-family:Arial,sans-serif}.brand{font-size:11px;letter-spacing:2.5px;text-decoration:none}.bar nav{display:flex;gap:20px}.bar button{border:0;background:none;color:var(--ink);font-size:13px;padding:10px 0}.progress{position:absolute;height:2px;bottom:-1px;left:0;width:100%}.progress i{display:block;width:0;height:100%;background:var(--gold)}.hero{background:#111c22;color:#f4f0e7;display:grid;grid-template-columns:1fr 1fr;position:relative;min-height:740px}.hero-text{align-self:center;padding:70px 6vw 100px 9vw}.eyebrow{font:10px/1.6 Arial,sans-serif;letter-spacing:3px;color:var(--gold)}h1{font-size:clamp(65px,7.6vw,124px);line-height:.98;font-weight:normal;letter-spacing:-4px;margin:40px 0 30px}h1 em{font-weight:normal;color:#c7b48e}.rule{height:1px;width:65px;background:var(--gold);margin:32px 0}.tagline{max-width:370px;font-size:18px;line-height:1.6;color:#bdc2c3}.hero-meta{font:11px/1.8 Arial,sans-serif;color:#abb5b8;margin:28px 0}.hero-meta span{padding:0 8px}.start{display:inline-flex;align-items:center;justify-content:space-between;width:230px;padding:18px 23px;border:1px solid #8e8066;text-decoration:none;font:13px Arial,sans-serif}.start:hover{background:#25333a}#resume{display:block;font:12px Arial,sans-serif;margin-top:22px;color:#d8c59e}#resume[hidden]{display:none}.cover{min-height:740px;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;display:block;max-height:900px}.hero-foot{position:absolute;bottom:0;left:0;width:50%;padding:25px 4vw;font:10px Arial,sans-serif;letter-spacing:1px;color:#9faaa9;display:flex;justify-content:space-between}.reading-heading{max-width:720px;margin:80px auto 45px;padding:0 26px;display:flex;justify-content:space-between;font:11px Arial,sans-serif;letter-spacing:2px;color:var(--muted)}.prose{max-width:720px;margin:auto;padding:0 26px;font-size:var(--size);line-height:1.8}.prose p{margin:0 0 .75em;white-space:pre-wrap;overflow-wrap:break-word}.prose>p:first-of-type::first-letter{float:left;font-size:4em;line-height:.88;padding:.1em .13em 0 0;color:#977b47}.scene{display:block;scroll-margin-top:90px}.separator{text-align:center;color:var(--gold);margin:50px 0;font-size:15px}figure{margin:45px -70px 55px}figure img{width:100%;height:auto;max-height:830px;object-fit:contain;display:block;background:#111c22}figure a{display:block}figcaption{font:11px/1.6 Arial,sans-serif;letter-spacing:1px;color:var(--muted);padding:16px 0 0;text-align:center}.endmark{text-align:center;font:11px Arial,sans-serif;letter-spacing:5px;color:var(--muted);margin:70px 0 100px}.gallery{border-top:1px solid var(--line);max-width:1200px;margin:auto;padding:65px 40px}h2{font-size:36px;font-weight:normal;margin:15px 0 30px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.gallery figure{margin:0}.gallery img{aspect-ratio:3/2;object-fit:contain}footer{text-align:center;padding:40px 20px 70px;border-top:1px solid var(--line);font:12px/1.9 Arial,sans-serif;color:var(--muted)}footer a{display:inline-block;margin-bottom:30px}footer small{font-size:11px}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(520px,92vw);max-height:85vh;padding:28px 32px}dialog::backdrop{background:#071017b8;backdrop-filter:blur(4px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-top h2{margin:0;font-size:30px}.dialog-top button{border:0;background:none;font-size:24px;color:var(--ink);padding:10px}.toc-note{font:12px Arial,sans-serif;color:var(--muted)}dialog nav a{display:flex;gap:22px;text-decoration:none;padding:13px 0;border-bottom:1px solid var(--line);font-size:17px}dialog nav span{font:11px Arial,sans-serif;color:var(--muted);padding-top:4px}body.dark{--paper:#172026;--ink:#dfded8;--muted:#b0afa4;--line:#3c4445;color-scheme:dark}body.large{--size:24px}body.larger{--size:27px}@media(min-width:1600px){.hero{max-width:1600px;margin:auto}}@media(max-width:850px){figure{margin:35px 0 45px}.hero-text{padding:50px 6vw 95px}.hero{min-height:650px}.cover{min-height:650px}h1{font-size:72px}.hero-foot{padding:22px 6vw}.hero-foot span{display:none}}@media(max-width:600px){.bar{padding:0 18px;height:60px}.brand{font-size:9px;letter-spacing:1.2px}.bar nav{gap:14px}.bar button{font-size:12px}.hero{display:flex;flex-direction:column}.hero-text{padding:52px 28px 45px;position:relative;z-index:1;background:linear-gradient(90deg,#111c22f5,#111c22b8)}.cover{position:absolute;inset:0;min-height:0}.cover img{height:100%;object-position:62% center}.hero-foot{display:none}h1{font-size:clamp(60px,21vw,86px);margin:30px 0}.tagline{font-size:17px}.hero-meta{font-size:10px}.reading-heading{margin-top:48px;padding:0 24px}.prose{padding:0 24px;font-size:calc(var(--size) - 1px);line-height:1.75}.prose figure{margin:32px -24px 38px}figcaption{padding:12px 20px 0;font-size:10px}.gallery{padding:45px 24px}.gallery-grid{grid-template-columns:1fr;gap:30px}h2{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.bar,.start,#resume,dialog,.skip,footer>a{display:none!important}.hero{min-height:0;background:white;color:black}.hero-text{padding:30px}.cover{min-height:0}.cover img{max-height:500px}.hero-foot{display:none}.tagline,.hero-meta{color:#333}.prose{max-width:none;font-size:12pt;line-height:1.5}figure{break-inside:avoid;margin:25px 0}figure img{max-height:650px}.gallery{break-before:page}body.dark{--paper:white;--ink:black;--muted:#555;--line:#ccc}}
