
.module-formulaire{ position: relative; isolation: isolate; }
.module-formulaire.has-frame{ margin: var(--frame); }
.module-formulaire__background,
.module-formulaire__overlay{ position: absolute; inset: 0; pointer-events: none; }
.module-formulaire__background{ z-index: -2; }
.module-formulaire__background-img{ width: 100%; height: 100%; object-fit: cover; }
.module-formulaire__overlay{ z-index: -1; background: var(--color-main); }
.module-formulaire__overlay.overlay-fonce{ background: var(--color-dark); }
.module-formulaire__overlay.overlay-clair{ background: var(--color-sec); }
.module-formulaire__overlay.overlay-accent{ background: var(--color-accent); }
.module-formulaire__overlay.overlay-accent-clair{ background: var(--color-accent-light); }

.module-formulaire.bg-none{ background: transparent; }
.module-formulaire.bg-dark{ background: var(--color-dark); color: var(--palette-white); }
.module-formulaire.bg-light{ background: var(--color-sec); color: var(--palette-white); }
.module-formulaire.bg-accent{ background: var(--color-accent); color: var(--color-main); }
.module-formulaire.bg-accent-light{ background: var(--color-accent-light); color: var(--color-main); }
.module-formulaire.has-bg-image{ color: var(--palette-white); }

.boree-builder .module-formulaire > .container{
  position: relative;
  padding: clamp(44px, 6vw, 90px) clamp(16px, 2vw, 32px);
  background: transparent;
  color: inherit;
}
.module-formulaire > .container.bg-white{ background: var(--palette-white); color: var(--color-main); }
.module-formulaire > .container.bg-dark-2{ background: var(--color-dark); color: var(--palette-white); }
.module-formulaire > .container.bg-light-2{ background: var(--color-sec); color: var(--palette-white); }
.module-formulaire > .container.bg-accent-2{ background: var(--color-accent); color: var(--color-main); }
.module-formulaire > .container.bg-accent-light-2{ background: var(--color-accent-light); color: var(--color-main); }

.module-formulaire__content{ position: relative; z-index: 1; }
.module-formulaire.is-one-column .module-formulaire__content{ max-width: 1100px; }
.module-formulaire.is-one-column.is-centered .module-formulaire__content{ margin-inline: auto; text-align: center; }
.module-formulaire.is-one-column .module-formulaire__form{ text-align: left; }
.module-formulaire.is-two-columns .module-formulaire__content{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(32px, 5vw, 80px);
  align-items: center;
}
.module-formulaire.is-two-columns.is-vertical-top .module-formulaire__content{ align-items: start; }
.module-formulaire.is-two-columns.is-vertical-bottom .module-formulaire__content{ align-items: end; }
.module-formulaire.is-two-columns.has-no-intro .module-formulaire__content{ grid-template-columns: 1fr; }
.module-formulaire.is-two-columns.form-right .module-formulaire__text-col{ order: 1; }
.module-formulaire.is-two-columns.form-right .module-formulaire__form-col{ order: 2; }
.module-formulaire.is-two-columns.form-left .module-formulaire__form-col{ order: 1; }
.module-formulaire.is-two-columns.form-left .module-formulaire__text-col{ order: 2; }
.module-formulaire__text-col,
.module-formulaire__form-col{ min-width: 0; }

.module-formulaire__tagline{ margin-bottom: 12px; color: var(--palette-white); font-weight: 400; text-transform: uppercase; }
.module-formulaire__title{ margin-bottom: 30px; color: inherit; }
.module-formulaire__text{ color: inherit; }
.module-formulaire__text > :first-child{ margin-top: 0; }
.module-formulaire__text > :last-child{ margin-bottom: 0; }
.module-formulaire__text li + li{ margin-top: 0.75em; }
.module-formulaire__form-intro{ margin-bottom: clamp(32px, 5vw, 60px); }
.module-formulaire__form-tagline{
  margin: 0;
  color: inherit;
  font-family: var(--ff-heading);
  font-size: clamp(1.5rem, 2vw, 2.5rem);
  font-weight: 400;
  line-height: 1.05;
}
.boree-builder .module-formulaire__form-title{
  margin: 0;
  color: inherit;
  font-size: clamp(1.65rem, 2.1vw, 2.625rem);
  line-height: 1.05;
  text-transform: uppercase;
}
.module-formulaire:is(.bg-dark, .bg-light, .has-bg-image) > .container:not(.bg-white, .bg-accent-light-2, .bg-accent-2) .module-formulaire__form-intro{ color: var(--palette-white); }


.module-formulaire .gform_wrapper{ max-width: 100%; margin: 0; color: inherit; }
.module-formulaire .gform_heading{ display: none; }
.module-formulaire .gform_wrapper .gform_fields{ column-gap: clamp(14px, 2vw, 24px); row-gap: 24px; }
.module-formulaire .gform_wrapper .gfield{ margin: 0; }
.module-formulaire .gform_wrapper :is(.gfield_label, legend, .ginput_complex label, .gfield_description, .instruction){
  color: inherit;
  font-size: 14px;
  font-weight: 400;
}
.module-formulaire .gform_wrapper .gfield_label{ margin-bottom: 9px; }
.module-formulaire .gform_wrapper :is(.gfield_required, .gfield_required_text){ color: rgba(255,255,255,.7) !important; }
.module-formulaire .gform_wrapper .gchoice label{ color: inherit; }
.module-formulaire .gform_wrapper :is(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), textarea, select){
  width: 100%;
  min-height: 58px;
  padding: 14px 22px;
  border: 1px solid transparent !important;
  background: var(--palette-ink) !important;
  color: var(--palette-white) !important;
  box-shadow: none !important;
}
.module-formulaire .gform_wrapper :is(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), select){ border-radius: 999px !important; }
.module-formulaire .gform_wrapper textarea{ min-height: 150px; border-radius: 12px !important; resize: vertical; }
.module-formulaire .gform_wrapper :is(input:not([type="submit"]), textarea, select)::placeholder{ color: var(--palette-white); opacity: .65; }
.boree-builder .module-formulaire > .container.is-width-small{ width: min(960px, 92%); }
.boree-builder .module-formulaire > .container.is-width-full{ width: 100%; }
.module-formulaire.is-one-column .module-formulaire__content{ max-width: none; }
.boree-builder > .module-formulaire.has-custom-padding{ padding: var(--boree-pad-top, clamp(48px, 5vw, 96px)) var(--boree-pad-right, 0) var(--boree-pad-bottom, clamp(48px, 5vw, 96px)) var(--boree-pad-left, 0); }
.module-formulaire.has-light-fields .gform_wrapper :is(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), textarea, select){ background: var(--palette-white) !important; color: var(--palette-green) !important; }
.module-formulaire.has-light-fields .gform_wrapper :is(input:not([type="submit"]), textarea, select)::placeholder{ color: var(--palette-green); opacity: .6; }
.module-formulaire.has-light-fields .gform_wrapper :is(.gfield_required, .gfield_required_text){ color: var(--palette-green) !important; opacity: .7; }
.module-formulaire .gform_wrapper :is(input, textarea, select):focus-visible{
  outline: 2px solid var(--palette-orange);
  outline-offset: 2px;
}
.module-formulaire .gform_wrapper :is(.gform_footer, .gform-page-footer, .gform_page_footer){
  display: flex;
  justify-content: flex-end;
  margin-top: 28px;
  padding: 0;
}
.module-formulaire .gform_wrapper :is(input.gform_button, button[type="submit"], .gform_footer input[type="submit"], .gform_page_footer input[type="submit"]){
  min-height: 60px;
  padding: 14px 42px;
  border: 1px solid var(--palette-orange) !important;
  border-radius: var(--button-radius) !important;
  background: transparent !important;
  color: var(--palette-orange) !important;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: none;
}
.module-formulaire .gform_wrapper :is(input.gform_button, button[type="submit"], .gform_footer input[type="submit"], .gform_page_footer input[type="submit"]):hover{
  background: var(--palette-orange) !important;
  color: var(--palette-green) !important;
}
.module-formulaire .gform_confirmation_message{ padding: 18px 22px; background: var(--overlay-white-soft); }
.module-formulaire .gform_validation_errors{ border-radius: var(--radius); }

@media (max-width: 980px){
  .module-formulaire.is-two-columns .module-formulaire__content{ grid-template-columns: 1fr; gap: 32px; }
  .module-formulaire.is-two-columns .module-formulaire__text-col,
  .module-formulaire.is-two-columns .module-formulaire__form-col{ order: initial; }
}
@media (max-width: 767px){
  .boree-builder .module-formulaire > .container{ padding: 40px 8px; }
  .module-formulaire .gform_wrapper .gform_fields{ row-gap: 18px; }
  .module-formulaire .gform_wrapper :is(.gform_footer, .gform-page-footer, .gform_page_footer){ justify-content: flex-start; }
}
