/* =====================================================================
   Composant : formulaire de devis en ÉTAPES
   Fichier : assets/css/lead-form.css — chargé une seule fois par app/views/lead-form.php
   Portée : .lead-form uniquement. Réutilise les classes du site (.ms-progress,
   .ms-step, .ms-nav, .fld, .fld-row, .consent, .form-note, .form-alert,
   .field-error) sans les redéfinir.
   ===================================================================== */
.lead-form .lf-group{border:0;padding:0;margin:0;min-width:0}
.lead-form legend.ms-step__title{display:block;width:100%;float:none;padding:0}
.lead-form .lf-optional{font-style:normal;font-weight:600;text-transform:none;color:var(--muted,#6f7b95);font-size:.86rem}
.lead-form .lf-req{color:#d64a3a;font-weight:700;margin-left:2px}
.lead-form .lf-stepinfo{margin:-16px 0 18px;font-size:.78rem;font-weight:700;color:var(--muted,#6f7b95)}

/* Champs en erreur (validation à chaque étape ou retour serveur) */
.lead-form input[aria-invalid="true"],.lead-form select[aria-invalid="true"],.lead-form .invalid{border-color:#d64a3a;box-shadow:0 0 0 4px rgba(214,74,58,.12)}
.lead-form .lf-hint{display:block;color:#d64a3a;font-size:.76rem;font-weight:600;margin-top:6px}

/* Envoi (dernière étape) */
.lead-form .lf-actions{margin-top:22px}
.lead-form .lf-submit{justify-content:center}
.lead-form .lf-submit[disabled]{opacity:.7;cursor:progress;transform:none}

/* Sans JavaScript : les trois étapes s'affichent à la suite, sans boutons Continuer / Retour */
html:not(.js) .lead-form .ms-step{display:block}
html:not(.js) .lead-form [data-next],html:not(.js) .lead-form [data-prev]{display:none}
html:not(.js) .lead-form .ms-progress,html:not(.js) .lead-form .lf-stepinfo{display:none}

@media (max-width:640px){
  .lead-form .ms-nav{flex-direction:column-reverse;align-items:stretch}
  .lead-form .ms-nav .btn{justify-content:center}
  .lead-form .ms-nav > span{display:none}
}
