.elementor-5916 .elementor-element.elementor-element-3286846 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-5916 .elementor-element.elementor-element-9828482{width:100%;max-width:100%;text-align:center;}.elementor-5916 .elementor-element.elementor-element-9828482 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-5916 .elementor-element.elementor-element-9828482 .elementor-heading-title{font-size:45px;color:#2D779F;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-5916 .elementor-element.elementor-element-3286846 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}}@media(max-width:767px){.elementor-5916 .elementor-element.elementor-element-3286846 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}}/* Start custom CSS for html, class: .elementor-element-14ece0c *//* =========================================
   FORM SECTION
========================================= */
section.form_multi_steps {
  text-align: center;
  padding: 0 20px 20px 20px;
  display: flex;
  justify-content: center;
}

section.form_multi_steps .form {
  width: 80%;
  max-width: 900px;
}

/* Titres */

.form_step h2 {
  margin-bottom: 30px;
  font-size: 35px;
  color: #2d779f;
}

.form_step h3 {
  margin: 20px 0;
  font-size: 25px;
  color: #2d779f;
  text-align: left;
}

/* =========================================
   FORM STEPS
========================================= */
.form_step {
  display: none;
  margin-top: 20px;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.form_step .form-row {
  margin: 30px 0;
}

.isActive {
  display: block;
  opacity: 1;
}



/* =========================================
INPUT FIELDS
========================================= */
label {
  display: block;
  text-align: left;
  font-weight: bold;
  margin-bottom: 5px;
}

.form_step input {
  width: 100%;
  height: 60px;
  padding: 15px 20px;
  margin-bottom: 10px;
  border-radius: 8px;
  border: 1px solid #4169e1;
  font-size: 1em;
  transition: none;
}

input.failure,
select.failure {
  border: 2px solid red;
}

input.success,
select.success {
  border: 2px solid green;
}

select {
  width: 100%;
  height: 60px;
  padding: 15px 20px;
  margin-bottom: 10px;
  border-radius: 8px;
  border: 1px solid #4169e1;
  font-size: 1em;
}

/* BOUTONS DE NAVIGATION (Retour / Continuer / Envoyer) */

button {
  padding: 15px 30px;
  margin: 10px 10px;
  border-radius: 8px;
  width: 25%;
  border: none;
  background-color: #2d779f;
  color: white;
  font-size: 1em;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

button:hover {
  background-color: #3551b0;
}

.error {
  color: red;
  text-align: left;
  min-height: 1.2em;
}

.errorSubmit {
  color: red;
  text-align: center;
  min-height: 1.2em;
}

.successSubmit {
  color: green;
  text-align: center;
  min-height: 1.2em;
}

/* ========================================= 
FORM ROW FLEX (pour inputs côte à côte)
========================================= */
.form-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}

.form-row > div {
  flex: 1;
  min-width: 150px;
  display: flex;
  flex-direction: column;
}

/* =========================================
   RESPONSIVE
========================================= */

/* Mobile grand écran */
@media (max-width: 768px) {
  section.form_multi_steps .form {
    width: 100%;
  }

  .form-row {
    flex-direction: column;
    align-items: center;
  }

  .form-row > div {
    width: 100%;
  }

  button {
    width: 40%;
  }
}

/* Mobile petit écran */
@media (max-width: 480px) {
  .form_step h2 {
    font-size: 20px;
  }

  .form_step input {
    padding: 12px 15px;
  }

  button {
    width: 55%;
    padding: 12px 0;
    margin: 10px 0;
  }
}/* End custom CSS */