.reader-body *{box-sizing:border-box}
.reader-body{scroll-behavior:smooth}
.reader-body{margin:0;background:#f7f6f0;color:#142c32;font:18px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.reader-body a{color:#005f70;text-underline-offset:.18em;overflow-wrap:anywhere}
.reader-body a:focus-visible,.reader-body summary:focus-visible{outline:3px solid #b35d00;outline-offset:5px}
.reader-body .skip{position:absolute;left:1rem;top:-6rem;background:white;padding:.5rem;z-index:10}
.reader-body .skip:focus{top:1rem}
.reader-body .wrap{max-width:1040px;margin:auto;padding:28px clamp(16px,4vw,58px) 70px}
.reader-body nav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-bottom:1px solid #b7c4c2;padding-bottom:18px;font-size:15px}
.reader-body header{padding:42px 0 22px}
.reader-body h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.15;letter-spacing:-.025em;margin:.5em 0}
.reader-body h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.3;margin-top:2em}
.reader-body h3{font-size:1.1rem;margin:0 0 .6rem}
.reader-body .eyebrow,.reader-body .kicker{text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:750;color:#476361}
.reader-body .lead{font-size:1.18rem;max-width:800px}
.reader-body .identity{background:#e5eeeb;border-left:5px solid #176353;padding:20px 24px;margin:20px 0}
.reader-body .identity p{margin:.35em 0}
.reader-body .original{font-size:1.22rem;line-height:1.7;font-weight:650}
.reader-body .credit{font-size:.94rem}
.reader-body section{margin:32px 0}
.reader-body p,.reader-body li{max-width:850px}
.reader-body li{margin:.45em 0}
.reader-body figure{margin:30px 0;padding:clamp(16px,3vw,28px);border:1px solid #adbfbc;border-radius:14px;background:white;break-inside:avoid}
.reader-body figure h2,.reader-body figure h3{font-size:1.3rem;line-height:1.35;margin:0 0 .6rem}
.reader-body .nodes{padding:0;list-style:none;margin:22px 0;display:grid;gap:18px;counter-reset:step}
.reader-body .nodes li{margin:0;padding:18px 20px;border:1px solid #b5c9c4;border-radius:10px;background:#f3f7f5;position:relative;min-width:0;max-width:none}
.reader-body .nodes strong{display:block;line-height:1.4;margin-bottom:.6em}
.reader-body .nodes span{display:block;font-size:1rem}
.reader-body .timeline .nodes{border-left:3px solid #176353;padding-left:22px}
.reader-body .timeline .nodes li:before{content:"";width:13px;height:13px;border-radius:50%;background:#176353;position:absolute;left:-30px;top:25px}
.reader-body .map .nodes{grid-template-columns:repeat(3,minmax(0,1fr))}
.reader-body .flow .nodes{grid-template-columns:repeat(3,minmax(0,1fr))}
.reader-body .flow .nodes li{border-top:5px solid #176353}
.reader-body .flow .nodes li:before{counter-increment:step;content:counter(step);display:inline-block;border-radius:50%;background:#176353;color:white;width:30px;line-height:30px;text-align:center;margin-bottom:12px;font-weight:700}
.reader-body figcaption{font-size:.92rem;line-height:1.6;color:#395351}
.reader-body details{border-top:1px solid #c7d4d1;margin-top:20px;padding-top:12px}
.reader-body summary{cursor:pointer;font-weight:650;font-size:.94rem}
.reader-body details p{font-size:1rem}
.reader-body .sources{font-size:.92rem;border-top:1px solid #b7c4c2;padding-top:10px}
.reader-body .sources li{margin:1.2rem 0}
.reader-body .source-date{display:block;color:#476361}
.reader-body table{width:100%;border-collapse:collapse;font-size:1rem;background:white}
.reader-body th,.reader-body td{text-align:left;padding:12px;border-bottom:1px solid #bac9c5;vertical-align:top}
.reader-body caption{text-align:left;font-weight:700;margin:10px 0}
.reader-body .fees{overflow-x:auto}
.reader-body footer{margin-top:40px;border-top:1px solid #b7c4c2;padding-top:15px;font-size:.87rem;color:#476361}
@media(max-width:700px){.reader-body .map .nodes,.reader-body .flow .nodes{grid-template-columns:1fr}
.reader-body header{padding-top:25px}
.reader-body .identity{padding:16px}
.reader-body .wrap{padding-top:18px}
.reader-body{font-size:17px}
.reader-body figure{border-radius:9px}
.reader-body .nodes li{padding:16px}
.reader-body th,.reader-body td{padding:8px}
}
@media print{.reader-body{background:white;font-size:11pt}
.reader-body .wrap{max-width:none;padding:0}
.reader-body nav,.reader-body .skip{display:none}
.reader-body details p{display:block}
.reader-body a{color:inherit}
.reader-body figure{break-inside:auto}
}
