/* Header-only overrides; dropdown contents and menu behavior remain unchanged. */
.header .site-nav-public { align-items: center; gap: 6px; }
.header .site-nav-public > a:not(.expo-live-link), .header .site-nav-public > .nav-dropdown > summary {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px;
  padding: 10px 14px; border: 1px solid transparent; border-radius: 10px;
  font-size: .85rem; font-weight: 650; color: #dfebef; line-height: 1.2; text-decoration: none;
}
.header .site-nav-public > a:not(.expo-live-link):hover,
.header .site-nav-public > .nav-dropdown > summary:hover,
.header .site-nav-public > a[aria-current="page"]:not(.expo-live-link) { background: #ffffff0d; border-color: #ffffff16; color: #fff; }
.header .expo-live-link { min-height: 44px; padding: 10px 14px; border-radius: 10px; border-color: #60c99166; background: #39ad7220; color: #b9f2ce !important; font-size: .85rem; font-weight: 700; box-shadow: none; }
.header .expo-live-link:hover, .header .expo-live-link[aria-current="page"] { background: #39ad7238; border-color: #70dba0; }
.header .expo-live-dot { background: #73dfa0; box-shadow: 0 0 0 3px #73dfa01c; }
.header .nav-profile > summary { min-height: 46px; gap: 10px; padding: 6px 11px 6px 7px; border-radius: 12px; border-color: #ffffff24; background: #ffffff08; }
.header .nav-profile > summary:hover, .header .nav-profile[open] > summary { background: #ffffff12; border-color: #ffffff42; }
.header .nav-profile-avatar { width: 32px; height: 32px; flex: 0 0 32px; background: #e8f2f7; color: #254d65; font-size: .85rem; }
.header .nav-profile-copy { gap: 3px; line-height: 1.15; }
.header .nav-profile-copy strong { font-size: .8rem; font-weight: 650; }
.header .nav-profile-copy small { font-size: .68rem; color: #a5bbc5; }
.header .site-nav-public > a:focus-visible, .header .site-nav-public > .nav-dropdown > summary:focus-visible,
.header .nav-profile > summary:focus-visible { outline: 3px solid #8bcbdc; outline-offset: 3px; }
@media(min-width:901px) {
  .header .site-nav { gap: 18px; }
  .header .nav-profile { padding-left: 18px; border-left: 1px solid #ffffff20; }
}
@media(max-width:900px) {
  .header .expo-live-mobile { min-height: 42px; max-width: 150px; padding: 9px 11px; font-size: .75rem; }
  .header .site-nav-public > a:not(.expo-live-link), .header .site-nav-public > .nav-dropdown > summary { justify-content: flex-start; width: 100%; }
  .header .nav-profile { border: 0; padding-left: 0; }
  .header .nav-profile > summary { width: 100%; }
}
@media(max-width:420px) { .header .expo-live-mobile { max-width: 120px; padding: 8px; font-size: .69rem; } }

/* One live shortcut, outside the public navigation, at every viewport size. */
.header .header-inner { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 18px; }
.header .header-live-access { grid-column: 3; grid-row: 1; white-space: nowrap; }
.header .header-live-short { display: none; }
@media(min-width:901px) {
  .header .site-nav { grid-column: 2; grid-row: 1; }
  .header .nav-toggle { display: none !important; }
}
@media(max-width:900px) {
  .header { padding: 10px 12px; }
  .header .header-inner { grid-template-columns: minmax(0,1fr) auto 40px !important; gap: 8px; }
  .header .brand-block { grid-column: 1; grid-row: 1; min-width: 0; gap: 8px; }
  .header .brand-block > div:last-child { min-width: 0; }
  .header .brand-mark { min-width: 36px; width: 36px; flex: 0 0 36px; }
  .header .brand-logo { width: 36px; height: 36px; max-width: 36px; }
  .header .brand-block h1 { margin: 0; font-size: 13px; line-height: 1.25; white-space: normal; overflow-wrap: normal; }
  .header .brand-block p { display: none; }
  .header .header-live-access { grid-column: 2; grid-row: 1; min-height: 40px; padding: 8px 10px; margin: 0; max-width: none; font-size: 12px; gap: 7px; }
  .header .header-live-full { display: none; }
  .header .header-live-short { display: inline; }
  .header .nav-toggle { display: inline-flex !important; grid-column: 3; grid-row: 1; align-items: center; justify-content: center; width: 40px; min-width: 40px; height: 40px; min-height: 40px; margin: 0; padding: 0; }
  .header .nav-toggle span:last-child { display: none; }
  .header #site-nav { grid-column: 1/-1; grid-row: 2; display: none; min-width: 0; width: 100%; margin: 0; }
  .header #site-nav.is-open { display: grid; }
  .header #site-nav .site-nav-public { display: grid; grid-template-columns: minmax(0,1fr); width: 100%; }
}
