/* Legacy navigation & header centering */
.navbar-default .menubar .container {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

#main-menu {
  flex-grow: 1 !important;
  display: flex !important;
  justify-content: center !important;
  float: none !important;
}

.quadmenu-navbar-nav {
  display: flex !important;
  justify-content: center !important;
  float: none !important;
  margin: 0 auto !important;
}

/* ------------------------------------------------------------------
   V3 HEADER ISOLATION & RESET (Prevent legacy stylesheet bleed-in)
   ------------------------------------------------------------------ */

/* Safe reset to prevent legacy styles from centering/distorting header */
.v3-site-header ul,
.v3-site-header li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.v3-site-header .v3-nav-list {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 28px !important;
}

.v3-site-header .v3-nav-item {
  display: block !important;
  position: relative !important;
  padding: 10px 0 !important;
  text-align: left !important;
}

/* Mega menu dropdown parent must be static so the mega menu positions relative to nav container */
.v3-site-header .v3-nav-item.v3-mega-dropdown {
  position: static !important;
}

.v3-site-header .v3-nav-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  text-align: left !important;
  padding: 0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  line-height: normal !important;
}

/* ------------------------------------------------------------------
   DROPDOWNS & MEGA MENU (Always Solid White on Index & Subpages)
   ------------------------------------------------------------------ */

/* Standard dropdown menu */
.v3-site-header .v3-dropdown-menu {
  display: block !important;
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(10px) !important;
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
  text-align: left !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 12px 0 !important;
  min-width: 220px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: all 0.25s ease !important;
  z-index: 1000 !important;
}

.v3-site-header .v3-dropdown:hover .v3-dropdown-menu {
  transform: translateX(-50%) translateY(0) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.v3-site-header .v3-dropdown-menu li {
  display: block !important;
  text-align: left !important;
  padding: 0 !important;
}

.v3-site-header .v3-dropdown-menu a {
  display: block !important;
  text-align: left !important;
  padding: 10px 20px !important;
  font-size: 14px !important;
  text-transform: none !important;
  line-height: normal !important;
  background: none !important;
  color: #1d2939 !important;
  transition: all 0.2s ease !important;
}

.v3-site-header .v3-dropdown-menu a:hover {
  background-color: #f8fafc !important;
  color: #377EF9 !important;
  padding-left: 24px !important;
}

/* Mega menu centered layout with 1200px max-width */
.v3-site-header .v3-mega-menu {
  display: block !important;
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(10px) !important;
  width: calc(100% - 48px) !important;
  max-width: 1200px !important;
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-radius: 8px !important;
  padding: 24px !important;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08) !important;
  text-align: left !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: all 0.25s ease !important;
  z-index: 1000 !important;
}

.v3-site-header .v3-mega-dropdown:hover .v3-mega-menu {
  transform: translateX(-50%) translateY(0) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.v3-site-header .v3-mega-menu-item {
  text-align: left !important;
}

.v3-site-header .v3-mega-menu-item:hover {
  background-color: #f8fafc !important;
}

.v3-site-header .v3-mega-title {
  text-align: left !important;
  color: #1d2939 !important;
}

.v3-site-header .v3-mega-desc {
  text-align: left !important;
  color: #667085 !important;
}

/* ------------------------------------------------------------------
   CONTAINER AND LAYOUT
   ------------------------------------------------------------------ */
.v3-site-header .v3-header-container {
  max-width: 1600px !important;
}

.v3-site-header .v3-main-nav-container {
  position: relative !important;
}

.v3-site-header .v3-logo {
  filter: none !important;
}

/* ------------------------------------------------------------------
   INDEX / HOMEPAGE NAVIGATION (Transparent on load, White on Scroll)
   ------------------------------------------------------------------ */

/* Homepage Header - On Load (Unscrolled) */
.v3-site-header.is-home:not(.is-scrolled),
body.home .v3-site-header:not(.is-scrolled) {
  background: transparent !important;
  box-shadow: none !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-top-bar,
body.home .v3-site-header:not(.is-scrolled) .v3-top-bar {
  background: transparent !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-main-nav,
body.home .v3-site-header:not(.is-scrolled) .v3-main-nav {
  background: transparent !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-nav-link,
body.home .v3-site-header:not(.is-scrolled) .v3-nav-link {
  color: rgba(255, 255, 255, 0.95) !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-nav-link:hover,
body.home .v3-site-header:not(.is-scrolled) .v3-nav-link:hover {
  color: #377EF9 !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-top-bar a,
.v3-site-header.is-home:not(.is-scrolled) .v3-top-bar span,
.v3-site-header.is-home:not(.is-scrolled) .v3-social-link,
body.home .v3-site-header:not(.is-scrolled) .v3-top-bar a,
body.home .v3-site-header:not(.is-scrolled) .v3-top-bar span,
body.home .v3-site-header:not(.is-scrolled) .v3-social-link {
  color: rgba(255, 255, 255, 0.85) !important;
}

.v3-site-header.is-home:not(.is-scrolled) .v3-top-bar a:hover,
.v3-site-header.is-home:not(.is-scrolled) .v3-social-link:hover,
body.home .v3-site-header:not(.is-scrolled) .v3-top-bar a:hover,
body.home .v3-site-header:not(.is-scrolled) .v3-social-link:hover {
  color: #377EF9 !important;
}

/* Homepage Header - When Scrolled */
.v3-site-header.is-home.is-scrolled,
body.home .v3-site-header.is-scrolled {
  background: #ffffff !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
}

.v3-site-header.is-home.is-scrolled .v3-top-bar,
body.home .v3-site-header.is-scrolled .v3-top-bar {
  background: #ffffff !important;
  border-bottom: 1px solid #f2f4f7 !important;
}

.v3-site-header.is-home.is-scrolled .v3-main-nav,
body.home .v3-site-header.is-scrolled .v3-main-nav {
  background: #ffffff !important;
}

.v3-site-header.is-home.is-scrolled .v3-nav-link,
body.home .v3-site-header.is-scrolled .v3-nav-link {
  color: #1d2939 !important;
}

.v3-site-header.is-home.is-scrolled .v3-nav-link:hover,
body.home .v3-site-header.is-scrolled .v3-nav-link:hover {
  color: #377EF9 !important;
}

.v3-site-header.is-home.is-scrolled .v3-top-bar a,
.v3-site-header.is-home.is-scrolled .v3-top-bar span,
.v3-site-header.is-home.is-scrolled .v3-social-link,
body.home .v3-site-header.is-scrolled .v3-top-bar a,
body.home .v3-site-header.is-scrolled .v3-top-bar span,
body.home .v3-site-header.is-scrolled .v3-social-link {
  color: #475467 !important;
}

.v3-site-header.is-home.is-scrolled .v3-top-bar a:hover,
.v3-site-header.is-home.is-scrolled .v3-social-link:hover,
body.home .v3-site-header.is-scrolled .v3-top-bar a:hover,
body.home .v3-site-header.is-scrolled .v3-social-link:hover {
  color: #377EF9 !important;
}

/* ------------------------------------------------------------------
   SUBPAGE NAVIGATION (Always Solid White on Load & Scroll)
   ------------------------------------------------------------------ */

.v3-site-header.is-subpage,
body:not(.home) .v3-site-header {
  background: #ffffff !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
}

.v3-site-header.is-subpage .v3-top-bar,
body:not(.home) .v3-site-header .v3-top-bar {
  background: #ffffff !important;
  border-bottom: 1px solid #f2f4f7 !important;
}

.v3-site-header.is-subpage .v3-main-nav,
body:not(.home) .v3-site-header .v3-main-nav {
  background: #ffffff !important;
}

.v3-site-header.is-subpage .v3-nav-link,
body:not(.home) .v3-site-header .v3-nav-link {
  color: #1d2939 !important;
}

.v3-site-header.is-subpage .v3-nav-link:hover,
body:not(.home) .v3-site-header .v3-nav-link:hover {
  color: #377EF9 !important;
}

.v3-site-header.is-subpage .v3-top-bar a,
.v3-site-header.is-subpage .v3-top-bar span,
.v3-site-header.is-subpage .v3-social-link,
body:not(.home) .v3-site-header .v3-top-bar a,
body:not(.home) .v3-site-header .v3-top-bar span,
body:not(.home) .v3-site-header .v3-social-link {
  color: #475467 !important;
}

.v3-site-header.is-subpage .v3-top-bar a:hover,
.v3-site-header.is-subpage .v3-social-link:hover,
body:not(.home) .v3-site-header .v3-top-bar a:hover,
body:not(.home) .v3-site-header .v3-social-link:hover {
  color: #377EF9 !important;
}
