// Shared JavaScript across all pages // Countdown timer for launch date function updateCountdown() { const launchDate = new Date('2024-03-01T00:00:00').getTime(); const now = new Date().getTime(); const distance = launchDate - now; if (distance < 0) { document.getElementById('countdown').innerHTML = '
We\'re Live! 🎉
'; return; } const days = Math.floor(distance / (1000 * 60 * 60 * 24)); const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); const seconds = Math.floor((distance % (1000 * 60)) / 1000); document.getElementById('days').textContent = days.toString().padStart(2, '0'); document.getElementById('hours').textContent = hours.toString().padStart(2, '0'); document.getElementById('minutes').textContent = minutes.toString().padStart(2, '0'); document.getElementById('seconds').textContent = seconds.toString().padStart(2, '0'); } // Initialize countdown updateCountdown(); setInterval(updateCountdown, 1000); // Add floating animation to random elements document.addEventListener('DOMContentLoaded', function() { const floatElements = document.querySelectorAll('.transform'); floatElements.forEach((element, index) => { element.style.animationDelay = `${index * 0.2}s`; }); }); // Add sparkle effect to headings function addSparkleEffect() { const headings = document.querySelectorAll('h1, h2'); headings.forEach(heading => { heading.classList.add('sparkle-animation'); }); } // Initialize sparkle effect addSparkleEffect(); // Smooth scroll to elements function smoothScrollTo(element) { element.scrollIntoView({ behavior: 'smooth', block: 'start' }); } // Add interactive hover effects document.addEventListener('DOMContentLoaded', function() { const craftItems = document.querySelectorAll('.bg-white\\/80'); craftItems.forEach(item => { item.addEventListener('mouseenter', function() { this.style.transform = 'scale(1.05) rotate(2deg)'; this.style.transition = 'all 0.3s ease'; }); item.addEventListener('mouseleave', function() { this.style.transform = 'scale(1) rotate(0deg)'; }); }); }); // Handle responsive adjustments function handleResize() { const vantaElement = document.getElementById('vanta-background'); if (window.innerWidth < 768 && vantaElement) { vantaElement.style.display = 'none'; } else if (vantaElement) { vantaElement.style.display = 'block'; } } // Initialize resize handler window.addEventListener('resize', handleResize); handleResize(); // Call initially console.log('Kenza\'s Skatter - Coming Soon Page Loaded! 🎨');