/**
 * Focused bridge between the MEJ design language and Salient's stable markup.
 * Keep theme-specific specificity in this file.
 */

body.mej-premium .container-wrap,
body.mej-premium #ajax-content-wrap {
  background-color: var(--mej-paper);
}

body.mej-premium #header-outer:not(.transparent),
body.mej-premium #header-outer.small-nav,
body.mej-premium #header-outer.scrolled-down:not(.transparent),
body.mej-premium #header-outer.detached {
  border-bottom: 1px solid rgba(15, 48, 59, 0.09) !important;
  background: rgba(253, 253, 251, 0.94) !important;
  box-shadow: 0 12px 44px rgba(18, 52, 64, 0.07) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
  backdrop-filter: blur(18px) saturate(1.2);
}

body.mej-premium #header-outer,
body.mej-premium #header-outer #top {
  transition:
    background-color 320ms ease,
    box-shadow 320ms ease,
    border-color 320ms ease;
}

body.mej-premium #header-outer #top .container,
body.mej-premium #header-outer header > .container {
  max-width: var(--mej-container) !important;
}

@media (min-width: 62.5625rem) {
  body.mej-premium #header-outer #top > .container > .row {
    display: flex !important;
    align-items: center !important;
  }

  body.mej-premium #header-outer #top .span_3 {
    display: flex !important;
    align-items: center !important;
  }

  body.mej-premium #header-outer #top #logo {
    position: static !important;
    top: auto !important;
    display: inline-flex !important;
    align-items: center;
    line-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }
}

body.mej-premium #header-outer #logo img,
body.mej-premium #header-outer #logo .dark-version {
  width: auto !important;
  height: 4rem !important;
  top: auto !important;
  margin: 0 !important;
  object-fit: contain;
  transition: transform var(--mej-duration-fast) var(--mej-ease);
}

body.mej-premium #header-outer #logo.no-image {
  color: var(--mej-ink-deep) !important;
  font-family: var(--mej-font-display) !important;
  font-size: clamp(1.2rem, 1.65vw, 1.55rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.045em !important;
  line-height: 1 !important;
}

body.mej-premium #header-outer #logo:hover img {
  transform: scale(1.035);
}

@media (min-width: 62.5625rem) {
  body.mej-premium #header-outer.small-nav #logo img,
  body.mej-premium #header-outer.small-nav #logo .dark-version {
    height: 3.25rem !important;
  }
}

body.mej-premium #header-outer #top nav > ul > li > a {
  font-family: var(--mej-font-body) !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
}

body.mej-premium #header-outer:not(.transparent) #top nav > ul > li > a,
body.mej-premium #header-outer.small-nav #top nav > ul > li > a {
  color: var(--mej-ink) !important;
}

body.mej-premium #header-outer #top nav > ul > li > a:hover,
body.mej-premium #header-outer #top nav > ul > li.current-menu-item > a,
body.mej-premium #header-outer #top nav > ul > li.current-menu-ancestor > a {
  color: var(--mej-blue-dark) !important;
}

body.mej-premium #header-outer #top nav > ul > li[class*="button_solid_color"] > a {
  min-height: 3.125rem;
  padding-inline: 1.625rem !important;
  display: inline-flex !important;
  align-items: center;
  border-radius: var(--mej-radius-pill) !important;
  background: var(--mej-ink-deep) !important;
  color: var(--mej-white) !important;
  box-shadow: 0 10px 25px rgba(11, 39, 49, 0.14) !important;
}

/* Salient's button skin adds a second visual layer through pseudo-elements. */
body.mej-premium #header-outer #top nav > ul > li[class*="button_solid_color"] > a::before,
body.mej-premium #header-outer #top nav > ul > li[class*="button_solid_color"] > a::after {
  display: none !important;
  content: none !important;
}

body.mej-premium #header-outer #top nav > ul > li[class*="button_solid_color"] > a {
  overflow: hidden;
  isolation: isolate;
}

body.mej-premium #header-outer #top nav > ul > li[class*="button_solid_color"] > a:hover {
  background: var(--mej-blue-dark) !important;
  color: var(--mej-white) !important;
  transform: translateY(-1px);
}

body.mej-premium #header-outer .sf-menu > li > ul,
body.mej-premium #header-outer .sf-menu > li > ul > li ul {
  overflow: hidden;
  border: 1px solid var(--mej-line);
  border-radius: var(--mej-radius-sm);
  box-shadow: var(--mej-shadow-soft);
}

body.mej-premium a.nectar-button,
body.mej-premium .nectar-button {
  border-radius: var(--mej-radius-pill) !important;
  font-family: var(--mej-font-body) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.mej-premium .mej-salient-card {
  overflow: hidden;
  border: 1px solid var(--mej-line);
  border-radius: var(--mej-radius-md);
  background: var(--mej-white);
  box-shadow: var(--mej-shadow-soft);
  transition: transform 320ms var(--mej-ease), box-shadow 320ms var(--mej-ease);
}

body.mej-premium .mej-salient-card:hover {
  box-shadow: var(--mej-shadow);
  transform: translateY(-5px);
}

body.mej-premium .mej-form :where(input:not([type="submit"]), textarea, select) {
  width: 100%;
  border: 1px solid var(--mej-line) !important;
  border-radius: 0.875rem !important;
  background: rgba(255, 255, 255, 0.86) !important;
  color: var(--mej-ink-deep) !important;
  box-shadow: none !important;
}

body.mej-premium .mej-form :where(input:not([type="submit"]), select) {
  min-height: 3.5rem;
}

body.mej-premium .mej-form :where(input:not([type="submit"]), textarea, select):focus {
  border-color: var(--mej-blue) !important;
  box-shadow: 0 0 0 4px rgba(85, 127, 146, 0.12) !important;
}

body.mej-premium #footer-outer,
body.mej-premium #footer-outer #copyright {
  background: var(--mej-ink-deep);
  color: rgba(255, 255, 255, 0.74);
}

body.mej-premium #footer-outer a {
  color: var(--mej-champagne-light);
}

body.mej-premium #footer-outer :where(h2, h3, h4, h5) {
  color: var(--mej-white);
  font-family: var(--mej-font-display);
}

body.mej-premium #footer-outer .mej-footer-legal {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

body.mej-premium #footer-outer .mej-footer-legal__inner {
  min-height: 5rem;
  padding-block: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

body.mej-premium #footer-outer .mej-footer-legal__inner > span {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.6875rem;
  line-height: 1.5;
}

body.mej-premium #footer-outer .mej-footer-legal nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
}

body.mej-premium #footer-outer .mej-footer-legal nav a {
  color: var(--mej-champagne-light) !important;
  font-size: 0.6875rem;
  font-weight: 700;
  text-decoration: none !important;
}

body.mej-premium .nectar-global-section.before-footer,
body.mej-premium .nectar-global-section[data-location="nectar_hook_global_section_footer"] {
  margin: 0;
}

@media (max-width: 62.5rem) {
  body.mej-premium #header-outer #top > .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 4% !important;
    padding-left: 4% !important;
    box-sizing: border-box;
  }

  body.mej-premium #header-outer #logo img,
  body.mej-premium #header-outer #logo .dark-version {
    height: 3.25rem !important;
    top: auto !important;
    margin: 0 !important;
  }
}

@media (max-width: 43.125rem) {
	body.mej-premium #footer-outer .mej-footer-legal__inner {
		align-items: flex-start;
		flex-direction: column;
	}

  body.mej-premium #header-outer #logo img,
  body.mej-premium #header-outer #logo .dark-version {
    height: 3rem !important;
    top: auto !important;
    margin: 0 !important;
  }

  body.mej-premium .mej-salient-card:hover {
    transform: none;
  }
}
