/* Mobile navigation: one scroll container, sized to the visible viewport. */
@media (max-width: 991px) {
  #topnav #navigation {
    top: 100%;
    height: auto;
    max-height: calc(100vh - var(--gw-navigation-top, 74px));
    max-height: calc(100dvh - var(--gw-navigation-top, 74px));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: max(20px, env(safe-area-inset-bottom, 0px));
    box-sizing: border-box;
  }
  #topnav #navigation .navigation-menu > li .submenu.gw-functions-menu {
    max-height: none;
    height: auto;
    overflow: visible;
    overscroll-behavior: auto;
  }
  html.gw-mobile-menu-open .fixed-bottom { visibility: hidden; pointer-events: none; }
}
