// load-animation document.addEventListener("DOMContentLoaded", () => { const loadingOverlay = document.getElementById("loading-overlay"); const contentRevealer = document.getElementById("content-revealer"); window.onload = () => { contentRevealer.classList.add("active"); setTimeout(() => { document.body.style.overflow = "auto"; }, 1800); }; }); // animation(.text-wrapper) document.addEventListener("DOMContentLoaded", () => { const textWrappers = document.querySelectorAll(".text-wrapper"); const observer = new IntersectionObserver((entries, observer) => { entries.forEach((entry, index) => { if (entry.isIntersecting) { const el = entry.target; const delay = `${index * 0.1 + 0.5}s`; el.style.setProperty('--text-wrapper-delay', delay); observer.unobserve(el); } }); }, { threshold: 0.1 }); textWrappers.forEach(target => { observer.observe(target); }); }); // animation(.anime) document.addEventListener("DOMContentLoaded", () => { const targets = document.querySelectorAll(".anime"); setTimeout(() => { const observer = new IntersectionObserver((entries, observer) => { entries.forEach((entry, index) => { if (entry.isIntersecting) { const el = entry.target; el.style.transitionDelay = `${index * 0.1 + 0.2}s`; el.classList.add("anime-on"); observer.unobserve(el); } }); }, { threshold: 0.1 }); targets.forEach(target => { observer.observe(target); }); }, 1000); });