/* Full essay additions preserve the approved mock's composition and glass. */
html{overflow-anchor:none}
.contents .toc-part{display:block;border:0;padding:0}
.contents .toc-part>a{font-size:14px;display:block;padding:6px 10px}
.contents .toc-subsections{padding:5px 0 10px 10px}
.contents .toc-subsections summary{min-height:30px;font-size:10px;padding:3px 0;color:var(--steel);border:0}
.contents .toc-subsections summary:after{font-size:17px}
.contents .toc-subsections a{display:block;margin:5px 0;padding:5px 10px;font-size:12px;min-height:32px}
.contents nav{align-items:start}
.contents .interaction-index{border-top:1px solid var(--glass-rim);padding-top:20px;margin-bottom:20px}
.contents .interaction-index a{display:block;margin:8px 0}
.prose h3{scroll-margin-top:0}
.hero-bottom .fact small{max-width:110px}
.hero-top{gap:24px;flex-wrap:wrap}.hero-tools{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.hero-tools .sample-tag{margin:0;padding:10px 13px;border-radius:9px}.hero-motion-toggle{position:static;flex-shrink:0;z-index:3;font:10px var(--mono);padding:11px 14px;border:1px solid #9aa3ad;border-radius:14px;background:#0b0c0e;color:#ece7e0;min-height:44px}
.hero-embers{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-embers i{position:absolute;left:var(--x);bottom:3%;width:3px;height:3px;border-radius:50%;background:#ff8a50;box-shadow:0 0 8px 3px #c2410c;animation:ember-rise var(--time) linear infinite;animation-delay:var(--delay);animation-play-state:paused;opacity:0}
.hero.is-moving .hero-embers i{animation-play-state:running}
@keyframes ember-rise{0%{transform:translate3d(0,0,0);opacity:0}12%,70%{opacity:.8}100%{transform:translate3d(40px,-65vh,0);opacity:0}}
.part-divider .numeral{color:var(--ember-2)}
.part-divider.double-rule{border-top:3px double var(--steel);border-bottom:3px double var(--steel)}
.coda-glyph{width:84px;height:52px;display:block;margin:0 auto 55px;color:var(--ember-2)}
.coda-glyph svg{width:100%;height:100%;display:block}
.author-end{max-width:864px;margin:auto;padding:20px 28px 70px}
.author-end-inner{display:flex;align-items:flex-start;gap:32px;border-top:1px solid var(--steel);padding-top:42px}
.author-end .author-avatar{flex-shrink:0}.author-end-kicker{margin-bottom:10px}
.author-end h2{font:38px/1.1 var(--display);margin-bottom:20px}.author-bio-text{font-size:15px;line-height:1.8;margin:0}
.article-cta{text-align:center;margin:60px 0 0;font:14px var(--mono)}
.footer-meta{margin:30px 0 0;font:10px var(--mono);color:var(--steel)}
.cursor-toggle{font:10px var(--mono);min-height:44px;border:1px solid var(--steel);border-radius:12px;padding:8px 16px;color:var(--bone);background:var(--cabin);margin-top:28px}
@media(pointer:coarse),(hover:none){.cursor-toggle{display:none}}
@media(hover:hover) and (pointer:fine){
 html:not(.native-cursor),html:not(.native-cursor) body{cursor:url('cursor-steel.svg') 5 3,auto}
 html:not(.native-cursor) :is(a,button,summary,input[type='range']){cursor:url('cursor-ember.svg') 5 3,pointer}
 html:not(.native-cursor) :is(.prose p,.prose h2,.prose h3,.sources li,.author-bio-text){cursor:text}
 html:not(.native-cursor) :is(button:disabled,input:disabled){cursor:not-allowed}
}
@media(max-width:760px){
 .hero-bottom{flex-wrap:wrap}.hero-facts{justify-content:space-between;width:100%;gap:12px}
 .hero-bottom .read-link{max-width:none;margin-top:8px}.hero-top{align-items:flex-start;gap:18px}.hero-tools{width:100%;justify-content:space-between;gap:16px}.hero-motion-toggle{font-size:9px}.hero-tools .sample-tag{font-size:9px}
 .hero-embers{height:400px}.author-end{padding:0 24px 50px}
 .author-end-inner{display:block}.author-end .author-avatar{margin-bottom:28px}
 .author-end h2{font-size:34px}.contents .toc-part>a{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.hero-embers{display:none}.hero-motion-toggle{display:none}}
@media print{.hero-embers,.hero-motion-toggle,.cursor-toggle,.article-cta{display:none!important}.author-end{padding:20px 0}.author-end-inner{break-inside:avoid}.author-end .author-avatar{width:70px;height:70px}}
