/* The front door: an essay worth reading, and tools within reach. */
#view-home .home-hero{padding-top:38px;padding-bottom:36px;gap:clamp(30px,5vw,70px)}
#view-home .home-hero h1{font-size:clamp(60px,6.2vw,94px);letter-spacing:-3.6px}
#view-home .home-hero-actions{gap:10px}
#view-home .home-hero-actions .button{font-size:13px;line-height:1.4;min-height:48px;padding:14px 19px}
#view-home .home-byline{margin:0 0 23px}
.launch-quick-links{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #bfcabd;border-bottom:1px solid #bfcabd;max-width:650px}
.launch-quick-links a{display:flex;align-items:center;gap:9px;min-height:57px;padding:12px 12px 12px 0;color:#173328;font-size:12px;font-weight:600;line-height:1.4;text-decoration:none}
.launch-quick-links a+a{padding-left:17px;border-left:1px solid #bfcabd}
.launch-quick-links a>span{font-size:19px;font-weight:400;color:#406652}
.launch-quick-links b{margin-left:auto;font-size:17px;font-weight:400}
.launch-quick-links a:hover,.launch-quick-links a:focus-visible{color:#152b39;background:#e8ede2}
.launch-civic{margin:0 0 45px;box-shadow:0 1px 0 #cbd5c3;background:#e8ede2}
.launch-civic>div{padding:29px 32px 28px}
.launch-civic h2{font-size:35px;letter-spacing:-.7px}
.launch-civic p:not(.eyebrow){max-width:49ch;line-height:1.75}
.launch-card-note{display:block;margin-top:14px;color:#56685e;font-size:11px;line-height:1.5}
.launch-elections{padding:0 0 42px}
.launch-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.launch-section-heading h2{font:400 clamp(34px,4vw,49px)/1.08 Georgia,serif;letter-spacing:-1px;margin:12px 0 0}
.launch-section-heading h2 em{color:#506f55}
.launch-section-heading>.text-button{font-size:13px;flex-shrink:0;padding:12px 0;min-height:44px}
.launch-section-deck{font-size:14px;line-height:1.8;color:#56666a;max-width:72ch;margin:22px 0 25px}
.launch-race-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #c7d0c7;background:#fafaf5}
.launch-race-links>a{display:flex;flex-direction:column;min-height:225px;padding:25px 23px;color:#152b39;text-decoration:none;transition:background .15s ease}
.launch-race-links>a+a{border-left:1px solid #c7d0c7}
.launch-race-links>a:hover{background:#e8ede2}
.launch-race-links .eyebrow{font-size:9px;letter-spacing:1.3px;line-height:1.6;color:#56715f;margin:0}
.launch-race-links h3{font:400 29px/1.13 Georgia,serif;letter-spacing:-.5px;margin:16px 0 12px}
.launch-race-links p{font-size:12px;line-height:1.7;margin:0 0 24px;max-width:27ch;color:#53666a}
.launch-link-action{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:600;margin-top:auto;padding-top:15px;border-top:1px solid #d5ddd2}
.launch-link-action b{font-size:19px;font-weight:400}
.launch-race-links>a.launch-race-all{background:#e8ede2}
.launch-race-links>a.launch-race-all:hover{background:#dce6d6}
.launch-evidence-note{font-size:11px;line-height:1.7;color:#63716b;margin:15px 0 0;max-width:86ch}
.launch-follow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center;padding:30px 32px;margin:0 0 36px;border:1px solid #c7d0c7;background:#eeeede}
.launch-follow h2{font:400 32px/1.15 Georgia,serif;letter-spacing:-.5px;margin:10px 0 12px}
.launch-follow p:not(.eyebrow){font-size:13px;line-height:1.8;max-width:64ch;margin:0;color:#53666a}
.launch-follow-actions{display:grid;justify-items:start;gap:12px}
.launch-follow-actions .button{font-size:12px;min-height:46px;padding:13px 18px}
.launch-follow-actions .text-button{font-size:12px;min-height:44px;display:flex;align-items:center}
#view-home a:focus-visible{outline:2px solid #a14f2c;outline-offset:4px}
@media(max-width:950px){
  #view-home .home-hero h1{font-size:65px;letter-spacing:-2.5px}
  .launch-quick-links{grid-template-columns:1fr}
  .launch-quick-links a{min-height:46px}
  .launch-quick-links a+a{border-left:0;border-top:1px solid #cbd5c3;padding-left:0}
  .launch-race-links>a{padding:22px 18px}
  .launch-race-links h3{font-size:26px}
}
@media(max-width:600px){
  #view-home .home-hero{padding:26px 0 24px}
  #view-home .home-hero h1{font-size:clamp(48px,13.7vw,67px);line-height:1.01;letter-spacing:-2.5px;margin:17px 0 18px}
  #view-home .home-deck{font-size:21px;line-height:1.4;margin:0 0 15px;max-width:26ch}
  #view-home .home-description{font-size:14px;line-height:1.75;margin:0;max-width:47ch}
  #view-home .home-hero-actions{display:grid;grid-template-columns:1fr;justify-items:stretch;gap:8px;margin:21px 0 15px}
  #view-home .home-hero-actions .button{display:flex;align-items:center;justify-content:center;min-height:47px;font-size:13px;padding:12px 14px}
  #view-home .home-byline{font-size:10px;margin:0 0 19px;line-height:1.65;max-width:42ch}
  #view-home .home-essay-feature{display:none}
  .launch-quick-links{grid-template-columns:1fr 1fr}
  .launch-quick-links a{font-size:11px;min-height:54px;padding:10px 10px 10px 0;gap:6px}
  .launch-quick-links a+a{padding-left:11px;border-top:0;border-left:1px solid #bfcabd}
  .launch-quick-links a>span{font-size:18px}
  .launch-quick-links b{font-size:15px}
  .launch-civic{margin:0 0 32px}
  .launch-civic>div{padding:25px 23px}
  .launch-civic h2{font-size:32px;letter-spacing:-.6px;margin:12px 0}
  .launch-civic p:not(.eyebrow){font-size:13px;line-height:1.75;margin-bottom:18px}
  .launch-civic .button{font-size:12px;min-height:46px;line-height:1.45;padding:12px 16px}
  .launch-card-note{font-size:10px;line-height:1.6;margin-top:12px}
  .launch-elections{padding-bottom:30px}
  .launch-section-heading{display:block}
  .launch-section-heading h2{font-size:36px;letter-spacing:-.8px;margin-top:13px}
  .launch-section-heading>.text-button{display:inline-flex;align-items:center;margin-top:13px;padding:0;min-height:44px;font-size:12px}
  .launch-section-deck{font-size:13px;line-height:1.8;margin:9px 0 20px}
  .launch-race-links{grid-template-columns:1fr}
  .launch-race-links>a{padding:23px;min-height:0}
  .launch-race-links>a+a{border-left:0;border-top:1px solid #c7d0c7}
  .launch-race-links h3{font-size:29px;margin:12px 0 10px}
  .launch-race-links p{font-size:12px;max-width:42ch;margin-bottom:17px}
  .launch-link-action{font-size:12px;min-height:35px;padding-top:12px}
  .launch-evidence-note{font-size:10px;line-height:1.7;margin-top:13px}
  .launch-follow{grid-template-columns:1fr;gap:19px;padding:25px 23px;margin-bottom:30px}
  .launch-follow h2{font-size:30px}
  .launch-follow p:not(.eyebrow){font-size:12px;line-height:1.85}
  .launch-follow-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}
}
@media(prefers-reduced-motion:reduce){.launch-race-links>a{transition:none}}

.record-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.record-actions .button{font-size:14px;min-height:44px}.record-actions [role=status]{width:100%;font-size:14px;color:#245b48}

.election-entry{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px 25px;background:#e8ede2;border:1px solid #c7d0c7;margin:0 0 25px}.election-entry label{display:block;font-size:13px;font-weight:600;margin:0 0 10px}.election-entry select{width:100%;min-height:46px;padding:10px 35px 10px 12px;border:1px solid #b8c5bb;background:#fffefa;color:#152b39;font:14px inherit}.election-entry p{font-size:11px;line-height:1.7;color:#53666a;margin:9px 0 0}.state-race-overview{padding:30px;border:1px solid #bdcbbf;margin:0 0 28px;background:#fafaf5}.state-race-overview h2{font:400 43px/1.12 Georgia,serif;letter-spacing:-1px;margin:16px 0}.state-race-overview>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#53666a;max-width:70ch}.state-race-overview ul{padding:0;list-style:none;margin:20px 0}.state-top-races{display:grid;grid-template-columns:1fr 1fr;gap:15px}.state-race-overview li>a{display:grid;gap:10px;border:1px solid #ccd6cc;padding:19px;text-decoration:none;color:#152b39;background:#f5f4ed;height:100%}.state-race-overview li>a:hover{background:#e8ede2}.state-race-overview li strong{font:400 24px/1.2 Georgia,serif}.state-race-overview li span{font-size:13px;line-height:1.7}.state-race-overview li small{font-size:10px;color:#416451;line-height:1.6}.state-house-list{border-top:1px solid #ccd6cc;padding-top:15px}.state-house-list summary{font-size:14px;cursor:pointer;min-height:44px;padding-top:10px}.state-house-list ul{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.state-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.state-actions a{font-size:12px;min-height:44px;display:flex;align-items:center}
@media(max-width:600px){.election-entry{grid-template-columns:1fr;gap:19px;padding:20px;margin-bottom:22px}.election-entry label{font-size:12px}.election-entry select{font-size:13px}.state-race-overview{padding:22px}.state-race-overview h2{font-size:34px}.state-top-races,.state-house-list ul{grid-template-columns:1fr}.state-race-overview li strong{font-size:25px}}

.candidate-checked{font-size:11px!important;color:#5a7164;line-height:1.7}.candidate-official-links{margin:25px 0;padding:20px;background:#e8ede2}.candidate-official-links h3{font:400 25px/1.2 Georgia,serif;margin:0 0 15px}.candidate-official-links a{display:block;font-size:13px;line-height:1.7;min-height:44px;padding:6px 0}.candidate-official-links p{font-size:11px;line-height:1.7;color:#53666a;margin:12px 0 0}

.race-reviewed-badge{display:inline-block;margin-top:9px;padding:4px 7px;background:#e4ebde;color:#315942;font-size:9px;line-height:1.5;font-weight:600;letter-spacing:.03em}
@media(min-width:951px){#view-home .home-hero{align-items:start;padding-top:32px}#view-home .home-hero h1{margin:18px 0}#view-home .home-deck{max-width:none;font-size:24px;margin-bottom:18px}#view-home .home-byline{margin-bottom:18px}}
body:has(#view-home:not([hidden])) .guide-launcher{display:none}
