// =============================================================================
// REGUELIN RE — App shell + router
// =============================================================================

function App() {
  const route = useHashRoute();

  // Reset noindex/jsonld between pages
  React.useEffect(() => {
    document.documentElement.lang = 'pt-BR';
    // Remove stale page meta/jsonld unless we're still on imoveis listing
    if (!route.startsWith('/imoveis') || route !== '/imoveis') {
      document.head.querySelectorAll('meta[data-page-meta="imoveis-listing"]').forEach(n=>n.remove());
    }
    // Generic titles by route (overridden by detail pages)
    if (route === '/') document.title = 'Reguelin RE · Assessoria imobiliária com diligência integral';
    else if (route === '/sobre') document.title = 'Sobre · Reguelin RE';
    else if (route === '/servicos') document.title = 'Serviços · Reguelin RE';
    else if (route === '/conteudos') document.title = 'Conteúdos · Reguelin RE';
    else if (route === '/contato') document.title = 'Contato · Reguelin RE';
  }, [route]);

  let page;
  if (route === '/' || route === '') page = <HomePage />;
  else if (route === '/sobre') page = <SobrePage />;
  else if (route === '/servicos') page = <ServicosPage />;
  else if (route === '/conteudos') page = <ConteudosPage />;
  else if (route.startsWith('/conteudos/')) page = <ArticlePage slug={route.replace('/conteudos/', '')} />;
  else if (route === '/contato') page = <ContatoPage />;
  else if (route === '/imoveis') page = <ImoveisPage />;
  else if (route.startsWith('/imoveis/')) page = <ImovelDetailPage slug={route.replace('/imoveis/', '')} />;
  else page = <NotFoundPage />;

  return (
    <>
      <SkipLink />
      <Header route={route} />
      {page}
      <Footer />
      <WhatsAppFloat />
    </>
  );
}

ReactDOM.createRoot(document.getElementById('root')).render(<App />);
