// pages-habiter.jsx — "Habiter" page (primo-accédant) for Résidence NOVA // ────────────────────────────────────────────────────────────────────────── // PLAQUETTE MODAL — formulaire de demande + téléchargement // ────────────────────────────────────────────────────────────────────────── function PlaquetteModal({ lot, onClose }) { const [form, setForm] = React.useState({ prenom: "", nom: "", email: "", tel: "", projet: "habiter", message: "", consent: false }); const [submitted, setSubmitted] = React.useState(false); const PDF = "assets/Plaquette-Nova-Residence.pdf"; React.useEffect(() => { const onEsc = (e) => e.key === "Escape" && onClose(); document.addEventListener("keydown", onEsc); document.body.style.overflow = "hidden"; return () => {document.removeEventListener("keydown", onEsc);document.body.style.overflow = "";}; }, [onClose]); const submit = (e) => { e.preventDefault(); if (!form.prenom || !form.nom || !form.email || !form.tel || !form.consent) return; const projetLabel = { habiter: "Habiter", investir: "Investir" }[form.projet] || form.projet; fetch("/api/contact", { method: "POST", headers: { "Content-Type": "application/json", "Accept": "application/json" }, body: JSON.stringify({ nom: `${form.prenom} ${form.nom}`, email: form.email, tel: form.tel || "", projet: projetLabel, message: form.message || "", lot: lot ? lot.id : "", "bot-field": form.website || "" }) }). then((res) => {if (res.ok) {setSubmitted(true);if (window.plausible) {plausible('Formulaire NOVA');}if (window.fbq) {fbq('track', 'Lead');}if (window.gtag) {gtag('event', 'conversion', {'send_to': 'AW-18202499337/A5TTCI2K0L8cEImy0OdD'});}}}). catch(() => {}); }; const labelStyle = { fontFamily: "var(--font-b)", fontSize: 11, letterSpacing: "0.14em", textTransform: "uppercase", color: "var(--muted)", fontWeight: 500 }; const inputStyle = { fontFamily: "var(--font-b)", fontSize: 15, color: "var(--ink)", background: "var(--surface)", border: "1px solid var(--line)", padding: "13px 15px", borderRadius: 0, outline: "none", width: "100%", boxSizing: "border-box" }; return (
e.stopPropagation()} style={{ background: "var(--bg)", maxWidth: 560, width: "100%", boxShadow: "0 40px 80px -20px rgba(0,0,0,.4)", position: "relative", maxHeight: "calc(100vh - 48px)", overflowY: "auto" }}>
{submitted ?

Merci, {form.prenom}.

Merci ! Vous allez recevoir la plaquette par email à {form.email}, d'ici quelques minutes. Pensez à vérifier vos spams. Anne vous recontacte rapidement.

: La plaquette commerciale

Recevez la plaquette.

Renseignez vos coordonnées : vous recevez la plaquette par email, et Anne vous recontacte.

Mon projet
{[["habiter", "Habiter"], ["investir", "Investir"]].map(([k, lbl]) => )}