/* A single-row header; the native menu owns navigation and preferences. */
:root{--site-header-height:69px}
html{scroll-padding-top:var(--site-header-height,69px)}
.header,.js .header,.page-home .header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:12px var(--gutter);min-height:0}
.header>.wordmark,.page-home .header>.wordmark{grid-column:1;grid-row:1;justify-self:start;min-height:44px}
.header .header-direct-nav{display:none!important}
.header>.site-menu{grid-column:2;grid-row:1;justify-self:end;position:static;min-width:0}
.header .site-menu>.menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:44px;margin:0;padding:10px 14px;border:1px solid var(--control);border-radius:100px;background:transparent;color:var(--text);font:500 14px/1.2 var(--sans);list-style:none;cursor:pointer}
.site-menu>.menu-toggle::-webkit-details-marker{display:none}
.site-menu>.menu-toggle::marker{content:''}
/* The sticky trigger already occupies the header's reserved scroll area. */
.header .site-menu>.menu-toggle{scroll-margin-top:calc(-1 * var(--site-header-height,69px))}
.header .site-menu>.menu-toggle span{padding:0;transition:transform 160ms;font-size:18px;line-height:1}
.site-menu[open]>.menu-toggle span{transform:rotate(45deg)}
.site-menu:not([open])>.site-menu-panel{display:none}
.header .site-menu-panel{position:absolute;z-index:40;top:calc(100% + 8px);right:var(--gutter);width:min(400px,calc(100vw - 2 * var(--gutter)));max-height:calc(100svh - var(--site-header-height,80px) - 24px);overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;padding:16px;border:1px solid var(--border);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:0 16px 48px rgba(var(--shadow-rgb),.14);scrollbar-width:thin;scrollbar-color:var(--control) transparent}
.header .site-menu-panel>.menu-nav{display:grid;grid-template-columns:minmax(0,1fr);gap:0;width:100%;margin:0;padding:0;background:transparent;align-items:stretch}
.header .site-menu-panel>.menu-nav a{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin:0;padding:12px 10px;border:0;border-bottom:1px solid var(--border);border-radius:0;color:var(--text);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.header .site-menu-panel>.menu-nav a:hover,.header .site-menu-panel>.menu-nav a[aria-current]{color:var(--gold-active)}
.header .site-menu-panel>.menu-nav a:last-child{margin-top:10px;padding:12px 16px;border:1px solid var(--control);border-radius:100px;gap:16px}
.header .site-menu-panel>.site-preferences{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;width:100%;min-width:0;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}
.preference-row{display:grid;gap:8px;min-width:0}
.preference-label{display:block;color:var(--muted);font:500 13px/1.5 var(--sans)}
.preference-row:has(.theme-controls):not(:has(.theme-controls button:not([hidden]))){display:none}
.header .site-menu-panel .language-switch,.header .site-menu-panel .theme-controls{display:flex;align-items:center;width:100%;margin:0;padding:2px;gap:0;align-self:auto;border:1px solid var(--border);border-radius:100px;background:var(--background)}
.header .site-menu-panel .language-switch a,.header .site-menu-panel .language-switch button,.header .site-menu-panel .theme-controls button{display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:44px;min-height:44px;margin:0;padding:8px;font-size:13px;line-height:1.5;border:0;border-radius:100px;color:var(--muted);background:transparent;text-align:center}
.header .site-menu-panel .language-switch a:last-child::after{content:none}
.header .site-menu-panel .language-switch a[aria-current],.header .site-menu-panel .language-switch button[aria-pressed=true],.header .site-menu-panel .theme-controls button[aria-pressed=true]{background:var(--raised);color:var(--text)!important}
.header .site-menu-panel .language-switch a:hover,.header .site-menu-panel .language-switch button:hover,.header .site-menu-panel .theme-controls button:hover{color:var(--text);background:var(--raised)}
.site-menu :focus-visible{outline:2px solid var(--gold-active);outline-offset:3px}

@media(min-width:1101px){
  .header,.js .header,.page-home .header{grid-template-columns:minmax(0,1fr) auto auto;gap:28px}
  .header .header-direct-nav{display:flex!important;grid-column:2;grid-row:1;justify-self:end;align-items:center;width:auto;margin:0;padding:0;gap:28px}
  .header .header-direct-nav a{font-size:14px}
  .header>.site-menu{grid-column:3}
}

@media(max-width:767px){
  :root{--site-header-height:61px}
  .header,.js .header,.page-home .header{padding-block:8px}
  .header>.wordmark,.page-home .header>.wordmark{font-size:34px}
}

@media(max-width:350px){
  .header>.wordmark,.page-home .header>.wordmark{font-size:32px}
  .header .site-menu-panel{padding:14px}
}

@media(min-width:560px) and (max-width:1100px) and (max-height:500px) and (orientation:landscape){
  :root{--site-header-height:61px}
  .header,.js .header,.page-home .header{padding-block:8px}
  .header .site-menu-panel{width:min(440px,calc(100vw - 2 * var(--gutter)));padding:14px}
  .header .site-menu-panel>.menu-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
  .header .site-menu-panel>.menu-nav a:last-child{margin:0;padding:10px 14px;min-height:48px}
  .header .site-menu-panel>.site-preferences{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding-top:14px}
}

@media(prefers-reduced-motion:reduce){.header .site-menu>.menu-toggle span{transition:none}}
