/* Public pages: the mobile menu glyph is intentionally unboxed. */
/* Public headers must respect the viewport safe area even before the native
   bridge is ready. Browser viewports without an inset resolve this to zero. */
html body.external-page .navbar {
  padding-top: env(safe-area-inset-top, 0px) !important;
}

html body.external-page .mobile-menu {
  top: calc(70px + env(safe-area-inset-top, 0px)) !important;
  max-height: calc(100dvh - 70px - env(safe-area-inset-top, 0px)) !important;
}

@media (max-width: 1368px) {
  html body.external-page .navbar {
    isolation: isolate;
  }

  html body.external-page .navbar .hamburger,
  html body.external-page .navbar .hamburger:is(:hover, :focus, :focus-visible, :active),
  html body.external-page .navbar .hamburger[aria-expanded="true"] {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    position: relative !important;
    z-index: 2 !important;
    min-width: 48px;
    min-height: 48px;
    padding: 8px !important;
    pointer-events: auto !important;
    touch-action: manipulation;
  }

  html body.external-page .navbar .hamburger :is(i, i::before) {
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
    pointer-events: none;
  }

  html body.external-page .navbar .hamburger:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 4px !important;
  }
}
