/* FairPAC Wake family: shared brand tokens + components (fp-brand v1, 2026-10-11).
   ONE source of truth, served by fairpac-members like fp-header.js:
   <link rel="stylesheet" href="https://fairpac-members-119393194631.us-west1.run.app/fp-brand.css">
   Safe on existing sites: tokens are CSS variables; every component rule is scoped under .wk
   (opt in with <body class="wk" data-wake-site="block">). Nothing unscoped is styled.
   Palette = Bear Republic (Wake the Bear CA). One accent per site. Fonts: Montserrat (display),
   Poppins (text); sites self-host the woff2 files (wake-brand/fonts.css) to avoid cross-origin font loads. */
:root{
  --wk-night:#0d0b09;--wk-den:#15110c;--wk-bark:#2b2113;--wk-seal:#5C462B;--wk-maple:#B58150;
  --wk-honey:#D9A441;--wk-gold:#F2C13D;--wk-sand:#D5C4A8;--wk-white:#fff;--wk-muted:#C9C0B3;--wk-flag-red:#BA0C2F;
  --wk-bg:var(--wk-night);--wk-surface:var(--wk-den);--wk-raised:var(--wk-bark);--wk-border:rgba(255,255,255,.16);
  --wk-text:var(--wk-white);--wk-text-muted:var(--wk-muted);--wk-link:var(--wk-gold);
  --wk-font-display:Montserrat,"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wk-font-text:Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;
  --wk-s1:4px;--wk-s2:8px;--wk-s3:12px;--wk-s4:16px;--wk-s5:24px;--wk-s6:32px;--wk-s7:48px;
  --wk-radius:10px;--wk-tap:44px;--wk-max:960px;--wk-header-h:56px;
  /* one accent per site (all >= 7:1 on --wk-night; ink on fill = --wk-night) */
  --wk-acc-bear:#F2C13D;--wk-acc-bench:#9CC2FF;--wk-acc-policy:#FF6B6B;--wk-acc-nation:#A8D8D8;
  --wk-acc-race:#FFD166;--wk-acc-party:#F4A261;--wk-acc-docs:#CBB2FF;
  --wk-acc-self:#4ADE80;--wk-acc-family:#FFB37A;--wk-acc-block:#FF9F43;--wk-acc-town:#F9A8D4;
  --wk-acc-campaign:#FDE047;--wk-acc-world:#67E8F9;--wk-acc-community:#C4B5FD;--wk-acc-school:#93E1A0;--wk-acc-church:#E9D8A6;
  --wk-accent:var(--wk-gold);
}
[data-wake-site=bear]{--wk-accent:var(--wk-acc-bear)}[data-wake-site=bench]{--wk-accent:var(--wk-acc-bench)}
[data-wake-site=policy]{--wk-accent:var(--wk-acc-policy)}[data-wake-site=nation]{--wk-accent:var(--wk-acc-nation)}
[data-wake-site=race]{--wk-accent:var(--wk-acc-race)}[data-wake-site=party]{--wk-accent:var(--wk-acc-party)}
[data-wake-site=docs]{--wk-accent:var(--wk-acc-docs)}[data-wake-site=self]{--wk-accent:var(--wk-acc-self)}
[data-wake-site=family]{--wk-accent:var(--wk-acc-family)}[data-wake-site=block]{--wk-accent:var(--wk-acc-block)}
[data-wake-site=town]{--wk-accent:var(--wk-acc-town)}[data-wake-site=campaign]{--wk-accent:var(--wk-acc-campaign)}
[data-wake-site=world]{--wk-accent:var(--wk-acc-world)}[data-wake-site=community]{--wk-accent:var(--wk-acc-community)}[data-wake-site=school]{--wk-accent:var(--wk-acc-school)}[data-wake-site=church]{--wk-accent:var(--wk-acc-church)}

/* ---- components (scoped) ---- */
.wk{margin:0;background:var(--wk-bg);color:var(--wk-text);font:400 17px/1.6 var(--wk-font-text);-webkit-text-size-adjust:100%}
.wk *,.wk *::before,.wk *::after{box-sizing:border-box}
.wk a{color:var(--wk-link)}
.wk :focus-visible{outline:3px solid var(--wk-accent);outline-offset:2px}
.wk .wk-hdr{position:sticky;top:0;z-index:50;background:var(--wk-bg);border-bottom:1px solid var(--wk-raised);padding-top:env(safe-area-inset-top)}
.wk .wk-hdr-row{max-width:var(--wk-max);margin:0 auto;min-height:var(--wk-header-h);display:flex;align-items:center;gap:var(--wk-s2);padding:0 var(--wk-s2) 0 var(--wk-s3)}
.wk .wk-logo{display:flex;align-items:center;min-height:var(--wk-tap);margin-right:auto;color:var(--wk-text);text-decoration:none;min-width:0}
.wk .wk-logo img{height:30px;width:auto;display:block}
.wk .wk-acct{display:flex;align-items:center}
.wk .wk-acct .fp-acc a{color:var(--wk-text)}
.wk .wk-menu-btn{min-width:var(--wk-tap);min-height:var(--wk-tap);display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--wk-raised);border-radius:8px;background:transparent;color:var(--wk-text);font:600 15px var(--wk-font-text);cursor:pointer}
.wk .wk-nav{display:none;border-top:1px solid var(--wk-raised);background:var(--wk-surface)}
.wk .wk-nav.open{display:block}
.wk .wk-nav-in{max-width:var(--wk-max);margin:0 auto;padding:var(--wk-s1) var(--wk-s4) var(--wk-s3)}
.wk .wk-nav a{display:flex;align-items:center;min-height:var(--wk-tap);color:var(--wk-text);text-decoration:none;font-weight:600;border-bottom:1px solid var(--wk-raised)}
.wk .wk-nav a:last-child{border-bottom:0}
.wk main{max-width:720px;margin:0 auto;padding:var(--wk-s5) var(--wk-s4) var(--wk-s7)}
.wk .wk-eyebrow{font:700 13px/1.2 var(--wk-font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--wk-accent);margin:var(--wk-s4) 0 var(--wk-s2)}
.wk h1,.wk h2,.wk h3{font-family:var(--wk-font-display);line-height:1.15;margin:0 0 var(--wk-s3)}
.wk h1{font-size:clamp(30px,8vw,46px);font-weight:800}
.wk h1 .wk-dot,.wk .wk-word .wk-dot{color:var(--wk-accent)}
.wk h2{font-size:22px;font-weight:800;margin-top:var(--wk-s6)}
.wk .wk-lede{font-size:19px;color:var(--wk-text)}
.wk .wk-muted{color:var(--wk-text-muted)}
.wk .wk-rule{height:4px;width:56px;background:var(--wk-accent);border:0;border-radius:2px;margin:var(--wk-s4) 0}
.wk .wk-principles{list-style:none;padding:0;margin:0;display:grid;gap:var(--wk-s3);counter-reset:p}
.wk .wk-principles li{counter-increment:p;background:var(--wk-surface);border:1px solid var(--wk-raised);border-left:4px solid var(--wk-accent);border-radius:var(--wk-radius);padding:var(--wk-s3) var(--wk-s4)}
.wk .wk-principles li strong{display:block;font-family:var(--wk-font-display);font-size:17px}
.wk .wk-card{background:var(--wk-surface);border:1px solid var(--wk-raised);border-radius:var(--wk-radius);padding:var(--wk-s4)}
.wk .wk-soon{display:flex;gap:var(--wk-s3);align-items:center}
.wk .wk-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:var(--wk-accent);color:var(--wk-night);font:700 12px var(--wk-font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.wk .wk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:var(--wk-radius);background:var(--wk-accent);color:var(--wk-night);font:700 16px var(--wk-font-text);text-decoration:none}
.wk .wk-ladder{display:flex;flex-wrap:wrap;gap:var(--wk-s2);padding:0;list-style:none}
.wk .wk-ladder a,.wk .wk-ladder span{display:inline-flex;align-items:center;min-height:var(--wk-tap);padding:0 12px;border:1px solid var(--wk-raised);border-radius:999px;color:var(--wk-text);text-decoration:none;font-size:15px}
.wk .wk-ladder [aria-current]{border-color:var(--wk-accent);color:var(--wk-accent);font-weight:700}
.wk .wk-ftr{border-top:1px solid var(--wk-raised);padding:var(--wk-s5) var(--wk-s4);max-width:var(--wk-max);margin:0 auto;font-size:14px;color:var(--wk-text-muted)}
.wk .wk-ftr a{display:inline-flex;align-items:center;min-height:var(--wk-tap);margin-right:var(--wk-s3)}
.wk .wk-motto{font:800 18px var(--wk-font-display);color:var(--wk-text)}
@media (min-width:720px){.wk main{padding-top:var(--wk-s7)}}
.wk .wk-soon{flex-direction:column;align-items:flex-start}
.wk .wk-perm{min-height:22px;font-size:11px;margin:4px 0;letter-spacing:.04em;text-transform:none}
.wk .wk-parent{margin:0 0 var(--wk-s2);color:var(--wk-text);font:600 15px var(--wk-font-display)}
.wk .wk-parent strong{color:var(--wk-accent);font-weight:800}
.wk .wk-goal{margin:0 0 var(--wk-s3);padding:var(--wk-s2) var(--wk-s3);border-left:4px solid var(--wk-accent);background:var(--wk-surface);border-radius:6px;font:700 17px/1.4 var(--wk-font-display);color:var(--wk-text)}
