);
}
// Envio via Web3Forms (sem backend próprio). A access key direciona o e-mail
// para a caixa cadastrada no Web3Forms (blengenharia@blengenharia.eng.br).
const WEB3FORMS_ENDPOINT = "https://api.web3forms.com/submit";
const WEB3FORMS_KEY = "8b902ed9-3c2f-47a2-8aea-941f85a7f329";
function ContatoForm() {
const [sent, setSent] = React.useState(false);
const [sending, setSending] = React.useState(false);
const [erro, setErro] = React.useState("");
const [nome, setNome] = React.useState("");
async function handleSubmit(e) {
e.preventDefault();
if (sending) return;
setErro("");
setSending(true);
const form = e.target;
const empresa = form.elements["c-empresa"].value;
const email = form.elements["c-email"].value;
const telefone = form.elements["c-tel"].value;
const tipo = form.elements["c-tipo"].value;
const mensagem = form.elements["c-msg"].value;
const payload = {
access_key: WEB3FORMS_KEY,
subject: `[Site] Novo contato — ${nome}${tipo ? ` · ${tipo}` : ""}`,
from_name: "Site B&L Engenharia",
// Campos da mensagem (aparecem no e-mail recebido):
Nome: nome,
Empresa: empresa || "—",
email: email, // usado pelo Web3Forms como Reply-To
Telefone: telefone || "—",
"Tipo de projeto": tipo || "—",
Mensagem: mensagem,
// Honeypot nativo do Web3Forms:
botcheck: form.elements["botcheck"].checked,
};
try {
const res = await fetch(WEB3FORMS_ENDPOINT, {
method: "POST",
headers: { "Content-Type": "application/json", Accept: "application/json" },
body: JSON.stringify(payload),
});
const data = await res.json().catch(() => ({}));
if (res.ok && data.success) {
setSent(true);
} else {
setErro(data.message || "Não foi possível enviar agora. Tente novamente ou use o WhatsApp.");
}
} catch (_) {
setErro("Falha de conexão. Verifique sua internet e tente novamente.");
} finally {
setSending(false);
}
}
if (sent) {
return (
Mensagem enviada.
Obrigado{nome ? `, ${nome.split(" ")[0]}` : ""}. Nossa equipe responde em até 24h úteis —
ou fale agora pelo WhatsApp.
);
}
return (
);
}
function ContatosPage() {
return (
Vamos falar sobre o seu projeto.>}
lead={
<>
Atendimento direto com quem projeta. Conte o que vai construir e retornamos com os
próximos passos — escopo e prazos.
>
}
meta={[
{ num: "24h", label: "úteis para resposta" },
{ num: "BR", label: "atuação nacional" },
]}
/>