/* ============================================================
   McCOWN CO. / AFFTRA.org  ::  Shared Stylesheet
   Rugged-patriotic: charcoal + gold + navy + deep red
   ============================================================ */

:root{
  --ink:#0c0e11;
  --ink-2:#121519;
  --panel:#191f27;
  --panel-2:#212a35;
  --panel-3:#2b3643;
  --line:#3a4654;
  --gold:#c8971c;
  --gold-bright:#f0c331;
  --gold-soft:#e3b94b;
  --navy:#15263f;
  --navy-2:#0d1a2c;
  --red:#9e1b1b;
  --red-bright:#c0392b;
  --green:#3f6f3a;
  --cream:#f3ece0;
  --cream-dim:#cdc6ba;
  --muted:#9aa6b2;
  --shadow:0 18px 40px rgba(0,0,0,.45);
  --maxw:1180px;
  --r:3px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--cream);
  background:linear-gradient(180deg,#0b0d10 0%,#0d1117 38%,#0b0e13 68%,#0a0c0f 100%) fixed;
  background-color:#0b0d10;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:var(--gold-soft);text-decoration:none}
a:hover{color:var(--gold-bright)}

/* ---------- type ---------- */
h1,h2,h3,h4,.display{
  font-family:"Oswald","Inter",sans-serif;
  font-weight:600;
  line-height:1.05;
  letter-spacing:.5px;
  margin:0 0 .4em;
  text-transform:uppercase;
}
.display,.hero h1{
  font-family:"Anton","Oswald",sans-serif;
  font-weight:400;
  letter-spacing:1px;
}
h2{font-size:clamp(1.8rem,4vw,2.9rem)}
h3{font-size:clamp(1.2rem,2.4vw,1.6rem)}
p{margin:0 0 1rem}
.lead{font-size:clamp(1.05rem,1.8vw,1.25rem);color:var(--cream-dim)}
.gold{color:var(--gold-bright)}
.serif{font-family:"Roboto Slab",Georgia,serif;text-transform:none;letter-spacing:0}

.kicker{
  display:inline-block;
  font-family:"Oswald",sans-serif;
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:.82rem;
  font-weight:600;
  color:var(--gold-bright);
  padding:6px 0;
  margin-bottom:.6rem;
  border-bottom:2px solid var(--red-bright);
}

/* ---------- layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
section{position:relative}
.pad{padding:clamp(56px,8vw,108px) 0}
.pad-sm{padding:clamp(40px,5vw,64px) 0}
.center{text-align:center}
.mt0{margin-top:0}
.eq{display:grid;gap:26px}
@media(min-width:760px){.cols-2{grid-template-columns:1fr 1fr}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}}

/* textures / backgrounds */
.tex-grain::after{
  content:"";position:absolute;inset:0;
  background-image:url("images/grain.png");
  background-size:160px;opacity:.5;pointer-events:none;mix-blend-mode:overlay;
}
/* sections layer over the continuous body gradient with soft, borderless tints.
   Tints ramp from transparent at the top/bottom so there is never a hard seam. */
.bg-ink{background:transparent}
.bg-steel{background:linear-gradient(180deg, transparent 0%, rgba(44,55,68,.20) 48%, transparent 100%)}
/* navy = subtle blue tint that ramps in from transparent, no hard band */
.bg-navy{background:linear-gradient(180deg, transparent 0%, rgba(26,46,76,.26) 50%, transparent 100%)}
/* flag = textured accent that dissolves into the dark flow at top and bottom */
.bg-flag{
  position:relative;
  background:
    linear-gradient(180deg, rgba(8,11,15,.30) 0%, rgba(8,11,15,.58) 58%, #0b0d10 100%),
    url("images/flag.jpg") center/cover no-repeat;
  background-color:#0b0d10;
}
.hairline{border-top:1px solid var(--line)}

/* ---------- buttons (signature notched plate) ---------- */
.btn{
  --c1:var(--gold);--c2:var(--gold-bright);--tc:#1a1206;
  display:inline-flex;align-items:center;gap:.55em;
  font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase;
  letter-spacing:1.5px;font-size:.98rem;
  padding:15px 30px;color:var(--tc);cursor:pointer;border:0;
  background:linear-gradient(180deg,var(--c2),var(--c1));
  clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
  box-shadow:0 6px 0 rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.4);
  transition:transform .12s ease, box-shadow .12s ease, filter .12s ease;
  position:relative;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 9px 0 rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.5);filter:brightness(1.05);color:var(--tc)}
.btn:active{transform:translateY(3px);box-shadow:0 2px 0 rgba(0,0,0,.45)}
.btn-red{--c1:#8d1717;--c2:#c0392b;--tc:#fff}
.btn-ghost{--tc:var(--cream);background:transparent;border:2px solid var(--gold);box-shadow:none;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.btn-ghost:hover{background:rgba(200,151,28,.12);color:var(--gold-bright)}
.btn-lg{font-size:1.12rem;padding:19px 42px;letter-spacing:2px}
.btn-sm{padding:10px 16px;font-size:.8rem;letter-spacing:1px}
.btn-block{width:100%;justify-content:center}
.btn-row{display:flex;flex-wrap:wrap;gap:14px}

/* ---------- header / nav ---------- */
.topbar{
  background:var(--red);color:#fbe9c9;font-size:.84rem;
  font-family:"Oswald",sans-serif;letter-spacing:.5px;
  text-align:center;padding:7px 16px;
}
.topbar a{color:#fff;text-decoration:underline;font-weight:600}
header.nav{
  position:sticky;top:0;z-index:60;
  background:linear-gradient(180deg,#0e1319 0%, #0b0f14 100%);
  border-bottom:2px solid var(--gold);
  box-shadow:0 6px 20px rgba(0,0,0,.5);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px;max-width:var(--maxw);margin:0 auto}
.brand{display:flex;align-items:center;gap:12px;color:var(--cream)}
.brand img{width:48px;height:48px;border-radius:4px}
.brand b{font-family:"Oswald",sans-serif;font-weight:600;font-size:1.15rem;text-transform:uppercase;letter-spacing:1px;line-height:1}
.brand span{display:block;font-size:.66rem;letter-spacing:3px;color:var(--gold-bright)}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-links a{
  font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;
  font-size:.92rem;color:var(--cream-dim);padding:10px 13px;border-radius:2px;
}
.nav-links a:hover,.nav-links a.active{color:var(--gold-bright)}
.nav-links .btn{margin-left:6px;padding:10px 15px;font-size:.79rem;letter-spacing:1px}
.hamburger{display:none;background:transparent;border:2px solid var(--line);color:var(--cream);
  width:46px;height:42px;cursor:pointer;align-items:center;justify-content:center;border-radius:3px}
.hamburger span{display:block;width:22px;height:2px;background:var(--gold-bright);position:relative}
.hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--gold-bright)}
.hamburger span::before{top:-7px}.hamburger span::after{top:7px}

@media(max-width:900px){
  .hamburger{display:inline-flex}
  .nav-links{
    position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;
    background:#0b0f14;border-bottom:2px solid var(--gold);padding:10px 16px 18px;gap:2px;
    max-height:0;overflow:hidden;transition:max-height .3s ease;
  }
  .nav-links.open{max-height:520px}
  .nav-links a{padding:13px 8px;border-bottom:1px solid #1c232c}
  .nav-links .btn{margin:10px 0 0;justify-content:center}
}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;padding:clamp(60px,9vw,120px) 0 clamp(50px,7vw,90px)}
.hero .wrap{position:relative;z-index:2}
.hero h1{font-size:clamp(2.6rem,7vw,5.6rem);color:#fff;letter-spacing:1px;
  text-shadow:0 2px 0 rgba(0,0,0,.4), 0 22px 48px rgba(0,0,0,.55)}
.hero h1 em{font-style:normal;display:block;margin-top:.06em}
.hero .lead{max-width:680px}
.hero .pledge{
  font-family:"Roboto Slab",serif;font-style:italic;color:var(--gold-soft);
  font-size:clamp(1rem,2vw,1.18rem);margin:18px 0 26px;border-left:3px solid var(--red-bright);padding-left:16px}

/* ---------- panels / cards ---------- */
.panel{
  position:relative;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);border-top:1px solid var(--line);
  padding:27px 24px;box-shadow:var(--shadow);
}
.panel h3{color:var(--gold-bright)}
.plain-card{background:var(--panel);border:1px solid var(--line);padding:24px}

.checklist{list-style:none;margin:0;padding:0}
.checklist li{position:relative;padding:7px 0 7px 30px;border-bottom:1px solid rgba(255,255,255,.06)}
.checklist li:last-child{border-bottom:0}
.checklist li::before{content:"";position:absolute;left:2px;top:12px;width:14px;height:8px;
  border-left:3px solid var(--gold-bright);border-bottom:3px solid var(--gold-bright);transform:rotate(-45deg)}

/* numbered steps */
.steps{display:grid;gap:18px;counter-reset:s}
@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{position:relative;background:var(--panel);border:1px solid var(--line);padding:30px 22px 22px}
.step::before{
  counter-increment:s;content:counter(s);
  position:absolute;top:-18px;left:20px;width:46px;height:46px;display:grid;place-items:center;
  font-family:"Anton",sans-serif;font-size:1.4rem;color:#1a1206;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold));
  clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);
}
.step h3{margin-top:8px;color:#fff}

/* ---------- stat blocks ---------- */
.statgrid{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.statgrid{grid-template-columns:repeat(4,1fr)}}
.stat{
  background:linear-gradient(180deg,#1d2632,#141b24);
  border:1px solid var(--line);border-bottom:3px solid var(--gold);
  padding:22px 16px;text-align:center;
}
.stat b{display:block;font-family:"Anton",sans-serif;font-size:clamp(2rem,5vw,2.9rem);color:var(--gold-bright);line-height:1}
.stat small{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;
  font-size:.74rem;color:var(--cream-dim);margin-top:8px}

/* progress / goal */
.goalbar{background:#10151c;border:1px solid var(--line);height:34px;position:relative;overflow:hidden}
.goalbar > i{
  display:block;height:100%;width:var(--pct,24%);
  background:repeating-linear-gradient(45deg,var(--gold) 0 14px,var(--gold-bright) 14px 28px);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.25);transition:width 1.2s ease;
}
.goalbar b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:.55ch;
  font-family:"Oswald",sans-serif;letter-spacing:1.5px;word-spacing:6px;color:#fff;text-shadow:0 1px 3px #000;font-size:.9rem}
.goalbar b #m-have{font-weight:700}

/* countdown */
.countdown{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.cd-cell{min-width:84px;background:#0c1118;border:1px solid var(--line);border-top:2px solid var(--red-bright);padding:14px 10px;text-align:center}
.cd-cell b{display:block;font-family:"Anton",sans-serif;font-size:2.2rem;color:var(--gold-bright);line-height:1}
.cd-cell small{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.66rem;color:var(--muted)}

/* ---------- US map (real geographic SVG choropleth) ---------- */
.usmap-wrap{max-width:860px;margin:0 auto;filter:drop-shadow(0 16px 30px rgba(0,0,0,.45))}
.usmap-wrap svg{width:100%;height:auto;display:block}
.usmap-wrap svg path{transition:fill .15s ease, filter .15s ease}
.usmap-wrap svg path:hover{filter:brightness(1.25);cursor:pointer}
/* ---------- (legacy tile map, unused) ---------- */
.usmap{display:grid;grid-template-columns:repeat(11,1fr);gap:5px;max-width:780px;margin:0 auto}
.usmap .tile{
  aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:var(--panel-2);border:1px solid #2d3947;font-family:"Oswald",sans-serif;border-radius:2px;
}
.usmap .tile small{font-size:.58rem;letter-spacing:.5px;color:#cfd6de;line-height:1}
.usmap .tile b{font-size:.78rem;color:#fff;line-height:1.1}
.usmap .t-hi b{color:#0e1208}
.usmap .t-hi{background:linear-gradient(180deg,var(--gold-bright),var(--gold));border-color:#7a5b10}
.usmap .t-hi small{color:#2a1f04}
.usmap .t-mid{background:#7c3a14;border-color:#52270d}
.usmap .t-low{background:var(--red);border-color:#5e1010}
.usmap .t-grn{background:var(--green);border-color:#284a24}
.maplegend{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;margin-top:18px;font-family:"Oswald",sans-serif;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;color:var(--cream-dim)}
.maplegend i{display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;border-radius:2px}
@media(max-width:560px){.usmap .tile small{font-size:.46rem}.usmap .tile b{font-size:.6rem}.usmap{gap:3px}}

/* leaderboard */
.lead-rows{display:flex;flex-direction:column;gap:1px;background:var(--line)}
.lead-rows .row{display:flex;justify-content:space-between;align-items:center;background:var(--panel);padding:13px 18px}
.lead-rows .row b{font-family:"Oswald",sans-serif;letter-spacing:1px}
.lead-rows .row span{font-family:"Anton",sans-serif;color:var(--gold-bright);font-size:1.2rem}

/* ---------- split feature ---------- */
.split{display:grid;gap:30px;align-items:center}
@media(min-width:860px){.split{grid-template-columns:1fr 1fr}.split.rev .s-media{order:2}}
.s-media{background:
    radial-gradient(58% 58% at 50% 46%, rgba(200,151,28,.20), rgba(10,14,20,0) 70%),
    linear-gradient(160deg,#12161d,#0b0e13);
  border:1px solid var(--line);min-height:300px;
  display:grid;place-items:center;padding:34px;position:relative;overflow:hidden}
.s-media::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:url("images/grain.png");background-size:160px;opacity:.35;mix-blend-mode:overlay}
.s-media .badge-logo{position:relative;width:min(310px,80%);filter:drop-shadow(0 16px 32px rgba(0,0,0,.55))}

/* founder crew portrait cards */
.crew{display:grid;gap:26px 18px;grid-template-columns:repeat(2,1fr)}
@media(min-width:560px){.crew{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.crew{grid-template-columns:repeat(5,1fr)}}
.crew-card{text-align:center}
.crew-card .pf{position:relative;width:100%;max-width:172px;margin:0 auto;aspect-ratio:1/1;border-radius:50%;
  overflow:hidden;border:3px solid var(--line);background:radial-gradient(circle,#19202a,#0b0e13);
  box-shadow:0 16px 32px rgba(0,0,0,.5);transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}
.crew-card .pf img{width:100%;height:100%;object-fit:cover;display:block}
.crew-card .pf::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(200,151,28,.45)}
.crew-card:hover .pf{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 22px 40px rgba(0,0,0,.6),0 0 0 1px rgba(200,151,28,.4)}
.crew-card b{display:block;margin-top:14px;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.5px;color:#fff;font-size:1.02rem;line-height:1.15}
.crew-card small{display:block;margin-top:3px;font-family:"Oswald",sans-serif;letter-spacing:2px;font-size:.68rem;text-transform:uppercase;color:var(--gold-soft)}

/* founder cards */
.founders{display:grid;gap:20px}
@media(min-width:620px){.founders{grid-template-columns:1fr 1fr}}
.founder{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);padding:22px}
.founder b{font-family:"Oswald",sans-serif;font-size:1.2rem;color:#fff;display:block;letter-spacing:1px}
.founder small{color:var(--gold-bright);font-family:"Oswald",sans-serif;letter-spacing:2px;text-transform:uppercase;font-size:.78rem}

/* pricing card */
.price{max-width:520px;margin:0 auto;background:linear-gradient(180deg,#20293400,#0000),linear-gradient(180deg,#212b37,#161d26);
  border:1px solid var(--gold);border-top:4px solid var(--gold);padding:8px;box-shadow:var(--shadow)}
.price .inner{border:1px dashed #46566a;padding:30px 26px}
.price .amt{font-family:"Anton",sans-serif;font-size:clamp(3rem,9vw,4.6rem);color:var(--gold-bright);line-height:.9}
.price .amt sub{font-size:1.1rem;color:var(--cream-dim);vertical-align:baseline;font-family:"Oswald",sans-serif}
.notdonation{background:rgba(192,57,43,.12);border:1px solid rgba(192,57,43,.5);padding:12px 16px;font-size:.92rem;color:#f0d4cf;margin-top:14px}

/* form */
.form-card{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--gold);padding:28px}
.field{margin-bottom:16px}
.field label{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;
  font-size:.8rem;color:var(--cream-dim);margin-bottom:6px}
.field input,.field select,.field textarea{
  width:100%;padding:13px 14px;background:#0d1219;border:1px solid var(--line);color:var(--cream);
  font-family:inherit;font-size:1rem;border-radius:2px}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px rgba(200,151,28,.25)}
.grid2{display:grid;gap:0 16px}
@media(min-width:560px){.grid2{grid-template-columns:1fr 1fr}}
.hp{position:absolute;left:-9999px}
.form-note{font-size:.82rem;color:var(--muted);margin-top:10px}
.success{display:none;background:rgba(63,111,58,.18);border:1px solid var(--green);padding:18px;color:#dcefd6;margin-top:6px}
.success.show{display:block}

/* trust strip */
.trust{display:flex;gap:26px;flex-wrap:wrap;align-items:center;justify-content:center;color:var(--muted);
  font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.82rem}
.trust b{color:var(--gold-soft)}

/* CTA band */
.ctaband{background:
  linear-gradient(180deg,#0a0c0f 0%, rgba(8,10,13,.60) 18%, rgba(8,10,13,.84) 100%),
  url("images/flag.jpg") center/cover no-repeat,
  radial-gradient(120% 120% at 50% 0%,#23364f,#0c1622);
  text-align:center}
/* mid-page pull-quote on a flag accent that emerges from and returns to the dark */
.quoteband{position:relative;text-align:center;background:
  linear-gradient(180deg,#0a0c0f 0%, rgba(8,10,13,.50) 24%, rgba(8,10,13,.50) 76%, #0a0c0f 100%),
  url("images/flag.jpg") center/cover no-repeat;
  background-color:#0b0d10}
.pullquote{font-family:"Roboto Slab",Georgia,serif;font-style:italic;font-weight:600;
  font-size:clamp(1.5rem,3.6vw,2.5rem);line-height:1.3;color:#fff;max-width:900px;margin:0 auto;
  text-shadow:0 2px 10px rgba(0,0,0,.5)}
.pullquote .mark{font-style:normal;color:var(--gold-bright)}
.pullquote .pullquote-attr{display:block;margin-top:20px;font-family:"Oswald",sans-serif;font-style:normal;
  text-transform:uppercase;letter-spacing:3px;font-size:.8rem;color:var(--gold-soft)}

/* slim launch strip (countdown) */
.launch-strip{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;
  background:linear-gradient(180deg,#161d27,#0e141b);border:1px solid var(--line);border-left:3px solid var(--red-bright);
  padding:18px 26px;max-width:840px;margin:0 auto;box-shadow:var(--shadow)}
.ls-label{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:3px;color:var(--gold-bright);font-size:.82rem}
.launch-strip .countdown{gap:10px}
.launch-strip .cd-cell{min-width:64px;padding:10px 8px}
.launch-strip .cd-cell b{font-size:1.7rem}

/* who-it's-for mini row */
.who{text-align:center;padding:0 12px}
.who b{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--gold-bright);font-size:1.12rem;margin-bottom:6px}
.who span{color:var(--cream-dim);font-size:.95rem;line-height:1.55}
.who + .who{border-left:1px solid var(--line)}
@media(max-width:760px){.who + .who{border-left:0;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}}

/* centered hairline divider */
.divider{width:130px;height:3px;margin:0 auto 24px;
  background:linear-gradient(90deg,transparent,var(--gold) 35%,var(--gold-bright) 50%,var(--gold) 65%,transparent)}

/* ---------- pageheader (interior) ---------- */
.pagehead{position:relative;overflow:hidden;padding:clamp(56px,8vw,92px) 0 clamp(44px,6vw,70px)}
.pagehead h1{font-size:clamp(2rem,5.5vw,3.6rem);color:#fff}
.pagehead .lead{max-width:720px}
.crumb{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.74rem;color:var(--muted);margin-bottom:10px}
.crumb a{color:var(--gold-soft)}

/* ---------- footer ---------- */
footer{background:#070a0d;border-top:3px solid var(--gold);padding:54px 0 26px;color:var(--cream-dim)}
.foot-grid{display:grid;gap:30px}
@media(min-width:760px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr}}
footer h4{color:var(--gold-bright);letter-spacing:2px;font-size:.95rem}
footer a{display:block;color:var(--cream-dim);padding:4px 0;text-transform:none;font-family:"Inter",sans-serif;letter-spacing:0}
footer a:hover{color:var(--gold-bright)}
.foot-brand{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.foot-brand img{width:54px;height:54px}
.foot-legal{border-top:1px solid #1a212a;margin-top:34px;padding-top:18px;font-size:.8rem;color:var(--muted);
  display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
.foot-legal a{display:inline;color:var(--muted)}
.disc{font-size:.76rem;color:#6b7682;margin-top:14px;line-height:1.5}

/* legal pages */
.legal-body{max-width:820px}
.legal-body h2{font-size:clamp(1.3rem,3vw,1.7rem);color:var(--gold-bright);margin-top:2em}
.legal-body h3{font-size:1.1rem;color:#fff;margin-top:1.4em}
.legal-body p,.legal-body li{color:var(--cream-dim)}
.legal-body ul{padding-left:20px}
.legal-body li{margin-bottom:.4em}

/* reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* utilities */
.mxw-680{max-width:680px}
.mxw-760{max-width:760px}
.mb-0{margin-bottom:0}
.tcenter-m{ }
@media(max-width:620px){.btn-row{flex-direction:column}.btn-row .btn{width:100%;justify-content:center}}

/* ============================================================
   VISUAL ENHANCEMENTS  ::  metal type, depth, glow, motion
   ============================================================ */

/* metallic gold text (for accent headlines + big numbers) */
.metal{
  color:var(--gold-bright);
  background:linear-gradient(177deg,#fdeeb0 0%,#f0c331 30%,#c8971c 55%,#9c7416 70%,#f4dd86 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.45));
}

/* hero depth: emblem watermark + glow, top spotlight, scroll cue */
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(80% 60% at 20% 0%, rgba(200,151,28,.16), transparent 60%),
            radial-gradient(70% 70% at 100% 100%, rgba(20,38,63,.5), transparent 60%);}
/* buttons: gloss sweep on hover */
.btn{overflow:hidden}
.btn::after{content:"";position:absolute;top:0;left:-75%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-22deg);transition:left .55s ease;pointer-events:none}
.btn:hover::after{left:135%}
.btn-ghost::after{background:linear-gradient(90deg,transparent,rgba(240,196,73,.3),transparent)}

/* panels: layered depth, gradient cap, hover lift + glow */
.panel{box-shadow:0 20px 44px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .2s ease, box-shadow .2s ease}
.panel::before{content:"";position:absolute;left:0;right:14px;top:0;height:2px;
  background:linear-gradient(90deg,var(--gold-bright),transparent 80%)}
.panel:hover{transform:translateY(-5px);box-shadow:0 30px 56px rgba(0,0,0,.6), 0 0 0 1px rgba(200,151,28,.35)}
.panel h3{position:relative}

/* plain cards + founders + who: gentle hover */
.plain-card,.founder{transition:transform .2s ease, box-shadow .2s ease}
.plain-card:hover,.founder:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(0,0,0,.5)}

/* stat cards: metallic numbers + depth + hover */
.stat{box-shadow:0 14px 30px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .18s ease, box-shadow .18s ease}
.stat:hover{transform:translateY(-3px);box-shadow:0 22px 40px rgba(0,0,0,.55)}
.stat b{background:linear-gradient(177deg,#fdeeb0,#f0c331 42%,#c8971c 66%,#f4dd86);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}

/* goal bar: animated sheen + glow */
.goalbar{box-shadow:inset 0 2px 6px rgba(0,0,0,.6), 0 0 0 1px rgba(200,151,28,.25)}
.goalbar > i{position:relative;overflow:hidden;box-shadow:0 0 18px rgba(240,196,73,.45)}
.goalbar > i::after{content:"";position:absolute;top:0;left:-45%;width:45%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  animation:barsheen 2.6s linear infinite}
@keyframes barsheen{to{left:130%}}

/* US map: framed audit-dashboard panel with blueprint grid backdrop */
.usmap-wrap{position:relative;padding:clamp(14px,2.5vw,26px);border:1px solid var(--line);
  background:radial-gradient(120% 120% at 50% 0%, rgba(30,46,70,.40), rgba(10,14,20,.25));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 26px 56px rgba(0,0,0,.55)}
.usmap-wrap::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:36px 36px}
.usmap-wrap svg{position:relative}
/* gold corner brackets */
.usmap-wrap::after{content:"";position:absolute;inset:10px;pointer-events:none;
  background:
   linear-gradient(var(--gold),var(--gold)) left 0 top 0/22px 2px no-repeat,
   linear-gradient(var(--gold),var(--gold)) left 0 top 0/2px 22px no-repeat,
   linear-gradient(var(--gold),var(--gold)) right 0 top 0/22px 2px no-repeat,
   linear-gradient(var(--gold),var(--gold)) right 0 top 0/2px 22px no-repeat,
   linear-gradient(var(--gold),var(--gold)) left 0 bottom 0/22px 2px no-repeat,
   linear-gradient(var(--gold),var(--gold)) left 0 bottom 0/2px 22px no-repeat,
   linear-gradient(var(--gold),var(--gold)) right 0 bottom 0/22px 2px no-repeat,
   linear-gradient(var(--gold),var(--gold)) right 0 bottom 0/2px 22px no-repeat;
  opacity:.7}

/* big decorative quote mark on the pull-quote */
.quoteband .wrap{position:relative}
.pullquote::before{content:"\201C";position:absolute;left:50%;top:-.55em;transform:translateX(-50%);
  font-family:"Anton",sans-serif;font-style:normal;font-size:7rem;line-height:1;color:rgba(240,196,73,.16);z-index:-1}

/* reveal: subtle stagger inside card grids */
.eq .reveal:nth-child(2){transition-delay:.07s}
.eq .reveal:nth-child(3){transition-delay:.14s}
.eq .reveal:nth-child(4){transition-delay:.21s}

/* nav: condense + deepen shadow once scrolled */
header.nav.scrolled{box-shadow:0 8px 30px rgba(0,0,0,.7);background:linear-gradient(180deg,#0c1117 0%,#090c11 100%)}
header.nav.scrolled .nav-inner{padding-top:6px;padding-bottom:6px}
header.nav .nav-inner{transition:padding .2s ease}

/* section intros get a touch more presence */
.kicker{position:relative}

@media(prefers-reduced-motion:reduce){
  .goalbar > i::after{animation:none}
}

/* ============================================================
   MEMBER PORTAL  (behind the paywall)
   ============================================================ */
.m-tag{font-style:normal;font-family:"Oswald",sans-serif;font-size:.6rem;letter-spacing:2px;
  color:#1a1206;background:linear-gradient(180deg,var(--gold-bright),var(--gold));padding:2px 7px;border-radius:2px;vertical-align:middle;margin-left:4px}

.demo-strip{background:rgba(192,57,43,.14);border-bottom:1px solid rgba(192,57,43,.45);
  color:#f0d4cf;text-align:center;font-family:"Oswald",sans-serif;letter-spacing:1px;font-size:.78rem;padding:7px 16px;text-transform:uppercase}

/* member welcome hero */
.m-hero{padding:clamp(34px,5vw,56px) 0 clamp(28px,4vw,40px);position:relative;overflow:hidden}
.m-hero .row{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.m-hello .kicker{margin-bottom:.4rem}
.m-hello h1{font-size:clamp(1.8rem,4.5vw,3rem);color:#fff;margin:0}
.m-badge{display:inline-flex;align-items:center;gap:12px;background:linear-gradient(180deg,#212b37,#161d26);
  border:1px solid var(--gold);border-left:4px solid var(--gold);padding:14px 20px;box-shadow:var(--shadow)}
.m-badge .seal{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex:none;
  background:radial-gradient(circle,#2a3340,#10151c);border:2px solid var(--gold);
  font-family:"Anton",sans-serif;color:var(--gold-bright);font-size:1.1rem}
.m-badge b{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;color:#fff;font-size:.95rem;line-height:1.1}
.m-badge small{display:block;color:var(--gold-soft);font-family:"Oswald",sans-serif;letter-spacing:1.5px;font-size:.72rem;text-transform:uppercase;margin-top:3px}
.m-badge .live{color:#7fd18b}

/* member stat row */
.m-stats{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.m-stats{grid-template-columns:repeat(4,1fr)}}
.m-stat{background:linear-gradient(180deg,#1b232e,#11161d);border:1px solid var(--line);border-bottom:3px solid var(--gold);padding:18px}
.m-stat b{display:block;font-family:"Oswald",sans-serif;font-size:1.45rem;color:#fff;line-height:1}
.m-stat small{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.68rem;color:var(--cream-dim);margin-top:7px}

/* dashboard tile grid */
.m-grid{display:grid;gap:20px}
@media(min-width:680px){.m-grid.c2{grid-template-columns:1fr 1fr}.m-grid.c3{grid-template-columns:repeat(3,1fr)}}
.m-tile{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.45);
  transition:transform .18s ease,box-shadow .18s ease}
.m-tile::before{content:"";position:absolute;left:0;right:14px;top:0;height:2px;background:linear-gradient(90deg,var(--gold-bright),transparent 80%)}
.m-tile:hover{transform:translateY(-4px);box-shadow:0 26px 50px rgba(0,0,0,.55),0 0 0 1px rgba(200,151,28,.35)}
.m-tile h3{color:#fff;margin-bottom:.5rem}
.m-tile p{color:var(--cream-dim);flex:1}
.m-tile .ico{width:44px;height:44px;display:grid;place-items:center;margin-bottom:14px;
  background:linear-gradient(180deg,#27313e,#161d26);border:1px solid var(--line);color:var(--gold-bright);
  font-family:"Anton",sans-serif;font-size:1.2rem}
.m-tile .go{margin-top:14px;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.82rem;color:var(--gold-bright)}
.m-tile:hover .go{color:#fff}

/* update feed */
.feed{display:flex;flex-direction:column;gap:16px}
.feed-item{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);padding:20px 22px}
.feed-item time{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.72rem;color:var(--gold-soft)}
.feed-item h3{margin:6px 0 8px;color:#fff;font-size:1.15rem}
.feed-item p{color:var(--cream-dim);margin:0}
.feed-item .pin{float:right;font-family:"Oswald",sans-serif;font-size:.66rem;letter-spacing:1.5px;text-transform:uppercase;color:#1a1206;background:var(--gold);padding:2px 8px}

/* channels */
.channels{display:grid;gap:16px}
@media(min-width:680px){.channels{grid-template-columns:1fr 1fr}}
.channel{display:flex;gap:16px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);padding:20px}
.channel .ic{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:8px;font-family:"Anton";color:#0e1208;background:linear-gradient(180deg,var(--gold-bright),var(--gold))}
.channel b{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;color:#fff;font-size:1.05rem}
.channel p{color:var(--cream-dim);margin:4px 0 10px;font-size:.94rem}

/* resource rows (toolkit) */
.res-list{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line)}
.res{display:flex;align-items:center;gap:18px;background:var(--panel);padding:18px 20px;flex-wrap:wrap}
.res .ic{width:42px;height:42px;flex:none;display:grid;place-items:center;background:linear-gradient(180deg,#27313e,#161d26);border:1px solid var(--line);color:var(--gold-bright);font-family:"Anton";font-size:.95rem}
.res .meta{flex:1;min-width:200px}
.res .meta b{display:block;font-family:"Oswald",sans-serif;letter-spacing:.5px;color:#fff;font-size:1.02rem}
.res .meta span{color:var(--muted);font-size:.86rem}
.res .btn{padding:11px 20px;font-size:.82rem}

/* login screen */
.login-wrap{min-height:calc(100vh - 60px);display:grid;place-items:center;padding:40px 18px}
.login-card{width:100%;max-width:420px;background:linear-gradient(180deg,#212b37,#141a22);
  border:1px solid var(--line);border-top:4px solid var(--gold);padding:34px 30px;box-shadow:var(--shadow)}
.login-card .lc-logo{width:74px;height:74px;margin:0 auto 14px;border-radius:8px;display:block}
.login-card h1{font-size:1.6rem;color:#fff;text-align:center;margin-bottom:.3rem}
.login-card .sub{text-align:center;color:var(--cream-dim);margin-bottom:22px;font-size:.95rem}
.login-card .alt{text-align:center;margin-top:18px;font-size:.9rem;color:var(--muted)}
.login-card .forgot{text-align:right;font-size:.82rem;margin-top:-6px;margin-bottom:14px}

/* account */
.acct-grid{display:grid;gap:22px}
@media(min-width:820px){.acct-grid{grid-template-columns:1.2fr 1fr}}
.kv{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.kv:last-child{border-bottom:0}
.kv span{color:var(--muted);font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.8rem}
.kv b{color:#fff;text-align:right}
.pill-live{display:inline-block;background:rgba(63,111,58,.25);border:1px solid var(--green);color:#9fe0a6;
  font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.72rem;padding:3px 10px;border-radius:2px}

/* ============================================================
   PLATFORM / PILLARS / VIDEO / PROFILES / ORG / STATE MAP
   ============================================================ */

/* nav dropdown */
.nav-item{position:relative;display:flex;align-items:center}
.nav-item > a::after{content:" \25BE";font-size:.7em;color:var(--gold-bright)}
.submenu{position:absolute;top:100%;left:0;min-width:250px;background:#0a0e13;border:1px solid var(--line);
  border-top:2px solid var(--gold);box-shadow:0 14px 34px rgba(0,0,0,.6);padding:6px;display:none;z-index:70}
.nav-item:hover .submenu,.nav-item:focus-within .submenu{display:block}
.submenu a{display:block;padding:11px 12px;white-space:nowrap;color:var(--cream-dim);
  font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.82rem}
.submenu a:hover{color:var(--gold-bright);background:rgba(200,151,28,.1)}
@media(max-width:900px){
  .nav-item{display:block}
  .nav-item > a::after{content:""}
  .submenu{position:static;display:block;border:0;border-top:0;box-shadow:none;background:transparent;padding:0 0 8px 16px}
  .submenu a{border-bottom:1px solid #1c232c;font-size:.85rem}
}

/* video embed placeholder (swap the inner iframe in later) */
.video-embed{position:relative;width:100%;aspect-ratio:16/9;background:
   radial-gradient(60% 60% at 50% 42%, rgba(200,151,28,.16), rgba(8,11,15,0) 70%),
   linear-gradient(160deg,#141a22,#0b0e13);
   border:1px solid var(--line);border-top:3px solid var(--gold);overflow:hidden;
   display:grid;place-items:center;text-align:center;box-shadow:var(--shadow)}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-embed::after{content:"";position:absolute;inset:0;background-image:url("images/grain.png");background-size:160px;opacity:.3;mix-blend-mode:overlay;pointer-events:none}
.ve-inner{position:relative;z-index:2;padding:24px}
.ve-play{width:78px;height:78px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold));box-shadow:0 10px 26px rgba(0,0,0,.5)}
.ve-play::before{content:"";display:block;width:0;height:0;margin-left:6px;
  border-left:22px solid #1a1206;border-top:14px solid transparent;border-bottom:14px solid transparent}
.ve-inner b{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;color:#fff;font-size:1.05rem}
.ve-inner span{color:var(--cream-dim);font-size:.9rem}
.ve-tag{display:inline-block;margin-top:10px;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;
  font-size:.66rem;color:var(--gold-soft);border:1px solid var(--line);padding:4px 10px}

/* four pillars (homepage) */
.pillars{display:grid;gap:20px}
@media(min-width:620px){.pillars{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.pillars{grid-template-columns:repeat(4,1fr)}}
.pillar-card{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);padding:28px 22px 22px;box-shadow:0 18px 40px rgba(0,0,0,.45);
  transition:transform .2s ease,box-shadow .2s ease}
.pillar-card::before{content:"";position:absolute;left:0;right:14px;top:0;height:2px;background:linear-gradient(90deg,var(--gold-bright),transparent 80%)}
.pillar-card:hover{transform:translateY(-5px);box-shadow:0 28px 54px rgba(0,0,0,.6),0 0 0 1px rgba(200,151,28,.35)}
.pillar-card .pn{font-family:"Anton",sans-serif;font-size:2.2rem;line-height:1;color:transparent;
  -webkit-text-stroke:1.5px var(--gold);margin-bottom:16px}
.pillar-card h3{color:#fff;font-size:1.18rem}
.pillar-card p{color:var(--cream-dim);flex:1;font-size:.96rem}
.pillar-card .go{margin-top:14px;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.8rem;color:var(--gold-bright)}
.pillar-card:hover .go{color:#fff}

/* pillar page P/S/B blocks */
.psb{display:grid;gap:22px}
.psb-block{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--gold);padding:26px 26px}
.psb-block.problem{border-left-color:var(--red-bright)}
.psb-block.solution{border-left-color:var(--gold)}
.psb-block.benefit{border-left-color:var(--green)}
.psb-block .lbl{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:3px;font-size:.78rem;color:var(--gold-bright);display:block;margin-bottom:8px}
.psb-block.problem .lbl{color:#e9897e}
.psb-block.benefit .lbl{color:#9fe0a6}
.psb-block h3{color:#fff;margin-bottom:.5rem;font-size:1.4rem}
.psb-block p{color:var(--cream-dim);margin-bottom:.8rem}

/* pillar cross-nav strip */
.pillar-strip{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.pillar-strip a{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.8rem;
  color:var(--cream-dim);border:1px solid var(--line);padding:9px 14px}
.pillar-strip a:hover,.pillar-strip a.active{color:#1a1206;background:linear-gradient(180deg,var(--gold-bright),var(--gold));border-color:var(--gold)}

/* mission stance: we oppose / we support */
.stance{display:grid;gap:20px}
@media(min-width:760px){.stance{grid-template-columns:1fr 1fr}}
.stance-col{background:var(--panel);border:1px solid var(--line);padding:26px}
.stance-col.oppose{border-top:3px solid var(--red-bright)}
.stance-col.support{border-top:3px solid var(--green)}
.stance-col h3{color:#fff}
.stance-col.oppose h3 b{color:#e9897e}
.stance-col.support h3 b{color:#9fe0a6}
.stance-col ul{list-style:none;margin:10px 0 0;padding:0}
.stance-col li{position:relative;padding:7px 0 7px 26px;color:var(--cream-dim);border-bottom:1px solid rgba(255,255,255,.06)}
.stance-col li:last-child{border-bottom:0}
.stance-col.oppose li::before{content:"\2715";position:absolute;left:2px;color:#e9897e;font-weight:700}
.stance-col.support li::before{content:"\2713";position:absolute;left:2px;color:#9fe0a6;font-weight:700}

/* profile (president + founders) */
.profile-hero{display:grid;gap:30px;align-items:center}
@media(min-width:760px){.profile-hero{grid-template-columns:300px 1fr}}
.profile-photo{position:relative;width:100%;max-width:300px;aspect-ratio:1/1;border-radius:6px;overflow:hidden;
  border:1px solid var(--line);border-top:3px solid var(--gold);background:radial-gradient(circle,#19202a,#0b0e13);
  display:grid;place-items:center;box-shadow:var(--shadow)}
.profile-photo img{width:100%;height:100%;object-fit:cover}
.profile-photo .ph-fallback{color:var(--muted);font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.78rem;text-align:center;padding:20px}
.profile-meta{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.profile-meta span{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.74rem;
  color:var(--gold-soft);border:1px solid var(--line);padding:5px 10px}
.ph-coming{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--muted);font-size:.82rem}

/* org chart */
.orgchart{max-width:560px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:0}
.org-node{width:100%;max-width:460px;text-align:center;background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);padding:14px 18px}
.org-node.lead{border-top:3px solid var(--gold)}
.org-node b{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;color:#fff;font-size:1rem}
.org-node small{color:var(--gold-soft);font-size:.78rem}
.org-arrow{width:2px;height:26px;background:linear-gradient(180deg,var(--gold),transparent)}

/* interactive state map */
.statemap{display:grid;gap:24px}
@media(min-width:920px){.statemap{grid-template-columns:1.3fr 1fr;align-items:start}}
.statemap .map-col .usmap-wrap{margin:0}
.st{cursor:pointer;transition:filter .12s ease}
.st:hover{filter:brightness(1.35)}
.st.sel{stroke:#f0c331 !important;stroke-width:2.4 !important}
.state-panel{background:linear-gradient(180deg,#1b232e,#11161d);border:1px solid var(--line);border-top:3px solid var(--gold);
  padding:24px;box-shadow:var(--shadow);min-height:280px}
.state-panel .sp-empty{color:var(--cream-dim);text-align:center;padding:30px 10px}
.state-panel h3{color:#fff;font-size:1.5rem;margin-bottom:2px}
.state-panel .sp-region{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.74rem;color:var(--gold-bright);margin-bottom:14px}
.sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:14px}
.sp-cell{background:var(--panel);padding:11px 13px}
.sp-cell small{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.64rem;color:var(--muted)}
.sp-cell b{color:#fff;font-size:1.05rem}
.sp-cell b.gold{color:var(--gold-bright)}
.sp-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.sp-row span{color:var(--muted);font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.74rem}
.sp-row b{color:#fff;text-align:right;font-weight:600}
.sp-note{margin-top:12px;font-size:.86rem;color:var(--cream-dim)}
.sp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.sp-actions .btn{font-size:.78rem;padding:11px 16px}

/* real video player (vertical phone-shot video gets a framed, capped stage) */
.video-player{position:relative;background:
   radial-gradient(60% 60% at 50% 40%, rgba(200,151,28,.14), rgba(8,11,15,0) 70%),
   linear-gradient(160deg,#141a22,#0b0e13);
  border:1px solid var(--line);border-top:3px solid var(--gold);
  box-shadow:var(--shadow);padding:14px;display:flex;justify-content:center}
.video-player video{width:100%;height:auto;display:block;background:#000;border-radius:2px}
.video-player.vertical video{max-width:min(370px,100%);max-height:78vh}
@media(max-width:620px){.video-player{padding:9px}.video-player.vertical video{max-height:none}}

/* YouTube click-to-load facade (branded thumbnail, no YouTube load until click) */
.yt-facade{position:relative;aspect-ratio:16/9;cursor:pointer;overflow:hidden;padding:0;display:block;
  border:1px solid var(--line);border-top:3px solid var(--gold);background:#0b0e13;box-shadow:var(--shadow)}
.yt-facade .yt-cover{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease,filter .3s ease}
.yt-facade:hover .yt-cover{transform:scale(1.02);filter:brightness(1.06)}
.yt-facade .yt-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:82px;height:82px;border-radius:50%;background:linear-gradient(180deg,var(--gold-bright),var(--gold));
  box-shadow:0 12px 30px rgba(0,0,0,.55);display:grid;place-items:center;transition:transform .18s ease}
.yt-facade .yt-play::before{content:"";display:block;width:0;height:0;margin-left:7px;
  border-left:26px solid #1a1206;border-top:16px solid transparent;border-bottom:16px solid transparent}
.yt-facade:hover .yt-play{transform:translate(-50%,-50%) scale(1.08)}
.yt-facade:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
.yt-facade iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* homepage pillar cards with embedded video */
.pillar-video-grid{display:grid;gap:22px}
@media(min-width:760px){.pillar-video-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1180px){.pillar-video-grid{grid-template-columns:repeat(4,1fr);gap:18px}}
.pv{position:relative;display:flex;flex-direction:column;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));
  border:1px solid var(--line);padding:26px 20px 20px;box-shadow:0 18px 40px rgba(0,0,0,.45);
  transition:transform .2s ease,box-shadow .2s ease}
.pv::before{content:"";position:absolute;left:0;right:14px;top:0;height:2px;
  background:linear-gradient(90deg,var(--gold-bright),transparent 80%)}
.pv:hover{transform:translateY(-5px);box-shadow:0 28px 54px rgba(0,0,0,.6),0 0 0 1px rgba(200,151,28,.35)}
.pv-num{font-family:"Anton",sans-serif;font-size:2rem;line-height:1;color:transparent;
  -webkit-text-stroke:1.5px var(--gold);display:block;margin-bottom:12px}
.pv h3{color:#fff;font-size:1.1rem;margin-bottom:.45rem}
.pv > p{color:var(--cream-dim);font-size:.93rem;margin-bottom:14px}
.pv .video-player{padding:8px;margin-bottom:6px}
.pv .video-player.vertical video{max-width:100%;max-height:340px}
.pv .form-note{text-align:center;margin:0 0 12px}
.pv .btn{margin-top:auto}

/* consent + optional SMS opt-in */
.consent-box{background:#0d1219;border:1px solid var(--line);border-left:3px solid var(--gold);padding:14px 16px;margin:4px 0 14px}
.consent-line{display:flex;gap:11px;align-items:flex-start;cursor:pointer;color:var(--cream-dim);font-size:.9rem;line-height:1.5}
.consent-line input[type=checkbox]{width:18px;height:18px;flex:none;margin-top:2px;accent-color:#c8971c;cursor:pointer}
.sms-optin{background:#0c1117;border:1px solid #1f2730;padding:13px 15px;margin-bottom:16px}
.sms-optin .form-note{margin-top:8px;display:block}

/* current-law vs AFFTRA-proposal boxes */
.lawbox{background:var(--panel);border:1px solid var(--line);padding:26px 26px 22px;box-shadow:var(--shadow);position:relative}
.lawbox.current{border-left:4px solid #6f8fb5}
.lawbox.proposed{border-left:4px solid var(--gold)}
.lawbox p{color:var(--cream-dim)}
.lawbox-tag{display:inline-block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;
  font-size:.66rem;padding:4px 11px;margin-bottom:14px;background:#26374d;color:#c8dcf5;border:1px solid #3d5674}
.lawbox-tag.proposed{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#1a1206;border-color:var(--gold)}
.numlist{counter-reset:nl;list-style:none;margin:12px 0 0;padding:0}
.numlist li{position:relative;padding:8px 0 8px 40px;color:var(--cream-dim);border-bottom:1px solid rgba(255,255,255,.06)}
.numlist li:last-child{border-bottom:0}
.numlist li::before{counter-increment:nl;content:counter(nl);position:absolute;left:0;top:8px;width:26px;height:26px;
  display:grid;place-items:center;font-family:"Oswald",sans-serif;font-size:.8rem;color:#1a1206;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold))}
.statusnote{margin-top:20px;background:rgba(111,143,181,.12);border:1px solid #3d5674;border-left:4px solid #6f8fb5;
  padding:16px 20px;color:var(--cream-dim);font-size:.94rem}
.statusnote strong{color:#c8dcf5}
.proposal-tag{margin-top:12px;display:inline-block;font-family:"Oswald",sans-serif;text-transform:uppercase;
  letter-spacing:1.5px;font-size:.7rem;color:#1a1206;background:linear-gradient(180deg,var(--gold-bright),var(--gold));padding:5px 12px}

/* share button + PWA install */
.share-bar{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center}
.share-btn{display:inline-flex;align-items:center;gap:8px;font-family:"Oswald",sans-serif;text-transform:uppercase;
  letter-spacing:1.5px;font-size:.8rem;color:var(--cream);background:transparent;border:2px solid var(--gold);
  padding:11px 18px;cursor:pointer;transition:background .15s ease,color .15s ease}
.share-btn:hover{background:rgba(200,151,28,.14);color:var(--gold-bright)}
.share-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);opacity:0;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#1a1206;font-family:"Oswald",sans-serif;
  text-transform:uppercase;letter-spacing:1.5px;font-size:.82rem;padding:12px 22px;z-index:200;
  transition:opacity .25s ease,transform .25s ease;pointer-events:none;box-shadow:0 12px 30px rgba(0,0,0,.5)}
.share-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* Meet button on founder cards */
.crew-card .meet{display:inline-block;margin-top:10px;font-family:"Oswald",sans-serif;text-transform:uppercase;
  letter-spacing:1.5px;font-size:.68rem;color:var(--gold-bright);border:1px solid var(--line);padding:5px 14px;
  transition:background .15s ease,border-color .15s ease,color .15s ease}
.crew-card:hover .meet{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#1a1206;border-color:var(--gold)}

/* membership plan cards */
.plans{display:grid;gap:16px}
@media(min-width:560px){.plans{grid-template-columns:1fr 1fr}}
.plan{position:relative;background:linear-gradient(180deg,#212b37,#161d26);border:1px solid var(--line);
  border-top:3px solid var(--line);padding:26px 22px;text-align:center;box-shadow:var(--shadow);
  transition:transform .18s ease,box-shadow .18s ease}
.plan:hover{transform:translateY(-4px);box-shadow:0 26px 48px rgba(0,0,0,.55)}
.plan.best{border-top-color:var(--gold);box-shadow:0 22px 44px rgba(0,0,0,.5),0 0 0 1px rgba(200,151,28,.4)}
.plan-tag{display:block;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;
  font-size:.72rem;color:var(--muted);margin-bottom:10px}
.plan.best .plan-tag{color:#1a1206;background:linear-gradient(180deg,var(--gold-bright),var(--gold));
  display:inline-block;padding:4px 12px;margin-bottom:12px}
.plan .amt{font-family:"Anton",sans-serif;font-size:clamp(2.4rem,7vw,3.4rem);color:var(--gold-bright);line-height:.95}
.plan .amt sub{font-size:.95rem;color:var(--cream-dim);vertical-align:baseline;font-family:"Oswald",sans-serif}
.plan p{color:var(--cream-dim);font-size:.94rem;margin:10px 0 16px}

/* scripture verse under guiding principles */
.verse{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.09);
  font-family:"Roboto Slab",Georgia,serif;font-style:italic;color:var(--cream-dim);font-size:.92rem;line-height:1.5}
.verse span{display:block;margin-top:6px;font-family:"Oswald",sans-serif;font-style:normal;
  text-transform:uppercase;letter-spacing:2px;font-size:.68rem;color:var(--gold-soft)}

/* member partner / sponsor */
.partner-photo{max-width:360px;width:100%;margin:0 auto;border:1px solid var(--line);border-top:3px solid var(--gold);box-shadow:var(--shadow);background:#0b0e13}
.partner-photo img{width:100%;display:block}
.partner-badge{display:inline-flex;align-items:center;gap:8px;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.7rem;color:#1a1206;background:linear-gradient(180deg,var(--gold-bright),var(--gold));padding:5px 12px;margin-bottom:14px}

/* dashboard partner spotlight */
.spotlight{display:grid;gap:24px;align-items:center;max-width:900px;margin:0 auto;
  background:linear-gradient(180deg,#212b39,#141a24);border:1px solid var(--line);border-left:4px solid var(--gold);
  padding:24px;box-shadow:var(--shadow)}
@media(min-width:640px){.spotlight{grid-template-columns:150px 1fr}}
.spotlight .sp-photo{width:150px;height:188px;object-fit:cover;object-position:center top;display:block;margin:0 auto;
  border:1px solid var(--line);border-top:2px solid var(--gold);background:#0b0e13}
.spotlight h3{color:#fff;margin:4px 0 2px;font-size:1.35rem}
.spotlight .sp-role{color:var(--gold-soft);font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.78rem;margin-bottom:10px}
.spotlight p{color:var(--cream-dim);margin-bottom:14px}

/* MasterPeace sponsor card */
.mp-card{max-width:360px;margin:0 auto;padding:44px 28px;text-align:center;
  background:radial-gradient(62% 60% at 50% 28%, rgba(63,111,58,.28), rgba(10,14,20,0) 70%),linear-gradient(160deg,#12161d,#0b0e13);
  border:1px solid var(--line);border-top:3px solid var(--gold);box-shadow:var(--shadow)}
.mp-card .mp-name{font-family:"Anton",sans-serif;font-size:2.3rem;color:#fff;letter-spacing:1px;line-height:1}
.mp-card .mp-tag{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:3px;color:var(--gold-soft);font-size:.78rem;margin-top:6px}
.mp-card .mp-off{margin-top:22px;display:inline-block;background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#1a1206;
  font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1.5px;font-size:.82rem;padding:8px 16px}
.mp-card .mp-price{margin-top:14px;font-family:"Oswald",sans-serif;color:#fff;font-size:1.2rem}
.mp-card .mp-price s{color:var(--muted);font-size:.95rem;margin-left:8px}

/* audience footer list */
.audience{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:6px}
.audience span{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:.72rem;
  color:var(--cream-dim);border:1px solid #1f2730;padding:5px 10px;background:#0c1117}
