const { useState, useEffect, useRef, useCallback, useMemo } = React; // ── Icons ──────────────────────────────────────────────────────────────────── const Ic = ({ d, size=20, fill="none", stroke="currentColor", sw=1.6, children, ...p }) => ( {d ? : children} ); const IcArrow = (p) => ; const IcCheck = (p) => ; const IcClock = (p) => ; const IcPin = (p) => ; const IcPhone = (p) => ; const IcMail = (p) => ; const IcWA = (p) => ; const IcIG = (p) => ; const IcFB = (p) => ; const IcRoof = (p) => ; const IcCar = (p) => ; const IcShirt = (p) => ; const IcShield = (p) => ; const IcCalendar= (p) => ; const IcCookie = (p) => ; // ── Logo ────────────────────────────────────────────────────────────────────── function LogoMark(){ return ( ); } function Logo(){ return ( Morozzo Padel ASD ); } // ── Header ──────────────────────────────────────────────────────────────────── function Header(){ const [open, setOpen] = useState(false); const firstLinkRef = useRef(null); const close = () => setOpen(false); useEffect(() => { document.body.style.overflow = open ? 'hidden' : ''; return () => { document.body.style.overflow = ''; }; }, [open]); useEffect(() => { const onKey = (e) => { if (e.key === 'Escape') setOpen(false); }; document.addEventListener('keydown', onKey); return () => document.removeEventListener('keydown', onKey); }, []); useEffect(() => { if (open && firstLinkRef.current) firstLinkRef.current.focus(); }, [open]); return ( <>
Diventa Socio Prenota
); } // ── Hero ────────────────────────────────────────────────────────────────────── function HeroArt(){ return (