.site-header .navigation { gap: clamp(14px, 1.4vw, 24px); font-size: .8rem; }
.site-header .navigation a { white-space: nowrap; }
.site-header .navigation a[aria-current="page"]::after { transform: scaleX(1); }
.site-header .header-cta { white-space: nowrap; }
.site-header .menu-toggle { display: none; }
.site-header .nav-mobile-only { display: none; }
.site-header .sr-only { clip: rect(0,0,0,0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.site-header :is(a, button):focus-visible { outline: 3px solid var(--teal); outline-offset: 5px; }
@media (max-width: 1100px) {
  .site-header { top: 12px; left: 15px; right: 15px; height: 66px; padding: 6px 9px 6px 14px; }
  .site-header .brand { width: 190px; height: 47px; flex-shrink: 0; }
  .site-header .header-cta { display: none; }
  .site-header .menu-toggle { display: flex; position: relative; z-index: 3; flex-direction: column; justify-content: center; gap: 5px; width: 47px; height: 47px; flex-shrink: 0; margin-left: auto; border: 0; border-radius: 50%; background: #d3e1e5; cursor: pointer; }
  .site-header .menu-toggle span:not(.sr-only) { width: 19px; height: 2px; margin: 0 auto; background: var(--teal); transition: transform .2s, opacity .2s; }
  .site-header .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(7px) rotate(45deg); }
  .site-header .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .site-header .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  body.menu-open { overflow: hidden; }
  body.menu-open .site-header { inset: 0; height: 100dvh; padding: 18px 15px; border: 0; border-radius: 0; align-items: flex-start; background: #e6eff2; backdrop-filter: none; box-shadow: none; }
  body.menu-open .site-header .brand { position: relative; z-index: 3; }
  .site-header .navigation { display: flex; position: absolute; inset: 0; z-index: 1; flex-direction: column; justify-content: flex-start; align-items: stretch; gap: 5px; padding: 105px 25px 30px; margin: 0; overflow-y: auto; visibility: hidden; opacity: 0; background: #e6eff2; color: var(--ink); font-size: clamp(1rem, 3.5vw, 1.35rem); transform: translateY(-20px); transition: opacity .2s, visibility .2s, transform .2s; }
  .site-header .navigation.is-open { visibility: visible; opacity: 1; transform: none; }
  .site-header .navigation a { white-space: normal; padding: 14px 8px; text-align: center; }
  .site-header .nav-mobile-only { display: block; }
  .site-header .navigation a.nav-mobile-only { font-size: 1rem; color: var(--teal); border: 1px solid #9ebcba; border-radius: 99px; margin-top: 14px; }
  .home-page:not(.menu-open) .site-header { top: 14px; left: 14px; right: 14px; height: 56px; padding: 0; border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
  .home-page:not(.menu-open) .site-header .brand { width: 178px; height: 56px; padding: 7px 13px; border: 1px solid rgba(255,255,255,.58); border-radius: 99px; background: rgba(239,246,247,.93); box-shadow: 0 14px 34px rgba(0,0,0,.12); }
  .home-page:not(.menu-open) .site-header .menu-toggle { width: 52px; height: 52px; border: 1px solid rgba(255,255,255,.52); background: rgba(239,246,247,.93); box-shadow: 0 14px 34px rgba(0,0,0,.12); }
}
