/* ============================================================
   Get Ahead site layer  ·  November 2026
   Sits on top of brand.css (the June tool styles, kept so every
   tool renders exactly as before). Flat brand discipline holds:
   no gradients, no shadows, no glows. Oxford Blue leads, pink
   accents, cream ground, charcoal is the other side.
   ============================================================ */
:root{
  --coral:#F05E73;          /* merchandise pink, print only; web keeps --pink */
  --ink:#011936;
  --muted:#4f6472;
  --maxw:1120px;
}
body{background:var(--cream)}
.wrap{max-width:var(--maxw)}
h1,h2,h3{font-weight:800}
.sec-h{font-size:clamp(26px,3.6vw,40px);letter-spacing:-.03em;line-height:1.05}
.sec-sub{margin-top:12px;font-size:clamp(16px,2vw,19px);color:var(--muted);max-width:60ch;line-height:1.5}
section{padding:64px 0}
.section-tight{padding:40px 0}
.bg-white{background:#fff}
.bg-oxford{background:var(--oxford);color:#fff}
.bg-oxford .eyebrow{color:var(--pink)}
.bg-oxford .sec-sub{color:rgba(255,255,255,.78)}
.bg-pink{background:var(--pink);color:#fff}
.bg-pink .eyebrow{color:#fff}

/* Nav ------------------------------------------------------- */
header.nav{background:var(--cream)}
.nav-in{padding:12px 22px}
.brand-logo{height:34px}
.nav-links{display:none;gap:22px;font-weight:600;font-size:15px;align-items:center}
.nav-links a{text-decoration:none;opacity:.78;padding:6px 0;border-bottom:2px solid transparent}
.nav-links a:hover,.nav-links a.is-here{opacity:1;border-bottom-color:var(--pink)}
.nav-actions .btn{font-size:14px;padding:10px 16px}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1.5px solid var(--line);border-radius:999px;background:transparent;cursor:pointer;margin-left:4px}
.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{display:block;width:18px;height:2px;background:var(--oxford);position:relative;content:""}
.nav-toggle span:before{position:absolute;top:-6px}
.nav-toggle span:after{position:absolute;top:6px}
@media(min-width:960px){
  .nav-links{display:flex}
  .nav-toggle{display:none}
}
@media(max-width:959px){
  .nav-links.open{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--cream);border-bottom:1px solid var(--line);padding:14px 22px 20px;gap:10px;align-items:flex-start}
  .nav-join{display:none}
}
@media(max-width:559px){.nav-donate{display:none}}

/* Hook tile: the three-second tile from the clips ------------ */
.hook{display:inline-block;background:var(--pink);color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.02em;padding:.18em .45em;line-height:1.1;font-size:clamp(14px,1.6vw,18px)}
.hook.big{font-size:clamp(22px,4.4vw,44px);padding:.12em .3em}
.hook.oxford{background:var(--oxford)}

/* Campaign hero --------------------------------------------- */
.hero-c{padding:64px 0 36px;position:relative;overflow:hidden}
.hero-c .wrap{position:relative;z-index:1}
.hero-c .eyebrow{color:var(--pink-deep)}
.hero-c h1{font-size:clamp(40px,7.5vw,92px);letter-spacing:-.045em;line-height:.95;margin-top:14px;max-width:12ch}
.hero-c h1 .pk{color:var(--pink)}
.hero-c .lede{margin-top:22px;font-size:clamp(18px,2.3vw,23px);line-height:1.45;max-width:46ch;color:#22405e}
.hero-c .lede b{color:var(--oxford)}
.hero-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px}
.btn-lg{font-size:18px;padding:18px 30px}
.hero-c .mark{position:absolute;right:-6vw;top:-4vw;width:46vw;max-width:560px;opacity:.06;z-index:0;pointer-events:none}

/* Stats row ------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}
.stat{background:#fff;padding:22px 20px}
.stat .n{font-size:clamp(30px,4vw,44px);font-weight:900;letter-spacing:-.04em;line-height:1;color:var(--oxford)}
.stat .n.pk{color:var(--pink)}
.stat .l{margin-top:8px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* Just joined strip ----------------------------------------- */
.joinedbar{display:none;background:var(--oxford);color:#fff;overflow:hidden;white-space:nowrap;border-top:1px solid rgba(255,255,255,.08)}
.joinedbar .jlabel{display:inline-block;background:var(--pink);color:#fff;font-weight:900;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:12px 16px;vertical-align:middle}
.joined-vp{display:inline-block;vertical-align:middle;width:calc(100% - 140px);overflow:hidden}
.joined-track{display:inline-block;white-space:nowrap;animation:jscroll 60s linear infinite}
.joinedbar:hover .joined-track{animation-play-state:paused}
.j-item{display:inline-block;padding:0 26px;font-size:14px;opacity:.9}
.j-item b{color:#fff;font-weight:800}
.j-item:before{content:"\25B2";color:var(--pink);font-size:9px;margin-right:9px;vertical-align:middle}
@keyframes jscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Pillars --------------------------------------------------- */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;margin-top:34px}
.pillar{background:#fff;border:1px solid var(--line);padding:26px 24px 28px}
.pillar .num{font-weight:900;color:var(--pink);font-size:13px;letter-spacing:.14em}
.pillar h3{margin-top:10px;font-size:clamp(20px,2.4vw,26px);letter-spacing:-.03em;line-height:1.1}
.pillar p{margin-top:12px;color:#22405e;line-height:1.5;font-size:16px}
.pillar .proof{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.pillar .proof b{color:var(--oxford);font-size:22px;display:block;letter-spacing:-.03em}

/* The ask --------------------------------------------------- */
.ask-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start;margin-top:30px}
@media(max-width:820px){.ask-grid{grid-template-columns:1fr}}
.ask-list{list-style:none;margin-top:18px}
.ask-list li{padding:16px 0;border-top:1px solid rgba(255,255,255,.14);font-size:17px;line-height:1.45}
.ask-list li b{display:block;font-size:20px;letter-spacing:-.02em;margin-bottom:4px}
.dates{list-style:none;border:1px solid rgba(255,255,255,.18)}
.dates li{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:16px 18px;border-top:1px solid rgba(255,255,255,.14);font-size:15px;line-height:1.4}
.dates li:first-child{border-top:0}
.dates .d{font-weight:900;color:var(--pink);letter-spacing:-.01em}
.dates .big{font-size:26px;letter-spacing:-.03em;line-height:1}

/* Tool cards ------------------------------------------------ */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:30px}
.card{background:#fff;border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;text-decoration:none;color:var(--oxford);transition:border-color .15s}
.card:hover{border-color:var(--oxford)}
.card .tag{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-deep)}
.card h3{margin-top:10px;font-size:22px;letter-spacing:-.03em;line-height:1.1}
.card p{margin-top:10px;color:#33485a;font-size:15px;line-height:1.5;flex:1}
.card .go{margin-top:18px;font-weight:800;font-size:15px}
.card .go:after{content:" \2192"}
.card.dark{background:var(--oxford);color:#fff;border-color:var(--oxford)}
.card.dark p{color:rgba(255,255,255,.8)}
.card.dark .tag{color:var(--pink)}
.card.pinkc{background:var(--pink);color:#fff;border-color:var(--pink)}
.card.pinkc p{color:rgba(255,255,255,.9)}
.card.pinkc .tag{color:#fff}

/* Page head ------------------------------------------------- */
.pagehead{padding:54px 0 30px}
.pagehead h1{font-size:clamp(34px,5.6vw,64px);letter-spacing:-.04em;line-height:1;margin-top:12px;max-width:18ch}
.pagehead .lede{margin-top:18px;font-size:clamp(17px,2.1vw,21px);line-height:1.45;max-width:56ch;color:#22405e}
.pagehead .eyebrow{color:var(--pink-deep)}

/* Generic panel --------------------------------------------- */
.panel{background:#fff;border:1px solid var(--line);padding:26px}
.panel + .panel{margin-top:18px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
@media(max-width:820px){.grid2{grid-template-columns:1fr}}
.note{font-size:13px;color:var(--muted);line-height:1.5}
.prose p{margin-top:14px;font-size:17px;line-height:1.6;color:#22405e;max-width:64ch}
.prose p.lead{font-size:clamp(20px,2.6vw,26px);font-weight:700;color:var(--oxford);line-height:1.25;letter-spacing:-.02em}
.prose h2{margin-top:36px;font-size:clamp(22px,3vw,30px);letter-spacing:-.03em}
.prose ul{margin:14px 0 0 20px;color:#22405e;font-size:17px;line-height:1.6}
.prose li{margin-top:6px}

/* Forms (shared) ------------------------------------------- */
.form-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:14px;font:inherit;font-size:16px;background:#fff;color:var(--oxford);min-height:260px;line-height:1.5;resize:vertical}
textarea:focus{outline:0;border-color:var(--oxford)}
.radio-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.radio-row label{border:1.5px solid var(--line);border-radius:999px;padding:9px 14px;font-weight:700;font-size:14px;cursor:pointer;background:#fff}
.radio-row input{display:none}
.radio-row label.on{background:var(--oxford);color:#fff;border-color:var(--oxford)}

/* MP tool --------------------------------------------------- */
.mp-found{display:flex;align-items:center;gap:16px;padding:18px;background:var(--oxford);color:#fff;margin-top:16px}
.mp-found .seat{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink);font-weight:800}
.mp-found .name{font-size:24px;font-weight:900;letter-spacing:-.03em;line-height:1.05;margin-top:4px}
.mp-found .party{font-size:14px;opacity:.85;margin-top:4px}
.mp-found .pl{margin-left:auto;text-align:right;font-size:13px;line-height:1.3}
.mp-found .pl b{display:block;font-size:14px}
.pill{display:inline-block;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;letter-spacing:.04em}
.pill.yes{background:#C1EF56;color:var(--oxford)}
.pill.no{background:rgba(255,255,255,.12);color:#fff}
.pill.no.dark{background:#e9edee;color:var(--charcoal)}
.steps-h{display:flex;align-items:center;gap:10px;font-weight:900;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-deep);margin-bottom:12px}
.steps-h i{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--oxford);color:#fff;font-style:normal;font-size:13px}
.board{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:24px}
.board table{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border:1px solid var(--line)}
.board th{background:var(--oxford);color:#fff;text-align:left;padding:10px 12px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.board td{padding:10px 12px;border-top:1px solid var(--line)}
.board td.num{text-align:right;font-weight:800;font-variant-numeric:tabular-nums}

/* Pledge wall ----------------------------------------------- */
.pledge-card{background:var(--oxford);color:#fff;padding:34px 30px;margin-top:26px}
.pledge-card .three{font-size:clamp(28px,5vw,56px);font-weight:900;letter-spacing:-.04em;line-height:1}
.pledge-card .three span{color:var(--pink)}
.pledge-card ol{margin:22px 0 0 0;list-style:none;counter-reset:p}
.pledge-card ol li{counter-increment:p;padding:14px 0;border-top:1px solid rgba(255,255,255,.14);font-size:clamp(16px,2vw,19px);line-height:1.4;display:grid;grid-template-columns:40px 1fr;gap:10px}
.pledge-card ol li:before{content:counter(p);font-weight:900;color:var(--pink);font-size:22px}
.wall-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;align-items:center}
.wall-tools input,.wall-tools select{min-width:200px}
.wall-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:20px}
.wall-sum div{background:#fff;padding:16px}
.wall-sum b{display:block;font-size:30px;letter-spacing:-.04em;line-height:1}
.wall-sum span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.wall{margin-top:18px;border:1px solid var(--line);background:#fff}
.wall-row{display:grid;grid-template-columns:1.4fr 1fr .8fr .5fr 110px;gap:10px;padding:11px 14px;border-top:1px solid var(--line);font-size:14px;align-items:center}
.wall-row:first-child{border-top:0;background:var(--oxford);color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}
.wall-row .nm{font-weight:800}
.wall-row .em{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wall-row.signed{background:#f6fbe8}
@media(max-width:700px){.wall-row{grid-template-columns:1.4fr 1fr 110px}.wall-row .hide-m{display:none}}

/* Shop ------------------------------------------------------ */
.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:30px}
.product{background:#fff;border:1px solid var(--line);padding:16px;display:flex;flex-direction:column}
.product .img{background:#F4EBDF;aspect-ratio:1/1;display:grid;place-items:center;overflow:hidden}
.product .img img{width:88%;height:88%;object-fit:contain}
.product h3{margin-top:14px;font-size:18px;letter-spacing:-.02em;line-height:1.15}
.product .d{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.4;flex:1}
.product .pr{margin-top:12px;font-weight:900;font-size:20px;letter-spacing:-.02em}
.product .opts{display:flex;gap:8px;margin-top:10px}
.product select{flex:1;padding:10px;font-size:14px}
.product .btn{margin-top:10px;justify-content:center}
.shop-note{margin-top:22px;font-size:14px;color:var(--muted)}

/* Calculator ------------------------------------------------ */
.calc{background:#fff;border:1px solid var(--line);margin-top:26px}
.calc .in{padding:24px;border-bottom:1px solid var(--line)}
.calc .out{padding:24px;background:#fff}
.calc .lbl{display:block}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
@media(max-width:620px){.cmp{grid-template-columns:1fr}}
.cmp .c{background:#fff;padding:22px}
.cmp .c.new{background:var(--oxford);color:#fff}
.cmp .c.new .eyebrow{color:var(--pink)}
.cmp .big{font-size:clamp(30px,4.2vw,46px);font-weight:900;letter-spacing:-.04em;line-height:1;margin-top:10px}
.cmp ul{list-style:none;margin-top:14px;font-size:14px}
.cmp li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid rgba(0,0,0,.08)}
.cmp .c.new li{border-top-color:rgba(255,255,255,.14)}
.cmp li b{font-variant-numeric:tabular-nums}
.verdict-c{margin-top:18px;background:var(--pink);color:#fff;padding:22px 24px}
.verdict-c .vw{font-size:clamp(26px,4vw,40px);font-weight:900;letter-spacing:-.04em;line-height:1}
.verdict-c p{margin-top:8px;font-size:16px;line-height:1.45;max-width:60ch}
.range-row{display:flex;align-items:center;gap:12px}
.range-row input[type=range]{flex:1}
.range-row output{font-weight:800;min-width:48px;text-align:right}

/* CTA band -------------------------------------------------- */
.cta-band{padding:50px 0}
.cta-band h2{font-size:clamp(26px,4vw,44px);letter-spacing:-.04em;line-height:1.02;max-width:20ch}
.cta-band .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}

/* Footer ---------------------------------------------------- */
footer{padding-bottom:90px}
.foot-links{display:flex;flex-wrap:wrap;gap:8px 20px}
.foot-cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}
@media(max-width:700px){.foot-cols{grid-template-columns:1fr}}
.foot-cols h4{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink);margin-bottom:10px}
.foot-cols a{display:block;color:#fff;opacity:.8;text-decoration:none;font-size:14px;padding:4px 0}
.foot-cols a:hover{opacity:1}
.foot-fine{margin-top:26px}

/* Join page ------------------------------------------------- */
.signup{margin-top:0}
.why{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:22px}
.why div{background:#fff;border:1px solid var(--line);padding:16px;font-size:14px;line-height:1.45}
.why b{display:block;font-size:16px;margin-bottom:4px;letter-spacing:-.01em}

/* Legal pages ----------------------------------------------- */
.legal{max-width:760px}
.legal h2{font-size:28px;letter-spacing:-.03em}
.legal h4{margin-top:24px;font-size:16px}
.legal p,.legal li{font-size:15px;line-height:1.6;color:#22405e;margin-top:8px}
.legal ul{margin-left:20px}
.legal .legal-updated{font-size:13px;color:var(--muted)}

/* Utility --------------------------------------------------- */
.mt0{margin-top:0}.mt1{margin-top:12px}.mt2{margin-top:24px}.mt3{margin-top:40px}
.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.center{text-align:center}
.demo{display:inline-block;background:#C1EF56;color:var(--oxford);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:999px;vertical-align:middle;margin-left:8px}
@media(max-width:700px){.hero-c .mark{display:none}}

/* ============================================================
   Pink ramp  ·  5 Nov. Pink leads. Cream from the logo pack as
   the ground. Oxford for the heavy sections. Charcoal retired to
   the footer and the other side only.
   ============================================================ */
:root{--cream:#F4EBDF;--line:rgba(1,25,54,.16)}
body{background:var(--cream)}
header.nav{background:var(--cream);border-bottom:2px solid var(--pink)}
.nav-links a.is-here,.nav-links a:hover{color:var(--pink-deep)}
.nav-join{border-color:var(--pink);color:var(--pink-deep)}
.eyebrow,.sec-eyebrow,.pagehead .eyebrow,.hero-c .eyebrow,.card .tag,.pillar .num,.steps-h{color:var(--pink-deep)}
.bg-oxford .eyebrow,.bg-oxford .sec-eyebrow,.pledge-card .eyebrow{color:var(--pink)}
.bg-pink .eyebrow,.bg-pink .sec-eyebrow{color:#fff}

/* hero: pink hook tile carries the first line, headline fully pink */
.hero-c{background:var(--cream);border-top:0}
.hero-c h1{color:var(--pink);max-width:11ch}
.hero-c h1 .pk{color:var(--pink)}
.hero-c .lede b{background:var(--pink);color:#fff;padding:.05em .3em;box-decoration-break:clone;-webkit-box-decoration-break:clone;font-weight:900;text-transform:uppercase;font-size:.78em;letter-spacing:.02em;line-height:1.5}
.hero-c .mark{opacity:.07}
.stats{margin-top:40px;background:var(--pink);border-color:var(--pink);gap:1px}
.stat{background:var(--pink);color:#fff}
.stat .n,.stat .n.pk{color:#fff}
.stat .l{color:rgba(255,255,255,.85)}
.stat + .stat{border-left:1px solid rgba(255,255,255,.35)}
.joinedbar{background:var(--oxford)}
.joinedbar .jlabel{background:var(--pink)}

/* page heads on every inner page: headline pink, rule under it */
.pagehead h1{color:var(--pink)}
.pagehead h1 span{color:var(--oxford)!important}
.pagehead .wrap{border-bottom:3px solid var(--pink);padding-bottom:30px}
.pagehead[style*="padding-bottom:0"] .wrap,.pagehead[style*="padding-bottom:10px"] .wrap,.pagehead[style*="padding-bottom:20px"] .wrap{border-bottom:0;padding-bottom:0}

/* pillars and cards: pink top rule, pink arrows */
.pillar{border-top:6px solid var(--pink)}
.pillar h3{color:var(--pink-deep)}
.card{border-top:6px solid var(--pink)}
.card:hover{border-color:var(--pink)}
.card .go{color:var(--pink-deep)}
.card.dark{border-top-color:var(--pink)}
.card.dark .go{color:var(--pink)}
.card.pinkc .go,.card.pinkc .tag{color:#fff}

/* oxford sections: pink keeps the structure */
.ask-list li b{color:var(--pink)}
.dates .d{color:var(--pink)}
.bg-oxford .sec-h{color:#fff}

/* forms and tools */
.btn-primary{background:var(--pink);color:#fff}
.btn-primary:hover{background:var(--pink-deep)}
.btn-yellow{background:var(--oxford);color:#fff}
.btn-yellow:hover{background:#03234a}
.btn-ghost{border-color:var(--pink);color:var(--pink-deep)}
.btn-ghost:hover{border-color:var(--pink-deep);background:rgba(237,107,134,.08)}
.bg-oxford .btn-ghost,.bg-pink .btn-ghost{color:#fff!important;border-color:rgba(255,255,255,.5)!important}
.bg-pink .btn-primary{background:var(--oxford)}
.bg-pink .btn-primary:hover{background:#03234a}
.chip[aria-pressed=true]{background:var(--pink);border-color:var(--pink);color:#fff}
.index-card,.calc,.panel,.product,.wall,.board table{border-color:rgba(1,25,54,.18)}
.verdict-bar{background:var(--pink)!important}
.cmp .c.new{background:var(--oxford)}
.mp-found{background:var(--oxford);border-left:8px solid var(--pink)}
.radio-row label.on{background:var(--pink);border-color:var(--pink)}
.wall-row:first-child{background:var(--pink)}
.wall-row.signed{background:#fff0f3}
.pledge-card{border-left:10px solid var(--pink)}
.product .img{background:#fff}
.product .pr{color:var(--pink-deep)}
.cta-band.bg-oxford h2 span{color:var(--pink)}

/* footer stays oxford, pink headings, pink rule on top */
footer{background:var(--oxford)!important;border-top:6px solid var(--pink)}
.tickerbar{border-top:2px solid var(--pink)}
.tickerbar .tlabel{background:var(--pink)}

/* Buttons: pink does not cut through as a button. Oxford buttons, pink surfaces. */
.btn-primary,.btn-pink{background:var(--oxford);color:#fff}
.btn-primary:hover,.btn-pink:hover{background:#03234a}
.btn-ghost{border-color:var(--oxford);color:var(--oxford);border-width:2px}
.btn-ghost:hover{background:var(--oxford);color:#fff}
.bg-oxford .btn-primary,.bg-oxford .btn-pink,.cmp .c.new .btn{background:#fff;color:var(--oxford)}
.bg-oxford .btn-primary:hover,.bg-oxford .btn-pink:hover{background:var(--cream)}
.bg-pink .btn-primary,.bg-pink .btn-pink{background:var(--oxford);color:#fff}
.nav-donate{background:var(--oxford)}
.nav-join{border-color:var(--oxford);color:var(--oxford)}
.backed{margin-top:18px;font-size:15px;font-weight:600;color:var(--pink-deep);max-width:52ch;line-height:1.45}
.voices{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:22px}
.voice{background:#fff;border:1px solid var(--line);border-top:6px solid var(--oxford);padding:22px}
.voice .q{font-size:17px;line-height:1.45;color:var(--oxford);font-weight:600;letter-spacing:-.01em}
.voice .q:before{content:"\201C";color:var(--pink);font-size:34px;line-height:0;vertical-align:-10px;margin-right:4px}
.voice .who{margin-top:14px;display:flex;align-items:center;gap:10px}
.voice .av{width:38px;height:38px;border-radius:999px;background:var(--pink);color:#fff;display:grid;place-items:center;font-weight:900;font-size:14px;flex:0 0 auto}
.voice .nm{font-weight:800;font-size:14px;line-height:1.2}
.voice .rl{font-size:12px;color:var(--muted);line-height:1.3}
.voice .lk{margin-top:12px;font-size:12px;font-weight:800;color:var(--pink-deep);text-decoration:none;display:inline-block}
.albos{border-radius:0;border:0;background:transparent;padding:0;margin-top:18px}
.voices{margin-top:0}
.ig-tile.is-text{padding:0}

/* ============================================================
   v4  ·  Elite pass, from the May brand guide.
   Bright is the room: white ground. Pink is the signal and lives
   as solid blocks, never as text on a tint. Oxford is structure and
   the other side. Green-yellow labels tax, aquamarine labels
   red tape. Flat. No gradients, no shadows.
   ============================================================ */
:root{--cream:#FFFFFF;--paper:#FFFFFF;--line:rgba(1,25,54,.14)}
body{background:#fff}
header.nav{background:#fff;border-bottom:1px solid var(--line)}
.bg-white{background:#F7F8F9}
.eyebrow,.sec-eyebrow,.pagehead .eyebrow,.card .tag,.pillar .num,.steps-h{color:var(--oxford)}
.sec-eyebrow:before,.pagehead .eyebrow:before{content:"";display:inline-block;width:22px;height:10px;background:var(--pink);margin-right:10px;vertical-align:1px}
.bg-oxford .eyebrow,.bg-oxford .sec-eyebrow{color:#fff}
.bg-pink .sec-eyebrow:before,.bg-oxford .sec-eyebrow:before{background:var(--greenyellow)}

/* Hero: the word in a solid pink block. */
.hero-c{background:var(--pink);color:#fff;padding:72px 0 0;overflow:visible}
.hero-c .eyebrow{color:#fff;opacity:.95}
.hero-c .eyebrow:before{content:"";display:inline-block;width:22px;height:10px;background:var(--oxford);margin-right:10px;vertical-align:1px}
.hero-c h1{color:#fff;max-width:11ch;font-size:clamp(46px,8.4vw,112px);letter-spacing:-.05em;line-height:.9}
.hero-c h1 .pk{color:var(--oxford)}
.hero-c .lede{color:#fff;max-width:48ch}
.hero-c .lede b{background:var(--oxford);color:#fff}
.hero-c .mark{display:none}
.hero-c .btn-primary{background:var(--oxford);color:#fff}
.hero-c .btn-ghost{border-color:#fff;color:#fff}
.hero-c .btn-ghost:hover{background:#fff;color:var(--oxford)}
.backed{color:#fff;font-weight:700;padding-bottom:40px;margin-top:22px}
.stats{margin-top:0;background:var(--oxford);border:0;gap:0}
.stat{background:var(--oxford);color:#fff;padding:26px 22px;border-left:1px solid rgba(255,255,255,.14)}
.stat:first-child{border-left:0}
.stat + .stat{border-left:1px solid rgba(255,255,255,.14)}
.stat .n,.stat .n.pk{color:var(--greenyellow)}
.stat .n.pk{color:var(--pink)}
.stat .l{color:rgba(255,255,255,.8)}
.joinedbar{background:#fff;color:var(--oxford);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.joinedbar .j-item{opacity:1}
.joinedbar .j-item b{color:var(--oxford)}

/* Pillars: brutal simplicity. Big number, navy headline, pink stamp. */
.pillars{gap:0;border:1px solid var(--line);margin-top:34px}
.pillar{border:0;border-left:1px solid var(--line);border-top:0;padding:30px 26px 30px}
.pillar:first-child{border-left:0}
@media(max-width:900px){.pillar{border-left:0;border-top:1px solid var(--line)}}
.pillar .num{display:inline-block;background:var(--pink);color:#fff;padding:4px 9px;font-size:12px;letter-spacing:.14em}
.pillar h3{color:var(--oxford);font-size:clamp(24px,2.8vw,32px);margin-top:16px}
.pillar .proof{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}
.pillar .proof b{color:var(--oxford);font-size:clamp(30px,3.6vw,44px);letter-spacing:-.04em;line-height:1;margin-bottom:8px}

/* Cards: territory strips label, they never shout. */
.card{border:1px solid var(--line);border-top:0;position:relative;padding-top:30px}
.card:before{content:"";position:absolute;left:0;top:0;right:0;height:8px;background:var(--oxford)}
.card.strip-tax:before{background:var(--greenyellow)}
.card.strip-aqua:before{background:var(--aqua)}
.card.strip-pink:before{background:var(--pink)}
.card:hover{border-color:var(--oxford)}
.card .go{color:var(--oxford)}
.card h3{color:var(--oxford)}

/* Inner page heads: pink block, white headline, like the hero. */
.pagehead{background:var(--pink);color:#fff;padding:60px 0 44px}
.pagehead .eyebrow{color:#fff}
.pagehead .eyebrow:before{background:var(--oxford)}
.pagehead h1{color:#fff}
.pagehead h1 span{color:var(--oxford)!important}
.pagehead .lede{color:#fff}
.pagehead .wrap{border-bottom:0;padding-bottom:0}
.pagehead[style*="padding-bottom"]{padding-bottom:44px!important}
.pagehead .panel{background:#fff;color:var(--oxford);border-color:#fff}
.pagehead .pledge-card{margin-top:30px;border-left:0}
.pagehead + section,.pagehead + .section-tight{padding-top:40px!important}

/* Sections */
.ask-list li b{color:var(--greenyellow)}
.dates .d{color:var(--greenyellow)}
.cta-band.bg-oxford h2 span{color:var(--greenyellow)}
.verdict-c{background:var(--pink)!important}
.verdict-bar{background:var(--oxford)!important}
.cmp .c.new{background:var(--oxford)}
.mp-found{border-left:8px solid var(--greenyellow)}
.wall-row:first-child{background:var(--oxford)}
.wall-row.signed{background:#f4fbe3}
.pill.yes{background:var(--greenyellow)}
.product .pr{color:var(--oxford)}
.pledge-card .three span{color:var(--greenyellow)}
.pledge-card ol li:before{color:var(--greenyellow)}
.hook{background:var(--pink)}
.people-grid .person{border:1px solid var(--line)}

/* The albos.tax band when the live feed is not available */
.albos-band{display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center;background:var(--oxford);color:#fff;padding:28px 30px;text-decoration:none}
.albos-band .hook.big{background:var(--pink)}
.albos-band .ab-txt{font-size:clamp(16px,2vw,20px);line-height:1.4;max-width:46ch}
.albos-band .ab-go{font-weight:900;font-size:18px;color:var(--greenyellow);white-space:nowrap}
@media(max-width:760px){.albos-band{grid-template-columns:1fr}}

/* Footer */
footer{background:var(--oxford)!important;border-top:0}
.foot-cols h4{color:var(--greenyellow)}
.tickerbar{border-top:0}
.tickerbar .tlabel{background:var(--pink)}
/* ticker figures in green-yellow: the tax colour */
.t-item .tfig{color:var(--greenyellow)!important}

/* ============================================================
   v5  ·  White room. Navy speaks. Lime signals. Pink is the mark.
   Elite: scale, whitespace, hairline rules, one accent that cuts.
   ============================================================ */
:root{--lime:#C1EF56;--lime-deep:#9CD426;--line:rgba(1,25,54,.12)}
body{background:#fff;color:var(--oxford)}
header.nav{background:rgba(255,255,255,.94);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--line)}
.nav-links a{font-weight:600;opacity:.72}
.nav-links a.is-here,.nav-links a:hover{opacity:1;color:var(--oxford);border-bottom-color:var(--lime-deep)}
.nav-join{border-color:var(--oxford);color:var(--oxford)}
.nav-donate{background:var(--lime);color:var(--oxford)}
.nav-donate:hover{background:var(--lime-deep)}

/* labels: lime square, navy text, wide tracking */
.eyebrow,.sec-eyebrow,.pagehead .eyebrow,.hero-c .eyebrow,.card .tag,.steps-h{color:var(--oxford);opacity:.85}
.sec-eyebrow:before,.pagehead .eyebrow:before,.hero-c .eyebrow:before{content:"";display:inline-block;width:10px;height:10px;background:var(--lime);margin-right:10px;vertical-align:0}
.bg-oxford .sec-eyebrow:before,.bg-oxford .eyebrow:before{background:var(--lime)}
.bg-oxford .eyebrow,.bg-oxford .sec-eyebrow{color:#fff;opacity:.9}
section{padding:88px 0}
.section-tight{padding:56px 0}
.sec-h{font-size:clamp(30px,4.4vw,52px);letter-spacing:-.035em;line-height:1;max-width:20ch;text-wrap:balance}
.sec-sub{font-size:clamp(17px,2vw,20px);color:#3b4f60;max-width:58ch}

/* Hero: white, giant navy, lime highlight on the key words. */
.hero-c{background:#fff;color:var(--oxford);padding:96px 0 0}
.hero-c .eyebrow{color:var(--oxford)}
.hero-c h1{color:var(--oxford);font-size:clamp(52px,9.6vw,128px);letter-spacing:-.055em;line-height:.88;max-width:10ch}
.hero-c h1 .pk{color:var(--oxford);background:var(--lime);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero-c .lede{color:#22405e;font-size:clamp(18px,2.2vw,22px);max-width:50ch;margin-top:30px}
.hero-c .lede b{background:var(--oxford);color:#fff;font-size:.72em}
.hero-c .btn-primary{background:var(--oxford);color:#fff}
.hero-c .btn-ghost{border-color:var(--oxford);color:var(--oxford)}
.hero-c .btn-ghost:hover{background:var(--oxford);color:#fff}
.backed{color:#3b4f60;font-weight:600;padding-bottom:56px}
.stats{background:var(--oxford)}
.stat{padding:30px 24px}
.stat .n,.stat .n.pk{color:var(--lime)}
.stat .l{letter-spacing:.1em}
.joinedbar{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.joinedbar .jlabel{background:var(--pink);color:#fff}
.j-item:before{color:var(--lime-deep)}

/* Pillars: hairline grid, giant number in lime block. */
.pillars{border:0;border-top:1px solid var(--oxford);margin-top:44px;gap:0}
.pillar{border:0;border-left:1px solid var(--line);padding:34px 28px 36px}
.pillar:first-child{border-left:0;padding-left:0}
.pillar .num{background:transparent;color:var(--oxford);padding:0;font-size:13px;opacity:.6}
.pillar h3{color:var(--oxford);font-size:clamp(24px,2.6vw,30px);letter-spacing:-.035em}
.pillar p{color:#3b4f60}
.pillar .proof{border-top:0;margin-top:26px;padding-top:0}
.pillar .proof b{display:inline-block;background:var(--lime);color:var(--oxford);padding:.06em .22em;font-size:clamp(28px,3.4vw,40px);letter-spacing:-.045em;margin-bottom:12px}

/* Ask section: navy, lime structure, white type. */
.bg-oxford{background:var(--oxford)}
.bg-oxford .sec-h{color:#fff}
.ask-list li{border-top-color:rgba(255,255,255,.16);color:rgba(255,255,255,.85)}
.ask-list li b{color:var(--lime);font-size:22px}
.dates{border-color:rgba(255,255,255,.22)}
.dates li{border-top-color:rgba(255,255,255,.16);color:rgba(255,255,255,.85)}
.dates .d{color:var(--lime)}
.bg-oxford .btn-primary,.bg-oxford .btn-pink{background:var(--lime);color:var(--oxford)}
.bg-oxford .btn-primary:hover,.bg-oxford .btn-pink:hover{background:var(--lime-deep)}
.bg-oxford .btn-ghost{color:#fff!important;border-color:rgba(255,255,255,.45)!important}

/* Cards: quiet, hairline, hover lifts to navy. */
.cards{gap:14px;margin-top:40px}
.card{border:1px solid var(--line);padding:26px 24px 24px;transition:background .15s,color .15s,border-color .15s}
.card:before{height:6px;background:var(--line)}
.card.strip-tax:before,.card.strip-pink:before,.card.strip-aqua:before{background:var(--lime)}
.card:hover{background:var(--oxford);color:#fff;border-color:var(--oxford)}
.card:hover h3,.card:hover .go,.card:hover .tag{color:#fff}
.card:hover p{color:rgba(255,255,255,.8)}
.card:hover:before{background:var(--lime)}
.card .go{color:var(--oxford)}

/* People */
.people-grid .person{border:1px solid var(--line);background:#fff}

/* Donate band: navy, lime headline word. */
.bg-pink{background:var(--oxford);color:#fff}
.bg-pink .sec-sub{color:rgba(255,255,255,.82)!important}
.bg-pink .btn-primary,.bg-pink .btn-pink{background:var(--lime);color:var(--oxford)}
.bg-pink .btn-ghost{color:#fff!important;border-color:rgba(255,255,255,.45)!important}
.bg-pink .sec-eyebrow:before{background:var(--lime)}
.bg-pink .sec-eyebrow{color:#fff}
.cta-band{padding:72px 0}
.cta-band h2{font-size:clamp(30px,4.6vw,54px)}

/* Feeds */
.ig-tile.is-text{background:var(--oxford)!important}
.ig-tile.is-text:nth-child(odd){background:var(--lime)!important}
.ig-tile.is-text:nth-child(odd) .ig-text{color:var(--oxford)!important}
.albos-band{background:#fff;color:var(--oxford);border:1px solid var(--oxford)}
.albos-band .hook.big{background:var(--oxford);color:#fff}
.albos-band .ab-go{color:var(--oxford)}

/* Inner pages: white heads, navy headline, lime highlight, hairline under. */
.pagehead{background:#fff;color:var(--oxford);padding:80px 0 40px}
.pagehead .eyebrow{color:var(--oxford)}
.pagehead h1{color:var(--oxford);font-size:clamp(38px,6.4vw,76px);letter-spacing:-.05em;line-height:.95}
.pagehead h1 span{color:var(--oxford)!important;background:var(--lime);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.pagehead .lede{color:#3b4f60}
.pagehead .wrap{border-bottom:1px solid var(--oxford);padding-bottom:40px}
.pagehead .panel{border-color:var(--line)}
.pagehead .pledge-card{margin-top:34px}
.pagehead + section,.pagehead + .section-tight{padding-top:48px!important}
.bg-white{background:#fff;border-top:1px solid var(--line)}

/* Tools */
.btn-primary,.btn-pink{background:var(--oxford);color:#fff}
.btn-yellow{background:var(--lime);color:var(--oxford)}
.btn-yellow:hover{background:var(--lime-deep)}
.verdict-c{background:var(--oxford)!important;color:#fff}
.verdict-c .vw{color:var(--lime)}
.verdict-bar{background:var(--oxford)!important}
.cmp .c.new .eyebrow{color:var(--lime)}
.calc,.panel,.index-card,.product,.wall,.board table{border-color:var(--line)}
.mp-found{border-left:8px solid var(--lime)}
.mp-found .seat{color:var(--lime)}
.pill.yes{background:var(--lime)}
.pill.no{background:rgba(255,255,255,.14)}
.wall-row:first-child{background:var(--oxford)}
.wall-row.signed{background:#f3fbdd}
.wall-sum b{color:var(--oxford)}
.pledge-card{border-left:0}
.pledge-card .three span,.pledge-card ol li:before{color:var(--lime)}
.radio-row label.on{background:var(--oxford);border-color:var(--oxford)}
.steps-h i{background:var(--lime);color:var(--oxford)}
.product .pr{color:var(--oxford)}
.product .img{background:#F7F8F9}
.hook{background:var(--oxford);color:#fff}
.chip[aria-pressed=true]{background:var(--oxford);border-color:var(--oxford)}

/* Footer */
footer{background:var(--oxford)!important}
.foot-cols h4{color:var(--lime)}
.tickerbar{background:#fff!important;border-top:1px solid var(--line)!important;color:var(--oxford)}
.tickerbar .tlabel{background:var(--oxford);color:#fff}
.t-item .tfig{color:var(--oxford)!important;background:var(--lime);padding:2px 6px}
.t-item .th,.t-item .tjur{color:var(--oxford)!important}
.t-item .tup{color:var(--lime-deep)!important}
.pillar .proof b{display:table}

/* ============================================================
   v6 · Premium pass. Same brand (white room, navy, lime, pink
   mark, flat - no gradients/shadows). What changes: composition,
   scale, whitespace and rhythm, so it reads designed, not thin.
   ============================================================ */

/* Rhythm - generous, consistent vertical space and gutters */
section{padding:104px 0}
.section-tight{padding:68px 0}
.wrap{padding-left:30px;padding-right:30px}
@media(max-width:600px){ section{padding:60px 0} .section-tight{padding:44px 0} .wrap{padding-left:20px;padding-right:20px} }

/* Section headers - more air, stronger scale */
.sec-eyebrow{font-size:13px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.sec-h{font-size:clamp(32px,4.8vw,58px);line-height:1;margin-top:16px;letter-spacing:-.04em}
.sec-sub{margin-top:18px;line-height:1.55}

/* HERO - two columns, anchored by the navy countdown clock ---- */
.hero-c{padding:84px 0 0}
.hero-top{display:grid;grid-template-columns:1.35fr .9fr;gap:60px;align-items:center}
@media(max-width:860px){ .hero-top{grid-template-columns:1fr;gap:34px} }
.hero-c .eyebrow{font-size:13px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.hero-c h1{font-size:clamp(56px,8.8vw,120px);line-height:.85;letter-spacing:-.055em;max-width:12ch;margin-top:20px}
.hero-c .lede{margin-top:24px;line-height:1.5}
.hero-c .lede:first-of-type{margin-top:30px}
.hero-actions{margin-top:32px}
.backed{padding-bottom:0;margin-top:24px}
.hero-c .stats{margin-top:72px}

.hero-aside{display:flex;align-self:center}
.clock{flex:1;background:var(--oxford);color:#fff;padding:44px 36px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:340px}
.clock-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;opacity:.72}
.clock-kicker:before{content:"";display:inline-block;width:10px;height:10px;background:var(--lime);margin-right:10px;vertical-align:0}
.clock-num{font-size:clamp(84px,9vw,132px);font-weight:900;letter-spacing:-.06em;line-height:.82;color:var(--lime);margin-top:20px;font-variant-numeric:tabular-nums}
.clock-unit{font-size:23px;font-weight:800;letter-spacing:-.02em;margin-top:6px}
.clock-foot{font-size:15px;line-height:1.5;color:rgba(255,255,255,.72);margin-top:22px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);width:100%}
.clock-foot b{color:#fff;font-weight:800}
@media(max-width:860px){ .clock{min-height:0;padding:34px 28px} }

/* STATS - bolder, tabular, more presence */
.stat{padding:36px 28px}
.stat .n{font-size:clamp(36px,4.6vw,54px);font-variant-numeric:tabular-nums}
.stat .l{margin-top:12px;font-size:12px}

/* PILLARS - more air */
.pillars{margin-top:56px}
.pillar{padding:0 34px 6px}
.pillar:first-child{padding-left:0}
@media(max-width:900px){ .pillar{padding:30px 0 0} .pillar:first-child{padding-top:0} }
.pillar .num{font-size:13px;font-weight:800;letter-spacing:.16em;opacity:.55}
.pillar h3{margin-top:16px;font-size:clamp(23px,2.5vw,30px);line-height:1.06}
.pillar p{margin-top:14px;line-height:1.55}
.pillar .proof{margin-top:30px}
.pillar .proof b{padding:.08em .24em}

/* CARDS - more presence, confident hover */
.cards{gap:16px;margin-top:52px}
.card{padding:32px 28px 28px}
.card .tag{font-size:12px;font-weight:800;letter-spacing:.13em}
.card h3{margin-top:14px;font-size:24px;line-height:1.08;letter-spacing:-.03em}
.card p{margin-top:12px;font-size:15.5px;line-height:1.55}
.card .go{margin-top:24px;font-weight:800}

/* ASK - more air */
.ask-grid{gap:60px;margin-top:44px}
.ask-list li{padding:20px 0}
.ask-list li b{font-size:21px}
.dates li{padding:18px 20px}

/* People + CTA */
.cta-band{padding:92px 0}
.cta-band h2{max-width:22ch;letter-spacing:-.04em}

/* Buttons - large, crisp */
.btn-lg{font-size:17px;padding:17px 30px}

/* Hero headline: lime as a clean underline, not a block over the words */
.hero-c h1 .pk{
  background:none;
  color:var(--oxford);
  padding:0;
  text-decoration:underline;
  text-decoration-color:var(--lime);
  text-decoration-thickness:.09em;
  text-underline-offset:.1em;
  text-decoration-skip-ink:none;
}

/* ============================================================
   v7 · Reference layout, Will's brand colours.
   Editorial navy hero + ghosted date; lime is the signal, pink
   stays the mark, navy is structure. Scoped to home (.home).
   ============================================================ */

/* Dark nav over the navy hero */
.home header.nav{background:var(--oxford);border-bottom:0;backdrop-filter:none}
.home .nav-links a{color:#fff;opacity:.8}
.home .nav-links a:hover,.home .nav-links a.is-here{color:#fff;opacity:1;border-bottom-color:var(--lime)}
.home .nav-join{color:#fff;border-color:rgba(255,255,255,.5)}
.home .nav-join:hover{background:rgba(255,255,255,.08)}
.home .nav-donate{background:var(--lime);color:var(--oxford)}
.home .nav-donate:hover{background:var(--lime-deep)}
.home .nav-toggle{border-color:rgba(255,255,255,.4)}
.home .nav-toggle span,.home .nav-toggle span:before,.home .nav-toggle span:after{background:#fff}
@media(max-width:959px){ .home .nav-links.open{background:var(--oxford);border-bottom:0} }

/* HERO: navy, lime signal */
.home .hero-c{background:var(--oxford);color:#fff;padding:60px 0 0;overflow:hidden}
.home .hero-c .eyebrow{color:#fff;opacity:.85}
.home .hero-c .eyebrow:before{background:var(--lime)}
.home .hero-c h1{color:#fff;font-size:clamp(42px,5.2vw,80px);line-height:.88;letter-spacing:-.05em;max-width:13ch}
.home .hero-c h1 .pk{color:var(--lime);background:none;text-decoration:none;padding:0}
.home .hero-c .lede{color:rgba(255,255,255,.82);max-width:52ch}
.home .hero-c .lede b{background:none;color:#fff;font-weight:800;font-size:1em;text-transform:none;letter-spacing:-.01em;padding:0;line-height:inherit}
.home .hero-c .btn-primary{background:var(--lime);color:var(--oxford)}
.home .hero-c .btn-primary:hover{background:var(--lime-deep)}
.home .hero-c .btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.home .hero-c .btn-ghost:hover{background:#fff;color:var(--oxford)}
.home .backed{color:rgba(255,255,255,.7)}

/* hero right: the date that matters, ghosted, lime divider */
.home .hero-top{grid-template-columns:1.25fr .95fr;align-items:center;gap:52px}
.home .hero-aside{display:block;align-self:center;border-left:2px solid var(--lime);padding-left:54px}
.home .hero-date-label{display:block;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.home .hero-date{display:block;margin-top:14px;font-weight:900;letter-spacing:-.045em;line-height:.8;color:rgba(255,255,255,.15);font-size:clamp(70px,8.6vw,132px)}
.home .hero-date span{display:block}
@media(max-width:860px){
  .home .hero-top{grid-template-columns:1fr;gap:30px}
  .home .hero-aside{border-left:0;border-top:2px solid var(--lime);padding-left:0;padding-top:26px}
  .home .hero-date{font-size:clamp(64px,19vw,104px)}
  .home .hero-c h1{font-size:clamp(44px,11vw,64px)}
}

/* stats: minimal row on navy, label above, lime value */
.home .stats{background:transparent;border:0;border-top:1px solid rgba(255,255,255,.22);gap:0;margin-top:56px}
.home .stat{background:transparent;color:#fff;padding:24px 26px 34px;border-left:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column}
.home .stat:first-child{border-left:0;padding-left:0}
.home .stat .l{order:0;margin:0 0 12px;color:rgba(255,255,255,.7);font-size:12px}
.home .stat .n,.home .stat .n.pk{order:1;color:var(--lime);font-size:clamp(30px,3.6vw,44px)}
@media(max-width:620px){
  .home .stats{grid-template-columns:1fr 1fr}
  .home .stat{border-left:1px solid rgba(255,255,255,.18);padding:18px 18px 22px}
  .home .stat:first-child{padding-left:18px;border-left:1px solid rgba(255,255,255,.18)}
  .home .stat:nth-child(odd){border-left:0;padding-left:0}
}

/* Problem pillars: big lime numbers */
.home .pillar .num{display:inline-block;background:none;color:var(--lime-deep);padding:0;font-size:clamp(34px,3.8vw,46px);font-weight:900;letter-spacing:-.03em;opacity:1;line-height:1}
.home .pillar h3{color:var(--oxford);margin-top:10px}
.home .pillar .proof b{background:none;color:var(--oxford);padding:0}

/* Three things (navy): lime numbers down the list */
.home .ask-list{counter-reset:ask}
.home .ask-list li{padding-left:60px;position:relative}
.home .ask-list li:before{counter-increment:ask;content:"0" counter(ask);position:absolute;left:0;top:20px;color:var(--lime);font-weight:900;font-size:30px;letter-spacing:-.02em;line-height:1}

/* Tool cards: numbered territory labels, hover to navy */
.home .cards{counter-reset:card}
.home .card .tag:before{counter-increment:card;content:"0" counter(card) " / "}

/* ============================================================
   v8 · Roll the navy/lime system across every page.
   Dark nav + navy page-heads (lime-text highlight) on all pages,
   plus the editorial number treatment on pillars.
   ============================================================ */

/* Dark nav everywhere */
header.nav{background:var(--oxford);border-bottom:0;backdrop-filter:none}
.nav-links a{color:#fff;opacity:.8}
.nav-links a:hover,.nav-links a.is-here{color:#fff;opacity:1;border-bottom-color:var(--lime)}
.nav-join{color:#fff;border-color:rgba(255,255,255,.5)}
.nav-join:hover{background:rgba(255,255,255,.08)}
.nav-donate{background:var(--lime);color:var(--oxford)}
.nav-donate:hover{background:var(--lime-deep)}
.nav-toggle{border-color:rgba(255,255,255,.4)}
.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{background:#fff}
@media(max-width:959px){ .nav-links.open{background:var(--oxford);border-bottom:0} }

/* Navy page-heads with the lime-text highlight, matching the hero */
.pagehead{background:var(--oxford);color:#fff;padding:72px 0 54px}
.pagehead .eyebrow{color:#fff;opacity:.85}
.pagehead .eyebrow:before{background:var(--lime)}
.pagehead h1{color:#fff}
.pagehead h1 span{color:var(--lime)!important;background:none!important;padding:0!important}
.pagehead .lede{color:rgba(255,255,255,.82)}
.pagehead .wrap{border-bottom:0;padding-bottom:0}
.pagehead .panel{background:#fff;color:var(--oxford);border-color:#fff}
.pagehead + section,.pagehead + .section-tight{padding-top:56px}

/* Editorial numbers on pillars wherever they appear */
.pillar .num{display:inline-block;background:none;color:var(--lime-deep);padding:0;font-size:clamp(34px,3.8vw,46px);font-weight:900;letter-spacing:-.03em;opacity:1;line-height:1}
.pillar h3{color:var(--oxford);margin-top:10px}
.pillar .proof b{background:none;color:var(--oxford);padding:0}

/* ============================================================
   v9 · Sleek single-line "what Australians are saying" scroller,
   replacing the LinkedIn-embed card grid. Full-bleed marquee.
   ============================================================ */
.albos-scroller{overflow:hidden;white-space:nowrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:30px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.albos-track{display:inline-block;white-space:nowrap;padding:20px 0;animation:albosscroll 55s linear infinite}
.albos-scroller:hover .albos-track{animation-play-state:paused}
.a-take{display:inline-flex;align-items:center;gap:12px;padding:0 30px;text-decoration:none}
.a-take:before{content:"";width:8px;height:8px;background:var(--lime);flex:0 0 auto}
.a-take .a-txt{font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--oxford)}
.a-take .a-src{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.a-take:hover .a-txt{color:var(--lime-deep)}
@keyframes albosscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   v10 · Drop the 01/02/03 section numbering (reads AI-generated);
   headings + lime accents carry the structure. Sticky CTA dock.
   ============================================================ */
/* remove decorative section numbers */
.pillar .num,.home .pillar .num{display:none}
.pillar h3{margin-top:0}
.home .card .tag:before{content:none}
.home .ask-list li{padding-left:0}
.home .ask-list li:before{content:none}

/* sticky CTA dock, sits above the 46px waste ticker */
.cta-dock{position:fixed;left:0;right:0;bottom:46px;z-index:85;background:var(--oxford);border-top:1px solid rgba(255,255,255,.14);transform:translateY(135%);transition:transform .35s cubic-bezier(.2,.7,.2,1);padding:10px 20px}
.cta-dock.show{transform:none}
.cta-dock-in{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:10px}
.cd-label{color:#fff;font-weight:600;font-size:14px;margin-right:auto;opacity:.92}
.cd-label b{font-weight:800}
.cta-dock .btn{border-radius:999px}
.btn-dock-primary{background:var(--lime);color:var(--oxford);padding:11px 22px;font-size:14px;font-weight:800}
.btn-dock-primary:hover{background:var(--lime-deep)}
.btn-dock-ghost{border:1.5px solid rgba(255,255,255,.5);color:#fff;padding:10px 20px;font-size:14px;font-weight:700;background:transparent}
.btn-dock-ghost:hover{background:#fff;color:var(--oxford)}
footer{padding-bottom:124px}
@media(max-width:600px){
  .cd-label,.cd-wide{display:none}
  .cta-dock{padding:9px 14px}
  .cta-dock-in{gap:8px}
  .cta-dock .btn{flex:1;justify-content:center;padding:12px 10px}
}

/* ============================================================
   v11 · "What this is about" - cards with lime number badges,
   topic icons, lime stat accents, hand-drawn underline + chevron.
   ============================================================ */
.prob-head{display:flex;justify-content:space-between;align-items:flex-start;gap:44px}
.prob-head-txt{max-width:48ch}
.prob-chev{width:clamp(96px,10vw,152px);height:auto;flex:0 0 auto;margin-top:10px}
@media(max-width:860px){.prob-chev{display:none}}

/* hand-drawn lime underline on the final word */
.ul-draw{position:relative;white-space:nowrap}
.ul-draw:after{content:"";position:absolute;left:-1%;right:-1%;bottom:-.2em;height:.32em;pointer-events:none;
  background:center/100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 18'%3E%3Cpath d='M4 12 C 80 3 150 3 210 8 C 250 11 280 8 296 6' stroke='%23C1EF56' stroke-width='7' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}

/* cards */
.pillars{grid-template-columns:repeat(3,1fr)!important;gap:20px!important;border:0!important;border-top:0!important;margin-top:46px}
@media(max-width:900px){.pillars{grid-template-columns:1fr!important}}
.pillars .pillar{background:#fff!important;border:1px solid var(--line)!important;border-radius:18px;padding:28px 26px!important;display:flex;flex-direction:column}
.pillar-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.pbadge{display:inline-block;background:var(--lime);color:var(--oxford);font-weight:900;font-size:15px;letter-spacing:-.01em;padding:5px 12px;border-radius:9px;line-height:1}
.picon{width:30px;height:30px;color:var(--oxford);flex:0 0 auto}
.pillars .pillar h3{color:var(--oxford);margin-top:0;font-size:clamp(21px,2.2vw,25px);letter-spacing:-.03em;line-height:1.12}
.pillars .pillar p{margin-top:12px;color:#3b4f60;line-height:1.55;font-size:15.5px;flex:1}
.pillars .pillar .proof{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}
.pfig{display:inline-block;background:var(--lime);color:var(--oxford);font-weight:900;font-size:clamp(18px,1.9vw,23px);letter-spacing:-.03em;padding:.14em .34em;line-height:1.08}
.pdesc{display:block;margin-top:11px;font-size:12.5px;color:var(--muted);line-height:1.5}

/* ============================================================
   v12 · Full-bleed image band (placeholder imagery until real shoots)
   ============================================================ */
.imgband{position:relative;width:100%;height:clamp(300px,42vw,540px);overflow:hidden;background:var(--oxford)}
.imgband img{width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block}
.imgband-cap{position:absolute;left:0;bottom:0;background:var(--oxford);color:#fff;padding:20px 26px;max-width:min(94%,560px)}
.imgband-cap .eyebrow{display:block;margin-bottom:8px;color:#fff;opacity:.9;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.imgband-cap .eyebrow:before{content:"";display:inline-block;width:10px;height:10px;background:var(--lime);margin-right:10px;vertical-align:0}
.imgband-cap p{font-size:clamp(16px,2vw,21px);font-weight:700;letter-spacing:-.02em;line-height:1.3}

/* ============================================================
   v11 · Design refresh, November 2026.
   Final layer. Layout, spacing and hierarchy only: palette,
   Inter and the logo are unchanged, and the navy heads from the
   reference layout are kept. Everything else follows brief v4:
   labels 13px uppercase tracked 14% with the lime square, lime
   as the signal, pink on the just-joined label only, charcoal
   for secondary text, flat (no gradients, shadows or glows).
   brand.css stays untouched; this layer overrides it.
   ============================================================ */

:root{--maxw:1200px;--ink2:#485962;--line:rgba(1,25,54,.12);--line-dk:rgba(255,255,255,.16)}
body{background:#fff}
.wrap{max-width:var(--maxw);padding-left:32px;padding-right:32px}

/* ---------- Labels: one style everywhere ---------- */
.eyebrow,.sec-eyebrow,.pagehead .eyebrow,.gh-kicker,.gh-clock-label{
  display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;line-height:1.3;opacity:1;color:var(--oxford)}
.eyebrow:before,.sec-eyebrow:before,.pagehead .eyebrow:before,.gh-kicker:before{
  content:"";display:inline-block;flex:0 0 auto;width:10px;height:10px;margin:0;background:var(--lime);vertical-align:0}
.pagehead .eyebrow,.bg-oxford .eyebrow,.bg-oxford .sec-eyebrow,.bg-pink .eyebrow,.bg-pink .sec-eyebrow,
.cta-band .eyebrow,.cmp .c.new .eyebrow,.verdict-bar .eyebrow,.side.their .eyebrow{color:#fff}
.sec-eyebrow{margin-bottom:0}

/* ---------- Focus: visible on light and dark, no pink ---------- */
.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--oxford);outline-offset:3px}
header.nav :focus-visible,.pagehead :focus-visible,footer :focus-visible,.bg-oxford :focus-visible,.bg-pink :focus-visible,
.cta-band :focus-visible,.gh-hero :focus-visible,.gh-win :focus-visible,.gh-give :focus-visible,.cmp .c.new :focus-visible{outline-color:var(--lime)}

/* ---------- Rhythm ---------- */
section{padding:112px 0}
.section-tight{padding:72px 0}
body .pagehead + section,body .pagehead + .section-tight{padding-top:72px!important}

/* ---------- Buttons (brief): navy primary, lime on navy, navy outline ---------- */
.btn{font-weight:800;border-radius:999px;border:2px solid transparent;transition:background .15s ease,color .15s ease,border-color .15s ease}
.btn-lg{font-size:17px;padding:17px 30px}
.btn-primary,.btn-pink{background:var(--oxford);color:#fff;border-color:var(--oxford)}
.btn-primary:hover,.btn-pink:hover{background:#03234a;border-color:#03234a}
.btn-ghost{background:transparent;color:var(--oxford);border-color:var(--oxford)}
.btn-ghost:hover{background:var(--oxford);color:#fff}
.bg-oxford .btn-primary,.bg-oxford .btn-pink,.bg-pink .btn-primary,.bg-pink .btn-pink,.cta-band .btn-primary,.cta-band .btn-pink,.panel[style*="oxford"] .btn-pink{background:var(--lime);color:var(--oxford);border-color:var(--lime)}
.bg-oxford .btn-primary:hover,.bg-oxford .btn-pink:hover,.bg-pink .btn-primary:hover,.bg-pink .btn-pink:hover,.cta-band .btn-primary:hover,.cta-band .btn-pink:hover{background:var(--lime-deep);border-color:var(--lime-deep)}
.bg-oxford .btn-ghost,.bg-pink .btn-ghost,.cta-band .btn-ghost{background:transparent}
.bg-oxford .btn-ghost:hover,.bg-pink .btn-ghost:hover,.cta-band .btn-ghost:hover{background:#fff;color:var(--oxford)!important;border-color:#fff!important}

/* ---------- Header ---------- */
.nav-in{padding:18px 32px}
.brand-logo{height:38px}
.nav-links{gap:24px}
.nav-links a{font-size:15px;font-weight:600}
.nav-actions .btn{font-size:14px;padding:10px 18px}
.nav-join{border-color:rgba(255,255,255,.5)}

/* ---------- Inner page heads (navy, kept) ---------- */
.pagehead{padding:88px 0 80px}
body .pagehead[style]{padding-bottom:80px!important}
.pagehead h1{font-size:clamp(40px,6vw,76px);font-weight:900;letter-spacing:-.05em;line-height:.95;margin-top:22px;max-width:17ch;text-wrap:balance}
.pagehead .lede{margin-top:26px;font-size:clamp(17px,1.6vw,20px);line-height:1.6;color:rgba(255,255,255,.78);max-width:56ch}
.pagehead:not(:has(h1)){padding:56px 0 28px!important}
.pagehead:not(:has(h1)) + section{padding-top:56px!important}

/* ---------- Section heads ---------- */
.sec-h{font-size:clamp(30px,4vw,52px);font-weight:800;letter-spacing:-.04em;line-height:1.02;margin-top:18px;max-width:20ch;text-wrap:balance}
.sec-sub{margin-top:20px;font-size:clamp(17px,1.6vw,19px);line-height:1.6;color:var(--ink2);max-width:58ch}
.bg-oxford .sec-sub,.bg-pink .sec-sub,.cta-band .sec-sub{color:rgba(255,255,255,.78)!important}

/* ---------- Light sections: white ground, hairlines, no tints ---------- */
.bg-white{background:#fff;border-top:1px solid var(--line)}
.panel,.calc,.index-card,.product,.wall,.board table,.signup,.card{border-radius:0;box-shadow:none}
.panel{border:1px solid var(--line);padding:32px}
.note{font-size:14px;color:var(--ink2);line-height:1.55}
.fineprint{font-size:13px;color:var(--ink2);line-height:1.55}
.err{color:var(--oxford);font-weight:800}

/* ---------- Prose ---------- */
.prose p{font-size:17.5px;line-height:1.7;color:var(--ink2);max-width:62ch}
.prose p.lead{font-size:clamp(22px,2.2vw,28px);font-weight:800;letter-spacing:-.03em;line-height:1.2;color:var(--oxford);margin-top:0}
.prose ul{margin:16px 0 0 0;padding:0;list-style:none;font-size:17.5px;line-height:1.65;color:var(--ink2)}
.prose li{position:relative;padding-left:22px;margin-top:10px}
.prose li:before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;background:var(--lime-deep)}
.prose li b{color:var(--oxford)}
.grid2{gap:72px}

/* ---------- Generic cards (About facts) ---------- */
.cards{gap:16px;margin-top:56px}
.card{background:#fff;border:1px solid var(--line);padding:30px 28px 28px}
.card:before{display:none}
.card .tag{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);opacity:1}
.card h3{margin-top:14px;font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--oxford)}
.card p{margin-top:12px;font-size:16px;line-height:1.6;color:var(--ink2)}
div.card:hover{background:#fff;color:var(--oxford);border-color:var(--line)}
div.card:hover h3,div.card:hover .tag{color:inherit}
div.card:hover .tag{color:var(--ink2)}
div.card:hover p{color:var(--ink2)}

/* ---------- Forms ---------- */
.lbl{font-size:14px;font-weight:700;color:var(--oxford);margin-bottom:8px}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=search],select,textarea{
  font-family:inherit;font-size:16px;color:var(--oxford);background:#fff;border:1.5px solid rgba(1,25,54,.2);border-radius:10px}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=search],select{min-height:52px;padding:0 16px}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--oxford)}
input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--oxford)}
.chips{gap:10px}
.chip{border:1.5px solid rgba(1,25,54,.2);border-radius:999px;font-weight:700;font-size:14px;padding:10px 16px;background:#fff;color:var(--oxford)}
.chip:hover{border-color:var(--oxford)}
.chip[aria-pressed=true]{background:var(--oxford);border-color:var(--oxford);color:#fff}

/* ---------- Tables ---------- */
.board{gap:24px;margin-top:40px}
.board table{font-size:15px;border:1px solid var(--line)}
.board th{padding:14px 16px;font-size:12px;letter-spacing:.14em}
.board td{padding:13px 16px}

/* ---------- Navy call-to-action bands ---------- */
.cta-band{padding:104px 0}
.cta-band h2{font-size:clamp(32px,4.4vw,52px);font-weight:900;letter-spacing:-.045em;line-height:1.02;max-width:20ch;text-wrap:balance}
.cta-band .row{margin-top:32px}
.cta-band .sec-sub b{color:#fff!important}
.bg-pink{background:var(--oxford);color:#fff}

/* ---------- Footer (shared markup, styled here) ---------- */
footer{padding:96px 0 150px;color:#fff}
footer .foot-cols{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:56px}
footer .foot-logo{height:56px}
footer .foot-cols > div:first-child > p{margin-top:20px!important;font-size:15px!important;line-height:1.6!important;opacity:.75!important;max-width:34ch}
footer .foot-cols h4{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--lime);margin-bottom:18px}
footer .foot-cols a{font-size:15px;padding:6px 0;opacity:.78}
footer .foot-cols a:hover{opacity:1}
/* site.css forces footer links to block with padding, which knocked the
   social icons out of their circles. Centre them again. */
footer .foot-cols .socials{margin-top:28px!important;gap:10px}
footer .foot-cols .socials a{display:grid;place-items:center;width:42px;height:42px;padding:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;opacity:1;transition:background .15s ease,color .15s ease}
footer .foot-cols .socials a:hover{background:var(--lime);color:var(--oxford)}
footer .foot-fine{max-width:none;margin-top:72px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:rgba(255,255,255,.6)}
body{padding-bottom:0}

/* ---------- Waste ticker and dock ---------- */
.tickerbar .tlabel{font-size:12px;letter-spacing:.14em;font-weight:800;padding:0 18px}
.cta-dock-in{max-width:var(--maxw);padding:0 32px}

/* ---------- Instagram tiles: flat captions ---------- */
.ig-cap{background:var(--oxford);padding:12px 14px}
.ig-tile{border-radius:6px}

/* ---------- The hand-drawn underline is retired ---------- */
.ul-draw:after{content:none}
.ul-draw{white-space:normal}

/* ============================================================
   ABOUT
   ============================================================ */
.bg-oxford .prose p{color:rgba(255,255,255,.78)!important}
.bg-oxford .prose p.lead{color:#fff!important}
.bg-oxford .panel{background:transparent!important;border:1px solid var(--line-dk)!important;padding:36px!important}
.bg-oxford .panel .eyebrow[style]{color:#fff!important;font-size:13px!important;letter-spacing:.14em!important}
.bg-oxford .panel a[style]{color:#fff!important}

/* ============================================================
   CALCULATOR
   ============================================================ */
.calc{border:1px solid var(--line);margin-top:0}
.calc .in{padding:36px}
.calc-grid{gap:20px}
.calc details summary{color:var(--oxford)!important;font-weight:800!important;font-size:15px!important;cursor:pointer}
.calc .out{padding:36px}
.cmp{border:0;gap:16px;background:transparent}
.cmp .c{border:1px solid var(--line);padding:30px}
.cmp .c.new{border-color:var(--oxford)}
.cmp .big{font-size:clamp(36px,4vw,52px);margin-top:14px}
.cmp ul{font-size:15px;margin-top:20px}
.cmp li{padding:10px 0}
.verdict-c{margin-top:16px;padding:32px 34px}
.verdict-c .vw{font-size:clamp(32px,4vw,48px)}
.verdict-c p{font-size:17px;color:rgba(255,255,255,.82)}
.range-row output{font-weight:800}

/* ============================================================
   WRITE TO YOUR MP
   ============================================================ */
.steps-h{font-size:13px;letter-spacing:.14em;color:var(--oxford);margin-bottom:18px}
.steps-h i{background:var(--lime);color:var(--oxford);width:28px;height:28px}
.mp-found{padding:24px 26px;border-left:8px solid var(--lime)}
.mp-found .seat{color:var(--lime)}
.radio-row{gap:10px}
.radio-row label{border:1.5px solid rgba(1,25,54,.2);padding:10px 16px}
.radio-row label.on{background:var(--oxford);border-color:var(--oxford);color:#fff}
textarea{border-radius:10px;padding:16px;line-height:1.6}

/* ============================================================
   PLEDGE
   ============================================================ */
.pagehead .pledge-card{background:transparent;border:1px solid var(--line-dk);border-left:0;padding:40px;margin-top:48px;max-width:860px}
.pledge-card .three{font-size:clamp(34px,5vw,64px)}
.pledge-card .three span{color:var(--lime)}
.pledge-card ol li{padding:18px 0;font-size:clamp(17px,1.8vw,20px)}
.pledge-card ol li:before{color:var(--lime)}
.pledge-card p[style] a{color:#fff!important}
.wall-sum{border:0;gap:16px;background:transparent;margin-top:40px}
.wall-sum div{border:1px solid var(--line);padding:24px 26px}
.wall-sum b{font-size:clamp(34px,3.6vw,48px);font-weight:900;color:var(--oxford)!important}
.wall-sum b[style]{color:var(--oxford)!important}
.wall-sum span{font-size:13px;letter-spacing:.14em;color:var(--ink2);margin-top:8px;display:block}
.wall-tools{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:12px;margin-top:32px}
.wall-tools input,.wall-tools select{min-width:0;width:100%}
.wall-tools .note{grid-column:1 / -1}
.wall{margin-top:20px}
.wall-row{padding:13px 18px;font-size:15px}
.wall-row:first-child{font-size:12px;letter-spacing:.14em}
.pill{border-radius:999px}

/* ============================================================
   FIX THE BUDGET
   ============================================================ */
.index-card{border:1px solid var(--line);padding:32px}
.bsim .xbtn,.bsim button{border-radius:999px}

/* ============================================================
   SHOP
   ============================================================ */
.pagehead #shopStatus{border:0!important;border-left:8px solid var(--lime)!important;padding:20px 24px;max-width:720px;margin-top:32px!important}
.section-tight > .wrap > img[style]{border:1px solid var(--line)!important}
.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.product{border:1px solid var(--line);padding:18px 18px 20px}
.product .img{background:#F7F8F9}
.product h3{margin-top:18px;font-size:19px;font-weight:800}
.product .d{font-size:14px;color:var(--ink2);line-height:1.5}
.product .pr{font-size:22px;color:var(--oxford)}
.product select{min-height:46px}
.product .btn{padding:13px 18px;font-size:15px}
.shop-note{margin-top:32px;font-size:14px;color:var(--ink2)}
.shop-note a[style]{color:var(--oxford)!important;font-weight:800!important}

/* ============================================================
   BETTER OFF (the June tool, restyled, logic untouched)
   ============================================================ */
.index-card .steps .step{min-width:0}
.verdict-bar{padding:40px 32px}
.verdict-word{color:var(--lime)}
.twoside:before{background:var(--lime)}
.side.their{background:var(--oxford);color:rgba(255,255,255,.85)}
.cut-toggle input{accent-color:var(--oxford)}
.cut-note{background:#fff;color:var(--oxford);border:1px solid var(--line);border-left:4px solid var(--lime-deep);border-radius:0}
.debt-line b,.debt-cgt b{color:var(--oxford)}
.cgt-fig.hero .cv{color:var(--oxford)}
.list-h{border-bottom-color:var(--oxford);letter-spacing:.14em}
.litem .lfig{color:var(--oxford)}
.litem .lbar i,.lead-bar i{background:var(--lime-deep)}
.t-num,.lead-rank{color:var(--oxford)}

/* ============================================================
   JOIN
   ============================================================ */
.signup{border:1px solid var(--line);padding:40px;background:#fff}
.signup h3{font-size:clamp(24px,2.4vw,30px);font-weight:900;letter-spacing:-.035em}
.why{gap:16px!important}
.why > div{border:1px solid var(--line);padding:24px;background:#fff;font-size:15px;line-height:1.55;color:var(--ink2)}
.why > div b{display:block;color:var(--oxford);font-size:18px;font-weight:800;letter-spacing:-.02em;margin-bottom:8px}

/* ============================================================
   DONATE
   ============================================================ */
.panel[style*="oxford"]{padding:36px!important}
.panel[style*="oxford"] .eyebrow[style]{color:#fff!important}
.donate-fine a[style]{color:#fff!important}
.note a[style]{color:var(--oxford)!important;font-weight:800!important}

/* ============================================================
   PRIVACY AND TERMS
   ============================================================ */
.legal{max-width:72ch}
.legal h1,.legal h2{font-size:clamp(36px,4.4vw,56px);font-weight:900;letter-spacing:-.045em;line-height:1}
.legal h4{margin-top:40px;font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--oxford)}
.legal p,.legal li{font-size:16.5px;line-height:1.7;color:var(--ink2);margin-top:12px}
.legal ul{margin-left:0;padding-left:22px}
.legal a{color:var(--oxford);font-weight:700}
.legal .legal-updated{font-size:14px;margin-top:14px}

/* ============================================================
   HOMEPAGE
   ============================================================ */
.home .gh-kicker{color:var(--oxford)}
.home .gh-h1{font-size:clamp(52px,8vw,116px);font-weight:900;letter-spacing:-.055em;line-height:.88;margin-top:26px;color:#fff}
.home .gh-h1 .pk{display:inline-block;background:var(--lime);color:var(--oxford);padding:.02em .1em .1em;line-height:.92;margin-top:.04em}
.home .gh-h2{font-size:clamp(30px,4vw,52px);font-weight:800;letter-spacing:-.04em;line-height:1.02;margin-top:18px;color:var(--oxford);text-wrap:balance}
.home .gh-sub{font-size:clamp(17px,1.6vw,19px);line-height:1.6;color:var(--ink2);max-width:46ch}
.home .gh-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.home .gh-btn{font-size:16px;font-weight:800;letter-spacing:-.01em;padding:16px 28px;border-radius:999px;border:2px solid transparent;line-height:1.2}
.home .gh-btn-lime{background:var(--lime);color:var(--oxford);border-color:var(--lime)}
.home .gh-btn-lime:hover{background:var(--lime-deep);border-color:var(--lime-deep)}
.home .gh-btn-line-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.home .gh-btn-line-light:hover{background:#fff;color:var(--oxford);border-color:#fff}
.home .gh-sec{padding:120px 0}

/* Hero (navy, kept) */
.home .gh-hero{background:var(--oxford);color:#fff;padding:80px 0 0;overflow:hidden}
.home .gh-hero .gh-kicker{color:#fff}
.home .gh-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:72px;align-items:center}
.home .gh-lede{margin-top:36px;max-width:56ch}
.home .gh-lede p{font-size:clamp(17px,1.5vw,19px);line-height:1.65;color:rgba(255,255,255,.78)}
.home .gh-lede p + p{margin-top:18px}
/* The hook tiles: uppercase, as in the three-second tile from the clips */
.home .gh-lede b{background:#fff;color:var(--oxford);font-weight:900;text-transform:uppercase;letter-spacing:.01em;padding:.12em .36em;box-decoration-break:clone;-webkit-box-decoration-break:clone;line-height:1.9}
.home .gh-backed{margin-top:28px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.62);max-width:52ch}

/* Countdown placard: the one loud element */
.home .gh-clock{display:flex;flex-direction:column;color:var(--oxford)}
.home .gh-clock-face{background:var(--lime);padding:30px 32px 30px}
.home .gh-clock-label{color:var(--oxford)}
.home .gh-clock-days{display:block;margin-top:14px;font-size:clamp(96px,10vw,148px);font-weight:900;letter-spacing:-.06em;line-height:.85;font-variant-numeric:tabular-nums}
.home .gh-clock-hms{display:grid;grid-template-columns:repeat(3,1fr);margin-top:26px;border-top:2px solid var(--oxford)}
.home .gh-clock-hms > div{display:flex;flex-direction:column;padding-top:16px}
.home .gh-clock-hms > div + div{border-left:2px solid var(--oxford);padding-left:18px}
.home .gh-clock-hms .n{font-size:clamp(36px,3.6vw,48px);font-weight:900;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.home .gh-clock-hms .u{margin-top:8px;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.home .gh-clock-date{background:#fff;padding:22px 32px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.home .gh-clock-date .gh-clock-label{color:var(--ink2)}
.home .gh-clock-when{font-size:clamp(28px,2.6vw,36px);font-weight:900;letter-spacing:-.045em;line-height:1;white-space:nowrap}

/* Stats band (navy, numbers in lime) */
.home .gh-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:88px;border-top:1px solid var(--line-dk)}
.home .gh-stats .stat,
.home .gh-stats .stat:first-child,
.home .gh-stats .stat:nth-child(odd),
.home .gh-stats .stat + .stat{background:transparent;color:#fff;border:0;border-left:1px solid var(--line-dk);padding:32px 32px 44px;margin:0;display:flex;flex-direction:column}
.home .gh-stats .stat:first-child{border-left:0;padding-left:0}
.home .gh-stats .stat .n,
.home .gh-stats .stat .n.pk{order:0;color:var(--lime);font-size:clamp(36px,3.6vw,52px);font-weight:900;letter-spacing:-.045em;line-height:1;font-variant-numeric:tabular-nums}
.home .gh-stats .stat .l{order:1;margin:12px 0 0;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.72);line-height:1.4}

/* Just joined (pink is the mark here and only here) */
.home .joinedbar{background:#fff;color:var(--oxford);border:0;border-bottom:1px solid var(--line)}
.home .gh-joined-in{display:flex;align-items:stretch}
.home .gh-joined-in .jlabel{flex:0 0 auto;display:flex;align-items:center;background:var(--pink);color:#fff;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:15px 22px}
.home .gh-joined-in .joined-vp{flex:1 1 auto;width:auto;display:flex;align-items:center;overflow:hidden}
.home .joinedbar .j-item{font-size:14px;padding:0 24px;opacity:1}
.home .joinedbar .j-item b{color:var(--oxford)}
.home .joinedbar .j-item:before{color:var(--lime-deep)}

/* What this is about */
.home .gh-why{background:#fff}
.home .gh-head-split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:72px;align-items:end}
.home .gh-head-split .gh-h2{max-width:17ch}
.home .gh-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:80px}
.home .gh-why-col{display:flex;flex-direction:column;border-top:2px solid var(--oxford);padding-top:30px}
.home .gh-why-icon{width:30px;height:30px;color:var(--oxford)}
.home .gh-why-col h3{margin-top:22px;font-size:clamp(22px,2vw,26px);font-weight:800;letter-spacing:-.03em;line-height:1.12;color:var(--oxford)}
.home .gh-why-col p{margin-top:14px;font-size:17px;line-height:1.6;color:var(--ink2);flex:1}
.home .gh-proof{margin-top:30px;background:var(--oxford);color:#fff;padding:24px 24px 26px}
.home .gh-proof-fig{display:block;font-size:clamp(28px,2.6vw,38px);font-weight:900;letter-spacing:-.045em;line-height:1;color:var(--lime)}
.home .gh-proof-desc{display:block;margin-top:12px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.76)}

/* What we are going to win (navy) */
.home .gh-win{background:var(--oxford);color:#fff}
.home .gh-win .gh-kicker{color:#fff}
.home .gh-win .gh-h2{color:#fff;max-width:18ch}
.home .gh-win-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:64px}
.home .gh-win-list li{border-top:2px solid var(--lime);padding-top:24px;font-size:17px;line-height:1.6;color:rgba(255,255,255,.76)}
.home .gh-win-list b{display:block;margin-bottom:12px;font-size:22px;font-weight:800;letter-spacing:-.025em;line-height:1.18;color:#fff}
.home .gh-win .gh-actions{margin-top:44px}
.home .gh-timeline{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:96px;padding-top:4px}
.home .gh-timeline li{position:relative;padding:40px 32px 0 0}
.home .gh-timeline li:before{content:"";position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;border:2px solid var(--lime);background:var(--oxford);z-index:1}
.home .gh-timeline li:after{content:"";position:absolute;left:16px;right:0;top:7px;height:2px;background:rgba(255,255,255,.22)}
.home .gh-timeline li:last-child:after{display:none}
.home .gh-timeline .d{display:block;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}
.home .gh-timeline .t{display:block;margin-top:12px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.74);max-width:30ch}
.home .gh-timeline .t b{color:#fff}
.home .gh-timeline .is-deadline:before{background:var(--lime);width:22px;height:22px;top:-3px}
.home .gh-timeline .is-deadline .d{font-size:clamp(28px,2.8vw,38px);font-weight:900;letter-spacing:-.045em;text-transform:none;line-height:1}

/* Do something: six hairline cards that flip to navy on hover (brief) */
.home .gh-do{background:#fff;border-top:1px solid var(--line)}
.home .gh-do .gh-h2{max-width:18ch}
.home .gh-do-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:64px}
.home .gh-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);padding:32px 30px 30px;color:var(--oxford);text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}
.home .gh-card .tag{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2)}
.home .gh-card h3{margin-top:14px;font-size:clamp(21px,1.9vw,25px);font-weight:800;letter-spacing:-.03em;line-height:1.14}
.home .gh-card p{margin-top:14px;font-size:16px;line-height:1.6;color:var(--ink2);flex:1}
.home .gh-card .go{align-self:flex-start;margin-top:26px;font-size:15px;font-weight:800;text-decoration:underline;text-decoration-color:var(--lime-deep);text-decoration-thickness:3px;text-underline-offset:6px}
.home .gh-card:hover{background:var(--oxford);border-color:var(--oxford);color:#fff}
.home .gh-card:hover .tag{color:var(--lime)}
.home .gh-card:hover p{color:rgba(255,255,255,.78)}
.home .gh-card:hover .go{text-decoration-color:var(--lime)}

/* Photo band (placeholder imagery until launch photos) */
.home .gh-photo{position:relative;padding:0;height:clamp(380px,44vw,600px);overflow:hidden;background:var(--oxford)}
.home .gh-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.home .gh-photo-wrap{position:relative;height:100%;display:flex;align-items:flex-end}
.home .gh-photo-cap{background:var(--oxford);color:#fff;padding:30px 34px 32px;max-width:500px}
.home .gh-photo-cap .gh-kicker{color:#fff}
.home .gh-photo-cap p{margin-top:14px;font-size:clamp(18px,1.8vw,22px);font-weight:700;letter-spacing:-.02em;line-height:1.3}

/* Who is behind this */
.home .gh-people{background:#fff}
.home .gh-people-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}
.home .gh-people-txt .gh-sub{margin-top:24px}
.home .gh-person{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);background:#fff;border:1px solid var(--line)}
.home .gh-person-pic{position:relative;min-height:320px;background:#dfe7ea}
.home .gh-person-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.home .gh-person-body{padding:32px 30px;display:flex;flex-direction:column;justify-content:center}
.home .gh-person h3{font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--oxford)}
.home .gh-person .role{margin-top:8px;font-size:14px;font-weight:700;line-height:1.4;color:var(--ink2)}
.home .gh-person p{margin-top:18px;padding-top:18px;border-top:2px solid var(--lime);font-size:16px;line-height:1.6;color:var(--oxford)}

/* Chip in band (navy, per brief) */
.home .gh-give{background:var(--oxford);color:#fff;padding:112px 0}
.home .gh-give .gh-kicker{color:#fff}
.home .gh-give-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:72px;align-items:end}
.home .gh-give .gh-h2{color:#fff;max-width:14ch;font-weight:900}
.home .gh-give .gh-sub{color:rgba(255,255,255,.78)}
.home .gh-give .gh-actions{margin-top:28px}

/* Feeds */
.home .gh-feed{background:#fff;padding:112px 0 0}
.home .gh-feed .igwrap{margin-top:0}
.home .gh-feed-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}
.home .gh-follow{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--oxford);text-decoration:none;padding:11px 20px;border:1.5px solid var(--oxford);border-radius:999px;transition:background .15s ease,color .15s ease}
.home .gh-follow:hover{background:var(--oxford);color:#fff}
.home .gh-feed .ig-track{gap:14px}
.home .gh-feed .ig-tile{flex:0 0 220px;width:220px}
.home .gh-voices{background:#fff;padding:104px 0 96px}
.home .gh-voices .gh-sub a{color:var(--oxford);font-weight:800;text-decoration:underline;text-decoration-color:var(--lime-deep);text-decoration-thickness:3px;text-underline-offset:5px}
.home .gh-voices .albos-scroller{margin-top:48px}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1100px){
  .home .gh-hero-grid{grid-template-columns:minmax(0,1fr) 340px;gap:48px}
  .products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:980px){
  section{padding:88px 0}
  .home .gh-sec,.home .gh-give{padding:88px 0}
  .pagehead{padding:64px 0 56px}
  body .pagehead[style]{padding-bottom:56px!important}
  .grid2{gap:48px}
  .home .gh-hero{padding-top:64px}
  .home .gh-hero-grid{grid-template-columns:1fr;gap:48px}
  .home .gh-clock{max-width:520px}
  .home .gh-head-split{grid-template-columns:1fr;gap:20px}
  .home .gh-why-grid{grid-template-columns:1fr;gap:48px;margin-top:56px}
  .home .gh-win-list{grid-template-columns:1fr;gap:32px;margin-top:48px}
  .home .gh-timeline{grid-template-columns:1fr;margin-top:64px}
  .home .gh-timeline li{padding:0 0 32px 44px}
  .home .gh-timeline li:before{left:0;top:2px}
  .home .gh-timeline li:after{left:7px;right:auto;top:20px;bottom:0;width:2px;height:auto}
  .home .gh-timeline .is-deadline:before{left:-3px;top:0}
  .home .gh-do-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px}
  .home .gh-people-grid{grid-template-columns:1fr;gap:48px}
  .home .gh-give-grid{grid-template-columns:1fr;gap:24px}
  footer .foot-cols{grid-template-columns:1fr 1fr;gap:40px}
  footer .foot-cols > div:first-child{grid-column:1 / -1}
  .wall-tools{grid-template-columns:1fr 1fr}
  .wall-tools input{grid-column:1 / -1}
}
@media (max-width:760px){
  .products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cmp{grid-template-columns:1fr}
}
@media (max-width:640px){
  .wrap{padding-left:20px;padding-right:20px}
  .nav-in{padding:14px 20px}
  section{padding:72px 0}
  .section-tight{padding:56px 0}
  body .pagehead + section,body .pagehead + .section-tight{padding-top:48px!important}
  .pagehead{padding:48px 0 44px}
  body .pagehead[style]{padding-bottom:44px!important}
  .pagehead h1{font-size:clamp(38px,11vw,52px)}
  .panel,.signup,.calc .in,.calc .out,.index-card{padding:22px}
  .pagehead .pledge-card{padding:26px 22px}
  .cta-band{padding:72px 0}
  .home .gh-sec,.home .gh-give{padding:72px 0}
  .home .gh-hero{padding-top:48px}
  .home .gh-h1{font-size:clamp(33px,9.4vw,46px);margin-top:18px}
  .home .gh-lede{margin-top:26px}
  .home .gh-lede p{font-size:16px;line-height:1.6}
  .home .gh-lede b{line-height:1.7}
  .home .gh-actions{flex-direction:column;align-items:stretch}
  .home .gh-btn{justify-content:center}
  .home .gh-clock-face{padding:24px 22px}
  .home .gh-clock-days{font-size:clamp(88px,30vw,120px)}
  .home .gh-clock-hms > div + div{padding-left:14px}
  .home .gh-clock-date{padding:18px 22px 20px}
  .home .gh-stats{grid-template-columns:1fr 1fr;margin-top:56px}
  .home .gh-stats .stat,
  .home .gh-stats .stat:first-child,
  .home .gh-stats .stat:nth-child(odd),
  .home .gh-stats .stat + .stat{border-left:0;padding:24px 16px 24px 0;border-bottom:1px solid var(--line-dk)}
  .home .gh-stats .stat:last-child{grid-column:1 / -1;border-bottom:0}
  .home .gh-joined-in .jlabel{padding:13px 16px}
  .home .gh-do-grid{grid-template-columns:1fr}
  .home .gh-photo{height:auto;display:flex;flex-direction:column}
  .home .gh-photo img{position:static;height:300px}
  .home .gh-photo-wrap{padding:0}
  .home .gh-photo-cap{max-width:none;width:100%;padding:24px 20px 28px}
  .home .gh-person{grid-template-columns:1fr}
  .home .gh-person-pic{min-height:0;aspect-ratio:4/3}
  .home .gh-person-body{padding:26px 22px}
  .home .gh-feed{padding-top:72px}
  .home .gh-feed-head{flex-direction:column;align-items:flex-start;gap:16px}
  .home .gh-feed .ig-tile{flex:0 0 170px;width:170px}
  .home .gh-voices{padding:72px 0 88px}
  footer{padding:72px 0 150px}
  footer .foot-cols{grid-template-columns:1fr 1fr;gap:36px 24px}
  .products{grid-template-columns:1fr 1fr;gap:12px}
  .product{padding:12px 12px 14px}
  .wall-tools{grid-template-columns:1fr}
  .wall-sum{grid-template-columns:1fr 1fr}
  .wall-sum div:last-child{grid-column:1 / -1}
}
@media (prefers-reduced-motion:reduce){
  .ig-track,.albos-track,.joined-track,.ticker-track{animation:none}
}

/* Header buttons keep their own styling over the generic button rules */
header.nav .nav-join{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
header.nav .nav-join:hover{background:#fff;color:var(--oxford);border-color:#fff}
header.nav .nav-donate{background:var(--lime);color:var(--oxford);border-color:var(--lime)}
header.nav .nav-donate:hover{background:var(--lime-deep);border-color:var(--lime-deep)}
/* About facts: an even three by two */
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cards{grid-template-columns:1fr}}
/* Better Off: note box and simulator band to the brief */
.your .cut-note{background:#fff;color:var(--oxford);border:1px solid var(--line);border-left:4px solid var(--lime-deep);border-radius:0}
.your li b{color:var(--oxford)}
.simband{padding:44px 40px}
.simband .btn-pink{background:var(--lime);color:var(--oxford);border-color:var(--lime)}
.simband .btn-pink:hover{background:var(--lime-deep);border-color:var(--lime-deep)}
/* Fix the Budget: the simulator brings its own frame, so drop the outer one */
.index-card:has(> .bsim){border:0;padding:0}
/* Sticky dock outline buttons keep their outline */
.cta-dock .btn-dock-ghost{border:1.5px solid rgba(255,255,255,.5)}
.cta-dock .btn-dock-primary{border-color:var(--lime)}
/* Mobile menu: a clear bottom edge over the page */
@media (max-width:959px){ .nav-links.open{padding:16px 20px 24px;border-bottom:1px solid rgba(255,255,255,.16)!important} }

/* ============================================================
   v13 - Albo's tax embedded post wall (client request)
   Restore the full LinkedIn post embeds and news cards as a
   card grid, replacing the one-line scroller. Styled to sit in
   the refreshed white voices section. Overrides the v-scroller.
   ============================================================ */
.home .gh-voices .albos-wall{overflow:visible;margin-top:44px}
.home .gh-voices .albos-track{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;align-items:start;white-space:normal;padding:0;margin:0;animation:none}
.home .gh-voices .albos-embed{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.home .gh-voices .albos-embed iframe{display:block;width:100%;height:420px;border:0}
.home .gh-voices .albos-card{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff;display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s ease,transform .15s ease}
.home .gh-voices .albos-card:hover{border-color:var(--oxford);transform:translateY(-2px)}
.home .gh-voices .albos-card .src{font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.home .gh-voices .albos-card .txt{font-weight:800;font-size:18px;letter-spacing:-.015em;margin-top:12px;color:var(--oxford);line-height:1.32}
.home .gh-voices .albos-read{margin-top:auto;padding-top:18px;font-weight:800;font-size:12px;letter-spacing:.02em;color:var(--oxford);text-decoration:underline;text-decoration-color:var(--lime-deep);text-decoration-thickness:3px;text-underline-offset:4px}
/* Fallback band when the live feed is unavailable */
.home .gh-voices .albos-link{display:block}
.home .gh-voices .albos-band{display:flex;flex-direction:column;gap:12px;background:var(--oxford);color:#fff;border-radius:18px;padding:40px 36px;text-decoration:none}
.home .gh-voices .albos-band .ab-big{font-size:clamp(34px,4vw,52px);font-weight:900;letter-spacing:-.04em;line-height:.95}
.home .gh-voices .albos-band .ab-big:after{content:"";display:inline-block;width:.5em;height:.14em;background:var(--lime);margin-left:.1em;vertical-align:baseline}
.home .gh-voices .albos-band .ab-txt{font-size:18px;color:rgba(255,255,255,.82);max-width:60ch;line-height:1.5}
.home .gh-voices .albos-band .ab-go{font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--lime)}
@media (max-width:640px){
  .home .gh-voices .albos-track{grid-template-columns:1fr;gap:14px}
  .home .gh-voices .albos-embed iframe{height:460px}
  .home .gh-voices .albos-card{padding:22px}
}

/* ============================================================
   v14 - White home theme (client request)
   Hero and the rest of the page go white. Navy only in the top
   bar and footer. Lime and pink stay as highlights and buttons.
   No navy hero block, no pink splash. Overrides the navy bands.
   ============================================================ */
/* Hero: white */
.home .gh-hero{background:#fff;color:var(--oxford);padding:72px 0 76px}
.home .gh-hero .gh-kicker{color:var(--oxford)}
.home .gh-h1{color:var(--oxford)}
.home .gh-lede p{color:var(--ink2)}
.home .gh-lede b{background:none;color:var(--oxford);padding:0;line-height:inherit}
.home .gh-backed{color:var(--ink2)}
/* Outline buttons now sit on white: navy outline, navy fill on hover */
.home .gh-btn-line-light{background:transparent;color:var(--oxford);border-color:var(--oxford)}
.home .gh-btn-line-light:hover{background:var(--oxford);color:#fff;border-color:var(--oxford)}
/* Countdown clock: calm white card with a lime accent, navy figures. Days to go stays. */
.home .gh-clock{border:1px solid var(--line);background:#fff}
.home .gh-clock-face{background:#fff;border-top:4px solid var(--lime);padding:28px 30px 28px}
.home .gh-clock-label{color:var(--ink2)}
.home .gh-clock-days{color:var(--oxford)}
.home .gh-clock-hms{border-top:1px solid var(--line)}
.home .gh-clock-hms > div + div{border-left:1px solid var(--line)}
.home .gh-clock-hms .n{color:var(--oxford)}
.home .gh-clock-date{background:#fff;border-top:1px solid var(--line)}
.home .gh-clock-date .gh-clock-label{color:var(--ink2)}
.home .gh-clock-when{color:var(--oxford)}
/* Why boxes: headline + number only, on white. Navy figure, muted desc, no navy panel. */
.home .gh-proof{background:none;color:var(--oxford);padding:0;margin-top:22px}
.home .gh-proof-fig{color:var(--oxford)}
.home .gh-proof-desc{color:var(--ink2)}
/* Four asks: white, four equal columns, lime top rule, nothing under each line */
.home .gh-win{background:#fff;color:var(--oxford)}
.home .gh-win .gh-kicker{color:var(--oxford)}
.home .gh-win .gh-h2{color:var(--oxford)}
.home .gh-win-asks{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:56px}
.home .gh-win-asks li{border-top:3px solid var(--lime);padding-top:22px;color:var(--oxford)}
.home .gh-win-asks b{display:block;margin:0;font-size:clamp(19px,1.6vw,23px);font-weight:800;letter-spacing:-.025em;line-height:1.2;color:var(--oxford)}
/* Chip in: white */
.home .gh-give{background:#fff;color:var(--oxford)}
.home .gh-give .gh-kicker{color:var(--oxford)}
.home .gh-give .gh-h2{color:var(--oxford)}
.home .gh-give .gh-sub{color:var(--ink2)}
@media (max-width:860px){ .home .gh-win-asks{grid-template-columns:1fr;gap:20px} }
@media (max-width:560px){ .home .gh-win-asks{grid-template-columns:1fr;gap:20px} }
/* Hidden counters must stay hidden: the display rules above beat the [hidden] attribute */
.home .gh-stats[hidden],.joinedbar[hidden]{display:none!important}

/* ============================================================
   v15 - Sticky dock + footer clearance on phones (client request)
   The waste ticker now runs on Better Off only. Where there is no
   ticker, the sticky donate dock sits on the bottom edge; where the
   ticker is present it rises above it. Footer keeps clear of both
   on mobile so nothing is chopped.
   ============================================================ */
.cta-dock{bottom:0}
body:has(.tickerbar) .cta-dock{bottom:46px}
/* Footer always clears the dock (and the ticker where present) */
footer{padding-bottom:132px}
body:has(.tickerbar) footer{padding-bottom:170px}
@media (max-width:600px){
  footer{padding-bottom:150px}
  body:has(.tickerbar) footer{padding-bottom:188px}
}

/* ============================================================
   v16 - Donate page: Stripe Checkout selector (client request)
   Frequency toggle, amount grid and "other" field on the navy
   donate panel. Continues to Stripe's hosted checkout.
   ============================================================ */
.don-freq{display:flex;gap:6px;margin-top:16px;background:rgba(255,255,255,.08);padding:4px;border-radius:999px}
.don-freq-btn{flex:1;padding:11px 10px;border:0;background:transparent;color:#fff;font-weight:800;font-size:14px;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease}
.don-freq-btn.is-on{background:#fff;color:var(--oxford)}
.don-amts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.don-amt{padding:16px 6px;border:1.5px solid rgba(255,255,255,.32);background:transparent;color:#fff;font-weight:800;font-size:16px;border-radius:12px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}
.don-amt:hover{border-color:#fff}
.don-amt.is-on{background:var(--lime);color:var(--oxford);border-color:var(--lime)}
.don-other-wrap{margin-top:14px}
.don-other-in{display:flex;align-items:center;gap:6px;background:#fff;border-radius:10px;padding:0 14px;margin-top:6px}
.don-other-in span{color:var(--oxford);font-weight:800;font-size:17px}
.don-other-in input{border:0;outline:0;padding:13px 0;flex:1;font-size:16px;color:var(--oxford);background:transparent;font-weight:700}
@media (max-width:420px){ .don-amts{grid-template-columns:repeat(2,1fr)} }

/* v16b - Donor detail fields on the navy donate panel */
.don-fields{margin-top:18px;display:flex;flex-direction:column;gap:12px}
.don-fields .don-f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.don-fields label.lbl{display:block;margin-bottom:5px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.9}
.don-fields input{width:100%;background:#fff;border:0;border-radius:10px;padding:13px 14px;font-size:15px;font-weight:600;color:var(--oxford);outline:0}
.don-fields input::placeholder{color:#9aa7b0;font-weight:500}
@media (max-width:420px){ .don-fields .don-f2{grid-template-columns:1fr} }

/* ============================================================
   v18 - Donate page "Donations open soon" panel
   ============================================================ */
#donSoon[hidden],#donLive[hidden]{display:none!important}
.don-soon-h{margin-top:14px;font-size:clamp(30px,3.2vw,40px);font-weight:900;letter-spacing:-.045em;line-height:1;color:#fff}
.don-soon-h:after{content:"";display:block;width:56px;height:5px;background:var(--lime);margin-top:16px}
.don-soon-p{margin-top:16px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.85)}

/* ============================================================
   v17 - "You're in" pop-up in the new branding
   Used after joining, sending an MP letter, the calculators and
   the shop waitlist. Left aligned, lime top bar, navy type,
   lime tick, navy links with a lime underline. No pink.
   ============================================================ */
.modal:has(.modal-card.joined){align-items:center;background:rgba(1,25,54,.72)}
.modal-card.joined{position:relative;max-width:520px;text-align:left;padding:44px 40px 38px;border-radius:16px;border-top:8px solid var(--lime);box-shadow:none}
.modal-card.joined .modal-close{position:absolute;top:18px;right:18px;float:none;background:#fff;border:1.5px solid var(--line);color:var(--oxford);width:40px;height:40px;font-size:20px;line-height:1}
.modal-card.joined .modal-close:hover{border-color:var(--oxford)}
.modal-card.joined .joined-tick{margin:0;width:56px;height:56px;line-height:56px;border-radius:50%;background:var(--lime);color:var(--oxford);font-size:28px;font-weight:900;text-align:center}
.modal-card.joined h2{margin-top:22px;font-size:40px;font-weight:900;letter-spacing:-.045em;line-height:1;color:var(--oxford)}
.modal-card.joined #joinedBody{margin-top:16px;font-size:17px;line-height:1.6;color:var(--ink2)}
.modal-card.joined #joinedBody p{margin:0 0 12px}
.modal-card.joined #joinedBody p:last-child{margin-bottom:0}
.modal-card.joined #joinedBody strong,.modal-card.joined #joinedBody b{color:var(--oxford)}
.modal-card.joined #joinedBody a{color:var(--oxford)!important;font-weight:800!important;text-decoration:underline!important;text-decoration-color:var(--lime-deep)!important;text-decoration-thickness:3px!important;text-underline-offset:5px}
.modal-card.joined #joinedBody a:hover{text-decoration-color:var(--oxford)!important}
@media (max-width:560px){
  .modal-card.joined{padding:36px 24px 30px}
  .modal-card.joined h2{font-size:32px}
  .modal-card.joined #joinedBody{font-size:16px}
}
.soon-give[hidden]{display:none!important}
.don-fields textarea{width:100%;background:#fff;border:0;border-radius:10px;padding:13px 14px;font-size:15px;font-weight:600;color:var(--oxford);outline:0;font-family:inherit;resize:vertical;min-height:84px}
.don-fields textarea::placeholder{color:#9aa7b0;font-weight:500}
#donSoon .don-freq-btn{font-size:13px;padding:11px 8px;line-height:1.25}

/* ============================================================
   SHOP COMING SOON. Hides the product grid, prices and the old
   status note until the shop opens. Delete this block (and the
   panel in shop.html) to open the shop.
   ============================================================ */
#products,.shop-note,#shopStatus{display:none!important}
.shop-soon{margin-top:22px;max-width:760px}
.shop-soon-fields{display:grid!important;grid-template-columns:1.2fr 1.4fr .8fr;gap:12px}
@media (max-width:700px){ .shop-soon-fields{grid-template-columns:1fr} }
#swGo{min-width:280px}
@media (max-width:560px){ #swGo{width:100%;min-width:0} }

/* ===== DONATE: address compliance note ===== */
.don-info{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.08);font-size:14px;line-height:1.45;color:#fff}
.don-info svg{flex:0 0 16px;margin-top:2px;color:var(--lime,#C1EF56)}
