// Dois mundos — toggle Empresarial vs. Construtor with animated construction scenes.
function AudienceToggle() {
const [mode, setMode] = React.useState("empresarial");
const [inView, setInView] = React.useState(false);
const sectionRef = React.useRef(null);
const empRef = React.useRef(null);
const conRef = React.useRef(null);
const playedRef = React.useRef({ empresarial: false, construtor: false });
// Detect when the section enters the viewport (≥35% visible).
React.useEffect(() => {
if (!sectionRef.current) return;
const io = new IntersectionObserver(
(entries) => {
entries.forEach(e => { if (e.isIntersecting) setInView(true); });
},
{ threshold: 0.35 }
);
io.observe(sectionRef.current);
return () => io.disconnect();
}, []);
// Pause inactive video; start (or hold) active video.
// Each video plays exactly once — the first time its tab is selected
// AND the section is in view. After it ends, it freezes on the last frame.
React.useEffect(() => {
if (!inView) return;
const active = mode === "empresarial" ? empRef.current : conRef.current;
const inactive = mode === "empresarial" ? conRef.current : empRef.current;
if (inactive) inactive.pause();
if (active && !playedRef.current[mode]) {
try { active.currentTime = 0; } catch (e) {}
const p = active.play();
if (p && p.catch) p.catch(() => {});
playedRef.current[mode] = true;
}
}, [mode, inView]);
const data = {
empresarial: {
title: "Modo Empresarial",
tag: "Para empreiteiros e empresas",
headline: "Muitas obras. Muita equipe. Um só painel.",
sub: "DRE consolidado da empresa, equipe por obra, contas a receber, assistência técnica. Tudo o que sua planilha não consegue.",
bullets: [
"Múltiplas obras simultâneas com margem por projeto",
"DRE consolidado da empresa toda",
"Controle de equipe própria com check-in geolocalizado",
"Contas a pagar/receber + assistência técnica",
],
accent: "var(--blue-600)",
from: "R$ 159,99",
},
construtor: {
title: "Modo Construtor",
tag: "Para autônomos e pequenas reformas",
headline: "Sua obra. Seu controle. Sem complicação.",
sub: "Versão enxuta pra quem quer apenas gerenciar etapas e gastos de suas obras.",
bullets: [
"Gráficos e Resultados Instantâneos",
"Lançamento rápido de gastos pelo celular",
"Controle de etapas da Obra",
"Fechamento da obra em 1 tela",
],
accent: "var(--green-600)",
from: "R$ 49,00",
},
};
const d = data[mode];
return (
Toque pra ver. A interface, os relatórios e o preço mudam pra
servir empreiteiro com 12 obras ou pedreiro autônomo com 1 reforma.
{d.sub}
BinGest se adapta ao seu tamanho.
{d.headline}
{d.bullets.map((b, i) => (