// Header shrink on scroll window.addEventListener('scroll', function() { const header = document.querySelector('.site-header'); if (window.scrollY > 50) { header.classList.add('shrink'); } else { header.classList.remove('shrink'); } }); // Dropdown keyboard accessibility document.addEventListener('DOMContentLoaded', function() { const menuItems = document.querySelectorAll('#main-menu ul.menu > li.menu-item'); menuItems.forEach(item => { const link = item.querySelector('a'); const dropdown = item.querySelector('ul.children'); // Open dropdown on focus link.addEventListener('focus', () => { if(dropdown) { dropdown.style.opacity = '1'; dropdown.style.visibility = 'visible'; dropdown.style.transform = 'translateY(0)'; } }); // Close dropdown when focus leaves const allLinks = item.querySelectorAll('a'); allLinks[allLinks.length - 1].addEventListener('blur', () => { if(dropdown) { dropdown.style.opacity = ''; dropdown.style.visibility = ''; dropdown.style.transform = ''; } }); // Navigate submenu with arrow keys if(dropdown) { const submenuLinks = dropdown.querySelectorAll('a'); link.addEventListener('keydown', e => { if(e.key === 'ArrowDown') { e.preventDefault(); submenuLinks[0].focus(); } }); submenuLinks.forEach((sublink, index) => { sublink.addEventListener('keydown', e => { if(e.key === 'ArrowDown') { e.preventDefault(); if(index < submenuLinks.length - 1) submenuLinks[index + 1].focus(); } if(e.key === 'ArrowUp') { e.preventDefault(); if(index > 0) submenuLinks[index - 1].focus(); else link.focus(); } if(e.key === 'Escape') { link.focus(); if(dropdown) { dropdown.style.opacity = ''; dropdown.style.visibility = ''; dropdown.style.transform = ''; } } }); }); } }); });