// Router + app mount
function App() {
const [route, setRoute] = useState(() => {
const h = (window.location.hash || '').replace(/^#/, '');
if (h) {
const [name, slug] = h.split('/');
if (name) return { name, slug };
}
return { name: 'home' };
});
const navigate = (next) => {
if (next.name === route.name && next.slug === route.slug) {
window.scrollTo({ top: 0, behavior: 'smooth' });
return;
}
setRoute(next);
window.scrollTo({ top: 0 });
};
// reflect route in hash for shareable deep links
useEffect(() => {
const slug = route.slug ? `/${route.slug}` : '';
history.replaceState(null, '', `#${route.name}${slug}`);
}, [route]);
let page;
switch (route.name) {
case 'home': page = ; break;
case 'about': page = ; break;
case 'expertise': page = ; break;
case 'expertise-detail': page = ; break;
case 'industries': page = ; break;
case 'industry-detail': page = ; break;
case 'insights': page = ; break;
case 'contact': page = ; break;
default: page = ;
}
const routeKey = route.name + (route.slug || '');
return (
{page}
);
}
ReactDOM.createRoot(document.getElementById('root')).render();