/* Homepage-only overlay header. Inner pages remain the original white sticky header. */
body:has(main > .hero.hero-editorial) > header.journey-header {
  position: fixed !important;
  top: 0; left: 0; right: 0;
  z-index: 100;
  width: 100%;
  background: transparent !important;
  border-bottom: 1px solid transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  transition: background-color .26s ease, border-color .26s ease, box-shadow .26s ease;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .brand-company-name,
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .navlinks a,
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .nav-job,
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .mobile-menu,
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .locale-select {
  color: #fff !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .brandmark img:not([hidden]) {
  filter: brightness(0) invert(1) !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .navlinks a.active:after {
  background: white !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .navright .cta {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.88) !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .navright .cta:hover {
  color: #102334 !important;
  background: #fff !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:not(.is-scrolled):not(:has(.navlinks.open)) .locale-select option {
  color: #161b22;
  background: #fff;
}
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) {
  background: rgba(248,250,253,.76) !important;
  border-bottom: 1px solid rgba(255,255,255,.42) !important;
  box-shadow: 0 8px 32px rgba(9,23,42,.095) !important;
  -webkit-backdrop-filter: blur(22px) saturate(165%) !important;
  backdrop-filter: blur(22px) saturate(165%) !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .brand-company-name,
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .navlinks a,
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .nav-job,
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .locale-select,
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .mobile-menu {
  color: #172333 !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .brandmark img:not([hidden]) {
  filter: none !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .navright .cta {
  background: #2169ef !important;
  color: #fff !important;
  border: 1px solid #2169ef !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header:is(.is-scrolled,:has(.navlinks.open)) .navright .cta:hover {
  background: #104ec6 !important;
  border-color: #104ec6 !important;
}
body:has(main > .hero.hero-editorial) > header.journey-header .navright a:focus-visible,
body:has(main > .hero.hero-editorial) > header.journey-header .brand:focus-visible,
body:has(main > .hero.hero-editorial) > header.journey-header .mobile-menu:focus-visible,
body:has(main > .hero.hero-editorial) > header.journey-header .locale-select:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
@media(max-width:1050px) {
  body:has(main > .hero.hero-editorial) > header.journey-header .navlinks.open {
    background: #fff !important;
    border-color: #e3e5e8 !important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body:has(main > .hero.hero-editorial) > header.journey-header { transition: none; }
}

/* Glass header on inner pages, too: the homepage's transparent-at-top state is unchanged.
   Loaded after simplicity.css, which otherwise forces an opaque, non-blurred navbar. */
body:not(:has(main > .hero.hero-editorial)) > header.journey-header.is-scrolled {
  background: rgba(248,250,253,.76) !important;
  border-bottom: 1px solid rgba(255,255,255,.42) !important;
  box-shadow: 0 8px 32px rgba(9,23,42,.095) !important;
  -webkit-backdrop-filter: blur(22px) saturate(165%) !important;
  backdrop-filter: blur(22px) saturate(165%) !important;
  transition: background-color .26s ease, border-color .26s ease, box-shadow .26s ease;
}
/* In browsers without backdrop filters, prioritize text contrast. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  body > header.journey-header.is-scrolled {
    background: rgba(248,250,253,.97) !important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body > header.journey-header.is-scrolled {transition:none!important}
}

/* Shared navigation typography: consistent on initial hero and scrolled header. */
.journey-header .brand-company-name{font-size:13px}
.journey-header .navlinks a{font-size:12px}
.journey-header .nav-job{font-size:12px!important}
.journey-header .locale-select{font-size:11px!important}
.journey-header .navright>.cta{font-size:12px}
@media(max-width:720px){
 .journey-header .brand-company-name{font-size:12px}
 .journey-header .navlinks.open a{font-size:13px}
}
