.site-header.scroll-header{position:sticky;top:0;z-index:9;background:rgba(247,244,238,.96);backdrop-filter:blur(12px);transition:transform .32s ease,box-shadow .32s ease;will-change:transform}
.site-header.header-scrolled{box-shadow:0 5px 24px #292e250c}
.site-header.header-hidden{transform:translateY(calc(-100% - 12px))}
.site-header:has(:focus-visible){transform:translateY(0)}
.scroll-reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease var(--reveal-delay,0ms),transform .75s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}
.scroll-reveal.is-revealed{opacity:1;transform:translateY(0)}
.back-to-top{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:9;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #737b60;border-radius:50%;background:var(--olive);color:var(--white);font-size:25px;box-shadow:0 6px 24px #292e2526;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px);transition:opacity .25s ease,transform .25s ease,visibility .25s}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:#424b32;transform:translateY(-3px)}
@media(max-width:650px){.back-to-top{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:44px;height:44px}.site-header.scroll-header nav{top:100%}}
@media(prefers-reduced-motion:reduce){.site-header.scroll-header,.scroll-reveal,.back-to-top{transition:none}.scroll-reveal{opacity:1;transform:none}}
.site-header #navigation{flex-wrap:wrap;column-gap:20px;row-gap:6px;max-height:65px;overflow-y:auto}.site-header #navigation a{overflow-wrap:anywhere}.site-header #navigation.open{max-height:70vh}
