/* formulaire.css — V2 · 11/06/2026 · Direction A · scopé .ri-form · tokens :root via tokens-elementor.css (child theme) */
.ri-form{--err:#B3261E;font-family:var(--font,'Instrument Sans',system-ui,sans-serif);color:var(--ink);max-width:680px;margin:0 auto;font-size:16px;line-height:1.6}
.ri-form *,.ri-form *::before,.ri-form *::after{box-sizing:border-box}
.ri-form :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.ri-form .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rf-head{margin-bottom:32px}
.rf-eye{display:inline-block;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--support);padding:6px 12px;border-radius:4px;margin:0 0 16px}
.rf-title{font-size:28px;font-weight:700;line-height:1.25;margin:0 0 8px}
.rf-sub{color:var(--ink-2);font-size:16px;margin:0;max-width:54ch}
.rf-stepper{display:flex;gap:8px;list-style:none;margin:0 0 32px;padding:0}
.rf-stepper li{flex:1;display:flex;align-items:center;gap:8px;padding:8px 0;border-top:2px solid var(--line);font-size:14px;color:var(--ink-2)}
.rf-stepper .n{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--support);color:var(--accent);font-weight:700;font-size:13px;flex:none}
.rf-stepper .is-current{border-top-color:var(--accent);color:var(--ink);font-weight:600}
.rf-stepper .is-done{border-top-color:var(--accent)}
.rf-stepper .is-done .n,.rf-stepper .is-current .n{background:var(--accent);color:#fff}
.ri-form fieldset{border:0;margin:0;padding:0;min-width:0}
.rf-legend{font-size:22px;font-weight:700;padding:0;margin:0 0 16px}
.rf-hint{font-size:14px;color:var(--ink-2);margin:-8px 0 24px}
.rf-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ri-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px;cursor:pointer;font-weight:500;background:var(--bg)}
.ri-card:hover{border-color:var(--accent)}
.ri-card input{accent-color:var(--accent);width:18px;height:18px;margin:0;flex:none}
.ri-card:has(input:checked){border-color:var(--accent);background:var(--support);font-weight:600}
.ri-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
/* Multi-sélection : card non-sélectionnable quand 3 objectifs sont cochés */
.ri-card.is-disabled{opacity:.45;cursor:not-allowed}
.ri-card.is-disabled:hover{border-color:var(--line)}
.rf-f{margin-bottom:16px}
.rf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rf-f label{display:block;font-size:14px;font-weight:500;color:var(--ink-2);margin-bottom:4px}
.rf-f input,.rf-f select{width:100%;font:inherit;font-size:16px;font-weight:600;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:12px 16px}
.rf-help{font-size:13px;color:var(--ink-2);margin:4px 0 0}
.rf-f.is-invalid input,.rf-f.is-invalid select{border-color:var(--err)}
.rf-err{font-size:13px;font-weight:500;color:var(--err);margin:4px 0 0}
/* Honeypot : déporté hors écran, pas de display:none */
.rf-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.rf-recap{border:1px solid var(--line);border-radius:8px;padding:24px;margin-bottom:24px}
.rf-recap dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 24px}
.rf-recap dt{font-size:14px;color:var(--ink-2)}
.rf-recap dd{margin:0;font-weight:600;font-size:15px;text-align:right}
.rf-recap .hl{color:var(--accent)}
.rf-consent{margin-bottom:16px}
.rf-consent label{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.55;color:var(--ink);cursor:pointer}
.rf-consent input{accent-color:var(--accent);width:18px;height:18px;margin:2px 0 0;flex:none}
.rf-legal{font-size:13px;color:var(--ink-2);margin:0 0 8px}
.rf-nav{display:flex;gap:16px;margin-top:32px}
.rf-nav #ri-f-next,.rf-nav #ri-f-submit{margin-left:auto}
/* Correctif 11/06 : préfixe .ri-form (0-2-0) — .elementor-kit-5 button (0-1-1) battait .ri-btn (0-1-0) */
.ri-form .ri-btn{display:inline-block;font-family:inherit;font-size:16px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:12px 24px;cursor:pointer}
.ri-form .ri-btn:hover,.ri-form .ri-btn:focus{background:var(--accent-hover);color:#fff}
.ri-form .ri-btn--lg{padding:16px 32px;font-size:18px}
.ri-form .ri-btn--ghost{background:transparent;color:var(--accent);border:1px solid var(--line)}
.ri-form .ri-btn--ghost:hover,.ri-form .ri-btn--ghost:focus{background:var(--support);color:var(--accent)}
.ri-form .ri-btn[disabled]{opacity:.55;cursor:not-allowed}
.rf-success{text-align:center;border:1px solid var(--line);border-radius:8px;padding:48px 32px}
.rf-success h3{font-size:22px;font-weight:700;margin:16px 0 8px}
.rf-success p{color:var(--ink-2);margin:0 0 8px;font-size:16px}
.rf-success-meta{font-size:14px}
.ri-form [hidden]{display:none!important}
@media(max-width:860px){.rf-stepper .t{display:none}.rf-stepper li{justify-content:center}}
@media(max-width:520px){.rf-cards,.rf-row{grid-template-columns:1fr}}
