/* ========================================================
   Formulaire de rendez-vous, habillage v3 (DA « Fleur »).
   Chargé UNIQUEMENT sur /demande-rdv/?da=v3 (liens des pages v3) : la page
   reste la même (HTML et JS intacts), Sage et le site en ligne gardent leur
   habillage. Pas de menu : page isolée, logo en retour vers l'accueil v3.
   ======================================================== */
html body.fleur-rdv.page-demande-rdv-standalone {
  --f-bg: #FBF7F1; --f-card: #FFFFFF; --f-ink: #2E3B2A; --f-soft: #4B5946; --f-muted: #5F6A5B;
  --f-line: #E9DFD5; --f-lin: #F2ECE4; --f-sage: #50624A; --f-sage-h: #3B4A36; --f-sage3: #A9BCA0;
  --f-terra: #A35C4B; --f-terra-d: #8C4C3D; --f-blush: #F8E9E2; --f-gold: #E5B65A;
  --f-serif: 'Cormorant Garamond', Georgia, serif; --f-sans: 'Nunito Sans', 'Segoe UI', sans-serif;
  --sage-accent: var(--f-sage); --sage-accent-hover: var(--f-sage-h); --sage-ink: var(--f-ink); --sage-ink-soft: var(--f-soft);
  --sage-line: var(--f-line); --sage-bg-card: #fff; --sage-serif: var(--f-serif); --sage-sans: var(--f-sans); --sage-500: var(--f-sage3);
  background: var(--f-bg) !important; color: var(--f-ink); font-family: var(--f-sans);
}
/* retour : le logo, en haut à gauche, rien d'autre */
html body.fleur-rdv .rdv-standalone-bar { top: 1.2rem; left: clamp(1rem, 3vw, 2.4rem); }
html body.fleur-rdv .rdv-standalone-bar img { height: clamp(52px, 6vw, 72px); width: auto; display: block; }
html body.fleur-rdv .rdv-standalone-bar:hover { opacity: .8; }

/* en-tête du formulaire */
html body.fleur-rdv .content-section { padding-top: clamp(6.5rem, 12vh, 8rem) !important; }
html body.fleur-rdv #rdvWrap { position: relative; }
html body.fleur-rdv .section-title { font-family: var(--f-serif); font-weight: 400; font-size: clamp(2.2rem, 4.4vw, 3.4rem); color: var(--f-ink); }
html body.fleur-rdv .text-center p { color: var(--f-soft) !important; font-size: 1.0625rem; }

/* étapes : pastilles, fil terre cuite */
html body.fleur-rdv .rdv-steps__num { font-family: var(--f-sans); font-weight: 800; background: #fff; border: 1.5px solid var(--f-line); color: var(--f-muted); }
html body.fleur-rdv .rdv-steps__item.is-current .rdv-steps__num { background: var(--f-terra); border-color: var(--f-terra); color: #fff; box-shadow: 0 0 0 5px color-mix(in srgb, var(--f-terra) 16%, transparent); }
html body.fleur-rdv .rdv-steps__item.is-done .rdv-steps__num { background: var(--f-sage); border-color: var(--f-sage); color: #fff; }
html body.fleur-rdv .rdv-steps__label { font-weight: 700; color: var(--f-muted); }
html body.fleur-rdv .rdv-steps__item.is-current .rdv-steps__label { color: var(--f-ink); }
html body.fleur-rdv .rdv-steps__bar { background: var(--f-line); height: 3px; border-radius: 3px; }
html body.fleur-rdv .rdv-steps__fill { background: var(--f-terra); }

/* chaque étape : une carte blanche arrondie */
html body.fleur-rdv .rdv-step { background: var(--f-card); border-radius: 30px; padding: clamp(24px, 4vw, 44px); box-shadow: 0 1px 2px rgba(46,59,42,.04), 0 24px 50px -32px rgba(46,59,42,.3); }
html body.fleur-rdv .rdv-step__title { font-family: var(--f-serif); font-weight: 500; font-size: clamp(1.7rem, 2.6vw, 2.2rem); color: var(--f-ink); }
html body.fleur-rdv .rdv-step__intro, html body.fleur-rdv .rdv-form__help, html body.fleur-rdv .rdv-form__footnote { color: var(--f-muted); }
html body.fleur-rdv .rdv-form__label, html body.fleur-rdv .rdv-form__legend { font-weight: 700; color: var(--f-ink); }
html body.fleur-rdv .req { color: var(--f-terra); }

/* champs */
html body.fleur-rdv .contact-form__input, html body.fleur-rdv .contact-form__textarea, html body.fleur-rdv textarea, html body.fleur-rdv select {
  font-family: var(--f-sans); font-size: 1rem; color: var(--f-ink); background: var(--f-bg); border: 1.5px solid var(--f-line); border-radius: 14px; padding: .8rem 1rem; box-shadow: none; transition: border-color .2s, background .2s, box-shadow .2s;
}
html body.fleur-rdv .contact-form__input:focus, html body.fleur-rdv textarea:focus, html body.fleur-rdv select:focus {
  outline: none; border-color: var(--f-terra); background: #fff; box-shadow: 0 0 0 4px color-mix(in srgb, var(--f-terra) 14%, transparent);
}
html body.fleur-rdv .is-invalid, html body.fleur-rdv .contact-form__input.is-invalid { border-color: #B3261E !important; }
/* liste déroulante : chevron de la charte dans une pastille (pas de chevron natif) */
html body.fleur-rdv select { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding-right: 3.2rem; cursor: pointer;
  background-image: radial-gradient(circle at center, var(--f-sage) 0 15px, transparent 15.5px),
                    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-size: 32px 32px, 16px 16px; background-position: right .55rem center, right 1.05rem center; }

/* radios et case de consentement dessinés (pas de contrôle natif brut) */
html body.fleur-rdv .rdv-form__radio { color: var(--f-ink); font-weight: 600; padding: .55rem 1rem .55rem .7rem; border: 1.5px solid var(--f-line); border-radius: 999px; background: #fff; transition: border-color .2s, background .2s; }
html body.fleur-rdv .rdv-form__radio:hover { border-color: var(--f-sage3); }
html body.fleur-rdv .rdv-form__radio:has(input:checked) { border-color: var(--f-terra); background: var(--f-blush); }
html body.fleur-rdv .rdv-form__radios { gap: .6rem; }
html body.fleur-rdv .rdv-form__radio input, html body.fleur-rdv .rdv-form__consent input {
  -webkit-appearance: none; appearance: none; width: 20px; height: 20px; margin: 0; flex: none; border: 1.5px solid var(--f-sage3); background: #fff; display: grid; place-items: center; cursor: pointer; transition: border-color .2s, background .2s;
}
html body.fleur-rdv .rdv-form__radio input { border-radius: 50%; }
html body.fleur-rdv .rdv-form__radio input::after { content: ''; width: 10px; height: 10px; border-radius: 50%; background: var(--f-terra); transform: scale(0); transition: transform .2s; }
html body.fleur-rdv .rdv-form__radio input:checked { border-color: var(--f-terra); }
html body.fleur-rdv .rdv-form__radio input:checked::after { transform: scale(1); }
html body.fleur-rdv .rdv-form__consent input { border-radius: 6px; }
html body.fleur-rdv .rdv-form__consent input::after { content: ''; width: 5px; height: 10px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) translate(-1px, -1px) scale(0); transition: transform .2s; }
html body.fleur-rdv .rdv-form__consent input:checked { background: var(--f-terra); border-color: var(--f-terra); }
html body.fleur-rdv .rdv-form__consent input:checked::after { transform: rotate(45deg) translate(-1px, -1px) scale(1); }
html body.fleur-rdv .rdv-form__radio input:focus-visible, html body.fleur-rdv .rdv-form__consent input:focus-visible { outline: 2px solid var(--f-terra); outline-offset: 3px; }
html body.fleur-rdv .rdv-form__consent a, html body.fleur-rdv .rdv-form__alert a { color: var(--f-terra); }

/* encarts */
html body.fleur-rdv .rdv-form__notice { background: var(--f-lin); border: 0; border-radius: 16px; color: var(--f-ink); }
html body.fleur-rdv .rdv-form__notice i { color: var(--f-terra); }
html body.fleur-rdv .rdv-form__alert { background: var(--f-blush); border: 0; border-radius: 16px; color: var(--f-terra-d); }
html body.fleur-rdv .rdv-form__conditional { border-left: 0; background: var(--f-lin); border-radius: 16px; padding: 1rem 1.2rem; }
html body.fleur-rdv .rdv-recap { background: var(--f-lin); border: 0; border-radius: 20px; }
html body.fleur-rdv .rdv-recap__row { border-color: var(--f-line); }
html body.fleur-rdv .rdv-recap__key { color: var(--f-muted); font-weight: 700; }
html body.fleur-rdv altcha-widget { --altcha-color-base: #fff; --altcha-border-color: var(--f-line); --altcha-color-base-content: var(--f-ink); --altcha-color-success: var(--f-sage); --altcha-border-radius: 14px; }

/* boutons : pilule, flèche en pastille */
html body.fleur-rdv .btn { font-family: var(--f-sans); font-weight: 700; letter-spacing: 0; padding: .85rem 1.6rem; }
html body.fleur-rdv .btn--primary { background: var(--f-sage); border-color: var(--f-sage); color: #fff; }
html body.fleur-rdv .btn--primary:hover { background: var(--f-sage-h); border-color: var(--f-sage-h); transform: none; box-shadow: none; }
html body.fleur-rdv .rdv-form__submit { background: var(--f-terra) !important; border-color: var(--f-terra) !important; }
html body.fleur-rdv .rdv-form__submit:hover { background: var(--f-terra-d) !important; }
html body.fleur-rdv .btn--secondary { background: #fff; color: var(--f-ink); border: 1.5px solid var(--f-sage3); }
html body.fleur-rdv .btn--secondary:hover { background: var(--f-lin); color: var(--f-ink); border-color: var(--f-sage); }

/* écran de succès */
html body.fleur-rdv .rdv-success { background: #fff; border-radius: 30px; padding: clamp(28px, 5vw, 56px); box-shadow: 0 24px 50px -32px rgba(46,59,42,.3); }
html body.fleur-rdv .rdv-success__icon { color: var(--f-terra); }
html body.fleur-rdv .rdv-success__title { font-family: var(--f-serif); font-weight: 500; color: var(--f-ink); }
/* consentement : pas de barre latérale colorée (motif jugé « trop IA » le 11/10) */
html body.fleur-rdv .rdv-form__consent { border: 0 !important; border-left: 0 !important; background: var(--f-lin); border-radius: 16px; padding: 1rem 1.2rem; }
html body.fleur-rdv .rdv-form__conditional, html body.fleur-rdv .rdv-form__notice, html body.fleur-rdv .rdv-form__alert { border-left: 0 !important; }
