/*
 * Accessibility and narrow-screen safeguards for the reference navigation.
 * Visual presentation intentionally stays in pride_styles.css so the header,
 * full-width submenu overlay and mobile menu match the public reference site.
 */

.header button.mob-menu-btn {
  border: 0;
  background: transparent;
  font: inherit;
  cursor: pointer;
  appearance: none;
}

body.show-mob-menu {
  overflow: hidden !important;
}

@media (max-width: 991px) {
  html {
    scroll-padding-top: 76px;
  }

  .header .logo.raise-logo {
    z-index: 103 !important;
  }

  .header .drawer {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .header .drawer::after {
    background:
      radial-gradient(circle at 18% 12%, rgba(14, 165, 233, .22), transparent 38%),
      linear-gradient(145deg, #071f39 0%, #041424 55%, #020a12 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06);
  }

  .header .drawer .header-top .main-nav ul li a,
  .header .drawer .header-top .social-media li a,
  .header .close-menu {
    color: #f8fafc !important;
    text-shadow: 0 2px 16px rgba(0, 0, 0, .38);
  }

  .header .drawer .header-top .main-nav > ul > li > a::after {
    background-color: #38d4ff;
  }

  .header .drawer .header-top .main-nav ul li .sub-menu .menu-back-btn {
    color: #67e8f9 !important;
    font-weight: 700;
    letter-spacing: .04em;
  }

  .header .drawer .header-top .main-nav ul li.current-menu-item > a,
  .header .drawer .header-top .main-nav ul li a:hover,
  .header .drawer .header-top .main-nav ul li a:focus-visible {
    color: #67e8f9 !important;
  }

  body.show-mob-menu .header .mob-menu-overlay {
    background: rgba(2, 10, 18, .72);
  }

  .header .mob-menu-btn:focus-visible,
  .header .close-menu:focus-visible,
  .header .main-nav a:focus-visible,
  .header .social-media a:focus-visible {
    outline: 2px solid #38d4ff;
    outline-offset: 4px;
  }

  .nrl-partners-directory {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    padding-bottom: 78px !important;
  }

  .nrl-partner-card {
    min-width: 0 !important;
    padding: 20px !important;
    overflow: hidden !important;
    overflow-wrap: anywhere !important;
    scroll-margin-top: 84px;
  }

  .nrl-partner-card h3,
  .nrl-partner-card p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 420px) {
  .nrl-partner-card {
    padding: 18px !important;
  }

  .nrl-floating-whatsapp {
    right: 12px !important;
    bottom: 12px !important;
    width: 48px !important;
    height: 48px !important;
  }
}
