/* Homepage signup revision, scoped to this page only. */
#san-campaign[data-san-page="hero-home-20261018"] .signup-card .consent-box { margin-top:16px; }
#san-campaign[data-san-page="hero-home-20261018"] .signup-card .consent-copy { font-size:8.4px; line-height:1.5; }
#san-campaign[data-san-page="hero-home-20261018"] .signup-card .form-actions .button { min-width:0; white-space:normal; }
#san-campaign[data-san-page="hero-home-20261018"] .signup-card .yard-sign { background:#ffc857; color:#102e43; border:2px solid #ffc857; box-shadow:0 5px 18px #d38e1733; }
#san-campaign[data-san-page="hero-home-20261018"] .signup-card .yard-sign:hover { background:#ffda85; border-color:#ffda85; }
#san-campaign[data-san-page="hero-home-20261018"] .floating-donate { left:0; right:0; bottom:0; width:100%; max-width:none; box-sizing:border-box; border-radius:0; padding:10px max(10px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px)); }
#san-campaign[data-san-page="hero-home-20261018"] .floating-donate>div { display:none; }
#san-campaign[data-san-page="hero-home-20261018"] .floating-donate>a { flex:1; width:100%; min-width:0; text-align:center; justify-content:center; padding:14px 52px; }
#san-campaign[data-san-page="hero-home-20261018"] .floating-donate>button { position:absolute; right:max(16px,env(safe-area-inset-right,0px)); top:50%; transform:translateY(-50%); background:#102e43; }
@media(max-width:767px) { #san-campaign[data-san-page="hero-home-20261018"] .floating-donate>a { font-size:15px; padding:14px 46px; } }
@media print { #san-campaign[data-san-page="hero-home-20261018"] .floating-donate { display:none; } }


/* Isolated homepage hero revision. */
#san-campaign[data-san-page="hero-home-20261018"] { overflow-x:clip; }
#san-campaign #san-hero {
  position:relative; isolation:isolate; display:block; overflow:hidden;
  width:100%; min-height:760px; padding:0; margin:0;
  color:#fff8ed; background:#071d31; border:0; border-radius:0;
}
#san-campaign #san-hero .san-hero-scene,
#san-campaign #san-hero .san-hero-shade { position:absolute; inset:0; z-index:-2; pointer-events:none; }
#san-campaign #san-hero .san-hero-scene img { display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center center; }
#san-campaign #san-hero .san-hero-shade {
  z-index:-1;
  background:linear-gradient(90deg,rgba(4,20,35,.37) 0%,rgba(4,20,35,.12) 46%,transparent 78%),linear-gradient(0deg,#05192fee 0%,#05192f80 19%,transparent 49%);
}
#san-campaign #san-hero .san-hero-shell { width:min(1440px,100%); margin:auto; padding:30px clamp(24px,4.7vw,80px) 25px; box-sizing:border-box; }
#san-campaign #san-hero .san-hero-masthead { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 40px; }
#san-campaign #san-hero .san-hero-signature { display:flex; align-items:center; gap:12px; color:#fff8ed; text-decoration:none; font-size:12px; line-height:1.1; letter-spacing:.12em; }
#san-campaign #san-hero .san-hero-signature>span:first-child { color:#ffd396; font-size:49px; line-height:1; font-weight:900; font-family:Georgia,serif; border-bottom:3px solid #fa7350; padding:0 6px 2px; }
#san-campaign #san-hero .san-hero-signature strong { display:inline-block; margin-top:3px; color:#fff8ed; font-size:14px; font-weight:850; }
#san-campaign #san-hero .san-hero-election { margin:0; padding:8px 12px; border-right:2px solid #fa7350; background:#061c31cc; text-align:right; font-size:12px; line-height:1.6; letter-spacing:.13em; }
#san-campaign #san-hero .san-hero-election strong { display:block; color:#fff8ed; font-weight:850; }
#san-campaign #san-hero .san-hero-election span { display:block; color:#ffdaa2; font-size:11px; }
#san-campaign #san-hero .san-hero-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr); gap:32px; align-items:end; }
#san-campaign #san-hero .san-hero-copy { position:relative; z-index:1; max-width:790px; }
#san-campaign #san-hero .san-hero-eyebrow { margin:0 0 18px; font-size:12px; text-transform:uppercase; font-weight:800; letter-spacing:.18em; color:#ffcf90; }
#san-campaign #san-hero .san-eyebrow-mobile { display:none; }
#san-campaign #san-hero h1 { max-width:none; margin:0 0 24px; color:#fff8ed; font-family:inherit; font-weight:850; font-size:clamp(54px,5.15vw,82px); line-height:1.035; letter-spacing:-.054em; text-wrap:balance; text-shadow:0 3px 30px #03132288; }
#san-campaign #san-hero h1 span { display:block; }
#san-campaign #san-hero h1 em { display:block; margin-top:9px; color:#ffd096; font-family:inherit; font-size:inherit; font-weight:850; font-style:normal; letter-spacing:-.054em; }
#san-campaign #san-hero .san-hero-promise { max-width:510px; margin:0 0 24px; color:#e3ebed; font-size:18px; line-height:1.5; font-weight:550; }
#san-campaign #san-hero .san-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:15px 22px; margin:0; }
#san-campaign #san-hero .san-hero-primary { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:54px; padding:15px 23px; border:1px solid #fa8767; border-radius:4px; background:#bd482b; color:#fffaf2; font-weight:800; font-size:15px; line-height:1.3; text-decoration:none; box-shadow:0 8px 28px #020a1555; }
#san-campaign #san-hero .san-hero-primary:hover { background:#d85b37; border-color:#ffb08c; transform:translateY(-2px); }
#san-campaign #san-hero .san-hero-primary span { font-size:22px; line-height:1; }
#san-campaign #san-hero .san-hero-evidence { color:#fff1dc; font-size:14px; font-weight:650; line-height:1.4; text-decoration:underline; text-underline-offset:5px; }
#san-campaign #san-hero .san-hero-evidence span { margin-left:5px; }
#san-campaign #san-hero .san-hero-voting { display:inline-flex; align-items:center; gap:10px; margin-top:19px; color:#fff1dc; font-size:13px; line-height:1.4; text-decoration:underline; text-underline-offset:4px; font-weight:650; }
#san-campaign #san-hero .san-hero-reckoning { position:relative; margin:0 0 4px; padding:22px 0 4px 22px; border:0; border-left:4px solid #fa7350; background:linear-gradient(90deg,#071d31c9,transparent); max-width:390px; }
#san-campaign #san-hero .san-hero-case { margin:0 0 13px; color:#e6d7c1; font-size:10px; font-weight:750; line-height:1.5; text-transform:uppercase; letter-spacing:.1em; }
#san-campaign #san-hero .san-hero-reckoning h2 { margin:0 0 17px; color:#fff8ed; font-size:clamp(31px,3.1vw,49px); line-height:1.02; letter-spacing:-.05em; font-family:inherit; font-weight:850; }
#san-campaign #san-hero .san-hero-reckoning h2 span { display:block; color:#fff8ed; }
#san-campaign #san-hero .san-hero-reckoning h2 strong { display:inline-block; color:#ff9477; font-weight:900; border-bottom:3px solid #fa7350; padding-bottom:6px; }
#san-campaign #san-hero .san-hero-case-fact { margin:0 0 12px; }
#san-campaign #san-hero .san-hero-case-fact strong { display:block; color:#fff8ed; font-size:31px; font-weight:850; letter-spacing:-.035em; line-height:1.2; }
#san-campaign #san-hero .san-hero-case-fact span { display:block; margin-top:4px; color:#e5e4df; font-size:14px; line-height:1.4; }
#san-campaign #san-hero .san-hero-case-context { margin:0 0 12px; max-width:280px; color:#d1dce3; font-size:12px; line-height:1.45; }
#san-campaign #san-hero .san-hero-case-link { color:#ffcf90; font-size:12px; font-weight:750; text-decoration:underline; text-underline-offset:4px; }
#san-campaign #san-hero .san-hero-footer { display:flex; justify-content:space-between; align-items:end; gap:25px; border-top:1px solid #f7d3a333; margin-top:38px; padding-top:19px; }
#san-campaign #san-hero .san-hero-footer p { margin:0; color:#c9d5df; font-size:12px; line-height:1.65; }
#san-campaign #san-hero .san-hero-footer p strong { color:#fff1db; font-weight:750; }
#san-campaign #san-hero .san-hero-footer>a { display:inline-flex; align-items:center; gap:18px; flex-shrink:0; color:#ffcf90; font-size:11px; letter-spacing:.09em; font-weight:850; text-decoration:none; }
#san-campaign #san-hero .san-hero-footer>a span { display:grid; place-items:center; width:34px; height:34px; border:1px solid #ffcf9066; border-radius:50%; font-size:19px; }
#san-campaign #san-hero a:focus-visible { outline:3px solid #ffcf90; outline-offset:6px; }
@media(min-width:1600px) { #san-campaign #san-hero { min-height:840px; } #san-campaign #san-hero .san-hero-shell { padding-top:38px; padding-bottom:32px; } #san-campaign #san-hero .san-hero-masthead { margin-bottom:50px; } }
@media(min-width:768px) and (max-width:1100px) {
  #san-campaign #san-hero .san-hero-layout { grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr); gap:20px; }
  #san-campaign #san-hero h1 { font-size:clamp(47px,5.3vw,58px); }
  #san-campaign #san-hero .san-hero-promise { font-size:16px; }
  #san-campaign #san-hero .san-hero-reckoning { padding-left:17px; }
  #san-campaign #san-hero .san-hero-actions { gap:18px; }
}
@media(max-width:767px) {
  #san-campaign #san-hero { min-height:0; }
  #san-campaign #san-hero .san-hero-scene { height:770px; bottom:auto; }
  #san-campaign #san-hero .san-hero-scene img { object-fit:cover; object-position:center top; }
  #san-campaign #san-hero .san-hero-shade { background:linear-gradient(180deg,#03152a30 0,#03152a00 160px,#03152a80 270px,#071d31eb 425px,#071d31 690px); }
  #san-campaign #san-hero .san-hero-shell { padding:22px 21px 25px; }
  #san-campaign #san-hero .san-hero-masthead { margin-bottom:214px; align-items:start; }
  #san-campaign #san-hero .san-hero-signature { font-size:9px; gap:9px; }
  #san-campaign #san-hero .san-hero-signature>span:first-child { font-size:38px; }
  #san-campaign #san-hero .san-hero-signature strong { font-size:10px; }
  #san-campaign #san-hero .san-hero-election { font-size:9px; letter-spacing:.05em; line-height:1.6; }
  #san-campaign #san-hero .san-hero-election span { font-size:8px; }
  #san-campaign #san-hero .san-hero-layout { display:flex; flex-direction:column; gap:28px; align-items:stretch; }
  #san-campaign #san-hero .san-hero-eyebrow { font-size:10px; margin-bottom:12px; }
  #san-campaign #san-hero .san-eyebrow-desktop { display:none; }
  #san-campaign #san-hero .san-eyebrow-mobile { display:block; color:#fff8ed; font-size:18px; line-height:1.2; letter-spacing:-.025em; text-transform:none; }
  #san-campaign #san-hero .san-eyebrow-mobile strong { color:#ff9477; margin-left:4px; }
  #san-campaign #san-hero h1 { margin-bottom:20px; font-size:clamp(38px,10.4vw,65px); line-height:1.025; letter-spacing:-.05em; }
  #san-campaign #san-hero h1 em { margin-top:7px; }
  #san-campaign #san-hero .san-hero-promise { font-size:15px; line-height:1.5; margin-bottom:20px; max-width:100%; }
  #san-campaign #san-hero .san-hero-actions { gap:18px; }
  #san-campaign #san-hero .san-hero-primary { width:100%; min-height:52px; font-size:14px; }
  #san-campaign #san-hero .san-hero-evidence { font-size:12px; }
  #san-campaign #san-hero .san-hero-voting { font-size:12px; margin-top:19px; }
  #san-campaign #san-hero .san-hero-reckoning { max-width:none; margin:0; padding:3px 0 3px 17px; background:none; }
  #san-campaign #san-hero .san-hero-reckoning h2 { font-size:36px; margin-bottom:13px; }
  #san-campaign #san-hero .san-hero-reckoning h2 { display:none; }
  #san-campaign #san-hero .san-hero-reckoning h2 span { display:inline; }
  #san-campaign #san-hero .san-hero-reckoning h2 strong { margin-left:8px; }
  #san-campaign #san-hero .san-hero-case-fact strong { font-size:27px; }
  #san-campaign #san-hero .san-hero-case-fact span { font-size:13px; }
  #san-campaign #san-hero .san-hero-case-context { max-width:100%; font-size:11px; }
  #san-campaign #san-hero .san-hero-case { font-size:9px; margin-bottom:9px; }
  #san-campaign #san-hero .san-hero-case-link { font-size:11px; }
  #san-campaign #san-hero .san-hero-footer { display:block; margin-top:27px; padding-top:17px; }
  #san-campaign #san-hero .san-hero-footer p { font-size:10px; line-height:1.7; }
  #san-campaign #san-hero .san-hero-footer>a { margin-top:18px; font-size:10px; }
}
@media(prefers-reduced-motion:reduce) { #san-campaign #san-hero * { scroll-behavior:auto; transition:none!important; } }
