/* Header dropdown overrides (homepage only) */

/* Ensure header stacking context is above the hero (body.page-public > * sets z-index:1) */
body.page-public > .site-header {
  z-index: 10000 !important;
}

/* Avoid blue focus line and keep clean alignment */
.site-header .site-nav__details > summary {
  outline: none !important;
  box-shadow: none !important;
}

.site-header .site-nav__details[open] {
  z-index: 2000 !important;
}

.site-header .site-nav__dropdown {
  /* Position directly under the dropdown trigger (Main, Exams, …) */
  top: calc(100% + 12px) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;

  z-index: 2000 !important;

  /* Layout */
  text-align: left !important;
  white-space: nowrap !important;
  min-width: 220px !important;
  overflow: visible !important;
  display: none !important;
}

/*
 * Hover bridge: the gap between summary and dropdown is not part of the hit area,
 * so the menu vanished before the pointer reached it. This strip is part of the
 * dropdown box so :hover on <details> stays active while moving into the menu.
 */
.site-header .site-nav__dropdown::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  height: 12px !important;
  bottom: 100% !important;
}

/*
 * Bridge the gap below the label (summary) so pointer does not leave <details>
 * while moving to the dropdown (avoids accidental close during hover).
 */
.site-header .site-nav__details[open]::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 100% !important;
  height: 12px !important;
  z-index: 1999 !important;
}

/* Open when [open] (click or JS hover) */
.site-header .site-nav__details[open] .site-nav__dropdown {
  display: block !important;
}

/* Ensure dropdown items never show underline */
.site-header .site-nav__dropdown a {
  text-decoration: none !important;
  white-space: nowrap !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
}

.site-header .site-nav__dropdown a:hover,
.site-header .site-nav__dropdown a:focus,
.site-header .site-nav__dropdown a:active {
  text-decoration: none !important;
}

/* Header links: never underline on hover */
.site-header a:hover,
.site-header a:focus,
.site-header a:active {
  text-decoration: none !important;
}

/* PNG icons beside nav labels (Admission, Courses, Contact us, Gallery) */
.site-header .site-nav__link-icon {
  width: 1.05rem !important;
  height: 1.05rem !important;
  max-width: none !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
  display: block !important;
}

/* Register / Log In animated buttons: icon sits with .text above the expanding circle */
.site-header .nav-auth .nav-auth__btn-icon {
  position: relative !important;
  z-index: 1 !important;
  width: 1.05rem !important;
  height: 1.05rem !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
  display: block !important;
}

