.site-header{height:83px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:0 5.2%;border-bottom:1px solid rgba(32,35,38,.18);color:#202326;background:#f5f5f3;z-index:10}
.site-header .wordmark{flex:0 0 154px;color:inherit}
.site-menu{display:flex;align-items:center;gap:clamp(18px,2.4vw,36px)}
.site-menu a{font:500 10px 'DM Sans',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:inherit;text-decoration:none;padding:10px 0}
.site-menu a:hover{opacity:.65}.site-menu [aria-current="page"]{border-bottom:1px solid currentColor}
.site-toggle{display:none;color:inherit;background:transparent;border:1px solid currentColor;width:40px;height:38px;cursor:pointer;font-size:21px}
.site-header a:focus-visible,.site-toggle:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.site-header--hero{position:absolute;inset:0 0 auto;background:transparent;color:#fff;border-color:#ffffff50}
@media(max-width:900px){.site-header{height:72px;padding:0 6%}.site-toggle{display:block}.site-menu{display:none;position:absolute;left:0;right:0;top:72px;background:#f5f5f3;color:#202326;padding:22px 6% 28px;gap:12px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #20232633}.site-menu.is-open{display:flex}.site-header--hero .site-menu{background:#202326;color:#fff}}
html{scroll-padding-top:90px}
.site-header-space{height:83px}
.site-header.is-scroll-nav{position:fixed;inset:0 0 auto;transition:transform .28s ease,height .2s ease,background-color .2s ease,color .2s ease;will-change:transform}
.site-header.is-scroll-nav.is-scrolled{height:68px;background:#f5f5f3;color:#202326;border-color:rgba(32,35,38,.18)}
.site-header.is-nav-hidden{transform:translateY(-100%)}
.site-header:has(:focus-visible){transform:translateY(0)}
.site-header .site-menu{top:100%}
.site-header.is-scrolled .site-menu{background:#f5f5f3;color:#202326}
@media(max-width:900px){.site-header-space{height:72px}.site-header.is-scroll-nav.is-scrolled{height:64px}}
@media(prefers-reduced-motion:reduce){.site-header.is-scroll-nav{transition:none}}

/* Mobile navigation: comfortable touch targets and a scrollable short-screen menu. */
@media(max-width:900px){
 .site-toggle{width:44px;height:44px;flex:0 0 44px}
 .site-menu{gap:0;max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}
 .site-menu a{display:flex;align-items:center;min-height:44px;width:100%;padding:12px 0;font-size:11px}
 .site-header.is-scrolled .site-menu{max-height:calc(100dvh - 64px)}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
