/* Keep site navigation available across pages and anchor jumps. */
:root{--site-header-height:110px}
html{scroll-padding-top:calc(var(--site-header-height) + 20px)}
body{padding-top:var(--site-header-height)}
.header{position:fixed;inset:0 0 auto;z-index:1000;background:var(--paper);border-bottom:1px solid var(--line)}
.header{transition:transform 160ms ease}
.header.header-hidden{transform:translateY(-100%);pointer-events:none}
.header:has(:focus-visible){transform:none;pointer-events:auto}
.skip{position:fixed;z-index:1001}
.inquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-submit button:disabled{cursor:wait;opacity:.65}
.inquiry-bot-check{margin-top:16px}
.inquiry-bot-check:empty{display:none}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
@media(max-width:1000px){
 .header .nav-links{position:fixed;top:var(--site-header-height);right:20px;width:240px;max-width:calc(100vw - 40px);max-height:calc(100vh - var(--site-header-height) - 16px);max-height:calc(100dvh - var(--site-header-height) - 16px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:800px){:root{--site-header-height:93px}}
@media print{body{padding-top:0}.header,.header.header-hidden{position:static;transform:none;pointer-events:auto}.header .nav-links{position:static;max-height:none;overflow:visible}}
