:root{--paper:#f3eddc;--ink:#23352d;--forest:#244638;--river:#668b83;--gold:#aa7d38;--sand:#e2d8bf;--muted:#60695c;color-scheme:light;--reading:21px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 Georgia,'Times New Roman',serif}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:#80602b}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}button,summary{cursor:pointer}button{font:inherit}h1,h2,h3,p{margin-top:0}h1{font-weight:400;letter-spacing:-.045em;line-height:1.04}h2{font-weight:400;line-height:1.2;letter-spacing:-.02em}.sans,nav,.meta,summary,button,footer,.rail{font-family:system-ui,-apple-system,'Segoe UI',sans-serif}.skip{position:absolute;left:24px;top:-100px;z-index:100;padding:12px;background:var(--paper)}.skip:focus{top:12px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 5vw;border-bottom:1px solid #23352d33}.brand{text-decoration:none;font-size:22px;line-height:1.1}.brand span{font:12px/1.2 system-ui,sans-serif;display:block;margin-top:6px;letter-spacing:.02em}.masthead nav{display:flex;gap:28px;font-size:14px}.masthead nav a{text-decoration:none}.masthead nav a[aria-current]{text-decoration:underline}.wrap{max-width:1400px;margin:auto;padding:0 6vw}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:4vw;padding-top:64px;padding-bottom:72px}.hero h1{font-size:clamp(64px,7.2vw,110px);max-width:650px;margin-bottom:30px}.hero .lead{font-size:23px;line-height:1.55;max-width:480px;margin-bottom:34px}.meta{color:var(--muted);font-size:13px;line-height:1.6}.hero .meta{margin-bottom:25px}.action{display:inline-block;background:var(--forest);color:var(--paper);padding:13px 25px;text-decoration:none;font:14px/1.5 system-ui,sans-serif}.action:hover{background:#355543;color:white}.hero figure{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero img{width:100%;height:auto;display:block}.hero figcaption{font:11px/1.6 system-ui,sans-serif;color:var(--muted);margin-top:12px;text-align:right}.intro-rule{display:flex;align-items:baseline;justify-content:space-between;gap:30px;border-top:1px solid var(--ink);padding-top:22px}.intro-rule h2{font-size:36px}.chapter-index{padding-bottom:85px}.chapter-row{display:grid;grid-template-columns:90px 1fr 190px;gap:25px;align-items:center;padding:34px 0;border-bottom:1px solid #23352d40}.part{color:var(--gold);font-size:48px;line-height:1}.chapter-row h3{font-weight:400;font-size:32px;letter-spacing:-.02em;line-height:1.2;margin-bottom:8px}.chapter-row h3 a{text-decoration:none}.chapter-row p{max-width:690px;font-size:17px;line-height:1.6;margin:0}.chapter-links{font:13px/1.8 system-ui,sans-serif;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.about-band{background:var(--forest);color:var(--paper);padding:65px 6vw}.about-band>div{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1.6fr;gap:8vw}.about-band h2{font-size:42px;max-width:350px}.about-band p{font-size:20px;max-width:700px}.about-band a:hover{color:#efcf89}.book-header{padding:65px 0 45px;max-width:1050px}.book-header h1{font-size:clamp(44px,5.5vw,78px);max-width:930px;margin:18px 0 24px}.book-header .subtitle{max-width:740px;font-size:21px;line-height:1.6}.book-header .source-jump{display:flex;gap:22px;flex-wrap:wrap;margin-top:20px;font:13px/1.7 system-ui,sans-serif}.book-layout{display:grid;grid-template-columns:240px minmax(0,720px);gap:6vw;align-items:start;padding-bottom:70px}.rail{position:sticky;top:24px;font-size:13px;line-height:1.45;border-top:2px solid var(--gold);padding-top:16px;max-height:calc(100vh - 48px);overflow-y:auto;padding-right:12px}.rail summary{font-size:14px;font-weight:600;margin-bottom:18px}.rail ol{list-style:none;padding:0;margin:0}.rail li{margin:0 0 13px}.rail a{text-decoration:none;color:var(--muted)}.rail a:hover{color:var(--forest);text-decoration:underline}.reading{font-size:var(--reading);line-height:1.85;overflow-wrap:break-word;min-width:0}.reading p{margin:0 0 1.3em}.reading h2{font-size:35px;margin:65px 0 27px;padding-top:8px}.reading h2:first-child{margin-top:0}.reading em{color:#5b614c}.reading blockquote{border-left:2px solid var(--gold);padding-left:25px;margin:25px 0}.fiction-note{padding:21px 24px;border-left:3px solid var(--gold);background:#e9dfc8;font-size:15px;line-height:1.75;max-width:860px;margin-bottom:42px}.reading-tools{display:flex;align-items:center;gap:15px;margin:20px 0;font:12px/1.5 system-ui,sans-serif}.reading-tools button{border:1px solid #23352d60;background:transparent;padding:8px 12px;font-size:13px;color:var(--ink)}.reading-tools button:hover{background:var(--sand)}.chapter-end{border-top:1px solid var(--ink);margin-top:65px;padding-top:28px;display:flex;gap:30px;justify-content:space-between;flex-wrap:wrap;font:14px/1.6 system-ui,sans-serif}.reference{max-width:1150px;margin:0 auto;padding:0 0 80px;font-size:18px;line-height:1.8}.reference h2{font-size:33px;margin:50px 0 25px}.reference table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.75;margin:30px 0}.reference th{text-align:left;font:600 13px/1.5 system-ui,sans-serif;background:var(--sand)}.reference th,.reference td{padding:18px 20px;vertical-align:top;border-bottom:1px solid #23352d35}.reference th:nth-child(1){width:45%}.reference th:nth-child(2){width:22%}.reference td:nth-child(2){overflow-wrap:anywhere}.reference code{font:12px/1.7 system-ui,sans-serif}.reference li{margin-bottom:12px}.overview{max-width:780px;padding-bottom:80px;font-size:20px;line-height:1.85}.overview h2{font-size:35px;margin:45px 0 22px}.overview li{margin-bottom:20px}footer{font-size:12px;line-height:1.7;padding:32px 6vw;border-top:1px solid #23352d40;display:flex;justify-content:space-between;gap:25px}footer div{max-width:630px}.progress{height:2px;background:var(--gold);position:fixed;top:0;left:0;width:0;z-index:5}.no-js .reading-tools{display:none}@media(min-width:1600px){.wrap{padding:0 80px}}@media(max-width:950px){.book-layout{grid-template-columns:190px minmax(0,1fr);gap:35px}.hero h1{font-size:76px}.chapter-row{grid-template-columns:60px 1fr}.chapter-links{grid-column:2;flex-direction:row;align-items:center;gap:25px}.about-band>div{gap:35px}.hero .lead{font-size:21px}}@media(max-width:700px){body{font-size:17px}.masthead{padding:20px 6vw;gap:15px}.brand{font-size:20px}.brand span{font-size:10px}.masthead nav{gap:18px;font-size:12px}.wrap{padding:0 7vw}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:42px;gap:38px;padding-bottom:45px}.hero h1{font-size:68px;margin-bottom:22px}.hero .lead{font-size:21px;max-width:500px}.hero figure{max-width:460px;width:100%;margin:0 auto}.hero img{max-height:440px}.intro-rule{display:block;padding-top:22px}.intro-rule h2{font-size:31px;margin-bottom:7px}.chapter-row{gap:18px;padding:28px 0;grid-template-columns:40px 1fr}.part{font-size:38px}.chapter-row h3{font-size:28px}.chapter-row p{font-size:16px}.chapter-links{gap:22px;font-size:12px}.chapter-index{padding-bottom:48px}.about-band{padding:44px 7vw}.about-band>div{display:block}.about-band h2{font-size:34px;max-width:400px}.about-band p{font-size:18px}.book-header{padding:38px 0 22px}.book-header h1{font-size:45px;margin:15px 0 22px}.book-header .subtitle{font-size:18px}.fiction-note{font-size:14px;padding:17px 19px;margin-bottom:28px}.book-layout{display:block}.rail{position:static;max-height:none;margin-bottom:35px;padding:13px 0;border-bottom:1px solid #23352d40}.rail summary{margin-bottom:5px}.rail ol{padding:18px 0 6px;columns:2;column-gap:24px}.rail li{break-inside:avoid}.reading{font-size:calc(var(--reading) - 1.5px);line-height:1.85}.reading h2{font-size:30px;margin-top:52px}.reference table{display:block}.reference thead{display:none}.reference tbody,.reference tr,.reference td{display:block}.reference tr{border-top:1px solid #23352d66;padding:14px 0}.reference td{padding:7px 0;border:0;font-size:15px}.reference td:before{content:attr(data-label);display:block;font:600 12px/1.7 system-ui,sans-serif;color:var(--muted);margin-bottom:5px}.overview{font-size:18px}.overview h2{font-size:30px}footer{display:block;padding:26px 7vw}footer div+div{margin-top:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.masthead nav,.rail,.reading-tools,.progress,.chapter-end,footer{display:none}.wrap{padding:0}.book-layout{display:block}.reading{font-size:12pt;line-height:1.7}.book-header h1{font-size:32pt}.reading h2{break-after:avoid}body{background:white;color:black}}
@media(max-width:700px){.hero h1{font-size:52px}}
/* Audio belongs to the reading page, with native controls and quiet chapter navigation. */
.narration{max-width:760px;margin:0 0 2.2rem;padding:1.4rem 1.5rem;border:1px solid #c9bb96;background:#eee8d8;border-radius:3px}
.listen-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
.listen-heading h2{font-size:1.55rem;margin:0}
.audio-credit,.audio-status,.audio-pending{font-size:.87rem;line-height:1.55;color:#5a604f}
.narration audio{display:block;width:100%;height:54px;margin:1rem 0}
.audio-navigation{display:grid;grid-template-columns:1fr 2fr;gap:1rem}
.audio-navigation label{display:block;font-size:.78rem;color:#435245;line-height:1.5}
.audio-navigation select{display:block;box-sizing:border-box;width:100%;min-height:44px;margin-top:.35rem;background:#fbf8ef;color:#273e30;border:1px solid #b7ad94;padding:.55rem;font:inherit;font-size:.9rem;border-radius:2px}
.audio-downloads{font-size:.9rem;border-top:1px solid #c9bb96;padding-top:.8rem}
.audio-downloads summary{cursor:pointer;min-height:28px}
.audio-downloads div{display:flex;flex-wrap:wrap;gap:.7rem 1.4rem;padding-top:.75rem}
@media(max-width:600px){.narration{padding:1rem}.audio-navigation{grid-template-columns:1fr}.listen-heading{align-items:flex-start;flex-direction:column;gap:.2rem}.audio-downloads div{flex-direction:column}}
/* The story link covers its row; Read and Listen retain separate focus and targets. */
.chapter-row{position:relative;isolation:isolate}
.story-card-link::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}
.story-card-link:focus-visible{outline:none}
.story-card-link:focus-visible::after{outline:3px solid var(--gold);outline-offset:5px}
.chapter-links{position:relative;z-index:2;pointer-events:none}
.chapter-links a{pointer-events:auto;display:inline-flex;align-items:center;min-height:44px}
/* The supplied artwork is the landing header; its lettering provides the visible title. */
.home-page .masthead{padding:14px 5vw}
.home-page .brand{font-size:18px}
.home-page .brand span{display:none}
.home-page .hero{display:block;padding-top:24px;padding-bottom:40px}
.home-page .hero .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.home-page .hero figure{display:block;margin:0;max-width:none;width:100%}
.home-page .hero img{display:block;width:100%;height:auto;max-height:none}
.home-page .hero-intro{display:grid;grid-template-columns:1fr auto;align-items:center;gap:32px;margin-top:28px}
.home-page .hero-intro .meta{margin-bottom:8px}
.home-page .hero .lead{max-width:880px;font-size:20px;line-height:1.6;margin-bottom:0}
@media(max-width:700px){.home-page .hero{padding-top:16px;padding-bottom:32px}.home-page .hero figure{width:auto;margin:0 -7vw}.home-page .hero img{aspect-ratio:3/2;object-fit:cover;object-position:50% 50%}.home-page .hero-intro{display:block;margin-top:24px}.home-page .hero-intro .action{margin-top:18px}}
