@import url("./variables.css");
@import url("./typography.css");
@import url("./layout.css");
@import url("./components.css");
@import url("./pages.css");


/* ================================================================
   v7.3 official viCOMPASSa logo and icon assets
   ================================================================ */

.official-brand-lockup {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  overflow: hidden;
}

.official-brand-lockup img {
  display: block;
  width: clamp(188px, 17vw, 292px);
  height: auto;
  max-height: 70px;
  object-fit: contain;
  object-position: left center;
  border: 0;
  filter: none;
}

.floating-compass-core--brand {
  overflow: hidden;
  border-radius: 50%;
  background: var(--navy, #071b3a);
}

.floating-compass-core--brand img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: inherit;
  transform: scale(1.12);
}

.decision-card--method .decision-card-icon-image img {
  object-fit: cover;
  object-position: center;
}

@media (max-width: 980px) {
  .official-brand-lockup img {
    width: clamp(170px, 28vw, 230px);
    max-height: 60px;
  }
}

@media (max-width: 620px) {
  .official-brand-lockup img {
    width: 164px;
    max-height: 54px;
  }
}


/* ================================================================
   v7.6 homepage header — original layout, new logo only
   ================================================================ */

body.home-page .site-header .official-brand-lockup {
  display: inline-flex;
  align-items: center;
  width: auto;
  min-width: 0;
  height: auto;
  padding: 0;
  margin: 0;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible;
}

body.home-page .site-header .official-brand-lockup img {
  display: block;
  width: auto !important;
  height: 88px !important;
  max-width: 500px !important;
  max-height: 88px !important;
  object-fit: contain;
  object-position: left center;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Preserve the original responsive header arrangement. */
@media (max-width: 1180px) {
  body.home-page .site-header .official-brand-lockup img {
    height: 78px !important;
    max-height: 78px !important;
    max-width: 420px !important;
  }
}

@media (max-width: 980px) {
  body.home-page .site-header .official-brand-lockup img {
    height: 66px !important;
    max-height: 66px !important;
    max-width: 340px !important;
  }
}

@media (max-width: 620px) {
  body.home-page .site-header .official-brand-lockup img {
    height: 56px !important;
    max-height: 56px !important;
    max-width: 275px !important;
  }
}


/* ================================================================
   v7.7 homepage logo only — fill all space before first navigation tab
   ================================================================ */

body.home-page .site-header .official-brand-lockup {
  justify-self: stretch !important;
  align-self: center !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 132px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  display: none !important;
  content: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

@media (max-width: 1320px) {
  body.home-page .site-header .official-brand-lockup {
    height: 116px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .official-brand-lockup {
    width: min(520px, 74vw) !important;
    height: 102px !important;
  }
}

@media (max-width: 640px) {
  body.home-page .site-header .official-brand-lockup {
    width: min(360px, 76vw) !important;
    height: 82px !important;
  }
}


/* ================================================================
   Master package — exact supplied resized logo
   Header layout, navigation, CTA, and spacing remain unchanged.
   ================================================================ */

body.home-page .site-header .official-brand-lockup {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  display: none !important;
  content: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}


/* ================================================================
   Master refinement — seamless, extended homepage logo
   Only the logo treatment changes.
   ================================================================ */

body.home-page .site-header .official-brand-lockup {
  position: relative !important;
  z-index: 2 !important;
  width: 585px !important;
  min-width: 585px !important;
  height: 164px !important;
  overflow: visible !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  display: none !important;
  content: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}

@media (max-width: 1550px) {
  body.home-page .site-header .official-brand-lockup {
    width: 535px !important;
    min-width: 535px !important;
    height: 150px !important;
  }
}

@media (max-width: 1280px) {
  body.home-page .site-header .official-brand-lockup {
    width: 455px !important;
    min-width: 455px !important;
    height: 132px !important;
  }
}

@media (max-width: 930px) {
  body.home-page .site-header .official-brand-lockup {
    width: min(410px, 72vw) !important;
    min-width: 0 !important;
    height: 108px !important;
  }
}

@media (max-width: 640px) {
  body.home-page .site-header .official-brand-lockup {
    width: min(330px, 76vw) !important;
    height: 88px !important;
  }
}


/* ================================================================
   v7.8 — separated header columns
   Logo, navigation and CTA cannot overlap.
   ================================================================ */

body.home-page .site-header .site-shell.nav-shell {
  width: calc(100% - 32px) !important;
  max-width: none !important;
  margin-inline: 16px !important;
  min-height: 154px !important;
  padding-block: 0 !important;

  display: grid !important;
  grid-template-columns:
    minmax(500px, 31vw)
    minmax(0, 1fr)
    auto !important;
  align-items: center !important;
  column-gap: clamp(20px, 1.7vw, 34px) !important;
}

/* Logo occupies only its own column. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  justify-self: stretch !important;
  align-self: stretch !important;

  width: 100% !important;
  min-width: 0 !important;
  height: 154px !important;
  margin: 0 !important;
  padding: 5px 0 !important;

  overflow: visible !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  content: none !important;
  display: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;

  object-fit: contain !important;
  object-position: left center !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Navigation stays completely inside the middle column. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  min-width: 0 !important;
  width: 100% !important;
  justify-self: stretch !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: clamp(12px, 1.15vw, 23px) !important;
}

body.home-page .site-header .primary-nav > *,
body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  white-space: nowrap !important;
}

/* CTA remains in the dedicated right column. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  justify-self: end !important;
  white-space: nowrap !important;
}

/* Desktop compression without overlap. */
@media (max-width: 1600px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      minmax(445px, 29vw)
      minmax(0, 1fr)
      auto !important;
    column-gap: 18px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 12px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.92rem !important;
  }
}

@media (max-width: 1360px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      minmax(390px, 28vw)
      minmax(0, 1fr)
      auto !important;
    min-height: 138px !important;
    column-gap: 14px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 138px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 9px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.84rem !important;
  }
}

/* Existing mobile menu behavior takes over below this point. */
@media (max-width: 1080px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns: minmax(300px, 72vw) auto !important;
    min-height: 110px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    grid-column: 1 !important;
    width: 100% !important;
    height: 106px !important;
  }
}


/* ================================================================
   v7.9 — responsive desktop header refinement
   Balances laptop and large-monitor layouts without overlap.
   ================================================================ */

body.home-page .site-header .site-shell.nav-shell {
  width: calc(100% - 28px) !important;
  max-width: none !important;
  margin-inline: 14px !important;
  min-height: clamp(118px, 8vw, 150px) !important;
  padding-block: 0 !important;

  display: grid !important;
  grid-template-columns:
    clamp(350px, 27vw, 500px)
    minmax(0, 1fr)
    auto !important;
  align-items: center !important;
  column-gap: clamp(14px, 1.4vw, 28px) !important;
}

/* Fluid logo column: fills its area but never intrudes into navigation. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  justify-self: stretch !important;
  align-self: stretch !important;

  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: clamp(4px, 0.45vw, 8px) 0 !important;

  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  content: none !important;
  display: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Navigation receives all remaining flexible space. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  min-width: 0 !important;
  width: 100% !important;
  justify-self: stretch !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: clamp(10px, 1vw, 20px) !important;
}

body.home-page .site-header .primary-nav > *,
body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  white-space: nowrap !important;
}

/* CTA remains independent at the far right. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  justify-self: end !important;
  white-space: nowrap !important;
}

/* Large external monitors: retain a prominent logo without excess emptiness. */
@media (min-width: 1680px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      clamp(455px, 27vw, 520px)
      minmax(0, 1fr)
      auto !important;
    column-gap: clamp(20px, 1.4vw, 30px) !important;
  }

  body.home-page .site-header .primary-nav {
    gap: clamp(14px, 1vw, 22px) !important;
  }
}

/* Typical laptop / medium desktop widths. */
@media (max-width: 1480px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      clamp(340px, 26vw, 410px)
      minmax(0, 1fr)
      auto !important;
    column-gap: 13px !important;
    min-height: 126px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 9px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.84rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    padding-inline: 1rem !important;
  }
}

/* Smaller laptops: compact the desktop header before any collision occurs. */
@media (max-width: 1240px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      clamp(300px, 25vw, 350px)
      minmax(0, 1fr)
      auto !important;
    column-gap: 9px !important;
    min-height: 112px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 7px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.76rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    font-size: 0.78rem !important;
    padding-inline: 0.8rem !important;
  }
}

/* Let the existing mobile/tablet menu behavior take over before overlap. */
@media (max-width: 1080px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns: minmax(280px, 72vw) auto !important;
    min-height: 104px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    grid-column: 1 !important;
  }
}


/* ================================================================
   v7.10 — consistent desktop header scale
   A centered max-width shell keeps laptop and large-monitor views
   visually aligned instead of scaling the whole composition.
   ================================================================ */

body.home-page .site-header .site-shell.nav-shell {
  width: calc(100% - 32px) !important;
  max-width: 1780px !important;
  margin-inline: auto !important;
  min-height: 142px !important;
  padding-inline: 0 !important;
  padding-block: 0 !important;

  display: grid !important;
  grid-template-columns:
    480px
    minmax(0, 1fr)
    auto !important;
  align-items: center !important;
  column-gap: 24px !important;
}

/* Keep the brand at one stable visual size across desktop monitors. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  justify-self: stretch !important;
  align-self: center !important;

  width: 480px !important;
  min-width: 480px !important;
  height: 132px !important;
  min-height: 132px !important;
  margin: 0 !important;
  padding: 4px 0 !important;

  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  content: none !important;
  display: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Keep navigation typography and rhythm stable on normal desktops. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  min-width: 0 !important;
  width: 100% !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 17px !important;
}

body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  font-size: 0.92rem !important;
  white-space: nowrap !important;
}

/* Keep CTA dimensions consistent rather than scaling with viewport. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  justify-self: end !important;
  min-height: 58px !important;
  padding-inline: 1.3rem !important;
  font-size: 0.92rem !important;
  white-space: nowrap !important;
}

/* Moderate laptop reduction only when the space is genuinely needed. */
@media (max-width: 1510px) {
  body.home-page .site-header .site-shell.nav-shell {
    max-width: none !important;
    grid-template-columns:
      405px
      minmax(0, 1fr)
      auto !important;
    min-height: 126px !important;
    column-gap: 14px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 405px !important;
    min-width: 405px !important;
    height: 116px !important;
    min-height: 116px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 10px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.82rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 54px !important;
    padding-inline: 1rem !important;
    font-size: 0.84rem !important;
  }
}

/* Compact desktop stage before the mobile navigation takes over. */
@media (max-width: 1240px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      340px
      minmax(0, 1fr)
      auto !important;
    min-height: 112px !important;
    column-gap: 9px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 340px !important;
    min-width: 340px !important;
    height: 102px !important;
    min-height: 102px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 7px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.75rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 48px !important;
    padding-inline: 0.78rem !important;
    font-size: 0.76rem !important;
  }
}

/* Existing responsive/mobile navigation behavior remains in control. */
@media (max-width: 1080px) {
  body.home-page .site-header .site-shell.nav-shell {
    width: calc(100% - 20px) !important;
    grid-template-columns: minmax(280px, 72vw) auto !important;
    min-height: 104px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 100% !important;
    min-width: 0 !important;
    height: 96px !important;
    min-height: 96px !important;
  }
}


/* ================================================================
   v7.11 — tighter logo-to-navigation spacing
   Preserve visual scale; reclaim only the unused horizontal gap.
   ================================================================ */

body.home-page .site-header .site-shell.nav-shell {
  grid-template-columns:
    450px
    minmax(0, 1fr)
    auto !important;
  column-gap: 14px !important;
}

body.home-page .site-header .official-brand-lockup {
  width: 450px !important;
  min-width: 450px !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      382px
      minmax(0, 1fr)
      auto !important;
    column-gap: 10px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 382px !important;
    min-width: 382px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      320px
      minmax(0, 1fr)
      auto !important;
    column-gap: 7px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 320px !important;
    min-width: 320px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns: minmax(280px, 72vw) auto !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* ================================================================
   v7.12 — intrinsic logo width and intentional navigation gap
   The navigation begins immediately after the visible brand lockup.
   ================================================================ */

body.home-page .site-header .site-shell.nav-shell {
  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto !important;
  column-gap: 22px !important;
}

/* Shrink-wrap the brand to the actual rendered logo instead of
   reserving a fixed-width invisible column. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  justify-self: start !important;
  align-self: center !important;

  width: auto !important;
  min-width: 0 !important;
  height: 132px !important;
  min-height: 132px !important;
  margin: 0 !important;
  padding: 4px 0 !important;

  overflow: visible !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: 450px !important;
  max-height: 132px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* Navigation begins directly after the intrinsic logo width. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  justify-self: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
}

/* Keep CTA at the far right. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  justify-self: end !important;
}

/* Laptop sizing: preserve the same composition with a smaller logo. */
@media (max-width: 1510px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns:
      auto
      minmax(0, 1fr)
      auto !important;
    column-gap: 18px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 116px !important;
    min-height: 116px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 382px !important;
    max-height: 116px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .site-shell.nav-shell {
    column-gap: 14px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 102px !important;
    min-height: 102px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 320px !important;
    max-height: 102px !important;
  }
}

/* Existing mobile navigation behavior remains unchanged. */
@media (max-width: 1080px) {
  body.home-page .site-header .site-shell.nav-shell {
    grid-template-columns: minmax(280px, 72vw) auto !important;
  }

  body.home-page .site-header .official-brand-lockup {
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    width: auto !important;
    max-width: 100% !important;
    max-height: 96px !important;
  }
}


/* ================================================================
   v7.13 — split brand and navigation band experiment
   Logo is independent; gold rule begins below the functional nav area.
   ================================================================ */

body.home-page .site-header {
  position: relative !important;
  background: var(--color-navy-950, #071b3a) !important;
  border-bottom: 0 !important;
}

body.home-page .site-header .nav-shell--split-band {
  position: relative !important;
  width: calc(100% - 32px) !important;
  max-width: 1780px !important;
  margin-inline: auto !important;
  min-height: 162px !important;
  padding: 0 !important;

  display: grid !important;
  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto !important;
  grid-template-rows:
    52px
    72px
    38px !important;
  column-gap: 22px !important;
  align-items: center !important;
}

/* Brand sits independently in the upper-left and spans the full header. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  grid-row: 1 / 4 !important;
  justify-self: start !important;
  align-self: center !important;

  width: auto !important;
  min-width: 0 !important;
  height: 148px !important;
  min-height: 148px !important;
  margin: 0 !important;
  padding: 2px 0 !important;

  overflow: visible !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  content: none !important;
  display: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: 485px !important;
  max-height: 148px !important;
  object-fit: contain !important;
  object-position: left center !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Navigation and CTA form the lower functional band. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: center !important;
  justify-self: stretch !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: 16px !important;
}

body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  font-size: 0.9rem !important;
  white-space: nowrap !important;
}

body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  grid-row: 2 !important;
  align-self: center !important;
  justify-self: end !important;
  min-height: 58px !important;
  padding-inline: 1.25rem !important;
  font-size: 0.9rem !important;
  white-space: nowrap !important;
}

/* Gold line belongs only to the navigation/CTA band, not the logo. */
body.home-page .site-header .nav-shell--split-band::after {
  content: "" !important;
  position: absolute !important;
  left: calc(var(--split-logo-width, 485px) + 22px) !important;
  right: 0 !important;
  bottom: 31px !important;
  height: 1px !important;
  background: var(--color-gold, #EEC665) !important;
  opacity: 0.9 !important;
  pointer-events: none !important;
}

/* Remove any original full-width header rule. */
body.home-page .site-header::after,
body.home-page .site-header::before {
  display: none !important;
  content: none !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 146px !important;
    grid-template-rows: 42px 66px 38px !important;
    column-gap: 18px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 132px !important;
    min-height: 132px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 420px !important;
    max-height: 132px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 10px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.8rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 52px !important;
    padding-inline: 1rem !important;
    font-size: 0.82rem !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    left: 438px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 132px !important;
    grid-template-rows: 34px 62px 36px !important;
    column-gap: 14px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 118px !important;
    min-height: 118px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 360px !important;
    max-height: 118px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 7px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.72rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 48px !important;
    padding-inline: 0.75rem !important;
    font-size: 0.74rem !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    left: 374px !important;
  }
}

/* Existing mobile menu behavior remains the fallback. */
@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 104px !important;
    grid-template-columns: minmax(280px, 72vw) auto !important;
    grid-template-rows: 104px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 100% !important;
    max-height: 96px !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    display: none !important;
  }
}


/* ================================================================
   v7.14 — wordmark-aligned navigation with descriptor-level rule
   Navigation + CTA share one row aligned with viCOMPASSa.
   Gold rule aligns with DECISION ENGINEERING ADVISORY.
   ================================================================ */

body.home-page .site-header {
  position: relative !important;
  background: var(--color-navy-950, #071b3a) !important;
  border-bottom: 0 !important;
}

body.home-page .site-header .nav-shell--split-band {
  position: relative !important;
  width: calc(100% - 32px) !important;
  max-width: 1780px !important;
  margin-inline: auto !important;
  min-height: 154px !important;
  padding: 0 !important;

  display: grid !important;
  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto !important;
  grid-template-rows:
    94px
    60px !important;
  column-gap: 22px !important;
  align-items: center !important;
}

/* Logo spans both rows and remains independent at the left. */
body.home-page .site-header .official-brand-lockup {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  justify-self: start !important;
  align-self: center !important;

  width: auto !important;
  min-width: 0 !important;
  height: 146px !important;
  min-height: 146px !important;
  margin: 0 !important;
  padding: 2px 0 !important;

  overflow: visible !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.home-page .site-header .official-brand-lockup::before,
body.home-page .site-header .official-brand-lockup::after {
  content: none !important;
  display: none !important;
}

body.home-page .site-header .official-brand-lockup img {
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: 480px !important;
  max-height: 146px !important;
  object-fit: contain !important;
  object-position: left center !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Navigation aligns with the viCOMPASSa wordmark line. */
body.home-page .site-header .primary-nav {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;
  justify-self: stretch !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  min-width: 0 !important;
  padding-bottom: 17px !important;
  gap: 15px !important;
}

body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  font-size: 0.9rem !important;
  white-space: nowrap !important;
}

/* CTA follows language on the same wordmark-aligned row. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: end !important;
  justify-self: end !important;

  min-height: 58px !important;
  margin-bottom: 4px !important;
  padding-inline: 1.25rem !important;
  font-size: 0.9rem !important;
  white-space: nowrap !important;
}

/* Gold line begins after the logo and sits at descriptor level. */
body.home-page .site-header .nav-shell--split-band::after {
  content: "" !important;
  position: absolute !important;
  left: 502px !important;
  right: 0 !important;
  top: 119px !important;
  bottom: auto !important;
  height: 1px !important;
  background: var(--color-gold, #EEC665) !important;
  opacity: 0.92 !important;
  pointer-events: none !important;
}

/* Remove any legacy full-width header rule. */
body.home-page .site-header::before,
body.home-page .site-header::after {
  content: none !important;
  display: none !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 140px !important;
    grid-template-rows: 86px 54px !important;
    column-gap: 18px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 132px !important;
    min-height: 132px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 420px !important;
    max-height: 132px !important;
  }

  body.home-page .site-header .primary-nav {
    padding-bottom: 14px !important;
    gap: 10px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.8rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 52px !important;
    padding-inline: 1rem !important;
    font-size: 0.82rem !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    left: 438px !important;
    top: 108px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 128px !important;
    grid-template-rows: 78px 50px !important;
    column-gap: 14px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 118px !important;
    min-height: 118px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 360px !important;
    max-height: 118px !important;
  }

  body.home-page .site-header .primary-nav {
    padding-bottom: 12px !important;
    gap: 7px !important;
  }

  body.home-page .site-header .primary-nav a,
  body.home-page .site-header .language-trigger {
    font-size: 0.72rem !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 48px !important;
    padding-inline: 0.75rem !important;
    font-size: 0.74rem !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    left: 374px !important;
    top: 99px !important;
  }
}

/* Existing mobile navigation remains the fallback. */
@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 104px !important;
    grid-template-columns: minmax(280px, 72vw) auto !important;
    grid-template-rows: 104px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 100% !important;
    max-height: 96px !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    display: none !important;
  }
}


/* ================================================================
   v7.15 — vertically compressed split header
   Moves brand, navigation and CTA upward and brings the gold line closer.
   ================================================================ */

body.home-page .site-header .nav-shell--split-band {
  min-height: 132px !important;
  grid-template-rows:
    82px
    50px !important;
}

/* Move the complete brand lockup upward while preserving its scale. */
body.home-page .site-header .official-brand-lockup {
  height: 132px !important;
  min-height: 132px !important;
  padding: 0 !important;
  transform: translateY(-8px) !important;
}

body.home-page .site-header .official-brand-lockup img {
  max-width: 480px !important;
  max-height: 132px !important;
}

/* Raise navigation and CTA and reduce the empty space beneath them. */
body.home-page .site-header .primary-nav {
  align-self: end !important;
  padding-bottom: 7px !important;
  transform: translateY(-7px) !important;
}

body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  align-self: end !important;
  margin-bottom: 0 !important;
  transform: translateY(-7px) !important;
}

/* Raise the partial gold rule so it sits directly beneath the nav band,
   near the level of DECISION ENGINEERING ADVISORY. */
body.home-page .site-header .nav-shell--split-band::after {
  top: 100px !important;
}

/* Reduce residual space between the header and the hero. */
body.home-page .site-header {
  min-height: 132px !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 122px !important;
    grid-template-rows:
      76px
      46px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 120px !important;
    min-height: 120px !important;
    transform: translateY(-7px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 420px !important;
    max-height: 120px !important;
  }

  body.home-page .site-header .primary-nav {
    padding-bottom: 6px !important;
    transform: translateY(-6px) !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    transform: translateY(-6px) !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    top: 93px !important;
  }

  body.home-page .site-header {
    min-height: 122px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 112px !important;
    grid-template-rows:
      70px
      42px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 108px !important;
    min-height: 108px !important;
    transform: translateY(-5px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 360px !important;
    max-height: 108px !important;
  }

  body.home-page .site-header .primary-nav {
    padding-bottom: 5px !important;
    transform: translateY(-5px) !important;
  }

  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    transform: translateY(-5px) !important;
  }

  body.home-page .site-header .nav-shell--split-band::after {
    top: 86px !important;
  }

  body.home-page .site-header {
    min-height: 112px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    min-height: 96px !important;
    grid-template-rows: 96px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 90px !important;
    min-height: 90px !important;
    transform: none !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-height: 90px !important;
  }

  body.home-page .site-header {
    min-height: 96px !important;
  }
}


/* ================================================================
   v7.16 — compact navigation and navigation-only divider
   Tight controls, anchored dropdown, divider ends at language menu.
   ================================================================ */

/* The nav column shrink-wraps to its actual menu content instead of
   stretching across all available space. */
body.home-page .site-header .nav-shell--split-band {
  grid-template-columns:
    auto
    max-content
    auto !important;
  justify-content: space-between !important;
  column-gap: 24px !important;
}

/* Tighten each menu group and keep arrows close to their labels. */
body.home-page .site-header .primary-nav {
  position: relative !important;
  width: max-content !important;
  min-width: 0 !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  gap: 11px !important;
  padding-bottom: 4px !important;
}

body.home-page .site-header .primary-nav > .nav-group,
body.home-page .site-header .primary-nav > li,
body.home-page .site-header .language-menu {
  position: relative !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.home-page .site-header .primary-nav > .nav-group > a,
body.home-page .site-header .primary-nav > li > a,
body.home-page .site-header .language-trigger {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  padding-inline: 2px !important;
  gap: 4px !important;
  white-space: nowrap !important;
}

/* Divider belongs to the navigation only:
   starts at Decision Navigation and ends at the language control. */
body.home-page .site-header .primary-nav::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -7px !important;
  height: 1px !important;
  background: var(--color-gold, #EEC665) !important;
  opacity: 0.92 !important;
  pointer-events: none !important;
}

/* Disable the previous shell-level divider. */
body.home-page .site-header .nav-shell--split-band::after {
  display: none !important;
  content: none !important;
}

/* Keep CTA separate and never underline it. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  justify-self: end !important;
  margin-left: 0 !important;
}

/* Dropdowns open directly below their own compact menu group. */
body.home-page .site-header .primary-nav .nav-group > .dropdown-menu,
body.home-page .site-header .primary-nav .nav-group > .mega-menu,
body.home-page .site-header .primary-nav li > .dropdown-menu {
  left: 0 !important;
  right: auto !important;
  top: calc(100% + 13px) !important;
  margin: 0 !important;
  transform: none !important;
}

/* Decision Navigation's larger panel stays attached to its trigger
   and does not extend left over the logo. */
body.home-page .site-header .primary-nav > .nav-group:first-child > .dropdown-menu,
body.home-page .site-header .primary-nav > .nav-group:first-child > .mega-menu,
body.home-page .site-header .primary-nav > li:first-child > .dropdown-menu {
  left: 0 !important;
  right: auto !important;
  transform: none !important;
  transform-origin: top left !important;
}

/* Laptop adjustments preserve the same tight rhythm. */
@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    column-gap: 18px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 8px !important;
    padding-bottom: 3px !important;
  }

  body.home-page .site-header .primary-nav > .nav-group > a,
  body.home-page .site-header .primary-nav > li > a,
  body.home-page .site-header .language-trigger {
    padding-inline: 1px !important;
    gap: 3px !important;
  }

  body.home-page .site-header .primary-nav::after {
    bottom: -6px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    column-gap: 13px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 6px !important;
  }

  body.home-page .site-header .primary-nav::after {
    bottom: -5px !important;
  }
}

/* Existing mobile navigation remains unchanged. */
@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    grid-template-columns: minmax(280px, 72vw) auto !important;
    justify-content: normal !important;
  }

  body.home-page .site-header .primary-nav::after {
    display: none !important;
  }
}


/* ================================================================
   v7.17 — balanced tab spacing and content-fit submenus
   ================================================================ */

body.home-page .site-header .primary-nav {
  gap: 18px !important;
}

body.home-page .site-header .primary-nav > .nav-group > a,
body.home-page .site-header .primary-nav > li > a,
body.home-page .site-header .language-trigger {
  padding-inline: 1px !important;
  gap: 4px !important;
}

/* Keep a deliberate separation between language and CTA. */
body.home-page .site-header .nav-shell--split-band {
  column-gap: 32px !important;
}

/* Every submenu fits its text rather than using a broad fixed panel. */
body.home-page .site-header .primary-nav .dropdown {
  width: max-content !important;
  min-width: max-content !important;
  max-width: min(430px, calc(100vw - 32px)) !important;
  padding: 10px 12px !important;
  left: 10px !important;
  right: auto !important;
  top: calc(100% + 12px) !important;
  transform: none !important;
  box-sizing: border-box !important;
}

body.home-page .site-header .primary-nav .dropdown a {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 10px 12px !important;
  white-space: nowrap !important;
}

/* The first panel is slightly wider for its longer questions, but still
   compact and shifted right so it never overlaps the logo. */
body.home-page .site-header .primary-nav > .nav-group:first-child .dropdown {
  left: 18px !important;
  min-width: 330px !important;
  width: max-content !important;
  max-width: min(410px, calc(100vw - 32px)) !important;
}

/* Language submenu remains compact and aligns to the right edge. */
body.home-page .site-header .language-menu .dropdown {
  left: auto !important;
  right: 0 !important;
  min-width: max-content !important;
}

/* Divider follows the true navigation width only. */
body.home-page .site-header .primary-nav::after {
  left: 0 !important;
  right: 0 !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .primary-nav {
    gap: 14px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    column-gap: 25px !important;
  }

  body.home-page .site-header .primary-nav .dropdown {
    padding: 9px 10px !important;
  }

  body.home-page .site-header .primary-nav .dropdown a {
    padding: 9px 10px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .primary-nav {
    gap: 10px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    column-gap: 18px !important;
  }
}


/* ================================================================
   v7.18 — balanced logo, spacious tabs, clean active state
   ================================================================ */

body.home-page .site-header .nav-shell--split-band {
  width: calc(100% - 20px) !important;
  max-width: none !important;
  margin-inline: 10px !important;
  grid-template-columns: auto max-content auto !important;
  justify-content: space-between !important;
  column-gap: 30px !important;
}

body.home-page .site-header .official-brand-lockup {
  height: 121px !important;
  min-height: 121px !important;
  transform: translate(-4px, -8px) !important;
}

body.home-page .site-header .official-brand-lockup img {
  max-width: 438px !important;
  max-height: 121px !important;
}

body.home-page .site-header .primary-nav {
  gap: 25px !important;
  width: max-content !important;
}

body.home-page .site-header .primary-nav > .nav-group > a,
body.home-page .site-header .primary-nav > li > a,
body.home-page .site-header .language-trigger {
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  gap: 4px !important;
}

body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

body.home-page .site-header .primary-nav a::before,
body.home-page .site-header .primary-nav a::after,
body.home-page .site-header .language-trigger::before,
body.home-page .site-header .language-trigger::after {
  display: none !important;
  content: none !important;
}

body.home-page .site-header .primary-nav a:hover,
body.home-page .site-header .primary-nav a:focus-visible,
body.home-page .site-header .primary-nav a[aria-current="page"],
body.home-page .site-header .primary-nav .is-active > a,
body.home-page .site-header .primary-nav .active > a,
body.home-page .site-header .language-trigger:hover,
body.home-page .site-header .language-trigger:focus-visible {
  color: var(--color-gold, #EEC665) !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}

body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  margin-left: 6px !important;
}

body.home-page .site-header .primary-nav .dropdown {
  width: max-content !important;
  min-width: 0 !important;
  max-width: min(390px, calc(100vw - 32px)) !important;
  padding: 8px 10px !important;
  box-sizing: border-box !important;
}

body.home-page .site-header .primary-nav .dropdown a {
  width: max-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 9px 11px !important;
  white-space: nowrap !important;
}

body.home-page .site-header .primary-nav > .nav-group:first-child .dropdown {
  left: 14px !important;
  right: auto !important;
  width: max-content !important;
  min-width: 0 !important;
  max-width: min(370px, calc(100vw - 32px)) !important;
  transform: none !important;
}

body.home-page .site-header .language-menu .dropdown {
  left: auto !important;
  right: 0 !important;
  width: max-content !important;
  min-width: 0 !important;
}

body.home-page .site-header .primary-nav::after {
  left: 0 !important;
  right: 0 !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    width: calc(100% - 16px) !important;
    margin-inline: 8px !important;
    column-gap: 23px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 110px !important;
    min-height: 110px !important;
    transform: translate(-3px, -7px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 386px !important;
    max-height: 110px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 18px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    column-gap: 16px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 101px !important;
    min-height: 101px !important;
    transform: translate(-2px, -5px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 335px !important;
    max-height: 101px !important;
  }

  body.home-page .site-header .primary-nav {
    gap: 12px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    width: calc(100% - 16px) !important;
    margin-inline: 8px !important;
    grid-template-columns: minmax(280px, 72vw) auto !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: none !important;
  }
}


/* ================================================================
   v7.19 — full-width navigation balance
   The middle navigation column uses its available width so the menu
   reaches naturally toward the CTA without oversized empty space.
   ================================================================ */

body.home-page .site-header .nav-shell--split-band {
  width: calc(100% - 16px) !important;
  margin-inline: 8px !important;
  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto !important;
  column-gap: 22px !important;
}

/* Slightly smaller brand, anchored close to the left edge. */
body.home-page .site-header .official-brand-lockup {
  height: 114px !important;
  min-height: 114px !important;
  transform: translate(-5px, -8px) !important;
}

body.home-page .site-header .official-brand-lockup img {
  max-width: 412px !important;
  max-height: 114px !important;
}

/* Let the navigation occupy the complete flexible middle column. */
body.home-page .site-header .primary-nav {
  width: 100% !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  justify-content: space-between !important;
  gap: 0 !important;
}

/* Each tab remains intrinsically sized; free width is distributed
   between tab groups rather than collected after the language menu. */
body.home-page .site-header .primary-nav > .nav-group,
body.home-page .site-header .primary-nav > li,
body.home-page .site-header .language-menu {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
}

body.home-page .site-header .primary-nav > .nav-group > a,
body.home-page .site-header .primary-nav > li > a,
body.home-page .site-header .language-trigger {
  width: auto !important;
  min-width: 0 !important;
  padding-inline: 0 !important;
  white-space: nowrap !important;
}

/* Keep a modest deliberate gap before the independent CTA. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  margin-left: 0 !important;
  justify-self: end !important;
}

/* The gold divider follows the entire distributed navigation width,
   ending beneath the language control and never beneath the CTA. */
body.home-page .site-header .primary-nav::after {
  left: 0 !important;
  right: 0 !important;
}

/* Dropdowns remain attached to the intrinsic tab positions. */
body.home-page .site-header .primary-nav .dropdown {
  left: 0 !important;
  right: auto !important;
}

body.home-page .site-header .primary-nav > .nav-group:first-child .dropdown {
  left: 10px !important;
}

body.home-page .site-header .language-menu .dropdown {
  left: auto !important;
  right: 0 !important;
}

/* Medium desktop and laptop views retain distribution while avoiding
   excessive separation between shorter labels. */
@media (max-width: 1510px) {
  body.home-page .site-header .nav-shell--split-band {
    width: calc(100% - 12px) !important;
    margin-inline: 6px !important;
    column-gap: 16px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 105px !important;
    min-height: 105px !important;
    transform: translate(-4px, -7px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 370px !important;
    max-height: 105px !important;
  }

  body.home-page .site-header .primary-nav {
    column-gap: 13px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .nav-shell--split-band {
    column-gap: 11px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    height: 98px !important;
    min-height: 98px !important;
    transform: translate(-3px, -5px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 325px !important;
    max-height: 98px !important;
  }

  body.home-page .site-header .primary-nav {
    justify-content: space-between !important;
    column-gap: 8px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .nav-shell--split-band {
    width: calc(100% - 16px) !important;
    margin-inline: 8px !important;
    grid-template-columns: minmax(280px, 72vw) auto !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: none !important;
  }
}


/* ================================================================
   v7.20 — refined CTA and gold triangle indicators
   ================================================================ */

/* Slightly smaller CTA, lowered to align more naturally with the logo. */
body.home-page .site-header .header-cta,
body.home-page .site-header .nav-cta,
body.home-page .site-header .nav-discuss-cta {
  min-height: 50px !important;
  padding-inline: 1.05rem !important;
  font-size: 0.86rem !important;
  transform: translateY(6px) !important;
}

/* Use consistent small gold triangles for all dropdown triggers. */
body.home-page .site-header .primary-nav .nav-group > a,
body.home-page .site-header .primary-nav .language-trigger {
  position: relative !important;
}

body.home-page .site-header .primary-nav .nav-group > a .chevron,
body.home-page .site-header .primary-nav .nav-group > a .caret,
body.home-page .site-header .primary-nav .language-trigger .chevron,
body.home-page .site-header .primary-nav .language-trigger .caret {
  display: none !important;
}

/* Fallback triangle indicator when existing markup has no dedicated icon. */
body.home-page .site-header .primary-nav .nav-group > a::after,
body.home-page .site-header .primary-nav .language-trigger::after {
  content: "▼" !important;
  display: inline-block !important;
  margin-left: 4px !important;
  color: var(--color-gold, #EEC665) !important;
  font-size: 0.58em !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

/* Prevent double indicators on links that do not open a menu. */
body.home-page .site-header .primary-nav > li:not(.nav-group) > a::after {
  content: none !important;
  display: none !important;
}

/* Ensure the dropdown pointer triangle remains visible. */
body.home-page .site-header .primary-nav .dropdown::before {
  content: "" !important;
  position: absolute !important;
  top: -7px !important;
  left: 24px !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 7px solid transparent !important;
  border-right: 7px solid transparent !important;
  border-bottom: 7px solid var(--color-gold, #EEC665) !important;
  pointer-events: none !important;
}

/* Language menu pointer aligns to its trigger. */
body.home-page .site-header .language-menu .dropdown::before {
  left: auto !important;
  right: 20px !important;
}

/* Laptop sizing. */
@media (max-width: 1510px) {
  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 46px !important;
    padding-inline: 0.9rem !important;
    font-size: 0.8rem !important;
    transform: translateY(5px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    min-height: 43px !important;
    padding-inline: 0.72rem !important;
    font-size: 0.74rem !important;
    transform: translateY(4px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .header-cta,
  body.home-page .site-header .nav-cta,
  body.home-page .site-header .nav-discuss-cta {
    transform: none !important;
  }
}


/* ================================================================
   v7.21 — remove accidental tab bars and correctly refine CTA
   ================================================================ */

/* Remove every trigger-level decorative bar/pseudo-element.
   The single navigation divider remains on .primary-nav::after. */
body.home-page .site-header .primary-nav .nav-group > a::before,
body.home-page .site-header .primary-nav .nav-group > a::after,
body.home-page .site-header .language-trigger::before,
body.home-page .site-header .language-trigger::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}

/* Use the indicator spans already present in the HTML.
   No injected pseudo-elements, so no accidental lines. */
body.home-page .site-header .primary-nav .nav-group > a > span,
body.home-page .site-header .language-trigger .menu-chevron {
  display: inline-block !important;
  margin-left: 4px !important;
  color: var(--color-gold, #EEC665) !important;
  font-size: 0 !important;
  line-height: 1 !important;
  width: 8px !important;
  height: 6px !important;
  position: relative !important;
  transform: translateY(1px) !important;
}

body.home-page .site-header .primary-nav .nav-group > a > span::after,
body.home-page .site-header .language-trigger .menu-chevron::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 4px solid transparent !important;
  border-right: 4px solid transparent !important;
  border-top: 5px solid var(--color-gold, #EEC665) !important;
}

/* Target the actual CTA class used in the HTML. */
body.home-page .site-header .conversation-link {
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  height: 46px !important;
  padding: 0 18px !important;
  font-size: 0.82rem !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transform: translateY(8px) !important;
  white-space: nowrap !important;
}

/* Move the logo slightly farther toward the left edge. */
body.home-page .site-header .official-brand-lockup {
  transform: translate(-11px, -8px) !important;
}

/* Preserve the dropdown panel pointer only. */
body.home-page .site-header .primary-nav .dropdown::before {
  display: block !important;
}

/* Laptop refinements. */
@media (max-width: 1510px) {
  body.home-page .site-header .conversation-link {
    min-height: 43px !important;
    height: 43px !important;
    padding-inline: 15px !important;
    font-size: 0.77rem !important;
    transform: translateY(7px) !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: translate(-9px, -7px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .conversation-link {
    min-height: 40px !important;
    height: 40px !important;
    padding-inline: 12px !important;
    font-size: 0.71rem !important;
    transform: translateY(5px) !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: translate(-7px, -5px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .conversation-link,
  body.home-page .site-header .official-brand-lockup {
    transform: none !important;
  }
}


/* ================================================================
   v7.22 — lighter natural hero and final header balance
   ================================================================ */

/* Slightly reduce the brand while preserving its proportions and
   left-edge placement. */
body.home-page .site-header .official-brand-lockup {
  height: 106px !important;
  min-height: 106px !important;
  transform: translate(-11px, -8px) !important;
}

body.home-page .site-header .official-brand-lockup img {
  max-width: 382px !important;
  max-height: 106px !important;
}

/* Lower the actual CTA farther so its center balances with the logo. */
body.home-page .site-header .conversation-link {
  min-height: 43px !important;
  height: 43px !important;
  padding-inline: 16px !important;
  font-size: 0.79rem !important;
  transform: translateY(13px) !important;
}

/* Restore the natural image in the first homepage section.
   Remove opaque section fills and keep only a very light readability veil. */
body.home-page .hero,
body.home-page .home-hero,
body.home-page .hero-section,
body.home-page .homepage-hero,
body.home-page #hero,
body.home-page .decision-hero,
body.home-page .journey-hero {
  background-color: transparent !important;
  background: transparent !important;
}

/* Neutralize common dark overlay layers in the hero only. */
body.home-page .hero::before,
body.home-page .hero::after,
body.home-page .home-hero::before,
body.home-page .home-hero::after,
body.home-page .hero-section::before,
body.home-page .hero-section::after,
body.home-page .homepage-hero::before,
body.home-page .homepage-hero::after,
body.home-page #hero::before,
body.home-page #hero::after,
body.home-page .decision-hero::before,
body.home-page .decision-hero::after,
body.home-page .journey-hero::before,
body.home-page .journey-hero::after {
  background: linear-gradient(
    180deg,
    rgba(5, 22, 47, 0.10) 0%,
    rgba(5, 22, 47, 0.04) 46%,
    rgba(5, 22, 47, 0.10) 100%
  ) !important;
  opacity: 1 !important;
}

/* The homepage content wrapper must not paint an opaque navy block
   over the fixed mountain artwork. */
body.home-page main,
body.home-page .site-main,
body.home-page .homepage-main,
body.home-page .hero-content,
body.home-page .hero-inner,
body.home-page .hero-shell {
  background-color: transparent !important;
}

/* Preserve readable cards while leaving the surrounding first section clear. */
body.home-page .journey-card,
body.home-page .path-card,
body.home-page .decision-card {
  background-color: rgba(5, 25, 52, 0.90) !important;
}

/* Laptop refinements. */
@media (max-width: 1510px) {
  body.home-page .site-header .official-brand-lockup {
    height: 99px !important;
    min-height: 99px !important;
    transform: translate(-9px, -7px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 350px !important;
    max-height: 99px !important;
  }

  body.home-page .site-header .conversation-link {
    min-height: 41px !important;
    height: 41px !important;
    padding-inline: 14px !important;
    font-size: 0.75rem !important;
    transform: translateY(11px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .official-brand-lockup {
    height: 94px !important;
    min-height: 94px !important;
    transform: translate(-7px, -5px) !important;
  }

  body.home-page .site-header .official-brand-lockup img {
    max-width: 315px !important;
    max-height: 94px !important;
  }

  body.home-page .site-header .conversation-link {
    min-height: 39px !important;
    height: 39px !important;
    padding-inline: 11px !important;
    font-size: 0.70rem !important;
    transform: translateY(9px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .official-brand-lockup,
  body.home-page .site-header .conversation-link {
    transform: none !important;
  }
}


/* ================================================================
   v7.23 — single language triangle and CTA baseline alignment
   ================================================================ */

/* The language trigger currently contains both its original indicator and
   the custom v7.21 triangle. Keep exactly one small gold triangle. */
body.home-page .site-header .language-trigger > .menu-chevron,
body.home-page .site-header .language-trigger > .chevron,
body.home-page .site-header .language-trigger > .caret,
body.home-page .site-header .language-trigger > [aria-hidden="true"] {
  display: none !important;
}

/* Remove any inherited or generated language-trigger indicators. */
body.home-page .site-header .language-trigger::before,
body.home-page .site-header .language-trigger::after {
  content: none !important;
  display: none !important;
}

/* Draw one—and only one—triangle on the language menu container. */
body.home-page .site-header .language-menu {
  position: relative !important;
  padding-right: 13px !important;
}

body.home-page .site-header .language-menu::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 4px solid transparent !important;
  border-right: 4px solid transparent !important;
  border-top: 5px solid var(--color-gold, #EEC665) !important;
  transform: translateY(-30%) !important;
  pointer-events: none !important;
}

/* Lower the real CTA so its text baseline visually meets the gold
   navigation divider rather than floating above it. */
body.home-page .site-header .conversation-link {
  min-height: 43px !important;
  height: 43px !important;
  padding: 0 16px !important;
  font-size: 0.79rem !important;
  line-height: 1 !important;
  transform: translateY(21px) !important;
}

/* Keep the button vertically contained in the header after lowering. */
body.home-page .site-header .nav-shell--split-band {
  overflow: visible !important;
}

/* Laptop adaptations. */
@media (max-width: 1510px) {
  body.home-page .site-header .conversation-link {
    min-height: 41px !important;
    height: 41px !important;
    padding-inline: 14px !important;
    font-size: 0.75rem !important;
    transform: translateY(18px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .conversation-link {
    min-height: 39px !important;
    height: 39px !important;
    padding-inline: 11px !important;
    font-size: 0.70rem !important;
    transform: translateY(15px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .conversation-link {
    transform: none !important;
  }

  body.home-page .site-header .language-menu {
    padding-right: 0 !important;
  }

  body.home-page .site-header .language-menu::after {
    display: none !important;
  }
}


/* ================================================================
   v7.24 — definitive language indicator and CTA line alignment
   ================================================================ */

/* Remove every generated language-menu indicator from prior versions.
   The existing markup supplies the one retained triangle. */
body.home-page .site-header .language-menu::before,
body.home-page .site-header .language-menu::after,
body.home-page .site-header .language-trigger::before,
body.home-page .site-header .language-trigger::after {
  content: none !important;
  display: none !important;
}

/* Hide all possible language arrows first. */
body.home-page .site-header .language-trigger .menu-chevron,
body.home-page .site-header .language-trigger .chevron,
body.home-page .site-header .language-trigger .caret,
body.home-page .site-header .language-trigger [aria-hidden="true"] {
  display: none !important;
}

/* Then display only the first existing indicator as one small gold triangle. */
body.home-page .site-header .language-trigger .menu-chevron:first-of-type,
body.home-page .site-header .language-trigger .chevron:first-of-type,
body.home-page .site-header .language-trigger .caret:first-of-type {
  display: inline-block !important;
  width: 0 !important;
  height: 0 !important;
  margin-left: 5px !important;
  border-left: 4px solid transparent !important;
  border-right: 4px solid transparent !important;
  border-top: 5px solid var(--color-gold, #EEC665) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  vertical-align: middle !important;
  transform: translateY(1px) !important;
}

/* Remove pseudo-content from the retained indicator itself. */
body.home-page .site-header .language-trigger .menu-chevron:first-of-type::before,
body.home-page .site-header .language-trigger .menu-chevron:first-of-type::after,
body.home-page .site-header .language-trigger .chevron:first-of-type::before,
body.home-page .site-header .language-trigger .chevron:first-of-type::after,
body.home-page .site-header .language-trigger .caret:first-of-type::before,
body.home-page .site-header .language-trigger .caret:first-of-type::after {
  content: none !important;
  display: none !important;
}

/* Lower the actual CTA substantially: the top of its first letter now
   visually meets the navigation divider line. */
body.home-page .site-header .conversation-link {
  min-height: 43px !important;
  height: 43px !important;
  padding: 0 16px !important;
  font-size: 0.79rem !important;
  line-height: 1 !important;
  transform: translateY(34px) !important;
}

/* Ensure lowered CTA remains visible inside the header. */
body.home-page .site-header,
body.home-page .site-header .nav-shell--split-band {
  overflow: visible !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .conversation-link {
    min-height: 41px !important;
    height: 41px !important;
    padding-inline: 14px !important;
    font-size: 0.75rem !important;
    transform: translateY(29px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .conversation-link {
    min-height: 39px !important;
    height: 39px !important;
    padding-inline: 11px !important;
    font-size: 0.70rem !important;
    transform: translateY(24px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .conversation-link {
    transform: none !important;
  }
}


/* ================================================================
   v7.25 — slightly larger navigation text and lower CTA
   ================================================================ */

/* Increase only the main header tab labels and language control. */
body.home-page .site-header .primary-nav > .nav-group > a,
body.home-page .site-header .primary-nav > li > a,
body.home-page .site-header .language-trigger {
  font-size: 1rem !important;
  line-height: 1.15 !important;
}

/* Lower the CTA a little farther while preserving its current size. */
body.home-page .site-header .conversation-link {
  transform: translateY(40px) !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header .primary-nav > .nav-group > a,
  body.home-page .site-header .primary-nav > li > a,
  body.home-page .site-header .language-trigger {
    font-size: 0.86rem !important;
  }

  body.home-page .site-header .conversation-link {
    transform: translateY(34px) !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header .primary-nav > .nav-group > a,
  body.home-page .site-header .primary-nav > li > a,
  body.home-page .site-header .language-trigger {
    font-size: 0.78rem !important;
  }

  body.home-page .site-header .conversation-link {
    transform: translateY(28px) !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .conversation-link {
    transform: none !important;
  }
}


/* ================================================================
   v7.26 — compact header depth
   Reduce only the empty area beneath the navigation divider.
   ================================================================ */

body.home-page .site-header {
  min-height: 166px !important;
  height: 166px !important;
  padding-bottom: 0 !important;
}

body.home-page .site-header .nav-shell--split-band {
  min-height: 166px !important;
  height: 166px !important;
  grid-template-rows: 106px 60px !important;
  padding-bottom: 0 !important;
}

body.home-page .site-header + main,
body.home-page .site-header + .site-main,
body.home-page .site-header + .homepage-main,
body.home-page .site-header + .hero,
body.home-page .site-header + .home-hero,
body.home-page .site-header + .hero-section {
  margin-top: 0 !important;
}

@media (max-width: 1510px) {
  body.home-page .site-header {
    min-height: 150px !important;
    height: 150px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    min-height: 150px !important;
    height: 150px !important;
    grid-template-rows: 96px 54px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header {
    min-height: 138px !important;
    height: 138px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    min-height: 138px !important;
    height: 138px !important;
    grid-template-rows: 90px 48px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header,
  body.home-page .site-header .nav-shell--split-band {
    height: auto !important;
    min-height: 96px !important;
  }
}


/* ================================================================
   v7.27 — continuous image header experiment
   Remove the divider and blend the header into the mountain sky.
   ================================================================ */

/* Let the fixed homepage artwork show through the header. */
body.home-page .site-header {
  position: relative !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  isolation: isolate !important;
}

/* Subtle readability veil only—sky remains clearly visible. */
body.home-page .site-header::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(
      180deg,
      rgba(4, 20, 43, 0.64) 0%,
      rgba(4, 20, 43, 0.48) 58%,
      rgba(4, 20, 43, 0.22) 100%
    ) !important;
}

/* Keep header content above the veil. */
body.home-page .site-header .nav-shell--split-band {
  position: relative !important;
  z-index: 1 !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Remove the navigation divider completely. */
body.home-page .site-header .primary-nav::after,
body.home-page .site-header .nav-shell--split-band::after {
  content: none !important;
  display: none !important;
  background: none !important;
  border: 0 !important;
  height: 0 !important;
}

/* Remove any residual bottom rule or border from header descendants. */
body.home-page .site-header,
body.home-page .site-header .nav-shell--split-band,
body.home-page .site-header .primary-nav {
  border-bottom: 0 !important;
}

/* Bring the hero directly into the transparent header composition. */
body.home-page .site-header + main,
body.home-page .site-header + .site-main,
body.home-page .site-header + .homepage-main,
body.home-page .site-header + .hero,
body.home-page .site-header + .home-hero,
body.home-page .site-header + .hero-section {
  margin-top: 0 !important;
  border-top: 0 !important;
}

/* Slight text support where the sky is brightest. */
body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  text-shadow: 0 1px 5px rgba(0, 10, 24, 0.55) !important;
}

body.home-page .site-header .conversation-link {
  background: rgba(4, 20, 43, 0.30) !important;
  backdrop-filter: blur(2px) !important;
  -webkit-backdrop-filter: blur(2px) !important;
}

/* Keep dropdown panels fully opaque and readable. */
body.home-page .site-header .dropdown {
  text-shadow: none !important;
}

@media (max-width: 1080px) {
  /* Mobile navigation retains a stronger veil for legibility. */
  body.home-page .site-header::before {
    background: rgba(4, 20, 43, 0.88) !important;
  }
}


/* ================================================================
   v7.28 — top-fitted fully transparent header
   ================================================================ */

/* Make the header genuinely transparent: no veil, tint, fill or blur. */
body.home-page .site-header,
body.home-page .site-header .nav-shell--split-band {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.home-page .site-header::before,
body.home-page .site-header::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Reduce header depth so it tightly fits the brand/navigation row. */
body.home-page .site-header {
  min-height: 126px !important;
  height: 126px !important;
  padding: 0 !important;
}

body.home-page .site-header .nav-shell--split-band {
  min-height: 126px !important;
  height: 126px !important;
  grid-template-rows: 78px 48px !important;
  padding: 0 !important;
  align-items: start !important;
}

/* Move every header component toward the top edge while preserving
   the established horizontal layout. */
body.home-page .site-header .official-brand-lockup {
  align-self: start !important;
  transform: translate(-11px, -15px) !important;
}

body.home-page .site-header .primary-nav {
  align-self: start !important;
  padding-top: 22px !important;
  padding-bottom: 0 !important;
  transform: none !important;
}

body.home-page .site-header .conversation-link {
  align-self: start !important;
  margin-top: 18px !important;
  transform: none !important;
}

/* Keep header text readable naturally without a tinted panel. */
body.home-page .site-header .primary-nav a,
body.home-page .site-header .language-trigger {
  text-shadow: 0 1px 4px rgba(0, 12, 28, 0.72) !important;
}

body.home-page .site-header .conversation-link {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Ensure the hero begins immediately after the tightly fitted header. */
body.home-page .site-header + main,
body.home-page .site-header + .site-main,
body.home-page .site-header + .homepage-main,
body.home-page .site-header + .hero,
body.home-page .site-header + .home-hero,
body.home-page .site-header + .hero-section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Laptop scaling. */
@media (max-width: 1510px) {
  body.home-page .site-header,
  body.home-page .site-header .nav-shell--split-band {
    min-height: 116px !important;
    height: 116px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    grid-template-rows: 72px 44px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: translate(-9px, -13px) !important;
  }

  body.home-page .site-header .primary-nav {
    padding-top: 19px !important;
  }

  body.home-page .site-header .conversation-link {
    margin-top: 15px !important;
  }
}

@media (max-width: 1240px) {
  body.home-page .site-header,
  body.home-page .site-header .nav-shell--split-band {
    min-height: 108px !important;
    height: 108px !important;
  }

  body.home-page .site-header .nav-shell--split-band {
    grid-template-rows: 68px 40px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: translate(-7px, -10px) !important;
  }

  body.home-page .site-header .primary-nav {
    padding-top: 17px !important;
  }

  body.home-page .site-header .conversation-link {
    margin-top: 13px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header,
  body.home-page .site-header .nav-shell--split-band {
    height: auto !important;
    min-height: 96px !important;
  }

  body.home-page .site-header .official-brand-lockup {
    transform: none !important;
  }

  body.home-page .site-header .primary-nav {
    padding-top: 0 !important;
  }

  body.home-page .site-header .conversation-link {
    margin-top: 0 !important;
  }

  /* Mobile retains a dark background for menu readability. */
  body.home-page .site-header {
    background: rgba(4, 20, 43, 0.94) !important;
  }
}


/* v7.29 — 50% zoom readability and compact centered decision cards */
body.homepage-nature-journey .executive-hero-kicker{
  font-size:clamp(1rem,1.15vw,1.3rem)!important;
  text-shadow:0 2px 8px rgba(0,0,0,.7)!important;
}
body.homepage-nature-journey .executive-hero-copy>p{
  font-size:clamp(1rem,1.2vw,1.32rem)!important;
  font-weight:650!important;
  text-shadow:0 2px 8px rgba(0,0,0,.8)!important;
}
body.homepage-nature-journey .executive-decision-heading h2{
  font-size:clamp(1.08rem,1.35vw,1.45rem)!important;
  text-shadow:0 2px 8px rgba(0,0,0,.75)!important;
}
body.homepage-nature-journey .executive-decision-heading p{
  font-size:clamp(.92rem,1vw,1.08rem)!important;
  color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;
  text-shadow:0 2px 7px rgba(0,0,0,.8)!important;
}
body.homepage-nature-journey .executive-decision-panel{
  width:min(1320px,calc(100% - 48px))!important;
  margin-inline:auto!important;
}
body.homepage-nature-journey .executive-decision-grid{
  width:100%!important;
  margin-inline:auto!important;
  justify-content:center!important;
  gap:clamp(12px,1.1vw,18px)!important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card{
  min-height:clamp(225px,18vw,285px)!important;
  padding:clamp(18px,1.45vw,24px) clamp(12px,1vw,18px) clamp(14px,1vw,18px)!important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card-icon{
  width:clamp(64px,5vw,88px)!important;
  height:clamp(64px,5vw,88px)!important;
  margin-bottom:clamp(12px,1.2vw,18px)!important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card strong{
  font-size:clamp(1rem,1.12vw,1.28rem)!important;
  line-height:1.22!important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card-rule{
  display:none!important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card-arrow{
  margin-top:auto!important;
  font-size:1.45rem!important;
}
body.homepage-nature-journey .executive-confidence-shell article{
  font-size:clamp(.82rem,.82vw,1rem)!important;
}


/* ================================================================
   v7.30 — supplied premium icons and refined homepage interactions
   ================================================================ */

/* Remove the final punctuation dash from the hero without changing layout. */
body.homepage-nature-journey .executive-hero-copy h1 em {
  display: inline-block !important;
}

/* Featured CTA: visible, premium, and still harmonious with the sky. */
body.home-page .site-header .conversation-link--featured {
  gap: 9px !important;
  padding-inline: 16px 18px !important;
  color: #fff7dc !important;
  background:
    linear-gradient(135deg, rgba(238, 198, 101, .95), rgba(238, 198, 101, .92)) !important;
  border: 1px solid rgba(238, 198, 101, .95) !important;
  box-shadow:
    0 8px 24px rgba(20,10,0,.28),
    0 0 18px rgba(238, 198, 101, .28),
    inset 0 1px 0 rgba(255,255,255,.32) !important;
  text-shadow: 0 1px 2px rgba(45,23,0,.55) !important;
  transition: transform .24s ease, box-shadow .24s ease, filter .24s ease !important;
}

body.home-page .site-header .conversation-link--featured img {
  width: 23px !important;
  height: 23px !important;
  object-fit: contain !important;
  border: 0 !important;
  background: transparent !important;
  mix-blend-mode: screen !important;
}

body.home-page .site-header .conversation-link--featured:hover,
body.home-page .site-header .conversation-link--featured:focus-visible {
  filter: brightness(1.08) saturate(1.06) !important;
  box-shadow:
    0 10px 30px rgba(20,10,0,.34),
    0 0 26px rgba(238, 198, 101, .45),
    inset 0 1px 0 rgba(255,255,255,.42) !important;
}

/* Supplied language icon. */
body.home-page .site-header .language-globe-image {
  width: 26px !important;
  height: 26px !important;
  object-fit: contain !important;
  border: 0 !important;
  background: transparent !important;
  mix-blend-mode: screen !important;
}

/* Blend decision icons directly into their cards; no framed icon tiles. */
body.homepage-nature-journey .executive-decision-grid .decision-card-icon,
body.homepage-nature-journey .executive-decision-grid .decision-card-icon-image {
  width: clamp(70px,5.4vw,96px) !important;
  height: clamp(70px,5.4vw,96px) !important;
  padding: 0 !important;
  margin-bottom: clamp(10px,1vw,16px) !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  mix-blend-mode: screen !important;
  filter: drop-shadow(0 4px 12px rgba(238, 198, 101, .18)) !important;
  transform-origin: 50% 60% !important;
  animation: viIconFloat 4.8s ease-in-out infinite !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card:nth-child(2) .decision-card-icon img {
  animation-delay: -.7s !important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card:nth-child(3) .decision-card-icon img {
  animation-delay: -1.4s !important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card:nth-child(4) .decision-card-icon img {
  animation-delay: -2.1s !important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card:nth-child(5) .decision-card-icon img {
  animation-delay: -2.8s !important;
}
body.homepage-nature-journey .executive-decision-grid .decision-card:nth-child(6) .decision-card-icon img {
  animation-delay: -3.5s !important;
}

/* Smaller viCOMPASSa icon in the final card. */
body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon {
  width: clamp(54px,4.3vw,72px) !important;
  height: clamp(54px,4.3vw,72px) !important;
  margin-top: 7px !important;
  margin-bottom: clamp(15px,1.3vw,20px) !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card:hover .decision-card-icon img,
body.homepage-nature-journey .executive-decision-grid .decision-card:focus-visible .decision-card-icon img {
  animation-play-state: paused !important;
  transform: translateY(-4px) scale(1.06) !important;
  filter: drop-shadow(0 7px 18px rgba(238, 198, 101, .40)) !important;
}

/* Supplied benefit icons—clean, frameless, and integrated. */
body.homepage-nature-journey .executive-confidence-shell .confidence-icon-image {
  width: clamp(42px,3.1vw,58px) !important;
  height: clamp(42px,3.1vw,58px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.homepage-nature-journey .executive-confidence-shell .confidence-icon-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  mix-blend-mode: screen !important;
  filter: drop-shadow(0 3px 8px rgba(238, 198, 101, .20)) !important;
  animation: viBenefitPulse 5.4s ease-in-out infinite !important;
}

/* Existing card rule stays removed; arrow remains. */
body.homepage-nature-journey .executive-decision-grid .decision-card-rule {
  display: none !important;
}

@keyframes viIconFloat {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-5px) rotate(.7deg); }
}

@keyframes viBenefitPulse {
  0%, 100% { transform: scale(1); opacity: .96; }
  50% { transform: scale(1.035); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  body.homepage-nature-journey .executive-decision-grid .decision-card-icon img,
  body.homepage-nature-journey .executive-confidence-shell .confidence-icon-image img {
    animation: none !important;
    transition: none !important;
  }
}


/* ================================================================
   v7.31 — transparent decision icons and stronger primary CTA
   ================================================================ */

/* Make the main CTA unmistakably primary. */
body.home-page .site-header .conversation-link--featured,
body.home-page .site-header .conversation-link--featured span {
  font-weight: 800 !important;
  letter-spacing: .15px !important;
}

/* The icon PNGs now have true alpha transparency. Display them cleanly,
   without blend modes that can muddy their gold highlights. */
body.homepage-nature-journey .executive-decision-grid .decision-card-icon img {
  mix-blend-mode: normal !important;
  background: transparent !important;
  width: 112% !important;
  height: 112% !important;
  max-width: none !important;
  max-height: none !important;
}

/* Preserve the smaller scale of the final viCOMPASSa method icon. */
body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon img {
  width: 100% !important;
  height: 100% !important;
}

/* Let the icons breathe without any residual tile effect. */
body.homepage-nature-journey .executive-decision-grid .decision-card-icon {
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Soften card outlines at rest; return full gold emphasis on interaction. */
body.homepage-nature-journey .executive-decision-grid .decision-card {
  border-color: rgba(238, 198, 101, .70) !important;
  transition:
    transform .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    background-color .24s ease !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card:hover,
body.homepage-nature-journey .executive-decision-grid .decision-card:focus-visible {
  border-color: rgba(238, 198, 101, 1) !important;
  box-shadow:
    0 14px 34px rgba(0,10,28,.32),
    0 0 20px rgba(238, 198, 101, .20) !important;
}


/* ================================================================
   v7.32 — logo clearance, readable menus, transparent benefit icons,
           and balanced decision-card icon alignment
   ================================================================ */

/* Give the brand star enough top clearance. Do not clip the lockup. */
body.home-page .site-header,
body.home-page .site-header .nav-shell--split-band,
body.home-page .site-header .official-brand-lockup,
body.home-page .site-header .official-brand-lockup a {
  overflow: visible !important;
}

body.home-page .site-header .official-brand-lockup {
  transform: translate(-11px, -7px) !important;
  padding-top: 7px !important;
}

body.home-page .site-header .official-brand-lockup img {
  object-fit: contain !important;
  object-position: left top !important;
  overflow: visible !important;
}

/* Dropdowns: no pale highlight tile, no washed-out selected text.
   Hover/current state is simple gold text on a clean white panel. */
body.home-page .site-header .primary-nav .dropdown a,
body.home-page .site-header .primary-nav .dropdown a:visited {
  color: #101827 !important;
  -webkit-text-fill-color: #101827 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
  border-radius: 6px !important;
  opacity: 1 !important;
}

body.home-page .site-header .primary-nav .dropdown a:hover,
body.home-page .site-header .primary-nav .dropdown a:focus-visible,
body.home-page .site-header .primary-nav .dropdown a[aria-current="page"],
body.home-page .site-header .primary-nav .dropdown .active > a,
body.home-page .site-header .primary-nav .dropdown .is-active > a {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-weight: 700 !important;
  outline: none !important;
}

/* Remove any decorative selected-state pseudo layers. */
body.home-page .site-header .primary-nav .dropdown a::before,
body.home-page .site-header .primary-nav .dropdown a::after {
  content: none !important;
  display: none !important;
}

/* Benefit icons now have true transparency—show them without blend tricks. */
body.homepage-nature-journey .executive-confidence-shell .confidence-icon-image,
body.homepage-nature-journey .executive-confidence-shell .confidence-icon-image img {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  mix-blend-mode: normal !important;
}

/* Normalize the decision-card icon zone so every icon is centered,
   visually balanced, and aligned to the same baseline. */
body.homepage-nature-journey .executive-decision-grid .decision-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card-icon {
  flex: 0 0 102px !important;
  width: 102px !important;
  height: 102px !important;
  margin: 0 auto 14px !important;
  display: grid !important;
  place-items: center !important;
  align-self: center !important;
  overflow: visible !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card-icon img {
  width: 92px !important;
  height: 92px !important;
  max-width: 92px !important;
  max-height: 92px !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  display: block !important;
}

/* The method icon remains intentionally smaller but shares the same
   centered icon zone and baseline. */
body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon {
  flex-basis: 102px !important;
  width: 102px !important;
  height: 102px !important;
  margin: 0 auto 14px !important;
}

body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon img {
  width: 68px !important;
  height: 68px !important;
  max-width: 68px !important;
  max-height: 68px !important;
}

/* Keep all card titles in the same visual zone. */
body.homepage-nature-journey .executive-decision-grid .decision-card strong {
  min-height: 3.7em !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Responsive normalization. */
@media (max-width: 1510px) {
  body.home-page .site-header .official-brand-lockup {
    transform: translate(-9px, -5px) !important;
    padding-top: 6px !important;
  }

  body.homepage-nature-journey .executive-decision-grid .decision-card-icon,
  body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon {
    flex-basis: 88px !important;
    width: 88px !important;
    height: 88px !important;
  }

  body.homepage-nature-journey .executive-decision-grid .decision-card-icon img {
    width: 80px !important;
    height: 80px !important;
    max-width: 80px !important;
    max-height: 80px !important;
  }

  body.homepage-nature-journey .executive-decision-grid .decision-card--method .decision-card-icon img {
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
  }
}

@media (max-width: 1080px) {
  body.home-page .site-header .official-brand-lockup {
    transform: none !important;
    padding-top: 0 !important;
  }
}


/* ================================================================
   v7.33 — unified site header/background and blue confidence bar
   ================================================================ */

/* Match the confidence/benefit strip to the decision-card blue instead
   of the near-black/bark appearance. */
body.homepage-nature-journey .executive-confidence-shell {
  background:
    linear-gradient(
      155deg,
      rgba(4,28,53,.94) 0%,
      rgba(5,36,67,.97) 52%,
      rgba(3,24,47,.98) 100%
    ) !important;
  border-color: rgba(238, 198, 101, .58) !important;
  box-shadow:
    0 18px 44px rgba(0,10,25,.22),
    inset 0 1px 0 rgba(255,255,255,.025) !important;
}

/* All principal pages now share the same fixed mountain-sky canvas. */
body.unified-site-theme {
  min-height: 100vh !important;
  background-color: #071b34 !important;
  background-image: url("../hero-landscape.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

/* The exact homepage transparent header treatment now applies site-wide. */
body.unified-site-theme .site-header,
body.unified-site-theme .site-header .nav-shell--split-band {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.unified-site-theme .site-header::before,
body.unified-site-theme .site-header::after {
  content: none !important;
  display: none !important;
}

/* Keep the internal-page opening hero transparent so the shared sky and
   landscape are immediately visible behind each page title. */
body.unified-site-theme .page-hero,
body.unified-site-theme .decision-nav-hero,
body.unified-site-theme .service-hero,
body.unified-site-theme .method-hero,
body.unified-site-theme .insights-hero,
body.unified-site-theme .article-hero,
body.unified-site-theme main > section:first-child {
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* A restrained readability gradient—no separate dark rectangle. */
body.unified-site-theme .page-hero::before,
body.unified-site-theme .decision-nav-hero::before,
body.unified-site-theme .service-hero::before,
body.unified-site-theme .method-hero::before,
body.unified-site-theme .insights-hero::before,
body.unified-site-theme .article-hero::before {
  background:
    linear-gradient(
      180deg,
      rgba(4,20,43,.10) 0%,
      rgba(4,20,43,.22) 100%
    ) !important;
}

/* Prevent generic main wrappers from covering the shared image. */
body.unified-site-theme main,
body.unified-site-theme .site-main {
  background: transparent !important;
}

/* Preserve readable content surfaces below the opening hero. */
body.unified-site-theme main > section:not(:first-child) {
  position: relative;
}

/* Internal-page headings gain the same subtle sky contrast used at home. */
body.unified-site-theme .page-hero h1,
body.unified-site-theme .page-hero h2,
body.unified-site-theme .page-hero p,
body.unified-site-theme .page-hero .eyebrow,
body.unified-site-theme .page-hero .kicker {
  text-shadow: 0 2px 9px rgba(0,10,28,.60) !important;
}

/* Do not reintroduce the old gold header divider on internal pages. */
body.unified-site-theme .site-header,
body.unified-site-theme .site-header .primary-nav,
body.unified-site-theme .site-header .nav-shell--split-band {
  border-bottom: 0 !important;
}

body.unified-site-theme .site-header .primary-nav::after,
body.unified-site-theme .site-header .nav-shell--split-band::after {
  content: none !important;
  display: none !important;
}

/* Smaller screens use a solid navigation surface for accessibility. */
@media (max-width: 1080px) {
  body.unified-site-theme {
    background-attachment: scroll !important;
    background-position: center top !important;
  }

  body.unified-site-theme .site-header {
    background: rgba(4,20,43,.95) !important;
  }
}

/* ================================================================
   v7.40 — continuous landscape readability system
   One restrained page veil; no white plates and no solid section boxes.
   ================================================================ */

/* Internal pages use the same landscape, gently darkened as one continuous
   composition. The homepage is excluded and remains exactly as designed. */
body.homepage-nature-journey:not(:has(.home-hero)) {
  background-image:
    linear-gradient(180deg, rgba(3, 17, 34, .40), rgba(3, 18, 38, .56)),
    url("../hero-landscape.png") !important;
  background-color: #071b34 !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

/* Eliminate full-width white veils, navy plates and pseudo-element bands. */
body.homepage-nature-journey:not(:has(.home-hero)) main,
body.homepage-nature-journey:not(:has(.home-hero)) main > section,
body.homepage-nature-journey:not(:has(.home-hero)) main > section::before,
body.homepage-nature-journey:not(:has(.home-hero)) main > section::after {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) main > section::before,
body.homepage-nature-journey:not(:has(.home-hero)) main > section::after {
  content: none !important;
  display: none !important;
}

/* Clear, calm typography over the continuously darkened landscape. */
body.homepage-nature-journey:not(:has(.home-hero)) main :is(h1,h2,h3,h4,h5,h6,p,li,dd,dt,figcaption,blockquote,strong) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  text-shadow: 0 2px 12px rgba(0, 8, 20, .30) !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) main :is(.eyebrow,.kicker,.section-label,[class*="number"]) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-shadow: 0 2px 10px rgba(0, 8, 20, .26) !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) main a:not(.btn):not(.conversation-link) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* Existing cards remain separate, but become lightly tinted panes rather than
   white cards or hard navy boxes. Their dimensions and placement are untouched. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .card,
  .content-card,
  .white-card,
  .light-card,
  .white-panel,
  .light-panel,
  .question-card,
  .comparison-card,
  .decision-question-card,
  .decision-factor-card,
  .executive-situation,
  .value-card,
  .principle-card,
  .method-card,
  .insight-card,
  .article-card,
  .phase-card,
  .capability-card,
  .governance-card,
  .framework-card,
  .contact-card
) {
  background: rgba(4, 24, 47, .34) !important;
  border-color: rgba(238, 198, 101, .58) !important;
  color: #fffdf7 !important;
  box-shadow: 0 8px 24px rgba(0, 8, 20, .12) !important;
  backdrop-filter: blur(3px) saturate(104%) !important;
  -webkit-backdrop-filter: blur(3px) saturate(104%) !important;
}

/* Large narrative containers should not become giant boxes. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .compass-protected-panel,
  .executive-quote,
  .decision-next,
  .decision-insight-inline,
  .decision-takeaway,
  .situation-hook,
  .cta-box
) {
  background: rgba(4, 24, 47, .18) !important;
  border-color: rgba(238, 198, 101, .38) !important;
  box-shadow: none !important;
  backdrop-filter: blur(2px) !important;
  -webkit-backdrop-filter: blur(2px) !important;
}

/* Prevent inherited light-card text colours from defeating contrast. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .card,.content-card,.white-card,.light-card,.white-panel,.light-panel,
  .question-card,.comparison-card,.decision-question-card,.decision-factor-card,
  .executive-situation,.value-card,.principle-card,.method-card,.insight-card,
  .article-card,.phase-card,.capability-card,.governance-card,.framework-card,
  .contact-card,.compass-protected-panel,.executive-quote,.decision-next,
  .decision-insight-inline,.decision-takeaway,.situation-hook,.cta-box
) :is(h1,h2,h3,h4,h5,h6,p,li,dd,dt,figcaption,blockquote,strong,span) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .card,.content-card,.white-card,.light-card,.white-panel,.light-panel,
  .question-card,.comparison-card,.decision-question-card,.decision-factor-card,
  .executive-situation,.value-card,.principle-card,.method-card,.insight-card,
  .article-card,.phase-card,.capability-card,.governance-card,.framework-card,
  .contact-card,.compass-protected-panel,.executive-quote,.decision-next,
  .decision-insight-inline,.decision-takeaway,.situation-hook,.cta-box
) :is(a,.eyebrow,.kicker,.section-label,[class*="number"],[class*="link"]) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* All repeated decision CTAs now use the same visual language as the header. */
body .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  padding: 11px 18px !important;
  color: #fff7dc !important;
  -webkit-text-fill-color: #fff7dc !important;
  background: linear-gradient(135deg, rgba(238, 198, 101, .95), rgba(238, 198, 101, .92)) !important;
  border: 1px solid rgba(238, 198, 101, .95) !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 24px rgba(20,10,0,.24), 0 0 18px rgba(238, 198, 101, .20), inset 0 1px 0 rgba(255,255,255,.30) !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 2px rgba(45,23,0,.50) !important;
}

body .conversation-link--featured img {
  width: 23px !important;
  height: 23px !important;
  object-fit: contain !important;
  border: 0 !important;
  background: transparent !important;
}

@media (max-width: 900px), (hover: none) {
  body.homepage-nature-journey:not(:has(.home-hero)) {
    background-attachment: scroll !important;
  }
}

/* ================================================================
   v7.41 — landscape compatibility corrections
   Preserve the design and v7.40 image veil. Only convert legacy light
   surfaces that became unreadable after the site moved from white pages
   to the shared landscape background.
   ================================================================ */

/* Legacy white cards: retain their exact geometry, spacing and layout,
   but use the same restrained translucent navy surface as the homepage. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .principle,
  .offer,
  .capital,
  .insight,
  .journey-panel,
  .compass-principle-card,
  .compass-phase-card,
  .lifecycle-column,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .decision-question-card,
  .decision-factor-card,
  .executive-situation
) {
  background: linear-gradient(145deg, rgba(5, 27, 52, .76), rgba(7, 31, 59, .62)) !important;
  border-color: rgba(238, 198, 101, .66) !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 34px rgba(0, 9, 23, .18) !important;
  backdrop-filter: blur(6px) saturate(108%) !important;
  -webkit-backdrop-filter: blur(6px) saturate(108%) !important;
}

/* Preserve existing gold top rules and rounded corners. */
body.homepage-nature-journey:not(:has(.home-hero)) .compass-principle-card {
  border-top-color: #EEC665 !important;
}

/* Text inside legacy light surfaces must no longer inherit navy/grey ink. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .principle,
  .offer,
  .capital,
  .insight,
  .journey-panel,
  .compass-principle-card,
  .compass-phase-card,
  .lifecycle-column,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .decision-question-card,
  .decision-factor-card,
  .executive-situation
) :is(h2,h3,h4,h5,h6,p,li,dd,dt,strong,span) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  text-shadow: none !important;
}

/* Numeric labels and intentional accents stay gold. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .compass-principle-card > span,
  .phase-number,
  .lifecycle-column > span,
  .premium-help-title,
  .eyebrow,
  .kicker,
  .section-label
) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* Pills remain light controls with dark text; they are content tokens rather
   than narrative text and should retain their original visual role. */
body.homepage-nature-journey:not(:has(.home-hero)) .pills span {
  background: rgba(255, 253, 247, .94) !important;
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
  text-shadow: none !important;
}

/* Repeated decision CTA: use the exact header component language. */
body .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  gap: 9px !important;
  padding: 12px 18px !important;
  border-radius: 4px !important;
  color: #fff7dc !important;
  -webkit-text-fill-color: #fff7dc !important;
  background: linear-gradient(135deg, rgba(238, 198, 101, .95), rgba(238, 198, 101, .92)) !important;
  border: 1px solid rgba(238, 198, 101, .95) !important;
  box-shadow: 0 8px 24px rgba(20,10,0,.28), 0 0 18px rgba(238, 198, 101, .28), inset 0 1px 0 rgba(255,255,255,.32) !important;
  font-size: clamp(.73rem,.25vw + .67rem,.9rem) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-shadow: 0 1px 2px rgba(45,23,0,.55) !important;
}

body .conversation-link--featured span {
  color: #fff7dc !important;
  -webkit-text-fill-color: #fff7dc !important;
  white-space: nowrap !important;
  text-shadow: 0 1px 2px rgba(45,23,0,.55) !important;
}

body .conversation-link--featured img {
  display: block !important;
  flex: 0 0 auto !important;
  width: 23px !important;
  height: 23px !important;
  object-fit: contain !important;
  mix-blend-mode: screen !important;
}

/* Local CTA placements may scale slightly, but keep the same component. */
body main .conversation-link--featured {
  padding: 10px 15px !important;
  font-size: clamp(.7rem,.2vw + .66rem,.84rem) !important;
}

body main .conversation-link--featured img {
  width: 20px !important;
  height: 20px !important;
}

@media (max-width: 760px) {
  body main .conversation-link--featured {
    white-space: normal !important;
    text-align: center !important;
  }
  body main .conversation-link--featured span {
    white-space: normal !important;
  }
}


/* ================================================================
   v7.42 — warm-neutral surface correction
   Keep the v7.40 landscape veil and all existing layouts. Replace only
   legacy hard-white UI surfaces with a warm stone family so they contrast
   with translucent navy reading panels without becoming visually dominant.
   ================================================================ */

body.homepage-nature-journey:not(:has(.home-hero)) {
  --vi-stone-strong: rgba(238, 198, 101, .92);
  --vi-stone: rgba(238, 198, 101, .84);
  --vi-stone-soft: rgba(238, 198, 101, .72);
  --vi-stone-border: rgba(238, 198, 101, .70);
  --vi-stone-ink: #071b34;
  --vi-stone-muted: #24364c;
}

/* Remove remaining pale page/section slabs inherited from the original
   white-background design. The landscape remains the page canvas. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .compass-not-lifecycle-section,
  .compass-principles-section,
  .decision-question-hero,
  .page-hero,
  .cta-section
) {
  background: transparent !important;
}

/* Warm information surfaces: same geometry, spacing and component structure. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .principle,
  .offer,
  .capital,
  .insight,
  .journey-panel,
  .compass-principle-card,
  .compass-phase-card,
  .lifecycle-column,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .decision-question-card,
  .decision-factor-card,
  .executive-situation,
  .card,
  .content-card,
  .white-card,
  .light-card,
  .white-panel,
  .light-panel,
  .question-card,
  .comparison-card,
  .value-card,
  .principle-card,
  .method-card,
  .insight-card,
  .article-card,
  .phase-card,
  .capability-card,
  .governance-card,
  .framework-card,
  .contact-card
) {
  background: linear-gradient(145deg, var(--vi-stone-strong), var(--vi-stone)) !important;
  border-color: var(--vi-stone-border) !important;
  color: var(--vi-stone-ink) !important;
  box-shadow: 0 12px 30px rgba(0, 8, 20, .15) !important;
  backdrop-filter: blur(4px) saturate(92%) !important;
  -webkit-backdrop-filter: blur(4px) saturate(92%) !important;
}

/* Dark ink belongs on warm information surfaces. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .principle,.offer,.capital,.insight,.journey-panel,.compass-principle-card,
  .compass-phase-card,.lifecycle-column,.premium-phase-panel,.premium-help-box,
  .premium-panel-footer,.decision-question-card,.decision-factor-card,
  .executive-situation,.card,.content-card,.white-card,.light-card,.white-panel,
  .light-panel,.question-card,.comparison-card,.value-card,.principle-card,
  .method-card,.insight-card,.article-card,.phase-card,.capability-card,
  .governance-card,.framework-card,.contact-card
) :is(h1,h2,h3,h4,h5,h6,p,li,dd,dt,figcaption,blockquote,strong,span) {
  color: var(--vi-stone-ink) !important;
  -webkit-text-fill-color: var(--vi-stone-ink) !important;
  text-shadow: none !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .principle,.offer,.capital,.insight,.journey-panel,.compass-principle-card,
  .compass-phase-card,.lifecycle-column,.premium-phase-panel,.premium-help-box,
  .premium-panel-footer,.decision-question-card,.decision-factor-card,
  .executive-situation,.card,.content-card,.white-card,.light-card,.white-panel,
  .light-panel,.question-card,.comparison-card,.value-card,.principle-card,
  .method-card,.insight-card,.article-card,.phase-card,.capability-card,
  .governance-card,.framework-card,.contact-card
) :is(.eyebrow,.kicker,.section-label,.phase-number,[class*="number"],a:not(.btn):not(.conversation-link)) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* The lifecycle diagram uses warm neutral step blocks rather than invisible
   navy labels on a navy panel. */
body.homepage-nature-journey:not(:has(.home-hero)) .lifecycle-steps div {
  background: rgba(212, 202, 187, .78) !important;
  border-color: rgba(238, 198, 101, .54) !important;
  color: var(--vi-stone-ink) !important;
  -webkit-text-fill-color: var(--vi-stone-ink) !important;
}

/* Diagram title: remove the obsolete white strip while retaining its exact
   position and typography. */
body.homepage-nature-journey:not(:has(.home-hero)) .premium-compass-title h3 {
  background: linear-gradient(90deg, rgba(7,27,52,.84), rgba(7,27,52,.52) 82%, rgba(7,27,52,0)) !important;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  padding: 10px 34px 10px 12px !important;
  text-shadow: 0 2px 8px rgba(0,8,20,.34) !important;
}
body.homepage-nature-journey:not(:has(.home-hero)) .premium-compass-title h3 span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* Keep pills visibly separate from their warm host cards. */
body.homepage-nature-journey:not(:has(.home-hero)) .pills span {
  background: rgba(238, 232, 221, .92) !important;
  color: var(--vi-stone-ink) !important;
  -webkit-text-fill-color: var(--vi-stone-ink) !important;
  border: 1px solid rgba(238, 198, 101, .24) !important;
}

/* Local decision CTA: identical visual language to the header component,
   scaled only to fit its existing slot. Keep all content inside the button. */
body main .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: min(100%, 250px) !important;
  min-width: 0 !important;
  padding: 10px 14px !important;
  gap: 8px !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.2 !important;
  overflow: hidden !important;
}
body main .conversation-link--featured span {
  display: block !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  color: #fff7dc !important;
  -webkit-text-fill-color: #fff7dc !important;
}
body main .conversation-link--featured img {
  flex: 0 0 19px !important;
  width: 19px !important;
  height: 19px !important;
}

/* Hero/closing areas must never revert to hard white. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(.decision-question-hero,.page-hero) .container,
body.homepage-nature-journey:not(:has(.home-hero)) .cta-box {
  background: rgba(7,27,52,.34) !important;
  border-color: rgba(238, 198, 101, .46) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
}

/* ================================================================
   v7.43 — readability-only correction
   No layout or component redesign. Preserve v7.42 geometry and imagery.
   ================================================================ */

body.homepage-nature-journey:not(:has(.home-hero)) {
  --vi-stone-title: #071b34;
  --vi-stone-copy: #24364c;
  --vi-stone-surface: rgba(238, 198, 101, .84);
  --vi-stone-surface-soft: rgba(238, 198, 101, .78);
}

/* Remove the final opaque white legacy surfaces. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .compass-closing,
  .compass-closing-section .container,
  .executive-situation,
  .decision-factor-card,
  .decision-question-card,
  .compass-principle-card,
  .offer,
  .capital,
  .insight,
  .principle,
  .card,
  .content-card,
  .white-card,
  .light-card,
  .white-panel,
  .light-panel
) {
  background: linear-gradient(145deg, var(--vi-stone-surface-soft), var(--vi-stone-surface)) !important;
  color: var(--vi-stone-copy) !important;
}

/* Titles are dark navy; supporting copy is a quieter blue-grey. */
body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .executive-situation,
  .decision-factor-card,
  .decision-question-card,
  .compass-principle-card,
  .offer,
  .capital,
  .insight,
  .principle,
  .card,
  .content-card,
  .white-card,
  .light-card,
  .white-panel,
  .light-panel
) :is(h1,h2,h3,h4,h5,h6) {
  color: var(--vi-stone-title) !important;
  -webkit-text-fill-color: var(--vi-stone-title) !important;
  text-shadow: none !important;
}

body.homepage-nature-journey:not(:has(.home-hero)) :is(
  .executive-situation,
  .decision-factor-card,
  .decision-question-card,
  .compass-principle-card,
  .offer,
  .capital,
  .insight,
  .principle,
  .card,
  .content-card,
  .white-card,
  .light-card,
  .white-panel,
  .light-panel
) :is(p,li,dd,dt,figcaption,blockquote) {
  color: var(--vi-stone-copy) !important;
  -webkit-text-fill-color: var(--vi-stone-copy) !important;
  text-shadow: none !important;
}

/* Keep highlighted pull-quotes distinct but readable on the warm surface. */
body.homepage-nature-journey:not(:has(.home-hero)) .situation-hook {
  background: rgba(88, 82, 75, .34) !important;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

/* Local CTA: same header component, one line, anchored to the lower right
   of its existing panel without changing the panel's geometry. */
body main .conversation-link--featured {
  max-width: none !important;
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
  margin-left: auto !important;
  align-self: flex-end !important;
  padding: 10px 15px !important;
}
body main .conversation-link--featured span {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
}
body main .conversation-link--featured img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
  mix-blend-mode: normal !important;
}

/* Closing/hero legacy white slab: retain location and spacing, use the same
   unobtrusive translucent navy reading surface already used elsewhere. */
body.homepage-nature-journey:not(:has(.home-hero)) .compass-closing {
  background: rgba(7, 27, 52, .60) !important;
  border-color: rgba(238, 198, 101, .48) !important;
  backdrop-filter: blur(4px) saturate(90%) !important;
  -webkit-backdrop-filter: blur(4px) saturate(90%) !important;
}
body.homepage-nature-journey:not(:has(.home-hero)) .compass-closing :is(h2,p) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

@media (max-width: 760px) {
  body main .conversation-link--featured {
    white-space: nowrap !important;
    font-size: .72rem !important;
    padding: 9px 11px !important;
  }
  body main .conversation-link--featured span {
    white-space: nowrap !important;
  }
}

/* ================================================================
   v7.44 — focused readability correction
   Remove CTA icons, use the current method line icon in the
   information-asymmetry transition, and avoid unnecessary hero boxes.
   ================================================================ */

/* The decision CTA is text-only everywhere, including the header. */
body .conversation-link--featured {
  gap: 0 !important;
}
body .conversation-link--featured img {
  display: none !important;
}

/* Use the same current line-icon presentation as the homepage method card. */
body.homepage-nature-journey:not(:has(.home-hero)) .asymmetry-transition-logo img {
  width: 82px !important;
  height: 82px !important;
  object-fit: contain !important;
}

/* The decision-question hero text is already readable against the shared
   darkened landscape. Remove the additional panel without moving content. */
body.homepage-nature-journey:not(:has(.home-hero)) .decision-question-hero .container {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ================================================================
   v7.45 — focused icon and local CTA fit correction
   Keep the rotating method mark only; improve local CTA containment.
   ================================================================ */

/* Information-asymmetry transition: remove every decorative contouring
   circle and glow. The existing inner line mark continues to rotate. */
body.homepage-nature-journey:not(:has(.home-hero)) .asymmetry-transition-logo {
  width: 104px !important;
  height: 104px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
body.homepage-nature-journey:not(:has(.home-hero)) .asymmetry-transition-logo::before,
body.homepage-nature-journey:not(:has(.home-hero)) .asymmetry-transition-logo::after {
  content: none !important;
  display: none !important;
}
body.homepage-nature-journey:not(:has(.home-hero)) .asymmetry-transition-logo img {
  width: 96px !important;
  height: 96px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain !important;
}

/* Local decision CTAs: preserve their design, but prevent shrinking and
   clipping. Keep the full label on one line in the lower-right of the
   existing host panel. */
body main .conversation-link--featured {
  flex: 0 0 auto !important;
  width: max-content !important;
  min-width: 224px !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 10px 14px !important;
  font-size: clamp(.68rem, .18vw + .65rem, .80rem) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  margin-left: auto !important;
  margin-top: auto !important;
  align-self: flex-end !important;
}
body main .conversation-link--featured span {
  display: inline !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Existing CTA host panels may wrap only when needed; their content and
   geometry otherwise remain unchanged. */
body main :is(.protected-method-panel, .cta-box) {
  flex-wrap: wrap !important;
}
body main :is(.protected-method-panel, .cta-box) > .conversation-link--featured {
  margin-left: auto !important;
  margin-top: 18px !important;
  align-self: flex-end !important;
}

@media (max-width: 760px) {
  body main .conversation-link--featured {
    min-width: 0 !important;
    width: fit-content !important;
    max-width: 100% !important;
    font-size: .68rem !important;
    padding: 9px 11px !important;
  }
}

/* ================================================================
   v7.46 — Decision Navigation tab readability/spacing refinement
   Scope: decision-navigation.html only, plus compact CTA sizing sitewide.
   ================================================================ */

/* 1. Decision Navigation hero: remove excess vertical gap and the extra pane. */
body:has(.decision-nav-hero) .decision-nav-hero {
  min-height: 0 !important;
  padding: 18px 0 28px !important;
  background: transparent !important;
}
body:has(.decision-nav-hero) .decision-nav-hero .container {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body:has(.decision-nav-hero) .decision-nav-hero h1 {
  margin-top: .3rem !important;
}

/* 2. Four executive-question cards: homepage navy/gold treatment. */
body:has(.decision-nav-hero) .decision-chapter-section {
  background: transparent !important;
}
body:has(.decision-nav-hero) .decision-question-card,
body:has(.decision-nav-hero) .decision-question-card:link,
body:has(.decision-nav-hero) .decision-question-card:visited {
  background: rgba(7, 27, 52, .90) !important;
  border: 1px solid rgba(238, 198, 101, .92) !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 30px rgba(0, 8, 20, .20) !important;
  backdrop-filter: blur(3px) saturate(105%) !important;
  -webkit-backdrop-filter: blur(3px) saturate(105%) !important;
}
body:has(.decision-nav-hero) .decision-question-card :is(h3,p) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}
body:has(.decision-nav-hero) .decision-question-card :is(.decision-question-number,.decision-question-link) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body:has(.decision-nav-hero) .decision-question-card:hover,
body:has(.decision-nav-hero) .decision-question-card:focus-visible {
  border-color: #EEC665 !important;
  box-shadow: 0 16px 38px rgba(0, 8, 20, .28) !important;
}

/* 3. Give the North Star diagram clear breathing room above. */
body:has(.decision-nav-hero) .value-alignment-section {
  padding-top: clamp(72px, 7vw, 112px) !important;
}

/* 4. Closing section: remove the unnecessary translucent host box. */
body:has(.decision-nav-hero) .cta-section .cta-box {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Compact text-only decision CTA everywhere: no surplus width. */
body .conversation-link--featured,
body main .conversation-link--featured {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 10px 16px !important;
  white-space: nowrap !important;
}
body .conversation-link--featured span,
body main .conversation-link--featured span {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
}

@media (max-width: 760px) {
  body:has(.decision-nav-hero) .decision-nav-hero {
    padding: 12px 0 22px !important;
  }
  body:has(.decision-nav-hero) .value-alignment-section {
    padding-top: 54px !important;
  }
  body .conversation-link--featured,
  body main .conversation-link--featured {
    padding: 9px 12px !important;
  }
}

/* ================================================================
   v7.47 — Decision Navigation verified page-scoped correction
   Explicit page class avoids older generic surface rules winning.
   ================================================================ */

/* Opening: no card/scrim surface, minimal top gap, normal safe gutters. */
body.decision-navigation-page .decision-nav-hero {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 0 24px !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.decision-navigation-page .decision-nav-hero::before,
body.decision-navigation-page .decision-nav-hero::after {
  content: none !important;
  display: none !important;
}
body.decision-navigation-page .decision-nav-hero .container {
  width: min(100% - 48px, 1720px) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.decision-navigation-page .decision-nav-hero :is(.eyebrow,h1,p) {
  position: relative !important;
  z-index: 1 !important;
  text-shadow: 0 2px 12px rgba(0,8,20,.55) !important;
}
body.decision-navigation-page .decision-nav-hero h1 {
  margin: .15rem 0 .75rem !important;
}
body.decision-navigation-page .decision-nav-hero p {
  margin-bottom: 0 !important;
  max-width: 1280px !important;
}

/* Four questions: reuse the homepage navy/gold card language exactly. */
body.decision-navigation-page .decision-chapter-section,
body.decision-navigation-page .decision-chapter-section .container {
  background: transparent !important;
  background-image: none !important;
}
body.decision-navigation-page .decision-question-card,
body.decision-navigation-page .decision-question-card:link,
body.decision-navigation-page .decision-question-card:visited {
  background: rgba(5, 28, 53, .94) !important;
  background-image: none !important;
  border: 1px solid #EEC665 !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 28px rgba(0, 8, 20, .24) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.decision-navigation-page .decision-question-card :is(h3,p) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  text-shadow: none !important;
}
body.decision-navigation-page .decision-question-card :is(.decision-question-number,.decision-question-link) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-shadow: none !important;
}

/* Preserve a deliberate gap before the North Star composition. */
body.decision-navigation-page .value-alignment-section {
  padding-top: clamp(82px, 8vw, 128px) !important;
}
body.decision-navigation-page .value-alignment-map {
  margin-top: 0 !important;
}

/* Closing: typography directly on landscape; CTA compact at lower right. */
body.decision-navigation-page .cta-section,
body.decision-navigation-page .cta-section .container,
body.decision-navigation-page .cta-section .cta-box {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.decision-navigation-page .cta-section .cta-box {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.decision-navigation-page .cta-section .conversation-link--featured {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 0 0 auto !important;
  padding: 10px 15px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

/* Compact the same text-only CTA everywhere without changing its design. */
body .conversation-link--featured {
  width: auto !important;
  min-width: 0 !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero .container {
    width: min(100% - 28px, 1720px) !important;
  }
  body.decision-navigation-page .cta-section .cta-box {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
  body.decision-navigation-page .cta-section .conversation-link--featured {
    margin-left: 0 !important;
  }
}

/* ================================================================
   v7.48 — Decision Navigation opening rhythm correction
   Restore intentional breathing room below the header without
   returning to the original oversized empty-sky gap.
   ================================================================ */
body.decision-navigation-page .decision-nav-hero {
  padding-top: clamp(42px, 4.2vw, 68px) !important;
  padding-bottom: 28px !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero {
    padding-top: 30px !important;
    padding-bottom: 22px !important;
  }
}

/* ================================================================
   v7.49 — Decision Navigation family: verified surface correction
   Main page + four subpages. Readability only; no structural redesign.
   ================================================================ */

/* Main Decision Navigation hero: preserve balanced top rhythm, remove panel. */
html body.decision-navigation-page section.decision-nav-hero,
html body.decision-navigation-page section.decision-nav-hero > .container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.decision-navigation-page section.decision-nav-hero::before,
html body.decision-navigation-page section.decision-nav-hero::after,
html body.decision-navigation-page section.decision-nav-hero > .container::before,
html body.decision-navigation-page section.decision-nav-hero > .container::after {
  content: none !important;
  display: none !important;
}

/* Main-page executive question cards: exact navy / white / gold language. */
html body.decision-navigation-page .decision-question-grid > a.decision-question-card,
html body.decision-navigation-page .decision-question-grid > a.decision-question-card:link,
html body.decision-navigation-page .decision-question-grid > a.decision-question-card:visited {
  opacity: 1 !important;
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  border: 1px solid #EEC665 !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 28px rgba(0,8,20,.22) !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.decision-navigation-page .decision-question-grid > a.decision-question-card::before,
html body.decision-navigation-page .decision-question-grid > a.decision-question-card::after {
  content: none !important;
  display: none !important;
}
html body.decision-navigation-page .decision-question-grid > a.decision-question-card :is(h3,p) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  text-shadow: none !important;
}
html body.decision-navigation-page .decision-question-grid > a.decision-question-card :is(.decision-question-number,.decision-question-link) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-shadow: none !important;
}

/* Four Decision Navigation subpages: remove unnecessary hero panel. */
html body.decision-navigation-subpage section.decision-question-hero,
html body.decision-navigation-subpage section.decision-question-hero > .container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.decision-navigation-subpage section.decision-question-hero::before,
html body.decision-navigation-subpage section.decision-question-hero::after,
html body.decision-navigation-subpage section.decision-question-hero > .container::before,
html body.decision-navigation-subpage section.decision-question-hero > .container::after {
  content: none !important;
  display: none !important;
}

/* Reuse the same navy / white / gold card treatment on subpage cards. */
html body.decision-navigation-subpage :is(.decision-factor-card,.decision-takeaway,.decision-next,.protected-method-panel) {
  background: rgba(7,27,52,.94) !important;
  background-color: rgba(7,27,52,.94) !important;
  background-image: none !important;
  border-color: #EEC665 !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 28px rgba(0,8,20,.20) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.decision-navigation-subpage :is(.decision-factor-card,.decision-takeaway,.decision-next,.protected-method-panel) :is(h2,h3,h4,p,li,strong) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  text-shadow: none !important;
}
html body.decision-navigation-subpage :is(.decision-factor-card,.decision-takeaway,.decision-next,.protected-method-panel) :is(.eyebrow,.kicker,.label) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* v7.51 definitive Decision Navigation rendering fix */
body.decision-navigation-page .decision-nav-hero, body.decision-navigation-page .decision-nav-hero>.container {background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;}
body.decision-navigation-page .decision-nav-hero:before,body.decision-navigation-page .decision-nav-hero:after,body.decision-navigation-page .decision-nav-hero>.container:before,body.decision-navigation-page .decision-nav-hero>.container:after{display:none!important;content:none!important;}
body.decision-navigation-page .decision-question-card{background:#071b34!important;background-image:none!important;border-color:#EEC665!important;color:#fffdf7!important;}
body.decision-navigation-page .decision-question-card h3,body.decision-navigation-page .decision-question-card p{color:#fffdf7!important;-webkit-text-fill-color:#fffdf7!important;}
body.decision-navigation-page .decision-question-number,body.decision-navigation-page .decision-question-link{color:#EEC665!important;-webkit-text-fill-color:#EEC665!important;}
body.decision-navigation-subpage .decision-question-hero,body.decision-navigation-subpage .decision-question-hero>.container{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;}


/* v7.52 source-level Decision Navigation family correction */
body.decision-navigation-page .decision-nav-hero > .container,
body.decision-navigation-subpage .decision-question-hero > .container {
  background: transparent !important; background-color: transparent !important; background-image: none !important;
  border: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
body.decision-navigation-page .decision-question-card,
body.decision-navigation-subpage .executive-situation,
body.decision-navigation-subpage .decision-factor-card {
  background: rgba(5, 25, 52, 0.90) !important; background-color: rgba(5, 25, 52, 0.90) !important; background-image: none !important;
  border: 1px solid #EEC665 !important; box-shadow: none !important;
}
body.decision-navigation-subpage :is(.executive-situation,.decision-factor-card) :is(h2,h3,p,.situation-copy,.situation-hook) {
  color: #fffdf7 !important; -webkit-text-fill-color: #fffdf7 !important; text-shadow: none !important;
}
body.decision-navigation-subpage .situation-time { color:#EEC665 !important; -webkit-text-fill-color:#EEC665 !important; }
body.decision-navigation-subpage :is(.executive-situation-section,.decision-factor-section,.decision-next-section),
body.decision-navigation-subpage .decision-next {
  background: transparent !important; background-color: transparent !important; background-image: none !important;
  border: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}

/* ================================================================
   v7.53 — Decision Navigation hierarchy and opening rhythm
   ================================================================ */

/* Main landing page: restore comfortable separation from the header. */
body.decision-navigation-page .decision-nav-hero {
  padding-top: clamp(84px, 7vw, 118px) !important;
  padding-bottom: 34px !important;
}

/* Four subpages: remove the inherited oversized internal-page gap. */
body.decision-navigation-subpage .decision-question-hero {
  padding-top: clamp(88px, 7vw, 112px) !important;
  padding-bottom: clamp(42px, 4vw, 58px) !important;
  min-height: 0 !important;
}

/* Distinguish card headings from their explanatory copy. */
body.decision-navigation-subpage .decision-factor-card h3 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero {
    padding-top: 62px !important;
    padding-bottom: 28px !important;
  }
  body.decision-navigation-subpage .decision-question-hero {
    padding-top: 64px !important;
    padding-bottom: 34px !important;
  }
}


/* ================================================================
   v7.53 — Decision Navigation hierarchy and opening rhythm
   ================================================================ */
body.decision-navigation-page .decision-nav-hero {
  padding-top: clamp(84px, 7vw, 118px) !important;
  padding-bottom: 34px !important;
}
body.decision-navigation-subpage .decision-question-hero {
  padding-top: clamp(88px, 7vw, 112px) !important;
  padding-bottom: clamp(42px, 4vw, 58px) !important;
  min-height: 0 !important;
}
body.decision-navigation-subpage .decision-factor-card h3 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}
@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero {
    padding-top: 62px !important;
    padding-bottom: 28px !important;
  }
  body.decision-navigation-subpage .decision-question-hero {
    padding-top: 64px !important;
    padding-bottom: 34px !important;
  }
}

/* ================================================================
   v7.54 — Decision Navigation spacing alignment
   ================================================================ */
/* Use one shared hero offset across the Decision Navigation landing page
   and all four subpages. This matches the preferred subpage reference and
   places the main-page eyebrow near the mountain peak rather than too high. */
body.decision-navigation-page .decision-nav-hero,
body.decision-navigation-subpage .decision-question-hero {
  padding-top: clamp(118px, 8.5vw, 146px) !important;
  padding-bottom: clamp(42px, 4vw, 58px) !important;
  min-height: 0 !important;
}

/* Give section headings breathing room when they follow a bordered card grid. */
body.decision-navigation-subpage .decision-factor-section > .container > .section-head {
  margin-top: clamp(42px, 4vw, 64px) !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero,
  body.decision-navigation-subpage .decision-question-hero {
    padding-top: 78px !important;
    padding-bottom: 34px !important;
  }
  body.decision-navigation-subpage .decision-factor-section > .container > .section-head {
    margin-top: 34px !important;
  }
}

/* ================================================================
   v7.55 — Decision Navigation spacing and compact-content correction
   ================================================================ */

/* Match the preferred mountain-tip reference across the landing page
   and all four Decision Navigation subpages. */
body.decision-navigation-page .decision-nav-hero,
body.decision-navigation-subpage .decision-question-hero {
  padding-top: clamp(72px, 5.6vw, 92px) !important;
  padding-bottom: clamp(32px, 3vw, 44px) !important;
  min-height: 0 !important;
}

/* Remove remaining decorative insight panels when the text is already
   legible on the controlled landscape background. */
body.decision-navigation-subpage .decision-takeaway-section,
body.decision-navigation-subpage .decision-takeaway {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.decision-navigation-subpage .decision-takeaway {
  padding: clamp(24px, 2.6vw, 36px) 0 !important;
}

/* Advisory-value panels should wrap their content rather than behaving
   like oversized feature banners. */
body.decision-navigation-subpage .protected-method-section {
  padding-bottom: clamp(30px, 3vw, 44px) !important;
}
body.decision-navigation-subpage .protected-method-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: clamp(22px, 3vw, 42px) !important;
  min-height: 0 !important;
  height: auto !important;
  padding: clamp(28px, 3vw, 40px) !important;
}
body.decision-navigation-subpage .protected-method-panel > div {
  max-width: 920px !important;
}
body.decision-navigation-subpage .protected-method-panel h2 {
  margin-bottom: 10px !important;
}
body.decision-navigation-subpage .protected-method-panel p {
  margin-bottom: 0 !important;
}

/* Keep the decision CTA only as large as its label. */
body .conversation-link--featured,
body main .conversation-link--featured {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: max-content !important;
  padding: 9px 14px !important;
  line-height: 1.1 !important;
}
body.decision-navigation-subpage .protected-method-panel > .conversation-link--featured {
  margin: 0 !important;
  align-self: end !important;
  justify-self: end !important;
}

/* Continue sections remain open and compact. */
body.decision-navigation-subpage .decision-next-section {
  padding-top: 0 !important;
  padding-bottom: clamp(30px, 3vw, 44px) !important;
}
body.decision-navigation-subpage .decision-next {
  min-height: 0 !important;
  height: auto !important;
  padding-top: clamp(24px, 2.6vw, 34px) !important;
  padding-bottom: clamp(24px, 2.6vw, 34px) !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero,
  body.decision-navigation-subpage .decision-question-hero {
    padding-top: 58px !important;
    padding-bottom: 28px !important;
  }
  body.decision-navigation-subpage .protected-method-panel {
    grid-template-columns: 1fr !important;
    padding: 24px !important;
  }
  body.decision-navigation-subpage .protected-method-panel > .conversation-link--featured {
    justify-self: start !important;
    margin-top: 16px !important;
  }
}

/* ================================================================
   v7.56 — Landing-page spacing and CTA centering correction
   ================================================================ */

/* Only the Decision Navigation landing page was too close to the header.
   Keep the four subpages at their established spacing. */
body.decision-navigation-page .decision-nav-hero {
  padding-top: clamp(96px, 7vw, 118px) !important;
}

/* Center the CTA label both horizontally and vertically in every instance. */
body .conversation-link--featured,
body main .conversation-link--featured,
body .conversation-link--featured > span {
  text-align: center !important;
}
body .conversation-link--featured,
body main .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body .conversation-link--featured > span {
  display: block !important;
  width: 100% !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero {
    padding-top: 72px !important;
  }
}

/* ================================================================
   v7.57 — Match landing hero spacing to Decision Navigation subpages
   ================================================================ */
/* The landing page is the only outlier. Use the same mountain-tip offset
   already established on the four Decision Navigation subpages. */
body.decision-navigation-page .decision-nav-hero {
  padding-top: clamp(72px, 5.6vw, 92px) !important;
  padding-bottom: clamp(32px, 3vw, 44px) !important;
  min-height: 0 !important;
}

@media (max-width: 760px) {
  body.decision-navigation-page .decision-nav-hero {
    padding-top: 58px !important;
    padding-bottom: 28px !important;
  }
}


/* v7.61 — open Decision Insight and gold section labels */
body.decision-navigation-subpage .decision-takeaway-section,
body.decision-navigation-subpage .decision-takeaway {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.decision-navigation-subpage .decision-takeaway > span,
body.decision-navigation-subpage .decision-next > div > span {
  color: #EEC665 !important;
}

/* ================================================================
   v7.62 — Decision Navigation label color + CTA optical centering
   ================================================================ */
body.home-page.homepage-nature-journey.decision-navigation-subpage .decision-takeaway > span,
body.home-page.homepage-nature-journey.decision-navigation-subpage .decision-next > div > span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-shadow: none !important;
}

body .conversation-link--featured,
body main .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
}
body .conversation-link--featured > span,
body main .conversation-link--featured > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
}

/* ================================================================
   v7.62 — Decision Navigation label color + CTA optical centering
   ================================================================ */
body.home-page.homepage-nature-journey.decision-navigation-subpage .decision-takeaway > span,
body.home-page.homepage-nature-journey.decision-navigation-subpage .decision-next > div > span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-shadow: none !important;
}

body .conversation-link--featured,
body main .conversation-link--featured {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
}
body .conversation-link--featured > span,
body main .conversation-link--featured > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
}

/* ================================================================
   v7.64 — Understand-the-decision visible spacing/panel correction
   ================================================================ */
html body.decision-navigation-subpage .decision-question-hero {
  padding-top: 0 !important;
  margin-top: 0 !important;
  min-height: 0 !important;
}
html body.decision-navigation-subpage :is(
  .decision-introduction,.decision-intro,.decision-intro-panel,
  .decision-definition,.decision-definition-panel,
  .decision-context,.decision-context-panel,
  .decision-opening,.decision-opening-panel,
  .decision-narrative,.decision-narrative-panel,
  .decision-overview,.decision-overview-panel
) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ================================================================
   v7.72 — Decision Navigation section rhythm
   ================================================================ */
/* Bring each open executive-moment narrative closer to the section above. */
body.decision-navigation-subpage .executive-situation-section {
  margin-top: -38px !important;
}

/* Give each Decision Insight a deliberate pause from the content above. */
body.decision-navigation-subpage .decision-takeaway-section {
  padding-top: 27px !important;
}

@media (max-width: 760px) {
  body.decision-navigation-subpage .executive-situation-section {
    margin-top: -28px !important;
  }
  body.decision-navigation-subpage .decision-takeaway-section {
    padding-top: 22px !important;
  }
}


/* ================================================================
   v7.73 — Contact page aligned with the approved homepage language
   ================================================================ */
body.contact-page .contact-main {
  background: transparent !important;
}

body.contact-page .contact-hero {
  min-height: min(620px, 64vh);
  display: flex;
  align-items: center;
  background: transparent !important;
  padding: clamp(150px, 18vh, 235px) 0 clamp(72px, 8vh, 110px) !important;
}

body.contact-page .contact-shell,
body.contact-page .contact-path-shell,
body.contact-page .contact-truth-shell {
  width: min(1540px, calc(100% - 72px));
  margin-inline: auto;
}

body.contact-page .contact-shell {
  max-width: 1320px;
  margin-left: max(36px, calc((100vw - 1540px) / 2));
  margin-right: auto;
}

body.contact-page .contact-kicker,
body.contact-page .contact-card-number {
  display: block;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  font-size: clamp(.9rem, 1.05vw, 1.15rem);
  font-weight: 850;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 1.1rem;
}

body.contact-page .contact-hero h1 {
  max-width: 1120px;
  margin: 0;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  font-family: var(--font-display, Georgia, serif);
  font-size: clamp(3.2rem, 5.8vw, 6.4rem);
  line-height: .98;
  font-weight: 600;
  letter-spacing: -.035em;
  text-shadow: 0 3px 18px rgba(0, 7, 18, .48) !important;
}

body.contact-page .contact-hero p {
  max-width: 980px;
  margin: clamp(28px, 3vw, 44px) 0 0;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  font-size: clamp(1.12rem, 1.55vw, 1.55rem);
  line-height: 1.55;
  font-weight: 600;
  text-shadow: 0 2px 12px rgba(0, 8, 20, .55) !important;
}

body.contact-page .contact-path {
  padding: 0 0 clamp(80px, 9vw, 135px) !important;
  background: transparent !important;
}

body.contact-page .contact-path-shell {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 2.4vw, 42px);
}

body.contact-page .contact-decision-card {
  min-height: 430px;
  padding: clamp(34px, 3.3vw, 58px);
  display: flex;
  flex-direction: column;
  background: rgba(5, 25, 52, .92) !important;
  border: 1px solid rgba(238, 198, 101, .92) !important;
  border-radius: 28px;
  box-shadow: 0 20px 55px rgba(0, 8, 22, .24) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.contact-page .contact-decision-card h2 {
  margin: 0 0 1.5rem;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  font-family: var(--font-display, Georgia, serif);
  font-size: clamp(2rem, 2.6vw, 3.15rem);
  line-height: 1.06;
  font-weight: 600;
  text-shadow: none !important;
}

body.contact-page .contact-decision-card p,
body.contact-page .contact-decision-card li {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  font-size: clamp(1.02rem, 1.28vw, 1.3rem);
  line-height: 1.6;
  text-shadow: none !important;
}

body.contact-page .contact-decision-card ul {
  margin: .25rem 0 0;
  padding: 0;
  list-style: none;
}

body.contact-page .contact-decision-card li {
  position: relative;
  padding: .55rem 0 .55rem 1.6rem;
  border-bottom: 1px solid rgba(238, 198, 101, .18);
}

body.contact-page .contact-decision-card li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: .62rem;
  color: #EEC665;
  font-size: .75em;
}

body.contact-page .contact-decision-card--action p {
  max-width: 620px;
  margin: .3rem 0 2rem;
}

body.contact-page .contact-conversation-cta {
  align-self: flex-start;
  margin-top: auto;
  width: auto !important;
  min-width: 0 !important;
  padding: 13px 24px !important;
  white-space: nowrap;
  text-align: center !important;
}

body.contact-page .contact-conversation-cta span {
  color: #fff7dc !important;
  -webkit-text-fill-color: #fff7dc !important;
}

body.contact-page .contact-decision-truth {
  padding: 0 0 clamp(100px, 12vw, 180px) !important;
  background: transparent !important;
}

body.contact-page .contact-truth-shell {
  position: relative;
  padding-left: clamp(28px, 3vw, 50px);
  max-width: 1180px;
  margin-left: max(36px, calc((100vw - 1540px) / 2));
  margin-right: auto;
}

body.contact-page .contact-truth-rule {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #EEC665;
}

body.contact-page .contact-truth-shell p,
body.contact-page .contact-truth-shell strong {
  display: block;
  margin: 0;
  font-family: var(--font-display, Georgia, serif);
  line-height: 1.12;
  text-shadow: 0 2px 12px rgba(0, 8, 20, .36) !important;
}

body.contact-page .contact-truth-shell p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  font-size: clamp(1.8rem, 3vw, 3.5rem);
}

body.contact-page .contact-truth-shell strong {
  margin-top: .35rem;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  font-size: clamp(2.2rem, 4vw, 4.8rem);
  font-weight: 600;
}

@media (max-width: 900px) {
  body.contact-page .contact-hero {
    min-height: auto;
    padding-top: 145px !important;
  }
  body.contact-page .contact-shell,
  body.contact-page .contact-path-shell,
  body.contact-page .contact-truth-shell {
    width: min(100% - 34px, 760px);
    margin-inline: auto;
  }
  body.contact-page .contact-path-shell {
    grid-template-columns: 1fr;
  }
  body.contact-page .contact-decision-card {
    min-height: 0;
    border-radius: 22px;
  }
  body.contact-page .contact-conversation-cta {
    white-space: normal;
  }
}


/* ================================================================
   v7.74 — Contact page contrast and compactness refinement
   ================================================================ */
body.contact-page .contact-shell {
  transform: translateY(-64px); /* approximately 1.7 cm upward */
}

body.contact-page .contact-path-shell {
  align-items: start;
}

body.contact-page .contact-decision-card {
  min-height: 0 !important;
  height: auto !important;
  padding: clamp(28px, 2.7vw, 44px) !important;
}

/* First card: warm gold information surface with navy typography. */
body.contact-page .contact-decision-card:first-child {
  background: linear-gradient(145deg, rgba(238, 198, 101, .96), rgba(238, 198, 101, .96)) !important;
  border-color: rgba(238, 198, 101, .98) !important;
  box-shadow: 0 18px 46px rgba(0, 8, 22, .22) !important;
}
body.contact-page .contact-decision-card:first-child h2,
body.contact-page .contact-decision-card:first-child p,
body.contact-page .contact-decision-card:first-child li {
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
}
body.contact-page .contact-decision-card:first-child li {
  border-bottom-color: rgba(7, 27, 52, .22) !important;
}
body.contact-page .contact-decision-card:first-child li::before {
  color: #071b34 !important;
}

/* Second card keeps the approved homepage navy treatment, but wraps content. */
body.contact-page .contact-decision-card--action {
  min-height: 0 !important;
}
body.contact-page .contact-decision-card--action p {
  margin-bottom: 1.4rem !important;
}
body.contact-page .contact-conversation-cta {
  margin-top: .5rem !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-shell {
    transform: translateY(-36px);
  }
}

/* ================================================================
   v7.76 — Contact card equal sizing and white text refinement
   ================================================================ */
body.contact-page .contact-path-shell {
  align-items: stretch !important;
}

body.contact-page .contact-decision-card {
  height: 100% !important;
}

/* Keep the first card gold, but use white typography throughout. */
body.contact-page .contact-decision-card:first-child h2,
body.contact-page .contact-decision-card:first-child p,
body.contact-page .contact-decision-card:first-child li {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

body.contact-page .contact-decision-card:first-child li {
  border-bottom-color: rgba(255, 253, 247, .24) !important;
}

body.contact-page .contact-decision-card:first-child li::before {
  color: #fffdf7 !important;
}

@media (max-width: 900px) {
  body.contact-page .contact-decision-card {
    height: auto !important;
  }
}


/* ================================================================
   v7.77 — COMPASS Method visual alignment
   Reuse the approved homepage / Decision Navigation visual language.
   Scope: compass-method.html only.
   ================================================================ */
body.compass-method-page {
  --compass-navy: rgba(5,25,52,.92);
  --compass-navy-soft: rgba(5,25,52,.82);
  --compass-accent: #EEC665;
  --compass-white: #fffdf7;
}

/* The landscape is the canvas. Narrative sections remain open. */
body.compass-method-page :is(
  .page-hero,
  .compass-belief-section,
  .compass-not-lifecycle-section,
  .compass-phases-section,
  .compass-principles-section,
  .compass-closing-section
) {
  background: transparent !important;
}

body.compass-method-page :is(.page-hero,.compass-belief-section,.compass-not-lifecycle-section,
  .compass-phases-section,.compass-principles-section,.compass-closing-section) > .container {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Open editorial text uses white with the shared lemon accent. */
body.compass-method-page :is(.page-hero,.compass-belief-section,.compass-not-lifecycle-section,
  .compass-phases-section,.compass-principles-section,.compass-closing-section)
  :is(h1,h2,h3,p,strong,li) {
  color: var(--compass-white) !important;
  -webkit-text-fill-color: var(--compass-white) !important;
  text-shadow: 0 2px 10px rgba(0,8,20,.38) !important;
}
body.compass-method-page :is(.eyebrow,.section-label,.kicker) {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}

/* Decision Insight becomes an open pull-quote rather than another filled box. */
body.compass-method-page .decision-insight-inline {
  background: transparent !important;
  border: 0 !important;
  border-left: 4px solid var(--compass-accent) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  padding: 8px 0 8px 24px !important;
  margin-top: 30px !important;
}
body.compass-method-page .decision-insight-inline span {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}
body.compass-method-page .decision-insight-inline strong {
  color: var(--compass-white) !important;
  -webkit-text-fill-color: var(--compass-white) !important;
}

/* All informational boxes use one shared navy component. No yellow-filled cards. */
body.compass-method-page :is(
  .lifecycle-column,
  .compass-phase-card,
  .compass-principle-card,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .compass-protected-panel
) {
  background: var(--compass-navy) !important;
  border: 1px solid var(--compass-accent) !important;
  color: var(--compass-white) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.compass-method-page :is(
  .lifecycle-column,
  .compass-phase-card,
  .compass-principle-card,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .compass-protected-panel
) :is(h2,h3,h4,p,li,strong,span) {
  color: var(--compass-white) !important;
  -webkit-text-fill-color: var(--compass-white) !important;
  text-shadow: none !important;
}
body.compass-method-page :is(
  .lifecycle-column,
  .compass-phase-card,
  .compass-principle-card,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .compass-protected-panel
) :is(.phase-number,.phase-name,.eyebrow,.premium-panel-phase,.premium-panel-progress) {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}

/* Both lifecycle columns now use the same navy surface. */
body.compass-method-page .lifecycle-column.traditional,
body.compass-method-page .lifecycle-column.compass {
  background: var(--compass-navy) !important;
}
body.compass-method-page .lifecycle-column > span,
body.compass-method-page .lifecycle-divider {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}
body.compass-method-page .lifecycle-steps div {
  background: rgba(5,25,52,.72) !important;
  border: 1px solid rgba(238,198,101,.56) !important;
  color: var(--compass-white) !important;
  -webkit-text-fill-color: var(--compass-white) !important;
}

/* Principle cards: gold labels, white copy, content-sized rhythm. */
body.compass-method-page .compass-principle-card {
  min-height: 0 !important;
  height: auto !important;
}
body.compass-method-page .compass-principle-card > span {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}

/* Phase panel and interactive diagram details retain gold only as accent. */
body.compass-method-page .premium-phase-panel {
  background: var(--compass-navy) !important;
}
body.compass-method-page :is(.premium-panel-rule,.premium-panel-track-fill,.premium-panel-track-node.is-current) {
  background: var(--compass-accent) !important;
}
body.compass-method-page :is(.premium-phase-cta,.premium-next-phase) {
  border-color: var(--compass-accent) !important;
}
body.compass-method-page .premium-phase-cta,
body.compass-method-page .premium-next-phase,
body.compass-method-page .premium-phase-cta span {
  color: var(--compass-accent) !important;
  -webkit-text-fill-color: var(--compass-accent) !important;
}

/* Protected-depth panel follows the same blue card language. */
body.compass-method-page .compass-protected-panel .btn.gold {
  background: linear-gradient(135deg,#EEC665,#c9972f) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #f6da8a !important;
}

/* Ensure any legacy warm/yellow surface inside this page resolves to navy. */
body.compass-method-page :is(
  .traditional,
  .compass,
  [class*="yellow-card"],
  [class*="gold-card"],
  [class*="warm-card"]
) {
  background-color: var(--compass-navy) !important;
  background-image: none !important;
}

/* ================================================================
   v7.78 — site-wide card contrast and numbering cleanup
   Preserve all layouts. Navy cards use yellow contours; yellow cards use
   navy contours. Visual card numbering is removed everywhere.
   ================================================================ */

/* Remove decorative numbering from cards only. Functional progress indicators
   and ordered-list semantics remain intact. */
body :is(
  .decision-question-number,
  .phase-number,
  .card-number,
  .card-index,
  .step-number,
  .offer-number,
  .principle-number,
  .service-number,
  .feature-number
) {
  display: none !important;
}

/* Shared navy card family — exact layout is untouched. */
body :is(
  .decision-card,
  .decision-question-card,
  .decision-factor-card,
  .compass-phase-card,
  .compass-principle-card,
  .contact-decision-card--action,
  .premium-phase-panel,
  .premium-help-box,
  .premium-panel-footer,
  .compass-protected-panel,
  .compass-north-star,
  .compass-orbit-item,
  .lifecycle-column,
  .value-node,
  .principle,
  .offer,
  .capital,
  .insight,
  .journey-panel,
  .card,
  .content-card,
  .question-card,
  .comparison-card,
  .value-card,
  .principle-card,
  .method-card,
  .insight-card,
  .article-card,
  .phase-card,
  .capability-card,
  .governance-card,
  .framework-card,
  .contact-card
) {
  border-color: #EEC665 !important;
}

/* Yellow information cards use the inverse navy contour. Buttons and small
   accent chips are intentionally excluded. */
body :is(
  .contact-decision-card:not(.contact-decision-card--action),
  .card-yellow,
  .card-gold,
  .yellow-card,
  .gold-card,
  .surface-gold,
  .surface-yellow
) {
  border: 1.5px solid #071b34 !important;
}

/* Removing number blocks must not leave the old reserved vertical gap. */
body .decision-question-card .decision-question-number + h3,
body .compass-phase-card .phase-number + .phase-name {
  margin-top: 0 !important;
}
body .decision-question-card h3 {
  margin-top: 0 !important;
}

/* ================================================================
   v7.79 — site-wide landscape brightness normalization
   The homepage is the visual reference. Keep each page's existing layout,
   surfaces and content; normalize only the shared background treatment.
   ================================================================ */
body.homepage-nature-journey,
body.homepage-nature-journey:not(:has(.home-hero)),
body.compass-method-page.homepage-nature-journey:not(:has(.home-hero)) {
  background-color: #071b34 !important;
  background-image:
    linear-gradient(180deg,
      rgba(3, 17, 34, .14) 0%,
      rgba(3, 18, 38, .22) 48%,
      rgba(3, 18, 38, .30) 100%),
    url("../hero-landscape.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

/* Use one restrained ambient veil everywhere; prevent darker page-specific
   overlays from changing the perceived brightness between tabs. */
body.homepage-nature-journey::before,
body.homepage-nature-journey:not(:has(.home-hero))::before,
body.compass-method-page.homepage-nature-journey::before {
  background: linear-gradient(180deg,
    rgba(7, 27, 52, .04) 0%,
    rgba(7, 27, 52, .01) 45%,
    rgba(7, 27, 52, .10) 100%) !important;
}

@media (max-width: 1080px) {
  body.homepage-nature-journey,
  body.homepage-nature-journey:not(:has(.home-hero)),
  body.compass-method-page.homepage-nature-journey:not(:has(.home-hero)) {
    background-attachment: scroll !important;
    background-position: center top !important;
  }
}

/* ================================================================
   v7.82 — COMPASS Method visibility correction (no redesign)
   ================================================================ */
body.compass-method-page.homepage-nature-journey {
  background-image:
    linear-gradient(180deg, rgba(3,17,34,.03) 0%, rgba(3,18,38,.07) 52%, rgba(3,18,38,.12) 100%),
    url("../hero-landscape.png") !important;
}
body.compass-method-page.homepage-nature-journey::before {
  background: transparent !important;
  opacity: 0 !important;
}

/* Remove every possible hero surface/veil while preserving exact layout. */
body.compass-method-page .page-hero.compass-hero,
body.compass-method-page .page-hero.compass-hero > .container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
}
body.compass-method-page .page-hero.compass-hero::before,
body.compass-method-page .page-hero.compass-hero::after,
body.compass-method-page .page-hero.compass-hero > .container::before,
body.compass-method-page .page-hero.compass-hero > .container::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* Force the interactive phase detail card to the approved navy treatment. */
body.compass-method-page .premium-phase-panel {
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  border: 2px solid #EEC665 !important;
  color: #fffdf7 !important;
}
body.compass-method-page .premium-phase-panel::before,
body.compass-method-page .premium-phase-panel::after {
  content: none !important;
  display: none !important;
}
body.compass-method-page .premium-phase-panel > *,
body.compass-method-page .premium-phase-panel :is(.premium-panel-head,.premium-panel-section,.premium-panel-footer,.premium-panel-actions) {
  background-color: transparent !important;
  background-image: none !important;
}
body.compass-method-page .premium-phase-panel :is(h3,h4,p,li,small,strong,span) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}
body.compass-method-page .premium-phase-panel :is(.premium-panel-phase,.premium-panel-progress,.premium-next-label) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

/* v7.84 — lifecycle comparison: equal cards and content-sized yellow steps */
body.compass-method-page .lifecycle-comparison {
  align-items: stretch !important;
}
body.compass-method-page .lifecycle-column {
  align-self: stretch !important;
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 34px 36px !important;
}
body.compass-method-page .lifecycle-column > span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  opacity: 1 !important;
}
body.compass-method-page .lifecycle-column > p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  opacity: 1 !important;
  margin-top: auto !important;
  padding-top: 28px !important;
  margin-bottom: 0 !important;
}
body.compass-method-page .lifecycle-steps {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-content: flex-start !important;
  align-items: flex-start !important;
  gap: 14px !important;
  width: 100% !important;
  margin-top: 24px !important;
}
body.compass-method-page .lifecycle-steps div {
  flex: 0 0 auto !important;
  width: max-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 10px 16px !important;
  margin: 0 !important;
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  background-image: none !important;
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
  border: 1px solid #071b34 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}
/* Balanced rows: 3 + 1 and 4 + 3, with the shorter row centred. */
body.compass-method-page .lifecycle-column.traditional .lifecycle-steps div:nth-child(4) {
  margin-inline: 34% !important;
}
body.compass-method-page .lifecycle-column.compass .lifecycle-steps div:nth-child(5) {
  margin-left: 8% !important;
}
body.compass-method-page .lifecycle-column.compass .lifecycle-steps div:nth-child(7) {
  margin-right: 8% !important;
}
@media (max-width: 900px) {
  body.compass-method-page .lifecycle-column.traditional .lifecycle-steps div:nth-child(4),
  body.compass-method-page .lifecycle-column.compass .lifecycle-steps div:nth-child(5),
  body.compass-method-page .lifecycle-column.compass .lifecycle-steps div:nth-child(7) {
    margin-inline: 0 !important;
  }
}

/* ================================================================
   v7.85 — lifecycle comparison visibility and compact layout fix
   ================================================================ */
body.compass-method-page .compass-not-lifecycle-section.compass-animate {
  opacity: 1 !important;
  transform: none !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-comparison,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-steps,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-steps > div,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column > span,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column > p {
  opacity: 1 !important;
  filter: none !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-comparison {
  align-items: stretch !important;
  gap: clamp(24px, 3vw, 54px) !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column {
  min-height: 0 !important;
  height: auto !important;
  padding: 28px 30px !important;
  justify-content: flex-start !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column > span {
  display: block !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin: 0 0 18px !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-steps {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-content: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  width: 100% !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-steps > div {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 9px 14px !important;
  margin: 0 !important;
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  background-image: none !important;
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
  border: 1.5px solid #071b34 !important;
  box-shadow: none !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column > p {
  margin: 22px 0 0 !important;
  padding: 0 !important;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}
/* Remove earlier manual row offsets; flex centering handles both rows. */
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.traditional .lifecycle-steps > div:nth-child(4),
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass .lifecycle-steps > div:nth-child(5),
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass .lifecycle-steps > div:nth-child(7) {
  margin: 0 !important;
}


/* ================================================================
   v7.86 — lifecycle contrast and section spacing
   ================================================================ */
body.compass-method-page .compass-not-lifecycle-section {
  padding-bottom: calc(1.3cm + 12px) !important;
}
body.compass-method-page #seven-phases {
  padding-top: 0 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.traditional {
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  background-image: none !important;
  border: 2px solid #071b34 !important;
  color: #071b34 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.traditional > span,
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.traditional > p {
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.traditional .lifecycle-steps > div {
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  border: 1.5px solid #071b34 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass {
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  border: 2px solid #EEC665 !important;
  color: #fffdf7 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass > span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass > p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}
body.compass-method-page .compass-not-lifecycle-section .lifecycle-column.compass .lifecycle-steps > div {
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  background-image: none !important;
  color: #071b34 !important;
  -webkit-text-fill-color: #071b34 !important;
  border: 1.5px solid #071b34 !important;
}

/* ================================================================
   v7.87 — focused COMPASS visibility corrections only
   ================================================================ */

/* The comparison mark should read as a neutral separator. */
body.compass-method-page .lifecycle-divider {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

/* Keep the existing diagram, geometry, size and interaction, but remove
   every enclosing visual surface so the landscape remains visible. */
body.compass-method-page .compass-phases-section,
body.compass-method-page .compass-phases-section > .container,
body.compass-method-page .premium-compass-experience,
body.compass-method-page .premium-compass-stage {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.compass-method-page .premium-compass-experience::before,
body.compass-method-page .premium-compass-experience::after,
body.compass-method-page .premium-compass-stage::before,
body.compass-method-page .premium-compass-stage::after {
  content: none !important;
  display: none !important;
}
body.compass-method-page .premium-compass-svg {
  background: transparent !important;
  background-color: transparent !important;
}

/* Preserve the existing right-panel layout; change only its surface and
   readable foreground palette. */
body.compass-method-page .premium-phase-panel {
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  border: 1.5px solid #EEC665 !important;
  color: #fffdf7 !important;
}
body.compass-method-page .premium-phase-panel::before,
body.compass-method-page .premium-phase-panel::after {
  content: none !important;
  display: none !important;
}
body.compass-method-page .premium-phase-panel :is(h3,h4,p,li,small,strong,span) {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}
body.compass-method-page .premium-phase-panel :is(.premium-panel-phase,.premium-next-label,.premium-help-title) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}


/* ================================================================
   v8.01 — COMPASS principle cards: navy surfaces, no numbering
   ================================================================ */
body.compass-method-page #principles .compass-principle-grid {
  margin-bottom: 0.6cm !important;
}
body.compass-method-page #principles .compass-principle-card {
  background: #071b34 !important;
  background-color: #071b34 !important;
  background-image: none !important;
  border: 1.5px solid #EEC665 !important;
  border-top: 1.5px solid #EEC665 !important;
  color: #fffdf7 !important;
  box-shadow: 0 12px 34px rgba(0, 9, 23, .18) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.compass-method-page #principles .compass-principle-card > span {
  display: none !important;
}
body.compass-method-page #principles .compass-principle-card h3 {
  margin-top: 0 !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.compass-method-page #principles .compass-principle-card p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

/* v8.02 — COMPASS Method spacing and protected-depth cleanup */
body.compass-method-page .compass-capability-section {
  margin-top: 1cm !important;
}

body.compass-method-page .compass-protected-panel {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: clamp(28px, 4vw, 64px) !important;
  padding: clamp(28px, 4vw, 56px) !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.compass-method-page .compass-protected-panel::before,
body.compass-method-page .compass-protected-panel::after {
  content: none !important;
  display: none !important;
}

body.compass-method-page .compass-protected-panel > div {
  max-width: 980px !important;
}

body.compass-method-page .compass-protected-panel .btn.gold {
  justify-self: end !important;
  align-self: end !important;
  display: inline-flex !important;
  width: auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: center !important;
}

@media (max-width: 860px) {
  body.compass-method-page .compass-protected-panel {
    grid-template-columns: 1fr !important;
  }

  body.compass-method-page .compass-protected-panel .btn.gold {
    justify-self: end !important;
  }
}

/* ================================================================
   v8.11 — top-page eyebrow-to-heading spacing
   Keep exactly 1 cm between the yellow hero label and the H1 below it.
   This intentionally does not alter H1-to-introduction spacing.
   ================================================================ */
body :is(
  .page-hero,
  .home-hero,
  .approved-home-hero,
  .compass-hero,
  .decision-nav-hero,
  .decision-question-hero
) > .container > :is(.eyebrow,.kicker,.section-label,.executive-hero-kicker) {
  margin-bottom: 1cm !important;
}

body :is(
  .page-hero,
  .home-hero,
  .approved-home-hero,
  .compass-hero,
  .decision-nav-hero,
  .decision-question-hero
) > .container > :is(.eyebrow,.kicker,.section-label,.executive-hero-kicker) + h1 {
  margin-top: 0 !important;
}

/* Hero structures where the copy is nested one level deeper. */
body :is(.home-hero,.approved-home-hero) .executive-hero-copy > :is(.eyebrow,.kicker,.section-label,.executive-hero-kicker) {
  margin-bottom: 1cm !important;
}
body :is(.home-hero,.approved-home-hero) .executive-hero-copy > :is(.eyebrow,.kicker,.section-label,.executive-hero-kicker) + h1 {
  margin-top: 0 !important;
}

/* ================================================================
   v8.13 — subtle motion for the lifecycle comparison symbol
   ================================================================ */
body.compass-method-page .lifecycle-divider {
  display: inline-block;
  transform-origin: center;
  will-change: transform, opacity, text-shadow;
  animation: viUnequalPulse 2.6s ease-in-out infinite;
}

@keyframes viUnequalPulse {
  0%, 100% {
    opacity: 0.82;
    transform: scale(1);
    text-shadow: 0 0 0 rgba(238, 198, 101, 0);
  }
  50% {
    opacity: 1;
    transform: scale(1.08);
    text-shadow:
      0 0 10px rgba(238, 198, 101, 0.42),
      0 0 22px rgba(238, 198, 101, 0.18);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.compass-method-page .lifecycle-divider {
    animation: none;
    opacity: 1;
    transform: none;
    text-shadow: none;
  }
}

/* ================================================================
   v8.15 — homepage vertical breathing room
   Add 0.5 cm above and below the two highlighted text groups.
   ================================================================ */
body.homepage-nature-journey .executive-hero-copy h1 {
  margin-top: 0.5cm !important;
  margin-bottom: 0.5cm !important;
}

body.homepage-nature-journey .executive-decision-heading {
  margin-top: 0.5cm !important;
  margin-bottom: 0.5cm !important;
}

body.homepage-nature-journey .executive-decision-heading h2 {
  margin-bottom: 0.5cm !important;
}

body.homepage-nature-journey .executive-decision-heading p {
  margin-bottom: 0.5cm !important;
}

/* v8.16 — global card cleanup */
.decision-question-number, .phase-number,
.information-asymmetry-consequences article > span:first-child,
.decision-outcome-grid article > span:first-child,
.compass-principle-card > span:first-child,
.contact-decision-card > span:first-child,
.decision-scenario-card > span:first-child,
.decision-factor-card > span:first-child { display:none !important; }

:is(.card,.decision-card,.decision-factor-card,.decision-question-card,.decision-scenario-card,.compass-principle-card,.compass-phase-card,.contact-decision-card,.information-asymmetry-consequences article,.decision-outcome-grid article) :is(h2,h3,h4,.phase-name) { color:#EEC665 !important; -webkit-text-fill-color:#EEC665 !important; }

/* v8.33 — compact information-panel divider (page-level guarantee) */
body.compass-method-page .premium-phase-panel > h3 { margin-bottom: 0 !important; }
body.compass-method-page .premium-phase-panel .premium-panel-rule {
  margin: 0.3cm 0 !important;
}
body.compass-method-page .premium-phase-panel .premium-panel-purpose {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

/* ================================================================
   v8.54 — How We Help visual alignment
   Align the advisory page with the established viCOMPASSa internal-page
   language without changing its content or information architecture.
   ================================================================ */
body.how-we-help-page .page-hero {
  padding-top: clamp(7.5rem, 12vw, 11rem) !important;
  padding-bottom: clamp(2.4rem, 5vw, 4.6rem) !important;
}

body.how-we-help-page .page-hero .container {
  max-width: 1180px !important;
}

body.how-we-help-page .page-hero .eyebrow {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  letter-spacing: .18em !important;
  margin-bottom: 1.75rem !important;
}

body.how-we-help-page .page-hero h1 {
  max-width: 900px !important;
  margin-bottom: 1.15rem !important;
}

body.how-we-help-page .page-hero p {
  max-width: 780px !important;
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

body.how-we-help-page .how-we-help-offers {
  padding-top: 1.2rem !important;
  padding-bottom: clamp(3rem, 6vw, 5.4rem) !important;
}

body.how-we-help-page .offer-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.35rem !important;
  align-items: stretch !important;
}

body.how-we-help-page .offer {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  padding: 1.65rem 1.55rem 1.5rem !important;
  background: linear-gradient(145deg, rgba(4, 24, 47, .88), rgba(7, 31, 59, .76)) !important;
  border: 1.5px solid rgba(238, 198, 101, .82) !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 34px rgba(0, 8, 20, .22) !important;
  backdrop-filter: blur(7px) saturate(108%) !important;
  -webkit-backdrop-filter: blur(7px) saturate(108%) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
  scroll-margin-top: 8rem !important;
}

body.how-we-help-page .offer:hover {
  transform: translateY(-3px) !important;
  border-color: #EEC665 !important;
  box-shadow: 0 18px 42px rgba(0, 8, 20, .30), 0 0 0 1px rgba(238, 198, 101, .16) !important;
}

body.how-we-help-page .offer h3 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin: 0 0 .95rem !important;
  line-height: 1.18 !important;
}

body.how-we-help-page .offer p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  margin: 0 !important;
  line-height: 1.62 !important;
}

body.how-we-help-page .offer .pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .48rem !important;
  margin-top: auto !important;
  padding-top: 1.25rem !important;
}

body.how-we-help-page .offer .pills span {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  padding: .42rem .72rem !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  background: rgba(4, 24, 47, .54) !important;
  border: 1px solid rgba(238, 198, 101, .66) !important;
  border-radius: 999px !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

body.how-we-help-page .cta-section {
  padding-top: 0 !important;
  padding-bottom: clamp(3rem, 6vw, 5rem) !important;
}

body.how-we-help-page .cta-section .cta-box {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2rem !important;
  padding: 1.6rem 1.75rem !important;
  background: linear-gradient(145deg, rgba(4, 24, 47, .88), rgba(7, 31, 59, .76)) !important;
  border: 1.5px solid rgba(238, 198, 101, .82) !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 34px rgba(0, 8, 20, .20) !important;
}

body.how-we-help-page .cta-section .cta-box h2 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin-bottom: .45rem !important;
}

body.how-we-help-page .cta-section .cta-box p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  margin: 0 !important;
}

body.how-we-help-page .cta-section .btn.gold {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  white-space: nowrap !important;
  padding: .78rem 1.25rem !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  background: rgba(4, 24, 47, .38) !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  transition: background-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease !important;
}

body.how-we-help-page .cta-section .btn.gold:hover,
body.how-we-help-page .cta-section .btn.gold:focus-visible {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
  background: #EEC665 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(0, 8, 20, .25) !important;
}

@media (max-width: 980px) {
  body.how-we-help-page .offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.how-we-help-page .cta-section .cta-box {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

@media (max-width: 640px) {
  body.how-we-help-page .offer-grid {
    grid-template-columns: 1fr !important;
  }
  body.how-we-help-page .offer {
    padding: 1.35rem 1.2rem !important;
    border-radius: 20px !important;
  }
  body.how-we-help-page .cta-section .btn.gold {
    white-space: normal !important;
    text-align: center !important;
  }
}

/* ================================================================
   v8.55 — How We Help hero cleanup and homepage-card styling
   Remove the first-section panel treatment, raise it by 1.5 cm,
   and align advisory cards with the established homepage card style.
   ================================================================ */
body.how-we-help-page .page-hero {
  transform: translateY(-1.5cm) !important;
  margin-bottom: -1.5cm !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.how-we-help-page .page-hero::before,
body.how-we-help-page .page-hero::after,
body.how-we-help-page .page-hero .container {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.how-we-help-page .offer {
  background: rgba(5, 25, 52, .90) !important;
  background-image: none !important;
  border: 1px solid rgba(238, 198, 101, .70) !important;
  border-radius: 22px !important;
  box-shadow: 0 10px 28px rgba(0, 10, 28, .24) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.how-we-help-page .offer:hover,
body.how-we-help-page .offer:focus-within {
  background: rgba(5, 25, 52, .94) !important;
  border-color: #EEC665 !important;
  box-shadow: 0 14px 34px rgba(0, 10, 28, .32), 0 0 20px rgba(238, 198, 101, .20) !important;
}

body.how-we-help-page .offer h3 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

body.how-we-help-page .offer p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}


/* ================================================================
   v8.56 — How We Help specificity correction
   Override legacy internal-page surfaces with page-specific IDs.
   ================================================================ */
body.how-we-help-page #how-we-help-hero,
body.homepage-nature-journey.how-we-help-page #how-we-help-hero {
  position: relative !important;
  transform: translateY(-1.5cm) !important;
  margin-bottom: -1.5cm !important;
  padding-top: clamp(6rem, 10vw, 9.5rem) !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.homepage-nature-journey.how-we-help-page:not(:has(.home-hero)) #how-we-help-hero > .container,
body.how-we-help-page #how-we-help-hero > .container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.how-we-help-page #how-we-help-hero::before,
body.how-we-help-page #how-we-help-hero::after,
body.how-we-help-page #how-we-help-hero > .container::before,
body.how-we-help-page #how-we-help-hero > .container::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

body.homepage-nature-journey.how-we-help-page:not(:has(.home-hero)) #how-we-help-offers .offer,
body.how-we-help-page #how-we-help-offers .offer {
  background: #071B34 !important;
  background-color: #071B34 !important;
  background-image: none !important;
  color: #fffdf7 !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 30px rgba(0, 8, 20, .26) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.homepage-nature-journey.how-we-help-page:not(:has(.home-hero)) #how-we-help-offers .offer:hover,
body.how-we-help-page #how-we-help-offers .offer:hover {
  background: #071B34 !important;
  background-color: #071B34 !important;
  border-color: #EEC665 !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 36px rgba(0, 8, 20, .34), 0 0 20px rgba(238, 198, 101, .18) !important;
}

body.how-we-help-page #how-we-help-offers .offer h3 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}

body.how-we-help-page #how-we-help-offers .offer p {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
}

/* ================================================================
   v8.57 — How We Help commercial content system
   ================================================================ */
body.how-we-help-page #how-we-help-hero .eyebrow { margin-bottom: .5cm !important; }
body.how-we-help-page #how-we-help-hero h1 { margin-bottom: .5cm !important; }
body.how-we-help-page #how-we-help-hero p { max-width: 68rem !important; }
body.how-we-help-page #how-we-help-offers { padding-top: clamp(2.5rem,5vw,5rem) !important; }
body.how-we-help-page .section-intro { max-width: 72rem; margin: 0 auto 2.2rem; text-align: center; }
body.how-we-help-page .section-intro h2 { color:#EEC665; margin:.35rem 0 .7rem; font-size:clamp(2rem,4vw,3.4rem); }
body.how-we-help-page .section-intro p { color:#fffdf7; font-size:clamp(1rem,1.6vw,1.25rem); }
body.how-we-help-page #how-we-help-offers .offer { display:flex !important; flex-direction:column !important; gap:.85rem !important; padding:clamp(1.5rem,2.6vw,2.25rem) !important; }
body.how-we-help-page .offer-kicker { color:#EEC665; text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:800; }
body.how-we-help-page .offer-situation { font-size:1.05rem; line-height:1.6; }
body.how-we-help-page .offer-details { border-top:1px solid rgba(238,198,101,.36); padding-top:.85rem; display:grid; gap:.35rem; color:#fffdf7; }
body.how-we-help-page .offer-details strong { color:#EEC665; }
body.how-we-help-page .offer-link { align-self:flex-start; margin-top:auto; display:inline-flex; align-items:center; gap:.65rem; padding:.7rem 1rem; border:1.4px solid #EEC665; border-radius:999px; color:#EEC665 !important; text-decoration:none; font-weight:800; transition:.22s ease; }
body.how-we-help-page .offer-link:hover,body.how-we-help-page .offer-link:focus-visible { background:#EEC665; color:#071B34 !important; transform:translateY(-2px); }
body.how-we-help-page .offer-link:hover *,body.how-we-help-page .offer-link:focus-visible * { color:#071B34 !important; }

body.service-engagement-page .service-hero { padding:clamp(8rem,13vw,12rem) 0 clamp(3rem,6vw,5rem); background:transparent; }
body.service-engagement-page .service-hero .container { max-width:1100px; }
.service-breadcrumb { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; margin-bottom:1.4rem; color:#fffdf7; }
.service-breadcrumb a { color:#EEC665; }
body.service-engagement-page .service-hero h1 { color:#fffdf7; font-size:clamp(3rem,7vw,6.6rem); line-height:.95; max-width:1000px; margin:.35rem 0 1rem; }
body.service-engagement-page .service-hero p { color:#fffdf7; max-width:840px; font-size:clamp(1.15rem,2vw,1.55rem); line-height:1.55; }
.service-story { padding:0 0 4rem; }
.service-layout { display:grid; gap:1.35rem; max-width:1100px; }
.service-layout article { background:#071B34; border:1.5px solid #EEC665; border-radius:24px; padding:clamp(1.5rem,3vw,2.7rem); color:#fffdf7; box-shadow:0 16px 38px rgba(0,8,20,.28); }
.service-layout h2 { color:#EEC665; font-size:clamp(1.7rem,3vw,2.7rem); margin:.35rem 0 1rem; }
.service-layout p,.service-layout li { color:#fffdf7; line-height:1.65; }
.service-layout ul { margin:0; padding-left:1.25rem; display:grid; gap:.55rem; }
.service-situation,.service-outcome { grid-column:1/-1; }
.service-block { min-height:100%; }
.output-grid { display:flex; flex-wrap:wrap; gap:.7rem; }
.output-grid span { border:1px solid #EEC665; border-radius:999px; padding:.62rem .9rem; color:#EEC665; font-weight:750; }
.service-page-cta { padding:0 0 2rem; }
body.service-engagement-page .cta-box { background:#071B34; border:1.5px solid #EEC665; border-radius:24px; }
.service-pagination { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:1rem; padding-bottom:4rem; }
.service-pagination a { display:inline-flex; justify-content:center; align-items:center; min-height:54px; padding:.65rem 1rem; border:1.4px solid #EEC665; border-radius:999px; color:#EEC665; text-decoration:none; font-weight:800; text-align:center; background:rgba(7,27,52,.78); transition:.2s ease; }
.service-pagination a:first-child { justify-self:start; }
.service-pagination a:last-child { justify-self:end; }
.service-pagination a:hover,.service-pagination a:focus-visible { background:#EEC665; color:#071B34; transform:translateY(-2px); }
.service-return { white-space:nowrap; }
@media (min-width:800px){ .service-layout { grid-template-columns:1fr 1fr; } .service-outputs { grid-column:1/-1; } }
@media (max-width:760px){ .service-pagination{grid-template-columns:1fr;} .service-pagination a,.service-pagination a:first-child,.service-pagination a:last-child{justify-self:stretch;} }


/* ================================================================
   viCOMPASSa v8.58 — compact How We Help cards and CTA states
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-grid {
  align-items: start !important;
}
body.how-we-help-page #how-we-help-offers .offer {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  column-gap: 1rem !important;
  row-gap: .65rem !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  padding: clamp(1.25rem, 2.2vw, 1.8rem) !important;
}
body.how-we-help-page #how-we-help-offers .offer-icon {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 3.25rem;
  height: 3.25rem;
  display: grid;
  place-items: center;
  color: #EEC665;
  margin-top: .1rem;
}
body.how-we-help-page #how-we-help-offers .offer-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.how-we-help-page #how-we-help-offers .offer-kicker,
body.how-we-help-page #how-we-help-offers .offer h3 {
  grid-column: 2;
}
body.how-we-help-page #how-we-help-offers .offer-situation,
body.how-we-help-page #how-we-help-offers .offer-details,
body.how-we-help-page #how-we-help-offers .offer .pills,
body.how-we-help-page #how-we-help-offers .offer-link {
  grid-column: 1 / -1;
}
body.how-we-help-page #how-we-help-offers .offer-details {
  margin: 0 !important;
  padding-top: .65rem !important;
}
body.how-we-help-page #how-we-help-offers .offer .pills {
  margin-top: .1rem !important;
}
body.how-we-help-page #how-we-help-offers .offer-link {
  margin-top: .25rem !important;
  align-self: start !important;
  width: fit-content !important;
}
body.how-we-help-page #how-we-help-offers .offer-link,
body.how-we-help-page #how-we-help-offers .offer-link span {
  color: #EEC665 !important;
}
body.how-we-help-page #how-we-help-offers .offer-link:hover,
body.how-we-help-page #how-we-help-offers .offer-link:focus-visible,
body.how-we-help-page #how-we-help-offers .offer-link:active,
body.how-we-help-page #how-we-help-offers .offer-link:hover span,
body.how-we-help-page #how-we-help-offers .offer-link:focus-visible span,
body.how-we-help-page #how-we-help-offers .offer-link:active span {
  color: #071B34 !important;
}
@media (max-width: 640px) {
  body.how-we-help-page #how-we-help-offers .offer {
    grid-template-columns: 2.75rem 1fr !important;
  }
  body.how-we-help-page #how-we-help-offers .offer-icon {
    width: 2.75rem;
    height: 2.75rem;
  }
}

/* v8.59 — use the six user-supplied How We Help icon assets directly */
body.how-we-help-page #how-we-help-offers .offer-icon img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:.35rem;
}

/* ================================================================
   viCOMPASSa v8.60 — How We Help card hierarchy and spacing
   Audience labels are secondary white copy; remove the internal
   divider and collapse the vertical space through the card body.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-kicker {
  color: #fffdf7 !important;
  -webkit-text-fill-color: #fffdf7 !important;
  margin: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer h3 {
  margin: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer {
  row-gap: .48rem !important;
}
body.how-we-help-page #how-we-help-offers .offer-situation {
  margin: .12rem 0 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details {
  border-top: 0 !important;
  border-bottom: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: .18rem !important;
}
body.how-we-help-page #how-we-help-offers .offer-details::before,
body.how-we-help-page #how-we-help-offers .offer-details::after {
  content: none !important;
  display: none !important;
}
body.how-we-help-page #how-we-help-offers .offer .pills {
  margin: .08rem 0 0 !important;
  padding: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-link {
  margin-top: .12rem !important;
}

/* ================================================================
   viCOMPASSa v8.61 — How We Help card spacing correction
   Remove the residual middle gap above the capability tags and give
   each yellow text element clear 0.4 cm breathing room.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer {
  grid-auto-rows: max-content !important;
  align-content: start !important;
}
body.how-we-help-page #how-we-help-offers .offer h3 {
  margin-top: .4cm !important;
  margin-bottom: .4cm !important;
}
body.how-we-help-page #how-we-help-offers .offer-details {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details strong {
  display: block !important;
  margin-top: .4cm !important;
  margin-bottom: .4cm !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details span {
  display: block !important;
  margin: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer .pills {
  margin-top: .4cm !important;
  padding-top: 0 !important;
}

/* ================================================================
   viCOMPASSa v8.62 — compact What you gain spacing
   Keep exactly 0.5 cm between the label and the capability tags.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-details {
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details strong {
  margin-bottom: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details span {
  display: none !important;
}
body.how-we-help-page #how-we-help-offers .offer .pills {
  margin-top: 0.5cm !important;
  padding-top: 0 !important;
  align-self: start !important;
}

/* ================================================================
   viCOMPASSa v8.63 — How We Help card header alignment
   Audience label spans the full card; icon aligns with engagement title.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-kicker {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
}
body.how-we-help-page #how-we-help-offers .offer-icon {
  grid-column: 1 !important;
  grid-row: 2 !important;
  align-self: center !important;
  margin-top: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer h3 {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: center !important;
}
body.how-we-help-page #how-we-help-offers .offer-situation {
  grid-row: 3 !important;
}
body.how-we-help-page #how-we-help-offers .offer-details {
  grid-row: 4 !important;
}
body.how-we-help-page #how-we-help-offers .offer .pills {
  grid-row: 5 !important;
}
body.how-we-help-page #how-we-help-offers .offer-link {
  grid-row: 6 !important;
}

/* ================================================================
   viCOMPASSa v8.64 — Explore engagement CTA colour states
   Keep text and arrow yellow normally; both switch to navy on hover.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-link,
body.how-we-help-page #how-we-help-offers .offer-link > span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.how-we-help-page #how-we-help-offers .offer-link:hover,
body.how-we-help-page #how-we-help-offers .offer-link:focus-visible,
body.how-we-help-page #how-we-help-offers .offer-link:active,
body.how-we-help-page #how-we-help-offers .offer-link:hover > span,
body.how-we-help-page #how-we-help-offers .offer-link:focus-visible > span,
body.how-we-help-page #how-we-help-offers .offer-link:active > span {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}

/* ================================================================
   viCOMPASSa v8.65 — equal How We Help cards and CTA spacing
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-grid {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
body.how-we-help-page #how-we-help-offers .offer {
  height: 100% !important;
  min-height: 100% !important;
  align-self: stretch !important;
}
body.how-we-help-page #how-we-help-offers .offer-link {
  margin-top: 0.5cm !important;
}

/* ================================================================
   viCOMPASSa v8.66 — anchor engagement CTAs to card bottoms
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer {
  grid-template-rows: max-content max-content max-content max-content max-content 1fr max-content !important;
  align-content: stretch !important;
}
body.how-we-help-page #how-we-help-offers .offer-link {
  grid-row: 7 !important;
  align-self: end !important;
  margin-top: .5cm !important;
}

/* ================================================================
   viCOMPASSa v8.68 — lower How We Help audience labels
   Move the full-width white audience copy down by a total of 1.1 cm.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-kicker {
  margin-top: 1.1cm !important;
}

/* ================================================================
   viCOMPASSa v8.69 — correct How We Help description spacing
   Revert the earlier audience-label offset and move only the white
   descriptive paragraph below each yellow title down by 0.5 cm.
   ================================================================ */
body.how-we-help-page #how-we-help-offers .offer-kicker {
  margin-top: 0 !important;
}
body.how-we-help-page #how-we-help-offers .offer-situation {
  margin-top: 0.5cm !important;
}

/* ================================================================
   v8.70 — How We Help hero readability spacing
   ================================================================ */
body.how-we-help-page #how-we-help-hero .eyebrow {
  margin-bottom: .5cm !important;
}
body.how-we-help-page #how-we-help-hero h1 {
  margin-bottom: .5cm !important;
}
body.how-we-help-page #how-we-help-hero .hero-intro {
  max-width: none !important;
  line-height: 1.6 !important;
}

/* ================================================================
   v8.71 — How We Help introduction spacing and three-line text
   ================================================================ */
body.how-we-help-page #how-we-help-hero .eyebrow {
  margin-bottom: .5cm !important;
}
body.how-we-help-page #how-we-help-hero h1 {
  margin-bottom: 1cm !important;
}
body.how-we-help-page #how-we-help-hero .hero-intro {
  max-width: none !important;
  line-height: 1.6 !important;
}


/* ================================================================
   v8.72 — Balanced How We Help introduction and reduced space below
   ================================================================ */
body.how-we-help-page #how-we-help-hero .hero-intro {
  max-width: none !important;
  line-height: 1.6 !important;
  margin-bottom: -1.3cm !important;
}

/* ================================================================
   v8.74 — How We Help heading spacing
   Add 1 cm before the primary heading.
   ================================================================ */
body.how-we-help-page #how-we-help-hero .eyebrow {
  margin-bottom: 1cm !important;
}

/* v8.75 — How We Help final CTA: bottom-right placement */
body.how-we-help-page .cta-section .cta-box {
  align-items: stretch !important;
  flex-direction: column !important;
}
body.how-we-help-page .cta-section .btn.gold {
  align-self: flex-end !important;
  margin-top: 1rem !important;
  margin-left: auto !important;
}


/* ================================================================
   v8.76 — Engagement subpages: remove breadcrumb and raise content
   ================================================================ */
body.service-engagement-page .service-hero {
  padding-top: calc(clamp(8rem, 13vw, 12rem) - 2cm) !important;
}

/* ================================================================
   v8.77 — Engagement subpages: spacing after Advisory engagement
   ================================================================ */
body.service-engagement-page .service-hero > .container > .eyebrow {
  margin-bottom: 1.4cm !important;
}

/* v8.78 — engagement pagination hover contrast */
.service-pagination a:hover,
.service-pagination a:focus-visible,
.service-pagination a:active,
.service-pagination a:hover *,
.service-pagination a:focus-visible *,
.service-pagination a:active * {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}


/* v8.79 — service pagination labels: explicit hover contrast */
.service-pagination .service-nav-label {
  display:inline-block;
  color:#EEC665 !important;
  -webkit-text-fill-color:#EEC665 !important;
}
.service-pagination a:hover .service-nav-label,
.service-pagination a:focus-visible .service-nav-label,
.service-pagination a:active .service-nav-label {
  color:#071B34 !important;
  -webkit-text-fill-color:#071B34 !important;
}


/* ================================================================
   viCOMPASSa v8.80 — engagement closing CTA alignment
   Indent closing-panel content and align the discussion CTA bottom-right.
   ================================================================ */
body.service-engagement-page .service-page-cta .cta-box {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas:
    "copy copy"
    ". cta" !important;
  align-items: end !important;
  column-gap: 2rem !important;
  row-gap: 1.35rem !important;
  padding: 1.15cm 1.3cm 1cm !important;
  min-height: 0 !important;
  height: auto !important;
  text-align: left !important;
}
body.service-engagement-page .service-page-cta .cta-box > div {
  grid-area: copy !important;
  min-width: 0 !important;
}
body.service-engagement-page .service-page-cta .cta-box > div > :first-child {
  margin-top: 0 !important;
}
body.service-engagement-page .service-page-cta .cta-box > div > :last-child {
  margin-bottom: 0 !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta {
  grid-area: cta !important;
  justify-self: end !important;
  align-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 52px !important;
  padding: .72rem 1.35rem !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 999px !important;
  background: rgba(7,27,52,.82) !important;
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  transition: background-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta span {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta:hover,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus-visible,
body.service-engagement-page .service-page-cta .service-discuss-cta:active {
  background: #EEC665 !important;
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(0,8,20,.24) !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta:hover span,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus-visible span,
body.service-engagement-page .service-page-cta .service-discuss-cta:active span {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}
@media (max-width: 760px) {
  body.service-engagement-page .service-page-cta .cta-box {
    grid-template-columns: 1fr !important;
    grid-template-areas: "copy" "cta" !important;
    padding: .85cm .75cm !important;
  }
  body.service-engagement-page .service-page-cta .service-discuss-cta {
    justify-self: stretch !important;
    width: 100% !important;
  }
}

/* ================================================================
   viCOMPASSa v8.81 — compact engagement closing panel + fixed primary CTA
   ================================================================ */
body.service-engagement-page .service-page-cta {
  padding-bottom: .55rem !important;
}
body.service-engagement-page .service-page-cta .cta-box {
  row-gap: .85rem !important;
  padding-bottom: .55cm !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta,
body.service-engagement-page .service-page-cta .service-discuss-cta:hover,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus-visible,
body.service-engagement-page .service-page-cta .service-discuss-cta:active {
  background: #EEC665 !important;
  border-color: #EEC665 !important;
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
  transform: none !important;
  box-shadow: none !important;
}
body.service-engagement-page .service-page-cta .service-discuss-cta span,
body.service-engagement-page .service-page-cta .service-discuss-cta:hover span,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus span,
body.service-engagement-page .service-page-cta .service-discuss-cta:focus-visible span,
body.service-engagement-page .service-page-cta .service-discuss-cta:active span {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}

/* ================================================================
   v8.83 permanent primary style for every Discuss Your AI Decision CTA
   Loaded from main.css so it applies on every page.
   ================================================================ */
html body a.primary-yellow-cta,
html body a.primary-yellow-cta:link,
html body a.primary-yellow-cta:visited,
html body main a.primary-yellow-cta,
html body .site-header a.primary-yellow-cta,
html body .cta-box a.primary-yellow-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: max-content !important;
  padding: 0.72em 1.55em !important;
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 999px !important;
  color: #071B34 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
}
html body a.primary-yellow-cta > span,
html body a.primary-yellow-cta .primary-yellow-cta__label,
html body main a.primary-yellow-cta > span,
html body .site-header a.primary-yellow-cta > span {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}
html body a.primary-yellow-cta:hover,
html body a.primary-yellow-cta:focus,
html body a.primary-yellow-cta:focus-visible,
html body a.primary-yellow-cta:active,
html body main a.primary-yellow-cta:hover,
html body .site-header a.primary-yellow-cta:hover,
html body .cta-box a.primary-yellow-cta:hover {
  background: #EEC665 !important;
  background-color: #EEC665 !important;
  border-color: #EEC665 !important;
  color: #071B34 !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
}
html body a.primary-yellow-cta:hover > span,
html body a.primary-yellow-cta:focus > span,
html body a.primary-yellow-cta:focus-visible > span,
html body a.primary-yellow-cta:active > span,
html body a.primary-yellow-cta:hover .primary-yellow-cta__label,
html body a.primary-yellow-cta:focus .primary-yellow-cta__label,
html body a.primary-yellow-cta:focus-visible .primary-yellow-cta__label,
html body a.primary-yellow-cta:active .primary-yellow-cta__label {
  color: #071B34 !important;
  -webkit-text-fill-color: #071B34 !important;
}

/* v8.84 final inline-compatible fallback for every primary Discuss CTA */
html body a.primary-yellow-cta[style],
html body a.primary-yellow-cta[style]:hover,
html body a.primary-yellow-cta[style]:focus,
html body a.primary-yellow-cta[style]:focus-visible,
html body a.primary-yellow-cta[style]:active {
  background:#EEC665 !important;
  background-color:#EEC665 !important;
  border-color:#EEC665 !important;
  color:#071B34 !important;
  -webkit-text-fill-color:#071B34 !important;
  box-shadow:none !important;
  transform:none !important;
  filter:none !important;
}
html body a.primary-yellow-cta[style] span,
html body a.primary-yellow-cta[style]:hover span,
html body a.primary-yellow-cta[style]:focus span,
html body a.primary-yellow-cta[style]:focus-visible span,
html body a.primary-yellow-cta[style]:active span {
  color:#071B34 !important;
  -webkit-text-fill-color:#071B34 !important;
}


/* ================================================================
   v8.86 — larger desktop header tabs after navigation consolidation
   ================================================================ */
@media (min-width: 1501px) {
  .site-header .primary-nav {
    gap: 24px !important;
  }
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 1.06rem !important;
    line-height: 1.2 !important;
    letter-spacing: 0.005em !important;
  }
}

@media (min-width: 1081px) and (max-width: 1500px) {
  .site-header .primary-nav {
    gap: 14px !important;
  }
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 0.94rem !important;
    line-height: 1.2 !important;
  }
}

/* ================================================================
   v8.87 — stronger desktop header tab scale and spacing
   ================================================================ */
@media (min-width: 1501px) {
  .site-header .primary-nav {
    gap: 30px !important;
  }
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 1.16rem !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.006em !important;
  }
}

@media (min-width: 1081px) and (max-width: 1500px) {
  .site-header .primary-nav {
    gap: 18px !important;
  }
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 1.01rem !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
  }
}

/* ================================================================
   v8.88 — additional 10% desktop header tab scale
   ================================================================ */
@media (min-width: 1501px) {
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 1.276rem !important;
  }
}

@media (min-width: 1081px) and (max-width: 1500px) {
  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger {
    font-size: 1.111rem !important;
  }
}


/* v8.89 — Insights page aligned with the established viCOMPASSa visual system */
body.insights-page main > section {
  background: transparent !important;
}
body.insights-page .page-hero {
  padding-top: clamp(2.5rem, 5vw, 4.75rem) !important;
  padding-bottom: clamp(2.2rem, 4vw, 3.8rem) !important;
}
body.insights-page .page-hero .container,
body.insights-page main > section > .container {
  max-width: min(1180px, calc(100% - 3rem));
}
body.insights-page .page-hero .eyebrow,
body.insights-page .section-head .eyebrow {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin-bottom: .8rem !important;
}
body.insights-page .page-hero h1,
body.insights-page .section-head h2 {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin-bottom: 1rem !important;
}
body.insights-page .page-hero p,
body.insights-page .section-head p {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  max-width: 900px;
  line-height: 1.65;
}
body.insights-page .section-head {
  margin-bottom: 1.35rem !important;
}
body.insights-page main > section:not(.page-hero) {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
body.insights-page #decision-stories {
  padding-bottom: .65rem !important;
}
body.insights-page #decision-stories + section {
  padding-top: 1.25rem !important;
}
body.insights-page .insights-grid,
body.insights-page .capital-grid {
  gap: 1.15rem !important;
  align-items: stretch;
}
body.insights-page .insight,
body.insights-page .capital,
body.insights-page #briefs .card {
  background: rgba(7, 27, 52, .94) !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 18px !important;
  padding: 1.35rem 1.4rem !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.16) !important;
  height: 100%;
  transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease;
}
body.insights-page .insight:hover,
body.insights-page .capital:hover,
body.insights-page #briefs .card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(0,0,0,.24) !important;
  background: rgba(7, 27, 52, .98) !important;
}
body.insights-page .insight h3,
body.insights-page .capital h3,
body.insights-page #briefs .card strong {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
  margin: 0 0 .75rem !important;
  line-height: 1.25;
}
body.insights-page .insight p,
body.insights-page .capital p,
body.insights-page #briefs .card p {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  margin: 0 !important;
  line-height: 1.6;
}
body.insights-page #briefs .card {
  max-width: none !important;
}
@media (max-width: 720px) {
  body.insights-page .page-hero .container,
  body.insights-page main > section > .container {
    max-width: calc(100% - 1.5rem);
  }
  body.insights-page main > section:not(.page-hero) {
    padding-top: 1.8rem !important;
    padding-bottom: 1.8rem !important;
  }
}


/* ================================================================
   v8.90 — definitive Insights homepage-card treatment
   Remove the first-section panel and force every content card to the
   established navy / yellow contour / white text visual system.
   ================================================================ */
body.insights-page #insights-hero,
body.insights-page #insights-hero::before,
body.insights-page #insights-hero::after,
body.insights-page #insights-hero > .container,
body.insights-page #insights-hero > .container::before,
body.insights-page #insights-hero > .container::after {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.insights-page #insights-hero > .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.insights-page .insights-grid > .insight,
body.insights-page .capital-grid > .capital,
body.insights-page #briefs .card {
  background: #071B34 !important;
  background-color: #071B34 !important;
  background-image: none !important;
  border: 1.5px solid #EEC665 !important;
  border-radius: 18px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.16) !important;
}
body.insights-page .insights-grid > .insight h1,
body.insights-page .insights-grid > .insight h2,
body.insights-page .insights-grid > .insight h3,
body.insights-page .insights-grid > .insight h4,
body.insights-page .capital-grid > .capital h1,
body.insights-page .capital-grid > .capital h2,
body.insights-page .capital-grid > .capital h3,
body.insights-page .capital-grid > .capital h4,
body.insights-page #briefs .card strong {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
body.insights-page .insights-grid > .insight p,
body.insights-page .insights-grid > .insight li,
body.insights-page .insights-grid > .insight span,
body.insights-page .capital-grid > .capital p,
body.insights-page .capital-grid > .capital li,
body.insights-page .capital-grid > .capital span,
body.insights-page #briefs .card p,
body.insights-page #briefs .card li,
body.insights-page #briefs .card span {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.insights-page .insights-grid > .insight:hover,
body.insights-page .capital-grid > .capital:hover,
body.insights-page #briefs .card:hover {
  background: #071B34 !important;
  background-color: #071B34 !important;
  color: #fff !important;
}

/* ================================================================
   v8.91 — Insights cards remain navy in every interaction state
   ================================================================ */
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card),
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):link,
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):visited,
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):hover,
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):focus,
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):focus-visible,
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):active {
  background: #071B34 !important;
  background-color: #071B34 !important;
  background-image: none !important;
  border: 1.5px solid #EEC665 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card) :is(h1,h2,h3,h4,strong) {
  color: #EEC665 !important;
  -webkit-text-fill-color: #EEC665 !important;
}
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card) :is(p,li,span) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body.insights-page :is(.insights-grid > .insight, .capital-grid > .capital, #briefs .card):hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.24) !important;
}

/* ================================================================
   v8.92 — Insights hero eyebrow spacing
   ================================================================ */
body.insights-page #insights-hero > .container > .eyebrow {
  margin-bottom: 1.5cm !important;
}

/* ================================================================
   v8.97 — stable, balanced desktop header
   ================================================================ */
@media (min-width: 1081px) {
  .site-header .site-shell.nav-shell {
    padding-left: 0.55cm !important;
    padding-right: 0.45cm !important;
    column-gap: 0.45cm !important;
    overflow: visible !important;
  }

  .site-header .official-brand-lockup {
    margin-left: 0.18cm !important;
    transform: none !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
  }

  .site-header .official-brand-lockup > img {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .site-header .primary-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: clamp(1.25rem, 1.65vw, 2rem) !important;
    margin-left: auto !important;
    margin-right: 0.25cm !important;
    min-width: 0 !important;
  }

  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > button.language-trigger,
  .site-header .primary-nav > .language-menu > button.language-trigger > span:not(.menu-chevron),
  .site-header .primary-nav > .nav-group > a > span:not(:last-child) {
    font-family: inherit !important;
    font-size: 1.08rem !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
  }

  .site-header .primary-nav .menu-chevron,
  .site-header .primary-nav > .nav-group > a > span:last-child {
    font-size: 0.82em !important;
    line-height: 1 !important;
  }

  .site-header .header-cta,
  .site-header .nav-cta,
  .site-header a[href*="contact"] {
    flex: 0 0 auto !important;
  }
}

/* ================================================================
   v8.98 — controlled desktop header typography and 0.7 cm spacing
   Only normalize the five top-level labels and their horizontal gap.
   ================================================================ */
@media (min-width: 1081px) {
  .site-header .primary-nav {
    gap: 0.7cm !important;
  }

  .site-header .primary-nav > .nav-group > a,
  .site-header .primary-nav > .plain-link,
  .site-header .primary-nav > .language-menu > .language-trigger,
  .site-header .primary-nav > .language-menu > .language-trigger > span:not(.menu-chevron) {
    font-family: inherit !important;
    font-size: 1.08rem !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
  }

  .site-header .primary-nav > .language-menu > .language-trigger {
    padding: 0 !important;
    min-height: 0 !important;
  }

  .site-header .primary-nav .menu-chevron,
  .site-header .primary-nav > .nav-group > a > span:last-child {
    font-size: 0.82em !important;
    line-height: 1 !important;
  }
}

/* ================================================================
   v9.03 layered brand motion — rotate only the original white orbit
   ================================================================ */
.site-header .official-brand-lockup {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
  min-width: 0 !important;
  height: 92px !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.site-header .official-brand-lockup::before,
.site-header .official-brand-lockup::after { content: none !important; display: none !important; }
.site-header .official-brand-lockup > .vicompassa-motion-icon {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: 64px;
  height: 92px;
  overflow: visible;
}
.site-header .official-brand-lockup > .vicompassa-motion-icon > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}
.site-header .vicompassa-motion-ring {
  z-index: 1;
  transform-origin: 50% 50%;
  animation: vicompassa-ring-turn 22s linear infinite;
  will-change: transform;
}
.site-header .vicompassa-motion-gold { z-index: 2; }
.site-header .official-brand-lockup > .vicompassa-motion-wordmark {
  position: static !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 286px !important;
  height: auto !important;
  max-width: none !important;
  max-height: 78px !important;
  object-fit: contain !important;
  object-position: left center !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}
.site-header .official-brand-lockup:hover .vicompassa-motion-ring,
.site-header .official-brand-lockup:focus-visible .vicompassa-motion-ring {
  animation-play-state: paused;
}
@keyframes vicompassa-ring-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .site-header .vicompassa-motion-ring { animation: none !important; }
}
@media (max-width: 1180px) {
  .site-header .official-brand-lockup { height: 80px !important; gap: 8px !important; }
  .site-header .official-brand-lockup > .vicompassa-motion-icon { width: 56px; height: 80px; }
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark { width: 244px !important; max-height: 68px !important; }
}
@media (max-width: 980px) {
  .site-header .official-brand-lockup { height: 68px !important; }
  .site-header .official-brand-lockup > .vicompassa-motion-icon { width: 48px; height: 68px; }
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark { width: 208px !important; max-height: 58px !important; }
}
@media (max-width: 620px) {
  .site-header .official-brand-lockup { height: 56px !important; gap: 6px !important; }
  .site-header .official-brand-lockup > .vicompassa-motion-icon { width: 40px; height: 56px; }
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark { width: 166px !important; max-height: 48px !important; }
}


/* ================================================================
   v9.04 — checkpoint-to-North-Star pulse motion
   Keep the complete icon geometry static; animate only a soft gold
   highlight travelling upward through the checkpoint path.
   ================================================================ */
.site-header .vicompassa-motion-ring {
  animation: none !important;
  transform: none !important;
}
.site-header .vicompassa-motion-icon::before {
  content: "";
  position: absolute;
  z-index: 3;
  width: 11px;
  height: 11px;
  left: 14%;
  top: 77%;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle,
    rgba(255,255,255,.98) 0 14%,
    rgba(255,224,132,.95) 30%,
    rgba(238,198,101,.72) 52%,
    rgba(238,198,101,0) 76%);
  filter: drop-shadow(0 0 5px rgba(255,214,107,.95));
  transform: translate(-50%, -50%) scale(.65);
  animation: vicompassa-checkpoint-pulse 7.5s ease-in-out infinite;
}
.site-header .vicompassa-motion-icon::after {
  content: "";
  position: absolute;
  z-index: 3;
  width: 31px;
  height: 31px;
  left: 76%;
  top: 8%;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle,
    rgba(255,245,208,.82) 0 13%,
    rgba(255,209,88,.46) 34%,
    rgba(238,198,101,.18) 56%,
    rgba(238,198,101,0) 76%);
  filter: blur(.4px) drop-shadow(0 0 7px rgba(255,204,64,.82));
  transform: translate(-50%, -50%) scale(.55);
  animation: vicompassa-star-arrival 7.5s ease-in-out infinite;
}
.site-header .official-brand-lockup:hover .vicompassa-motion-icon::before,
.site-header .official-brand-lockup:hover .vicompassa-motion-icon::after,
.site-header .official-brand-lockup:focus-visible .vicompassa-motion-icon::before,
.site-header .official-brand-lockup:focus-visible .vicompassa-motion-icon::after {
  animation-play-state: paused;
}
@keyframes vicompassa-checkpoint-pulse {
  0%, 9%   { left: 14%; top: 77%; opacity: 0; transform: translate(-50%,-50%) scale(.55); }
  12%      { opacity: .98; transform: translate(-50%,-50%) scale(1); }
  20%      { left: 22%; top: 67%; opacity: .94; }
  29%      { left: 30%; top: 57%; opacity: .94; }
  38%      { left: 38%; top: 47%; opacity: .94; }
  47%      { left: 46%; top: 37%; opacity: .94; }
  56%      { left: 55%; top: 28%; opacity: .94; }
  65%      { left: 65%; top: 19%; opacity: .98; transform: translate(-50%,-50%) scale(1.05); }
  72%      { left: 75%; top: 9%; opacity: .92; transform: translate(-50%,-50%) scale(1.15); }
  78%,100% { left: 75%; top: 9%; opacity: 0; transform: translate(-50%,-50%) scale(.55); }
}
@keyframes vicompassa-star-arrival {
  0%, 67%  { opacity: 0; transform: translate(-50%,-50%) scale(.5); }
  72%      { opacity: .92; transform: translate(-50%,-50%) scale(1.12); }
  78%      { opacity: .42; transform: translate(-50%,-50%) scale(.88); }
  84%,100% { opacity: 0; transform: translate(-50%,-50%) scale(.58); }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .vicompassa-motion-icon::before,
  .site-header .vicompassa-motion-icon::after { animation: none !important; display: none !important; }
}

/* ================================================================
   v9.05 — restore the earlier wordmark/tagline proportions
   Keep the icon and checkpoint animation unchanged.
   ================================================================ */
.site-header .official-brand-lockup > .vicompassa-motion-wordmark {
  width: 257px !important;
  max-height: 70px !important;
}
@media (max-width: 1180px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 220px !important;
    max-height: 61px !important;
  }
}
@media (max-width: 980px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 187px !important;
    max-height: 52px !important;
  }
}
@media (max-width: 620px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 149px !important;
    max-height: 43px !important;
  }
}

/* ================================================================
   v9.06 — visibly smaller wordmark and tagline block
   Keep icon, checkpoint animation, navigation and CTA unchanged.
   ================================================================ */
.site-header .official-brand-lockup > .vicompassa-motion-wordmark {
  width: 206px !important;
  max-height: 56px !important;
}
@media (max-width: 1180px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 176px !important;
    max-height: 49px !important;
  }
}
@media (max-width: 980px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 150px !important;
    max-height: 42px !important;
  }
}
@media (max-width: 620px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 119px !important;
    max-height: 34px !important;
  }
}

/* ================================================================
   v9.07 — reduce wordmark and tagline block by 15%
   Keep icon, checkpoint animation, navigation and CTA unchanged.
   ================================================================ */
.site-header .official-brand-lockup > .vicompassa-motion-wordmark {
  width: 175px !important;
  max-height: 48px !important;
}
@media (max-width: 1180px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 150px !important;
    max-height: 42px !important;
  }
}
@media (max-width: 980px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 128px !important;
    max-height: 36px !important;
  }
}
@media (max-width: 620px) {
  .site-header .official-brand-lockup > .vicompassa-motion-wordmark {
    width: 101px !important;
    max-height: 29px !important;
  }
}

/* ================================================================
   viCOMPASSa v10.30 — engagement closing panel cleanup
   Remove the closing CTA panel background/blur and add 0.5 cm before
   the Previous / Return / Next navigation row on every engagement page.
   ================================================================ */
body.service-engagement-page .service-page-cta .cta-box {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

body.service-engagement-page .service-pagination {
  margin-top: 0.5cm !important;
}

/* v11.05 — Swedish confidence strip text fit */
@media (min-width: 900px) {
  html[lang="sv"] body.homepage-nature-journey
  .executive-confidence-shell article:first-child {
    grid-template-columns: 52px minmax(0, 1fr) !important;
    column-gap: 4px !important;
  }
  html[lang="sv"] body.homepage-nature-journey
  .executive-confidence-shell article:first-child > div {
    margin-left: -4px !important;
    min-width: 0 !important;
  }
}

/* v11.08 — centre the first Swedish confidence-card copy. */
@media (min-width: 900px) {
  html[lang="sv"] body.homepage-nature-journey
  .executive-confidence-shell article:first-child {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    column-gap: 12px !important;
  }
  html[lang="sv"] body.homepage-nature-journey
  .executive-confidence-shell article:first-child > div {
    margin-left: 0 !important;
    min-width: 0 !important;
    width: max-content !important;
    max-width: 100% !important;
    justify-self: center !important;
    text-align: left !important;
  }
}


/* v11.37 — crisp active-language flag in the header tab */
.site-header .primary-nav > .language-menu > .language-trigger > .language-current-flag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.45rem !important;
  height: 0.97rem !important;
  min-width: 1.45rem !important;
  flex: 0 0 1.45rem !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 2px !important;
  font-size: 0 !important;
  line-height: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.site-header .primary-nav > .language-menu > .language-trigger > .language-current-flag > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
}
