/* Transparent over the hero; a soft white surface appears as the page moves. */
.header.header--overlay .header-inner {
  width:82.6%; max-width:1800px; padding-inline:0;
}
.header.header--overlay,.header.header--overlay.is-scrolled {
  --header-solid:0; --header-ink:#fff; --header-hover:#fff;
  --header-button-bg:#fff; --header-button-ink:#102c47;
  color:var(--header-ink); background:transparent; box-shadow:none;
  backdrop-filter:none; -webkit-backdrop-filter:none; isolation:isolate;
  transition:color .36s ease;
}
.header.header--overlay.is-scrolled {
  --header-solid:1; --header-ink:#102c47; --header-hover:#0753a2;
  --header-button-bg:#0753a2; --header-button-ink:#fff;
}
.header.header--overlay::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:rgba(255,255,255,.97); backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px); opacity:var(--header-solid);
  box-shadow:0 1px 0 #102c4710,0 7px 24px #102c4708;
  transition:opacity .42s cubic-bezier(.22,.61,.36,1);
}
.header--overlay .brand { color:inherit; }
.header--overlay .logo img {
  filter:url(#white-logo); opacity:calc(1 - var(--header-solid));
  transition:opacity .36s ease;
}
.header--overlay .logo img.logo-color {
  filter:url(#transparent-logo); opacity:var(--header-solid);
}
.header--overlay .brand .logo,.header--overlay .brand:is(:hover,:focus-visible) .logo {
  opacity:1; filter:none;
}
.header--overlay .brand-name,.header.header--overlay nav>a,
.header--overlay .nav-dropdown>summary,.header--overlay .language {
  opacity:1; text-shadow:none; transition:color .36s ease,text-shadow .2s ease;
}
.header--overlay .brand:is(:hover,:focus-visible) .brand-name,
.header.header--overlay nav>a:is(:hover,:focus-visible),
.header--overlay .nav-dropdown>summary:is(:hover,:focus-visible),
.header--overlay .nav-dropdown[open]>summary,
.header--overlay .language:is(:hover,:focus-visible) { color:var(--header-hover); text-shadow:none; }
.header--overlay .nav-dropdown>summary:is(:hover,:focus-visible) .chevron,
.header--overlay .language:is(:hover,:focus-visible)::before,
.header--overlay .language:is(:hover,:focus-visible)::after { filter:none; }
.header--overlay .nav-dropdown>summary:focus-visible { outline-color:currentColor; }
.header.header--overlay nav>a.is-current,
.header.header--overlay .nav-dropdown.is-current>summary {
  color:var(--header-hover); box-shadow:inset 0 -1px 0 currentColor;
}
.header.header--overlay .contact-nav {
  background:var(--header-button-bg); color:var(--header-button-ink);
  transition:background .36s ease,color .36s ease,box-shadow .2s ease;
}
.header.header--overlay .contact-nav:is(:hover,:focus-visible) {
  background:var(--header-button-bg); color:var(--header-button-ink);
  box-shadow:0 0 0 4px #a4c9e62a;
}

.header--overlay .language-options { left:auto; right:0; min-width:190px; padding:8px; }
.header--overlay .language-options>button {
  display:flex; align-items:center; justify-content:space-between; gap:28px;
  width:100%; min-height:44px; text-align:left;
}
.header--overlay .language-options>button[aria-pressed="true"] { color:#0753a2; background:#edf4fa; }
.language-check { color:#0753a2; font-size:16px; visibility:hidden; }
[data-language][aria-pressed="true"] .language-check { visibility:visible; }
@media(hover:hover) and (pointer:fine) {
  .header--overlay:not(.is-scrolled) .brand:hover .logo { filter:drop-shadow(0 0 8px #ffffff40); }
  .header--overlay:not(.is-scrolled) nav>a:hover,
  .header--overlay:not(.is-scrolled) .nav-dropdown>summary:hover,
  .header--overlay:not(.is-scrolled) .language:hover { text-shadow:0 0 12px #ffffff55; }
}
@media(max-width:809px) {
  .header.header--overlay .header-inner { width:88%; gap:12px; }
  .header--overlay .brand { min-width:0; flex-shrink:1; }
  .header--overlay .brand-name { min-width:0; }
  .header--overlay .menu-toggle { flex-shrink:0; }
  .menu-open .header.header--overlay {
    --header-solid:1; --header-ink:#102c47; --header-hover:#0753a2;
    --header-button-bg:#0753a2; --header-button-ink:#fff;
  }
  .header.header--overlay #site-nav {
    --header-ink:#102c47; --header-hover:#0753a2;
    --header-button-bg:#0753a2; --header-button-ink:#fff;
    background:#fff; color:#102c47; backdrop-filter:none; box-shadow:0 16px 28px #102c4712;
  }
  .header--overlay .nav-menu { background:#f3f6f9; color:#102c47; }
  .header--overlay .nav-menu>a,.header--overlay .nav-menu>button { color:#36536a; }
  .header--overlay .nav-menu>:is(:hover,:focus-visible) { color:#0753a2; background:#e7eef6; outline-color:#0753a2; }
  .header--overlay .language-picker>.language { justify-content:flex-start; margin:0; min-height:48px; }
  .header--overlay .language-options { width:100%; min-width:0; margin:0 0 10px; }
}
@media(prefers-reduced-motion:reduce) {
  .header.header--overlay,.header.header--overlay::before,
  .header--overlay .logo img,.header--overlay .brand-name,
  .header.header--overlay nav>a,.header--overlay .nav-dropdown>summary,
  .header--overlay .language,.header.header--overlay .contact-nav { transition:none; }
}
