|
1 | 1 | "use client"; |
2 | 2 | import { Poppins, Jolly_Lodger } from "next/font/google"; |
3 | | -import { useState } from "react"; |
| 3 | +import { useState, useEffect } from "react"; |
4 | 4 |
|
5 | 5 | const jolly = Jolly_Lodger({ weight: "400", subsets: ["latin"] }); |
6 | 6 | const poppins = Poppins({ |
@@ -31,6 +31,16 @@ export function OrangeStrip() { |
31 | 31 |
|
32 | 32 | export default function Navigation() { |
33 | 33 | const [isMenuOpen, setIsMenuOpen] = useState(false); |
| 34 | + const [isScrolled, setIsScrolled] = useState(false); |
| 35 | + |
| 36 | + useEffect(() => { |
| 37 | + const handleScroll = () => { |
| 38 | + setIsScrolled(window.scrollY > 0); |
| 39 | + }; |
| 40 | + |
| 41 | + window.addEventListener('scroll', handleScroll); |
| 42 | + return () => window.removeEventListener('scroll', handleScroll); |
| 43 | + }, []); |
34 | 44 |
|
35 | 45 | const toggleMenu = () => { |
36 | 46 | setIsMenuOpen(!isMenuOpen); |
@@ -64,7 +74,7 @@ export default function Navigation() { |
64 | 74 | </div> |
65 | 75 |
|
66 | 76 | <button |
67 | | - className={`fixed top-16 left-6 z-60 flex flex-col items-center justify-center w-10 h-10 bg-black/30 rounded-lg backdrop-blur-sm md:hidden ${poppins.className}`} |
| 77 | + className={`fixed top-[6.5vh] left-6 z-60 flex flex-col items-center justify-center w-10 h-10 bg-black/30 rounded-lg backdrop-blur-sm md:hidden ${poppins.className}`} |
68 | 78 | onClick={toggleMenu} |
69 | 79 | aria-label="Toggle menu" |
70 | 80 | style={{ |
@@ -141,7 +151,7 @@ export default function Navigation() { |
141 | 151 | </div> |
142 | 152 |
|
143 | 153 | <nav |
144 | | - className={`fixed left-4 right-4 top-12 bg-black/20 text-white ${poppins.className} px-6 py-3 md:px-16 md:py-2 flex flex-col md:flex-row items-center justify-between z-40 animate-fade-in-up gap-4 md:gap-0 rounded-2xl shadow-lg`} |
| 154 | + className={`fixed left-4 right-4 top-[6.5vh] md:top-[6.5vh] ${isScrolled ? 'bg-black/85 shadow-lg' : 'bg-transparent'} text-white ${poppins.className} px-6 py-3 md:px-16 md:py-2 flex flex-col md:flex-row items-center justify-between z-40 animate-fade-in-up gap-4 md:gap-0 rounded-2xl transition-all duration-300`} |
145 | 155 | style={{ |
146 | 156 | animation: "fadeInUp 0.8s ease-out 0.2s forwards", |
147 | 157 | opacity: 0, |
|
0 commit comments