.elementor-252 .elementor-element.elementor-element-052c31c{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-252 .elementor-element.elementor-element-052c31c:not(.elementor-motion-effects-element-type-background), .elementor-252 .elementor-element.elementor-element-052c31c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F5;}.elementor-252 .elementor-element.elementor-element-1621354{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:15px 15px 15px 15px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-252 .elementor-element.elementor-element-1621354:not(.elementor-motion-effects-element-type-background), .elementor-252 .elementor-element.elementor-element-1621354 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-252 .elementor-element.elementor-element-1205838 > .elementor-widget-container{margin:-13px 0px -13px 0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-252 .elementor-element.elementor-element-2835a5f > .elementor-widget-container{padding:50px 50px 50px 50px;}.elementor-252 .elementor-element.elementor-element-2835a5f img{width:40%;}@media(max-width:1024px){.elementor-252 .elementor-element.elementor-element-2835a5f > .elementor-widget-container{padding:30px 30px 30px 30px;}.elementor-252 .elementor-element.elementor-element-2835a5f img{width:55%;}}@media(min-width:768px){.elementor-252 .elementor-element.elementor-element-1621354{--width:70%;}}@media(max-width:1024px) and (min-width:768px){.elementor-252 .elementor-element.elementor-element-1621354{--width:80%;}}@media(max-width:767px){.elementor-252 .elementor-element.elementor-element-052c31c{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-252 .elementor-element.elementor-element-1621354{--width:100%;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-252 .elementor-element.elementor-element-2835a5f img{width:90%;}}/* Start custom CSS for menu-anchor, class: .elementor-element-9d3998d *//* Hauteur exacte de votre en-tête fixe : 110 px dans l’exemple */
#top-form {
  scroll-margin-top: 450px;      /* navigateurs modernes */
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1205838 */.gform-page-footer.gform_page_footer.top_label {
     display: flex
;
    flex-wrap: wrap;
    gap: var(--gf-form-footer-gap);
    justify-content: space-between;
}

.gform-theme--framework .gfield--type-image_choice .gfield-choice-input {
    text-align: center!important; /* centre le contenu dans le champ */
}

.gform-theme--framework .gfield--type-image_choice .gfield-choice-image {
    display: block;
    margin: 0 auto!important; /* centre l'image horizontalement */
    block-size: 100% !important;
    inline-size: 100%;
    max-block-size: 50%!important;
    max-inline-size: 50%!important;
    object-fit: cover;
}

.gfield-choice-image-wrapper {
    aspect-ratio: 0 / 1 !important;
}

.gform-theme--framework .gfield--type-image_choice .gfield-image-choice-wrapper-inner {
    display: flex
!important;
    gap: var(--gf-field-choice-meta-space) 0;
    grid-template-columns: minmax(var(--gf-ctrl-choice-size), max-content) auto;
    justify-content: center!important;
}


.elementor-element:where(.e-con-full,.elementor-widget) {
    /* align-content: var(--align-content); */
    align-items: stretch!important;
}


.gform-theme--framework .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice:where(:has(input:checked))::after {
    background-color: green!important;
    color: var(--gf-field-img-choice-card-check-ind-icon-color);
}

.gform_body .gform_fields .gfield .gfield_label {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 500 !important;
    font-size: 21px;
    line-height: 1.2em;
    margin-bottom: 24px;
}

.gform_title {
    display: none;
}

.gform_required_legend {
    display: none;
}

.gform-theme--framework .gf_page_steps, .gform-theme--framework .gf_progressbar_wrapper {
    display: none;
}

/* 2. Spinner placé dans le coin supérieur droit du formulaire */
.gform_wrapper .gform-loader,          /* nouveau balisage GF 2.7+ */
.gform_wrapper img.gform_ajax_spinner  /* balisage legacy         */ {
    position: absolute !important;
    top: -20px;                    /* marge haute */
    right: -20px;                  /* marge droite */
    width: 26px;                     /* taille du loader */
    height: 26px;
    z-index: 20;                     /* au-dessus du contenu */
    display: block !important;       /* force l’affichage */
}


.elementor-252 .elementor-element.elementor-element-1205838 h5 {
    color: #D80F0F;
}



/* Cacher le bouton radio */
  .gform-theme--framework .gfield--type-image_choice .gfield-choice-input {
    display: none;
  }

.gform-theme--framework .gform-field-label--type-inline 
{
    --gf-local-margin-x: 0px!important;
    --gf-local-margin-y: var(--gf-label-space-y-secondary) 0;
}

/* — S’applique à TOUS les formulaires (legacy + nouveau framework) — */
body .gform_wrapper                          /* conteneur racine GF */
      input[type="submit"],
body .gform_wrapper input[type="button"],
body .gform_wrapper button,                  /* ex. « Suivant » / « Précédent » */
body .gform_wrapper .gform-theme-button {    /* classe Theme Framework 2.7+ */
    background-color: #D80F0F !important;    /* rouge principal   */
    color: #fff !important;                  /* texte blanc       */
    border: none !important;
    border-radius: 100px !important;           /* coins arrondis    */
    padding: 12px 24px;
    font-size: 16px;
    line-height: 1.2;
    cursor: pointer;
    transition: background-color .2s ease;
}

/* État survol / focus */
body .gform_wrapper input[type="submit"]:hover,
body .gform_wrapper input[type="button"]:hover,
body .gform_wrapper button:hover,
body .gform_wrapper .gform-theme-button:hover,
body .gform_wrapper input[type="submit"]:focus,
body .gform_wrapper input[type="button"]:focus,
body .gform_wrapper button:focus,
body .gform_wrapper .gform-theme-button:focus {
    background-color: #b71d1d !important;    /* rouge plus sombre */
    outline: none;
}

/* Bouton désactivé (ex. « Suivant » tant que champs non valides) */
body .gform_wrapper input[disabled],
body .gform_wrapper button[disabled] {
    background-color: #e0a5a5 !important;    /* rouge grisé */
    cursor: not-allowed;
}





@media (max-width: 768px) {
  /* Conteneur des choix */
  .gform-theme--framework .gfield_radio {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  /* Chaque choix = une box en pleine largeur */
  .gform-theme--framework .gfield--type-image_choice .gchoice {
    width: 100% !important;
    max-width: 100% !important;
    display: block;
    box-sizing: border-box;
    margin-bottom: 15px;
  }

  /* Bloc contenant icône + texte */
  .gform-theme--framework .gfield--type-image_choice .gfield-image-choice-wrapper-outer {
    display: flex !important;
    align-items: center;
    gap: 15px;
    width: 100%;
    padding: 12px;
    border: 0px;
    border-radius: 8px;
    background-color: #fff;
    box-sizing: border-box;
  }

  /* Conteneur image */
  .gform-theme--framework .gfield--type-image_choice .gfield-choice-image-wrapper {
    width: 60px !important;
    height: 60px !important;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Image (icône) */
  .gform-theme--framework .gfield--type-image_choice .gfield-choice-image {
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
    object-fit: contain !important;
  }

  /* Conteneur texte + radio */
  .gform-theme--framework .gfield--type-image_choice .gfield-image-choice-wrapper-inner {
    display: flex;
    align-items: center;
    gap: 8px; /* Réduit l'espace entre image et texte */
    flex-grow: 0;
  }

  /* Cacher le bouton radio */
  .gform-theme--framework .gfield--type-image_choice .gfield-choice-input {
    display: none;
  }

  /* Texte */
  .gform-theme--framework .gfield--type-image_choice .gform-field-label {
    font-size: 16px;
    margin: 0;
    line-height: 1.2;
    display: flex;
    align-items: center;
  }
  
  .gform_body .gform_fields .gfield .gfield_label {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 500 !important;
    font-size: 20px;
    line-height: 1.2em;
    margin-bottom: 0px;
}
  
  
  .gform-theme--framework .gfield--type-image_choice .gfield-choice-image-wrapper {
    margin-block-end: 0px!important;
}

.ginput_container.ginput_container_radio.ginput_container_image_choice.ginput_container_image_choice--label-show.ginput_container_image_choice--input-show {
    margin-top: 16px;
}

}/* End custom CSS */