/* THE EAGLE — portrait-only navigation layout.
   Keep existing link font families and font sizes unchanged. */
@media (max-width: 1279px) {
 /* Body scroll locking disables the sticky header's viewport anchoring. Keep it
    fixed at the viewport top whenever a compact menu is open. */
 body.menu-open:has(.page-view:not([hidden])) > header {
  position: fixed !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  z-index: 100 !important;
 }
}
@media (orientation: portrait) and (max-width: 1279px) {
 body.menu-open { overflow: hidden !important; }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open {
  position: fixed !important;
  top: 82px !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  width: 100vw !important; height: calc(100dvh - 82px) !important;
  min-height: 0 !important; max-height: none !important;
  z-index: 90 !important;
  display: flex !important; flex-direction: column !important;
  align-items: center !important; justify-content: center !important;
  gap: clamp(12px, 4.5svh, 54px) !important;
  margin: 0 !important; padding: 24px 16px calc(24px + env(safe-area-inset-bottom)) !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important; overflow-y: auto !important;
  overscroll-behavior: contain !important;
  background: #363734 !important; border: 0 !important;
  box-shadow: none !important;
 }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > a,
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > button {
  display: inline-flex !important; flex: 0 0 auto !important;
  align-items: center !important; justify-content: center !important;
  align-self: center !important;
  width: auto !important; max-width: 100% !important;
  min-height: 44px !important;
  margin: 0 !important; padding: 10px 12px !important;
  text-align: center !important;
  color: #f5f1e9 !important;
  background: transparent !important; background-image: none !important;
  border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important; transform: none !important;
  text-decoration-line: none !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 8px !important;
 }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > a[aria-current="page"],
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view[data-page="privacy"]:not([hidden])) > header nav#site-navigation.open > #privacy-nav {
  color: #e4c66a !important;
  text-decoration-line: underline !important;
  text-decoration-color: #e4c66a !important;
 }
 :root body:has(.page-view:not([hidden])) > header nav#site-navigation.open > a::after {
  display: none !important;
 }
 :root body:has(.page-view:not([hidden])) > header nav#site-navigation.open > :is(a,button):focus-visible {
  outline: 2px solid #e4c66a !important; outline-offset: 3px !important;
 }
}
@media (orientation: portrait) and (max-width: 560px) {
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open {
  top: 76px !important;
  height: calc(100dvh - 76px) !important;
 }
}
@media (orientation: portrait) and (max-height: 600px) and (max-width: 1279px) {
 body:has(.page-view:not([hidden])) > header nav#site-navigation.open {
  justify-content: flex-start !important;
  gap: 9px !important;
 }
}

/* Keep the brand and both controls inside the narrowest header. */
@media (max-width: 360px) {
 body:has(.page-view:not([hidden])) > header .brand { gap:3px!important; }
 body:has(.page-view:not([hidden])) > header .brand span { font-size:.62rem!important; letter-spacing:.04em!important; }
 body:has(.page-view:not([hidden])) > header .brand small { display:none!important; }
}
/* The active item alone carries a line, including Privacy. */
@media (min-width:1280px) {
 body:has(.page-view:not([hidden])) > header nav#site-navigation > a::after,
 body:has(.page-view:not([hidden])) > header nav#site-navigation > a[href="#book"]::after { transition:none!important; }
 body:has(.page-view:not([hidden])) > header nav#site-navigation > a:hover:not([aria-current="page"])::after { transform:scaleX(0)!important; }
 body:has(.page-view[data-page="privacy"]:not([hidden])) > header nav#site-navigation #privacy-nav { display:inline-flex!important; text-decoration:underline!important; text-decoration-color:#a88a29!important; text-underline-offset:8px!important; }
}

/* Keep the compact landscape drawer opaque and legible in both themes. */
@media (orientation:landscape) and (max-width:1279px) {
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open { background:#363734!important; }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > :is(a,button) { color:#f5f1e9!important; background:transparent!important; border:0!important; box-shadow:none!important; }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > [aria-current="page"] { color:#e4c66a!important; text-decoration:underline!important; text-decoration-color:#e4c66a!important; text-underline-offset:8px!important; }
 :root:is([data-theme="light"],[data-theme="dark"]) body:has(.page-view:not([hidden])) > header nav#site-navigation.open > :is(a,button):not([aria-current="page"]) { text-decoration:none!important; }
 :root body:has(.page-view:not([hidden])) > header nav#site-navigation.open > :is(a,button)::after { display:none!important; }
}

@media (max-width:1279px) {
 :root[data-theme="dark"] body:has(.page-view:not([hidden])) > header #menu-toggle { background:transparent!important; }
}
