*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:18px;line-height:1.6;font-weight:400;color:#1b2a38;background:#ffffff}
img{max-width:100%;display:block}
a{color:#c8443c}
h1,h2,h3,h4{font-family:'Outfit','Gilroy',Arial,sans-serif;line-height:1.1;color:#16283a;font-weight:700;letter-spacing:-.5px}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.eyebrow{display:inline-block;font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:14px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#c8443c;margin-bottom:12px}
.section{padding:88px 0}
.section-head{max-width:720px;margin-bottom:44px}
.section-head h2{font-size:48px;margin-bottom:14px}
.section-head p{font-size:20px;color:#44576a}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Outfit','Gilroy',Arial,sans-serif;font-weight:700;font-size:17px;text-decoration:none;padding:15px 32px;border-radius:999px;border:2px solid transparent;transition:background .2s,color .2s,border-color .2s,transform .2s;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.btn-red{background:#c8443c;color:#ffffff}
.btn-red:hover{background:#a8352e}
.btn-yellow{background:#f4c542;color:#16283a}
.btn-yellow:hover{background:#e6b42a}
.btn-outline{border-color:#ffffff;color:#ffffff;background:transparent}
.btn-outline:hover{background:#ffffff;color:#16283a}
.btn-navy{background:#16283a;color:#ffffff}
.btn-navy:hover{background:#2f4a62}
a:focus-visible,.btn:focus-visible,button:focus-visible{outline:3px solid #f4c542;outline-offset:3px}

/* Top bar */
.topbar{background:#8fc1d8;color:#16283a;font-size:16px}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px}
.topbar strong{font-weight:700}
.topbar a{color:#16283a;font-weight:700;background:#ffffff;padding:8px 20px;border-radius:999px;text-decoration:none;white-space:nowrap;font-size:15px}
.topbar a:hover{background:#16283a;color:#ffffff}

/* Header */
.header{background:#16283a;position:sticky;top:0;z-index:50;border-bottom:1px solid #2f4a62}
.header .container{display:flex;align-items:center;justify-content:space-between;height:84px}
.logo img{height:60px;width:auto}
.nav{display:flex;align-items:center;gap:6px}
.nav a{color:#ffffff;text-decoration:none;font-weight:600;font-size:16px;padding:8px 12px;border-radius:6px}
.nav a:hover,.nav a.active{color:#f4c542}
.nav-cta{display:flex;gap:10px;margin-left:14px}
.nav-cta .btn{padding:10px 22px;font-size:15px}
.menu-toggle{display:none;background:none;border:2px solid #ffffff;border-radius:8px;width:46px;height:42px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.menu-toggle span{display:block;width:22px;height:2px;background:#ffffff}

/* Hero */
.hero{background:#16283a;color:#ffffff;padding:80px 0 96px;position:relative;overflow:hidden}
.hero .container{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.hero h1{color:#ffffff;font-size:72px;font-weight:800;letter-spacing:-1.5px;line-height:1.02;margin-bottom:18px}
.hero h1 span{color:#f4c542}
.hero .tagline{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:28px;font-weight:500;color:#8fc1d8;margin-bottom:20px}
.hero .tagline strong{color:#ffffff}
.hero p.lead{font-size:20px;color:#d6e2ec;max-width:560px;margin-bottom:34px}
.hero-btns{display:flex;flex-wrap:wrap;gap:14px}
.hero-search{display:flex;align-items:center;background:#ffffff;border-radius:16px;padding:8px 8px 8px 22px;max-width:580px;margin-bottom:28px;box-shadow:0 14px 34px rgba(0,0,0,.28)}
.hero-search svg{flex:0 0 22px;width:22px;height:22px;stroke:#16283a;fill:none;stroke-width:2;stroke-linecap:round}
.hero-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:18px;color:#1b2a38;padding:12px 14px}
.hero-search input::placeholder{color:#6b7c8d}
.hero-search button{flex:0 0 auto;background:#16283a;color:#ffffff;border:none;border-radius:10px;padding:14px 22px;font-family:'Outfit','Gilroy',Arial,sans-serif;font-weight:700;font-size:16px;cursor:pointer;transition:background .2s}
.hero-search button:hover{background:#c8443c}
.hero-search:focus-within{box-shadow:0 0 0 3px #f4c542,0 14px 34px rgba(0,0,0,.28)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.hero-media{position:relative}
.hero-media img{width:100%;height:460px;object-fit:cover;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.hero-badge{position:absolute;left:-28px;bottom:32px;background:#c8443c;color:#ffffff;padding:18px 24px;border-radius:14px;max-width:250px;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.hero-badge strong{display:block;font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:30px;line-height:1}
.hero-badge span{font-size:15px}

/* Quick actions */
.quick{background:#f6f3ec;padding:0 0 88px}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;transform:translateY(-44px);margin-bottom:-44px}
.quick-card{background:#ffffff;border-radius:16px;padding:30px 26px;text-decoration:none;color:#1b2a38;box-shadow:0 10px 30px rgba(22,40,58,.12);border-top:5px solid #c8443c;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.quick-card:nth-child(2){border-top-color:#f4c542}
.quick-card:nth-child(3){border-top-color:#8fc1d8}
.quick-card:nth-child(4){border-top-color:#2f4a62}
.quick-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(22,40,58,.18)}
.quick-icon{width:52px;height:52px;border-radius:12px;background:#16283a;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.quick-icon svg{width:26px;height:26px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.quick-card h3{font-size:24px;margin-bottom:8px}
.quick-card p{font-size:16px;color:#44576a;flex:1}
.quick-card .more{margin-top:16px;font-weight:700;color:#c8443c;font-size:16px}

/* Issues (big tent) */
.issues-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.issue{border:2px solid #e3e8ee;border-radius:16px;padding:30px 24px;background:#ffffff;transition:border-color .2s}
.issue:hover{border-color:#16283a}
.issue .num{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:44px;font-weight:700;color:#8fc1d8;line-height:1;margin-bottom:12px}
.issue h3{font-size:24px;margin-bottom:10px}
.issue p{font-size:16px;color:#44576a;margin-bottom:14px}
.issue a{font-weight:700;font-size:16px;text-decoration:none}
.issue a:hover{text-decoration:underline}

/* Voter info (data-style) */
.voter{background:#eef4f8}
.voter-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:32px;align-items:start}
.panel{background:#ffffff;border-radius:16px;box-shadow:0 6px 24px rgba(22,40,58,.08);overflow:hidden}
.panel-head{background:#16283a;color:#ffffff;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.panel-head h3{color:#ffffff;font-size:24px}
.panel-head span{font-size:14px;color:#8fc1d8;font-weight:600;letter-spacing:1px;text-transform:uppercase}
.district-table{width:100%;border-collapse:collapse}
.district-table th{text-align:left;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#6b7c8d;padding:14px 28px;border-bottom:2px solid #e3e8ee;font-weight:700}
.district-table td{padding:20px 28px;border-bottom:1px solid #e3e8ee;vertical-align:top;font-size:16px}
.district-table tr:last-child td{border-bottom:none}
.district-table tr:hover td{background:#f8fafc}
.dist-num{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:22px;font-weight:700;color:#16283a;white-space:nowrap}
.dist-date{display:block;font-size:13px;color:#6b7c8d;margin-top:2px}
.district-table a{font-weight:700;text-decoration:none;white-space:nowrap}
.district-table a:hover{text-decoration:underline}
.tools{padding:10px 28px 28px}
.tool{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid #e3e8ee;text-decoration:none;color:#1b2a38}
.tool:last-child{border-bottom:none}
.tool-icon{flex:0 0 44px;height:44px;border-radius:50%;background:#fbe9e7;display:flex;align-items:center;justify-content:center}
.tool-icon svg{width:22px;height:22px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tool h4{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:18px;font-weight:700;color:#16283a;margin-bottom:2px}
.tool p{font-size:15px;color:#44576a}
.tool:hover h4{color:#c8443c}
.voter-note{margin-top:22px;font-size:15px;color:#44576a}

/* Volunteer */
.volunteer-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.vol-media{position:relative}
.vol-media img{width:100%;height:520px;object-fit:cover;border-radius:18px}

.steps{list-style:none;margin:28px 0 30px;counter-reset:step}
.steps li{counter-increment:step;position:relative;padding:0 0 22px 64px}
.steps li:before{content:counter(step);position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:#16283a;color:#f4c542;font-family:'Outfit','Gilroy',Arial,sans-serif;font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center}
.steps li h4{font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:19px;font-weight:700;margin-bottom:2px}
.steps li p{font-size:16px;color:#44576a}
.roles{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.roles span{background:#eef4f8;color:#16283a;border-radius:999px;padding:7px 16px;font-size:15px;font-weight:600}

/* Posts */
.posts{background:#f6f3ec}
.posts-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:44px}
.posts-top .section-head{margin-bottom:0}
.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.post{background:#ffffff;border-radius:16px;overflow:hidden;text-decoration:none;color:#1b2a38;display:flex;flex-direction:column;box-shadow:0 6px 20px rgba(22,40,58,.07);transition:transform .2s,box-shadow .2s}
.post:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(22,40,58,.14)}
.post-img{height:210px;background:#2f4a62;overflow:hidden}
.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.post:hover .post-img img{transform:scale(1.05)}
.post-body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1}
.post-meta{font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#c8443c;margin-bottom:10px}
.post h3{font-size:23px;margin-bottom:10px}
.post p{font-size:16px;color:#44576a;flex:1}
.post .more{margin-top:16px;font-weight:700;color:#16283a;font-size:16px}

/* Values */
.values{background:#16283a;color:#ffffff}
.values .section-head h2{color:#ffffff}
.values .section-head p{color:#c9d6e2}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.value{background:#1f3548;border:1px solid #2f4a62;border-radius:16px;padding:30px 26px}
.value h3{color:#f4c542;font-size:26px;margin-bottom:10px}
.value p{font-size:16px;color:#d6e2ec}

/* Join band */
.join{background:#c8443c;color:#ffffff;padding:80px 0}
.join .container{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.join h2{color:#ffffff;font-size:50px;font-weight:800;margin-bottom:14px}
.join p{font-size:20px;color:#fde7e4}
.join-levels{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.join-levels li{background:#a8352e;border-radius:10px;padding:12px 16px;font-weight:600;font-size:16px}
.join-box{background:#ffffff;color:#1b2a38;border-radius:18px;padding:34px;text-align:center}
.join-box h3{font-size:28px;margin-bottom:10px}
.join-box p{color:#44576a;font-size:16px;margin-bottom:22px}
.join-box .btn{width:100%;margin-bottom:12px}

/* Footer */
.footer{background:#0f1d2b;color:#c9d6e2;padding:72px 0 28px;font-size:16px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.footer img{height:70px;width:auto;margin-bottom:18px}
.footer h4{color:#ffffff;font-size:18px;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px}
.footer ul{list-style:none}
.footer li{margin-bottom:10px}
.footer a{color:#c9d6e2;text-decoration:none}
.footer a:hover{color:#f4c542}
.footer-bottom{border-top:1px solid #243b53;padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px;color:#8fa3b6}

/* Responsive */
@media (max-width:1100px){
  .nav a{padding:8px 8px;font-size:15px}
  .hero h1{font-size:62px}
  .issues-grid,.values-grid{grid-template-columns:repeat(2,1fr)}
  .quick-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .menu-toggle{display:flex}
  .nav{display:none;position:absolute;top:84px;left:0;right:0;background:#16283a;flex-direction:column;align-items:stretch;padding:12px 24px 24px;border-bottom:3px solid #c8443c;gap:0}
  .nav.open{display:flex}
  .nav a{padding:14px 4px;border-bottom:1px solid #2f4a62;font-size:17px;border-radius:0}
  .nav-cta{margin:18px 0 0;gap:12px}
  .nav-cta .btn{flex:1;padding:14px 20px;border-bottom:2px solid transparent;border-radius:999px}
  .nav-cta .btn-outline{border-color:#ffffff}
  .hero .container,.voter-grid,.volunteer-grid,.join .container{grid-template-columns:1fr}
  .hero{padding:60px 0 90px}
  .hero-media img{height:360px}
  .hero-badge{left:16px}
  .posts-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  
  .volunteer-grid{gap:40px}
}
@media (max-width:640px){
  body{font-size:17px}
  .container{padding:0 16px}
  .section{padding:64px 0}
  .section-head h2{font-size:36px}
  .section-head p{font-size:18px}
  .topbar .container{flex-direction:column;text-align:center;gap:8px}
  .header .container{height:72px}
  .nav{top:72px;padding:8px 16px 20px}
  .logo img{height:48px}
  .hero h1{font-size:46px}
  .hero .tagline{font-size:22px}
  .hero p.lead{font-size:18px}
  .hero-btns .btn{flex:1 1 100%}
  .hero-search{padding:6px 6px 6px 14px;border-radius:12px}
  .hero-search input{font-size:16px;padding:10px}
  .hero-search button{padding:12px 14px;font-size:14px}
  .hero-search svg{display:none}
  .hero-media img{height:260px}
  .hero-badge{position:static;margin-top:-30px;margin-left:16px;margin-right:16px;max-width:none;position:relative}
  .quick-grid,.issues-grid,.values-grid,.posts-grid,.footer-grid,.join-levels{grid-template-columns:1fr}
  .quick-grid{transform:translateY(-36px);margin-bottom:-36px;gap:14px}
  .quick-card{padding:24px 22px}
  .posts-top{flex-direction:column;align-items:flex-start}
  .vol-media img{height:320px}
  .join h2{font-size:38px}
  .join-box{padding:26px 20px}
  .panel-head{padding:18px 20px}
  .district-table thead{display:none}
  .district-table,.district-table tbody,.district-table tr,.district-table td{display:block;width:100%}
  .district-table tr{border-bottom:1px solid #e3e8ee;padding:16px 20px}
  .district-table td{border:none;padding:4px 0}
  .tools{padding:6px 20px 20px}
}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes zoomIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes floatBadge{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.js .hero .eyebrow,.js .hero h1,.js .hero .tagline,.js .hero p.lead,.js .hero-search,.js .hero-btns{opacity:0;animation:fadeUp .8s cubic-bezier(.22,.61,.36,1) forwards}
.js .hero .eyebrow{animation-delay:.05s}
.js .hero h1{animation-delay:.15s}
.js .hero .tagline{animation-delay:.3s}
.js .hero p.lead{animation-delay:.42s}
.js .hero-search{animation-delay:.54s}
.js .hero-btns{animation-delay:.66s}
.js .hero-media img{opacity:0;animation:zoomIn 1s cubic-bezier(.22,.61,.36,1) .3s forwards}
.js .hero-badge{opacity:0;animation:fadeUp .7s ease .9s forwards,floatBadge 4s ease-in-out 1.8s infinite}
.js .header{animation:fadeIn .6s ease both}
.js .reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}
.js .reveal.reveal-left{transform:translateX(-40px)}
.js .reveal.reveal-right{transform:translateX(40px)}
.js .reveal.in-view{opacity:1;transform:none}
.quick-card,.issue,.post,.value,.tool,.btn,.roles span{will-change:transform}
.value{transition:transform .3s,border-color .3s,background .3s}
.value:hover{transform:translateY(-6px);border-color:#f4c542;background:#243d52}
.issue{transition:border-color .2s,transform .3s,box-shadow .3s}
.issue:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(22,40,58,.1)}
.quick-icon{transition:transform .35s,background .3s}
.quick-card:hover .quick-icon{transform:rotate(-8deg) scale(1.08);background:#c8443c}
.quick-card:hover .quick-icon svg{stroke:#ffffff}
.more{transition:letter-spacing .3s}
.quick-card:hover .more,.post:hover .more{letter-spacing:.5px}
.roles span{transition:background .25s,color .25s,transform .25s}
.roles span:hover{background:#16283a;color:#ffffff;transform:translateY(-2px)}
.header{transition:box-shadow .3s,background .3s}
.header.scrolled{box-shadow:0 8px 24px rgba(0,0,0,.25)}
.nav a{transition:color .2s}
.nav.open{animation:fadeIn .3s ease}
.menu-toggle span{transition:transform .3s,opacity .3s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
  .js .reveal,.js .hero *{opacity:1 !important;transform:none !important}
}
/* Prevent side-slide animations from causing horizontal scroll */
html,body{overflow-x:clip}
@media (max-width:640px){
  .js .reveal.reveal-left,.js .reveal.reveal-right{transform:translateY(34px)}
  .js .reveal.in-view{transform:none}
}

/* Header buttons: keep pill shape + correct hover colors (overrides .nav a) */
.nav .nav-cta .btn{border-radius:999px;padding:10px 22px;font-size:15px;border:2px solid transparent}
.nav .nav-cta .btn-outline{border-color:#ffffff;color:#ffffff;background:transparent}
.nav .nav-cta .btn-outline:hover{background:#ffffff;color:#16283a;border-color:#ffffff}
.nav .nav-cta .btn-yellow{background:#f4c542;color:#16283a}
.nav .nav-cta .btn-yellow:hover{background:#ffffff;color:#16283a}
.btn-red:hover{background:#a8352e;color:#ffffff}
.btn-navy:hover{background:#c8443c;color:#ffffff}
.btn-yellow:hover{background:#ffffff;color:#16283a}
.join-box .btn-navy:hover{background:#2f4a62;color:#ffffff}
.join-box .btn-red:hover{background:#a8352e;color:#ffffff}
@media (max-width:960px){
  .nav .nav-cta .btn{padding:14px 20px;border-bottom-width:2px}
}

/* Election toolkit hover: no layout shift */
.tool{position:relative;transition:none}
.tool:hover{padding-left:0}
.tool-icon{transition:background .25s,transform .25s}
.tool-icon svg{transition:stroke .25s}
.tool h4{transition:color .25s}
.tool:hover .tool-icon{background:#c8443c;transform:scale(1.06)}
.tool:hover .tool-icon svg{stroke:#ffffff}
.tool:hover h4{color:#c8443c}

/* Volunteer image + join tiers */
.vol-media img{box-shadow:0 20px 50px rgba(22,40,58,.18)}
.join-levels li:last-child:nth-child(odd){grid-column:1 / -1}

/* ===== Inner pages ===== */
.page-hero{background:#16283a;color:#ffffff;padding:64px 0 72px;position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:60px solid #1f3548}
.page-hero .container{position:relative;z-index:1}
.page-hero .eyebrow{color:#8fc1d8}
.page-hero h1{color:#ffffff;font-size:64px;font-weight:800;letter-spacing:-1.5px;margin-bottom:16px}
.page-hero .lead{font-size:20px;color:#d6e2ec;max-width:760px}
.breadcrumb{display:flex;gap:10px;align-items:center;font-size:15px;color:#8fa3b6;margin-bottom:26px}
.breadcrumb a{color:#c9d6e2;text-decoration:none}
.breadcrumb a:hover{color:#f4c542}
.page-body{background:#ffffff}
.btn-sm{padding:10px 20px;font-size:15px}

/* Events embed */
.embed-card{background:#ffffff;border:2px solid #e3e8ee;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(22,40,58,.08)}
.embed-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;border-bottom:2px solid #e3e8ee;background:#f8fafc}
.embed-card-head h2{font-size:28px}
.embed-card-body{padding:24px;min-height:600px}
.embed-card-body iframe{width:100%;border:0}

/* Volunteer */
.prose h2{font-size:42px;margin-bottom:20px}
.prose p{font-size:18px;color:#44576a;margin-bottom:18px}
.inline-ctas{margin-top:28px}
.tasks-section{background:#f6f3ec}
.tasks-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.task{background:#ffffff;border-radius:16px;padding:26px 22px;box-shadow:0 6px 20px rgba(22,40,58,.06);border-top:4px solid #8fc1d8;transition:transform .3s,box-shadow .3s,border-color .3s}
.task:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(22,40,58,.12);border-top-color:#c8443c}
.task-icon{width:48px;height:48px;border-radius:12px;background:#16283a;display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background .3s}
.task-icon svg{width:24px;height:24px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.task:hover .task-icon{background:#c8443c}
.task:hover .task-icon svg{stroke:#ffffff}
.task p{font-size:16px;color:#1b2a38;font-weight:500;line-height:1.5}
.tasks-note{margin-top:36px;font-size:18px;color:#44576a;max-width:820px}

.rights-section{background:#eef4f8;padding:72px 0}
.rights-callout{display:grid;grid-template-columns:72px 1fr auto;gap:28px;align-items:center;background:#ffffff;border-radius:18px;padding:36px;box-shadow:0 8px 26px rgba(22,40,58,.08);border-left:6px solid #c8443c}
.rights-icon{width:72px;height:72px;border-radius:50%;background:#fbe9e7;display:flex;align-items:center;justify-content:center}
.rights-icon svg{width:34px;height:34px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rights-text h2{font-size:28px;margin-bottom:10px}
.rights-text p{font-size:16px;color:#44576a}

@media (max-width:1100px){
  .tasks-grid{grid-template-columns:repeat(2,1fr)}
  .rights-callout{grid-template-columns:72px 1fr}
  .rights-callout .btn{grid-column:1 / -1;justify-self:start}
}
@media (max-width:960px){
      .page-hero h1{font-size:52px}
}
@media (max-width:640px){
  .page-hero{padding:44px 0 52px}
  .page-hero h1{font-size:40px}
  .page-hero .lead{font-size:18px}
  .page-hero:after{width:240px;height:240px;border-width:36px;right:-100px;top:-100px}
  .prose h2{font-size:32px}
  .tasks-grid{grid-template-columns:1fr}
  .embed-card-head{flex-direction:column;align-items:flex-start;padding:18px 20px}
  .embed-card-body{padding:12px;min-height:480px}
          .rights-callout{grid-template-columns:1fr;padding:26px 22px;text-align:left}
  .rights-callout .btn{width:100%}
}

/* ===== Shared inner-page layout ===== */
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.narrow{max-width:860px}
.sticky{position:sticky;top:110px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split-media{position:relative}
.split-media img{width:100%;height:480px;object-fit:cover;border-radius:18px;box-shadow:0 20px 50px rgba(22,40,58,.16);background:#2f4a62}
.credit{display:block;margin-top:10px;font-size:13px;color:#6b7c8d}
.credit a{color:#6b7c8d}
.prose-lead{font-size:20px !important;color:#1b2a38 !important}
.detail-grid{display:grid;grid-template-columns:340px 1fr;gap:48px;align-items:start}
.detail-grid-right{grid-template-columns:1fr 360px}
.side-card{background:#ffffff;border-radius:18px;padding:30px;box-shadow:0 8px 26px rgba(22,40,58,.08);border-top:5px solid #f4c542}
.side-card h3{font-size:26px;margin-bottom:12px}
.side-card p{font-size:16px;color:#44576a;margin-bottom:12px}
.side-card p:last-child{margin-bottom:0}

/* ===== Values bento ===== */
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.bento-card{border-radius:22px;padding:36px;position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s}
.bento-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(22,40,58,.16)}
.bento-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
.bento-icon{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;transition:transform .35s}
.bento-card:hover .bento-icon{transform:rotate(-8deg) scale(1.08)}
.bento-icon svg{width:30px;height:30px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bento-num{font-size:56px;font-weight:800;line-height:1;letter-spacing:-2px;opacity:.18}
.bento-card h2{font-size:34px;margin-bottom:14px}
.bento-card p{font-size:17px;margin-bottom:12px}
.bento-card p:last-child{margin-bottom:0}
.bento-action{background:#f4c542;color:#16283a}
.bento-action .bento-icon{background:#16283a}
.bento-action .bento-icon svg{stroke:#f4c542}
.bento-action .bento-num{color:#16283a}
.bento-quote{font-size:24px !important;font-weight:600;line-height:1.35;color:#16283a}
.bento-nonviolence{grid-column:span 2;background:#16283a;color:#d6e2ec}
.bento-nonviolence h2{color:#ffffff}
.bento-nonviolence .bento-icon{background:#c8443c}
.bento-nonviolence .bento-icon svg{stroke:#ffffff}
.bento-nonviolence .bento-num{color:#ffffff}
.bento-nonviolence:after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;border:44px solid #1f3548}
.bento-nonviolence p{position:relative;z-index:1;max-width:680px}
.bento-tent{background:#dcecf4;color:#1b2a38}
.bento-tent .bento-icon{background:#ffffff}
.bento-tent .bento-icon svg{stroke:#16283a}
.bento-tent .bento-num{color:#16283a}
.bento-trans{grid-column:span 2;background:#ffffff;border:2px solid #e3e8ee;color:#44576a}
.bento-trans:hover{border-color:#16283a}
.bento-trans .bento-icon{background:#fbe9e7}
.bento-trans .bento-icon svg{stroke:#c8443c}
.bento-trans .bento-num{color:#16283a}
.bento-trans-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}
.bento-actions{display:flex;flex-direction:column;gap:12px}

/* ===== Volunteer: journey ===== */
.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}
.journey:before{content:"";position:absolute;top:44px;left:12%;right:12%;height:2px;background:repeating-linear-gradient(90deg,#b9c6d2 0 8px,transparent 8px 16px);z-index:0}
.journey-step{position:relative;z-index:1;background:#ffffff;border:2px solid #e3e8ee;border-radius:20px;padding:32px 28px;transition:border-color .3s,transform .3s,box-shadow .3s}
.journey-step:hover{border-color:#16283a;transform:translateY(-6px);box-shadow:0 18px 36px rgba(22,40,58,.1)}
.journey-num{position:absolute;top:-16px;right:24px;width:36px;height:36px;border-radius:50%;background:#c8443c;color:#ffffff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:16px}
.journey-icon{width:64px;height:64px;border-radius:18px;background:#16283a;display:flex;align-items:center;justify-content:center;margin-bottom:22px;transition:background .3s}
.journey-step:hover .journey-icon{background:#c8443c}
.journey-icon svg{width:30px;height:30px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.journey-step:hover .journey-icon svg{stroke:#ffffff}
.journey-step h3{font-size:24px;margin-bottom:10px}
.journey-step p{font-size:16px;color:#44576a}
.journey-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-weight:700;font-size:16px;text-decoration:none;color:#c8443c}
.journey-link svg{width:18px;height:18px;stroke:#c8443c;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.journey-link:hover svg{transform:translateX(4px)}

/* ===== Volunteer: sign-up band + Action Network form restyle ===== */
.signup-band{background:#16283a;padding:96px 0;position:relative;overflow:hidden}
.signup-band:before{content:"";position:absolute;left:-140px;top:-140px;width:420px;height:420px;border-radius:50%;border:60px solid #1f3548}
.signup-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start;position:relative;z-index:1}
.signup-copy{position:sticky;top:120px}
.signup-copy .eyebrow{color:#f4c542}
.signup-copy h2{color:#ffffff;font-size:46px;margin-bottom:18px}
.signup-copy p{color:#c9d6e2;font-size:18px}
.signup-note{display:flex;gap:16px;align-items:flex-start;margin-top:28px;background:#1f3548;border:1px solid #2f4a62;border-radius:16px;padding:20px}
.signup-note-icon{flex:0 0 44px;height:44px;border-radius:12px;background:#f4c542;display:flex;align-items:center;justify-content:center}
.signup-note-icon svg{width:22px;height:22px;stroke:#16283a;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.signup-note p{font-size:16px;color:#d6e2ec}
.an-form{background:#ffffff;border-radius:22px;padding:36px;box-shadow:0 24px 60px rgba(0,0,0,.3);min-height:480px}
.an-form #can_embed_form{background:transparent !important;border:0 !important;padding:0 !important;margin:0 !important;max-width:none !important;font-family:'Outfit','Gilroy',Arial,sans-serif !important;color:#1b2a38 !important}
.an-form #can_embed_form_inner{padding:0 !important}
.an-form #can_embed_form h2{font-family:'Outfit','Gilroy',Arial,sans-serif !important;font-size:26px !important;font-weight:700 !important;letter-spacing:-.3px !important;text-transform:none !important;text-align:left !important;color:#16283a !important;margin:0 0 6px !important;padding:0 !important;border:0 !important}
.an-form #can_embed_form h2:after,.an-form #can_embed_form h4{display:none !important}
.an-form #can_embed_form form{margin-top:18px !important}
.an-form #can_embed_form #form_col1,.an-form #can_embed_form #form_col2{width:100% !important;float:none !important;padding:0 !important;margin:0 !important}
.an-form #can_embed_form #form_col1{display:grid !important;grid-template-columns:1fr 1fr;gap:14px}
.an-form #can_embed_form #form_col1 > *{margin:0 !important}
.an-form #can_embed_form #form_col1 .core_field:nth-child(n+3),.an-form #can_embed_form #form_col1 > div:not(.core_field),.an-form #can_embed_form #form_col1 > ul,.an-form #can_embed_form #form_col1 > p{grid-column:1 / -1}
.an-form #can_embed_form input[type="text"],.an-form #can_embed_form input[type="email"],.an-form #can_embed_form input[type="tel"],.an-form #can_embed_form select,.an-form #can_embed_form textarea{width:100% !important;height:auto !important;border:1.5px solid #cfd8e1 !important;border-radius:12px !important;padding:15px 16px !important;font-size:16px !important;font-family:'Outfit','Gilroy',Arial,sans-serif !important;color:#1b2a38 !important;background:#f8fafc !important;box-shadow:none !important;transition:border-color .2s,box-shadow .2s,background .2s !important}
.an-form #can_embed_form input:focus,.an-form #can_embed_form select:focus{border-color:#16283a !important;background:#ffffff !important;box-shadow:0 0 0 4px #dcecf4 !important;outline:none !important}
.an-form #can_embed_form label,.an-form #can_embed_form .check_radio_field label,.an-form #can_embed_form li{font-family:'Outfit','Gilroy',Arial,sans-serif !important;font-size:15px !important;line-height:1.45 !important;color:#44576a !important}
.an-form #can_embed_form p{font-family:'Outfit','Gilroy',Arial,sans-serif !important;font-size:16px !important;color:#1b2a38 !important}
.an-form #can_embed_form .international_link-wrap,.an-form #can_embed_form .international_link{font-size:13px !important;color:#6b7c8d !important}
.an-form #can_embed_form input[type="checkbox"]{accent-color:#c8443c;width:18px !important;height:18px !important;margin-right:8px !important}
.an-form #can_embed_form .check_radio_field,.an-form #can_embed_form .control-group,.an-form #can_embed_form ul{background:#f6f3ec !important;border-radius:12px !important;padding:14px 16px !important;margin:6px 0 !important;list-style:none !important;border:0 !important}
.an-form #can_embed_form input[type="submit"],.an-form #can_embed_form .button,.an-form #can_embed_form button{width:100% !important;background:#c8443c !important;border:0 !important;border-radius:999px !important;padding:17px 24px !important;font-family:'Outfit','Gilroy',Arial,sans-serif !important;font-size:17px !important;font-weight:700 !important;letter-spacing:.3px !important;text-transform:none !important;color:#ffffff !important;cursor:pointer !important;box-shadow:0 10px 24px rgba(200,68,60,.3) !important;transition:background .2s,transform .2s !important;margin:10px 0 0 !important;height:auto !important}
.an-form #can_embed_form input[type="submit"]:hover,.an-form #can_embed_form .button:hover{background:#a8352e !important;transform:translateY(-2px) !important}
.an-form #can_embed_form #form_col2 .clearfix,.an-form #can_embed_form .clearfix{border:0 !important}
.an-form #can_embed_form #d_sharing{border-top:1px solid #e3e8ee !important;padding-top:14px !important;margin-top:14px !important}
.an-form #can_embed_form #action_info,.an-form #can_embed_form #action_info *{font-size:13px !important;color:#6b7c8d !important;border:0 !important;padding:0 !important}
.an-form #can_embed_form #action_info{margin-top:18px !important;padding-top:16px !important;border-top:1px solid #e3e8ee !important}
.an-form #can_embed_form #logo_wrap{display:none !important}

/* Volunteer: tasks note */
.tasks-note{display:flex;gap:18px;align-items:center;margin-top:36px;background:#ffffff;border-radius:16px;padding:22px 26px;border-left:5px solid #16283a;max-width:none}
.tasks-note-icon{flex:0 0 48px;height:48px;border-radius:50%;background:#dcecf4;display:flex;align-items:center;justify-content:center}
.tasks-note-icon svg{width:24px;height:24px;stroke:#16283a;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tasks-note p{font-size:17px;color:#1b2a38;margin:0}

/* ===== Campaigns ===== */
.qa{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
.qa-item{background:#f6f3ec;border-radius:16px;padding:22px 24px;border-left:5px solid #c8443c}
.qa-item:nth-child(2){border-left-color:#f4c542}
.qa-item span{display:block;font-size:30px;font-weight:800;color:#16283a;line-height:1;margin-bottom:6px}
.qa-item p{margin:0 !important;font-size:17px !important;color:#44576a !important}
.compare-section{background:#eef4f8}
.compare{display:grid;grid-template-columns:1fr auto 1.4fr;gap:24px;align-items:stretch;max-width:1000px;margin:0 auto}
.compare-card{background:#ffffff;border-radius:20px;padding:34px;box-shadow:0 8px 26px rgba(22,40,58,.08);transition:transform .3s}
.compare-card:hover{transform:translateY(-5px)}
.compare-card-dark{background:#16283a;color:#d6e2ec}
.compare-card-dark h3{color:#ffffff}
.compare-icon{width:56px;height:56px;border-radius:14px;background:#fbe9e7;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.compare-card-dark .compare-icon{background:#f4c542}
.compare-icon svg{width:28px;height:28px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.compare-card-dark .compare-icon svg{stroke:#16283a}
.compare-card h3{font-size:26px;margin-bottom:10px}
.compare-card p{font-size:17px}
.compare-vs{align-self:center;width:56px;height:56px;border-radius:50%;background:#c8443c;color:#ffffff;font-weight:800;display:flex;align-items:center;justify-content:center;text-transform:uppercase;font-size:15px}
.compare-note{text-align:center;margin-top:30px;font-size:17px;color:#44576a}
.compare-note a{font-weight:700}
.focus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.focus-card{position:relative;background:#ffffff;border:2px solid #e3e8ee;border-radius:20px;padding:30px 26px;min-height:230px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;transition:border-color .3s,transform .3s,background .3s}
.focus-card:hover{border-color:#16283a;background:#16283a;transform:translateY(-6px)}
.focus-card:hover h3{color:#ffffff}
.focus-num{position:absolute;top:18px;right:22px;font-size:48px;font-weight:800;color:#eef4f8;line-height:1;transition:color .3s}
.focus-card:hover .focus-num{color:#243d52}
.focus-icon{position:absolute;top:26px;left:26px;width:52px;height:52px;border-radius:14px;background:#16283a;display:flex;align-items:center;justify-content:center;transition:background .3s}
.focus-card:hover .focus-icon{background:#f4c542}
.focus-icon svg{width:26px;height:26px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.focus-card:hover .focus-icon svg{stroke:#16283a}
.focus-card h3{font-size:21px;line-height:1.25;transition:color .3s}

/* ===== Resources ===== */
.res-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.res-card{position:relative;display:flex;flex-direction:column;background:#ffffff;border:2px solid #e3e8ee;border-radius:20px;padding:34px;text-decoration:none;color:#1b2a38;transition:border-color .3s,transform .3s,box-shadow .3s}
.res-card:hover{border-color:#16283a;transform:translateY(-6px);box-shadow:0 18px 36px rgba(22,40,58,.1)}
.res-icon{width:60px;height:60px;border-radius:16px;background:#16283a;display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:background .3s}
.res-card:hover .res-icon{background:#c8443c}
.res-icon svg{width:28px;height:28px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.res-card:hover .res-icon svg{stroke:#ffffff}
.res-tag{position:absolute;top:34px;right:34px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#16283a;background:#eef4f8;border-radius:999px;padding:6px 14px}
.res-card h3{font-size:26px;margin-bottom:10px}
.res-card p{font-size:16px;color:#44576a;flex:1}
.res-more{display:inline-flex;align-items:center;gap:6px;margin-top:20px;font-weight:700;color:#c8443c}
.res-more svg{width:18px;height:18px;stroke:#c8443c;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.res-card:hover .res-more svg{transform:translateX(5px)}

/* ===== Public comments guide ===== */
.tips{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tip{position:relative;background:#f6f3ec;border-radius:20px;padding:32px 28px;transition:transform .3s,background .3s}
.tip:hover{transform:translateY(-6px);background:#fbf1d6}
.tip-num{position:absolute;top:22px;right:24px;font-size:40px;font-weight:800;color:#e8e1d0;line-height:1}
.tip-icon{width:56px;height:56px;border-radius:14px;background:#c8443c;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.tip-icon svg{width:26px;height:26px;stroke:#ffffff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tip h3{font-size:23px;margin-bottom:8px}
.tip p{font-size:16px;color:#44576a}
.script-card{background:#16283a;color:#ffffff;border-radius:20px;padding:34px;margin-bottom:24px;position:relative}
.script-label{display:inline-block;background:#f4c542;color:#16283a;font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:16px}
.script-card p{font-size:19px;line-height:1.8;color:#e6eef5;margin-bottom:12px}
.script-card p:last-child{margin-bottom:0}
.blank{display:inline-block;min-width:140px;border-bottom:2px dashed #f4c542;margin:0 4px;vertical-align:baseline;height:1.1em}
.policy-list{display:grid;gap:16px}
.policy{background:#ffffff;border-radius:18px;padding:26px 28px;border-left:5px solid #8fc1d8;box-shadow:0 6px 20px rgba(22,40,58,.06);transition:border-color .3s,transform .3s}
.policy:hover{border-left-color:#c8443c;transform:translateX(0) translateY(-3px)}
.policy-tag{display:inline-block;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#c8443c;margin-bottom:6px}
.policy h3{font-size:22px;margin-bottom:8px}
.policy p{font-size:16px;color:#44576a}
.voice-card{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;background:#c8443c;color:#fde7e4;border-radius:22px;padding:44px}
.voice-card h2{color:#ffffff;font-size:38px;margin-bottom:14px}
.voice-card p{font-size:17px;margin-bottom:10px}
.voice-card a:not(.btn){color:#ffffff;font-weight:700}

/* ===== Municipality meetings ===== */
.jump{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;position:sticky;top:96px;z-index:5;background:#eef4f8;padding:12px 0}
.jump a{display:inline-flex;align-items:center;gap:10px;background:#ffffff;border:2px solid #d5dee7;color:#16283a;font-weight:700;text-decoration:none;padding:10px 18px;border-radius:999px;font-size:16px;transition:background .2s,color .2s,border-color .2s}
.jump a span{background:#eef4f8;color:#16283a;border-radius:999px;padding:1px 9px;font-size:13px;transition:background .2s}
.jump a:hover{background:#16283a;color:#ffffff;border-color:#16283a}
.jump a:hover span{background:#f4c542}
.muni-group{margin-bottom:44px;scroll-margin-top:170px}
.muni-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.muni-head h2{font-size:34px}
.muni-head span{font-size:15px;color:#6b7c8d;font-weight:600}
.muni-table{width:100%;border-collapse:collapse}
.muni-table th{text-align:left;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#ffffff;background:#16283a;padding:16px 22px;font-weight:700}
.muni-table td{padding:18px 22px;border-bottom:1px solid #e3e8ee;vertical-align:top;font-size:16px;color:#44576a}
.muni-table tr:last-child td{border-bottom:0}
.muni-table tbody tr{transition:background .2s}
.muni-table tbody tr:hover{background:#f8fafc}
.muni-table td a{font-weight:700;color:#16283a;text-decoration:none}
.muni-table td a:hover{color:#c8443c;text-decoration:underline}
.body-type{display:block;font-size:14px;color:#6b7c8d;margin-top:2px}
.time-pill{display:inline-block;background:#fbe9e7;color:#a8352e;font-weight:700;font-size:14px;border-radius:999px;padding:4px 12px;white-space:nowrap}
.muni-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#16283a;border-radius:18px;padding:28px 32px;margin-top:10px}
.muni-cta p{color:#ffffff;font-size:20px;font-weight:600}

/* ===== Article / press ===== */
.article{font-size:18px;color:#1b2a38;line-height:1.75}
.article p{margin-bottom:20px}
.article h2{font-size:30px;margin:40px 0 16px}
.article h3{font-size:22px;margin:26px 0 10px}
.article ul{margin:0 0 22px 22px}
.article li{margin-bottom:8px}
.article a{font-weight:600}
.dateline{font-weight:700;color:#c8443c;font-size:15px !important;letter-spacing:.5px;text-transform:uppercase}
.chips{list-style:none;margin:0 0 22px !important;display:flex;flex-wrap:wrap;gap:10px}
.chips li{background:#16283a;color:#ffffff;border-radius:999px;padding:8px 18px;font-weight:600;font-size:16px;margin:0 !important}
.article blockquote{border-left:5px solid #f4c542;background:#f6f3ec;border-radius:0 16px 16px 0;padding:24px 28px;margin:28px 0;font-size:20px;font-style:italic;color:#16283a}
.article blockquote p{margin:0}
.link-list{list-style:none;margin-left:0 !important;border:2px solid #e3e8ee;border-radius:16px;overflow:hidden}
.link-list li{padding:14px 20px;border-bottom:1px solid #e3e8ee;margin:0 !important;font-size:16px}
.link-list li:last-child{border-bottom:0}
.event-box{background:#16283a;color:#d6e2ec;border-radius:20px;padding:30px}
.event-box h3{color:#ffffff;font-size:26px;margin-bottom:18px}
.event-box dl div{padding:14px 0;border-bottom:1px solid #2f4a62}
.event-box dt{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#f4c542;margin-bottom:4px}
.event-box dt svg{width:16px;height:16px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.event-box dd{font-size:16px;color:#ffffff}
.event-box .btn{width:100%;margin-top:22px}
.event-contact{margin-top:24px;padding-top:20px;border-top:1px solid #2f4a62}
.event-contact h4{color:#ffffff;font-size:17px;margin-bottom:8px}
.event-contact p{font-size:15px;margin-bottom:4px;word-break:break-word}
.event-contact a{color:#8fc1d8}
.event-contact a:hover{color:#f4c542}

/* ===== News ===== */
.featured-wrap{margin-bottom:28px}
.post-featured{display:grid !important;grid-template-columns:1.15fr 1fr}
.post-featured .post-img{height:auto;min-height:380px}
.post-featured .post-body{padding:44px;justify-content:center}
.post-featured h3{font-size:36px}
.post-featured p{font-size:18px;flex:0}
.post-noimg{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#16283a}
.post-noimg svg{width:44px;height:44px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.post-noimg span{color:#ffffff;font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase}

/* ===== Post detail ===== */
.article-hero{padding-bottom:140px}
.article-hero h1{font-size:54px}
.article-meta{display:flex;align-items:center;gap:14px;margin-top:10px}
.avatar{width:50px;height:50px;border-radius:50%;background:#f4c542;color:#16283a;font-weight:800;display:flex;align-items:center;justify-content:center}
.article-meta strong{display:block;color:#ffffff;font-size:16px}
.article-meta strong a{color:#ffffff}
.article-meta span{font-size:14px;color:#8fa3b6}
.article-section{padding:0 0 80px}
.article-figure{margin-top:-100px;margin-bottom:44px;position:relative;z-index:2}
.article-figure img{width:100%;max-height:560px;object-fit:cover;border-radius:20px;box-shadow:0 24px 60px rgba(22,40,58,.25);background:#2f4a62}
.article-lead{font-size:22px;font-weight:500;color:#16283a}
.callout{background:#fbe9e7;border-left:5px solid #c8443c;border-radius:0 16px 16px 0;padding:20px 24px;margin:26px 0;font-size:17px}
.article-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:26px;border-top:2px solid #e3e8ee}
.back-link{font-weight:700;text-decoration:none;color:#16283a}
.back-link:hover{color:#c8443c}
.article-foot-ctas{display:flex;gap:10px}

/* ===== Responsive: inner pages ===== */
@media (max-width:1100px){
  .bento{grid-template-columns:1fr 1fr}
  .bento-nonviolence,.bento-trans{grid-column:1 / -1}
  .focus-grid{grid-template-columns:repeat(2,1fr)}
  .detail-grid,.detail-grid-right{grid-template-columns:1fr}
  .sticky{position:static}
  .signup-grid{grid-template-columns:1fr}
  .signup-copy{position:static}
}
@media (max-width:960px){
  .split{grid-template-columns:1fr;gap:36px}
  .split-media img{height:340px}
  .journey{grid-template-columns:1fr}
  .journey:before{display:none}
  .compare{grid-template-columns:1fr}
  .compare-vs{justify-self:center}
  .tips{grid-template-columns:1fr}
  .post-featured{grid-template-columns:1fr !important}
  .post-featured .post-img{min-height:260px}
  .post-featured .post-body{padding:28px}
  .post-featured h3{font-size:28px}
  .voice-card{grid-template-columns:1fr}
  .muni-table thead{display:none}
  .muni-table,.muni-table tbody,.muni-table tr,.muni-table td{display:block;width:100%}
  .muni-table tr{padding:18px 20px;border-bottom:1px solid #e3e8ee}
  .muni-table td{border:0;padding:4px 0}
  .muni-table td:before{content:attr(data-label);display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#8fa3b6}
  .muni-table td:first-child:before{display:none}
  .article-hero h1{font-size:42px}
  .jump{top:84px}
}
@media (max-width:640px){
  .bento{grid-template-columns:1fr}
  .bento-card{padding:26px 22px}
  .bento-card h2{font-size:28px}
  .bento-quote{font-size:20px !important}
  .bento-trans-grid{grid-template-columns:1fr}
  .bento-actions .btn{width:100%}
  .signup-band{padding:64px 0}
  .signup-copy h2{font-size:34px}
  .an-form{padding:22px 18px}
  .an-form #can_embed_form #form_col1{grid-template-columns:1fr}
  .focus-grid,.res-grid{grid-template-columns:1fr}
  .focus-card{min-height:190px}
  .res-card{padding:26px 22px}
  .res-tag{top:26px;right:22px}
  .qa{grid-template-columns:1fr}
  .script-card{padding:24px 20px}
  .script-card p{font-size:17px}
  .blank{min-width:90px}
  .voice-card{padding:28px 22px}
  .voice-card h2{font-size:30px}
  .voice-card .btn{width:100%}
  .muni-head h2{font-size:28px}
  .muni-cta{flex-direction:column;align-items:flex-start;padding:24px 20px}
  .muni-cta .btn{width:100%}
  .jump{top:72px;gap:8px}
  .jump a{padding:8px 14px;font-size:15px}
  .article{font-size:17px}
  .article h2{font-size:26px}
  .article-hero{padding-bottom:110px}
  .article-hero h1{font-size:32px}
  .article-figure{margin-top:-80px}
  .article-lead{font-size:19px}
  .article-foot-ctas{width:100%}
  .article-foot-ctas .btn{flex:1}
  .compare-card{padding:26px 22px}
  .tasks-note{flex-direction:column;align-items:flex-start}
}

/* Fixes: reserve image space on post detail; voice card not red next to red join band */
.article-figure img{aspect-ratio:16 / 9;height:auto}
.voice-card{background:#f4c542;color:#16283a}
.voice-card h2{color:#16283a}
.voice-card a:not(.btn){color:#a8352e}
.voice-card .btn-yellow{background:#16283a;color:#ffffff}
.voice-card .btn-yellow:hover{background:#c8443c;color:#ffffff}

/* ===== Campaigns (live layout) ===== */
.feature-image-wrap{background:#ffffff;padding-top:56px}
.feature-image{margin:0}
.feature-image img{width:100%;height:460px;object-fit:cover;border-radius:22px;box-shadow:0 20px 50px rgba(22,40,58,.16);background:#2f4a62}
.feature-image figcaption{margin-top:10px;font-size:13px;color:#6b7c8d;text-align:center}
.feature-image figcaption a{color:#6b7c8d}
.whatwhy{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-bottom:64px}
.whatwhy h2{font-size:48px}
.whatwhy .qa{margin-top:0}
.compare-lead{text-align:center;font-size:24px;font-weight:700;color:#16283a;margin-bottom:26px}
.compare-card p{font-size:18px;line-height:1.6}
.compare-card-dark p{color:#e6eef5}
.compare{grid-template-columns:1fr auto 1.4fr}

/* ===== Resources: bookmark card (mirrors live Ghost bookmark) ===== */
.bookmark{display:grid;grid-template-columns:1fr 340px;background:#ffffff;border:2px solid #e3e8ee;border-radius:22px;overflow:hidden;text-decoration:none;color:#1b2a38;max-width:1000px;transition:border-color .3s,transform .3s,box-shadow .3s}
.bookmark:hover{border-color:#16283a;transform:translateY(-6px);box-shadow:0 20px 40px rgba(22,40,58,.12)}
.bookmark-content{padding:40px;display:flex;flex-direction:column}
.bookmark-title{font-size:30px;margin-bottom:12px;transition:color .3s}
.bookmark:hover .bookmark-title{color:#c8443c}
.bookmark-desc{font-size:17px;color:#44576a;margin-bottom:20px}
.bookmark-meta{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#16283a}
.bookmark-meta img{border-radius:4px}
.bookmark-meta .dot{color:#8fa3b6}
.bookmark .res-more{margin-top:auto;padding-top:22px}
.bookmark:hover .res-more svg{transform:translateX(5px)}
.bookmark-thumb{background:#16283a;display:flex;align-items:center;justify-content:center;padding:30px}
.bookmark-thumb img{width:100%;height:auto;object-fit:contain}
@media (max-width:960px){
  .whatwhy{grid-template-columns:1fr;gap:24px}
  .whatwhy h2{font-size:38px}
  .compare{grid-template-columns:1fr}
  .bookmark{grid-template-columns:1fr}
  .bookmark-thumb{order:-1;min-height:180px}
  .feature-image img{height:320px}
}
@media (max-width:640px){
  .whatwhy h2{font-size:32px}
  .compare-lead{font-size:20px}
  .bookmark-content{padding:26px 22px}
  .bookmark-title{font-size:24px}
  .feature-image-wrap{padding-top:36px}
  .feature-image img{height:240px}
}

/* ===== Header nav fit (News added) ===== */
.logo{flex:0 0 auto}
.nav a,.nav-cta .btn{white-space:nowrap}
@media (max-width:1320px){
  .nav{gap:2px}
  .nav a{padding:8px 9px;font-size:15px}
  .nav-cta{margin-left:8px;gap:8px}
  .nav .nav-cta .btn{padding:10px 18px}
}
@media (max-width:1140px){
  .menu-toggle{display:flex}
  .nav{display:none;position:absolute;top:84px;left:0;right:0;background:#16283a;flex-direction:column;align-items:stretch;padding:12px 24px 24px;border-bottom:3px solid #c8443c;gap:0}
  .nav.open{display:flex}
  .nav a{padding:14px 4px;border-bottom:1px solid #2f4a62;font-size:17px;border-radius:0}
  .nav-cta{margin:18px 0 0;gap:12px}
  .nav .nav-cta .btn{flex:1;padding:14px 20px;border-bottom-width:2px}
}
@media (max-width:640px){
  .nav{top:72px;padding:8px 16px 20px}
}

/* ===== Featured post: compact, flyer shown in full ===== */
.post-featured{grid-template-columns:420px 1fr !important;align-items:stretch;max-height:none}
.post-featured .post-img{height:420px;min-height:0;background:#16283a;display:flex;align-items:center;justify-content:center}
.post-featured .post-img img{width:100%;height:100%;object-fit:contain}
.post-featured:hover .post-img img{transform:scale(1.03)}
.post-featured .post-body{padding:40px 48px;justify-content:center}
.post-featured h3{font-size:34px;margin-bottom:14px}
.post-featured .more{margin-top:24px}
/* Post detail: show flyer-style featured images uncropped */
.article-figure{background:#16283a;border-radius:20px;box-shadow:0 24px 60px rgba(22,40,58,.25);overflow:hidden}
.article-figure img{aspect-ratio:auto;max-height:620px;width:100%;object-fit:contain;box-shadow:none;border-radius:0;display:block;margin:0 auto}
@media (max-width:960px){
  .post-featured{grid-template-columns:1fr !important}
  .post-featured .post-img{height:auto;aspect-ratio:1 / 1;max-height:420px}
  .post-featured .post-body{padding:26px 24px 30px}
  .post-featured h3{font-size:26px}
}

/* ===== News list: magazine layout ===== */
.news-top{background:#f6f3ec;padding:64px 0 0}
.news-top-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:stretch}
.news-lead{display:grid;grid-template-columns:1fr 1fr;background:#ffffff;border-radius:22px;overflow:hidden;text-decoration:none;color:#1b2a38;box-shadow:0 10px 30px rgba(22,40,58,.08);transition:transform .3s,box-shadow .3s}
.news-lead:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(22,40,58,.14)}
.news-lead-img{background:#16283a;display:flex;align-items:center;justify-content:center;min-height:380px}
.news-lead-img img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.news-lead:hover .news-lead-img img{transform:scale(1.03)}
.news-lead-body{padding:36px 34px;display:flex;flex-direction:column;justify-content:center}
.news-badge{align-self:flex-start;background:#c8443c;color:#ffffff;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:5px 12px;margin-bottom:14px}
.news-lead-body h2{font-size:30px;margin-bottom:12px}
.news-lead-body p{font-size:16px;color:#44576a}
.news-lead-body .more{margin-top:20px;font-weight:700;color:#16283a}
.cand-panel{background:#16283a;border-radius:22px;padding:28px;display:flex;flex-direction:column}
.cand-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.cand-head svg{width:28px;height:28px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cand-head h3{color:#ffffff;font-size:24px}
.cand-list{display:flex;flex-direction:column;flex:1}
.cand-item{position:relative;display:block;padding:18px 44px 18px 0;border-top:1px solid #2f4a62;text-decoration:none}
.cand-date{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#8fc1d8}
.cand-item h4{color:#ffffff;font-size:18px;line-height:1.3;margin-top:4px;transition:color .2s}
.cand-go{position:absolute;right:0;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:#1f3548;display:flex;align-items:center;justify-content:center;transition:background .2s}
.cand-go svg{width:16px;height:16px;stroke:#ffffff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.cand-item:hover h4{color:#f4c542}
.cand-item:hover .cand-go{background:#c8443c}
.news-main{padding-top:64px}
.news-main-grid{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start}
.news-list-head{border-bottom:3px solid #16283a;padding-bottom:12px;margin-bottom:8px}
.news-list-head h2{font-size:28px}
.news-list{display:flex;flex-direction:column}
.news-row{display:grid;grid-template-columns:220px 1fr;gap:26px;padding:24px 0;border-bottom:1px solid #e1dccf;text-decoration:none;color:#1b2a38;align-items:center}
.news-row-img{height:150px;border-radius:14px;overflow:hidden;background:#16283a}
.news-row-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.news-row:hover .news-row-img img{transform:scale(1.06)}
.news-row-img .post-noimg svg{width:36px;height:36px}
.news-row h3{font-size:22px;margin-bottom:6px;transition:color .2s}
.news-row:hover h3{color:#c8443c}
.news-row p{font-size:16px;color:#44576a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-row .more{display:inline-block;margin-top:8px;font-weight:700;font-size:15px;color:#16283a}
.news-side{position:sticky;top:110px;display:flex;flex-direction:column;gap:20px}
.side-box{background:#ffffff;border-radius:18px;padding:24px;box-shadow:0 6px 20px rgba(22,40,58,.06)}
.side-box h3{font-size:20px;margin-bottom:14px}
.side-box-red{background:#c8443c}
.side-box-red h3{color:#ffffff;font-size:22px}
.side-box-red .btn{width:100%;margin-top:10px}
.side-link{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e3e8ee;text-decoration:none;color:#16283a;font-weight:600;transition:color .2s}
.side-link svg{width:20px;height:20px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 20px}
.side-link:hover{color:#c8443c}
@media (max-width:1100px){
  .news-top-grid{grid-template-columns:1fr}
  .news-main-grid{grid-template-columns:1fr}
  .news-side{position:static;display:grid;grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
  .news-lead{grid-template-columns:1fr}
  .news-lead-img{min-height:0;aspect-ratio:1 / 1;max-height:400px}
  .news-lead-body{padding:24px 22px 28px}
  .news-lead-body h2{font-size:26px}
  .news-side{grid-template-columns:1fr}
  .news-row{grid-template-columns:110px 1fr;gap:16px;padding:18px 0;align-items:start}
  .news-row-img{height:90px;border-radius:10px}
  .news-row h3{font-size:18px}
  .news-row p{display:none}
  .news-row .more{display:none}
  .news-top{padding-top:40px}
}

/* ===== Article body components (migrated Ghost cards) ===== */
.article figure{margin:30px 0}
.article figure img{width:100%;height:auto;border-radius:14px;background:#eef4f8}
.article figcaption{font-size:14px;color:#6b7c8d;text-align:center;margin-top:8px}
.article figure.embed{position:relative;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#16283a}
.article figure.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.article hr{border:0;border-top:2px solid #e3e8ee;margin:36px 0}
.article ol{margin:0 0 22px 22px}
.article sup{font-size:.7em}
.article blockquote strong{font-style:normal}
.article h2 a,.article h3 a{color:inherit;text-decoration:underline;text-decoration-color:#c8443c}
.btnp{margin:18px 0 26px}
.btnp .btn{text-decoration:none;color:#ffffff}
.callout{font-style:normal}
.callout-link{display:grid;grid-template-columns:96px 1fr;gap:6px 22px;align-items:center;background:#f6f3ec;border-left:5px solid #16283a}
.callout-link > a:first-child,.callout-link > figure{grid-row:span 3;margin:0}
.callout-link figure{margin:0 !important}
.callout-link figure img{width:96px;height:96px;object-fit:contain;border-radius:14px;background:#ffffff}
.callout-link p,.callout-link h2{margin:0 !important}
.callout-link h2{font-size:22px}
.callout-link .btnp{margin:6px 0 0 !important}
.callout-discord{background:#eef0ff;border-left-color:#5865f2}
.callout-discord .btn-red{background:#5865f2}
.callout-discord .btn-red:hover{background:#4752c4}
.inline-bookmark{display:block;border:2px solid #e3e8ee;border-radius:16px;padding:20px 24px;margin:28px 0;text-decoration:none;color:#1b2a38;transition:border-color .25s,transform .25s}
.inline-bookmark:hover{border-color:#16283a;transform:translateY(-3px)}
.ib-label{display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#c8443c;margin-bottom:4px}
.inline-bookmark strong{display:block;font-size:20px;color:#16283a;margin-bottom:4px}
.inline-bookmark span:last-child{font-size:15px;color:#44576a}
.steps-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}
.step-card{background:#16283a;color:#ffffff;border-radius:16px;padding:24px}
.step-card h3{color:#f4c542 !important;font-size:15px !important;letter-spacing:1px;text-transform:uppercase;margin:0 0 6px !important}
.step-card h2{color:#ffffff;font-size:22px !important;margin:0 0 12px !important}
.step-card .btnp{margin:0}
.contact-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}
.contact-cols > div{background:#f8fafc;border:2px solid #e3e8ee;border-radius:14px;padding:18px 20px}
.contact-cols p{font-size:15px;margin-bottom:8px;word-break:break-word}
.example{border:2px solid #e3e8ee;border-radius:16px;padding:6px 24px 10px;margin-bottom:18px}
.example h3{margin-top:18px !important;color:#c8443c}
.res-links{list-style:none;margin-left:0 !important}
.res-links li{border-bottom:1px solid #e3e8ee;padding:10px 0}
.sources{font-size:14px;word-break:break-word}
.an-inline{margin:20px 0 30px;box-shadow:0 10px 30px rgba(22,40,58,.1);border:2px solid #e3e8ee;min-height:300px}
.figure-cap{font-size:14px;color:#6b7c8d;text-align:center;margin:-32px 0 36px}
.article-hero.no-figure{padding-bottom:72px}
.article-hero.no-figure + .article-section{padding-top:56px}
.avatars{display:flex}
.avatars .avatar + .avatar{margin-left:-12px;border:3px solid #16283a}
.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.post-nav-link{display:block;border:2px solid #e3e8ee;border-radius:16px;padding:18px 20px;text-decoration:none;color:#16283a;transition:border-color .25s,background .25s}
.post-nav-link:hover{border-color:#16283a;background:#f8fafc}
.post-nav-link span{display:block;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#c8443c;margin-bottom:4px}
.post-nav-link strong{font-size:17px;line-height:1.35}
.post-nav-link.next{text-align:right}
.news-list-head{display:flex;justify-content:space-between;align-items:baseline}
.news-list-head span{font-size:15px;color:#6b7c8d;font-weight:600}
@media (max-width:760px){
  .steps-cards,.contact-cols,.post-nav{grid-template-columns:1fr}
  .post-nav-link.next{text-align:left}
  .callout-link{grid-template-columns:64px 1fr}
  .callout-link figure img{width:64px;height:64px}
  .example{padding:4px 18px 8px}
}

/* ===== Home: voter section — equal-height, aligned panels ===== */
.voter-grid{grid-template-columns:1.3fr 1fr;align-items:stretch}
.voter-grid .panel{display:flex;flex-direction:column}
.voter-grid .panel > .district-table{flex:1;height:100%}
.district-table{table-layout:fixed}
.district-table th:nth-child(1),.district-table td:nth-child(1){width:26%}
.district-table th:nth-child(3),.district-table td:nth-child(3){width:30%;text-align:right}
.district-table td{vertical-align:middle;padding-top:22px;padding-bottom:22px}
.dist-date{white-space:nowrap}
.voter-grid .tools{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding-top:6px;padding-bottom:6px}
.tool{align-items:center}
@media (max-width:640px){
  .district-table th:nth-child(n),.district-table td:nth-child(n){width:100%;text-align:left}
}

/* ===== Action Network sign-up form: redesigned ===== */
.an-signup{padding:0 !important;overflow:hidden}
.an-form-head{display:flex;align-items:center;gap:16px;background:#c8443c;padding:24px 32px}
.an-form-icon{flex:0 0 52px;height:52px;border-radius:14px;background:#ffffff;display:flex;align-items:center;justify-content:center}
.an-form-icon svg{width:26px;height:26px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.an-form-head h3{color:#ffffff;font-size:22px;margin:0 0 2px}
.an-form-head p{color:#fde7e4;font-size:14px;margin:0}
.an-signup #can-form-area-sign-up-with-kent-county-indivisible{padding:28px 32px 32px}
.an-form #can_embed_form h2{display:none !important}
.an-form #can_embed_form form{margin-top:0 !important}
.an-form #can_embed_form #form_col1{display:flex !important;flex-wrap:wrap !important;gap:16px !important;list-style:none !important;padding:0 !important}
.an-form #can_embed_form #form_col1 > li{width:100% !important;list-style:none !important;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;float:none !important}
.an-form #can_embed_form #form_col1 > li.form_builder_output:empty{display:none !important}
.an-form #can_embed_form #form_col1 > li.core_field:has(#form-first_name),.an-form #can_embed_form #form_col1 > li.core_field:has(#form-last_name){width:calc(50% - 8px) !important}
.an-form #can_embed_form .control-label.disabled{display:none !important}
.an-form #can_embed_form .floatlabel-wrapper{position:relative !important}
.an-form #can_embed_form .floatlabel-label{font-size:12px !important;color:#6b7c8d !important;left:16px !important}
.an-form #can_embed_form .iti{width:100% !important}
.an-form #can_embed_form .international_link-wrap{display:block !important;margin:8px 0 0 4px !important}
.an-form #can_embed_form .international_link{color:#6b7c8d !important;text-decoration:underline !important}
.an-form #can_embed_form li.checkbox_group_wrap,.an-form #can_embed_form li.js-fb-customhtml{border-radius:14px !important}
.an-form #can_embed_form li#mobile_opt_in{padding:4px 2px !important}
.an-form #can_embed_form li#mobile_opt_in label,.an-form #can_embed_form li#mobile_opt_in span{font-size:13px !important;color:#6b7c8d !important}
.an-form #can_embed_form li.js-fb-customhtml{background:#fbf1d6 !important;border-left:5px solid #f4c542 !important;border-radius:14px 14px 0 0 !important;padding:16px 20px 6px !important;margin-bottom:-16px !important}
.an-form #can_embed_form li.js-fb-customhtml p,.an-form #can_embed_form li.js-fb-customhtml b{font-size:16px !important;font-weight:700 !important;color:#16283a !important;margin:0 !important}
.an-form #can_embed_form li.js-fb-multiplecheckboxes{background:#fbf1d6 !important;border-left:5px solid #f4c542 !important;border-radius:0 0 14px 14px !important;padding:6px 20px 16px !important}
.an-form #can_embed_form .check_radio_field,.an-form #can_embed_form .control-group{background:transparent !important;padding:0 !important;margin:0 !important}
.an-form #can_embed_form label.checkbox{display:flex !important;align-items:flex-start !important;gap:10px !important;padding:0 !important;margin:0 !important;font-size:15px !important;color:#1b2a38 !important;cursor:pointer}
.an-form #can_embed_form label.checkbox input[type="checkbox"]{flex:0 0 18px;margin:2px 0 0 !important;position:static !important;float:none !important}
.an-form #can_embed_form #form_col2{margin-top:22px !important}
.an-form #can_embed_form #d_sharing{background:transparent !important;padding:14px 0 0 !important}
.an-form #can_embed_form #d_sharing ul{background:transparent !important;padding:0 !important;margin:0 !important}
.an-form #can_embed_form #d_sharing label{display:flex !important;gap:10px !important;align-items:flex-start !important;font-size:14px !important}
@media (max-width:640px){
  .an-form-head{padding:20px}
  .an-signup #can-form-area-sign-up-with-kent-county-indivisible{padding:22px 18px 24px}
  .an-form #can_embed_form #form_col1 > li.core_field:has(#form-first_name),.an-form #can_embed_form #form_col1 > li.core_field:has(#form-last_name){width:100% !important}
}

/* ===== Author pages ===== */
.author-hero{padding-bottom:60px}
.author-head{display:flex;align-items:center;gap:24px}
.author-head h1{margin-bottom:4px}
.avatar-lg{width:104px !important;height:104px !important;font-size:36px;flex:0 0 104px}
.author-count{color:#c9d6e2;font-size:18px}
.avatar-sm{width:32px !important;height:32px !important;font-size:13px;flex:0 0 32px}
.side-link .avatar-sm{background:#f4c542;color:#16283a}
.side-link.is-current{color:#c8443c}
.article-meta strong a:hover{color:#f4c542}
@media (max-width:640px){
  .author-head{gap:16px}
  .avatar-lg{width:72px !important;height:72px !important;font-size:26px;flex-basis:72px}
}
/* volunteer interest box (higher specificity than li reset) */
.an-form #can_embed_form #form_col1 > li.js-fb-customhtml{background:#fbf1d6 !important;border-left:5px solid #f4c542 !important;border-radius:14px 14px 0 0 !important;padding:16px 20px 6px !important;margin-bottom:-16px !important}
.an-form #can_embed_form #form_col1 > li.js-fb-multiplecheckboxes{background:#fbf1d6 !important;border-left:5px solid #f4c542 !important;border-radius:0 0 14px 14px !important;padding:8px 20px 16px !important}
.an-form #can_embed_form #form_col1 > li#mobile_opt_in{padding:0 2px !important}

/* ===== Action Network: hide auto-detected country flag / "Not in XX?" link ===== */
.an-form #can_embed_form .international_link-wrap,.an-form #can_embed_form .iti__flag-container,.an-form #can_embed_form .country_drop_wrap{display:none !important}
.an-form #can_embed_form .iti input,.an-form #can_embed_form #form-phone{padding-left:16px !important}

/* ===== Campaigns video ===== */
.video-embed{position:relative;max-width:1000px;margin:40px auto 0;padding-top:min(56.25%,562px);border-radius:20px;overflow:hidden;background:#16283a;box-shadow:0 20px 50px rgba(22,40,58,.18)}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ===== Resources: feature card ===== */
.res-feature{display:grid;grid-template-columns:1fr 1.25fr;border-radius:24px;overflow:hidden;background:#ffffff;border:2px solid #e3e8ee;text-decoration:none;color:#1b2a38;box-shadow:0 14px 40px rgba(22,40,58,.08);transition:transform .3s,box-shadow .3s,border-color .3s}
.res-feature:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(22,40,58,.14);border-color:#16283a}
.res-feature-media{position:relative;background:#16283a;display:flex;align-items:center;justify-content:center;padding:48px;min-height:380px}
.res-feature-media:before{content:"";position:absolute;right:-90px;bottom:-90px;width:280px;height:280px;border-radius:50%;border:46px solid #1f3548}
.res-feature-media img{position:relative;z-index:1;width:100%;max-width:340px;height:auto;transition:transform .4s}
.res-feature:hover .res-feature-media img{transform:scale(1.04)}
.res-feature-badge{position:absolute;top:24px;left:24px;z-index:1;display:inline-flex;align-items:center;gap:8px;background:#f4c542;color:#16283a;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:8px 16px}
.res-feature-badge svg{width:18px;height:18px;stroke:#16283a;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.res-feature-body{padding:48px;display:flex;flex-direction:column;justify-content:center}
.res-feature-body h2{font-size:38px;margin:14px 0 14px;transition:color .3s}
.res-feature:hover h2{color:#c8443c}
.res-feature-body > p{font-size:17px;color:#44576a}
.res-inside{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 28px}
.res-inside li{display:flex;align-items:center;gap:10px;background:#f6f3ec;border-radius:12px;padding:12px 14px;font-weight:600;font-size:15px;color:#16283a}
.res-inside svg{width:20px;height:20px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 20px}
.res-feature-body .btn{align-self:flex-start}
.res-feature-body .btn svg{width:18px;height:18px;stroke:#ffffff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.res-feature:hover .btn svg{transform:translateX(4px)}

/* ===== Resource detail: no empty left column ===== */
.prompt-row{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:stretch;margin-bottom:28px}
.prompt-row .script-card{margin-bottom:0;display:flex;flex-direction:column;justify-content:center}
.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.policy-grid .policy:last-child:nth-child(odd){grid-column:1 / -1}
.voice-card{grid-template-columns:1.1fr 1fr;align-items:center}
.voice-bookmark{display:grid;grid-template-columns:1fr 150px;background:#ffffff;border-radius:16px;overflow:hidden;text-decoration:none;color:#1b2a38;box-shadow:0 10px 26px rgba(0,0,0,.12);transition:transform .3s}
.voice-bookmark:hover{transform:translateY(-4px)}
.voice-bookmark-body{padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.voice-bookmark-body strong{font-size:18px;color:#16283a}
.voice-bookmark-body span{font-size:14px;color:#44576a;line-height:1.5}
.voice-bookmark-body em{font-style:normal;font-size:13px;font-weight:600;color:#6b7c8d}
.voice-bookmark-img{order:2;background:#16283a}
.voice-bookmark-img img{width:100%;height:100%;object-fit:cover}
@media (max-width:960px){
  .res-feature{grid-template-columns:1fr}
  .res-feature-media{min-height:240px;padding:40px}
  .res-feature-body{padding:32px 28px}
  .prompt-row,.policy-grid,.voice-card{grid-template-columns:1fr}
}
@media (max-width:640px){
  .res-feature-body h2{font-size:28px}
  .res-inside{grid-template-columns:1fr}
  .voice-bookmark{grid-template-columns:1fr}
  .voice-bookmark-img{order:0;height:160px}
}

/* ===== Resources: guide card (v3) ===== */
.guide-card{display:grid;grid-template-columns:1.5fr 1fr;background:#ffffff;border:2px solid #e3e8ee;border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(22,40,58,.07);transition:border-color .3s,box-shadow .3s}
.guide-card:hover{border-color:#16283a;box-shadow:0 20px 44px rgba(22,40,58,.12)}
.guide-main{padding:44px 48px;border-top:6px solid #c8443c}
.guide-top{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px}
.guide-tag{display:inline-flex;align-items:center;gap:6px;background:#fbe9e7;color:#a8352e;font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:6px 14px}
.guide-tag svg{width:16px;height:16px;stroke:#a8352e;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.guide-meta{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#44576a}
.guide-meta img{border-radius:4px}
.guide-main h2{font-size:36px;margin-bottom:14px}
.guide-main h2 a{color:#16283a;text-decoration:none;transition:color .2s}
.guide-main h2 a:hover{color:#c8443c}
.guide-main p{font-size:17px;color:#44576a;margin-bottom:26px}
.guide-side{background:#16283a;padding:44px 40px;border-top:6px solid #f4c542}
.guide-side h3{color:#ffffff;font-size:22px;margin-bottom:20px}
.guide-steps{list-style:none;display:flex;flex-direction:column;gap:12px}
.guide-steps li{display:flex;align-items:center;gap:14px;background:#1f3548;border:1px solid #2f4a62;border-radius:14px;padding:14px 16px;color:#ffffff;font-weight:600;font-size:16px}
.guide-steps span{flex:0 0 32px;height:32px;border-radius:50%;background:#f4c542;color:#16283a;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:15px}
@media (max-width:960px){
  .guide-card{grid-template-columns:1fr}
  .guide-main{padding:32px 28px}
  .guide-side{padding:30px 28px}
}
@media (max-width:640px){
  .guide-main h2{font-size:28px}
}

/* ===== Image backdrop: fills empty space behind uncropped flyers (no navy bars / cut edges) ===== */
.news-lead-img,.article-figure{position:relative;overflow:hidden}
.img-backdrop{position:absolute;inset:-30px;background-size:cover;background-position:center;filter:blur(24px) brightness(.8);z-index:0}
.news-lead-img img,.article-figure img{position:relative;z-index:1}
.news-lead:hover .news-lead-img img{transform:none}
.news-lead-img img{transition:none}

/* ===== Resources (v4): clean card grid ===== */
.rgrid{display:grid;grid-template-columns:1.4fr 1fr;gap:26px;align-items:stretch;max-width:1180px;margin:0 auto}
.rstack{display:flex;flex-direction:column;gap:26px}
.rcard-main,.rcard-color{text-decoration:none;border-radius:20px;transition:transform .3s,box-shadow .3s}
.rcard-main:hover,.rcard-color:hover{transform:translateY(-5px)}
.rcard-main{display:flex;flex-direction:column;background:#ffffff;overflow:hidden;box-shadow:0 12px 36px rgba(22,40,58,.08);color:#1b2a38}
.rcard-main:hover{box-shadow:0 22px 48px rgba(22,40,58,.14)}
.rcard-img{height:300px;overflow:hidden;background:#dcecf4}
.rcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.rcard-main:hover .rcard-img img{transform:scale(1.04)}
.rcard-body{padding:30px 30px 26px;display:flex;flex-direction:column;flex:1}
.rpill{align-self:flex-start;display:inline-block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:6px 12px;margin-bottom:14px;background:rgba(255,255,255,.22);color:#ffffff}
.rpill-light{background:#dcecf4;color:#2f4a62}
.rcard-main h2{font-size:26px;font-weight:600;letter-spacing:-.3px;margin-bottom:10px;color:#16283a}
.rcard-main p{font-size:16px;color:#5a6b7b;line-height:1.65;flex:1}
.rcard-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid #e3e8ee;font-size:15px;font-weight:600}
.rcard-by{display:inline-flex;align-items:center;gap:10px;color:#1b2a38;font-weight:500}
.rcard-by img{border-radius:50%;background:#16283a}
.rcard-go{color:#2f5a8a;font-weight:700;white-space:nowrap;transition:transform .25s}
.rcard-main:hover .rcard-go,.rcard-color:hover .rcard-go{transform:translateX(4px)}
.rcard-color{flex:1;display:flex;flex-direction:column;padding:30px;box-shadow:0 12px 30px rgba(22,40,58,.12)}
.rcard-color h3{font-size:24px;font-weight:600;letter-spacing:-.3px;margin-bottom:10px}
.rcard-color p{font-size:16px;line-height:1.65;flex:1}
.rcard-blue{background:linear-gradient(135deg,#2f5a9e 0%,#3f86cf 60%,#6cb8e6 100%);color:#ffffff}
.rcard-blue h3,.rcard-blue p,.rcard-blue .rcard-foot,.rcard-blue .rcard-go{color:#ffffff}
.rcard-blue .rcard-foot{border-top-color:rgba(255,255,255,.28)}
.rcard-blue:hover{box-shadow:0 22px 44px rgba(47,90,158,.35)}
.rcard-yellow{background:linear-gradient(135deg,#f7d553 0%,#f4c542 45%,#f5a23a 100%);color:#16283a}
.rcard-yellow h3,.rcard-yellow p{color:#16283a}
.rcard-yellow .rpill{background:rgba(22,40,58,.1);color:#16283a}
.rcard-yellow .rcard-foot{border-top-color:rgba(22,40,58,.18);color:#16283a}
.rcard-yellow .rcard-go{color:#2f5a8a}
.rcard-yellow:hover{box-shadow:0 22px 44px rgba(245,162,58,.35)}
@media (max-width:960px){
  .rgrid{grid-template-columns:1fr}
  .rcard-img{height:240px}
}
@media (max-width:640px){
  .rcard-body,.rcard-color{padding:24px 20px}
  .rcard-main h2{font-size:22px}
  .rcard-color h3{font-size:21px}
  .rcard-foot{flex-wrap:wrap}
}

/* ===== Resources (v5): KCI-style layout ===== */
.res5{background:#f6f3ec}
.r5-guide{display:grid;grid-template-columns:.9fr 1.1fr;background:#ffffff;border-radius:22px;overflow:hidden;text-decoration:none;color:#1b2a38;box-shadow:0 10px 30px rgba(22,40,58,.07);transition:box-shadow .3s,transform .3s}
.r5-guide:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(22,40,58,.13)}
.r5-guide-img{min-height:360px;overflow:hidden;background:#dcecf4}
.r5-guide-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.r5-guide:hover .r5-guide-img img{transform:scale(1.04)}
.r5-guide-body{padding:44px 48px;display:flex;flex-direction:column;justify-content:center}
.r5-kicker{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#c8443c;margin-bottom:14px}
.r5-num{font-size:13px;color:#ffffff;background:#16283a;border-radius:8px;padding:4px 8px;letter-spacing:0}
.r5-guide-body h2{font-size:32px;font-weight:700;margin-bottom:14px;color:#16283a;transition:color .25s}
.r5-guide:hover h2{color:#c8443c}
.r5-guide-body p{font-size:16px;color:#5a6b7b;line-height:1.7}
.r5-guide-foot{display:flex;align-items:center;justify-content:space-between;margin-top:28px}
.r5-by{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:500;color:#1b2a38}
.r5-by img{border-radius:50%;background:#16283a}
.r5-arrow{width:48px;height:48px;border-radius:50%;background:#16283a;display:flex;align-items:center;justify-content:center;transition:background .25s,transform .25s}
.r5-arrow svg{width:20px;height:20px;stroke:#ffffff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.r5-guide:hover .r5-arrow{background:#c8443c;transform:rotate(-45deg)}
.r5-head{display:flex;align-items:center;gap:20px;margin:56px 0 22px}
.r5-head h2{font-size:26px;white-space:nowrap}
.r5-head span{flex:1;height:2px;background:#e1dccf}
.r5-links{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.r5-link{position:relative;display:flex;gap:20px;align-items:flex-start;background:#ffffff;border:2px solid transparent;border-radius:18px;padding:28px 56px 28px 28px;text-decoration:none;color:#1b2a38;transition:border-color .25s,transform .25s}
.r5-link:hover{border-color:#16283a;transform:translateY(-4px)}
.r5-icon{flex:0 0 52px;height:52px;border-radius:14px;background:#16283a;display:flex;align-items:center;justify-content:center}
.r5-icon svg{width:26px;height:26px;stroke:#f4c542;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.r5-icon-alt{background:#c8443c}
.r5-icon-alt svg{stroke:#ffffff}
.r5-source{display:block;font-size:13px;font-weight:600;color:#6b7c8d;margin-bottom:4px}
.r5-link h3{font-size:20px;margin-bottom:8px}
.r5-link p{font-size:15px;color:#5a6b7b;line-height:1.6}
.r5-ext{position:absolute;top:24px;right:24px;font-size:20px;font-weight:700;color:#8fa3b6;transition:color .25s,transform .25s}
.r5-link:hover .r5-ext{color:#c8443c;transform:translate(3px,-3px)}
@media (max-width:960px){
  .r5-guide{grid-template-columns:1fr}
  .r5-guide-img{min-height:240px;height:240px}
  .r5-guide-body{padding:30px 26px}
  .r5-links{grid-template-columns:1fr}
}
@media (max-width:640px){
  .r5-guide-body h2{font-size:26px}
  .r5-link{flex-direction:column;padding:24px 22px}
  .r5-head h2{font-size:22px}
}

/* ===== Hero option 2 (index-hero-v2.html only) ===== */
.hero2{position:relative;min-height:680px;display:flex;align-items:center;overflow:hidden;background:#16283a;padding:110px 0 150px}
.hero2-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.06);animation:hero2zoom 18s ease-in-out infinite alternate}
@keyframes hero2zoom{from{transform:scale(1.06)}to{transform:scale(1.14)}}
.hero2-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,40,58,.82) 0%,rgba(22,40,58,.9) 55%,rgba(22,40,58,.97) 100%)}
.hero2-inner{position:relative;z-index:2;text-align:center;max-width:980px}
.hero2-pill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#dcecf4;font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:8px 18px;margin-bottom:26px}
.hero2-dot{width:8px;height:8px;border-radius:50%;background:#f4c542;box-shadow:0 0 0 4px rgba(244,197,66,.25)}
.hero2-title{color:#ffffff;font-size:88px;font-weight:800;letter-spacing:-2.5px;line-height:1;margin-bottom:22px}
.hero2-title span{position:relative;display:inline-block;color:#f4c542}
.hero2-title span:after{content:"";position:absolute;left:4px;right:10px;bottom:-6px;height:8px;border-radius:8px;background:#c8443c}
.hero2-tag{font-size:28px;font-weight:500;color:#8fc1d8;margin-bottom:16px}
.hero2-tag strong{color:#ffffff}
.hero2-lead{font-size:20px;color:#d6e2ec;max-width:700px;margin:0 auto 36px}
.hero2-search{display:flex;align-items:center;max-width:720px;margin:0 auto;background:#ffffff;border-radius:18px;padding:8px 8px 8px 24px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.hero2-search svg{flex:0 0 24px;width:24px;height:24px;stroke:#16283a;fill:none;stroke-width:2;stroke-linecap:round}
.hero2-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:'Outfit','Gilroy',Arial,sans-serif;font-size:19px;color:#1b2a38;padding:16px 16px}
.hero2-search input::placeholder{color:#6b7c8d}
.hero2-search button{flex:0 0 auto;background:#c8443c;color:#ffffff;border:0;border-radius:12px;padding:17px 28px;font-family:'Outfit','Gilroy',Arial,sans-serif;font-weight:700;font-size:17px;cursor:pointer;transition:background .2s}
.hero2-search button:hover{background:#a8352e}
.hero2-search:focus-within{box-shadow:0 0 0 4px #f4c542,0 20px 50px rgba(0,0,0,.35)}
.hero2-quick{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:24px}
.hero2-quick span{color:#8fa3b6;font-size:15px;font-weight:600;margin-right:4px}
.hero2-quick a{color:#ffffff;text-decoration:none;font-size:15px;font-weight:600;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 18px;transition:background .2s,color .2s,border-color .2s}
.hero2-quick a:hover{background:#f4c542;border-color:#f4c542;color:#16283a}
.hero2-badge{position:absolute;right:48px;bottom:120px;z-index:2;width:130px;height:130px;border-radius:50%;background:#c8443c;color:#ffffff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 14px 34px rgba(0,0,0,.35);transform:rotate(-10deg);animation:floatBadge 4s ease-in-out infinite}
.hero2-badge strong{font-size:34px;line-height:1;font-weight:800}
.hero2-badge span{font-size:13px;font-weight:600;line-height:1.2;margin-top:4px;max-width:90px}
.js .hero2-inner > *{opacity:0;animation:fadeUp .8s cubic-bezier(.22,.61,.36,1) forwards}
.js .hero2-inner > *:nth-child(1){animation-delay:.05s}
.js .hero2-inner > *:nth-child(2){animation-delay:.15s}
.js .hero2-inner > *:nth-child(3){animation-delay:.3s}
.js .hero2-inner > *:nth-child(4){animation-delay:.42s}
.js .hero2-inner > *:nth-child(5){animation-delay:.54s}
.js .hero2-inner > *:nth-child(6){animation-delay:.66s}
@media (max-width:1100px){
  .hero2-title{font-size:70px}
  .hero2-badge{display:none}
}
@media (max-width:640px){
  .hero2{min-height:0;padding:70px 0 110px}
  .hero2-pill{font-size:12px;padding:7px 14px}
  .hero2-title{font-size:46px;letter-spacing:-1.5px}
  .hero2-title span:after{height:6px;bottom:-4px}
  .hero2-tag{font-size:21px}
  .hero2-lead{font-size:17px}
  .hero2-search{padding:6px 6px 6px 14px;border-radius:14px}
  .hero2-search svg{display:none}
  .hero2-search input{font-size:16px;padding:12px 8px}
  .hero2-search button{padding:13px 14px;font-size:14px}
  .hero2-quick span{width:100%;margin:0 0 2px}
  .hero2-quick a{padding:7px 14px;font-size:14px}
}
@media (prefers-reduced-motion:reduce){.hero2-bg{animation:none}}

/* ===== v2: quick actions as one connected bar ===== */
.hero2-overlay{background:linear-gradient(180deg,rgba(22,40,58,.78) 0%,rgba(22,40,58,.86) 55%,rgba(22,40,58,.96) 100%)}
.qbar-wrap{background:#f6f3ec;padding-bottom:88px}
.qbar{display:grid;grid-template-columns:repeat(4,1fr);background:#ffffff;border-radius:22px;box-shadow:0 20px 50px rgba(22,40,58,.16);transform:translateY(-70px);margin-bottom:-70px;overflow:hidden;position:relative;z-index:3}
.qbar-item{position:relative;display:flex;flex-direction:column;padding:34px 28px 30px;text-decoration:none;color:#1b2a38;border-right:1px solid #e3e8ee;transition:background .3s,color .3s}
.qbar-item:last-child{border-right:0}
.qbar-item:before{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:#c8443c;transform:scaleX(0);transform-origin:left;transition:transform .35s}
.qbar-item:nth-child(2):before{background:#f4c542}
.qbar-item:nth-child(3):before{background:#8fc1d8}
.qbar-item:nth-child(4):before{background:#c8443c}
.qbar-item:hover{background:#16283a}
.qbar-item:hover:before{transform:scaleX(1)}
.qbar-num{position:absolute;top:22px;right:24px;font-size:14px;font-weight:700;color:#b9c6d2;letter-spacing:1px;transition:color .3s}
.qbar-icon{width:50px;height:50px;border-radius:50%;background:#f6f3ec;display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:background .3s}
.qbar-icon svg{width:24px;height:24px;stroke:#c8443c;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.qbar-text{flex:1}
.qbar-text h3{font-size:22px;margin-bottom:6px;transition:color .3s}
.qbar-text p{font-size:15px;color:#5a6b7b;line-height:1.55;transition:color .3s}
.qbar-go{margin-top:18px;width:38px;height:38px;border-radius:50%;border:2px solid #e3e8ee;display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s,transform .3s}
.qbar-go svg{width:18px;height:18px;stroke:#16283a;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.qbar-item:hover .qbar-num{color:#f4c542}
.qbar-item:hover .qbar-icon{background:#f4c542}
.qbar-item:hover .qbar-icon svg{stroke:#16283a}
.qbar-item:hover h3{color:#ffffff}
.qbar-item:hover p{color:#c9d6e2}
.qbar-item:hover .qbar-go{background:#c8443c;border-color:#c8443c;transform:translateX(4px)}
.qbar-item:hover .qbar-go svg{stroke:#ffffff}
@media (max-width:1100px){
  .qbar{grid-template-columns:repeat(2,1fr)}
  .qbar-item:nth-child(2){border-right:0}
  .qbar-item:nth-child(-n+2){border-bottom:1px solid #e3e8ee}
}
@media (max-width:640px){
  .qbar{grid-template-columns:1fr;transform:translateY(-50px);margin-bottom:-50px}
  .qbar-item{flex-direction:row;flex-wrap:wrap;align-items:center;gap:0 16px;padding:22px 20px;border-right:0;border-bottom:1px solid #e3e8ee}
  .qbar-item:last-child{border-bottom:0}
  .qbar-icon{margin-bottom:0;flex:0 0 46px;height:46px}
  .qbar-text{flex:1 1 60%}
  .qbar-text p{display:none}
  .qbar-go{margin-top:0;flex:0 0 36px;height:36px}
  .qbar-num{display:none}
}
.qbar-wrap{padding-bottom:40px}

/* ===== Homepage helpers (moved from inline styles) ===== */
.hero2-bg{background-image:url('https://www.kentcountyindivisible.org/assets/images/splash.jpg')}
.vol-title{font-size:48px;margin-bottom:14px}
.vol-intro{font-size:19px;color:#44576a}
.eyebrow-yellow{color:#f4c542}
.eyebrow-sky{color:#8fc1d8}
@media (max-width:640px){.vol-title{font-size:36px}}

/* ===== Header: larger logo ===== */
.header .container{height:100px}
.logo img{height:78px;width:auto}
@media (max-width:1140px){ .nav{top:100px} }
@media (max-width:640px){
  .header .container{height:80px}
  .logo img{height:58px}
  .nav{top:80px}
}

/* ===== Hero: latest CTA (replaces search) ===== */
.hero2-latest{display:flex;align-items:center;gap:16px;max-width:720px;margin:0 auto;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:10px 10px 10px 12px;text-decoration:none;color:#ffffff;text-align:left;backdrop-filter:blur(6px);transition:background .25s,border-color .25s}
.hero2-latest:hover{background:rgba(255,255,255,.18);border-color:#f4c542}
.hero2-latest-tag{flex:0 0 auto;background:#f4c542;color:#16283a;font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;border-radius:999px;padding:7px 14px}
.hero2-latest-text{flex:1;font-size:16px;color:#dcecf4;line-height:1.4}
.hero2-latest-text strong{color:#ffffff}
.hero2-latest-go{flex:0 0 40px;height:40px;border-radius:50%;background:#c8443c;display:flex;align-items:center;justify-content:center;transition:transform .25s}
.hero2-latest-go svg{width:18px;height:18px;stroke:#ffffff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hero2-latest:hover .hero2-latest-go{transform:translateX(4px)}
.hero2-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:30px}
@media (max-width:640px){
  .hero2-latest{border-radius:18px;flex-wrap:wrap;padding:14px}
  .hero2-latest-text{flex:1 1 100%;order:3;font-size:15px}
  .hero2-latest-go{margin-left:auto}
  .hero2-ctas .btn{flex:1 1 100%}
}

/* ===== Join band: checklist instead of form-like boxes ===== */
.join-levels{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;margin-top:30px}
.join-levels li{display:flex;align-items:center;gap:14px;background:transparent;border-radius:0;padding:0 0 14px;border-bottom:1px solid rgba(255,255,255,.25);font-size:18px;font-weight:600;color:#ffffff}
.join-levels li:last-child{grid-column:auto}
.jl-check{flex:0 0 32px;height:32px;border-radius:50%;background:#ffffff;display:flex;align-items:center;justify-content:center}
.jl-check svg{width:18px;height:18px;stroke:#c8443c;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:640px){ .join-levels{grid-template-columns:1fr} }

/* ===== Footer bottom: centered ===== */
.footer-bottom{justify-content:center;text-align:center}
.join-levels li:last-child:nth-child(odd){grid-column:auto}

/* ===== Hero: "Latest from KCI" floating news card (replaces bar) ===== */
.hero2-news{position:absolute;left:48px;bottom:120px;z-index:2;display:flex;flex-direction:column;gap:6px;width:290px;background:#ffffff;border-radius:16px;padding:18px 20px 18px 22px;border-left:5px solid #c8443c;text-decoration:none;color:#1b2a38;box-shadow:0 18px 40px rgba(0,0,0,.35);transform:rotate(-2deg);transition:transform .3s,box-shadow .3s}
.hero2-news:hover{transform:rotate(0) translateY(-4px);box-shadow:0 24px 50px rgba(0,0,0,.45)}
.hero2-news-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#c8443c}
.hero2-news-pulse{width:8px;height:8px;border-radius:50%;background:#c8443c;box-shadow:0 0 0 0 rgba(200,68,60,.6);animation:newsPulse 1.8s infinite}
@keyframes newsPulse{0%{box-shadow:0 0 0 0 rgba(200,68,60,.6)}70%{box-shadow:0 0 0 8px rgba(200,68,60,0)}100%{box-shadow:0 0 0 0 rgba(200,68,60,0)}}
.hero2-news-date{font-size:13px;color:#6b7c8d;font-weight:600}
.hero2-news-title{font-size:17px;line-height:1.35;color:#16283a}
.hero2-news-more{font-size:14px;font-weight:700;color:#c8443c;margin-top:2px}
.hero2-ctas{margin-top:8px}
@media (max-width:1100px){
  .hero2{flex-direction:column;justify-content:center}
  .hero2-news{position:relative;left:auto;bottom:auto;transform:none;margin:40px auto 0;width:min(420px,calc(100% - 32px))}
  .hero2-news:hover{transform:translateY(-4px)}
}
@media (prefers-reduced-motion:reduce){.hero2-news-pulse{animation:none}}

/* ===== Hero floating items: only float when there is room beside the centered text ===== */
@media (max-width:1680px){
  .hero2{flex-direction:column;justify-content:center}
  .hero2-news{position:relative;left:auto;bottom:auto;transform:none;margin:36px auto 0;width:min(560px,calc(100% - 32px));flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:4px}
  .hero2-news:hover{transform:translateY(-4px)}
  .hero2-news-label{flex:0 0 auto}
  .hero2-news-date{flex:1 1 auto}
  .hero2-news-title,.hero2-news-more{flex:1 1 100%}
}
@media (max-width:1440px){
  .hero2-badge{display:none}
}
@media (max-width:640px){
  .hero2-news{flex-direction:column;align-items:flex-start}
}

/* ===== Hero layout wrapper (text + side column) ===== */
.hero2-layout{position:relative;z-index:2;width:100%}
.hero2-inner{margin:0 auto}
.hero2-side{position:static}

/* 1101px–1680px: two-column hero — text left, latest card + badge right */
@media (min-width:1101px) and (max-width:1199px){
  .hero2{display:block;padding:100px 0 150px}
  .hero2-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.85fr);gap:56px;align-items:center}
  .hero2-inner{text-align:left;max-width:none;margin:0}
  .hero2-title{font-size:74px}
  .hero2-lead{margin:0 0 32px;max-width:620px}
  .hero2-ctas{justify-content:flex-start}
  .hero2-side{position:relative;display:flex;flex-direction:column;align-items:stretch;padding-top:70px}
  .hero2-news{position:relative;left:auto;bottom:auto;margin:0;width:100%;max-width:none;flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:8px;padding:26px 26px 24px 28px;transform:rotate(-2deg)}
  .hero2-news:hover{transform:rotate(0) translateY(-4px)}
  .hero2-news-title{font-size:20px}
  .hero2-badge{display:flex;position:absolute;top:0;right:-10px;bottom:auto;width:120px;height:120px}
}
@media (min-width:1101px) and (max-width:1199px){
  .hero2-title{font-size:64px}
  .hero2-layout{gap:40px}
}
@media (min-width:1200px){
  .hero2-layout{position:static}
  .hero2-inner{position:relative;z-index:2}
}

/* 1200px–1680px: same centered design as large screens, with compact floating card + badge */
@media (min-width:1200px) and (max-width:1680px){
  .hero2{display:flex;flex-direction:row;align-items:center}
  .hero2-lead{max-width:600px}
  .hero2-news{position:absolute;left:24px;bottom:120px;margin:0;width:232px;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:5px;padding:16px 16px 16px 18px;transform:rotate(-2deg)}
  .hero2-news:hover{transform:rotate(0) translateY(-4px)}
  .hero2-news-title{font-size:15px}
  .hero2-news-more{font-size:13px}
  .hero2-badge{display:flex;position:absolute;right:24px;bottom:120px;top:auto;width:112px;height:112px}
  .hero2-badge strong{font-size:28px}
}
@media (min-width:1441px) and (max-width:1680px){
  .hero2-news{left:40px;width:260px}
  .hero2-news-title{font-size:16px}
  .hero2-badge{right:40px;width:124px;height:124px}
}
