/* One institutional navigation system for the Plan, Atlas and Observatory.
   Page-specific controls belong outside this component. */
:root{--site-top:76px}
.site-header{
  --site-ink:#14202e;--site-navy:#0b2e50;--site-muted:#657080;
  --site-line:#dddfe0;--site-gold:#b28c45;
  --site-sans:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --site-serif:"Source Serif 4",Georgia,serif;
  --site-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;
  box-sizing:border-box;height:var(--site-top);width:100%;background:#fff;color:var(--site-ink);
  display:flex;align-items:center;gap:21px;padding:0 28px;border-bottom:1px solid #dfe2e5;
  position:relative;z-index:55;font:400 14px/1.5 var(--site-sans);
}
.site-header *, .site-mobile-nav *{box-sizing:border-box}
.site-header .site-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--site-ink);min-width:204px}
.site-header .site-brand img{display:block;width:44px;height:44px;object-fit:contain}
.site-header .site-brand span{font:600 13px/1.13 var(--site-serif);letter-spacing:-.015em}
.site-header .site-divider{width:1px;height:34px;background:var(--site-line);flex:none}
.site-header .site-identity{display:flex;flex-direction:column;line-height:1.3;min-width:215px;white-space:nowrap}
.site-header .site-identity b{font:600 19px/1.3 var(--site-serif);letter-spacing:-.018em}
.site-header .site-identity small{margin-top:3px;font:400 10px/1.3 var(--site-mono);color:var(--site-muted);overflow:hidden;text-overflow:ellipsis}
.site-header .global-nav{display:flex;align-items:center;gap:27px;margin-left:auto}
.site-header .global-nav a{color:#526170;text-decoration:none;font:500 12px/1.5 var(--site-sans);transition:color .15s;white-space:nowrap}
.site-header .global-nav a:hover,.site-header .global-nav a.current{color:var(--site-navy)}
.site-header .global-nav a.current{border-bottom:1px solid var(--site-gold);padding-bottom:4px}
.site-header .source-link{border-left:1px solid var(--site-line);padding-left:18px;text-decoration:none;color:var(--site-navy);font:600 11px/1.5 var(--site-sans);white-space:nowrap}
.site-header .source-link span{font-size:14px;margin-left:4px}
.site-header .header-button,.site-header .site-menu-toggle{
  height:38px;min-width:100px;border:1px solid var(--site-line);background:#fff;
  border-radius:3px;padding:0 12px;display:flex;align-items:center;justify-content:center;
  gap:9px;color:var(--site-ink);font:600 12px/1.3 var(--site-sans);cursor:pointer;flex:none
}
.site-header .header-button:hover,.site-header .site-menu-toggle:hover{background:#f2f4f5}
.site-header .nav-icon{font-size:16px;line-height:1}
.site-header .site-menu-toggle{display:none}
.site-header a:focus-visible,.site-header button:focus-visible,.site-mobile-nav a:focus-visible{
 outline:2px solid var(--site-gold);outline-offset:3px
}
.site-mobile-nav{display:none}
.site-mobile-nav[hidden]{display:none!important}
@media(max-width:1380px){
 .site-header{gap:15px;padding:0 18px}
 .site-header .site-brand{min-width:180px}
 .site-header .source-link{display:none}
}
@media(max-width:1100px){
 .site-header .global-nav{gap:17px}
 .site-header .site-identity{min-width:0}
}
@media(max-width:760px){
 :root{--site-top:66px}
 .site-header{gap:11px;padding:0 12px}
 .site-header .site-brand{min-width:auto;gap:0}
 .site-header .site-brand img{width:35px;height:35px}
 .site-header .site-brand span,.site-header .site-divider,.site-header .global-nav{display:none}
 .site-header .site-identity{flex:1;min-width:0}
 .site-header .site-identity b{font-size:17px}
 .site-header .site-identity small{font-size:9px;white-space:nowrap}
 .site-header .site-menu-toggle{display:flex;min-width:42px;width:42px;padding:0 8px}
 .site-header .site-menu-toggle .menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .site-header .header-button{min-width:42px;padding:0 8px}
 .site-header .header-button span:last-child{display:none}
 .site-mobile-nav{
  position:fixed;top:var(--site-top);right:10px;left:10px;z-index:70;
  display:flex;flex-direction:column;background:#fff;border:1px solid #dce1e4;
  box-shadow:0 15px 35px rgba(11,37,60,.17);padding:8px
 }
 .site-mobile-nav a{display:block;text-decoration:none;font:600 13px/1.4 var(--site-sans);
  padding:13px 15px;color:#526170;border-left:2px solid transparent}
 .site-mobile-nav a.current{border-left-color:var(--site-gold);color:var(--site-navy);background:#f6f8f9}
 .site-mobile-nav a:hover{background:#f2f4f5}
}
@media(prefers-reduced-motion:reduce){.site-header .global-nav a{transition:none}}

.site-header .global-nav a{font-size:13px}.site-header .site-identity small{font-size:12px}.site-header .source-link{font-size:13px}.site-mobile-nav a{font-size:14px}
