
:root{--paper:#f5f2ea;--ink:#202c26;--muted:#66706a;--green:#1c4638;--green-deep:#173b30;--lime:#d8ef85;--clay:#ae7056;--line:#ddd8cd;--card:#fffdf8;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Aptos','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.68 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
.site-header{height:74px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}
.brand{text-decoration:none;display:flex;flex-direction:column;gap:2px;line-height:1.1}
.brand-name{font:26px/1.05 var(--serif);letter-spacing:-.04em}
.brand-tag{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:var(--muted)}
.contact{text-decoration:none;background:var(--green);color:white;padding:11px 18px;border-radius:3px;font-size:12px;font-weight:650}
.preview-strip{background:#e9e3d7;color:#6a5d4d;text-align:center;padding:7px 12px;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.page{max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,64px)}
.breadcrumb{margin:28px 0 38px;font-size:12px;color:var(--muted)}
.breadcrumb a{text-decoration:none;border-bottom:1px solid #b9b1a5}
.breadcrumb span{margin:0 8px;color:#aaa195}
.hero{max-width:none;padding:clamp(26px,5vw,54px);margin:0 0 38px;background:var(--green);color:#f7f3e9;border-radius:4px}.hero h1{color:#f7f3e9}.hero .eyebrow{color:var(--lime)}.hero .eyebrow:before{background:var(--lime)}.hero .subtitle{color:#f7f3e9}.hero .deck{color:#e5e6dc}.hero .article-meta{color:#e5e6dc}.hero .article-meta .dot{color:var(--lime)}.hero .draft-pill{border-color:rgba(255,255,255,.45);color:#f7f3e9}
.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--clay);font-weight:700;margin:0 0 19px;display:flex;align-items:center;gap:10px}
.eyebrow:before{content:'';width:28px;height:1px;background:var(--clay)}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.04em}
h1{font-size:clamp(48px,8vw,86px);line-height:.98;margin:0 0 18px;max-width:860px}
.subtitle{font:clamp(22px,3vw,30px)/1.24 var(--serif);color:var(--green);margin:0 0 23px;max-width:790px}
.deck{font-size:17px;line-height:1.72;color:#59635d;max-width:710px;margin:0}
.article-meta{margin-top:26px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:11px;letter-spacing:.04em}
.dot{color:var(--clay)}
.draft-pill{border:1px solid #c9c2b6;padding:4px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#75695b}
.article-shell{max-width:850px;margin:0 auto;padding:36px 0 90px}
.toc{margin:0 0 40px;border:1px solid var(--line);background:rgba(255,253,248,.48);border-radius:4px}
.toc summary{cursor:pointer;list-style:none;padding:15px 18px;font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--green);display:flex;justify-content:space-between;align-items:center}
.toc summary::-webkit-details-marker{display:none}
.toc summary:after{content:'+';font:22px/1 var(--serif);color:var(--clay)}
.toc[open] summary:after{content:'−'}
.toc nav{padding:0 18px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px}
.toc nav a{font-size:12px;color:#5b665f;text-decoration:none;padding:3px 0;border-bottom:1px solid #e6e0d5}
.toc nav a:hover{color:var(--green)}
.article-copy h2{font-size:clamp(32px,5vw,46px);line-height:1.08;margin:58px 0 18px;color:var(--ink)}
.article-copy h2:first-child{margin-top:0}
.article-copy h3{font-size:clamp(23px,3vw,30px);line-height:1.2;margin:37px 0 14px;color:var(--green)}
.article-copy p{margin:0 0 19px;color:#4e5a53}.pullquote{margin:30px 0;padding:17px 22px;border-left:2px solid var(--clay);color:var(--green);font:clamp(23px,3vw,31px)/1.22 var(--serif)}
.article-copy ul,.article-copy ol{margin:0 0 22px;padding-left:24px;color:#4e5a53}
.article-copy li{padding-left:4px;margin:0 0 9px}
.article-copy li::marker{color:var(--clay)}
.chart{margin:30px 0 34px;padding:13px;background:var(--card);border:1px solid var(--line);border-radius:4px}
.chart-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:zoom-in;overflow-x:auto;overscroll-behavior-x:contain;line-height:0}.chart-open:focus-visible{outline:3px solid var(--clay);outline-offset:4px}.chart-viewer{width:max-content;max-width:96vw;max-height:96vh;padding:42px 16px 14px;border:1px solid var(--line);border-radius:5px;background:#fffdf8;color:var(--ink);overflow:auto}.chart-viewer::backdrop{background:rgba(16,24,21,.78)}.chart-viewer img{display:block;width:auto;height:auto;max-width:92vw;max-height:84vh;min-width:0;margin:0 auto}.chart-viewer figcaption{margin:12px auto 0;max-width:92vw;color:var(--muted);font-size:12px;line-height:1.45}.chart-close{position:absolute;top:7px;right:10px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:#fffdf8;color:var(--ink);font:24px/1 var(--serif);cursor:pointer}
.chart img{display:block;width:100%;height:auto;min-width:640px}
.chart figcaption{border-top:1px solid #eee8dc;margin-top:12px;padding:9px 4px 1px;color:#707971;font-size:12px;line-height:1.45}
.table-scroll{overflow-x:auto;margin:25px 0 34px;border:1px solid var(--line);background:var(--card);border-radius:4px}
table{border-collapse:collapse;width:100%;min-width:650px;font-size:13px;line-height:1.55}
th,td{text-align:left;vertical-align:top;padding:13px 14px;border-bottom:1px solid #e8e2d7}
th{background:#e9eee6;color:var(--green);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
td{color:#4e5a53}
tr:last-child td{border-bottom:0}
.references{padding-left:22px}
.references li{padding:0 0 12px}
.reference-link{display:inline-block;margin-left:6px;color:var(--green);font-size:11px;text-decoration:none;border-bottom:1px solid #afc1b6}
.article-copy a:not(.reference-link){color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.article-end{background:var(--green);color:#f7f3e9;padding:30px clamp(22px,5vw,52px);border-radius:4px;margin-top:54px}
.article-end p{margin:0;color:#e6e6d6;font-size:13px;line-height:1.7}
.article-end strong{color:var(--lime);font-size:10px;letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:9px}
.back-link{display:inline-flex;margin:24px 0 0;color:var(--green);font-size:13px;font-weight:650;text-decoration:none;border-bottom:1px solid #aebbb2;padding-bottom:3px}
.site-footer{border-top:1px solid var(--line);padding:22px 0 30px;color:#77766e;font-size:11px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.site-footer a{color:inherit;text-decoration:none}
@media(max-width:700px){
 .site-header{height:66px;padding:0 17px}.brand-name{font-size:23px}.contact{padding:10px 13px;font-size:11px}
 .page{padding:0 17px}.breadcrumb{margin:23px 0 30px}.hero{padding:26px 20px 30px;margin-bottom:30px}
 .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:16px}h1{font-size:clamp(48px,13vw,64px)}.subtitle{font-size:23px;line-height:1.25}
 .deck{font-size:15px;line-height:1.65}.article-meta{margin-top:20px}
 .article-shell{padding:24px 0 60px}.toc{margin-bottom:32px}.toc nav{grid-template-columns:1fr;gap:3px}
 .article-copy h2{margin-top:46px}.article-copy h3{margin-top:30px}
 .chart{padding:8px;margin:24px -2px 28px}.chart img{min-width:620px}
 .article-end{margin-top:38px;padding:24px 20px}
 .site-footer{display:block;line-height:2}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
