:root{
  --brand:#141413; --accent:#1F7A54; --accent2:#18603F; --accent-soft:rgba(31,122,84,.12);
  --ink:#141413; --muted:#6B6B64;
  --bg:#F8F8F6; --card:#FFFFFF; --soft:#F1F1EE; --line:#E4E3DD;
  --danger:#B4543C; --ok:#1F7A54; --footer-bg:#111110;
}
/* Shared nav/footer use their OWN scoped palette so a page's :root (e.g. support.css's
   --brand:#4F46E5) can never clobber the chrome. Opt-in pages (landing, legal stubs) still
   use the global :root tokens above for their body content. */
.pubnav,.pubfoot{
  --pn-ink:#141413; --pn-brand:#141413; --pn-accent:#1F7A54;
  --pn-muted:#6B6B64; --pn-line:#E4E3DD; --pn-bg:#F8F8F6; --pn-footer:#111110;
}
/* ---------- public nav ---------- */
.pubnav{position:sticky;top:0;z-index:50;background:rgba(248,248,246,.82);
  backdrop-filter:saturate(150%) blur(10px);-webkit-backdrop-filter:saturate(150%) blur(10px);
  border-bottom:1px solid transparent;transition:.2s}
.pubnav.scrolled{border-bottom-color:var(--pn-line);background:rgba(248,248,246,.96)}
.pubnav-in{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.pubnav-logo{display:inline-flex;align-items:center;font-weight:700;font-size:19px;letter-spacing:-.02em;text-decoration:none;color:var(--pn-ink)}
.pubnav-logo .staq{background:var(--pn-ink);color:#fff;padding:1px 6px;border-radius:6px}
.pubnav-logo .on{color:var(--pn-accent);margin-left:2px}
.pubnav-links{display:flex;align-items:center;gap:26px}
.pubnav-links a{text-decoration:none;color:var(--pn-muted);font-size:14.5px;font-weight:500;transition:color .15s}
.pubnav-links a:hover{color:var(--pn-ink)}
.pubnav-signin{color:var(--pn-ink)!important}
.pubnav-btn{background:var(--pn-brand);color:#fff!important;padding:9px 16px;border-radius:9px;font-weight:600}
.pubnav-btn:hover{background:var(--pn-accent)}
.pubnav-toggle{display:none;background:none;border:0;color:var(--pn-ink);cursor:pointer;padding:4px}
@media(max-width:760px){
  .pubnav-links{position:fixed;inset:58px 0 auto 0;flex-direction:column;align-items:flex-start;
    background:var(--pn-bg);border-bottom:1px solid var(--pn-line);padding:18px 24px;gap:16px;display:none}
  .pubnav-links.open{display:flex}
  .pubnav-toggle{display:block}
}
/* ---------- public footer ---------- */
.pubfoot{background:var(--pn-footer);color:#B9B9B2}
.pubfoot-in{max-width:1120px;margin:0 auto;padding:56px 24px 30px}
.pubfoot-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.pubfoot-logo{color:#fff;font-weight:700;font-size:20px;text-decoration:none}
.pubfoot-brand p{margin-top:12px;max-width:280px;font-size:14px;line-height:1.6;color:#8A8A83}
.pubfoot-col h4{color:#fff;font-size:13px;font-weight:600;margin-bottom:14px}
.pubfoot-col a{display:block;color:#9A9A92;text-decoration:none;font-size:14px;margin-bottom:10px;transition:color .15s}
.pubfoot-col a:hover{color:#fff}
.pubfoot-bottom{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#6E6E67}
@media(max-width:760px){.pubfoot-top{grid-template-columns:1fr 1fr}.pubfoot-brand{grid-column:1/-1}}
