
:root{--ink:#050505;--paper:#fff;--soft:#f4f4f4;--mid:#666;--line:#d4d4d4;--olive:#e7ead8;--blue:#e6eef5;--blue-ink:#23425d;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.35}button,input,select{font:inherit}button{border-radius:0}a{color:inherit}.wrap{width:min(var(--max),calc(100% - 34px));margin:auto}.topline{height:6px;background:#000}
.mast{border-bottom:1px solid #000;position:sticky;top:0;background:#fff;z-index:20}.mast-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 0 14px}.logo{font-size:clamp(1.8rem,4vw,3rem);font-weight:900;letter-spacing:-.075em;text-decoration:none;line-height:.85}.logo sup{font-size:.27em;letter-spacing:0;vertical-align:top;margin-left:2px}.logo small{font-size:.25em;letter-spacing:.16em;margin-left:9px;vertical-align:top}.nav{display:flex;gap:19px;align-items:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}.nav .calc-link{border:1px solid #000;padding:9px 11px}
.hero{display:grid;grid-template-columns:1.35fr .65fr;gap:52px;padding:58px 0 48px;border-bottom:1px solid #000}.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;margin-bottom:12px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.4rem,7.6vw,7rem);line-height:.91;letter-spacing:-.065em;margin:0;max-width:900px}.hero h1 em{font-style:italic;font-weight:400}.hero p{font-family:Georgia,serif;font-size:clamp(1.12rem,1.8vw,1.45rem);max-width:760px;margin:23px 0 0}.hero-rule{align-self:end;border-top:5px solid #000;padding-top:14px}.formula{font-size:clamp(2.8rem,6vw,5rem);font-weight:900;letter-spacing:-.065em;line-height:.95}.formula-copy{font-family:Georgia,serif;font-size:1.1rem;margin-top:10px}.micro{font-size:.7rem;color:var(--mid);margin-top:12px}
.section{padding:44px 0;border-bottom:1px solid #000;scroll-margin-top:96px}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:22px}.section-title h2{font-family:Georgia,serif;font-size:clamp(2.1rem,4.7vw,3.7rem);letter-spacing:-.052em;margin:0}.section-title p{max-width:620px;margin:0;color:#333;font-size:.9rem}.plain-rule{font-family:Georgia,serif;font-size:clamp(1.5rem,3vw,2.35rem);letter-spacing:-.03em;max-width:950px;margin:0}
.context-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #000;border-left:1px solid #000}.context-card{padding:22px;border-right:1px solid #000;border-bottom:1px solid #000;min-height:190px}.context-big{font-size:3.25rem;font-weight:900;letter-spacing:-.07em;line-height:1}.context-card h3{font-family:Georgia,serif;font-size:1.35rem;margin:15px 0 5px}.context-card p{font-size:.8rem;color:#444;margin:0}
.cards{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #000;border-left:1px solid #000}.dataset-card{padding:17px;min-height:184px;border:0;border-right:1px solid #000;border-bottom:1px solid #000;cursor:pointer;background:#fff;text-align:left;display:flex;flex-direction:column}.dataset-card:hover,.dataset-card.active{background:#000;color:#fff}.dataset-card .n{font-size:.67rem;font-weight:900;letter-spacing:.12em}.dataset-card h3{font-family:Georgia,serif;font-size:1.3rem;letter-spacing:-.03em;margin:23px 0 7px}.dataset-card p{font-size:.76rem;margin:0;color:inherit}.status{margin-top:auto;padding-top:15px;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.status span{border:1px solid currentColor;padding:4px 6px}
.leader-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:30px 0 9px}.leader-head h3{font-size:1rem;text-transform:uppercase;letter-spacing:.09em;margin:0}.leader-meta{font-size:.7rem;color:var(--mid);text-align:right;max-width:600px}.table-scroll{overflow:auto;border-top:2px solid #000}.rank-table{width:100%;border-collapse:collapse;min-width:1010px}.rank-table th{font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;text-align:left;padding:9px 8px;border-bottom:1px solid #000;white-space:nowrap}.rank-table td{padding:12px 8px;border-bottom:1px solid var(--line);font-size:.83rem;vertical-align:top}.rank-table tr:hover td{background:#f7f7f7}.rank{width:42px;color:var(--mid)}.entity{font-family:Georgia,serif;font-size:1.01rem!important;font-weight:700;min-width:205px}.moneycol,.ratecol{font-variant-numeric:tabular-nums;white-space:nowrap}.ratecol{font-weight:900;font-size:1rem!important}.basis{color:#444;min-width:195px}.sourcecell{min-width:165px}.sourcecell a{text-decoration:underline;text-underline-offset:2px;font-weight:700}.source-date{display:block;font-size:.66rem;color:#666;margin-top:3px}.badge{display:inline-block;border:1px solid #000;padding:3px 5px;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-top:5px}.badge.estimate{border-style:dashed}.badge.pending{color:#555;border-color:#777}.row-details{margin-top:7px;font-size:.69rem}.row-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:2px}.row-details div{max-width:390px;padding-top:6px;color:#444;line-height:1.45}.source-note{font-size:.7rem;color:#555;margin:12px 0 0;max-width:1040px}.source-note a{text-decoration:underline;text-underline-offset:2px}.share-mini{background:#fff;border:1px solid #000;padding:6px 8px;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;white-space:nowrap}.share-mini:hover{background:#000;color:#fff}.share-mini+.share-mini{margin-top:5px}.actioncell .share-mini{display:block}.th-sort{background:none;border:0;padding:0;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.th-sort:hover{background:#000;color:#fff}
.almanac-shell{border-top:3px solid #000}.almanac-controls{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #000}.state-picker label,.state-search label{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;margin-bottom:6px}.state-picker select,.state-search input{min-width:240px;padding:10px;border:1px solid #000;background:#fff}.almanac-buttons{display:flex;gap:8px;flex-wrap:wrap}.outline-btn,.black-btn{padding:10px 12px;border:1px solid #000;background:#fff;font-weight:900;cursor:pointer}.black-btn{background:#000;color:#fff}.state-hero{display:grid;grid-template-columns:.72fr 1.28fr;gap:0;border-bottom:1px solid #000}.state-name{padding:26px 28px 26px 0;border-right:1px solid #000}.state-name h3{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5.2rem);letter-spacing:-.06em;line-height:.95;margin:0}.state-name p{font-size:.78rem;color:#555;max-width:380px}.state-metrics{display:grid;grid-template-columns:1fr 1fr}.metric-card{padding:19px;border-right:1px solid #000;border-bottom:1px solid #000;min-height:176px}.metric-card:nth-child(2n){border-right:0}.metric-label{font-size:.63rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.metric-value{font-size:2.4rem;font-weight:900;letter-spacing:-.06em;line-height:1;margin:12px 0 5px}.metric-sub{font-family:Georgia,serif;font-size:1rem}.metric-note{font-size:.7rem;color:#555;margin-top:8px}.metric-source{display:inline-block;font-size:.65rem;margin-top:9px;text-decoration:underline;text-underline-offset:2px}.almanac-table{margin-top:28px}.state-table{width:100%;border-collapse:collapse;min-width:980px}.state-table th{font-size:.63rem;text-transform:uppercase;letter-spacing:.09em;text-align:left;padding:9px 8px;border-bottom:1px solid #000}.state-table td{padding:10px 8px;border-bottom:1px solid var(--line);font-size:.78rem;vertical-align:top}.state-table .statecell{font-family:Georgia,serif;font-weight:700;font-size:.92rem}.state-table tr.focus td{background:#efefef}.state-foot{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #000;border-left:1px solid #000;margin-top:22px}.source-box{padding:14px;border-right:1px solid #000;border-bottom:1px solid #000;font-size:.7rem;color:#444}.source-box b{display:block;text-transform:uppercase;letter-spacing:.08em;color:#000;margin-bottom:4px}.source-box a{text-decoration:underline}
.history-note{border-top:4px solid #000;padding-top:14px;margin-top:18px;font-size:.78rem;max-width:1000px}.history-note strong{font-family:Georgia,serif;font-size:1.02rem}
.calc-grid{display:grid;grid-template-columns:.82fr 1.18fr;border-top:2px solid #000;border-bottom:1px solid #000}.calc-copy{padding:28px 34px 28px 0;border-right:1px solid #000}.calc-copy h3{font-family:Georgia,serif;font-size:2.45rem;letter-spacing:-.05em;margin:0 0 10px}.calc-copy p{margin:0;color:#333}.calc-form{padding:28px 0 28px 34px}.calc-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.field label{display:block;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px}.field input{width:100%;padding:12px 10px;border:1px solid #000;border-radius:0;background:#fff}.calc-btn{padding:12px 16px;background:#000;color:#fff;border:1px solid #000;font-weight:900;cursor:pointer}.calc-result-card{margin-top:20px;border:3px solid #000;padding:19px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}.calc-result-card b{font-size:4.7rem;line-height:.85;letter-spacing:-.08em}.calc-result-card span{font-family:Georgia,serif;font-size:1.06rem}.calc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.share-btn,.copy-btn,.card-btn{padding:10px 13px;border:1px solid #000;font-weight:900;cursor:pointer;background:#fff}.share-btn{background:#000;color:#fff}.share-btn:disabled,.copy-btn:disabled,.card-btn:disabled{opacity:.35;cursor:not-allowed}.share-status{font-size:.7rem;color:#333;margin-top:8px;min-height:1em}.share-privacy,.fine{font-size:.66rem;color:#666;margin-top:7px}
.method-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px}.method-grid h2{font-family:Georgia,serif;font-size:3rem;letter-spacing:-.05em;margin:0}.method-list{border-top:2px solid #000}.method-row{display:grid;grid-template-columns:38px 175px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid #000;font-size:.82rem}.method-row b{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.method-row span:last-child{color:#333}.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #000;border-left:1px solid #000;margin-top:28px}.policy{padding:17px;border-right:1px solid #000;border-bottom:1px solid #000}.policy h3{font-family:Georgia,serif;font-size:1.2rem;margin:0 0 8px}.policy p{font-size:.78rem;color:#333;margin:0}.legal-note{margin-top:23px;border-top:4px solid #000;padding-top:14px;font-size:.78rem;max-width:1000px}
footer{padding:28px 0 45px;display:flex;justify-content:space-between;gap:25px;font-size:.7rem;color:#555}.footer-logo{font-weight:900;color:#000;letter-spacing:-.04em}
.toast{position:fixed;right:18px;bottom:18px;background:#000;color:#fff;padding:12px 14px;font-size:.74rem;font-weight:700;z-index:50;opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s}.toast.show{opacity:1;transform:none}
@media(max-width:1000px){.cards{grid-template-columns:repeat(3,1fr)}.hero,.method-grid,.state-hero{grid-template-columns:1fr}.state-name{border-right:0;border-bottom:1px solid #000;padding-right:0}.state-foot{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.nav a:not(.calc-link){display:none}.context-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.calc-grid{grid-template-columns:1fr}.calc-copy{border-right:0;border-bottom:1px solid #000;padding-right:0}.calc-form{padding-left:0}.calc-fields{grid-template-columns:1fr}.almanac-controls{display:block}.state-picker select,.state-search input{width:100%;min-width:0}.state-search{margin-top:12px}.almanac-buttons{margin-top:12px}.state-metrics{grid-template-columns:1fr}.metric-card{border-right:0!important}}
@media(max-width:540px){.wrap{width:min(var(--max),calc(100% - 22px))}.mast-row{padding:14px 0}.logo{font-size:2rem}.hero{padding:38px 0}.hero h1{font-size:3.55rem}.cards{grid-template-columns:1fr}.section-title{display:block}.section-title p{margin-top:10px}.calc-result-card{grid-template-columns:1fr}.calc-result-card b{font-size:4rem}.method-row{grid-template-columns:30px 1fr}.method-row span:last-child{grid-column:2}.policy-grid,.state-foot{grid-template-columns:1fr}footer{display:block}.footer-logo{display:block;margin-bottom:8px}}
/* Editorial polish and compact mobile data cards */
.context-card{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.context-card:hover{position:relative;z-index:1;transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.09);background:#fafafa}.badge{padding:3px 6px;background:var(--olive)}.badge.estimate{border-style:solid;border-color:#667044;background:var(--olive)}.badge.pending{color:var(--blue-ink);border-color:#7991a4;background:var(--blue)}.dataset-card,.share-mini,.outline-btn,.black-btn,.calc-btn,.share-btn,.copy-btn,.card-btn{transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease}.dataset-card:hover,.share-mini:hover,.outline-btn:hover,.black-btn:hover,.calc-btn:hover,.share-btn:hover,.copy-btn:hover,.card-btn:hover{transform:translateY(-2px);box-shadow:3px 3px 0 #999}
@media(max-width:640px){.table-scroll{overflow:visible;border-top:0}.rank-table,.state-table,.rank-table tbody,.state-table tbody,.rank-table tr,.state-table tr{display:block;min-width:0;width:100%}.rank-table thead,.state-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rank-table tr,.state-table tr{border:1px solid #000;margin:0 0 14px;padding:10px 13px;background:#fff;box-shadow:4px 4px 0 var(--line)}.rank-table td,.state-table td{display:grid;grid-template-columns:minmax(92px,34%) 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);min-width:0;white-space:normal}.rank-table td:last-child,.state-table td:last-child{border-bottom:0}.rank-table td::before,.state-table td::before{content:attr(data-label);font-size:.61rem;line-height:1.4;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--mid)}.rank-table .entity,.state-table .statecell{font-size:1.08rem!important}.actioncell .share-mini{display:inline-block;margin:0 5px 0 0}.row-details div{max-width:none}.leader-head{display:block}.leader-meta{text-align:left;margin-top:8px}}
/* Accessibility: WCAG 2.2 AA-oriented interaction, contrast and preferences */
.skip-link{position:fixed;left:12px;top:10px;z-index:1000;padding:12px 16px;background:#000;color:#fff;font-weight:900;transform:translateY(-160%)}.skip-link:focus{transform:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #1a5cff;outline-offset:3px}.source-date,.micro,.fine,.share-privacy,.leader-meta{color:#454545}.calc-btn,.black-btn,.share-btn{background:#000!important;color:#fff!important}.share-mini,.metric-source,.outline-btn,.black-btn,.calc-btn,.share-btn,.copy-btn,.card-btn,.nav a,.dataset-card{min-height:44px}.share-mini{min-width:44px}.metric-source{display:inline-flex;align-items:center;padding:8px 4px;margin-left:-4px}.row-details summary{min-height:44px;display:flex;align-items:center}.accessibility-note{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px}.accessibility-note h2{font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,3.8rem);letter-spacing:-.05em;margin:0}.accessibility-note p{margin:0 0 14px;max-width:760px}.accessibility-note a{text-decoration:underline;text-underline-offset:3px}.access-launcher{position:fixed;right:18px;bottom:18px;z-index:80;width:56px;height:56px;border:2px solid #fff;outline:2px solid #000;border-radius:50%;background:#000;color:#fff;font-size:1.45rem;font-weight:900;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.22)}.access-dialog{width:min(440px,calc(100% - 28px));border:3px solid #000;padding:0;background:#fff;color:#000;box-shadow:10px 10px 0 rgba(0,0,0,.25)}.access-dialog::backdrop{background:rgba(0,0,0,.55)}.access-panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid #000}.access-panel-head h2{font-family:Georgia,serif;font-size:1.55rem;margin:0}.access-close{width:44px;height:44px;border:1px solid #000;background:#fff;font-size:1.4rem;cursor:pointer}.access-brand{padding:16px 18px;background:#000;color:#fff}.access-brand-name{font-size:1rem;font-weight:900;letter-spacing:.02em}.access-brand-copy{margin:5px 0 0;font-size:.76rem}.access-brand a{color:#fff;font-weight:900;text-underline-offset:3px}.access-options{padding:8px 18px 18px}.access-option{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.access-option label{font-weight:800}.access-option small{display:block;color:#454545;font-weight:400;margin-top:3px}.access-option input{width:28px;height:28px}.access-reset{width:100%;min-height:44px;margin-top:18px;border:1px solid #000;background:#fff;font-weight:900;cursor:pointer}.access-small{font-size:90%}.access-large{font-size:118%}.access-readable body{font-family:Verdana,Tahoma,sans-serif}.access-links a:not(.logo):not(.button){text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px}.access-contrast{--paper:#fff;--soft:#fff;--mid:#222;--line:#555}.access-contrast .badge{background:#fff;color:#000;border-color:#000}.access-contrast .dataset-card.active{outline:4px solid #1a5cff;outline-offset:-5px}
@media(max-width:760px){.accessibility-note{grid-template-columns:1fr;gap:18px}.access-launcher{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.context-card:hover,.dataset-card:hover,.share-mini:hover,.outline-btn:hover,.black-btn:hover,.calc-btn:hover,.share-btn:hover,.copy-btn:hover,.card-btn:hover{transform:none}}
.access-reduce-motion *,.access-reduce-motion *::before,.access-reduce-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
.nav a,.sourcecell a{display:inline-flex;align-items:center}.sourcecell a{min-height:32px}
