/* Ultimate Header Plugin — scoped styles */

.uhp-navbar,
.uhp-navbar *,
.uhp-navbar *::before,
.uhp-navbar *::after {
  box-sizing: border-box !important;
}

.uhp-navbar {
  position: relative !important;
  font-family: 'Inter', sans-serif !important;
}

/* Desktop nav list */
.uhp-nav {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 52px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.uhp-nav__item {
  position: static !important;
}
.uhp-nav__link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 100% !important;
  letter-spacing: 0.02em !important;
  color: #000000 !important;
  text-decoration: none !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
}
.uhp-nav__link:hover,
.uhp-nav__link:focus,
.uhp-nav__link:active {
  color: #000000 !important;
  background: none !important;
  text-decoration: none !important;
}
.uhp-nav__link[aria-expanded="true"] {
  font-weight: 700 !important;
}
.uhp-nav__chevron {
  width: 8px !important;
  height: 5px !important;
  flex-shrink: 0 !important;
  display: block !important;
  margin-top: 2px !important;
  transition: transform 180ms ease !important;
}
.uhp-nav__link[aria-expanded="true"] .uhp-nav__chevron {
  transform: rotate(180deg) !important;
}

/* Dropdown panels — positioned fixed, top set by JS */
.uhp-dropdown {
  position: fixed !important;
  top: var(--uhp-dropdown-top, 80px) !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(-6px) !important;
  width: min(1150px, 90vw) !important;
  background: #FFFFFF !important;
  border: 1px solid #E0E0E0 !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.25) !important;
  padding: 56px 46px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 180ms ease, transform 180ms ease !important;
  z-index: 40 !important;
}
.uhp-dropdown[data-uhp-panel-open="true"] {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
  pointer-events: auto !important;
}
.uhp-dropdown--compact {
  width: max-content !important;
  max-width: min(900px, 90vw) !important;
}

.uhp-dropdown__grid {
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) minmax(320px, 1.2fr) minmax(320px, 1.2fr) !important;
  gap: 64px !important;
  align-items: start !important;
}
/* Compact panels (no video): two-column split or single column */
.uhp-dropdown--compact .uhp-dropdown__grid {
  grid-template-columns: auto auto !important;
  gap: 250px !important;
}
.uhp-dropdown--compact .uhp-dropdown__grid:has(.uhp-dropdown__col:only-child) {
  grid-template-columns: auto !important;
  gap: 0 !important;
}

.uhp-dropdown__heading {
  display: block !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  color: #232B3B !important;
  text-transform: uppercase !important;
  margin: 0 0 32px 0 !important;
}

.uhp-dropdown__video {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  background: #D9D9D9 !important;
  overflow: hidden !important;
  text-decoration: none !important;
}
.uhp-dropdown__video img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.uhp-dropdown__video-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.7) !important;
  pointer-events: none !important;
}
.uhp-dropdown__video-play::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 55% !important;
  transform: translate(-50%, -50%) !important;
  border-style: solid !important;
  border-width: 9px 0 9px 14px !important;
  border-color: transparent transparent transparent #FFFFFF !important;
}

.uhp-dropdown__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}
.uhp-dropdown__list li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.uhp-dropdown__item {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  color: #000000 !important;
  text-decoration: none !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 100% !important;
  letter-spacing: 0.02em !important;
  transition: color 150ms ease !important;
}
.uhp-dropdown__item:hover,
.uhp-dropdown__item:focus {
  color: #2C7A50 !important;
}

.uhp-dropdown__cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 28px !important;
  color: #232B3B !important;
  text-decoration: none !important;
  font-family: inherit !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}
.uhp-dropdown__cta span {
  font-size: 11px !important;
}
.uhp-dropdown__cta svg {
  width: 10px !important;
  height: 8px !important;
  transition: transform 150ms ease !important;
}
.uhp-dropdown__cta:hover {
  color: #2C7A50 !important;
}
.uhp-dropdown__cta:hover svg {
  transform: translateX(4px) !important;
}

/* Hamburger — hidden on desktop */
.uhp-toggle {
  display: none !important;
  position: relative !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 10px !important;
  width: 44px !important;
  height: 44px !important;
  justify-content: center !important;
  align-items: center !important;
  color: #000000 !important;
  margin-left: auto !important;
}
.uhp-toggle__icon {
  width: 24px !important;
  height: 24px !important;
  display: block !important;
}
.uhp-toggle__icon--close {
  display: none !important;
}
.uhp-toggle[aria-expanded="true"] .uhp-toggle__icon--open {
  display: none !important;
}
.uhp-toggle[aria-expanded="true"] .uhp-toggle__icon--close {
  display: block !important;
}

/* Mobile panel — hidden on desktop */
.uhp-mobile {
  display: none !important;
}

/* Mobile breakpoint */
@media (max-width: 1023px) {
  .uhp-nav {
    display: none !important;
  }
  .uhp-toggle {
    display: flex !important;
  }
  .uhp-dropdown {
    display: none !important;
  }

  .uhp-mobile {
    display: block !important;
    position: fixed !important;
    top: var(--uhp-mobile-top, 72px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    background: #FFFFFF !important;
    z-index: 9998 !important;
    overflow-y: auto !important;
    padding: 24px !important;
    opacity: 0 !important;
    transform: translateY(-12px) !important;
    pointer-events: none !important;
    transition: opacity 260ms ease, transform 260ms ease !important;
  }
  .uhp-mobile[data-uhp-mobile="true"] {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
  }

  .uhp-mobile__item {
    border-bottom: 1px solid #E0E0E0 !important;
  }
  .uhp-mobile__trigger,
  .uhp-mobile__item > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    background: none !important;
    border: none !important;
    font-family: inherit !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    cursor: pointer !important;
    padding: 20px 0 !important;
    text-decoration: none !important;
    text-align: left !important;
  }
  .uhp-mobile__chevron {
    width: 12px !important;
    height: 8px !important;
    transition: transform 200ms ease !important;
  }
  .uhp-mobile__item[data-uhp-mobile-item="true"] .uhp-mobile__chevron {
    transform: rotate(180deg) !important;
  }
  .uhp-mobile__panel {
    display: none !important;
    padding: 0 0 16px 0 !important;
  }
  .uhp-mobile__item[data-uhp-mobile-item="true"] .uhp-mobile__panel {
    display: block !important;
  }

  .uhp-mobile__section-label {
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #6B6B6B !important;
    margin: 20px 0 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid #E0E0E0 !important;
  }

  .uhp-mobile__promo {
    display: block !important;
    position: relative !important;
    margin: 0 0 16px !important;
    aspect-ratio: 16/9 !important;
    background: #0E2B4E !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    text-decoration: none !important;
    color: #FFFFFF !important;
  }
  .uhp-mobile__promo img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    opacity: 0.55 !important;
  }
  .uhp-mobile__promo-content {
    position: absolute !important;
    top: 20px !important;
    left: 20px !important;
    right: 56px !important;
    font-family: inherit !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #FFFFFF !important;
  }
  .uhp-mobile__promo-arrow {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    width: 20px !important;
    height: 20px !important;
    color: #FFFFFF !important;
  }

  .uhp-mobile__section-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 0 !important;
    color: #000000 !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 500 !important;
  }
  .uhp-mobile__icon {
    flex-shrink: 0 !important;
    width: 18px !important;
    height: 18px !important;
    background: #D9D9D9 !important;
    border-radius: 3px !important;
  }
  .uhp-mobile__section-cta {
    display: inline-block !important;
    margin-top: 10px !important;
    color: #000000 !important;
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 11px !important;
    font-weight: 500 !important;
  }
}

body.admin-bar .uhp-mobile {
  top: calc(var(--uhp-mobile-top, 72px) + 32px) !important;
}
@media screen and (max-width: 782px) {
  body.admin-bar .uhp-mobile {
    top: calc(var(--uhp-mobile-top, 72px) + 46px) !important;
  }
}

/* Video popup modal */
.uhp-video-modal {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.85) !important;
  z-index: 99999 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}
.uhp-video-modal[data-uhp-video-open="true"] {
  display: flex !important;
}
.uhp-video-modal__content {
  position: relative !important;
  width: 100% !important;
  max-width: 960px !important;
  aspect-ratio: 16 / 9 !important;
  background: #000000 !important;
}
.uhp-video-modal__content iframe {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
}
.uhp-video-modal__close {
  position: absolute !important;
  top: -44px !important;
  right: 0 !important;
  background: none !important;
  border: none !important;
  color: #FFFFFF !important;
  cursor: pointer !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.uhp-video-modal__player {
  width: 100% !important;
  height: 100% !important;
}
