/* Shared public navigation: desktop links become a keyboard-friendly disclosure. */
#header .menu-toggle { display: none; }
#header nav[hidden] { display: none !important; }
#header a:focus-visible, #header .menu-toggle:focus-visible { outline: 3px solid #795024; outline-offset: -3px; }
#header nav a[aria-current] { font-weight: 700; }
@media (max-width: 980px) {
  #header { height: 64px; line-height: 64px; }
  #header h1 { left: 1rem; height: 64px; line-height: 64px; max-width: calc(100% - 85px); margin: 0; }
  #header h1 a { font-size: clamp(.9rem, 3vw, 1.1rem); gap: .5rem; white-space: nowrap; }
  #header .brand img { height: 40px; width: 40px; object-fit: contain; }
  #header .menu-toggle { position: absolute; right: 1rem; top: 10px; height: 44px; width: 44px; min-width: 44px; padding: .5rem .7rem; border: 1px solid #d8ded7; border-radius: 6px; background: #f6f8f4; color: #39454b; font: inherit; font-size: .85rem; font-weight: 600; line-height: 1; align-items: center; justify-content: center; gap: .6rem; }
  #header.navigation-ready .menu-toggle { display: flex; }
  #header .menu-toggle-icon { display: block; width: 18px; height: 14px; border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; position: relative; }
  #header .menu-toggle-icon::after { content: ''; position: absolute; top: 4px; left: 0; width: 18px; border-top: 2px solid currentColor; }
  #header nav { display: block; top: 64px; right: 0; width: 100%; height: auto; max-height: calc(100dvh - 64px); overflow-y: auto; background: #fff; box-shadow: 0 10px 20px #29323720; line-height: 1.4; padding: .5rem 1rem 1rem; }
  #header nav ul { display: flex; flex-direction: column; margin: 0; padding: 0; }
  #header nav ul li, #header nav ul li:not(:last-child) { display: block; margin: 0; font-size: 1rem; }
  #header nav ul li a { height: auto; min-height: 48px; padding: .7rem .9rem; line-height: 1.5; border-bottom: 1px solid #eef0eb; }
  #header nav ul li a:hover { background: #f3f6ef; }
  body { padding-top: 64px; min-width: 0; }
  /* With JavaScript unavailable all links remain visible in normal page flow. */
  #header:not(.navigation-ready) { position: relative; height: auto; margin-top: -64px; padding-top: 64px; }
  #header:not(.navigation-ready) nav { position: static; box-shadow: none; }
}
