let lastScrollTop = 0; let header = null; function handleScroll() { const scrollTop = window.pageYOffset || document.documentElement.scrollTop; if (!header) { header = document.getElementById('global-header'); if (!header) return; } if (scrollTop > lastScrollTop && scrollTop > 100) { // Scrolling down & past 100px - hide header header.style.transform = 'translateY(-100%)'; header.style.transition = 'transform 0.3s ease-in-out'; } else { // Scrolling up or at top - show header header.style.transform = 'translateY(0)'; header.style.transition = 'transform 0.3s ease-in-out'; } lastScrollTop = scrollTop <= 0 ? 0 : scrollTop; } function init() { header = document.getElementById('global-header'); window.addEventListener('scroll', handleScroll); } function teardown() { window.removeEventListener('scroll', handleScroll); if (header) { header.style.transform = ''; header.style.transition = ''; } } export { init, teardown };