/* Shared header for the landing page and every public service page. */
header.v7-header{box-sizing:border-box;position:absolute;inset:0 0 auto;z-index:10;width:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:28px;padding:24px 3vw;background:transparent;color:#163a2c;font-family:"Bricolage Grotesque",system-ui,sans-serif;font-size:16px;line-height:normal;letter-spacing:normal;-webkit-font-smoothing:auto}
header.v7-header .v7-logo{justify-self:start;display:flex;align-items:center;gap:0;font-size:26px;font-weight:800;line-height:normal;letter-spacing:normal;color:inherit;text-decoration:none;white-space:nowrap}
header.v7-header .v7-logo svg{display:block;width:51px;height:51px;position:relative;top:-.3em;flex:none;margin-right:-.55em}
header.v7-header .v7-logo em{color:#ff6198;font-style:italic}
header.v7-header .v7-nav{display:flex;order:0;align-items:center;gap:22px;margin:auto;width:auto;min-width:0;padding:0;overflow:visible;white-space:nowrap}
header.v7-header .v7-nav a{flex:none;color:inherit;font-size:13px;font-weight:400;line-height:normal;text-decoration:none;padding:7px 0;border-bottom:2px solid transparent}
header.v7-header .v7-nav a:hover,header.v7-header .v7-nav a[aria-current]{border-color:#3a4ba0}
header.v7-header .header-actions{justify-self:end;display:flex;align-items:center;gap:10px;flex:none;margin-left:auto}
header.v7-header .diagnostic{display:inline-block;flex:none;margin:0;white-space:nowrap;border:0;border-radius:30px;padding:12px 21px;color:inherit;text-decoration:none;font-size:14px;font-weight:700;line-height:normal}
header.v7-header .locale-switch{flex:none;margin:0;border:0;border-radius:20px;background:transparent;color:inherit;padding:8px 11px;font:700 12px "Bricolage Grotesque",sans-serif;cursor:pointer}


header.v7-header a:focus-visible,header.v7-header button:focus-visible{outline:3px solid #ff6198;outline-offset:5px}
.security header.v7-header{color:#f2f6f4}.security header.v7-header .v7-logo em{color:#ff6198}.security header.v7-header .v7-nav a[aria-current]{border-color:#91abff}
@media(max-width:1250px){header.v7-header{display:flex;flex-wrap:wrap;padding:16px 24px;gap:12px}header.v7-header .v7-nav{order:3;width:100%;overflow:auto;margin:0;gap:24px;justify-content:safe center}}
@media(max-width:700px){header.v7-header{column-gap:8px;padding-left:16px;padding-right:16px}header.v7-header .v7-logo{font-size:22px}header.v7-header .diagnostic{font-size:11px;padding:9px 12px}header.v7-header .v7-nav a{font-size:12px}header.v7-header .header-actions{gap:8px}}

/* Keep the outgoing document visible during supported same-origin navigations. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:site-page-out .18s ease-out both}
::view-transition-new(root){animation:site-page-in .18s ease-out both}
@keyframes site-page-out{to{opacity:0}}
@keyframes site-page-in{from{opacity:0}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

/* A disclosure menu keeps every destination reachable without sideways scrolling. */
header.v7-header .navigation-toggle{display:none}
@media(max-width:900px){
  header.v7-header.navigation-ready{display:flex;flex-wrap:nowrap;gap:8px;padding:14px 16px}
  header.v7-header.navigation-ready .v7-logo{order:0;font-size:22px}
  header.v7-header.navigation-ready .v7-logo svg{width:42px;height:42px}
  header.v7-header.navigation-ready .header-actions{order:1;margin-left:auto;gap:0}
  header.v7-header.navigation-ready .diagnostic{box-sizing:border-box;display:flex;align-items:center;min-height:44px;font-size:12px;padding:8px}
  header.v7-header.navigation-ready .navigation-toggle{order:2;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font:600 13px "Bricolage Grotesque",system-ui,sans-serif;cursor:pointer}
  header.v7-header .navigation-toggle svg{width:18px;height:18px;flex:none}
  header.v7-header .navigation-toggle .navigation-close-icon{display:none}
  header.v7-header.navigation-open .navigation-toggle .navigation-menu-icon{display:none}
  header.v7-header.navigation-open .navigation-toggle .navigation-close-icon{display:block}
  header.v7-header.navigation-ready .v7-nav{box-sizing:border-box;display:none;position:absolute;top:100%;left:16px;right:16px;width:auto;margin:0;padding:8px;max-height:calc(100dvh - var(--navigation-header-height,72px) - 16px);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;white-space:normal;border:1px solid #c7d9cf;border-radius:12px;background:#f5faf6;color:#163a2c;box-shadow:0 16px 36px rgb(15 35 26 / 18%)}
  header.v7-header.navigation-open .v7-nav{display:flex}
  header.v7-header.navigation-ready .v7-nav a{box-sizing:border-box;display:flex;align-items:center;min-height:48px;padding:12px;font-size:16px;font-weight:600;white-space:normal;border:0;border-radius:6px}
  header.v7-header.navigation-ready .v7-nav a:hover,header.v7-header.navigation-ready .v7-nav a[aria-current]{background:#e0ece5;color:#163a2c}
  header.v7-header.navigation-ready 
  
  header.v7-header.navigation-ready .locale-switch{box-sizing:border-box;min-height:48px;margin-top:8px;padding:12px;border-top:1px solid #c7d9cf;border-radius:0;text-align:left;font-size:14px}
  header.v7-header.navigation-ready .v7-nav :is(a,button):focus-visible{outline-offset:-3px}
}
