function CTA({ accent }) { const ref = React.useRef(null); const [submitted, setSubmitted] = React.useState(false); const [sending, setSending] = React.useState(false); const [error, setError] = React.useState(''); const [form, setForm] = React.useState({ name: '', email: '', phone: '', interest: 'Keukens', message: '' }); React.useEffect(() => { const obs = new IntersectionObserver((entries) => { entries.forEach(e => { if (e.isIntersecting) e.target.classList.add('in'); }); }, { threshold: 0.15 }); ref.current.querySelectorAll('.reveal').forEach(el => obs.observe(el)); return () => obs.disconnect(); }, []); const submit = async (e) => { e.preventDefault(); setSending(true); setError(''); try { const res = await fetch('https://formsubmit.co/ajax/amersfoort@assosgroep.nl', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({ Naam: form.name, Email: form.email, Telefoon: form.phone || 'Niet opgegeven', Interesse: form.interest, Bericht: form.message || 'Geen bericht', _subject: `Nieuwe offerte aanvraag — ${form.interest}`, _template: 'table', }), }); if (res.ok) { setSubmitted(true); } else { setError('Er is iets misgegaan. Probeer het opnieuw of mail ons direct.'); } } catch { setError('Geen verbinding. Controleer uw internet en probeer opnieuw.'); } finally { setSending(false); } }; // styling now handled by .field-input / .field-textarea / .field-label classes return (
{/* Decorative serif "Q" */}
&
Offerte

Vertel ons over uw project.

Plan een vrijblijvend kennismakingsgesprek. We nemen binnen 24 uur contact met u op om uw wensen te bespreken.

Bel ons
(033) 207 8060
{!submitted ? (
setForm({...form, name: e.target.value})} required />
setForm({...form, phone: e.target.value})} />
setForm({...form, email: e.target.value})} required />
{['Keukens', 'Badkamers', 'PVC & Tegels', 'Interieurbouw', 'Verbouwing'].map(opt => ( ))}