// v4-app.jsx — Nav, Footer, App shell for 9mith Advisory v4 (Awesomic skin) const { useState, useEffect } = React; function Nav({ page, onNavigate }) { const [scrolled, setScrolled] = useState(false); const [menuOpen, setMenuOpen] = useState(false); useEffect(() => { const h = () => setScrolled(window.scrollY > 60); window.addEventListener('scroll', h, { passive: true }); return () => window.removeEventListener('scroll', h); }, []); useEffect(() => { window.scrollTo(0, 0); setScrolled(false); }, [page]); const darkHero = !scrolled && ['home', 'contact', 'network'].includes(page); const cls = `v4-nav${scrolled ? ' scrolled' : ''}${darkHero ? ' v4-nav--light' : ''}`; const links = [ { label: 'What We Do', id: 'what-we-do' }, { label: 'How We Work', id: 'how-we-work' }, { label: 'Network', id: 'network' }, { label: 'About', id: 'about' }, { label: 'Contact', id: 'contact' }, ]; const go = (id) => { onNavigate(id); setMenuOpen(false); }; return ( <> {menuOpen && (
{links.map(l => ( ))}
)} ); } function Footer({ onNavigate }) { const C = window.AdvC; return ( ); } function App() { const [page, setPage] = useState('home'); const [tab, setTab] = useState(0); const navigate = (id, initialTab) => { setPage(id); if (initialTab !== undefined) setTab(initialTab); }; const renderPage = () => { switch (page) { case 'home': return ; case 'what-we-do': return ; case 'how-we-work': return ; case 'network': return ; case 'about': return ; case 'contact': return ; default: return ; } }; return (
); } ReactDOM.createRoot(document.getElementById('root')).render();