:root{--bg:#141016;--bg2:#1b151c;--ink:#f6efe6;--mute:#b6a89c;--ember:#f0b27a;--line:rgba(246,239,230,.12);--ease:cubic-bezier(.16,1,.3,1)}
body.c8{background:var(--bg);color:var(--ink);font:400 17px/1.65 Inter,system-ui,sans-serif}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.02em;margin:0 0 .5em}
h1 em,h2 em{font-style:italic;font-weight:300;color:var(--ember)}
h1{font-size:clamp(2.6rem,6vw,5.2rem)}h2{font-size:clamp(2rem,4.4vw,3.6rem)}h3{font-size:1.45rem}
.eyebrow{font:600 .72rem/1 Inter;letter-spacing:.26em;text-transform:uppercase;color:var(--ember);margin:0 0 1rem}
.lead{font:300 clamp(1.12rem,1.6vw,1.4rem)/1.5 Fraunces,serif;color:#eadccb}.note{color:var(--mute);font-size:.85rem}
.top{position:absolute;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:1.15rem clamp(1rem,4vw,3rem);color:#fff}
.brand{text-decoration:none;font:500 1.05rem Fraunces}.brand small{display:block;color:rgba(255,255,255,.7);font:400 .72rem Inter;letter-spacing:.08em}
.top nav{display:flex;gap:1.5rem;align-items:center;font-size:.9rem}.top nav a{text-decoration:none;color:#f3eadf}
.pill{border:1px solid rgba(240,178,122,.8);padding:.5rem 1rem;border-radius:999px;color:var(--ember)!important}
@media(max-width:820px){.top nav a:not(.pill){display:none}}
.inner .top{position:sticky;background:rgba(20,16,22,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.btn{display:inline-flex;padding:.95rem 1.5rem;border-radius:999px;text-decoration:none;font-weight:600;font-size:.95rem;transition:transform .4s var(--ease)}.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,#ffd7a4,#e08a4a);color:#24140c}.btn-ghost{border:1px solid rgba(246,239,230,.35);color:inherit}
.sec .btn-ghost{border-color:rgba(246,239,230,.35)}.ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
/* stage */
.stage{position:relative;min-height:100vh;display:grid;grid-template-rows:minmax(240px,42vh) auto;background:var(--bg)}
.world-slot{position:relative;overflow:hidden}
.world-slot canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.stage-veil{position:absolute;left:0;right:0;bottom:0;height:110px;background:linear-gradient(transparent,var(--bg));pointer-events:none;z-index:2}
.stage-ui{position:relative;z-index:3;padding:1.2rem clamp(1.2rem,5vw,4.5rem) 3.2rem;margin:0;background:var(--bg)}
.stage-head{max-width:1180px;margin:0 auto 1.2rem}
.stage-head h1{margin-bottom:.15em}
.reader{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:clamp(1.6rem,4vw,3.5rem);align-items:start}
@media(max-width:900px){.reader{grid-template-columns:1fr}.stage{grid-template-rows:minmax(200px,34vh) auto}.stage-ui{padding-top:.8rem}.stage-head h1,.stage-head .stage-title{font-size:2.35rem}.rd-scroll{height:min(46vh,380px)}.rd-side{position:static}.rd-cover{display:none}}
.rd-side{display:block;position:sticky;top:1.25rem}
.rd-cover{width:100%}.rd-cover img{width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 28px 56px -16px rgba(0,0,0,.8)}
.rd-ctrl{display:flex;gap:1rem;align-items:center}
.rd-play{flex:none;width:64px;height:64px;border-radius:50%;border:0;cursor:pointer;background:radial-gradient(circle at 35% 30%,#ffd9a6,#e08a4a);color:#1d0f05;display:inline-grid;place-items:center;vertical-align:middle;box-shadow:0 14px 32px -10px rgba(224,138,74,.75)}
.rd-play svg{width:24px;height:24px;fill:currentColor}.rd-play .i-pause{display:none}.is-playing .rd-play .i-pause{display:block}.is-playing .rd-play .i-play{display:none}
.stage-head h1,.stage-head .stage-title{display:flex;align-items:center;gap:.55rem;margin-bottom:.15em}
.stage-head h1 .title-text,.stage-head .stage-title .title-text{flex:0 1 auto;min-width:0;max-width:calc(100% - 4.6rem)}
.stage-head h1 .rd-play,.stage-head .stage-title .rd-play{margin:0;flex:none;position:relative;top:0}
@media(max-width:900px){.stage-head .rd-play{width:52px;height:52px}.stage-head .rd-play svg{width:20px;height:20px}}
.rd-meta{flex:1;display:grid;gap:.35rem}.rd-wave{width:100%;height:40px}.rd-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden;cursor:pointer}.rd-bar i{display:block;height:100%;background:var(--ember);transform-origin:left;transform:scaleX(0)}
.rd-time{font:500 .78rem Inter;color:var(--mute);font-variant-numeric:tabular-nums}
.rd-status{margin:0;font-size:.85rem;color:#e9ddcd;min-height:2.4em}
.rd-how{font-size:.8rem;color:var(--mute);border-top:1px solid var(--line);padding-top:.7rem}.rd-how summary{cursor:pointer;color:var(--ink);font-weight:500}.rd-how p{margin:.5rem 0}
.rd-scroll{position:relative;height:min(62vh,520px);overflow:hidden;-webkit-mask:linear-gradient(transparent,#000 12%,#000 82%,transparent);mask:linear-gradient(transparent,#000 12%,#000 82%,transparent);padding:1.4rem 0}
.rd-scroll:hover,.rd-scroll:focus{overflow-y:auto}
.rd-text{padding:2vh 0 24vh}
.rd-text p{font:400 clamp(1.45rem,2.4vw,2.15rem)/1.38 Fraunces,Georgia,serif;margin:0 0 1em;color:rgba(246,239,230,.28)}
.rd-text h3{font:italic 300 clamp(1.15rem,1.8vw,1.5rem)/1.2 Fraunces,serif;color:rgba(240,178,122,.5);margin:0 0 .7em}
.w{transition:color .5s,text-shadow .6s,background .4s,filter .4s;cursor:pointer;border-radius:3px}
.w.said{color:rgba(246,239,230,.92)}.rd-text h3 .w.said{color:var(--ember)}
.w.now{color:#fffef6;background:radial-gradient(closest-side,rgba(255,214,160,.32),transparent);text-shadow:0 0 8px rgba(255,236,200,.95),0 0 22px rgba(255,196,120,.85),0 0 44px rgba(240,178,122,.5);filter:brightness(1.12);transition:none}
.j-hint{position:absolute;right:clamp(1.2rem,5vw,4.5rem);bottom:1.4rem;top:auto;z-index:4;font:500 .7rem Inter;letter-spacing:.2em;text-transform:uppercase;color:#fff;opacity:.8;text-shadow:0 1px 10px rgba(0,0,0,.4)}
@media(max-width:700px){.j-hint{display:none}}
/* rest of site */
.sec{padding:clamp(4rem,9vw,8rem) clamp(1.2rem,5vw,5rem);border-top:1px solid var(--line);background:var(--bg2)}
.sec:nth-of-type(odd){background:var(--bg)}
.wrap{max-width:1180px;margin:0 auto}.wrap.narrow{max-width:760px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}@media(max-width:860px){.two{grid-template-columns:1fr}}
.cover{width:100%;max-width:340px;margin:0 auto;border-radius:3px;box-shadow:0 40px 70px -30px rgba(0,0,0,.7)}
.parts{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0 0}@media(max-width:760px){.parts{grid-template-columns:1fr}}
.part{border-radius:22px;padding:1.6rem 1.7rem;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.part .n{color:var(--ember);font:600 .75rem Inter;letter-spacing:.18em;text-transform:uppercase}
.part h3{margin:.5rem 0 .4rem}.chapters{padding-left:1.1rem;color:var(--mute);font:italic 300 1.05rem Fraunces}
.quote-sec{background:linear-gradient(160deg,#2a1c28,#8a4a2e)!important}
.quote-sec blockquote{margin:0;font:italic 300 clamp(2rem,4vw,3.2rem)/1.15 Fraunces,serif;text-align:center}
.quote-sec cite{display:block;text-align:center;margin-top:1.2rem;font:normal 600 .75rem Inter;letter-spacing:.22em;text-transform:uppercase;color:var(--ember)}
.editions{list-style:none;padding:0;margin:2rem 0 1rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:960px){.editions{grid-template-columns:1fr 1fr}}@media(max-width:560px){.editions{grid-template-columns:1fr}}
.editions li{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:20px;padding:1.5rem;display:flex;flex-direction:column}
.editions .n{color:var(--ember);font-size:.8rem}.editions p{color:var(--mute);font-size:.92rem;flex:1}
.ed-links{display:flex;gap:.5rem;flex-wrap:wrap}.ed-link{font-size:.85rem;font-weight:600;text-decoration:none;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(246,239,230,.25)}.ed-link.primary{background:var(--ember);color:#1d0f05;border-color:var(--ember)}
.about-img{width:100%;max-width:420px;border-radius:28px;aspect-ratio:1;object-fit:cover}.about-text p{color:#ddd0bf}
.excerpt p{font:300 1.28rem/1.7 Fraunces}.excerpt h3{font-style:italic;margin-top:2rem}.excerpt .brk{text-align:center;color:var(--ember);letter-spacing:.6em}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem 2rem}@media(max-width:700px){.facts{grid-template-columns:1fr 1fr}}
.facts dt{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}.facts dd{margin:0;font:400 1.4rem Fraunces}
.bk-hero{padding-top:6.5rem}
.signup{text-align:center}.signup>p{color:var(--mute)}
.gr-form{display:grid;grid-template-columns:1fr 1.4fr auto;gap:.6rem;margin-top:1.6rem;text-align:left;align-items:end}@media(max-width:700px){.gr-form{grid-template-columns:1fr}}
.gr-form span{display:block;font-size:.75rem;color:var(--mute);margin-bottom:.3rem}.gr-form i{font-style:normal}
.gr-form input{width:100%;font:inherit;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem}
.gr-form button{font:600 .95rem Inter;padding:.95rem 1.4rem;border-radius:12px;border:0;background:var(--ember);color:#1d0f05;cursor:pointer}
.gr-form .form-note{grid-column:1/-1;text-align:center;color:var(--mute)}
.foot{background:#0c090d;border-top:1px solid var(--line);padding:3rem clamp(1.2rem,5vw,5rem) 6rem;color:var(--mute);font-size:.85rem}
.foot-in{max-width:1180px;margin:0 auto;display:grid;gap:1rem}.foot strong{display:block;color:var(--ink);font:400 1.6rem Fraunces}.foot nav{display:flex;gap:1.2rem;flex-wrap:wrap}.foot a{text-decoration:none}
@media(prefers-reduced-motion:reduce){.rd-play{box-shadow:none}}

.stage-title{font-family:Fraunces,Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.02em;margin:0 0 .5em;font-size:clamp(2.6rem,6vw,5.2rem)}
.stage-title em{font-style:italic;font-weight:300;color:var(--ember)}
@media(max-width:900px){.stage-title{font-size:2.35rem}}
.stage-end{border-top:1px solid var(--line)}
/* Continue the story — appears at the dark end of the first journey */
.continue-story{position:absolute;left:50%;bottom:2.4rem;transform:translateX(-50%) translateY(8px);z-index:5;opacity:0;pointer-events:none;text-decoration:none;font:600 .95rem Inter,system-ui,sans-serif;letter-spacing:.04em;color:#1d0f05;background:linear-gradient(135deg,#ffd7a4,#e08a4a);padding:.85rem 1.45rem;border-radius:999px;box-shadow:0 16px 40px -12px rgba(0,0,0,.65),0 0 24px rgba(240,178,122,.25);transition:opacity .6s,transform .6s}
.continue-story.is-on{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.continue-story:hover{transform:translateX(-50%) translateY(-2px)}
@media(max-width:700px){.continue-story{bottom:1.2rem;font-size:.88rem;padding:.75rem 1.15rem}}
/* Book + purchase section: slightly lighter, still in the plum palette */
.sec.book-ad{background:#2a2228}
/* Footer newsletter */
.foot-grid{display:grid;grid-template-columns:minmax(16rem,1fr) minmax(20rem,1.4fr);gap:clamp(1.6rem,4vw,3.5rem);align-items:start;margin-bottom:1.6rem}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr}}
.foot-signup{text-align:left}
.foot-signup h2{font:400 1.55rem/1.15 Fraunces,Georgia,serif;color:var(--ink);margin:0 0 .45rem}
.foot-signup>p{margin:0;color:var(--mute)}
.foot-signup .gr-form{margin-top:1.1rem}
.foot-signup .gr-form .form-note{text-align:left}
.foot{padding-bottom:3.2rem}
@media(prefers-reduced-motion:reduce){.w.now{filter:none;text-shadow:0 0 12px rgba(255,210,150,.55)}.continue-story,.continue-story.is-on,.continue-story:hover{transition:none;transform:translateX(-50%)}}
/* button flows inline right after the last word of the heading */
.stage-head h1,.stage-head .stage-title{display:block}
.stage-head h1 .title-text,.stage-head .stage-title .title-text{display:inline;max-width:none}
.stage-head h1 .rd-play,.stage-head .stage-title .rd-play{display:inline-grid;vertical-align:middle;margin-left:20px;top:-.08em}
/* 8b: reading window exactly 6 lines tall; cover shrinks to the same height */
.reader{--fs:clamp(1.45rem,2.4vw,2.15rem);--win:calc(6 * 1.38 * var(--fs));grid-template-columns:auto 1fr}
.rd-scroll{height:var(--win);padding:0}
.rd-text{padding:calc(2.5 * 1.38 * var(--fs)) 0 calc(3 * 1.38 * var(--fs))}
.rd-cover{width:auto}.rd-cover img{height:var(--win);width:auto;max-width:none}
@media(max-width:900px){.reader{grid-template-columns:1fr}.rd-scroll{height:var(--win)}}
.rd-text{padding-top:calc(.4 * 1.38 * var(--fs))}
.rd-scroll{-webkit-mask:linear-gradient(transparent,#000 7%,#000 88%,transparent);mask:linear-gradient(transparent,#000 7%,#000 88%,transparent)}

/* in-page nav: leave a little air so section titles are not tight to the viewport edge */
#listen,#book,#parts,#hazards,#hear,#quotes,#editions,#about,#continue,#signup{scroll-margin-top:1.25rem}

/* Redemption scripture, shown as an epigraph above the chapter text */
.rd-text .epigraph{font:italic 300 clamp(1.2rem,1.9vw,1.6rem)/1.42 Fraunces,Georgia,serif;color:rgba(246,239,230,.58);border-left:2px solid var(--ember);padding:.15rem 0 .15rem 1.1rem;margin:0 0 1.25em;max-width:38em}
.rd-text .epigraph .w.said{color:rgba(246,239,230,.92)}
.rd-text .epigraph .w.now{color:#fffef6}
