/* BoatsFun — Page FAQ. Expose window.BFPageFaq. */ (function () { const { I } = window.BF; const CATEGORIES = [ { id: "reservation", label: "Réservation", items: [ { q: "Comment réserver un bateau sur BoatsFun ?", a: "Vous choisissez un bateau, une date, une plage horaire, puis vous suivez les étapes de réservation. Une confirmation vous sera envoyée lorsque la réservation sera validée." }, { q: "Est-ce que je peux réserver pour une journée entière ?", a: "Oui. Certains bateaux peuvent être disponibles pour une journée entière selon les disponibilités du propriétaire." }, { q: "Est-ce que les prix sont fixes ?", a: "Les prix affichés peuvent varier selon le bateau, la durée, la saison, la disponibilité et les conditions du propriétaire." } ] }, { id: "offre", label: "Faire une offre", items: [ { q: "Comment fonctionne « Faire une offre » ?", a: "Vous proposez un budget raisonnable pour une date et une plage horaire. Si un propriétaire accepte votre offre, la réservation peut être confirmée." }, { q: "Que se passe-t-il si personne n'accepte mon offre ?", a: "Si aucune offre n'est acceptée, le dépôt est remboursé. BoatsFun n'est pas responsable d'autres pertes, frais ou garanties liés à une offre non acceptée." } ] }, { id: "depot", label: "Dépôt et remboursement", items: [ { q: "Est-ce qu'un dépôt est requis ?", a: "Oui, un dépôt peut être demandé pour sécuriser une réservation ou une offre. Le montant exact dépend du bateau et du type de demande." }, { q: "Quand suis-je remboursé ?", a: "Le remboursement dépend de la situation : offre refusée, annulation admissible, indisponibilité du bateau ou autre cas prévu dans les politiques BoatsFun." }, { q: "Où consulter les politiques complètes ?", a: "Les politiques complètes seront regroupées dans la page Politiques & conditions." } ] }, { id: "meteo", label: "Météo et sécurité", items: [ { q: "Que se passe-t-il en cas de mauvaise météo ?", a: "Selon les conditions et la politique du propriétaire, la sortie peut être reportée, annulée ou évaluée au cas par cas." }, { q: "Est-ce que les bateaux sont vérifiés ?", a: "Les bateaux doivent être validés avant leur mise en ligne. BoatsFun peut demander des informations sur le bateau, l'assurance, l'emplacement et les conditions de location." } ] }, { id: "permis", label: "Permis et chauffeur", items: [ { q: "Ai-je besoin d'un permis pour louer un bateau ?", a: "Cela dépend du type de bateau, du lieu, de la réglementation applicable et des conditions du propriétaire. Certaines locations peuvent nécessiter un permis ou une preuve d'expérience." }, { q: "Est-ce possible de louer avec chauffeur ?", a: "La location avec chauffeur dépend du statut du propriétaire, de l'assurance, de l'entreprise et des règles applicables. Cette option peut demander des vérifications additionnelles." } ] }, { id: "hote", label: "Devenir hôte", items: [ { q: "Comment proposer mon bateau sur BoatsFun ?", a: "Vous pouvez remplir le formulaire Devenir hôte avec vos informations et celles de votre bateau. L'équipe BoatsFun vous contactera pour la suite." }, { q: "Est-ce que je peux proposer mon bateau même si je suis un particulier ?", a: "Oui, mais certaines options peuvent être limitées selon votre statut, votre assurance et les règles applicables." } ] } ]; /* Flatten categories to get a global index per item */ const FLAT = []; CATEGORIES.forEach((cat) => { cat.items.forEach((item) => { FLAT.push({ catLabel: cat.label, catId: cat.id, ...item }); }); }); const styles = ` /* ===== HERO ===== */ .bf .fq-hero { background: #F0F8FF; padding: 56px 20px 48px; text-align: center; } .bf .fq-hero-inner { max-width: 640px; margin: 0 auto; } .bf .fq-hero h1 { font-family: 'Poppins', sans-serif; font-size: 40px; font-weight: 800; color: #002244; margin: 0 0 14px; line-height: 1.15; } .bf .fq-hero .fq-sub { font-size: 17px; color: #6B7A8C; margin: 0 0 10px; line-height: 1.6; } .bf .fq-hero .fq-intro { font-size: 14px; color: #8A9BAC; line-height: 1.7; } /* ===== MAIN ===== */ .bf .fq-main { background: #F0F8FF; padding: 0 20px 80px; } .bf .fq-wrap { max-width: 800px; margin: 0 auto; } /* ===== CATEGORY ===== */ .bf .fq-category { margin-bottom: 36px; } .bf .fq-cat-label { font-family: 'Poppins', sans-serif; font-size: 11px; font-weight: 700; color: #00B5E2; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 12px; padding-left: 4px; } /* ===== ACCORDION ===== */ .bf .fq-card { background: #fff; border-radius: 14px; box-shadow: 0 4px 20px -8px rgba(0,34,68,.10); margin-bottom: 8px; overflow: hidden; } .bf .fq-question { width: 100%; background: none; border: none; padding: 18px 22px; display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; text-align: left; font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; color: #002244; transition: background .15s; } .bf .fq-question:hover { background: #F7FBFF; } .bf .fq-question.open { color: #002244; border-bottom: 1px solid #E8F2FF; } .bf .fq-chevron { width: 20px; height: 20px; border-radius: 50%; background: #EAF6FF; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 14px; color: #00B5E2; font-weight: 700; transition: background .15s, transform .2s; line-height: 1; } .bf .fq-question.open .fq-chevron { background: #00B5E2; color: #fff; transform: rotate(45deg); } .bf .fq-answer { padding: 0 22px; max-height: 0; overflow: hidden; transition: max-height .25s ease, padding .25s ease; } .bf .fq-answer.open { padding: 16px 22px 20px; max-height: 500px; } .bf .fq-answer p { font-family: 'Inter', sans-serif; font-size: 14.5px; color: #4A5C6E; line-height: 1.75; margin: 0; } /* ===== CTA BLOCK ===== */ .bf .fq-cta-block { max-width: 800px; margin: 48px auto 0; background: #002244; border-radius: 20px; padding: 40px 48px; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; } .bf .fq-cta-block .fq-cta-text h3 { font-family: 'Poppins', sans-serif; font-size: 22px; font-weight: 700; color: #fff; margin: 0 0 8px; } .bf .fq-cta-block .fq-cta-text p { font-size: 14px; color: rgba(255,255,255,.72); margin: 0; line-height: 1.6; } .bf .fq-cta-btns { display: flex; gap: 12px; flex-wrap: wrap; flex-shrink: 0; } .bf .fq-btn-primary { display: inline-block; background: #FF8200; color: #fff; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 14.5px; padding: 12px 24px; border-radius: 40px; text-decoration: none; transition: background .2s; white-space: nowrap; } .bf .fq-btn-primary:hover { background: #E56F00; } .bf .fq-btn-secondary { display: inline-block; background: rgba(255,255,255,.12); color: #fff; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 14.5px; padding: 12px 24px; border-radius: 40px; text-decoration: none; border: 1px solid rgba(255,255,255,.25); transition: background .2s; white-space: nowrap; } .bf .fq-btn-secondary:hover { background: rgba(255,255,255,.22); } /* ===== RESPONSIVE ===== */ @media (max-width: 720px) { .bf .fq-hero h1 { font-size: 28px; } .bf .fq-cta-block { padding: 28px 24px; flex-direction: column; align-items: flex-start; gap: 20px; } .bf .fq-question { font-size: 14px; padding: 16px 16px; } .bf .fq-answer.open { padding: 14px 16px 18px; } } @media (max-width: 500px) { .bf .fq-cta-block { padding: 24px 18px; } .bf .fq-cta-btns { flex-direction: column; width: 100%; } .bf .fq-btn-primary, .bf .fq-btn-secondary { text-align: center; } } `; function BFPageFaq() { const [openIndex, setOpenIndex] = React.useState(null); function toggle(idx) { setOpenIndex(openIndex === idx ? null : idx); } /* Build category blocks with correct flat indices */ let flatIdx = 0; const categoryBlocks = CATEGORIES.map((cat) => { const items = cat.items.map((item) => { const idx = flatIdx++; return { ...item, idx }; }); return { ...cat, items }; }); return (
{/* ===== HERO ===== */}

Questions fréquentes

Tout ce qu'il faut savoir avant de réserver, faire une offre ou proposer votre bateau sur BoatsFun.

Notre objectif est de rendre la location de bateaux simple, claire et sécuritaire.

{/* ===== FAQ ===== */}
{categoryBlocks.map((cat) => (
{cat.label}
{cat.items.map((item) => (

{item.a}

))}
))} {/* ===== CTA FINAL ===== */}

Vous n'avez pas trouvé votre réponse ?

Contactez notre équipe et nous vous répondrons rapidement.

); } window.BFPageFaq = BFPageFaq; })();