document.addEventListener('DOMContentLoaded', () => { // --- Mobile Menu Toggle Handling --- const menuBtn = document.getElementById('menu-btn'); const mobileMenu = document.getElementById('mobile-menu'); if (menuBtn && mobileMenu) { menuBtn.addEventListener('click', () => { mobileMenu.classList.toggle('hidden'); }); } // --- Dynamic FAQ Accordion System --- const faqItems = document.querySelectorAll('.faq-item'); faqItems.forEach(item => { const button = item.querySelector('button'); const content = item.querySelector('.faq-content'); button.addEventListener('click', () => { const isActive = item.classList.contains('active'); // Close all items sequentially to retain uniform structure faqItems.forEach(el => { el.classList.remove('active'); el.querySelector('.faq-content').style.maxHeight = null; }); // Toggle selected tracking target if (!isActive) { item.classList.add('active'); content.style.maxHeight = content.scrollHeight + "px"; } }); }); // --- Contact / Repair Request Validation Example --- const repairForm = document.getElementById('repairForm'); if (repairForm) { repairForm.addEventListener('submit', (e) => { e.preventDefault(); // Collect Form Values Safely alert('Thank you! Your diagnostic request has been tracked securely. A repair specialist will contact you shortly.'); repairForm.reset(); }); } }); /* Base Style Enhancements */ html { scroll-behavior: smooth; } /* Smooth Transition Transitions for Accordion Content height mapping */ .faq-content { transition: max-height 0.3s ease-in-out, opacity 0.2s ease-in-out; } .faq-item.active .faq-content { opacity: 1; } .faq-item.active i { transform: rotate(180deg); } /* Keyframe Hero Entry Animations */ @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in { animation: fadeIn 0.6s ease-out forwards; } document.addEventListener('DOMContentLoaded', () => { // --- Mobile Menu Toggle Handling --- const menuBtn = document.getElementById('menu-btn'); const mobileMenu = document.getElementById('mobile-menu'); if (menuBtn && mobileMenu) { menuBtn.addEventListener('click', () => { mobileMenu.classList.toggle('hidden'); }); } // --- Dynamic FAQ Accordion System --- const faqItems = document.querySelectorAll('.faq-item'); faqItems.forEach(item => { const button = item.querySelector('button'); const content = item.querySelector('.faq-content'); button.addEventListener('click', () => { const isActive = item.classList.contains('active'); // Close all items sequentially to retain uniform structure faqItems.forEach(el => { el.classList.remove('active'); el.querySelector('.faq-content').style.maxHeight = null; }); // Toggle selected tracking target if (!isActive) { item.classList.add('active'); content.style.maxHeight = content.scrollHeight + "px"; } }); }); // --- Contact / Repair Request Validation Example --- const repairForm = document.getElementById('repairForm'); if (repairForm) { repairForm.addEventListener('submit', (e) => { e.preventDefault(); // Collect Form Values Safely alert('Thank you! Your diagnostic request has been tracked securely. A repair specialist will contact you shortly.'); repairForm.reset(); }); } });