:root{--ink:#092b20;--muted:#53685e;--accent:#01ab14;--accent-ink:#006c0c;--secondary:#6fc6e0;--attention:#ee6565;--contrast:#17627a;--line:#d5e6df;--wash:#f3faf6;--highlight:#6fc6e0;--faint:#e1eee7;--selection:#e8f6ed;--header:68px}
*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:4px}button,select,input{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}a,button,select,input{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--contrast);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:39px;line-height:1.15;text-wrap:balance}h3{font-size:23px;line-height:1.25;font-weight:600}strong{font-weight:600}.eyebrow{text-transform:uppercase;font-size:12px;line-height:1.5;font-weight:600}.site-header{position:sticky;top:0;z-index:50;height:var(--header);padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fffffffa;border-bottom:1px solid var(--line)}.site-header a{text-decoration:none}.author{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600}.monogram{background:var(--accent);color:#fff;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:12px}.project-label{font-size:14px;font-weight:600}.project-label span{color:var(--muted);font-weight:400}#contents-toggle{font-size:13px;display:flex;gap:13px;align-items:center;padding:12px 0}#contents-toggle span{font-size:20px}.reading-progress{position:absolute;bottom:-1px;height:3px;left:0;width:100%}.reading-progress span{display:block;height:100%;width:0;background:var(--accent)}.contents{position:fixed;right:3%;top:78px;z-index:60;width:310px;max-height:calc(100dvh - 95px);overflow:auto;border:1px solid var(--line);background:#fff;padding:20px;border-radius:5px;box-shadow:0 15px 45px #092b2015}.contents-heading{font-size:17px;font-weight:600;padding:4px 8px 12px}.contents a{display:flex;gap:12px;text-decoration:none;font-size:14px;padding:10px 8px}.contents a span{color:var(--muted);font-size:12px}.contents a:hover,.contents a[aria-current]{background:var(--wash);color:var(--accent-ink)}.hero{isolation:isolate;position:relative;display:flex;align-items:center;color:#fff;min-height:480px;height:62svh;max-height:680px}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-image{object-position:50% 55%}.hero-shade{z-index:-1;background:#092b20ab}.hero-inner{width:min(1250px,92%);margin:auto;padding:40px 20px}.hero .eyebrow{color:var(--highlight);margin-bottom:22px}.hero h1{font-size:90px;line-height:1.05;margin:0 0 12px}.hero .hero-subtitle{font:38px/1.25 Georgia;margin-bottom:22px;max-width:690px}.hero .hero-deck{font-size:19px;line-height:1.65;margin-bottom:22px;color:#fff}.byline{font-size:13px;display:flex;gap:20px;flex-wrap:wrap}.byline span{color:#e8f6ed}.begin-link{display:inline-flex;gap:40px;align-items:center;text-decoration:none;font-size:14px;border-bottom:1px solid #ffffff80;padding-bottom:6px;margin-top:25px}.begin-link span{font-size:25px}.fact-band{max-width:1250px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;padding:28px 20px 30px;border-bottom:1px solid var(--line)}.fact-band>div{border-right:1px solid var(--line);padding:0 25px}.fact-band>div:first-child{padding-left:0}.fact-band>div:last-child{border:0}.fact-band strong{display:block;font-size:39px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.3}.fact-band strong span{font-size:24px;color:var(--accent-ink)}.fact-band>div>span{font-size:13px;color:var(--muted)}.chapter-nav{max-width:1250px;margin:auto;display:flex;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);padding:20px}.chapter-nav a{text-decoration:none;display:flex;gap:12px;font-size:12px;color:var(--accent-ink);white-space:nowrap}.chapter-nav span{font-size:14px;color:var(--ink)}.scrolly-layout{position:relative;max-width:1300px;padding:0 24px;margin:auto;display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%)}.narrative{min-width:0}.story-step{padding:100px 50px 100px 0;min-height:92svh;display:flex;flex-direction:column;justify-content:center;scroll-margin-top:0}.step-copy{transition:opacity .3s}.step-copy .eyebrow{color:var(--accent-ink);display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:20px;margin-bottom:23px}.eyebrow span{color:var(--muted);white-space:nowrap}.step-copy h2{margin-bottom:26px}.step-copy p{font-size:17px;line-height:1.85;color:#3e584b;margin-bottom:24px;overflow-wrap:anywhere}.step-copy strong{color:var(--accent-ink)}.step-copy .takeaway{border-left:3px solid var(--highlight);padding:0 0 0 18px;margin:30px 0 0;font-size:16px;font-weight:500;color:var(--ink)}.visual-column{border-left:1px solid var(--line);padding-left:36px;min-width:0;align-self:stretch}.visual-stage{position:sticky;top:calc(var(--header) + 26px);padding:20px 0 24px;min-width:0;max-height:calc(100svh - var(--header) - 44px);display:flex;flex-direction:column}.viz-topline{display:flex;justify-content:space-between;gap:15px;text-transform:uppercase;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:12px}.visual-stage h3{margin-bottom:17px}.viz-controls{display:flex;align-items:center;gap:10px 15px;flex-wrap:wrap;min-height:35px;margin-bottom:16px;flex-shrink:0}.segmented{display:flex;gap:2px;border-bottom:1px solid var(--line);max-width:100%;flex-wrap:wrap}.segmented button{font-size:13px;padding:7px 10px;border-bottom:2px solid transparent;color:var(--muted)}.segmented button[aria-pressed=true]{color:var(--accent-ink);border-bottom-color:var(--accent-ink);font-weight:600}.viz-controls label{font-size:12px;display:flex;gap:7px;align-items:center;max-width:100%}.viz-controls select{font-size:13px;max-width:190px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:3px;padding:6px 8px}.check-control{width:100%;font-size:13px!important}.check-control input{accent-color:var(--accent-ink);width:15px;height:15px}.chart{position:relative;flex:0 1 auto;min-height:150px;overflow:auto;scrollbar-width:thin;max-width:100%}.chart>svg{display:block;width:100%;flex-shrink:0;overflow:visible}.chart svg text{font:12px Arial,Helvetica,sans-serif;fill:var(--muted)}.chart svg .value{font-size:12px;font-weight:600;fill:var(--ink)}.chart svg .big-value{font-size:27px;font-weight:600;fill:var(--ink)}.chart svg .point-label{font-size:13px;font-weight:600;fill:var(--ink)}.chart svg .axis-title{font-size:12px}.chart svg .annotation{font-size:11px;fill:var(--muted)}.chart .tick line{stroke:var(--line);stroke-dasharray:2 4}.chart .tick text{font-size:11px}.bubble,.bar,.shap-row{cursor:pointer}.bubble:hover,.bubble:focus{fill-opacity:1;stroke:var(--ink)}.shap-row:focus{outline:none}.shap-row:focus rect,.shap-row:hover rect{fill:#e8f6ed}.viz-detail{font-size:13px;line-height:1.6;border-left:2px solid var(--accent);background:var(--wash);padding:10px 13px;margin-top:15px;min-height:55px;flex-shrink:0;overflow-wrap:anywhere}.viz-detail strong{display:block;font-size:14px;margin-bottom:4px}.viz-detail span{display:block}.viz-caption{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 0 0;flex-shrink:0}.chart-tooltip{position:absolute;pointer-events:none;z-index:10;max-width:min(310px,100%);font-size:12px;line-height:1.6;background:var(--ink);color:#fff;border-radius:4px;padding:10px 13px;box-shadow:0 4px 15px #092b2020}.goal-statement{padding-top:24px}.goal-statement strong{font:76px/1.1 Georgia;color:var(--accent-ink)}.goal-statement strong span{font-size:35px;color:#93aaa0}.goal-statement p{font-size:14px;color:var(--muted);margin:10px 0 0}.waffle{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:5px;margin:30px 0 22px}.waffle i{aspect-ratio:1;background:#e1eee7;border-radius:2px;transition:background .45s}.waffle .converted{background:var(--accent)}.waffle .target-cell{background:var(--highlight)}.heat-scroll{max-width:100%;overflow:auto;scrollbar-width:thin}.heat-table{table-layout:fixed;border-collapse:separate;border-spacing:5px;width:100%;font-size:12px}.heat-table th{padding:6px 2px;font-size:12px;line-height:1.35;font-weight:400;color:var(--muted);text-align:center}.heat-table th:first-child{width:100px;text-align:left}.heat-table td{height:48px;text-align:center;border-radius:3px;padding:0;color:#879f93}.heat-table td button{padding:10px 0;width:100%;height:100%;display:block;font-size:13px;color:inherit;font-variant-numeric:tabular-nums}.heat-table td button:hover{outline:2px solid var(--ink);outline-offset:1px}.cohort-table{border-spacing:3px}.cohort-table th:first-child{width:65px}.cohort-table td{height:30px}.cohort-table th,.cohort-table td button{font-size:11px}.cohort-table td button{padding:5px 0}.action-list{margin:0}.action-list>div{padding:19px 2px;border-top:1px solid var(--line)}.action-list strong{font-size:17px}.action-list p{font-size:15px;line-height:1.6;color:var(--muted);margin:7px 0 0}.sources{max-width:1250px;margin:40px auto 0;border-top:1px solid var(--line);padding:60px 20px}.sources .eyebrow{color:var(--accent-ink);margin-bottom:20px}.sources h2{font-size:37px;margin-bottom:25px}.sources p{font-size:14px;line-height:1.8;max-width:800px;color:var(--muted)}.source-links{display:flex;gap:32px;margin-top:26px;font-size:14px;color:var(--accent-ink)}.site-footer{border-top:1px solid var(--line);padding:24px max(24px,calc((100% - 1210px)/2));display:flex;justify-content:space-between;gap:20px;font-size:14px;background:var(--wash)}.site-footer a{text-decoration:none}.skip-link{position:fixed;top:-70px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:5px}.mobile-viz-slot{display:none}
@media(min-width:901px){.story-step:not(.is-active) .step-copy{opacity:.64}.story-step:hover .step-copy,.story-step:focus-within .step-copy{opacity:1}}
@media(max-width:1100px){.author>span:last-child{display:none}.story-step{padding-right:28px}.visual-column{padding-left:26px}.step-copy h2{font-size:34px}.hero h1{font-size:80px}.fact-band strong{font-size:33px}.fact-band>div{padding:0 15px}}
@media(max-width:900px){:root{--header:60px}.site-header{padding:0 22px}.hero{height:60svh;min-height:490px}.hero-inner{padding:36px 12px}.hero h1{font-size:74px}.hero .hero-subtitle{font-size:34px}.chapter-nav{overflow:auto;justify-content:flex-start}.scrolly-layout{display:block;padding:0 26px}.visual-column{display:none}.story-step{min-height:0;padding:60px 0;scroll-margin-top:15px}.step-copy{max-width:640px;margin:auto}.step-copy h2{font-size:36px}.mobile-viz-slot{display:block;max-width:640px;margin:35px auto 0;border-top:1px solid var(--line)}.mobile-viz-slot .visual-stage{position:relative;top:auto;max-height:none;padding:26px 0 0}.chart{overflow:visible;min-height:0;flex:none}.sources{padding:45px 26px}.sources h2{font-size:33px}.fact-band{padding:25px 26px;grid-template-columns:1.3fr 1fr 1fr 1fr}.fact-band>div>span{font-size:12px}}
@media(max-width:560px){.site-header{padding:0 18px;gap:12px}.project-label{font-size:13px}.project-label span{display:none}#contents-toggle{font-size:12px}.hero{height:auto;min-height:490px}.hero-inner{padding:44px 24px;width:100%}.hero h1{font-size:66px}.hero .hero-subtitle{font-size:31px;max-width:300px}.hero .hero-deck{font-size:17px}.byline{font-size:12px}.fact-band{grid-template-columns:1.3fr 1fr;gap:22px 15px;padding:25px 24px}.fact-band>div{padding:0;border:0}.fact-band strong{font-size:34px}.fact-band strong span{font-size:21px}.chapter-nav{padding:18px 24px;gap:25px}.chapter-nav span{font-size:13px}.scrolly-layout{padding:0 22px}.story-step{padding:44px 0}.step-copy h2{font-size:33px}.step-copy p{font-size:16px;line-height:1.8}.step-copy .takeaway{font-size:15px}.eyebrow{font-size:11px}.step-copy .eyebrow{gap:10px}.visual-stage h3{font-size:21px}.viz-topline{font-size:10px}.viz-controls{gap:10px;margin-bottom:16px}.segmented button{font-size:12px;padding:8px 9px}.viz-controls label{font-size:12px}.viz-controls select{font-size:12px;max-width:165px}.viz-detail{font-size:12px}.goal-statement strong{font-size:62px}.waffle{gap:3px}.chart svg .big-value{font-size:24px}.chart svg text{font-size:11px}.chart svg .value{font-size:11px}.chart svg .point-label{font-size:12px}.heat-table{border-spacing:3px}.heat-table th:first-child{width:87px}.heat-table th{font-size:11px}.heat-table td button{font-size:12px}.cohort-table{min-width:440px}.cohort-table th:first-child{width:60px}.cohort-table th,.cohort-table td button{font-size:11px}.cohort-table td{height:32px}.action-list strong{font-size:16px}.action-list p{font-size:14px}.contents{right:12px;width:min(310px,calc(100% - 24px))}.sources p{font-size:13px}}
@media(max-width:360px){.hero h1{font-size:59px}.hero .hero-subtitle{font-size:28px}.fact-band strong{font-size:29px}.step-copy h2{font-size:30px}.segmented button{padding:8px}.check-control{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.hero-image,.hero-shade,.chapter-nav,.contents,.visual-column,.mobile-viz-slot,.begin-link{display:none!important}.hero{color:#000;min-height:0;height:auto}.hero-inner{padding:20px 0}.hero .eyebrow,.hero .hero-deck,.byline span{color:#000}.hero h1{font-size:38px}.hero .hero-subtitle{font-size:25px}.scrolly-layout{display:block}.story-step{min-height:0;padding:25px 0;break-inside:avoid}.step-copy{opacity:1!important}.step-copy p{font-size:12px}.step-copy h2{font-size:25px}.sources{padding:25px 0}.fact-band{padding:20px 0}}
/* Preserve the illustration's clear title space and show the delivery on phones. */
@media screen{
.hero{background:#01ab14;color:var(--ink)}
.hero-image{object-position:center center}
.hero-shade{background:transparent}
.header-art-credit{position:absolute;bottom:8px;right:14px;font-size:10px;padding:2px 5px;background:#006c0c;color:white}
}
@media print{.header-art-credit{display:none}}
@media screen and (max-width:720px){
  .hero{height:710px;min-height:0;max-height:none;align-items:flex-start}
  .hero-inner{height:100%;width:100%;margin:0;padding:30px 24px}
  .hero-image{top:auto;bottom:0;height:40%;object-position:right center}
  .hero .hero-subtitle{max-width:440px}
  .header-art-credit{font-size:9px}
}
/* Comparison rows keep labels outside the data marks. */
.comparison-row{cursor:pointer}
.chart [tabindex]:focus-visible{outline-color:var(--ink)}
