.elementor-2587 .elementor-element.elementor-element-17b7b4a{--display:flex;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__label{text-align:left;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__desc{text-align:left;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__fields-group{gap:0.7em 0.7em;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__field-wrap.checkradio-wrap span{gap:8px;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder input{color-scheme:normal;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder-repeater__row-remove{align-self:flex-start;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder .jet-apb-calendar-slots__close{font-size:35px;top:10px;right:10px;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__action-button{transition:all 0.3s;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder__next-page-wrap{text-align:left;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder-message--success{text-align:center;}.elementor-2587 .elementor-element.elementor-element-a866e8b .jet-form-builder-message--error{text-align:center;}#elementor-popup-modal-2587{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-2587 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-2587 .dialog-close-button{display:flex;}#elementor-popup-modal-2587 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}/* Start custom CSS for container, class: .elementor-element-17b7b4a *//* ==========================================================
   FUEL MOTORS — POPUP « RÉSERVER UN ESSAI »
   Elementor Popup ID : 2587
   Conteneur principal : .fm-popup-essai

   VERSION CONSOLIDÉE
   ========================================================== */


/* ==========================================================
   VARIABLES
   ========================================================== */

#elementor-popup-modal-2587 {
  --fm-red: var(--e-global-color-primary, #c0001a);

  --fm-bg: #111112;
  --fm-field: #18181a;
  --fm-field-focus: #1c1c1f;

  --fm-text: #f3f3f3;
  --fm-text-soft: #cccccc;
  --fm-text-muted: rgba(255, 255, 255, 0.69);

  --fm-border: rgba(255, 255, 255, 0.11);
  --fm-border-hover: rgba(255, 255, 255, 0.22);

  --fm-success: #198754;

  --fm-calendar-width: 32rem;
  --fm-booking-width: 56rem;

  padding: 1.5rem !important;

  align-items: center !important;
  justify-content: center !important;

  overflow: hidden !important;

  background: rgba(0, 0, 0, 0.72) !important;
}


/* ==========================================================
   BOX SIZING
   ========================================================== */

#elementor-popup-modal-2587 *,
#elementor-popup-modal-2587 *::before,
#elementor-popup-modal-2587 *::after {
  box-sizing: border-box;
}


/* ==========================================================
   FENÊTRE POPUP
   ========================================================== */

#elementor-popup-modal-2587 .dialog-widget-content {
  position: relative !important;

  display: block !important;

  width: 62rem !important;
  max-width: calc(100vw - 3rem) !important;

  height: auto !important;

  max-height: calc(100vh - 3rem) !important;
  max-height: calc(100dvh - 3rem) !important;

  margin: 0 auto !important;
  padding: 0 !important;

  background: var(--fm-bg) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 1.375rem !important;

  outline: 0 !important;

  overflow: hidden !important;

  box-shadow:
    0 2rem 5.625rem rgba(0, 0, 0, 0.68),
    0 0.5rem 1.875rem rgba(0, 0, 0, 0.40) !important;
}


/* ==========================================================
   ZONE SCROLLABLE
   ========================================================== */

#elementor-popup-modal-2587 .dialog-message {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;

  max-height: calc(100vh - 3rem) !important;
  max-height: calc(100dvh - 3rem) !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  outline: 0 !important;
  box-shadow: none !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}


/* ==========================================================
   RACINE ELEMENTOR
   ========================================================== */

#elementor-popup-modal-2587 .dialog-message > .elementor,
#elementor-popup-modal-2587 .elementor-2587 {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  outline: 0 !important;
  box-shadow: none !important;
}


/* ==========================================================
   CONTENEUR PRINCIPAL
   ========================================================== */

#elementor-popup-modal-2587 .fm-popup-essai {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;

  padding: 2.25rem 2.5rem 2.375rem !important;

  color: var(--fm-text-soft);

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  outline: 0 !important;
  box-shadow: none !important;
}


/* ==========================================================
   CONTENEURS ELEMENTOR INTERNES
   ========================================================== */

#elementor-popup-modal-2587 .fm-popup-essai .e-con,
#elementor-popup-modal-2587 .fm-popup-essai .e-con-inner,
#elementor-popup-modal-2587 .fm-popup-essai .elementor-section,
#elementor-popup-modal-2587 .fm-popup-essai .elementor-container,
#elementor-popup-modal-2587 .fm-popup-essai .elementor-column,
#elementor-popup-modal-2587 .fm-popup-essai .elementor-column-wrap,
#elementor-popup-modal-2587 .fm-popup-essai .elementor-widget-wrap {
  max-width: 100% !important;

  background-color: transparent !important;

  outline: 0 !important;
  box-shadow: none !important;
}


/* ==========================================================
   SCROLLBAR
   ========================================================== */

#elementor-popup-modal-2587 .dialog-message::-webkit-scrollbar {
  width: 6px;
}

#elementor-popup-modal-2587 .dialog-message::-webkit-scrollbar-track {
  background: transparent;
}

#elementor-popup-modal-2587 .dialog-message::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.16);

  border-radius: 1.25rem;
}


/* ==========================================================
   FORMULAIRE
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder {
  width: 100% !important;
  max-width: 100% !important;

  color: var(--fm-text-soft) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-row {
  width: 100% !important;

  margin-bottom: 1rem !important;
}


/* ==========================================================
   LABELS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__label,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__label-text,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-row
label:not(.for-checkbox) {
  color: var(--fm-text-soft) !important;

  font-size: 0.875rem !important;
  font-weight: 500 !important;

  line-height: 1.35 !important;

  letter-spacing: 0.025em;

  margin-bottom: 0.4375rem !important;
}


/* ==========================================================
   CHAMPS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
textarea,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
select {
  display: block;

  width: 100% !important;
  max-width: 100% !important;

  min-width: 0;
  min-height: 3.25rem !important;

  margin: 0 !important;

  /*
   * Important :
   * on ne force pas ici le padding-left.
   * intl-tel-input calcule lui-même le padding gauche du champ téléphone
   * pour laisser la place au drapeau et à l'indicatif.
   */
  padding-top: 0.75rem !important;
  padding-right: 0.9375rem !important;
  padding-bottom: 0.75rem !important;

  background: var(--fm-field) !important;

  color: var(--fm-text) !important;

  border: 1px solid var(--fm-border) !important;
  border-radius: 0.5625rem !important;

  outline: 0 !important;

  box-shadow: none !important;

  font-family: inherit !important;

  font-size: 1rem !important;
  line-height: 1.4 !important;

  caret-color: var(--fm-red);

  transition:
    background-color 0.20s ease,
    border-color 0.20s ease,
    box-shadow 0.20s ease;
}


/* ==========================================================
   PADDING GAUCHE — CHAMPS HORS TÉLÉPHONE

   Le Phone Field est volontairement exclu :
   intl-tel-input injecte son propre padding-left calculé.
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-row:not(:has(.phone-field-wrap))
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
textarea,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
select {
  padding-left: 0.9375rem !important;
}


/* ==========================================================
   HOVER CHAMPS
   ========================================================== */

@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  textarea:hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  select:hover {
    border-color: var(--fm-border-hover) !important;
  }
}


/* ==========================================================
   FOCUS CHAMPS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):focus,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
textarea:focus,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
select:focus {
  background: var(--fm-field-focus) !important;

  border-color: var(--fm-red) !important;

  box-shadow:
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.08) !important;
}


/* ==========================================================
   PLACEHOLDERS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
input::placeholder,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
textarea::placeholder {
  color: #69696d !important;

  opacity: 1 !important;
}


/* ==========================================================
   AUTOFILL
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
.jet-form-builder__field-wrap
input.jet-form-builder__field:-webkit-autofill,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
.jet-form-builder__field-wrap
input.jet-form-builder__field:-webkit-autofill:hover {
  -webkit-text-fill-color: var(--fm-text) !important;

  caret-color: var(--fm-red) !important;

  background-color: var(--fm-field) !important;

  border-color: var(--fm-border) !important;

  -webkit-box-shadow:
    0 0 0 1000px var(--fm-field) inset !important;

  box-shadow:
    0 0 0 1000px var(--fm-field) inset !important;

  transition:
    background-color 9999s ease-out 0s !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
.jet-form-builder__field-wrap
input.jet-form-builder__field:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--fm-text) !important;

  caret-color: var(--fm-red) !important;

  border-color: var(--fm-red) !important;

  -webkit-box-shadow:
    0 0 0 1000px var(--fm-field-focus) inset,
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.08) !important;

  box-shadow:
    0 0 0 1000px var(--fm-field-focus) inset,
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.08) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
.jet-form-builder__field-wrap
input.jet-form-builder__field:autofill {
  color: var(--fm-text) !important;

  -webkit-text-fill-color: var(--fm-text) !important;

  background: var(--fm-field) !important;

  box-shadow:
    0 0 0 1000px var(--fm-field) inset !important;
}


/* ==========================================================
   TEXTAREA
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
textarea {
  min-height: 7.5rem !important;

  resize: vertical;

  overflow: auto;
}


/* ==========================================================
   PHONE FIELD INTERNATIONAL
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.phone-field-wrap
> input.phone-field {
  display: none !important;

  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;

  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;

  opacity: 0 !important;

  overflow: hidden !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.phone-field-wrap {
  width: 100% !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.phone-field-wrap
.iti {
  display: block !important;

  width: 100% !important;

  margin: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.phone-field-wrap
.iti
input {
  display: block !important;

  width: 100% !important;

  min-height: 3.25rem !important;

  margin: 0 !important;

  background: var(--fm-field) !important;

  color: var(--fm-text) !important;

  border: 1px solid var(--fm-border) !important;
  border-radius: 0.5625rem !important;

  box-shadow: none !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.phone-field-wrap
.iti
input:focus {
  background: var(--fm-field-focus) !important;

  border-color: var(--fm-red) !important;

  box-shadow:
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.08) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.iti__selected-country,

#elementor-popup-modal-2587
.fm-popup-essai
.iti__selected-country-primary,

#elementor-popup-modal-2587
.fm-popup-essai
.iti__dial-code {
  color: var(--fm-text-soft) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.iti__dropdown-content,

#elementor-popup-modal-2587
.fm-popup-essai
.iti__country-list {
  background: var(--fm-field) !important;

  color: var(--fm-text-soft) !important;

  border-color: var(--fm-border) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.iti__country {
  color: var(--fm-text-soft) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.iti__country.iti__highlight {
  background: var(--fm-field-focus) !important;
}
#elementor-popup-modal-2587
.fm-popup-essai
.iti__selected-dial-code {
  color: rgba(255, 255, 255, 0.58) !important;
}

/* ==========================================================
   CALENDRIER — LIGNE PRINCIPALE
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-row:has(.jet-apb-calendar) {
  width: 100% !important;

  margin-bottom: 1.75rem !important;
}


/* ==========================================================
   TITRE CALENDRIER — AVANT SÉLECTION

   Calendrier seul : centrage conservé.
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder:not(.fm-calendar-has-date)
.jet-form-builder-row:has(.jet-apb-calendar)
> .jet-form-builder__label {
  display: block !important;

  width: min(100%, var(--fm-calendar-width)) !important;

  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 0.875rem !important;

  color: var(--fm-text-soft) !important;

  text-align: center !important;
}


/* ==========================================================
   TITRE CALENDRIER — APRÈS SÉLECTION

   Desktop :
   même largeur que calendrier + horaires,
   puis alignement texte à gauche.

   Le titre et le calendrier partagent donc exactement
   le même axe.
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder.fm-calendar-has-date
.jet-form-builder-row:has(.jet-apb-calendar)
> .jet-form-builder__label {
  display: block !important;

  width: min(100%, var(--fm-booking-width)) !important;
  max-width: var(--fm-booking-width) !important;

  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 0.875rem !important;

  color: var(--fm-text-soft) !important;

  text-align: left !important;
}


/* ==========================================================
   CALENDRIER — AVANT SÉLECTION
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder:not(.fm-calendar-has-date)
.jet-apb-calendar-wrapper {
  display: flex !important;

  align-items: flex-start !important;
  justify-content: center !important;

  width: 100% !important;

  margin-left: auto !important;
  margin-right: auto !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder:not(.fm-calendar-has-date)
.jet-apb-calendar-wrapper
> .jet-apb-calendar {
  flex: 0 1 var(--fm-calendar-width) !important;

  width: var(--fm-calendar-width) !important;
  max-width: 100% !important;

  margin: 0 auto !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder:not(.fm-calendar-has-date)
.jet-apb-calendar-wrapper
> :not(.jet-apb-calendar) {
  display: none !important;
}


/* ==========================================================
   CALENDRIER — APRÈS SÉLECTION
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder.fm-calendar-has-date
.jet-apb-calendar-wrapper {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder.fm-calendar-has-date
.jet-apb-calendar-wrapper
> .jet-apb-calendar {
  width: min(100%, var(--fm-booking-width)) !important;
  max-width: var(--fm-booking-width) !important;

  margin-left: auto !important;
  margin-right: auto !important;
}


/* ==========================================================
   CALENDRIER — COULEURS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar {
  color: var(--fm-text-soft) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-header,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-title {
  color: var(--fm-text-soft) !important;
}


/* ==========================================================
   JOURS DISPONIBLES
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-date:not(.jet-apb-calendar-date--disabled)
.jet-apb-calendar-date-body {
  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 2rem !important;
  height: 2rem !important;

  margin: 0 auto !important;

  color: var(--fm-text-soft) !important;

  background: transparent !important;

  border-radius: 0.4rem !important;

  box-shadow:
    inset 0 0 0 1px transparent !important;

  font-weight: 400 !important;

  cursor: pointer;

  transition:
    color 0.18s ease,
    background-color 0.18s ease,
    box-shadow 0.18s ease;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-date:not(.jet-apb-calendar-date--disabled):not(.jet-apb-calendar-date--selected)
  .jet-apb-calendar-date-body:hover {
    color: #ffffff !important;

    background: rgba(255, 255, 255, 0.035) !important;

    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, 0.20) !important;
  }
}


/* ==========================================================
   JOUR SÉLECTIONNÉ
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-date.jet-apb-calendar-date--selected {
  background: transparent !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-date.jet-apb-calendar-date--selected
.jet-apb-calendar-date-body {
  color: #ffffff !important;

  background: rgba(190, 20, 30, 0.10) !important;

  border-radius: 0.4rem !important;

  box-shadow:
    inset 0 0 0 1px var(--fm-red) !important;

  font-weight: 600 !important;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-date.jet-apb-calendar-date--selected
  .jet-apb-calendar-date-body:hover {
    color: #ffffff !important;

    background: rgba(190, 20, 30, 0.14) !important;

    box-shadow:
      inset 0 0 0 1px var(--fm-red) !important;
  }
}


/* ==========================================================
   JOURS INDISPONIBLES
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-date--disabled {
  color: rgba(255, 255, 255, 0.27) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-date--disabled
.jet-apb-calendar-date-body {
  color: rgba(255, 255, 255, 0.27) !important;

  background: transparent !important;

  box-shadow: none !important;

  cursor: default !important;
}


/* ==========================================================
   CRÉNEAUX HORAIRES
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-slots-container {
  display: flex !important;

  flex-wrap: wrap !important;

  align-items: center !important;
  align-content: flex-start !important;

  gap: 0.5rem !important;

  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-slots-container
.jet-apb-slot {
  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  min-height: 2.35rem !important;

  margin: 0 !important;

  padding: 0.5rem 0.72rem !important;

  color: var(--fm-text-soft) !important;

  background: rgba(255, 255, 255, 0.018) !important;

  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 0.45rem !important;

  box-shadow: none !important;

  font-family: inherit !important;

  font-size: 0.875rem !important;
  font-weight: 500 !important;

  line-height: 1 !important;

  letter-spacing: 0.01em !important;

  white-space: nowrap !important;

  cursor: pointer;

  user-select: none;

  transition:
    color 0.18s ease,
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-slots-container
  .jet-apb-slot:not(.jet-apb-slot--selected):hover {
    color: #ffffff !important;

    background: var(--fm-field) !important;

    border-color: rgba(255, 255, 255, 0.36) !important;

    transform: translateY(-1px);
  }
}


/* ==========================================================
   CRÉNEAU SÉLECTIONNÉ
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-slots-container
.jet-apb-slot.jet-apb-slot--selected {
  color: #ffffff !important;

  background: rgba(190, 20, 30, 0.10) !important;

  border-color: var(--fm-red) !important;

  box-shadow:
    inset 0 0 0 1px rgba(190, 20, 30, 0.18) !important;

  font-weight: 600 !important;

  transform: none !important;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-slots-container
  .jet-apb-slot.jet-apb-slot--selected:hover {
    color: #ffffff !important;

    background: rgba(190, 20, 30, 0.14) !important;

    border-color: var(--fm-red) !important;

    box-shadow:
      inset 0 0 0 1px rgba(190, 20, 30, 0.26) !important;

    transform: none !important;
  }
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-slots-container
.jet-apb-slot:focus-visible {
  color: #ffffff !important;

  border-color: var(--fm-red) !important;

  outline: 0 !important;

  box-shadow:
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.10) !important;
}


/* ==========================================================
   RÉCAPITULATIF DU RENDEZ-VOUS
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-appointments-list-wrapper {
  flex-direction: column !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 1.25rem 0 0 !important;

  padding: 1rem 1.125rem !important;

  background: var(--fm-field) !important;

  border: 1px solid var(--fm-border) !important;
  border-radius: 0.5625rem !important;

  box-shadow: none !important;
}


/* ==========================================================
   TITRE RÉCAPITULATIF
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-appointments-list-wrapper
> .jet-form-builder__heading {
  width: 100% !important;

  margin: 0 0 0.75rem !important;
  padding: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-appointments-list-wrapper
> .jet-form-builder__heading
.jet-form-builder__label-text {
  font-size: 0 !important;

  line-height: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-appointments-list-wrapper
> .jet-form-builder__heading
.jet-form-builder__label-text::before {
  content: "DÉTAILS DU RENDEZ-VOUS (ESSAI MOTO) :" !important;

  display: inline-block !important;

  color: var(--fm-text-muted) !important;

  font-size: 0.75rem !important;
  font-weight: 600 !important;

  line-height: 1.2 !important;

  letter-spacing: 0.08em !important;

  text-transform: uppercase !important;
}


/* ==========================================================
   LISTE RÉCAPITULATIVE
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-calendar-appointments-list {
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-appointments-item {
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-appointments-item-content {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    max-content
    max-content !important;

  align-items: center !important;

  column-gap: 1.25rem !important;

  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-item-service-provider {
  min-width: 0 !important;

  margin: 0 !important;

  color: var(--fm-text) !important;

  font-size: 0.9375rem !important;
  font-weight: 600 !important;

  line-height: 1.4 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-item-time {
  margin: 0 !important;

  padding-left: 1.25rem !important;

  color: var(--fm-text-soft) !important;

  border-left: 1px solid var(--fm-border) !important;

  font-size: 0.875rem !important;
  font-weight: 500 !important;

  line-height: 1.4 !important;

  white-space: nowrap !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-apb-item-date {
  margin: 0 !important;

  padding-left: 1.25rem !important;

  color: #ffffff !important;

  border-left: 1px solid var(--fm-border) !important;

  font-size: 0.875rem !important;
  font-weight: 600 !important;

  line-height: 1.4 !important;

  white-space: nowrap !important;
}


/* ==========================================================
   RGPD
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-row.field-type-checkbox-field {
  width: 100% !important;

  margin-top: 0.375rem !important;
  margin-bottom: 1.25rem !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
.jet-form-builder__fields-group,

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
.jet-form-builder__field-wrap,

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
.checkradio-wrap {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.jet-form-builder__field-label.for-checkbox {
  position: relative !important;

  display: block !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--fm-text-muted) !important;

  font-size: 0.8125rem !important;
  font-weight: 400 !important;

  line-height: 1.55 !important;

  text-align: left !important;

  white-space: normal !important;

  word-break: normal !important;
  overflow-wrap: normal !important;

  cursor: pointer;
}


/* ==========================================================
   INPUT CHECKBOX RÉEL
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> input[type="checkbox"] {
  position: absolute !important;

  width: 1px !important;
  min-width: 1px !important;

  height: 1px !important;
  min-height: 1px !important;

  margin: 0 !important;
  padding: 0 !important;

  opacity: 0 !important;

  overflow: hidden !important;
}


/* ==========================================================
   TEXTE + CHECKBOX VISUELLE
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span {
  position: relative !important;

  display: block !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;

  padding: 0 0 0 1.875rem !important;

  color: var(--fm-text-muted) !important;

  font-family: inherit !important;

  font-size: inherit !important;
  font-weight: inherit !important;

  line-height: inherit !important;

  text-align: left !important;

  white-space: normal !important;

  word-break: normal !important;
  overflow-wrap: normal !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span::before {
  content: "" !important;

  position: absolute !important;

  top: 0.125rem !important;
  left: 0 !important;

  display: block !important;

  width: 1.125rem !important;
  height: 1.125rem !important;

  background: var(--fm-field) !important;

  border: 1px solid rgba(255, 255, 255, 0.62) !important;
  border-radius: 0.1875rem !important;

  box-shadow: none !important;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span::after {
  content: "" !important;

  position: absolute !important;

  top: 0.285rem !important;
  left: 0.39rem !important;

  display: block !important;

  width: 0.36rem !important;
  height: 0.65rem !important;

  border: solid #ffffff !important;
  border-width: 0 0.125rem 0.125rem 0 !important;

  opacity: 0 !important;

  transform: rotate(45deg) !important;

  transition: opacity 0.15s ease;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> input[type="checkbox"]:checked
+ span::before {
  background: var(--fm-red) !important;

  border-color: var(--fm-red) !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> input[type="checkbox"]:checked
+ span::after {
  opacity: 1 !important;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .field-type-checkbox-field
  label.for-checkbox:hover
  > span::before {
    border-color: #ffffff !important;
  }
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> input[type="checkbox"]:focus-visible
+ span::before {
  border-color: var(--fm-red) !important;

  box-shadow:
    0 0 0 1px var(--fm-red),
    0 0 0 4px rgba(190, 20, 30, 0.12) !important;
}


/* ==========================================================
   POLITIQUE DE CONFIDENTIALITÉ
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span
a.fuel-privacy-link {
  display: inline !important;

  width: auto !important;

  margin: 0 !important;
  padding: 0 !important;

  color: rgba(255, 255, 255, 0.86) !important;

  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.1875rem !important;

  white-space: normal !important;

  transition: color 0.18s ease;
}


#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span
a.fuel-privacy-link:hover,

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-checkbox-field
label.for-checkbox
> span
a.fuel-privacy-link:focus-visible {
  color: var(--fm-red) !important;
}


/* ==========================================================
   BOUTON ENVOYER
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.field-type-submit,

#elementor-popup-modal-2587
.fm-popup-essai
.wp-block-jet-forms-action-button {
  width: 100% !important;

  margin-bottom: 0 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__action-button,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
button[type="submit"],

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
input[type="submit"] {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;

  min-height: 3.5rem !important;

  margin: 0 !important;

  padding: 0.8125rem 1.25rem !important;

  background: #f1f1f1 !important;

  color: #111112 !important;

  border: 1px solid #f1f1f1 !important;
  border-radius: 0.5625rem !important;

  box-shadow: none !important;

  font-family: inherit !important;

  font-size: 0.875rem !important;
  font-weight: 700 !important;

  line-height: 1.2 !important;

  text-align: center !important;
  text-transform: uppercase !important;

  letter-spacing: 0.07em !important;

  cursor: pointer;

  transition:
    background-color 0.20s ease,
    border-color 0.20s ease,
    color 0.20s ease,
    transform 0.20s ease;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder__action-button:hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  button[type="submit"]:hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  input[type="submit"]:hover {
    background: var(--fm-red) !important;

    border-color: var(--fm-red) !important;

    color: #ffffff !important;

    transform: translateY(-1px);
  }
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__action-button:focus-visible,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
button[type="submit"]:focus-visible {
  background: var(--fm-red) !important;

  border-color: var(--fm-red) !important;

  color: #ffffff !important;

  outline: 2px solid #ffffff;

  outline-offset: 3px;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__action-button:active,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder
button[type="submit"]:active {
  background: var(--fm-red) !important;

  border-color: var(--fm-red) !important;

  color: #ffffff !important;

  transform: translateY(0);
}


/* ==========================================================
   MESSAGES
   ========================================================== */

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message {
  width: 100% !important;

  margin: 1rem 0 0 !important;

  padding: 1rem 1.25rem !important;

  border-radius: 0.5625rem !important;

  font-size: 0.9375rem !important;

  line-height: 1.5 !important;

  text-align: center !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message--success,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message.success,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message.is-success,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__message--success {
  background: var(--fm-success) !important;

  color: #ffffff !important;

  border: 1px solid var(--fm-success) !important;

  font-weight: 700 !important;
}


#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message--error,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message--failed,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder-message.error,

#elementor-popup-modal-2587
.fm-popup-essai
.jet-form-builder__message--error {
  background: rgba(190, 20, 30, 0.12) !important;

  color: #ffffff !important;

  border: 1px solid var(--fm-red) !important;

  font-weight: 500 !important;
}


/* ==========================================================
   CROIX DE FERMETURE
   ========================================================== */

#elementor-popup-modal-2587
.dialog-close-button {
  position: absolute !important;

  top: 0.875rem !important;
  right: 0.875rem !important;

  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 2.75rem !important;
  height: 2.75rem !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #ffffff !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 50% !important;

  opacity: 1 !important;

  font-size: 1.3125rem !important;
  line-height: 1 !important;

  z-index: 50 !important;

  cursor: pointer;

  transition:
    color 0.20s ease,
    transform 0.20s ease;
}


#elementor-popup-modal-2587
.dialog-close-button i,

#elementor-popup-modal-2587
.dialog-close-button .eicon-close,

#elementor-popup-modal-2587
.dialog-close-button svg {
  color: #ffffff !important;

  fill: currentColor !important;

  transition:
    color 0.20s ease,
    fill 0.20s ease,
    stroke 0.20s ease;
}


#elementor-popup-modal-2587
.dialog-close-button svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
}


#elementor-popup-modal-2587
.dialog-close-button svg path {
  fill: currentColor !important;

  stroke: currentColor !important;
}


@media (hover: hover) and (pointer: fine) {

  #elementor-popup-modal-2587
  .dialog-close-button:hover {
    color: var(--fm-red) !important;

    transform: rotate(90deg);
  }


  #elementor-popup-modal-2587
  .dialog-close-button:hover i,

  #elementor-popup-modal-2587
  .dialog-close-button:hover .eicon-close,

  #elementor-popup-modal-2587
  .dialog-close-button:hover svg,

  #elementor-popup-modal-2587
  .dialog-close-button:hover svg path {
    color: var(--fm-red) !important;

    fill: var(--fm-red) !important;

    stroke: var(--fm-red) !important;
  }
}


#elementor-popup-modal-2587
.dialog-close-button:focus-visible {
  color: var(--fm-red) !important;

  outline: 2px solid var(--fm-red);

  outline-offset: -4px;
}


/* ==========================================================
   TABLETTE
   ========================================================== */

@media (max-width: 1024px) {

  #elementor-popup-modal-2587 {
    padding: 1.25rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-widget-content {
    width: 100% !important;

    max-width: calc(100vw - 2.5rem) !important;

    max-height: calc(100vh - 2.5rem) !important;
    max-height: calc(100dvh - 2.5rem) !important;

    border-radius: 1.25rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-message {
    max-height: calc(100vh - 2.5rem) !important;
    max-height: calc(100dvh - 2.5rem) !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai {
    padding: 1.875rem 2rem 2rem !important;
  }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

  #elementor-popup-modal-2587 {
    padding: 0.625rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-widget-content {
    width: calc(100vw - 1.25rem) !important;

    max-width: none !important;

    max-height: calc(100vh - 1.25rem) !important;
    max-height: calc(100dvh - 1.25rem) !important;

    border-radius: 1rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-message {
    max-height: calc(100vh - 1.25rem) !important;
    max-height: calc(100dvh - 1.25rem) !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai {
    padding: 1.25rem !important;
  }


  /* Titre calendrier */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder:not(.fm-calendar-has-date)
  .jet-form-builder-row:has(.jet-apb-calendar)
  > .jet-form-builder__label,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder.fm-calendar-has-date
  .jet-form-builder-row:has(.jet-apb-calendar)
  > .jet-form-builder__label {
    width: 100% !important;
    max-width: none !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
  }


  /* Calendrier */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder:not(.fm-calendar-has-date)
  .jet-apb-calendar-wrapper
  > .jet-apb-calendar,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder.fm-calendar-has-date
  .jet-apb-calendar-wrapper
  > .jet-apb-calendar {
    width: 100% !important;

    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;
  }


  /* Créneaux */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-slots-container {
    gap: 0.4375rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-slots-container
  .jet-apb-slot {
    flex: 1 1 calc(50% - 0.25rem) !important;

    min-height: 2.5rem !important;

    padding: 0.5rem 0.55rem !important;

    font-size: 0.8125rem !important;
  }


  /* Récapitulatif :
     plus d'espace avec calendrier/créneaux.
  */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-appointments-list-wrapper {
    margin-top: 1.75rem !important;

    padding: 0.875rem 1rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-appointments-item-content {
    grid-template-columns: 1fr !important;

    row-gap: 0.375rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-item-time,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-item-date {
    padding-left: 0 !important;

    border-left: 0 !important;
  }


  /* Textarea */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  textarea {
    min-height: 6.25rem !important;
  }


  /* RGPD */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .field-type-checkbox-field
  label.jet-form-builder__field-label.for-checkbox {
    font-size: 0.8rem !important;
  }


  /* Bouton */

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder__action-button,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  button[type="submit"] {
    min-height: 3.375rem !important;
  }


  /* Croix */

  #elementor-popup-modal-2587
  .dialog-close-button {
    top: 0.375rem !important;
    right: 0.375rem !important;
  }
}


/* ==========================================================
   TRÈS PETITS MOBILES
   ========================================================== */

@media (max-width: 380px) {

  #elementor-popup-modal-2587 {
    padding: 0.375rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-widget-content {
    width: calc(100vw - 0.75rem) !important;

    max-height: calc(100vh - 0.75rem) !important;
    max-height: calc(100dvh - 0.75rem) !important;

    border-radius: 0.875rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-message {
    max-height: calc(100vh - 0.75rem) !important;
    max-height: calc(100dvh - 0.75rem) !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai {
    padding: 1rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .field-type-checkbox-field
  label.jet-form-builder__field-label.for-checkbox {
    font-size: 0.775rem !important;
  }
}


/* ==========================================================
   ÉCRANS PEU HAUTS / MOBILE PAYSAGE
   ========================================================== */

@media (max-height: 650px) {

  #elementor-popup-modal-2587 {
    padding: 0.5rem !important;
  }


  #elementor-popup-modal-2587
  .dialog-widget-content {
    max-height: calc(100vh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
  }


  #elementor-popup-modal-2587
  .dialog-message {
    max-height: calc(100vh - 1rem) !important;
    max-height: calc(100dvh - 1rem) !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai {
    padding: 1rem 1.25rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder-row {
    margin-bottom: 0.6875rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  select {
    min-height: 2.875rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  textarea {
    min-height: 4.875rem !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder__action-button,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  button[type="submit"] {
    min-height: 3rem !important;
  }
}


/* ==========================================================
   ACCESSIBILITÉ
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

  #elementor-popup-modal-2587 *,
  #elementor-popup-modal-2587 *::before,
  #elementor-popup-modal-2587 *::after {
    transition: none !important;

    animation: none !important;
  }


  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder__action-button:hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-form-builder
  button[type="submit"]:hover,

  #elementor-popup-modal-2587
  .dialog-close-button:hover,

  #elementor-popup-modal-2587
  .fm-popup-essai
  .jet-apb-calendar-slots-container
  .jet-apb-slot:hover {
    transform: none !important;
  }
}/* End custom CSS */