/* Enabled by sticky-header.js; without JavaScript the original header remains. */
html.has-sticky-header {
  scroll-padding-top:var(--sticky-header-height,0px);
}
.nav-block.sticky-header {
  position:sticky;
  top:0;
  z-index:1000;
  transform:translateY(0);
  transition:transform 300ms ease;
}
.nav-block.sticky-header--hidden {
  transform:translateY(calc(-100% - 1px));
}
/* Keyboard focus must be visible immediately, including when tabbing back. */
.nav-block.sticky-header--focus-visible,
.nav-block.sticky-header:has(:focus-visible) {
  transform:translateY(0);
  transition-duration:0ms;
}
/* Keep every mobile-menu link reachable while the header stays in place. */
@media (max-width:991px) {
  .nav-block.sticky-header .nav-menu {
    max-height:calc(100vh - var(--sticky-header-height,0px) - 12px);
    max-height:calc(100dvh - var(--sticky-header-height,0px) - 12px);
    overflow-y:auto;
    overscroll-behavior-y:contain;
  }
}
@media (prefers-reduced-motion:reduce) {
  .nav-block.sticky-header {transition-duration:0ms;}
}
