const revealItems = document.querySelectorAll(".reveal"); if ("IntersectionObserver" in window) { const observer = new IntersectionObserver( (entries) => { for (const entry of entries) { if (entry.isIntersecting) { entry.target.classList.add("visible"); observer.unobserve(entry.target); } } }, { rootMargin: "0px 0px -10% 0px", threshold: 0.12 } ); revealItems.forEach((item) => observer.observe(item)); } else { revealItems.forEach((item) => item.classList.add("visible")); }