.elections{color:#11233e;background:#f3f5f8;min-height:100vh;font-size:16px;line-height:1.5}.elections p{font-size:16px;line-height:1.65}.election-wrap{width:min(1160px,100% - 80px);margin:auto}.election-header{background:#001532;position:static}.election-header-inner{justify-content:space-between;align-items:center;height:88px;display:flex}.election-home{color:#dbe5ef;align-items:center;gap:9px;font-size:15px;display:flex}.election-home:hover{color:#fda900}.election-intro{color:#fff;background:#001532;padding:48px 0 82px;position:relative;overflow:hidden}.election-intro:after{content:"2026";letter-spacing:-12px;color:#ffffff06;pointer-events:none;font-size:180px;font-weight:800;line-height:1;position:absolute;bottom:9px;right:max(40px,50vw - 580px)}.election-kicker{letter-spacing:1.6px;color:#c5d0df;align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.election-kicker>span{background:#fda900;border-radius:50%;width:7px;height:7px}.election-intro h1{letter-spacing:-2px;margin:25px 0 20px;font-size:clamp(38px,5vw,64px);line-height:1.12}.election-intro h1 span{color:#fda900}.election-intro p{color:#e0e7f0;margin:0 0 25px;font-size:18px}.election-location{color:#aebdd1;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.election-body{padding-bottom:45px}.election-tabs{background:#fff;border:1px solid #dbe2eb;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:-29px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 25px #00153208}.election-tabs button{color:#53637a;background:#fff;border:0;border-bottom:4px solid #0000;justify-content:center;align-items:center;gap:12px;min-height:78px;padding:15px 18px;font-size:15px;font-weight:700;display:flex}.election-tabs button+button{border-left:1px solid #e8edf2}.election-tabs button[aria-selected=true]{color:#001532;background:#fff9e9;border-bottom-color:#fda900}.election-tabs button:hover{background:#f4f6f8}.election-tabs button:focus-visible{outline-offset:-5px}.election-section-head{justify-content:space-between;align-items:center;gap:25px;margin:44px 0 25px;display:flex}.election-overline{letter-spacing:1.5px;color:#67768a;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.election-section-head h2{letter-spacing:-.7px;margin:8px 0 10px;font-size:30px;line-height:1.25}.election-section-head p{color:#607086;max-width:730px;margin:0}.election-source-link{white-space:nowrap;border-bottom:1px solid #abb8c8;align-items:center;gap:6px;padding:6px 0;font-size:14px;display:flex}.election-highlights{grid-template-columns:1.2fr .85fr 1.1fr;gap:16px;margin-bottom:28px;display:grid}.election-winner,.election-metric,.election-turnout{background:#fff;border:1px solid #dbe2eb;border-radius:10px;padding:25px}.election-winner{color:#fff;background:#001e42;border-color:#001e42}.election-winner .election-overline{color:#fda900;letter-spacing:1.2px;font-size:10px}.election-winner>strong{margin:13px 0;font-size:23px;line-height:1.3;display:block}.election-winner>div{align-items:baseline;gap:12px;display:flex}.election-winner b{color:#fda900;font-variant-numeric:tabular-nums;font-size:35px;line-height:1}.election-winner>div span{color:#cdd9e7;font-size:14px}.election-metric{flex-direction:column;justify-content:center;display:flex}.election-metric>span,.election-turnout>div>span{color:#53637a;font-size:13px}.election-metric>strong{letter-spacing:-1px;margin:6px 0;font-size:38px;line-height:1.2}.election-metric small,.election-turnout small{color:#607086;font-size:12px;line-height:1.7;display:block}.election-turnout{align-items:center;gap:20px;display:flex}.election-ring{background:conic-gradient(#fda900 0% 67%,#e7edf3 67%);border-radius:50%;flex-shrink:0;place-items:center;width:90px;height:90px;display:grid;position:relative}.election-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:8px}.election-ring strong{letter-spacing:-.5px;font-size:22px;position:relative}.election-context{background:#fff;border:1px solid #dbe2eb;border-radius:10px;align-items:center;gap:18px;margin-bottom:24px;padding:25px 28px;display:flex}.election-context>svg{color:#9b6900;flex-shrink:0}.election-context strong{font-size:18px;display:block}.election-context span{color:#607086;margin-top:5px;font-size:14px;display:block}.election-districts{flex-wrap:wrap;gap:9px;margin:5px 0 24px;display:flex}.election-districts button{color:#53637a;background:#fff;border:1px solid #ccd6e1;border-radius:6px;min-height:46px;padding:10px 22px;font-size:14px;font-weight:700}.election-districts button[aria-pressed=true]{color:#fff;background:#001e42;border-color:#001e42}.election-chart-card{background:#fff;border:1px solid #dbe2eb;border-radius:12px;padding:30px 34px 0;overflow:hidden}.election-chart-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.election-chart-heading h3{letter-spacing:-.3px;margin:0;font-size:21px}.election-chart-heading>span{color:#607086;white-space:nowrap;font-size:12px}.election-controls{align-items:end;gap:18px;display:flex}.election-search{color:#67768a;border:1px solid #ccd6e1;border-radius:6px;flex:1;align-items:center;gap:10px;min-height:48px;padding:0 13px;display:flex}.election-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:10px 0;font-size:14px;line-height:1.5}.election-search:focus-within{outline-offset:2px;outline:2px solid #fda900}.election-search input:focus{outline:0}.election-sort{color:#67768a;align-items:center;gap:10px;font-size:12px;display:flex}.election-sort select{color:#11233e;background:#fff;border:1px solid #ccd6e1;border-radius:6px;max-width:220px;min-height:48px;padding:10px 30px 10px 12px;font-size:14px}.election-checkbox{cursor:pointer;align-items:center;gap:10px;width:fit-content;margin:18px 0 0;font-size:13px;display:flex}.election-checkbox input{accent-color:#001e42;width:18px;height:18px}.election-chart-hint{color:#67768a;margin:16px 0 14px;font-size:12px!important}.election-candidate{border-top:1px solid #e8edf2}.election-candidate-row{text-align:left;color:#11233e;background:#fff;border:0;align-items:center;gap:18px;width:100%;padding:19px 16px;display:flex}.election-rank{color:#8894a5;font-variant-numeric:tabular-nums;flex-shrink:0;align-self:flex-start;width:28px;margin-top:3px;font-size:12px}.election-candidate-main{flex:1;min-width:0}.election-candidate-line{flex-wrap:wrap;align-items:center;gap:10px;min-height:24px;margin-bottom:12px;display:flex}.election-candidate-line>strong{font-size:16px;line-height:1.4}.election-elected{color:#27633d;background:#e9f3ec;border-radius:4px;align-items:center;gap:3px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-flex}.election-bar-track{background:#edf1f5;border-radius:3px;height:9px;display:block;overflow:hidden}.election-bar-track>span{background:#527ba0;border-radius:3px;height:100%;display:block}.is-elected .election-bar-track>span{background:#f5ab16}.election-vote-value{text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:74px}.election-vote-value strong{font-size:22px;line-height:1.1;display:block}.election-vote-value small{color:#607086;font-size:12px}.election-candidate-row>svg{color:#7d8ba0;flex-shrink:0;transition:transform .2s}.election-candidate-row>svg.expanded{transform:rotate(180deg)}.election-candidate-detail{background:#f3f6f9;border-radius:6px;grid-template-columns:1fr 140px;gap:20px;margin-bottom:20px;margin-left:46px;padding:18px 20px;display:grid}.election-candidate-detail span{color:#67768a;margin-bottom:5px;font-size:11px;display:block}.election-candidate-detail strong{font-size:13px;font-weight:500;line-height:1.6;display:block}.election-chart-foot{color:#53637a;background:#f8fafc;border-top:1px solid #e8edf2;justify-content:space-between;gap:20px;margin:15px -34px 0;padding:18px 34px;font-size:12px;display:flex}.election-chart-foot span{text-align:right;color:#67768a;max-width:410px}.election-method{background:#eaf0f6;border-left:3px solid #c6d3e1;border-radius:0 7px 7px 0;margin:25px 0;padding:23px 26px}.election-method h3{margin:0 0 8px;font-size:14px}.election-method p{color:#53637a;margin:0 0 9px;font-size:13px;line-height:1.7}.election-method p:last-child{margin-bottom:0}.election-footer{color:#53637a;background:0 0;border-top:1px solid #dbe2eb;justify-content:space-between;gap:40px;padding:28px 0 0;display:flex}.election-footer strong{font-size:12px;display:block}.election-footer span{max-width:700px;margin-top:5px;font-size:12px;line-height:1.7;display:block}.election-footer a{white-space:nowrap;align-self:start;align-items:center;gap:5px;font-size:12px;display:flex}.election-empty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:35px 15px;font-size:14px;display:flex}.election-empty>span{color:#607086}.election-empty>button{background:#f3f6f9;border:1px solid #c6d3e1;border-radius:5px;padding:9px 15px}.election-sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (min-width:761px) and (max-width:1000px){.election-highlights{grid-template-columns:1fr 1fr}.election-turnout{grid-column:1/-1}.election-tabs button{gap:7px;padding:15px 8px;font-size:13px}}@media (max-width:760px){.election-wrap{width:calc(100% - 36px)}.election-header-inner{height:80px}.election-header .brand{gap:11px;font-size:14px}.election-header .brand-mark{font-size:30px}.election-home{font-size:13px}.election-intro{padding:30px 0 62px}.election-intro:after{letter-spacing:-7px;font-size:110px;bottom:17px;right:20px}.election-kicker{letter-spacing:1px;gap:7px;font-size:9px}.election-intro h1{letter-spacing:-1.4px;margin:22px 0 18px;font-size:39px}.election-intro p{max-width:300px;font-size:16px}.election-location{gap:7px;font-size:11px}.election-tabs{border-radius:10px;grid-template-columns:1fr 1fr;margin-top:-24px}.election-tabs button{border-bottom-width:3px;gap:8px;min-height:62px;padding:12px 9px;font-size:12px}.election-tabs button:nth-child(3){border-top:1px solid #e8edf2;border-left:0}.election-tabs button:nth-child(4){border-top:1px solid #e8edf2}.election-tabs svg{width:17px;height:17px}.election-section-head{margin-top:30px;display:block}.election-section-head h2{font-size:26px}.election-section-head p{font-size:14px}.election-source-link{width:fit-content;margin-top:14px;font-size:12px}.election-highlights{grid-template-columns:1fr 1fr;gap:12px}.election-winner{grid-column:1/-1;padding:23px}.election-winner>strong{font-size:25px}.election-winner>div{justify-content:space-between}.election-winner b{font-size:38px}.election-metric,.election-turnout{padding:17px}.election-metric>strong{font-size:31px}.election-metric>span{font-size:12px}.election-turnout{flex-direction:column;align-items:flex-start;gap:12px}.election-ring{width:64px;height:64px}.election-ring strong{font-size:16px}.election-turnout small{font-size:10px}.election-context{align-items:flex-start;gap:12px;padding:20px}.election-context strong{font-size:16px}.election-context span{font-size:12px}.election-districts{gap:7px}.election-districts button{white-space:nowrap;flex:1;padding:10px 6px;font-size:12px}.election-chart-card{border-radius:9px;padding:22px 17px 0}.election-chart-heading h3{font-size:18px}.election-chart-heading>span{font-size:10px}.election-controls{flex-direction:column;align-items:stretch;gap:12px}.election-search{flex:auto;min-height:44px}.election-sort{justify-content:space-between}.election-sort select{width:calc(100% - 60px);max-width:none;min-height:44px;font-size:13px}.election-chart-hint{font-size:11px!important}.election-candidate-row{gap:9px;padding:18px 10px}.election-rank{width:18px;margin-top:2px;font-size:10px}.election-candidate-line{gap:5px;margin-bottom:10px}.election-candidate-line>strong{font-size:14px}.election-elected{padding:1px 4px;font-size:9px}.election-vote-value{min-width:49px}.election-vote-value strong{font-size:19px}.election-vote-value small{font-size:10px}.election-candidate-row>svg{width:13px;height:13px}.election-bar-track{height:7px}.election-candidate-detail{grid-template-columns:1fr;gap:10px;margin-left:27px;padding:14px}.election-candidate-detail strong{font-size:12px}.election-chart-foot{flex-direction:column;gap:8px;margin:15px -17px 0;padding:16px 17px;font-size:10px}.election-chart-foot span{text-align:left}.election-method{padding:18px}.election-method p{font-size:12px}.election-footer{flex-direction:column;gap:16px}.election-checkbox{font-size:12px}}@media (max-width:360px){.election-wrap{width:calc(100% - 28px)}.election-intro h1{font-size:34px}.election-tabs button{font-size:11px}.election-tabs button svg{width:15px}.election-vote-value{min-width:45px}.election-candidate-line>strong{font-size:13px}.election-candidate-row{gap:7px}.election-chart-card{padding-left:13px;padding-right:13px}.election-chart-foot{margin-left:-13px;margin-right:-13px;padding-left:13px;padding-right:13px}}@media (prefers-reduced-motion:reduce){.election-candidate-row>svg{transition:none}}.election-districts button{text-align:left;white-space:normal;flex:1;padding:15px 20px}.election-districts button span,.election-districts button strong,.election-districts button small{display:block}.election-districts button span{opacity:.8;font-size:11px;font-weight:400}.election-districts button strong{margin:4px 0;font-size:16px}.election-districts button small{opacity:.85;font-size:12px;font-weight:400}.election-candidate.is-elected .election-candidate-row{background:#fffbf2}@media (max-width:760px){.election-districts button{padding:12px 8px}.election-districts button strong{font-size:12px;line-height:1.4}.election-districts button span,.election-districts button small{font-size:10px}}.election-candidate-meta{color:#607086;overflow-wrap:anywhere;margin:3px 0 12px;font-size:12px;line-height:1.5;display:block}.election-candidate-line{margin-bottom:0}.election-candidates{margin-top:22px}@media (max-width:760px){.election-candidate-meta{margin-bottom:10px;font-size:11px}.election-candidate-line{margin-bottom:0}}.election-navigation{box-shadow:none;background:#fff;border:0;border-radius:0;margin-top:-29px;padding:0;position:relative}.election-navigation .election-tabs{box-shadow:none;scrollbar-width:thin;scrollbar-color:#c5cfdb transparent;overscroll-behavior-x:contain;background:0 0;border:0;border-bottom:1px solid #ccd6e1;border-radius:0;gap:0;margin:0;display:flex;overflow:auto hidden}.election-navigation .election-tabs button{color:#607086;white-space:nowrap;min-height:66px;box-shadow:none;background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;flex:1 0 auto;gap:10px;margin:0;padding:18px 22px;font-size:15px;font-weight:500;line-height:1.4;transition:color .15s,border-color .15s;position:relative}.election-navigation .election-tabs button:hover{color:var(--navy);box-shadow:none;background:0 0;border-bottom-color:#c6d1de;transform:none}.election-navigation .election-tabs button[aria-selected=true]{color:var(--navy);border-bottom-color:var(--yellow);box-shadow:none;background:0 0;font-weight:700}.election-navigation .election-tabs button:focus-visible{outline:2px solid var(--navy);outline-offset:-6px}.election-navigation .election-tabs button>svg{color:currentColor;flex-shrink:0;width:19px;height:19px}@media (min-width:761px) and (max-width:1000px){.election-navigation .election-tabs button{padding:18px 12px;font-size:14px}}@media (max-width:760px){.election-navigation{margin-top:-24px}.election-navigation .election-tabs button{flex:none;gap:8px;min-height:60px;padding:17px 16px;font-size:14px}.election-navigation .election-tabs button>svg{width:18px;height:18px}}.election-navigation{border-radius:12px 12px 0 0;overflow:hidden}.election-navigation .election-tabs button{border-radius:10px 10px 0 0}@media (min-width:761px){.election-navigation .election-tabs button{white-space:normal;flex:1 1 0;min-width:0;min-height:66px;padding:18px 14px}.election-navigation .election-tabs button>span{text-align:left;max-width:210px}}@media (max-width:760px){.election-navigation .election-tabs button{white-space:normal;max-width:250px;min-height:60px}.election-navigation .election-tabs button>span{text-align:left;max-width:185px}.election-navigation .election-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid;overflow:visible}.election-navigation .election-tabs button{gap:7px;width:100%;min-width:0;max-width:none;min-height:68px;padding:14px 10px;font-size:13px}.election-navigation .election-tabs button>span{min-width:0;max-width:none}.election-navigation .election-tabs button:nth-child(n+3){border-radius:0}}
