.elementor-4501 .elementor-element.elementor-element-d1210e9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-html{padding-bottom:0px;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button[type="submit"]{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-4501 .elementor-element.elementor-element-e641408{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}#elementor-popup-modal-4501 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-4501{justify-content:center;align-items:center;pointer-events:all;background-color:rgba(0,0,0,.8);}#elementor-popup-modal-4501 .dialog-close-button{display:flex;}#elementor-popup-modal-4501 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}/* Start custom CSS for form, class: .elementor-element-e641408 *//* FORMULAIRE - STYLE PREMIUM */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-form {
  background: #ffffff;
  padding: 34px;
  border-radius: 24px;
  border: 2px solid rgba(201, 163, 220, 0.45);
  box-shadow: 0 25px 70px rgba(44, 128, 130, 0.18);
  position: relative;
  overflow: hidden;
}

/* Petit effet décoratif */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-form::before {
  content: "";
  position: absolute;
  top: -80px;
  right: -80px;
  width: 220px;
  height: 220px;
  background: radial-gradient(circle, rgba(201, 163, 220, 0.35), transparent 70%);
  pointer-events: none;
}

.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-form::after {
  content: "";
  position: absolute;
  bottom: -90px;
  left: -90px;
  width: 230px;
  height: 230px;
  background: radial-gradient(circle, rgba(44, 128, 130, 0.22), transparent 70%);
  pointer-events: none;
}

/* Espacement des champs */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group {
  margin-bottom: 18px;
  position: relative;
  z-index: 2;
}

/* Labels */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-label {
  color: #2C8082;
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 7px;
  letter-spacing: 0.2px;
}

/* Champs */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field,
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-textual {
  background: #fbf8fd;
  border: 1.5px solid rgba(44, 128, 130, 0.25);
  border-radius: 14px;
  padding: 14px 16px;
  color: #1f2933;
  font-size: 15px;
  min-height: 48px;
  transition: all 0.25s ease;
  box-shadow: 0 6px 18px rgba(44, 128, 130, 0.06);
}

/* Placeholder */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field::placeholder,
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-textual::placeholder {
  color: rgba(44, 128, 130, 0.45);
}

/* Focus */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field:focus,
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-textual:focus {
  background: #ffffff;
  border-color: #C9A3DC;
  box-shadow: 0 0 0 4px rgba(201, 163, 220, 0.22);
  outline: none;
}

/* Textarea */
.elementor-4501 .elementor-element.elementor-element-e641408 textarea.elementor-field {
  min-height: 130px;
  resize: vertical;
}

/* Bouton */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button {
  width: 100%;
  border-radius: 16px;
  background: linear-gradient(135deg, #2C8082 0%, #C9A3DC 100%);
  color: #ffffff;
  font-weight: 700;
  font-size: 16px;
  padding: 16px 24px;
  border: none;
  box-shadow: 0 14px 30px rgba(44, 128, 130, 0.28);
  transition: all 0.25s ease;
}

/* Hover bouton */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(201, 163, 220, 0.35);
  filter: brightness(1.04);
}

/* Texte du bouton */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button-text {
  color: #ffffff;
}

/* Messages succès / erreur */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-message {
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
}

.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-message-success {
  background: rgba(44, 128, 130, 0.1);
  color: #2C8082;
  border: 1px solid rgba(44, 128, 130, 0.25);
}

.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-message-danger {
  background: rgba(201, 163, 220, 0.12);
  color: #7a3b99;
  border: 1px solid rgba(201, 163, 220, 0.35);
}

/* Responsive mobile */
@media (max-width: 767px) {
  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-form {
    padding: 24px 18px;
    border-radius: 20px;
  }

  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-group {
    width: 100% !important;
    margin-bottom: 16px;
  }

  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field,
  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-textual {
    font-size: 15px;
    padding: 13px 14px;
    border-radius: 13px;
  }

  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-button {
    padding: 15px 20px;
    border-radius: 14px;
    font-size: 15px;
  }
}
/* ===============================
   CHAMP SELECT / LISTE DÉROULANTE
================================ */

/* Conteneur du select */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select {
  position: relative;
}

/* Supprime les styles Elementor parasites */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper {
  position: relative;
  width: 100%;
  background: transparent;
}

/* Champ select */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select,
.elementor-4501 .elementor-element.elementor-element-e641408 select.elementor-field-textual {
  width: 100%;
  height: 58px;
  background: #ffffff;
  border: 1.5px solid rgba(44, 128, 130, 0.28);
  border-radius: 14px;
  padding: 0 54px 0 18px;
  color: #1f2933;
  font-size: 15px;
  font-weight: 500;
  line-height: 58px;
  cursor: pointer;
  outline: none;
  box-shadow: 0 6px 18px rgba(44, 128, 130, 0.06);
  transition: all 0.25s ease;

  /* enlève l'apparence basique du navigateur */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

/* Focus du select */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select:focus,
.elementor-4501 .elementor-element.elementor-element-e641408 select.elementor-field-textual:focus {
  background: #ffffff;
  border-color: #C9A3DC;
  box-shadow: 0 0 0 4px rgba(201, 163, 220, 0.22);
}

/* Flèche personnalisée */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 2px solid #2C8082;
  border-bottom: 2px solid #2C8082;
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
  transition: all 0.25s ease;
}

/* Animation légère au focus */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select:focus-within .elementor-select-wrapper::after {
  border-color: #C9A3DC;
  transform: translateY(-45%) rotate(45deg);
}

/* Couleur des options dans la liste */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select option {
  color: #1f2933;
  background: #ffffff;
}

/* Si ton select a une option vide / placeholder */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select:invalid {
  color: rgba(31, 41, 51, 0.55);
}

/* Correction mobile */
@media (max-width: 767px) {
  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select,
  .elementor-4501 .elementor-element.elementor-element-e641408 select.elementor-field-textual {
    height: 54px;
    line-height: 54px;
    font-size: 15px;
    border-radius: 13px;
    padding-left: 15px;
    padding-right: 48px;
  }

  .elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper::after {
    right: 17px;
    width: 9px;
    height: 9px;
  }
}

/* ===============================
   CORRECTION SELECT - UNE SEULE FLÈCHE
================================ */

/* Supprime la flèche native du navigateur */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: none !important;
  padding-right: 62px !important;
}

/* Supprime uniquement la flèche Elementor par défaut */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .select-caret-down-wrapper,
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper:before {
  display: none !important;
  content: none !important;
}

/* Garde notre flèche personnalisée */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper {
  position: relative !important;
}

/* Notre flèche */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select .elementor-select-wrapper::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  right: 24px !important;
  top: 50% !important;
  width: 12px !important;
  height: 12px !important;
  border-right: 3px solid #2C8082 !important;
  border-bottom: 3px solid #2C8082 !important;
  transform: translateY(-65%) rotate(45deg) !important;
  pointer-events: none !important;
  z-index: 10 !important;
}

/* Focus : la flèche devient violette */
.elementor-4501 .elementor-element.elementor-element-e641408 .elementor-field-type-select:focus-within .elementor-select-wrapper::after {
  border-color: #C9A3DC !important;
}/* End custom CSS */