@font-face{font-family:"CCMC Display";src:url(assets/fonts/barlow-condensed-800.woff2) format("woff2");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:"CCMC Sans";src:url(assets/fonts/source-sans-3.woff2) format("woff2");font-style:normal;font-weight:200 900;font-display:swap}:root{--navy:#082b53;--navy-deep:#041d3a;--blue:#0a71c9;--poster-blue:#0877c9;--sky:#78c8f0;--yellow:#ffc72c;--yellow-light:#ffdc69;--red:#d43c2f;--brown:#4a2a16;--cream:#fff8e9;--white:#ffffff;--ink:#0b2947;--muted:#5d6b77;--display:"CCMC Display", Impact, "Arial Narrow", sans-serif;--sans:"CCMC Sans", "Segoe UI", Arial, sans-serif;--shell:min(1180px, calc(100% - 44px))}*,*::before,*::after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;background:var(--navy-deep)}body{min-width:320px;min-height:100svh;margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);font-size:1rem;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:inherit}.shell{width:var(--shell);margin-inline:auto}.section-pad{padding-block:clamp(76px, 10vw, 132px)}.site-header{position:absolute;z-index:20;top:0;right:0;left:0;width:var(--shell);margin-inline:auto;padding-block:24px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--cream);border-bottom:1px solid rgb(255 248 233 / .3)}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.brand-copy{display:flex;flex-direction:column;line-height:.95;text-transform:uppercase}.brand-copy strong{font-family:var(--display);font-size:clamp(1.05rem, 2vw, 1.42rem);letter-spacing:.02em}.brand-copy span{margin-top:6px;color:var(--sky);font-size:.68rem;font-weight:800;letter-spacing:.15em}.site-nav{display:flex;align-items:center;gap:clamp(18px, 2.8vw, 38px)}.site-nav a{font-size:.82rem;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.site-nav a{border-bottom:2px solid #fff0}.site-nav a:hover{border-color:var(--yellow)}.hero{position:relative;isolation:isolate;min-height:770px;overflow:hidden;color:var(--cream);background:linear-gradient(135deg,#0568b6 0%,var(--poster-blue) 58%,#095da4 100%)}.hero::before{position:absolute;z-index:0;inset:0;background:url(assets/decor/blue-sunflowers.png) center / min(1400px, 118vw) auto no-repeat;opacity:.13;pointer-events:none;content:""}.hero-layout{min-height:770px;padding-top:140px;padding-bottom:82px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center}.hero-copy{position:relative;z-index:2;max-width:850px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);text-transform:uppercase}h1{max-width:820px;margin-bottom:0;color:#ffe9e4;font-size:clamp(5rem, 10vw, 9.5rem);letter-spacing:-.045em;line-height:.79;-webkit-text-stroke:2px var(--navy-deep);paint-order:stroke fill;text-shadow:5px 5px 0 var(--navy-deep)}h1 .hero-title-line,h1 em{display:block;white-space:nowrap}h1 em{position:relative;width:fit-content;color:var(--yellow);font-style:normal}h1 em::after{position:absolute;right:.02em;bottom:-.08em;left:.02em;height:.055em;background:var(--yellow);transform:rotate(-1.4deg);content:""}.intro{max-width:660px;margin:clamp(34px, 5vw, 50px) 0 30px;padding:12px 18px 11px;color:var(--navy-deep);background:rgb(255 248 233 / .94);border:3px solid var(--navy-deep);box-shadow:6px 6px 0 var(--navy-deep);font-size:clamp(1.12rem, 2vw, 1.4rem);font-weight:750;line-height:1.35}.button{display:inline-flex;align-items:center;gap:12px;padding:15px 20px 14px;border-radius:8px;font-size:.84rem;font-weight:850;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;transition:transform 160ms ease,box-shadow 160ms ease}.button:hover{transform:translateY(-2px)}.button-yellow{color:var(--navy-deep);background:var(--yellow);box-shadow:6px 6px 0 rgb(4 29 58 / .55)}.button-red{color:var(--white);background:var(--red);box-shadow:6px 6px 0 var(--navy-deep)}.button-outline{color:var(--cream);border:2px solid rgb(255 248 233 / .75);background:rgb(4 29 58 / .28)}.button-outline:hover{color:var(--navy-deep);background:var(--cream);border-color:var(--cream)}.hero-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:14px}.election-day-callout{color:var(--navy-deep);background:var(--yellow);border-block:5px solid var(--navy-deep)}.election-day-inner{min-height:170px;padding-block:24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(24px, 5vw, 64px)}.election-day-callout time{min-width:150px;display:flex;flex-direction:column;font-family:var(--display);text-transform:uppercase}.election-day-callout time span{color:var(--blue);font-size:1rem;letter-spacing:.12em}.election-day-callout time strong{font-size:clamp(3rem, 6vw, 5rem);letter-spacing:-.04em;line-height:.85}.election-day-kicker{margin-bottom:4px;color:var(--blue);font-size:.82rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.election-day-copy h2{margin-bottom:6px;font-size:clamp(2rem, 4vw, 3.4rem);letter-spacing:-.025em;line-height:.9}.election-day-copy>p:last-child{max-width:590px;margin-bottom:0;font-size:1.03rem;line-height:1.45}.election-day-button{justify-content:center;white-space:nowrap;color:var(--cream);background:var(--navy-deep);box-shadow:5px 5px 0 var(--blue)}.sunflower{position:absolute;z-index:0;top:50%;right:clamp(-230px, -8vw, -65px);width:clamp(430px, 48vw, 790px);aspect-ratio:1;transform:translateY(-50%) rotate(7deg) scale(1);opacity:.98;filter:drop-shadow(0 18px 0 rgb(4 29 58 / .12));pointer-events:none;transition:right 240ms ease,width 240ms ease,opacity 240ms ease,transform 240ms ease,filter 240ms ease}.petal,.flower-center{position:absolute;top:50%;left:50%}.petal{width:33%;height:13%;margin-top:-6.5%;transform-origin:0 50%;border-radius:7% 70% 70% 7% / 50% 70% 70% 50%;background:linear-gradient(90deg,var(--yellow),var(--yellow-light));box-shadow:inset 0 -5px 0 rgb(202 138 0 / .12)}.petal-1{transform:rotate(0deg) translateX(17%)}.petal-2{transform:rotate(30deg) translateX(17%)}.petal-3{transform:rotate(60deg) translateX(17%)}.petal-4{transform:rotate(90deg) translateX(17%)}.petal-5{transform:rotate(120deg) translateX(17%)}.petal-6{transform:rotate(150deg) translateX(17%)}.petal-7{transform:rotate(180deg) translateX(17%)}.petal-8{transform:rotate(210deg) translateX(17%)}.petal-9{transform:rotate(240deg) translateX(17%)}.petal-10{transform:rotate(270deg) translateX(17%)}.petal-11{transform:rotate(300deg) translateX(17%)}.petal-12{transform:rotate(330deg) translateX(17%)}.flower-center{width:38%;aspect-ratio:1;border:clamp(12px, 1.8vw, 26px) solid #70411f;border-radius:50%;background:radial-gradient(circle at 35% 32%,rgb(255 255 255 / .12) 0 2px,transparent 3px),radial-gradient(circle at 65% 60%,rgb(255 199 44 / .16) 0 2px,transparent 3px),var(--brown);background-size:22px 22px,18px 18px,auto;transform:translate(-50%,-50%);box-shadow:0 24px 55px rgb(0 0 0 / .28)}.section-intro{margin-bottom:clamp(42px, 6vw, 68px)}.split-heading,.candidate-intro{display:grid;grid-template-columns:1.35fr 0.65fr;align-items:end;gap:clamp(35px, 7vw, 100px)}.section-intro h2,.contact-section h2,.feature-copy h2{margin-bottom:0;font-size:clamp(3rem, 6vw, 5.6rem);letter-spacing:-.035em;line-height:.86}.section-intro>p{margin-bottom:3px;color:var(--muted);font-size:1.08rem;line-height:1.55}.timeline{margin:0;padding:0;list-style:none;border-top:2px solid var(--navy)}.timeline li{min-height:162px;display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid rgb(8 43 83 / .22)}.timeline time{padding:29px 24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:var(--cream);background:var(--navy);font-family:var(--display);text-transform:uppercase}.timeline time span{color:var(--sky);font-size:1.15rem;letter-spacing:.08em}.timeline time strong{font-size:3.2rem;line-height:.95}.timeline li>div{position:relative;padding:30px clamp(24px, 4vw, 55px);display:flex;flex-direction:column;justify-content:center}.timeline h3{margin-bottom:6px;font-size:clamp(1.55rem, 3vw, 2.25rem);letter-spacing:.01em}.timeline li>div>p:last-child{max-width:700px;margin-bottom:0;color:var(--muted);font-size:1.05rem;line-height:1.45}.timeline .featured-date time{color:var(--navy-deep);background:var(--yellow)}.timeline .featured-date time span{color:var(--navy)}.candidate-section{position:relative;isolation:isolate;overflow:hidden;color:var(--cream);background:linear-gradient(145deg,#075fa8 0%,var(--poster-blue) 42%,#064d8c 100%)}.candidate-section::before{position:absolute;z-index:0;inset:0;background-image:url(assets/decor/blue-sunflowers.png),url(assets/decor/blue-sunflowers.png);background-position:center 4%,center 96%;background-size:min(1450px, 124vw) auto;background-repeat:no-repeat;opacity:.14;pointer-events:none;content:""}.candidate-section>.shell{position:relative;z-index:1}.candidate-intro>p{color:rgb(255 248 233 / .72)}.candidate-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:560px;gap:22px}.candidate-card{position:relative;min-width:0;height:560px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);background:var(--cream);border:4px solid var(--cream);border-radius:22px;box-shadow:11px 11px 0 var(--navy-deep)}.candidate-card:nth-child(10){grid-column:2}.candidate-media{position:relative;height:230px;min-height:230px;max-height:230px;flex:0 0 230px;overflow:hidden;display:grid;place-items:center;color:var(--yellow);background:radial-gradient(circle at 70% 25%,rgb(120 200 240 / .42),transparent 31%),linear-gradient(135deg,#0b3f73,var(--navy-deep))}.candidate-media-placeholder::before{position:absolute;width:230px;aspect-ratio:1;border:2px solid rgb(255 199 44 / .27);border-radius:50%;content:""}.candidate-media-placeholder::after{position:absolute;width:150px;aspect-ratio:1;border:2px solid rgb(255 199 44 / .4);border-radius:50%;content:""}.candidate-media img{width:100%;height:230px;min-height:230px;max-height:230px;display:block;flex:none;object-fit:cover;object-position:50% 50%}.candidate-media-placeholder span{position:relative;z-index:2;font-family:var(--display);font-size:6rem;letter-spacing:-.04em}.candidate-copy{min-height:0;padding:0 28px 28px;display:flex;flex:1;flex-direction:column}.candidate-office{min-height:52px;margin:0 -28px 19px;padding:11px 28px 9px;display:flex;align-items:center;color:var(--white);background:var(--poster-blue);border-bottom:5px solid var(--yellow);font-family:var(--display);font-size:.98rem;font-weight:800;letter-spacing:.08em;line-height:1.05;text-transform:uppercase}.candidate-copy h3{margin-bottom:13px;color:var(--navy);font-size:2.15rem}.candidate-copy>p:not(.candidate-office){margin-bottom:25px;color:var(--muted);line-height:1.5}.candidate-link,.candidate-link-unavailable{margin-top:auto;align-self:flex-start;display:inline-block;padding-bottom:4px;color:var(--navy);border-bottom:3px solid var(--yellow);font-size:.78rem;font-weight:850;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.candidate-link:hover{color:var(--blue)}.candidate-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:9px}.candidate-action{min-height:38px;padding:9px 11px 8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:2px solid var(--navy);border-radius:7px;font-size:.78rem;font-weight:850;letter-spacing:.05em;line-height:1;text-decoration:none;text-transform:uppercase;transition:color 150ms ease,background 150ms ease,transform 150ms ease}.candidate-action:hover{transform:translateY(-2px)}.candidate-action-primary{color:var(--cream);background:var(--navy)}.candidate-action-primary:hover{background:var(--blue);border-color:var(--blue)}.candidate-action-secondary{color:var(--navy);background:#fff0}.candidate-action-secondary:hover{background:var(--yellow)}.comparison-section{color:var(--navy-deep);background:linear-gradient(160deg,#eef7fc 0%,var(--cream) 48%,#e4f1f8 100%)}.comparison-intro{display:grid;grid-template-columns:1.25fr 0.75fr;align-items:end;gap:clamp(35px, 7vw, 90px)}.comparison-intro>p{margin-bottom:3px;color:var(--muted);font-size:1.05rem;line-height:1.55}.comparison-jumps{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px}.comparison-jumps a{padding:10px 14px 9px;color:var(--cream);background:var(--navy);border:2px solid var(--navy);border-radius:7px;font-size:.82rem;font-weight:850;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;transition:color 150ms ease,background 150ms ease,transform 150ms ease}.comparison-jumps a:hover{color:var(--navy-deep);background:var(--yellow);transform:translateY(-2px)}.stance-icon{width:36px;height:36px;flex:0 0 36px;display:inline-grid;place-items:center;color:var(--white);border-radius:50%;font-family:var(--sans);font-size:1.65rem;font-weight:900;line-height:1}.stance-yes .stance-icon{background:#09bd4b}.stance-no .stance-icon{background:#df1725}.race-comparison{overflow:hidden;scroll-margin-top:24px;background:var(--white);border:5px solid var(--navy-deep);border-radius:24px;box-shadow:12px 12px 0 var(--navy-deep)}.race-comparison+.race-comparison{margin-top:52px}.race-comparison-header{padding:24px clamp(22px, 4vw, 42px);display:flex;align-items:end;justify-content:space-between;gap:30px;color:var(--cream);background:var(--navy-deep)}.race-office{margin-bottom:6px;color:var(--sky);font-size:.76rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.race-comparison-header h3{margin-bottom:0;font-size:clamp(2rem, 4vw, 3.6rem);line-height:.9}.race-comparison-header h3 span{color:var(--yellow)}.review-date{margin:0;color:rgb(255 248 233 / .72);font-size:.76rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.comparison-row{display:grid;grid-template-columns:minmax(180px,0.8fr) minmax(300px,1.45fr) minmax(180px,0.8fr);grid-template-areas:"candidate-a issue candidate-b";border-top:1px solid rgb(8 43 83 / .2)}.comparison-row:nth-child(odd):not(.comparison-row-head) .issue{background:#edf6fb}.comparison-row-head{color:var(--white);border-bottom:0;font-family:var(--display);font-size:clamp(1.2rem, 2.2vw, 1.7rem);letter-spacing:.02em;text-align:center;text-transform:uppercase}.comparison-row-head>*{padding:16px 18px 14px}.comparison-row-head .candidate-a{background:#0769b7}.comparison-row-head .issue{color:var(--navy-deep);background:#dfeef7}.comparison-row-head .candidate-b{background:#cc1624}.candidate-a{grid-area:candidate-a}.candidate-b{grid-area:candidate-b}.comparison-row .issue{grid-area:issue;padding:24px clamp(20px, 3vw, 34px);display:flex;flex-direction:column;justify-content:center;text-align:center}.comparison-row .issue>strong{font-family:var(--display);font-size:clamp(1.3rem, 2.2vw, 1.75rem);line-height:1.05;text-transform:uppercase}.comparison-row .issue>p:not(.issue-sources){margin:9px 0 0;color:var(--muted);font-size:.94rem;line-height:1.4}.issue-sources{margin:11px 0 0;display:flex;justify-content:center;flex-wrap:wrap;gap:7px 16px}.issue-sources a{color:var(--blue);font-size:.76rem;font-weight:800;text-decoration-color:rgb(10 113 201 / .45);text-underline-offset:3px;text-transform:uppercase}.stance{min-height:164px;padding:22px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center}.stance strong{font-size:.78rem;font-weight:900;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.stance-yes{color:#075c2a;background:rgb(9 189 75 / .12)}.stance-no{color:#94111c;background:rgb(223 23 37 / .1)}.election-feature{padding-block:clamp(70px, 9vw, 112px);color:var(--cream);background:linear-gradient(135deg,var(--navy-deep),var(--navy))}.feature-grid{padding:clamp(34px, 5vw, 68px);display:grid;grid-template-columns:0.85fr 1.15fr;align-items:center;gap:clamp(40px, 7vw, 95px);color:var(--navy-deep);background:var(--cream);border:6px solid var(--yellow);border-radius:28px;box-shadow:14px 14px 0 var(--poster-blue)}.mega-date{display:flex;align-items:flex-end;justify-content:center;gap:14px;font-family:var(--display);text-transform:uppercase}.mega-date span{padding-bottom:12px;font-size:clamp(2.2rem, 5vw, 4.5rem)}.mega-date strong{color:var(--poster-blue);font-size:clamp(8rem, 18vw, 15rem);letter-spacing:-.07em;line-height:.68;-webkit-text-stroke:2px var(--navy-deep);paint-order:stroke fill;text-shadow:5px 5px 0 var(--yellow)}.feature-copy p{max-width:590px;margin:25px 0 28px;font-size:1.14rem;line-height:1.55}.contact-section{padding-block:clamp(70px, 9vw, 105px);color:var(--cream);background:var(--blue)}.contact-layout{display:grid;grid-template-columns:0.8fr 1.2fr;align-items:end;gap:clamp(50px, 9vw, 130px)}.contact-copy p{max-width:620px;margin-bottom:28px;font-size:1.12rem;line-height:1.5}.contact-email{display:inline-flex;gap:12px;padding-bottom:5px;border-bottom:4px solid var(--yellow);font-family:var(--display);font-size:clamp(1.8rem, 4vw, 3.4rem);letter-spacing:-.015em;line-height:1;text-decoration:none;text-transform:uppercase}.site-footer{padding:72px 0 220px;color:var(--cream);background:var(--navy-deep)}.footer-layout{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center}.footer-brand .brand-copy{align-items:center}.footer-brand .brand-copy span{color:var(--sky)}.paid-for{width:100%;max-width:820px;margin:0;padding:11px 16px 10px;color:var(--navy-deep);background:var(--cream);border:3px solid var(--navy-deep);outline:2px solid var(--cream);font-size:.875rem;font-weight:800;letter-spacing:.035em;line-height:1.3;text-align:center;text-transform:uppercase}.floating-shortcuts{position:fixed;z-index:50;right:35px;bottom:16px;width:190px;display:grid;gap:10px}.floating-shortcut{position:relative;width:100%;min-height:42px;padding:10px 34px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--navy-deep);background:var(--yellow);border:2px solid var(--navy-deep);border-radius:999px;box-shadow:4px 4px 0 var(--navy-deep);font-size:.78rem;font-weight:900;letter-spacing:.07em;text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap;transition:transform 150ms ease,box-shadow 150ms ease}.floating-shortcut:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--navy-deep)}.floating-shortcut b{position:absolute;right:12px;font-size:1rem}@media (max-width:900px){.site-header{align-items:flex-start}.site-nav{justify-content:flex-end;flex-wrap:wrap;row-gap:12px}.hero-layout{grid-template-columns:1fr}.sunflower{top:50%;right:-110px;bottom:auto;width:clamp(520px, 82vw, 680px);opacity:.14;filter:none;transform:translateY(-50%) rotate(7deg) scale(.94)}.election-day-inner{grid-template-columns:auto minmax(0,1fr)}.election-day-button{grid-column:2;justify-self:start}.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate-card:nth-child(10){grid-column:auto}.feature-grid,.contact-layout{grid-template-columns:1fr}.mega-date{justify-content:flex-start}}@media (max-width:760px){.comparison-intro{grid-template-columns:1fr;align-items:start;gap:25px}.race-comparison-header{align-items:flex-start;flex-direction:column;gap:13px}.comparison-row{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"issue issue" "candidate-a candidate-b"}.comparison-row-head{grid-template-areas:"candidate-a candidate-b"}.comparison-row-head .issue{display:none}.comparison-row .issue{text-align:left}.issue-sources{justify-content:flex-start}.stance{min-height:132px}}@media (max-width:680px){:root{--shell:min(100% - 36px, 1180px)}.site-header{position:relative;width:100%;padding:20px 18px;flex-direction:column;color:var(--cream);background:var(--navy-deep);border-bottom:0}.site-header .brand{align-self:center;text-align:center}.site-header .brand-copy{align-items:center}.site-nav{width:100%;justify-content:space-between;gap:10px}.site-nav a{font-size:.71rem}.hero,.hero-layout{min-height:650px}.hero-layout{padding-top:72px;padding-bottom:76px}h1{font-size:clamp(4.6rem, 22vw, 7rem);-webkit-text-stroke-width:1.5px;text-shadow:3px 3px 0 var(--navy-deep)}.intro{box-shadow:4px 4px 0 var(--navy-deep)}.election-day-inner{padding-block:30px;grid-template-columns:1fr;gap:18px}.election-day-callout time{min-width:0}.election-day-button{grid-column:auto;justify-self:stretch}.split-heading,.candidate-intro{grid-template-columns:1fr;align-items:start;gap:25px}.timeline li{grid-template-columns:108px 1fr}.timeline time{padding-inline:16px}.timeline time strong{font-size:2.35rem}.timeline li>div{padding:26px 18px}.candidate-grid{grid-template-columns:1fr}.mega-date strong{font-size:8.5rem}.feature-grid{padding:38px 26px;border-width:4px;border-radius:20px;box-shadow:8px 8px 0 var(--poster-blue)}.election-feature .hero-actions{display:grid}.election-feature .button{justify-content:center;text-align:center}}@media (max-width:430px){.sunflower{top:50%;right:-210px;bottom:auto;width:480px}.hero-actions .button{width:100%;justify-content:center;text-align:center}.race-comparison{border-width:3px;border-radius:17px;box-shadow:7px 7px 0 var(--navy-deep)}.comparison-row-head{font-size:1.05rem}.comparison-row-head>*{padding-inline:9px}.stance{min-height:124px;padding-inline:8px}.stance-icon{width:32px;height:32px;flex-basis:32px;font-size:1.4rem}.contact-email{font-size:1.55rem}.floating-shortcuts{width:190px}.floating-shortcut{width:100%}.floating-shortcut span{display:inline}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}