.hero{background:var(--hero-ground);border-bottom:var(--rule) solid var(--c-text);position:relative;overflow:hidden;transition:background-color .4s}
.hero-grid{display:grid;grid:auto / minmax(0,1fr) minmax(0,25rem);gap:clamp(1.5rem,4vw,4rem);padding-top:clamp(1.5rem,4vw,3rem);padding-bottom:clamp(2rem,5vw,4rem)}
.hero-main{min-width:0}
.hero h1{font-weight:800;font-variation-settings:"wdth" 85;font-size:clamp(1.45rem,2.6vw,2.2rem);line-height:1.12;margin:1.4rem 0 1rem;max-width:30ch;letter-spacing:-.01em}
.lede{font-size:1.125rem;max-width:56ch;margin:0 0 1.5rem}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.outline-s{color:var(--ol-fill,var(--sec-ground));text-shadow:2px 0 var(--ol-line,var(--sec-line)),1.4px 1.4px var(--ol-line,var(--sec-line)),0 2px var(--ol-line,var(--sec-line)),-1.4px 1.4px var(--ol-line,var(--sec-line)),-2px 0 var(--ol-line,var(--sec-line)),-1.4px -1.4px var(--ol-line,var(--sec-line)),0 -2px var(--ol-line,var(--sec-line)),1.4px -1.4px var(--ol-line,var(--sec-line))}
.kicker{display:inline-block;font-family:var(--f-mono);font-size:.8rem;font-weight:700;background:var(--c-text);color:var(--c-highlight);padding:.25rem .6rem;margin:0 0 1rem;letter-spacing:.02em}
.stamp{display:inline-block;font-weight:900;font-variation-settings:"wdth" 75;text-transform:uppercase;font-size:1.15rem;line-height:1;padding:.4rem .7rem;border:var(--rule) solid currentColor;background:var(--c-ground);letter-spacing:.04em;transform:rotate(var(--tilt,-6deg))}
.stamp-alert{color:var(--c-alert)}
.stamp-ink{color:var(--c-text)}
.stamp-sun{background:var(--c-highlight);color:var(--c-text);border-color:var(--c-text)}
.ch{background:var(--sec-ground);color:var(--sec-text);border-bottom:var(--rule) solid var(--c-text);padding:clamp(2.5rem,6vw,5rem) 0}
.tone-paper{--sec-ground:var(--c-ground)}
.tone-bone{--sec-ground:var(--c-ground-alt)}
.tone-ink{--sec-ground:var(--c-text);--sec-text:var(--c-ground);--sec-line:var(--c-highlight)}
.tone-ink a{color:var(--c-highlight)}
.tone-ink a:hover{color:var(--c-text)}
.ch-grid{display:grid;grid:"head head" auto "body side" 1fr "wide wide" auto / minmax(0,var(--w-text)) minmax(0,var(--w-side));column-gap:clamp(1.5rem,4vw,4rem);justify-content:space-between}
.ch-head{grid-area:head;min-width:0;max-width:var(--w-text)}
.ch-body{grid-area:body;min-width:0}
.ch-side{grid-area:side;min-width:0;display:flex;flex-direction:column;gap:1.25rem;align-items:stretch;align-self:start;position:sticky;top:calc(var(--bar-h) + 1.5rem)}
.ch-wide{grid-area:wide;min-width:0}
.ch-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;margin:0 0 .6rem}
.ch-no{display:block;font-weight:900;font-variation-settings:"wdth" 75,"opsz" 144;font-size:clamp(3.6rem,9vw,7rem);line-height:.8;letter-spacing:-.02em}
.tag{display:inline-block;background:var(--c-highlight);color:var(--c-text);border:var(--rule) solid var(--c-text);font-weight:800;font-variation-settings:"wdth" 85;padding:.15rem .6rem;margin:0 0 .9rem;transform:rotate(-2deg);font-size:1rem}
.ch h2{font-weight:900;font-variation-settings:"wdth" 78,"opsz" 96;font-size:clamp(1.9rem,4vw,3.3rem);line-height:.98;letter-spacing:-.02em;margin:0 0 1.25rem;text-wrap:balance}
.answer{font-size:1.2rem;font-weight:500;line-height:1.5;margin:0 0 1rem}
.ch-body p{margin:0 0 1.1rem}
.more{border-top:2px dashed var(--sec-line);margin-top:.5rem}
.more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.6rem;padding:.8rem 0;font-family:var(--f-mono);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.more>summary::-webkit-details-marker{display:none}
.more>summary::before{content:"+";display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border:2px solid currentColor;font-size:1rem;line-height:1}
.more[open]>summary::before{content:"–"}
.more>summary:hover{background:var(--c-highlight);color:var(--c-text)}
.more[open]>summary .is-closed,.more:not([open])>summary .is-opened{display:none}
.more-body{padding-top:.4rem}
.slip-wrap{filter:drop-shadow(5px 5px 0 var(--c-text));margin:0}
.slip-wrap:nth-child(odd){transform:rotate(-1.2deg)}
.slip-wrap:nth-child(even){transform:rotate(1deg)}
.tone-ink .slip-wrap{filter:drop-shadow(5px 5px 0 var(--c-highlight))}
.slip b{display:block;font-family:var(--f-text);font-weight:900;font-variation-settings:"wdth" 80;text-transform:uppercase;font-size:1rem;margin-bottom:.3rem;letter-spacing:.02em}
.slip-sun{background:var(--c-highlight)}
.slip a{color:var(--c-text)}
.side-art{margin:0;background:var(--c-ground-alt);border:var(--rule) solid var(--c-text);box-shadow:6px 6px 0 var(--sec-line);transform:rotate(-2deg)}
.side-art img{display:block;width:100%;height:auto}
.tcap{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:baseline;margin:2.2rem 0 .75rem;font-weight:900;font-variation-settings:"wdth" 80;font-size:1.25rem;line-height:1.2}
.tcap span{font-family:var(--f-mono);font-size:.78rem;font-weight:700;background:var(--c-text);color:var(--c-highlight);padding:.15rem .5rem}
.tone-ink .tcap span{background:var(--c-highlight);color:var(--c-text)}
td.g,th.g{font-weight:800}
.num{font-family:var(--f-mono);font-size:.85rem;white-space:nowrap}
.pill{display:inline-block;font-family:var(--f-mono);font-size:.74rem;font-weight:700;padding:.1rem .45rem;border:2px solid var(--c-text);white-space:nowrap}
.pill-yes{background:var(--c-text);color:var(--c-highlight)}
.pill-some{background:var(--c-highlight)}
.pill-open{background:repeating-linear-gradient(-45deg,#fff 0 4px,#d4d4cc 4px 7px)}
.pill-no{background:var(--c-ground)}
.note{font-size:.8rem;color:var(--c-muted);margin:.7rem 0 0;max-width:var(--w-text)}
.tone-ink .note{color:var(--c-on-dark)}
.note span{display:block;margin-bottom:.25rem}
.faq{display:grid;grid:auto-flow / repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.faq details{background:var(--c-ground);color:var(--c-text);border:var(--rule) solid var(--c-text)}
.faq details[open]{box-shadow:6px 6px 0 var(--c-text)}
.faq summary{cursor:pointer;list-style:none;padding:1rem 3rem 1rem 1.1rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:1rem;top:.75rem;font-weight:900;font-size:1.6rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq summary h3{margin:0;font-size:1.08rem;line-height:1.3;font-weight:800;font-variation-settings:"wdth" 88}
.faq details p{margin:0;padding:.8rem 1.1rem 1.1rem;border-top:2px dashed var(--c-text)}
.sources{background:var(--c-ground-alt);border-bottom:var(--rule) solid var(--c-text);padding:2.5rem 0}
.sources-title{font-family:var(--f-mono);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 1rem}
.sources-groups{display:grid;grid:auto-flow / repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1.5rem}
.sources-groups p{margin:0 0 .4rem;font-weight:900;font-variation-settings:"wdth" 80;text-transform:uppercase}
.sources ol{margin:0;padding-left:1.2rem;font-size:.85rem;line-height:1.45}
.sources li{margin-bottom:.4rem}
.sources li:target{background:var(--c-highlight)}
.crumbs{font-family:var(--f-mono);font-size:.78rem;margin:0 0 .9rem}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem}
.crumbs li+li::before{content:"/";margin-right:.3rem}
.legal{border:var(--rule) solid var(--c-text);background:var(--c-highlight);color:var(--c-text);padding:1.2rem 1.3rem;margin:1.5rem 0 0;max-width:var(--w-text)}
.legal-title{margin:0 0 .6rem;font-weight:900;font-variation-settings:"wdth" 80;text-transform:uppercase;font-size:1.1rem}
.legal ul{margin:0 0 .6rem;padding-left:1.2rem}
.legal li{margin-bottom:.35rem}
.legal p{margin:0;font-family:var(--f-mono);font-size:.78rem}
.guide-hero .hero-grid{grid:auto / minmax(0,1fr) minmax(0,24rem);align-items:center}
.guide-hero h1{font-weight:900;font-variation-settings:"wdth" 78,"opsz" 96;font-size:clamp(1.8rem,3.4vw,2.9rem);line-height:.98;max-width:24ch;margin:.3rem 0 .8rem;letter-spacing:-.02em}
.guide-hero .answer{max-width:var(--w-text)}
.strip{display:flex;flex-wrap:wrap;gap:.3rem 0;margin:1.3rem 0 0;padding:.7rem .9rem;background:var(--c-ground);border:var(--rule) solid var(--c-text);font-family:var(--f-mono);font-size:.8rem;max-width:var(--w-text)}
.strip span{white-space:nowrap}
.strip span+span::before{content:"···";margin:0 .6rem;color:var(--c-muted)}
.strip b{font-weight:700}
.format{background:var(--c-ground);border-bottom:var(--rule) solid var(--c-text);padding:clamp(1.75rem,4vw,3rem) 0}
.format-kick{display:block;font-family:var(--f-mono);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .3rem}
.format-q{font-weight:900;font-variation-settings:"wdth" 80;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.05;margin:0 0 1.1rem}
.format-opts{display:grid;grid:auto-flow / repeat(auto-fit,minmax(min(12.5rem,100%),1fr));gap:var(--rule);background:var(--c-text);border:var(--rule) solid var(--c-text)}
.format-opt{font:inherit;text-align:left;cursor:pointer;display:grid;gap:.35rem;align-content:start;padding:1.1rem;background:var(--c-ground);color:var(--c-text);border:0}
.format-opt:hover{background:var(--c-highlight-soft)}
.format-opt[aria-selected="true"]{background:var(--c-highlight)}
.format-opt:focus-visible{outline:3px solid var(--c-alert);outline-offset:-6px;box-shadow:none}
.format-no,.format-meta{font-family:var(--f-mono);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.format-opt b{font-weight:900;font-variation-settings:"wdth" 80;font-size:1.45rem;line-height:1;text-transform:uppercase}
.format-sub{font-size:.95rem;line-height:1.4}
.format-panel{margin-top:1rem;border:var(--rule) solid var(--c-text);background:var(--c-ground)}
html:not(.js) #fp-text[hidden]{display:block}
.format-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--c-text);color:var(--c-highlight);font-family:var(--f-mono);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.format-close{font:inherit;cursor:pointer;background:transparent;color:var(--c-highlight);border:2px solid currentColor;padding:.35rem .7rem}
html:not(.js) .format-close{display:none}
.format-body{padding:clamp(1rem,2.6vw,1.75rem)}
.format-body>p{margin:0 0 1rem;max-width:var(--w-text)}
.format-toc{margin:0 0 1.2rem;padding-left:1.4rem;columns:2 16rem;column-gap:2rem}
.format-toc li{break-inside:avoid;padding:.25rem 0}
.format-go{display:inline-block;background:var(--c-text);color:var(--c-highlight);font-weight:900;font-variation-settings:"wdth" 80;text-transform:uppercase;text-decoration:none;padding:.6rem 1rem;border:var(--rule) solid var(--c-text)}
.poster{margin:0;display:grid;grid:auto / minmax(0,1fr) minmax(0,1.1fr);border:var(--rule) solid var(--c-text);background:var(--c-highlight)}
.poster-frame{position:relative;aspect-ratio:16 / 10;background:var(--c-text);display:grid;place-items:center;overflow:hidden}
.poster-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.poster-play{position:relative;display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:50%;background:var(--c-highlight);border:var(--rule) solid var(--c-text);box-shadow:5px 5px 0 var(--c-text)}
.poster-play svg{width:1.6rem;height:1.6rem;margin-left:.25rem}
.poster figcaption{padding:1.1rem 1.2rem;display:grid;gap:.4rem;align-content:center}
.poster figcaption b{font-weight:900;font-variation-settings:"wdth" 80;font-size:1.35rem;line-height:1.1}
.poster figcaption span{font-family:var(--f-mono);font-size:.78rem}
.poster ol{margin:.2rem 0 0;padding-left:1.2rem;font-size:.95rem}
.calc{border:var(--rule) solid var(--c-text);background:var(--c-ground);color:var(--c-text);margin:1.5rem 0 0;max-width:var(--w-text);box-shadow:8px 8px 0 var(--c-text)}
.calc-head{background:var(--c-text);color:var(--c-highlight);padding:.6rem 1rem;font-family:var(--f-mono);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0}
.calc-fields{display:grid;grid:auto / repeat(2,minmax(0,1fr));gap:1rem;padding:1rem}
.calc label{display:grid;gap:.3rem;font-weight:800;font-size:.95rem}
.calc input,.calc select{font:inherit;font-family:var(--f-mono);font-size:1rem;padding:.55rem .6rem;border:var(--rule) solid var(--c-text);background:var(--c-ground);color:var(--c-text);width:100%;border-radius:0}
.calc-out{margin:0;padding:1rem;border-top:2px dashed var(--c-text);display:grid;grid:auto / 1fr auto;gap:.3rem 1rem;font-family:var(--f-mono)}
.calc-out dt{text-transform:uppercase;font-size:.85rem}
.calc-out dd{margin:0;text-align:right;font-weight:700}
.calc-out .calc-net{font-size:1.3rem}
.calc-note{grid-column:1 / -1;font-size:.78rem;color:var(--c-muted)}
.calc-note output{display:block}
.guide-hero{padding-block:clamp(1.4rem,3vw,2.4rem)}.guide-hero .strip{margin-bottom:0}.guide-hero+.format{padding-top:1.2rem}
.hero.guide-hero{padding:1.1rem 0 1.3rem}.guide-hero .crumbs{margin-bottom:.4rem}.guide-hero+.format{padding-top:.9rem}
.guide-hero .hero-grid{grid:auto / minmax(0,1fr)}
.hero.guide-hero{padding:0}.guide-hero .hero-grid{padding-top:1rem;padding-bottom:1.3rem}.guide-hero .kicker{margin-bottom:.5rem}
sup.fn{font-family:var(--f-mono);font-size:.68em;font-weight:700;line-height:0;margin-left:.1em}
sup.fn a{text-decoration:none;padding:0 .15em;border:1px solid currentColor}
.steps{margin:1.5rem 0 0;max-width:var(--w-text);border:var(--rule) solid var(--c-text);background:var(--c-ground);color:var(--c-text)}
.steps-title{margin:0;padding:.6rem 1rem;background:var(--c-text);color:var(--c-highlight);font-family:var(--f-mono);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.steps-intro{margin:0;padding:1rem 1rem 0}
.steps ol,.steps ul{margin:0;padding:1rem 1rem 1rem 2.6rem}
.steps li{padding:.3rem 0;border-bottom:1px dashed #9a9a94}
.steps li:last-child{border-bottom:0}
.steps ol li::marker{font-family:var(--f-mono);font-weight:700}
.ch-wide>.legal:first-child,.ch-wide>.steps:first-child{margin-top:2rem}
.next-reads{background:var(--c-highlight);border-bottom:var(--rule) solid var(--c-text);padding:2rem 0}
.next-title{font-family:var(--f-mono);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .9rem}
.next-reads ul{list-style:none;margin:0;padding:0;display:grid;grid:auto-flow / repeat(auto-fill,minmax(min(15rem,100%),1fr));gap:.6rem}
.next-reads a{display:block;height:100%;border:var(--rule) solid var(--c-text);background:var(--c-ground);padding:.6rem .8rem;font-weight:800;font-variation-settings:"wdth" 88;text-decoration:none;transition:transform .15s,box-shadow .15s}
.next-reads a::after{content:" →"}
.next-reads a:hover{background:var(--c-ground);transform:translate(-3px,-3px);box-shadow:3px 3px 0 var(--c-text)}
.calc-intro{margin:0;padding:1rem 1rem 0}
.quiz{margin:1.75rem 0 0;max-width:var(--w-text);border:var(--rule) solid var(--c-text);background:var(--c-ground);color:var(--c-text)}
.quiz-title{margin:0;padding:.6rem 1rem;background:var(--c-text);color:var(--c-highlight);font-family:var(--f-mono);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.quiz-q{border-bottom:2px dashed var(--c-text)}
.quiz-q:last-child{border-bottom:0}
.quiz-q>summary{cursor:pointer;list-style:none;display:grid;gap:.6rem;padding:1rem}
.quiz-q>summary::-webkit-details-marker{display:none}
.quiz-ask{font-weight:800}
.quiz-opts{display:flex;flex-wrap:wrap;gap:.5rem}
.quiz-opts>span{border:2px solid var(--c-text);padding:.4rem .75rem;font-size:.95rem}
.quiz-q[open] .quiz-opts>span{color:var(--c-muted);border-color:var(--c-hatch)}
.quiz-q[open] .quiz-opts>.is-right{background:var(--c-text);color:var(--c-highlight);border-color:var(--c-text)}
.quiz-show{justify-self:start;font-family:var(--f-mono);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid currentColor}
.quiz-q>summary:hover .quiz-show{background:var(--c-highlight)}
.quiz-q[open] .quiz-show .is-closed,.quiz-q:not([open]) .quiz-show .is-opened{display:none}
.quiz-why{margin:0;padding:0 1rem 1rem;font-family:var(--f-mono);font-size:.82rem}
.quiz-why b{font-family:var(--f-text);font-weight:900}
@media (max-width:980px){
.ch-grid{grid:"head" "body" "side" "wide" / minmax(0,1fr)}
.ch-side{position:static;flex-direction:row;flex-wrap:wrap;margin-top:1rem}
.ch-side>*{flex:1 1 15rem}
.side-art{max-width:24rem}
.faq{grid:auto-flow / minmax(0,1fr)}
}
@media (max-width:760px){
.t-stack,.t-stack tbody,.t-stack tr,.t-stack td{display:block;width:100%}
.t-stack{border:0;background:none}
.t-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.t-stack tr{border:var(--rule) solid var(--c-text);background:var(--c-ground);margin:0 0 .9rem}
.t-stack td{display:grid;grid:auto / 7.5rem minmax(0,1fr);gap:.6rem;border-bottom:1px dashed #9a9a94;padding:.45rem .7rem;white-space:normal}
.t-stack td::before{content:attr(data-l);font-family:var(--f-mono);font-size:.7rem;font-weight:700;text-transform:uppercase;padding-top:.15rem}
.t-stack td:last-child{border-bottom:0}
.t-stack td.g{background:var(--c-text);color:var(--c-highlight);font-size:1.05rem}
.t-stack td.g::before{color:var(--c-ground)}
.t-stack td.g a{color:var(--c-highlight)}
}
@media print{.more:not([open])>*{display:block}}
@media (max-width:1100px){.hero-grid,.guide-hero .hero-grid{grid:auto / minmax(0,1fr)}}
@media (max-width:980px){.poster{grid:auto / minmax(0,1fr)}}
@media (max-width:760px){.calc-fields{grid:auto / minmax(0,1fr)}}
