|
1 | | -<header class="fixed top-0 left-0 right-0 z-50 border-b border-border-dark glass transition-all duration-300 relative"> |
| 1 | +<header class="fixed top-0 left-0 right-0 z-50 border-b border-border-dark glass transition-all duration-300"> |
2 | 2 | <div class="max-w-[1200px] mx-auto px-4 sm:px-6 lg:px-8"> |
3 | 3 | <div class="flex items-center justify-between h-20"> |
4 | 4 | <div class="flex items-center gap-3"> |
|
24 | 24 | </div> |
25 | 25 | </div> |
26 | 26 | </div> |
27 | | - <div class="md:hidden hidden absolute top-full left-0 right-0 bg-background-dark border-b border-border-dark" id="mobileMenu"> |
| 27 | + <div class="md:hidden absolute top-full left-0 right-0 bg-background-dark border-b border-border-dark overflow-hidden transition-all duration-200 ease-out max-h-0 opacity-0 -translate-y-2 pointer-events-none" id="mobileMenu"> |
28 | 28 | <div class="px-6 py-4 flex flex-col text-center"> |
29 | 29 | <a class="text-sm font-medium text-white py-3 border-b border-border-dark" href="/">Inicio</a> |
30 | 30 | <a class="text-sm font-medium text-white py-3 border-b border-border-dark" href="/#partners">Colaboradores</a> |
|
50 | 50 | mobileToggle.addEventListener('click', () => { |
51 | 51 | const isOpen = mobileToggle.getAttribute('aria-expanded') === 'true'; |
52 | 52 | mobileToggle.setAttribute('aria-expanded', String(!isOpen)); |
53 | | - mobileMenu.classList.toggle('hidden', isOpen); |
| 53 | + mobileMenu.classList.toggle('max-h-0', isOpen); |
| 54 | + mobileMenu.classList.toggle('opacity-0', isOpen); |
| 55 | + mobileMenu.classList.toggle('-translate-y-2', isOpen); |
| 56 | + mobileMenu.classList.toggle('pointer-events-none', isOpen); |
| 57 | + mobileMenu.classList.toggle('max-h-96', !isOpen); |
| 58 | + mobileMenu.classList.toggle('opacity-100', !isOpen); |
| 59 | + mobileMenu.classList.toggle('translate-y-0', !isOpen); |
| 60 | + mobileMenu.classList.toggle('pointer-events-auto', !isOpen); |
54 | 61 | }); |
55 | 62 |
|
56 | 63 | mobileMenu.querySelectorAll('a').forEach((link) => { |
57 | 64 | link.addEventListener('click', () => { |
58 | | - mobileMenu.classList.add('hidden'); |
| 65 | + mobileMenu.classList.add('max-h-0', 'opacity-0', '-translate-y-2', 'pointer-events-none'); |
| 66 | + mobileMenu.classList.remove('max-h-96', 'opacity-100', 'translate-y-0', 'pointer-events-auto'); |
59 | 67 | mobileToggle.setAttribute('aria-expanded', 'false'); |
60 | 68 | }); |
61 | 69 | }); |
|
0 commit comments