:root{--font-display:var(--font-public-sans,"Public Sans"),"Segoe UI",Helvetica,Arial,sans-serif;--font-body:var(--font-public-sans,"Public Sans"),"Segoe UI",Helvetica,Arial,sans-serif;--font-nav-display:"Impact","Haettenschweiler","Arial Narrow Bold",sans-serif;--font-nav-body:"IBM Plex Mono","SFMono-Regular",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--nb-black:#141414;--nb-ink:#2f3742;--nb-paper:#e7eef7;--nb-surface:#fff;--nb-yellow:#c9d9ee;--nb-cyan:#9fbfe2;--nb-mint:#c6d9ee;--nb-pink:#b9cee8;--nb-orange:#d0d7e2;--nb-blue:#1f4f86;--nb-red:#b74a42;--nb-muted:#4d6078;--nb-border:3px solid var(--nb-black);--nb-border-light:2px solid hsla(0,0%,8%,.45);--nb-radius:6px;--nb-shadow:6px 6px 0 var(--nb-black);--nb-shadow-sm:4px 4px 0 var(--nb-black);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--color-party-r:#ab4d3f;--color-party-d:#2f5f9e;--color-party-i:#6f7986;--chart-series-1:#ab4d3f;--chart-series-2:#2f5f9e;--chart-series-3:#3f7e8e;--chart-series-4:#5f6f9d;--chart-series-5:#8a6a43;--chart-series-6:#2f7490}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-body);font-weight:450;color:var(--nb-black);background-color:var(--nb-paper);background-image:linear-gradient(0deg,hsla(0,0%,8%,.025) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,8%,.025) 1px,transparent 0),radial-gradient(circle at 85% 10%,rgba(31,79,134,.18),transparent 34%),linear-gradient(180deg,#f8fbff,#dce7f5);background-size:24px 24px,24px 24px,auto,auto}h1{font-family:var(--font-display)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}::selection{background:var(--nb-blue);color:#fff}.shell{max-width:1180px;margin:0 auto;padding:30px 18px 74px}.stack{display:grid;grid-gap:16px;gap:16px}.pixel-icon{--pixel-icon-size:18px;display:inline-block;width:var(--pixel-icon-size);height:var(--pixel-icon-size);flex:0 0 auto;color:var(--nb-black);background-color:currentColor;-webkit-mask-image:var(--pixel-icon-url);mask-image:var(--pixel-icon-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;image-rendering:pixelated}.site-nav-wrap{position:-webkit-sticky;position:sticky;top:0;z-index:40;border-bottom:var(--nb-border);background:linear-gradient(90deg,#c0d5ec,#8eadd1);box-shadow:0 4px 0 var(--nb-black)}.site-nav-inner{max-width:1180px;margin:0 auto;padding:12px 18px;display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap}.site-brand{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--font-nav-display);font-size:1.05rem;font-weight:400;letter-spacing:.05em;text-transform:uppercase;border:var(--nb-border);background:var(--nb-surface);border-radius:var(--nb-radius);box-shadow:var(--nb-shadow-sm);padding:6px 10px}.site-brand:before{content:"AL";display:inline-block;background:var(--nb-red);color:#fff;border:var(--nb-border);border-radius:4px;padding:2px 6px;line-height:1}.site-nav{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap}.nav-link{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-nav-body);min-height:38px;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:var(--nb-border);border-radius:4px;background:#fff;box-shadow:var(--nb-shadow-sm);padding:7px 12px;transition:transform .12s ease,box-shadow .12s ease}.nav-link:hover{text-decoration:none;transform:translate(2px,2px);box-shadow:2px 2px 0 var(--nb-black)}.nav-link-active{background:var(--nb-blue);color:#fff}.candidate-jump-pill:focus-visible,.legend-button:focus-visible,.mode-button:focus-visible,.nav-link:focus-visible,.nb-dropdown-option:focus-visible,.nb-dropdown-trigger:focus-visible,.race-card:focus-visible,.race-link-arrow:focus-visible,.race-link:focus-visible,.site-brand:focus-visible,.site-footer-link:focus-visible,.table-link:focus-visible,.utility-button:focus-visible{outline:3px solid var(--nb-blue);outline-offset:2px}.hero{border:var(--nb-border);border-radius:var(--nb-radius);background:#fff;box-shadow:var(--nb-shadow);padding:24px 22px 20px;animation:heroDrop .46s ease both;display:grid;grid-gap:14px;gap:14px}.hero .pill{margin-bottom:12px;justify-self:start}.candidate-committee-pill{font-size:.62rem;letter-spacing:.07em;padding:2px 7px}.hero-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(104px,30%);align-items:center;grid-column-gap:14px;column-gap:14px}.hero-copy{min-width:0}.hero h1{margin:4px 0 0;font-family:var(--font-display);font-weight:900;font-size:clamp(2.45rem,5.2vw,4.35rem);line-height:.94;letter-spacing:.025em}.hero-coin-wrap{display:inline-flex;align-items:center;justify-content:center;width:clamp(86px,78%,220px);height:auto;aspect-ratio:1/1;border:var(--nb-border);border-radius:8px;background:linear-gradient(165deg,#eef8e6,#cde5bf);box-shadow:var(--nb-shadow-sm);transform:none;flex:0 0 auto;justify-self:center;align-self:center}.hero-coin{--pixel-icon-size:58%;color:#356d2f}.hero p{margin:14px 0 0;color:var(--nb-ink);max-width:84ch;font-size:.95rem;line-height:1.6}.home-read-first-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.hero-read-grid{border-top:2px solid hsla(0,0%,8%,.25);padding-top:14px}.home-read-first-item{border:var(--nb-border-light);border-radius:4px;background:#fff;padding:12px;display:grid;grid-gap:8px;gap:8px;align-content:start}.home-read-first-item h3{margin:0;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.86rem;letter-spacing:.06em;text-transform:uppercase}.home-read-first-item p{margin:0;font-size:.84rem;line-height:1.5;color:var(--nb-ink)}.home-read-first-icon{--pixel-icon-size:17px}.home-read-first-icon-source{color:#805f13}.home-read-first-icon-hidden{color:#8c2f2f}.home-read-first-icon-cadence{color:#5e4a1d}.trophy-case{display:grid;grid-gap:12px;gap:12px}.trophy-case-head-copy{gap:6px;max-width:74ch}.trophy-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px}.trophy-toggle-group{display:grid;grid-gap:6px;gap:6px}.trophy-toggle-label{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.trophy-dropdown-group{margin-left:auto}.nb-dropdown{position:relative;min-width:220px}.nb-dropdown-trigger{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--nb-border);border-radius:4px;background:#fff;box-shadow:var(--nb-shadow-sm);color:var(--nb-black);font-size:.78rem;font-weight:800;letter-spacing:.04em;line-height:1.2;padding:9px 10px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer}.nb-dropdown-trigger.is-open,.nb-dropdown-trigger:hover{background:#eef4fb;transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.nb-dropdown-caret{font-size:.72rem}.nb-dropdown-menu{position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:20;box-shadow:var(--nb-shadow);padding:4px;display:grid;grid-gap:4px;gap:4px}.nb-dropdown-menu,.nb-dropdown-option{border:var(--nb-border);border-radius:4px;background:#fff}.nb-dropdown-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--nb-black);font-size:.76rem;font-weight:700;letter-spacing:.03em;text-align:left;padding:8px 9px;cursor:pointer}.nb-dropdown-option:hover{background:#f2f7ff}.nb-dropdown-option.is-selected{background:var(--nb-yellow)}.trophy-context{margin:0}.trophy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.trophy-card{border:var(--nb-border);border-radius:4px;background:#fff;box-shadow:var(--nb-shadow-sm);padding:12px;display:grid;grid-gap:10px;gap:10px;align-content:start;min-height:238px}.trophy-icon{width:clamp(54px,26%,78px);aspect-ratio:1/1;justify-self:center;-webkit-mask-image:var(--trophy-icon-url);mask-image:var(--trophy-icon-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-image:linear-gradient(110deg,#7b5a14,#c79a2d 32%,#f2dd8f 50%,#c79a2d 68%,#7b5a14);background-size:220% 100%;animation:trophyShimmer 2.3s linear infinite;filter:drop-shadow(1px 1px 0 rgba(20,20,20,.3))}.trophy-card h3{margin:0;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;line-height:1.2}.trophy-card-winner{margin:0;font-size:.92rem;font-weight:800;line-height:1.3}.trophy-card-metric{margin:0;font-size:.84rem;color:var(--nb-ink)}@keyframes trophyShimmer{0%{background-position:180% 0}to{background-position:-40% 0}}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.card{border:var(--nb-border);border-radius:var(--nb-radius);background:#fff;box-shadow:var(--nb-shadow);padding:16px;transition:transform .14s ease,box-shadow .14s ease}.card:hover{transform:translate(2px,2px);box-shadow:4px 4px 0 var(--nb-black)}.card h2,.card h3{margin:0;font-family:var(--font-display);font-weight:800;font-size:1.16rem;letter-spacing:.04em;text-transform:none}.callout{background:linear-gradient(160deg,#eef4fc,#fff);border-width:4px}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px 14px;flex-wrap:wrap}.section-head h2,.section-head h3{margin:0}.section-head h2{font-size:1.4rem}.section-badge-wrap{display:inline-flex;align-items:center}.soft{margin:0;color:var(--nb-muted);font-size:.86rem;line-height:1.5}.metric{margin:10px 0 0;font-size:clamp(1.35rem,3vw,2.1rem);font-family:var(--font-display);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.metric-card .soft,.metric-footer{margin-top:10px}.status-badge{display:inline-flex;align-items:center;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:4px;padding:5px 8px;border:var(--nb-border);background:#fff}.status-badge-warning{background:var(--nb-orange)}.status-badge-success{background:var(--nb-mint)}.race-link,.race-link-arrow,.table-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:var(--nb-border);border-radius:4px;background:var(--nb-yellow);box-shadow:var(--nb-shadow-sm);padding:6px 10px}.race-link-arrow:hover,.race-link:hover,.table-link:hover{text-decoration:none;transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.race-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:14px;gap:14px}.legislative-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:14px;gap:14px}.race-card{display:grid;grid-template-rows:auto auto 1fr auto;grid-gap:10px;gap:10px;text-decoration:none;background:linear-gradient(175deg,#fff,#edf4fd)}.race-card.competitive{background:linear-gradient(175deg,#fff,#e7f0fc)}.legislative-link-card{gap:8px;text-decoration:none;background:linear-gradient(170deg,#fff,#e5eefc);min-height:170px;align-content:start}.legislative-link-card .race-card-meta{margin-bottom:10px}.legislative-link-summary{margin:0}.race-card-meta{margin:0;display:inline-flex;align-items:center;justify-content:center;align-self:start;font-size:.7rem;font-weight:800;line-height:1;letter-spacing:.08em;text-transform:uppercase;color:var(--nb-black);border:var(--nb-border);border-radius:4px;background:var(--nb-yellow);min-height:22px;padding:4px 7px}.race-card-summary{margin:0}.race-card-parties{display:flex;gap:6px;align-items:center}.party-dot{width:11px;height:11px;border-radius:2px;border:2px solid hsla(0,0%,8%,.5);display:inline-block}.party-dot-r{background:var(--color-party-r)}.party-dot-d{background:var(--color-party-d)}.party-dot-i{background:var(--color-party-i)}.data-table-card h3{margin-bottom:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:640px;border:var(--nb-border)}td,th{padding:10px 12px;border-bottom:2px solid hsla(0,0%,8%,.3);border-right:2px solid hsla(0,0%,8%,.3);text-align:left;font-size:.86rem}td:last-child,th:last-child{border-right:0}tbody tr:last-child td{border-bottom:0}th{background:var(--nb-yellow);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}tbody tr:nth-child(2n){background:#eef4fb}.latest-row{background:#d5e6fa!important}.chart-shell{background:linear-gradient(175deg,#fff,#eef4fb);border:var(--nb-border);border-radius:var(--nb-radius);box-shadow:var(--nb-shadow-sm);padding:12px}.race-bars-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.race-bars-panel{border:var(--nb-border);border-radius:var(--nb-radius);background:linear-gradient(175deg,#fff,#edf4fd);box-shadow:var(--nb-shadow-sm);padding:12px}.race-bars-panel h3{margin:0}.race-bars-panel .soft{margin-top:8px}.race-bars-chart{margin-top:10px;border:var(--nb-border-light);border-radius:4px;background:#fff;padding:8px}.race-bars-tooltip{min-width:178px;background:#fff;border:var(--nb-border);border-radius:4px;box-shadow:var(--nb-shadow-sm);padding:8px}.race-bars-tooltip-name{margin:0;font-size:.8rem;font-weight:700}.race-bars-tooltip-value{margin:5px 0 0;font-family:var(--font-display);font-weight:700;letter-spacing:.04em;font-size:1rem}.race-bars-tooltip-meta{margin:4px 0 0;font-size:.72rem;color:var(--nb-muted);text-transform:uppercase;letter-spacing:.05em}.cash-geo-layout{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(300px,1.05fr);grid-gap:14px;gap:14px;align-items:start}.cash-geo-metric-stack{display:grid;grid-gap:10px;gap:10px}.cash-geo-metric-stack .mini-card{background:linear-gradient(175deg,#fff,#eef4fb)}.cash-geo-metric-stack .mini-value{font-size:1.2rem}.cash-geo-chart-card{border:var(--nb-border);border-radius:var(--nb-radius);background:linear-gradient(175deg,#fff,#edf4fd);box-shadow:var(--nb-shadow-sm);padding:12px}.cash-geo-chart-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.cash-geo-chart-head h3{margin:0}.cash-geo-chart-head-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cash-geo-pie-wrap{margin-top:10px;border:var(--nb-border-light);border-radius:4px;background:#fff;padding:8px}.cash-geo-legend{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-gap:8px;gap:8px}.cash-geo-legend-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border:var(--nb-border-light);border-radius:4px;background:#fff;padding:7px 9px}.cash-geo-legend-left{display:inline-flex;align-items:center;gap:8px;min-width:0}.cash-geo-dot{width:11px;height:11px;border-radius:2px;border:2px solid var(--nb-black);flex-shrink:0}.cash-geo-label{font-size:.78rem;font-weight:700;letter-spacing:.03em}.cash-geo-legend-right{display:inline-flex;align-items:baseline;gap:8px}.cash-geo-amount{font-size:.78rem;font-weight:700}.cash-geo-percent{font-size:.7rem;color:var(--nb-muted);letter-spacing:.06em}.cash-geo-tooltip{min-width:178px;background:#fff;border:var(--nb-border);border-radius:4px;box-shadow:var(--nb-shadow-sm);padding:8px}.cash-geo-tooltip-title{margin:0;font-size:.8rem;font-weight:700}.cash-geo-tooltip-value{margin:5px 0 0;font-family:var(--font-display);font-weight:700;letter-spacing:.04em;font-size:1rem}.cash-geo-tooltip-note{margin:4px 0 0;color:var(--nb-muted);font-size:.72rem}.spending-brk-pills{display:flex;gap:10px;flex-wrap:wrap}.spending-brk-pill{display:inline-flex;align-items:baseline;gap:6px;border:var(--nb-border-light);border-radius:4px;background:#fff;padding:6px 10px;font-size:.78rem}.spending-brk-pill-label{font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;color:var(--nb-muted)}.spending-brk-pill-value{font-weight:600}.spending-brk-chart-wrap{margin-top:10px;border:var(--nb-border-light);border-radius:4px;background:#fff;padding:12px 8px}.spending-brk-tooltip{min-width:178px;background:#fff;border:var(--nb-border);border-radius:4px;box-shadow:var(--nb-shadow-sm);padding:8px}.spending-brk-tooltip-title{margin:0;font-size:.8rem;font-weight:700}.spending-brk-tooltip-value{margin:5px 0 0;font-family:var(--font-display);font-weight:700;letter-spacing:.04em;font-size:1rem}.spending-brk-tooltip-note{margin:4px 0 0;color:var(--nb-muted);font-size:.72rem}.chart-toolbar{display:flex;justify-content:space-between;margin-bottom:10px}.chart-toolbar,.chart-toolbar-left{align-items:center;gap:10px;flex-wrap:wrap}.chart-mode-toggle,.chart-toolbar-left{display:inline-flex}.chart-mode-toggle{border:var(--nb-border);border-radius:4px;background:#fff;overflow:hidden;box-shadow:var(--nb-shadow-sm)}.chart-party-filter{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:800;color:var(--nb-black);letter-spacing:.08em;text-transform:uppercase}.chart-party-dropdown{min-width:170px}.chart-party-dropdown .nb-dropdown-trigger{font-size:.76rem;font-weight:700;letter-spacing:.02em;text-transform:none;padding:8px 9px}.chart-party-dropdown .nb-dropdown-option{text-transform:none}.mode-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-right:2px solid var(--nb-black);background:#fff;color:var(--nb-black);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;cursor:pointer}.mode-button:last-child{border-right:0}.mode-button.is-active{background:var(--nb-blue);color:#fff}.mode-button:disabled{opacity:.55;cursor:not-allowed}.chart-action-buttons{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.utility-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--nb-border);border-radius:4px;background:var(--nb-yellow);color:var(--nb-black);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;cursor:pointer;box-shadow:var(--nb-shadow-sm);transition:transform .12s ease,box-shadow .12s ease}.utility-button:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.utility-button:disabled{opacity:.6;cursor:not-allowed}.chart-empty-state{min-height:250px;display:grid;place-content:center;grid-gap:12px;gap:12px;justify-items:center;text-align:center}.chart-area{width:100%;min-height:340px}.grid-line{stroke:hsla(0,0%,7%,.28);stroke-width:1}.axis-label{fill:#2f2f2f;font-size:11px}.legend{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px}.legend-item{display:inline-flex;gap:7px;align-items:center;font-size:.76rem;font-weight:700;letter-spacing:.04em}.legend-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--nb-border);background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer;color:inherit;box-shadow:var(--nb-shadow-sm);transition:transform .12s ease,box-shadow .12s ease}.legend-button:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.legend-button-muted{opacity:.5}.legend-dot{width:10px;height:10px;border-radius:2px;border:2px solid var(--nb-black);display:inline-block}.empty-text{margin:10px 0 4px;color:var(--nb-muted)}.chart-tooltip{min-width:220px;background:#fff;border:var(--nb-border);border-radius:4px;box-shadow:var(--nb-shadow);padding:10px}.chart-tooltip-title{margin:0;font-family:var(--font-display);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.chart-tooltip-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.chart-tooltip-mode{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.chart-tooltip-items{display:grid;grid-gap:8px;gap:8px}.chart-tooltip-item{display:grid;grid-gap:4px;gap:4px}.chart-tooltip-head{display:inline-flex;align-items:center;gap:6px;font-size:.84rem}.chart-tooltip-values{display:grid;grid-gap:2px;gap:2px;padding-left:16px;font-size:.78rem;color:var(--nb-muted)}.chart-tooltip-values strong{color:var(--nb-black);font-size:.88rem}.pill{display:inline-block;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:var(--nb-blue);border:var(--nb-border);border-radius:4px;padding:4px 9px}.warning{border:var(--nb-border);border-radius:var(--nb-radius);padding:12px 14px;background:#e6edf7;box-shadow:var(--nb-shadow-sm);color:var(--nb-ink);line-height:1.5}.mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:10px;gap:10px}.mini-card{border:var(--nb-border);border-radius:4px;padding:10px 12px;background:#fff;box-shadow:var(--nb-shadow-sm)}.mini-title{margin:0;font-size:.78rem;font-weight:700;color:var(--nb-muted)}.mini-value{margin:6px 0 0;font-size:1rem;font-family:var(--font-display)}.breadcrumb ol,.mini-value{font-weight:700;letter-spacing:.04em;text-transform:uppercase}.breadcrumb ol{display:flex;align-items:center;gap:0;list-style:none;margin:0;padding:0;font-size:.76rem}.breadcrumb li{display:inline-flex;align-items:center}.breadcrumb a{border:var(--nb-border);border-radius:4px;background:var(--nb-cyan);box-shadow:2px 2px 0 hsla(0,0%,8%,.35);padding:4px 8px}.breadcrumb-sep{margin:0 8px;color:var(--nb-black);font-size:.8rem}.site-footer{margin-top:48px}.site-footer-inner{max-width:1180px;margin:0 auto;border-top:var(--nb-border);border-right:var(--nb-border);border-left:var(--nb-border);border-radius:var(--nb-radius) var(--nb-radius) 0 0;background:linear-gradient(90deg,#fff,#e8f0fa);box-shadow:var(--nb-shadow);padding:14px 18px;display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.site-footer-sep{color:var(--nb-muted)}.site-footer-link{border:var(--nb-border);border-radius:4px;background:var(--nb-yellow);box-shadow:var(--nb-shadow-sm);padding:5px 8px}.site-footer-link:hover{text-decoration:none}.site-footer-contact{text-transform:none;letter-spacing:.01em}.page-section{margin-top:0}.home-browse-intro{margin-top:12px}.race-sort-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.race-sort-label{margin:0}.race-sort-chip-row{display:inline-flex;gap:8px;flex-wrap:wrap}.race-sort-chip{display:inline-flex;align-items:center;border:var(--nb-border);border-radius:4px;background:#fff;box-shadow:var(--nb-shadow-sm);padding:6px 10px;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.race-sort-chip:hover{text-decoration:none;transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.race-sort-chip-active{background:var(--nb-blue);color:#fff}.methodology-section{border-top:var(--nb-border);padding-top:18px}.methodology-list{margin:0;padding-left:20px;display:grid;grid-gap:8px;gap:8px;color:var(--nb-muted);font-size:.86rem}.candidate-jump-pill,.party-pill{display:inline-flex;align-items:center;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;border-radius:4px;border:var(--nb-border);box-shadow:var(--nb-shadow-sm);line-height:1}.party-pill{padding:5px 8px}.candidate-jump-pill-r,.party-pill-r{background:rgba(194,86,69,.2);color:#6f1f0f}.candidate-jump-pill-d,.party-pill-d{background:rgba(63,110,168,.2);color:#143968}.candidate-jump-pill-i,.party-pill-i{background:hsla(213,7%,51%,.2);color:#2f2f2f}.candidate-jump-list{display:flex;flex-wrap:wrap;gap:10px}.candidate-jump-pill{padding:8px 10px}.candidate-jump-pill:hover{filter:brightness(.98);text-decoration:none;transform:translate(1px,1px);box-shadow:3px 3px 0 var(--nb-black)}.candidate-jump-pill-muted{background:#efefef;color:#5f5f5f;cursor:default}@keyframes heroDrop{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card-grid>*,.legislative-link-grid>*,.race-card-grid>*{animation:cardRise .38s ease both}@keyframes cardRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card-grid>:first-child{animation-delay:.05s}.card-grid>:nth-child(2){animation-delay:.09s}.card-grid>:nth-child(3){animation-delay:.13s}.card-grid>:nth-child(4){animation-delay:.17s}.race-card-grid>:first-child{animation-delay:.05s}.race-card-grid>:nth-child(2){animation-delay:.08s}.race-card-grid>:nth-child(3){animation-delay:.11s}.race-card-grid>:nth-child(4){animation-delay:.14s}.race-card-grid>:nth-child(5){animation-delay:.17s}.race-card-grid>:nth-child(6){animation-delay:.2s}.race-card-grid>:nth-child(7){animation-delay:.23s}.race-card-grid>:nth-child(8){animation-delay:.26s}.legislative-link-grid>:first-child{animation-delay:.05s}.legislative-link-grid>:nth-child(2){animation-delay:.1s}@media (prefers-reduced-motion:reduce){.card,.card-grid>*,.hero,.legend-button,.legislative-link-grid>*,.nav-link,.race-card-grid>*,.race-link,.race-link-arrow,.race-sort-chip,.table-link,.trophy-icon,.utility-button{animation:none!important;transition:none!important}.candidate-jump-pill:hover,.card:hover,.legend-button:hover,.nav-link:hover,.race-link-arrow:hover,.race-link:hover,.race-sort-chip:hover,.table-link:hover,.utility-button:hover{transform:none;box-shadow:var(--nb-shadow-sm)}}@media (max-width:900px){.site-nav-inner{padding:10px 14px}.site-brand,.site-nav{width:100%;justify-content:center}.shell{padding:18px 14px 38px}.hero{padding:18px 14px;gap:12px}.hero-top{grid-template-columns:minmax(0,1fr) minmax(96px,34%);column-gap:10px}.hero h1{font-size:clamp(2rem,10vw,2.85rem)}.hero-coin-wrap{width:clamp(82px,80%,170px);transform:none;justify-self:center}td,th{padding:8px 9px}.chart-toolbar{align-items:stretch}.chart-mode-toggle{width:100%;justify-content:stretch}.mode-button{flex:1 1;text-align:center;padding:9px 10px}.chart-action-buttons{width:100%;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.utility-button{width:100%;min-height:44px}.legend-button{min-height:42px;padding:7px 10px}.chart-party-filter{width:100%;flex-direction:column;align-items:flex-start;gap:4px}.chart-party-dropdown{width:100%;min-width:0}.trophy-dropdown-group{margin-left:0;width:100%}.nb-dropdown{width:100%}.site-footer-inner{flex-direction:column;align-items:flex-start;gap:6px;border-bottom:var(--nb-border);border-radius:var(--nb-radius)}.site-footer-sep{display:none}.cash-geo-layout,.legislative-link-grid,.race-bars-grid,.race-card-grid{grid-template-columns:1fr}}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Public_Sans_4eb217;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Public_Sans_Fallback_4eb217;src:local("Arial");ascent-override:90.59%;descent-override:21.46%;line-gap-override:0.00%;size-adjust:104.87%}.__className_4eb217{font-family:__Public_Sans_4eb217,__Public_Sans_Fallback_4eb217;font-style:normal}.__variable_4eb217{--font-public-sans:"__Public_Sans_4eb217","__Public_Sans_Fallback_4eb217"}