/* Shared site header — safe to load alongside any page framework (no global reset) */
:root {
  --primary:#0EA5E9; --primary-dk:#0284C7;
  --surface2:#F9FCFF; --border-md:#C9E1F5;
  --text:#0F2E46; --muted:#6E93AE; --transition:160ms ease;
}
/* ── Site header (identical to homepage) ── */
.site-header {
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.92); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border-md);
}
.site-header .wrap {
  max-width:1120px; margin:0 auto; padding:0 20px;
  display:flex; align-items:center; gap:24px; height:60px;
}
.site-header .brand {
  display:flex; align-items:center; gap:8px;
  font-family:'Bricolage Grotesque', system-ui, sans-serif;
  font-size:1.15rem; font-weight:800; color:var(--text);
  text-decoration:none; white-space:nowrap; letter-spacing:-0.3px;
  padding:0; background:none; border:none; box-shadow:none;
}
.site-header .brand:hover { color:var(--primary-dk); }
.brand-mark {
  width:26px; height:26px; border-radius:7px;
  background:var(--primary); color:#fff;
  display:grid; place-items:center;
  font-family:'Atkinson Hyperlegible', sans-serif;
  font-size:0.72rem; font-weight:700; letter-spacing:-0.02em;
}
.site-nav {
  display:flex; align-items:center; gap:4px; margin-left:auto;
  overflow-x:auto; scrollbar-width:none;
}
.site-nav::-webkit-scrollbar { display:none; }
.site-nav a {
  padding:7px 12px; border-radius:7px;
  font-family:'Atkinson Hyperlegible', sans-serif;
  font-size:0.86rem; font-weight:700; color:var(--muted);
  text-decoration:none; white-space:nowrap;
  transition:background var(--transition), color var(--transition);
}
.site-nav a:hover { background:var(--surface2); color:var(--primary); }
.site-nav a[aria-current="page"] { color:var(--primary); background:#E8F4FD; }


@media (max-width:640px) {
  .site-header .wrap { padding:0 14px; gap:12px; }
  .site-nav a { padding:7px 9px; font-size:0.8rem; }
}
