:root{--navy:#12355b;--blue:#1f6feb;--blue-dark:#1759bd;--light-blue:#eaf3ff;--bg:#f5f7fa;--text:#1f2937;--muted:#64748b;--border:#dbe3ec;--success:#198754;--shadow:0 18px 50px rgba(18,53,91,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{font-family:Inter,sans-serif;color:var(--text);background:#fff;line-height:1.65}a{text-decoration:none}.site-header{padding:12px 0;transition:.2s;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,227,236,.75)}.site-header.scrolled{padding:7px 0;box-shadow:0 8px 30px rgba(18,53,91,.08)}.navbar-brand{width:240px;height:62px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:0;border-radius:0;background:#fff;box-shadow:none}.navbar-brand img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}.navbar-toggler{border:0;color:var(--navy);font-size:1.8rem}.navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(31,111,235,.18)}.nav-link{color:#3a4a5e;font-weight:600;padding:.65rem .75rem!important}.nav-link:hover,.nav-link.active{color:var(--blue)}.btn{border-radius:9px;font-weight:700;padding:.68rem 1.05rem}.btn-brand{background:var(--blue);border:1px solid var(--blue);color:#fff}.btn-brand:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}.btn-outline-brand{border:1px solid #b9cce3;color:var(--navy)}.btn-outline-brand:hover,.btn-light-brand{background:var(--light-blue);border-color:var(--light-blue);color:var(--navy)}.btn-white{background:#fff;color:var(--navy);border:1px solid #fff}.btn-white:hover{background:var(--light-blue);color:var(--navy)}
.hero-section{position:relative;overflow:hidden;padding:175px 0 105px;background:linear-gradient(135deg,#f8fbff 0,#fff 54%,#eef7ff 100%)}.hero-orb{position:absolute;border-radius:50%;filter:blur(3px)}.hero-orb-one{width:420px;height:420px;background:rgba(31,111,235,.07);top:-170px;right:-110px}.hero-orb-two{width:280px;height:280px;background:rgba(25,135,84,.06);bottom:-170px;left:-80px}.eyebrow,.section-heading>span{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem}.hero-section h1{font-size:clamp(2.55rem,5vw,4.4rem);line-height:1.08;letter-spacing:-.045em;color:var(--navy);font-weight:800;margin:20px 0}.hero-section h1 span{color:var(--blue)}.hero-copy{font-size:1.12rem;color:var(--muted);max-width:650px}.hero-actions{margin:30px 0}.trust-row{display:flex;flex-wrap:wrap;gap:20px;color:#526175;font-size:.9rem;font-weight:600}.trust-row i{color:var(--success);margin-right:5px}.hero-visual{position:relative;background:#fff;border:1px solid #d7e3ef;border-radius:22px;padding:24px;box-shadow:var(--shadow);transform:rotate(1deg)}.visual-topbar{display:flex;align-items:center;gap:6px;padding-bottom:18px;border-bottom:1px solid #edf1f5}.visual-topbar span{width:9px;height:9px;border-radius:50%;background:#cbd5e1}.visual-topbar small{margin-left:auto;color:var(--muted);font-weight:700}.ballot-card{display:flex;align-items:center;gap:14px;padding:24px 0}.ballot-card small,.choice-card small{display:block;color:var(--muted)}.ballot-card h2{font-size:1.35rem;color:var(--navy);margin:2px 0 0;font-weight:800}.ballot-icon{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;background:var(--light-blue);color:var(--blue);font-size:1.45rem}.status-pill{margin-left:auto;border-radius:99px;padding:6px 12px;background:#e8f7ef;color:var(--success);font-size:.75rem;font-weight:800}.choice-card{display:flex;align-items:center;gap:14px;padding:17px;margin:10px 0;border:1px solid var(--border);border-radius:12px;color:#94a3b8}.choice-card.selected{border:2px solid var(--blue);background:var(--light-blue);color:var(--blue)}.choice-card strong{display:block;color:var(--navy)}.visual-footer{text-align:center;margin-top:18px;padding-top:15px;border-top:1px solid #edf1f5;color:var(--muted);font-size:.82rem}.visual-footer i{color:var(--success)}
.benefits-strip{position:relative;margin-top:-42px;z-index:2}.benefits-strip .container{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 36px rgba(18,53,91,.08);overflow:hidden}.benefit{display:flex;align-items:center;gap:15px;padding:24px}.benefit+ .benefit{border-left:1px solid var(--border)}.benefit>i{font-size:1.55rem;color:var(--blue);width:48px;height:48px;border-radius:12px;background:var(--light-blue);display:grid;place-items:center}.benefit strong,.benefit span{display:block}.benefit strong{color:var(--navy)}.benefit span{font-size:.82rem;color:var(--muted)}
.section-space{padding:105px 0}.soft-section{background:var(--bg)}.section-heading{max-width:720px}.section-heading h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.18;letter-spacing:-.035em;color:var(--navy);font-weight:800;margin:12px 0 15px}.section-heading p,.section-intro{color:var(--muted);font-size:1.02rem}.solution-card{border:1px solid var(--border);border-radius:15px;padding:28px;background:#fff;transition:.2s}.solution-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c3d8f4}.solution-icon{width:54px;height:54px;border-radius:13px;display:grid;place-items:center;background:var(--light-blue);color:var(--blue);font-size:1.45rem}.solution-card h3,.process-card h3{font-size:1.15rem;color:var(--navy);font-weight:800;margin:20px 0 10px}.solution-card p,.process-card p{color:var(--muted)}.solution-card a{color:var(--blue);font-weight:700}.process-card{position:relative;height:100%;background:#fff;border:1px solid var(--border);border-radius:15px;padding:30px}.process-card>span{position:absolute;right:24px;top:18px;font-weight:800;font-size:2.4rem;color:#e3ecf7}.process-card>i{font-size:1.8rem;color:var(--blue)}
.about-panel{min-height:420px;border-radius:24px;background:var(--navy);padding:44px;color:#fff;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;box-shadow:var(--shadow)}.about-shield{grid-row:span 3;display:grid;place-items:center;font-size:6rem;color:#68b8ff;background:rgba(255,255,255,.06);border-radius:16px}.about-stat{padding:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:13px}.about-stat strong,.about-stat span{display:block}.about-stat strong{font-size:1.15rem}.about-stat span{font-size:.8rem;color:#bfd2e6}.check-list{list-style:none;padding:0;margin:24px 0 0}.check-list li{display:flex;gap:10px;margin:13px 0;color:#435166}.check-list i{color:var(--success)}.cta-section{padding:0 0 100px}.cta-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:48px;border-radius:22px;color:#fff;background:linear-gradient(120deg,var(--navy),var(--blue));box-shadow:var(--shadow)}.cta-card span{font-weight:700;color:#bcdcff}.cta-card h2{font-weight:800;margin:8px 0}.cta-card p{margin:0;color:#d8e9fb}.contact-section{background:#fff}.contact-card{height:100%;display:flex;align-items:center;gap:16px;border:1px solid var(--border);border-radius:14px;padding:23px;color:var(--text);transition:.2s}.contact-card:hover{border-color:var(--blue);box-shadow:0 10px 30px rgba(18,53,91,.08)}.contact-card>i{width:49px;height:49px;border-radius:12px;display:grid;place-items:center;background:var(--light-blue);color:var(--blue);font-size:1.3rem}.contact-card small,.contact-card strong{display:block}.contact-card small{color:var(--muted)}.contact-card strong{color:var(--navy);word-break:break-word}
.site-footer{background:#0c2846;color:#d7e4f1;padding:58px 0 22px}.footer-main,.footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-main{padding-bottom:35px}.footer-main strong{font-size:1.35rem;color:#fff}.footer-main p{margin:5px 0;color:#a9bfd5}.footer-links{display:flex;flex-wrap:wrap;gap:22px}.footer-links a,.footer-bottom a{color:#d7e4f1}.footer-links a:hover,.footer-bottom a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.85rem;color:#9fb4c9}.scroll-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s;z-index:20}.scroll-top.visible{opacity:1;visibility:visible;transform:none}.scroll-top:hover{background:var(--blue-dark);color:#fff}
@media(max-width:991.98px){.site-header{background:#fff}.navbar-collapse{max-height:calc(100vh - 88px);overflow-y:auto;padding:15px 2px 20px}.navbar-nav{align-items:stretch!important}.navbar-nav .nav-item{width:100%}.navbar-nav .nav-link{padding:.72rem .85rem!important}.navbar-nav .btn{display:flex;width:100%;min-height:46px;align-items:center;justify-content:center;margin-top:8px}.navbar-nav .btn-brand{margin-top:10px;box-shadow:0 8px 20px rgba(31,111,235,.22)}.hero-section{padding-top:145px}.hero-visual{max-width:620px;margin:auto}.benefits-strip{margin-top:0;padding-top:25px}.benefit+.benefit{border-left:0;border-top:1px solid var(--border)}.cta-card{align-items:flex-start;flex-direction:column}.footer-main{align-items:flex-start;flex-direction:column}}
@media(max-width:575.98px){.navbar-brand{width:178px;height:51px}.hero-section{padding:125px 0 70px}.hero-section h1{font-size:2.45rem}.hero-actions .btn{width:100%}.trust-row{gap:10px;flex-direction:column}.hero-visual{padding:17px}.section-space{padding:75px 0}.about-panel{min-height:auto;grid-template-columns:1fr;padding:22px}.about-shield{grid-row:auto;height:170px}.cta-section{padding-bottom:75px}.cta-card{padding:30px 24px}.footer-main,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-links{gap:13px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Mobile voter access stays visible without opening the menu. */
.mobile-voter-login{gap:6px;font-size:.8rem;padding:.48rem .7rem;margin-right:4px;white-space:nowrap}
@media(max-width:991.98px){.voter-login-nav{display:none}.mobile-voter-login{display:inline-flex!important;align-items:center;justify-content:center;box-shadow:0 7px 18px rgba(31,111,235,.2)}}
@media(max-width:575.98px){.navbar-brand{width:140px;height:48px}.mobile-voter-login{font-size:.74rem;padding:.42rem .55rem}.navbar-toggler{padding:.25rem;font-size:1.65rem}}
@media(max-width:359.98px){.navbar-brand{width:122px}.mobile-voter-login span{display:none}.mobile-voter-login{width:42px;height:42px;padding:0;font-size:1.05rem}}

/* Phone header: keep the primary voter action on a dedicated row. */
@media(max-width:575.98px){
  .site-header .navbar>.container{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}
  .site-header .navbar-brand{grid-column:1;grid-row:1;width:150px;height:48px;margin:0}
  .site-header .navbar-toggler{grid-column:2;grid-row:1;justify-self:end}
  .site-header .mobile-voter-login{grid-column:1/-1;grid-row:2;width:100%;height:44px;margin:0!important;font-size:.86rem;box-shadow:0 8px 20px rgba(31,111,235,.22)}
  .site-header .mobile-voter-login span{display:inline}
  .site-header .navbar-collapse{grid-column:1/-1;grid-row:3;width:100%;padding-top:4px}
  .hero-section{padding-top:185px}
}
