// GSP — Página de Contacto (exclusiva). Hero split + despedida + footer liviano. function ContactoFormCard() { const Icon = window.Icon; const [status, setStatus] = React.useState('idle'); const [form, setForm] = React.useState({ nombre: '', telefono: '', email: '', servicio: '', mensaje: '', empresa_web: '' }); const startedAt = React.useRef(Date.now()); const tsRef = React.useRef(null); const tsId = React.useRef(null); const set = (k) => (e) => setForm((f) => ({ ...f, [k]: e.target.value })); React.useEffect(() => { startedAt.current = Date.now(); if (window.GSPForms) window.GSPForms.renderTurnstile(tsRef.current).then((id) => { tsId.current = id; }); }, []); const handleSubmit = (e) => { e.preventDefault(); if (status === 'sending') return; setStatus('sending'); const token = window.GSPForms ? window.GSPForms.getToken(tsId.current) : ''; window.GSPForms.submit({ formId: 'contacto-contacto', fields: { nombre: form.nombre, telefono: form.telefono, email: form.email, servicio: form.servicio, mensaje: form.mensaje }, meta: { startedAt: startedAt.current, hp: form.empresa_web, token }, }).then(() => setStatus('sent')).catch((err) => { console.warn('[Contacto] envío falló:', err && err.message); setStatus('error'); if (window.GSPForms) window.GSPForms.resetTurnstile(tsId.current); }); }; const sent = status === 'sent'; const sending = status === 'sending'; return (
{sent ? (

¡Consulta enviada!

Gracias. Un especialista de GSP te va a contactar dentro de las próximas 24 horas.

) : (

Solicitá tu cotización

Sin compromiso. Te respondemos en 24 horas.