/* Shared site header and logo. Loaded by every page; this is the only place header styles live. */
:root{
  --hdr-font:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --hdr-bg:#0D1B2A;
  --hdr-text:#E7EEF6;
  --hdr-link:#8CA0B6;
  --hdr-focus:#E9B773;
}
html{font-variant-numeric:lining-nums}
.site-header{
  box-sizing:border-box;height:72px;padding:0 clamp(16px,4vw,48px);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--hdr-bg);color:var(--hdr-text);
  font-family:var(--hdr-font);font-size:14px;font-weight:500;line-height:1;
}
.site-header a{text-decoration:none}
.site-header a:focus-visible{outline:2px solid var(--hdr-focus);outline-offset:4px;border-radius:2px}
.site-header .site-brand{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;color:var(--hdr-text)}
.site-header .site-brand img{display:block;width:52px;height:52px;object-fit:contain;flex-shrink:0}
.site-header .site-name{font-size:18px;font-weight:700;letter-spacing:0;color:inherit}
.site-header nav{display:flex;align-items:center;gap:24px}
.site-header nav{gap:10px}
.site-header nav a{color:var(--hdr-text);font-size:14px;font-weight:600;white-space:nowrap;padding:10px 16px;border:1px solid rgba(231,238,246,.4);border-radius:6px;transition:background .15s,border-color .15s}
.site-header nav a:hover{background:rgba(231,238,246,.12);border-color:var(--hdr-text)}
@media(max-width:600px){
.site-header{height:60px;gap:8px}
  .site-header .site-brand{gap:6px}
  .site-header .site-brand img{width:40px;height:40px}
  .site-header .site-name{font-size:15px}
  .site-header nav{gap:6px}
  .site-header nav a{font-size:13px;padding:8px 10px}
}
