/* =========================================================
   Header / Dropdown Menu Fix
   Works with Bootstrap 5. Adds:
   - Working hover dropdown on desktop
   - Working click dropdown on mobile
   - Multi-level (nested) submenus, which core Bootstrap
     does NOT support out of the box
   ========================================================= */

.site-header {
  z-index: 1030; /* keep header above page content */
}

.navbar .nav-link {
  font-weight: 500;
  padding-top: .75rem;
  padding-bottom: .75rem;
}

/* ---------- Top level dropdown ---------- */
.navbar .dropdown-menu {
  border: none;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  border-radius: 8px;
  margin-top: 0;
  padding: .5rem 0;
}

.navbar .dropdown-item {
  padding: .5rem 1.25rem;
  white-space: normal;
}

.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
  background-color: #f5f5f5;
}

/* ---------- Desktop: open dropdown on hover ---------- */
@media (min-width: 992px) {
  .navbar .dropdown:hover > .dropdown-menu {
    display: block;
    animation: fadeIn .15s ease-in-out;
  }

  /* prevent gap between link and menu closing the hover */
  .navbar .dropdown > .dropdown-menu {
    margin-top: 0;
  }

  @keyframes fadeIn {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
  }
}

/* =========================================================
   MULTI-LEVEL SUBMENU (Ready to Go? -> Trek -> Duration)
   ========================================================= */

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -.5rem;
}

/* Desktop: open submenu on hover, flip to left if it would overflow */
@media (min-width: 992px) {
  .dropdown-submenu:hover > .dropdown-menu {
    display: block;
  }

  .dropdown-submenu.dropend-left > .dropdown-menu {
    left: auto;
    right: 100%;
  }

  .dropdown-submenu > a.dropdown-toggle::after {
    transform: rotate(-90deg);
    margin-left: .5rem;
  }
}

/* ---------- Mobile / tablet: stacked accordion style ---------- */
@media (max-width: 991.98px) {
  .navbar-collapse {
    max-height: calc(100vh - 80px);
    overflow-y: auto;
  }

  .navbar .dropdown-menu {
    box-shadow: none;
    border-left: 2px solid #e9ecef;
    margin-left: .5rem;
  }

  .dropdown-submenu > .dropdown-menu {
    position: static !important;
    left: 0;
    margin-left: 1rem;
  }

  /* On mobile, clicking the parent link toggles the submenu instead
     of navigating away (handled in header-dropdown.js) */
  .dropdown-submenu > a.dropdown-toggle {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}




