
:root{--background:218 76% 30%;--foreground:0 0% 100%;--primary:352 78% 46%;--primary-foreground:0 0% 100%;--muted-foreground:216 40% 86%;--border:216 35% 58%;--light-muted:218 35% 32%;--light-border:216 25% 78%;--headline-accent:0 0% 100%;--ink:hsl(var(--background));--cream:hsl(var(--foreground));--muted:hsl(var(--muted-foreground));--lime:hsl(var(--primary));--line:hsl(var(--border));--orange:hsl(var(--primary))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:'DM Sans',Arial,sans-serif}a{color:inherit}button{font:inherit}::selection{background:var(--lime);color:hsl(var(--primary-foreground))}.shell{max-width:1480px;margin:auto;padding:0 clamp(20px,5vw,84px)}.eyebrow{font-family:'Space Grotesk',sans-serif;letter-spacing:.15em;text-transform:uppercase;font-size:11px;font-weight:700}.topbar{border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:700 15px 'Space Grotesk',sans-serif;letter-spacing:-.04em}.brandmark{display:grid;place-items:center;width:38px;height:38px;background:var(--lime);color:hsl(var(--primary-foreground));font-size:22px;font-weight:800}.topright{display:flex;gap:24px;align-items:center}.topright a{font-size:12px;font-weight:700;text-decoration:none}.time-pill{display:flex;align-items:center;gap:8px;border:1px solid hsl(var(--border));border-radius:100px;padding:10px 13px;font-size:11px;white-space:nowrap}.dot{width:7px;height:7px;border-radius:100%;background:var(--lime);box-shadow:0 0 12px var(--lime)}.hero{min-height:calc(100svh - 76px);display:flex;flex-direction:column;justify-content:space-between;padding-top:clamp(45px,7vw,90px);padding-bottom:32px;position:relative;overflow:hidden}.hero::before{content:'26';position:absolute;right:-.08em;top:-.3em;font:800 clamp(300px,55vw,900px) 'Space Grotesk',sans-serif;letter-spacing:-.14em;color:hsl(var(--foreground) / .04);pointer-events:none}.hero-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-tag{color:var(--cream)}.date{font-size:12px;color:hsl(var(--muted-foreground))}.hero h1{font:700 112px/1 'Space Grotesk',sans-serif;letter-spacing:0;margin:50px 0 32px;max-width:1300px;position:relative}.hero h1 em{font-style:normal;color:hsl(var(--headline-accent));text-decoration:underline;text-decoration-color:hsl(var(--primary));text-decoration-thickness:.055em;text-underline-offset:.09em}.hero h1 span{display:block;animation:headline-enter 900ms cubic-bezier(.16,1,.3,1) both}.hero h1 span:nth-child(2){animation-delay:120ms}.hero h1 span:nth-child(3){animation-delay:240ms}.hero h1 span:nth-child(4){animation-delay:360ms}.hero h1 span em{display:inline-block;animation:headline-lift 5s ease-in-out 1.4s infinite}@keyframes headline-enter{from{opacity:0;transform:translateY(35px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes headline-lift{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.hero-bottom{display:flex;gap:50px;align-items:end;justify-content:space-between;flex-wrap:wrap;position:relative}.lead{max-width:520px;font-size:clamp(17px,2vw,23px);line-height:1.5;color:hsl(var(--muted-foreground))}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;font-size:13px;font-weight:800;min-height:56px;padding:0 24px;border:1px solid hsl(var(--border));transition:transform .18s,background .18s}.btn:hover{transform:translateY(-3px)}.primary{background:var(--lime);color:hsl(var(--primary-foreground));border-color:var(--lime)}.secondary{background:transparent}.scroll-hint{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;margin-top:65px;color:hsl(var(--muted-foreground));font-size:11px;text-transform:uppercase;letter-spacing:.1em}.ticker{overflow:hidden;background:var(--lime);color:hsl(var(--primary-foreground));padding:17px 0;font:800 15px 'Space Grotesk',sans-serif;white-space:nowrap;letter-spacing:.08em}.ticker-track{display:inline-block;animation:marquee 35s linear infinite}.ticker span{margin-right:45px}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:clamp(65px,9vw,135px) 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section h2{font:700 clamp(40px,6vw,88px)/1 'Space Grotesk',sans-serif;letter-spacing:-.075em;margin:15px 0}.section-copy{max-width:470px;color:hsl(var(--muted-foreground));line-height:1.65;font-size:15px}.light{background:var(--cream);color:var(--ink)}.light .section-copy{color:hsl(var(--light-muted))}.info-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1px;background:hsl(var(--light-border));border:1px solid hsl(var(--light-border));margin-top:45px}.info-card{background:var(--cream);padding:clamp(25px,3vw,45px);min-height:290px;display:flex;flex-direction:column;justify-content:space-between}.info-card.featured{background:var(--lime);color:hsl(var(--primary-foreground))}.info-card.featured p{color:hsl(var(--primary-foreground))}.info-card .num{font:700 clamp(48px,5vw,78px)/1 'Space Grotesk',sans-serif;letter-spacing:-.075em}.info-card p{line-height:1.6;margin:13px 0 0;color:hsl(var(--light-muted));font-size:14px}.info-card a{font-size:13px;font-weight:800;text-underline-offset:4px}.mini{font:700 11px 'Space Grotesk',sans-serif;letter-spacing:.1em;text-transform:uppercase}.timeline{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid hsl(var(--border));margin-top:60px}.moment{padding:35px 23px 20px 0;border-right:1px solid hsl(var(--border));min-height:280px}.moment:not(:first-child){padding-left:23px}.moment:last-child{border-right:none}.year{color:var(--cream);font:700 clamp(47px,5vw,72px)/1 'Space Grotesk',sans-serif;letter-spacing:-.08em}.moment h3{font:700 18px 'Space Grotesk',sans-serif;margin:25px 0 12px}.moment p{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.7}.history-note{margin-top:30px;color:hsl(var(--muted-foreground));font-size:12px}.quote{background:var(--orange);color:var(--cream);padding:clamp(70px,10vw,135px) 0}.quote h2{font:700 clamp(56px,9vw,135px)/.95 'Space Grotesk',sans-serif;letter-spacing:0;max-width:1100px;margin:30px 0}.quote p{max-width:600px;line-height:1.7}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{border:1px solid hsl(var(--border));padding:30px;min-height:245px}.step b{color:var(--cream);font:700 13px 'Space Grotesk',sans-serif}.step h3{font:700 25px 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:35px 0 12px}.step p{color:hsl(var(--muted-foreground));line-height:1.65;font-size:14px}.results{border-top:1px solid var(--line)}.results-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid hsl(var(--border));padding:clamp(25px,4vw,48px);margin-top:35px}.results-panel h3{font:700 clamp(24px,3vw,40px) 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:10px 0}.results-panel p{color:hsl(var(--muted-foreground));line-height:1.6;max-width:590px}.footer{border-top:1px solid var(--line);padding:40px 0;color:hsl(var(--muted-foreground))}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px}.footer a{text-underline-offset:3px}.accent{color:var(--cream)}.hide{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}@media(min-width:651px) and (max-width:1100px){.hero h1{font-size:76px}}@media(max-width:950px){.info-grid{grid-template-columns:1fr 1fr}.info-card.featured{grid-column:1/-1}.timeline{grid-template-columns:1fr 1fr}.moment:nth-child(2){border-right:none}.moment:nth-child(-n+2){border-bottom:1px solid hsl(var(--border))}}@media(max-width:650px){.nav{min-height:65px}.topright .desktop{display:none}.hero{min-height:calc(100svh - 65px);padding-top:42px}.hero h1{font-size:46px;margin:45px 0}.hero-top{align-items:start;flex-direction:column;gap:10px}.hero-bottom{align-items:stretch}.actions,.actions .btn{width:100%}.scroll-hint{margin-top:45px}.info-grid,.steps{grid-template-columns:1fr}.info-card.featured{grid-column:auto}.info-card{min-height:245px}.section-head{align-items:start;flex-direction:column}.timeline{grid-template-columns:1fr 1fr}.moment{padding:28px 13px 10px 0;min-height:300px}.moment:not(:first-child){padding-left:13px}.moment:nth-child(3){padding-left:0}.year{font-size:51px}.moment h3{font-size:16px}.results-panel{align-items:stretch;flex-direction:column}.results-panel .btn{width:100%}.topright{gap:8px}.time-pill{font-size:10px;padding:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.election-brief{background:var(--cream);color:var(--ink);padding:40px 0;border-top:6px solid var(--lime)}.election-brief .eyebrow{color:hsl(var(--light-muted))}.election-brief h2{font:700 32px/1.15 'Space Grotesk',sans-serif;margin:12px 0 8px;letter-spacing:0}.brief-meta{font-size:12px;color:hsl(var(--light-muted));line-height:1.6}.brief-claims{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:24px}.brief-claim{border-top:1px solid hsl(var(--light-border));padding-top:16px;min-width:0}.brief-claim p{font-size:16px;line-height:1.65;margin:0 0 12px}.brief-claim a{font-size:12px;line-height:1.5;text-underline-offset:3px;display:block;margin-top:6px;overflow-wrap:anywhere}.brief-review{color:hsl(var(--primary));font-size:13px;font-weight:700;display:block;margin-bottom:12px}@media(max-width:950px){.brief-claims{grid-template-columns:1fr}}
.election-tracker{background:var(--cream);color:var(--ink);padding:64px 0;border-top:1px solid hsl(var(--light-border))}.election-tracker h2{font:700 44px/1.1 'Space Grotesk',sans-serif;letter-spacing:0;margin:12px 0 20px}.tracker-tabs{display:flex;gap:8px;margin:24px 0}.tracker-tabs .btn{min-height:44px;color:var(--ink);border-color:hsl(var(--light-border))}.tracker-tabs .btn[aria-pressed=true]{background:var(--ink);color:var(--cream)}.tracker-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:32px}.state-map{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(8,44px);gap:5px}.state-tile{border:1px solid hsl(var(--light-border));background:hsl(var(--foreground));color:var(--ink);font-size:12px;font-weight:700;border-radius:4px;cursor:pointer;min-width:0;padding:0}.state-tile.watched{background:var(--lime);color:var(--cream);border-color:var(--lime)}.state-tile[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:1px}.tracker-legend{font-size:12px;line-height:1.6;margin:15px 0}.tracker-legend i{display:inline-block;background:var(--lime);width:12px;height:12px;margin-right:6px}.state-detail{border-top:3px solid var(--lime);padding-top:18px}.state-detail h3{font:700 28px 'Space Grotesk',sans-serif;margin:0 0 14px}.state-detail p{font-size:15px;line-height:1.6}.tracker-sources{font-size:12px;line-height:1.7;margin-top:25px}.tracker-sources a{overflow-wrap:anywhere}.control-math{margin-top:45px;border-top:1px solid hsl(var(--light-border));padding-top:32px}.control-math h3{font:700 30px 'Space Grotesk',sans-serif;margin:0 0 16px}.seat-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px}.seat-party{padding:18px 0;border-top:4px solid var(--ink)}.seat-party.republicans{border-color:var(--lime)}.seat-number{font:700 48px 'Space Grotesk',sans-serif;display:block}.seat-party p{font-size:14px;line-height:1.6;margin:8px 0}.seat-slider{width:100%;accent-color:var(--ink);margin:20px 0 14px}.seat-bar{display:flex;height:18px;border:1px solid hsl(var(--light-border))}.seat-bar .dem-seats{background:var(--ink)}.seat-bar .rep-seats{background:var(--lime);flex:1}.math-output{font-size:16px;font-weight:700;line-height:1.6}.math-note{font-size:13px;line-height:1.6;color:hsl(var(--light-muted))}.seat-reset{color:var(--ink);min-height:40px;margin-top:15px}@media(max-width:950px){.tracker-layout{grid-template-columns:1fr}.election-tracker h2{font-size:34px}}@media(max-width:650px){.state-map{grid-template-rows:repeat(8,32px);gap:3px}.state-tile{font-size:9px}.seat-number{font-size:38px}.seat-stats{gap:14px}}
.state-guide,.election-news{padding:40px 0;border-top:1px solid hsl(var(--light-border))}.state-guide h2,.election-news h2{font:700 34px 'Space Grotesk',sans-serif;margin:10px 0 18px}.state-choice{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}.state-choice label{font-size:13px;font-weight:700}.state-choice select,.district-select{display:block;max-width:100%;min-height:44px;background:var(--cream);color:var(--ink);border:1px solid hsl(var(--light-border));padding:10px;font:inherit;margin-top:8px}.state-choice .btn{color:var(--ink)}.candidate-offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}.candidate-office{border-top:3px solid var(--lime);padding-top:15px;min-width:0}.candidate-office h3{margin-top:0}.candidate-office ul{padding-left:18px;line-height:1.9}.candidate-source{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.election-news a{overflow-wrap:anywhere}.election-news h3{margin-top:32px}.news-story{border-top:1px solid hsl(var(--light-border));padding-top:15px}.news-story time{font-size:12px;display:block;margin-top:12px}.state-guide p,.election-news p{line-height:1.65}@media(max-width:650px){.candidate-offices{grid-template-columns:1fr}.state-choice{align-items:stretch;flex-direction:column}}

.share-photo{width:100%;height:auto;display:block;aspect-ratio:1200/630;object-fit:cover}.share-shell{max-width:1000px;margin:auto;padding:40px 24px}.share-shell h1{font:700 52px/1.1 "Space Grotesk",sans-serif}.share-feedback{min-height:26px}.share-shell .actions{margin:24px 0}@media(max-width:650px){.share-shell h1{font-size:36px}}
.share-shell button.secondary{color:var(--cream)}
