diff --git a/frontend/src/pages/LandingPage.tsx b/frontend/src/pages/LandingPage.tsx index baede37..56d5339 100644 --- a/frontend/src/pages/LandingPage.tsx +++ b/frontend/src/pages/LandingPage.tsx @@ -1,3 +1,4 @@ +import { useState, useEffect } from 'react' import { Link } from 'react-router-dom' import { Scissors, @@ -14,6 +15,8 @@ import { Gem, Pen, FileOutput, + Menu, + X, } from 'lucide-react' const tools = [ @@ -34,8 +37,25 @@ const steps = [ ] export default function LandingPage() { + const [mobileMenuOpen, setMobileMenuOpen] = useState(false) + + // Close mobile menu on resize to desktop + useEffect(() => { + const handleResize = () => { + if (window.innerWidth >= 768) setMobileMenuOpen(false) + } + window.addEventListener('resize', handleResize) + return () => window.removeEventListener('resize', handleResize) + }, []) + + // Prevent body scroll when mobile menu is open + useEffect(() => { + document.body.style.overflow = mobileMenuOpen ? 'hidden' : '' + return () => { document.body.style.overflow = '' } + }, [mobileMenuOpen]) + return ( -
+
{/* ── CSS ─────────────────────────────────────────────── */}