const DELAY = 320;
let lastState = false; let timeout = null;
function setHeaderHeight() {
const normal = document.querySelector(".header-normal"); if (!normal) return;
document.documentElement.style.setProperty( "--header-height", normal.offsetHeight + "px" ); }
function activateSticky() { document.body.classList.add("is-sticky"); }
function deactivateSticky() { document.body.classList.remove("is-sticky"); }
function handleScroll() {
const isScrolled = window.scrollY > 100;
if (isScrolled === lastState) return;
lastState = isScrolled;
if (timeout) clearTimeout(timeout);
if (isScrolled) {
// OUT sofort deactivateSticky();
// IN verzögert timeout = setTimeout(() => { activateSticky(); }, DELAY);
} else {
// OUT sofort deactivateSticky();
// IN zurück verzögert timeout = setTimeout(() => { deactivateSticky(); }, DELAY); } }
function initHeader() {
setHeaderHeight();
window.addEventListener("scroll", handleScroll); window.addEventListener("resize", setHeaderHeight); window.addEventListener("load", setHeaderHeight); }
document.addEventListener("DOMContentLoaded", initHeader);