/* Mobile public nav — menu must sit above top-bar, navbar, and page content */
@media (max-width: 992px) {
  .top-bar {
    z-index: 1001;
  }

  .navbar,
  .navbar.sticky {
    z-index: 10050 !important;
  }

  .navbar.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
  }

  .menu-toggle,
  #menu-toggle {
    z-index: 10052 !important;
    position: relative;
  }

  .navbar nav,
  #nav-menu {
    z-index: 10051 !important;
  }

  .navbar nav.active,
  #nav-menu.active {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.4);
  }

  #nav-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10040;
    background: rgba(0, 0, 0, 0.45);
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
  }

  body.menu-open #nav-overlay {
    display: block;
  }

  body.menu-open {
    overflow: hidden;
  }
}
