
/* reading editions */
.progress{position:fixed;left:0;top:0;height:3px;width:0;background:var(--dawn);z-index:20;transition:width .1s linear}
.rd-hero{padding-block:clamp(3rem,7vw,5rem) 2rem;text-align:center;position:relative;overflow:hidden}
.rd-hero .wrap{display:grid;gap:.9rem;justify-items:center;position:relative}
.rd-hero h1{font-size:clamp(2.4rem,6vw,4.2rem)}
.rd-hero .by{font-family:var(--label);letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;color:var(--lake)}
.rd-hero .intro{max-width:46ch;color:var(--ink-soft)}
.rd-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.2rem;font-family:var(--label);font-size:.82rem;color:var(--ink-soft)}
.rd-tools button{font:inherit;background:none;border:1px solid var(--line);border-radius:999px;padding:.3rem .8rem;color:var(--ink);cursor:pointer}
.rd-tools button[aria-pressed="true"]{background:var(--ink);color:var(--sky);border-color:var(--ink)}
.rd-layout{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,40rem) minmax(0,14rem);justify-content:center;gap:3rem;padding-block:1rem 5rem}
@media (max-width:1000px){.rd-layout{grid-template-columns:minmax(0,40rem)}.rd-toc{position:static!important}.rd-aside{display:none}}
.rd-toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + 5.5rem);align-self:start;font-family:var(--label);font-size:.85rem}
.rd-toc details{border-top:1px solid var(--line);padding-top:.8rem}
.rd-toc summary{cursor:pointer;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;color:var(--lake)}
.rd-toc ol{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.45rem;max-height:65vh;overflow:auto}
.rd-toc a{color:var(--ink-soft);text-decoration:none;line-height:1.35;display:block}
.rd-toc a:hover,.rd-toc a.on{color:var(--dawn)}
.text{font-size:var(--rd-size,1.2rem);line-height:1.8;font-weight:300;min-width:0}
.text p{margin:0 0 1.15em;text-align:left;hyphens:auto}
.text p.sig{text-align:right;font-family:var(--label);font-size:.8em;letter-spacing:.06em;color:var(--ink-soft)}
.text h2{font-size:1.65em;margin:2.4em 0 1em;text-align:center;scroll-margin-top:6rem}
.text h2 .ch-num{display:block;font-family:var(--label);font-size:.42em;letter-spacing:.2em;text-transform:uppercase;color:var(--lake);margin-bottom:.5rem}
.text h2:first-child{margin-top:0}
.text > p:first-of-type::first-letter{font-family:var(--display);float:left;font-size:3.4em;line-height:.9;padding:.08em .1em 0 0;color:var(--dawn)}
.verse{margin:1.6em auto;padding-left:1.4em;border-left:1px solid var(--dawn);font-style:italic;display:grid;gap:.15em;max-width:32em}
.rd-aside{align-self:start;position:sticky;top:calc(env(safe-area-inset-top,0px) + 5.5rem);display:grid;gap:1rem}
.rd-end{border-top:1px solid var(--line);margin-top:3rem;padding-top:2rem;display:grid;gap:1.4rem}
.rd-end .src{font-family:var(--label);font-size:.8rem;color:var(--ink-soft)}
/* neville guide */
.steps{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:2rem}
.steps li{counter-increment:s;display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.steps li::before{content:counter(s);font-family:var(--display);font-size:2rem;color:var(--dawn);line-height:1}
.steps h3{font-size:1.35rem;margin-bottom:.2rem}
.steps .yr{font-family:var(--label);font-size:.78rem;letter-spacing:.1em;color:var(--lake);text-transform:uppercase}
.steps p{margin-top:.5rem;color:var(--ink)}
.steps .links{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.6rem;font-family:var(--label);font-size:.85rem}
.steps .links a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--dawn)}
.notice{background:var(--veil);border:1px solid var(--line);border-radius:4px;padding:1.1rem 1.3rem;font-size:.95rem;color:var(--ink-soft)}
