:root{--blue:#0876ad;--blue-deep:#075983;--pink:#e6007e;--ink:#101820;--paper:#f7f7f7;--white:#fff;--line:#dce4e8;--muted:#5a6871}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.5}a{color:inherit}.topbar{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:5;box-shadow:0 1px 10px #0011}.wordmark{text-decoration:none;line-height:.9;color:var(--blue);display:flex;flex-direction:column;font-size:1rem}.wordmark b{font-size:1.65rem;color:var(--pink);letter-spacing:-.06em}.topbar nav{display:flex;gap:29px}.topbar nav a{text-decoration:none;font-weight:700}.topbar nav a:hover{color:var(--pink)}.menu-button{display:none}.hero{position:relative;min-height:570px;overflow:hidden;background:linear-gradient(120deg,var(--blue-deep),var(--blue));color:#fff;padding:80px max(28px,calc((100vw - 1180px)/2)) 55px}.hero-copy{position:relative;z-index:2;width:min(600px,56%)}.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900;margin:0 0 13px;color:var(--pink)}.hero .kicker{color:#fff}.hero h1{font-size:clamp(2.7rem,5vw,5rem);line-height:.98;letter-spacing:-.07em;margin:0 0 24px}.hero h1 em{color:var(--pink);font-style:normal}.intro{font-size:1.1rem;max-width:550px}.hero-actions{display:flex;gap:12px;margin-top:30px}.button{padding:12px 20px;border-radius:3px;font-weight:800;text-decoration:none}.primary{background:var(--pink);color:white}.outline{border:1px solid white}.hero-portrait{position:absolute;z-index:2;bottom:-6px;right:calc((100vw - 1180px)/2 + 80px);height:495px}.hero-portrait img{height:100%;display:block}.hero-art{position:absolute;bottom:0;left:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:screen;opacity:.37}.butterfly{position:absolute;z-index:3;color:var(--pink);font-size:4rem}.butterfly-a{right:9%;top:25%}.butterfly-b{left:53%;bottom:13%;font-size:2.2rem}.numbers{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;max-width:1120px;margin:-31px auto 0;position:relative;z-index:3;box-shadow:0 13px 30px #10283d19}.numbers article{padding:25px;border-right:1px solid var(--line)}.numbers article:last-child{border:0}.numbers strong{display:block;font-size:2rem;color:var(--blue);letter-spacing:-.06em}.numbers span{font-size:.86rem;color:var(--muted)}.section{max-width:1120px;margin:auto;padding:92px 0 0}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:end;margin-bottom:28px}.section-heading h2{font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.02;letter-spacing:-.065em;margin:0}.section-heading>p{color:var(--muted);margin:0}.election-card{display:grid;grid-template-columns:1.25fr .75fr;background:#fff;box-shadow:0 12px 30px #10283d12}.election-bars{padding:43px}.bar-row{display:grid;grid-template-columns:52px 1fr 70px;gap:15px;align-items:center;margin:21px 0;color:var(--muted)}.bar-row b{color:var(--ink);text-align:right}.track{height:13px;background:#e7edf0;overflow:hidden}.track i{display:block;height:100%;width:var(--size);background:var(--blue)}.active .track i{background:var(--pink)}.active span,.active b{font-weight:900;color:var(--pink)}.election-card aside{background:var(--ink);color:white;padding:37px}.election-card aside p{color:#d6e0e4}.election-card aside a{color:#ff70b6;font-weight:800}.law-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.law{background:#fff;padding:23px;min-height:260px;border-top:4px solid var(--pink);display:flex;flex-direction:column}.law h3{line-height:1.1;margin:16px 0 10px}.law p{font-size:.88rem;color:var(--muted);margin:0}.law a{margin-top:auto;padding-top:20px;color:var(--blue);font-size:.85rem;font-weight:900}.badge{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#a20059}.badge.co{color:#6b7175}.method-note{margin-top:22px;display:grid;grid-template-columns:190px 1fr;align-items:center;background:white;overflow:hidden}.method-note img{width:100%;height:115px;object-fit:cover}.method-note p{padding:12px 25px}.reach{background:var(--ink);max-width:none;padding:92px max(28px,calc((100vw - 1120px)/2));color:white;margin-top:92px}.reach .section-heading{max-width:1120px;margin-left:auto;margin-right:auto}.reach .section-heading>p{color:#d1dde1}.reach .kicker{color:#ff70b6}.simulator{max-width:1120px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;background:white;color:var(--ink)}.controls{padding:31px;background:#eaf4f8}.controls label{display:grid;grid-template-columns:1fr auto;gap:5px;font-size:.86rem;font-weight:800;margin-bottom:22px}.controls output{color:var(--pink)}.controls input{grid-column:1/-1;width:100%;accent-color:var(--pink)}.sim-results{padding:31px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-content:start}.result{border-left:3px solid var(--pink);padding:8px 11px}.result.instagram{border-color:var(--blue)}.result.leaflet{border-color:var(--ink)}.result span,.result small{display:block;font-size:.77rem;color:var(--muted)}.result strong{font-size:1.35rem;letter-spacing:-.05em}.result-footnote{grid-column:1/-1;margin:19px 0 0;font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}.test-plan{max-width:1120px;margin:17px auto 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;border:1px solid #ffffff42;padding:25px}.test-plan h3{margin:0;font-size:1.5rem}.test-plan ol{margin:0;padding-left:20px;color:#dae6e9}.test-plan li+li{margin-top:7px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:15px}.channels{background:var(--blue);display:grid}.channels a{padding:17px 22px;color:#fff;text-decoration:none;border-bottom:1px solid #ffffff47;display:flex;justify-content:space-between;gap:15px}.channels a:hover{background:var(--pink)}.channels span,.offices span{font-size:.85rem}.offices{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.offices article{background:#fff;padding:23px;min-height:124px;border-bottom:3px solid var(--pink)}.offices b,.offices span{display:block}.offices span{color:var(--muted);margin-top:7px}footer{max-width:1120px;margin:70px auto 0;padding:25px 0;color:var(--muted);border-top:1px solid var(--line);font-size:.78rem;display:flex;justify-content:space-between;gap:20px}@media(max-width:800px){.topbar nav{display:none}.menu-button{display:block;border:0;background:transparent;font-size:1.4rem}.topbar.open nav{display:flex;position:absolute;top:76px;left:0;right:0;background:white;flex-direction:column;gap:0;box-shadow:0 10px 15px #0013}.topbar.open nav a{padding:15px 28px}.hero{min-height:650px;padding-top:58px}.hero-copy{width:100%}.hero-portrait{height:355px;right:5%;bottom:-4px}.hero-art{opacity:.22}.butterfly{display:none}.numbers{grid-template-columns:repeat(2,1fr);margin:0}.numbers article:nth-child(2){border-right:0}.section{padding:65px 28px 0}.section-heading,.election-card,.simulator,.contact-layout,.test-plan{grid-template-columns:1fr;gap:22px}.law-grid{grid-template-columns:repeat(2,1fr)}.reach{padding:65px 28px;margin-top:65px}.sim-results{grid-template-columns:1fr}.method-note{grid-template-columns:1fr}.method-note img{height:90px}footer{margin:50px 28px 0;display:block}.topbar{padding:0 28px}}@media(max-width:480px){.law-grid,.offices{grid-template-columns:1fr}.hero h1{font-size:2.65rem}.numbers strong{font-size:1.65rem}.numbers article{padding:18px}.hero-portrait{height:300px;right:-10px}.intro{max-width:78%}}
