/* ---------- FAQ PAGE ---------- */ /* * Accordéon trilingue. Les 9 questions clés qu'un voyageur se pose * AVANT de réserver. Chaque entrée a un mini-icône SVG dessiné inline * dans le ton or de la maison. */ const FAQ_ITEMS = [ { id: "checkin", icon: "clock" }, { id: "breakfast", icon: "cup" }, { id: "wifi", icon: "wifi" }, { id: "parking", icon: "car" }, { id: "cards", icon: "card" }, { id: "cancel", icon: "shield" }, { id: "transfer", icon: "plane" }, ]; function FaqIcon({ name }) { // Stroke icons, monoline, 24px viewbox const common = { width: 22, height: 22, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 1.4, strokeLinecap: "round", strokeLinejoin: "round", }; switch (name) { case "clock": return ; case "cup": return ; case "wifi": return ; case "car": return ; case "paw": return ; case "card": return ; case "snow": return ; case "shield": return ; case "plane": return ; default: return null; } } function FaqRow({ id, icon, open, onToggle }) { const [t] = window.useT(); const q = t(`faq.${id}.q`); const a = t(`faq.${id}.a`); return (
{a.split("\n").map((line, i) => (

{line}

))}
); } function FAQPage() { const [t] = window.useT(); const [open, setOpen] = React.useState(() => new Set(["checkin"])); const toggle = (id) => { setOpen(prev => { const next = new Set(prev); if (next.has(id)) next.delete(id); else next.add(id); return next; }); }; return (
{t("faq.eyebrow")}

{t("faq.title1")}{t("faq.titleEm")}{t("faq.title2")}

{t("faq.sub")}

{FAQ_ITEMS.map(it => ( toggle(it.id)} /> ))}
); } window.FAQPage = FAQPage;