.elementor-1348 .elementor-element.elementor-element-5f19053e{--display:flex;--min-height:32vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:80px;--padding-bottom:80px;--padding-left:24px;--padding-right:24px;}.elementor-1348 .elementor-element.elementor-element-5f19053e:not(.elementor-motion-effects-element-type-background), .elementor-1348 .elementor-element.elementor-element-5f19053e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-5f19053e::before, .elementor-1348 .elementor-element.elementor-element-5f19053e > .elementor-background-video-container::before, .elementor-1348 .elementor-element.elementor-element-5f19053e > .e-con-inner > .elementor-background-video-container::before, .elementor-1348 .elementor-element.elementor-element-5f19053e > .elementor-background-slideshow::before, .elementor-1348 .elementor-element.elementor-element-5f19053e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1348 .elementor-element.elementor-element-5f19053e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1348 .elementor-element.elementor-element-53f15f67{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-516d6a5d{text-align:start;}.elementor-1348 .elementor-element.elementor-element-516d6a5d .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:56px;font-weight:700;line-height:1.1em;letter-spacing:-1px;color:var( --e-global-color-text );}.elementor-1348 .elementor-element.elementor-element-76378289{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:60px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-1348 .elementor-element.elementor-element-55fa977c{--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;--gap:28px 28px;--row-gap:28px;--column-gap:28px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-6391ca49 img{width:100%;height:300px;object-fit:cover;object-position:center center;border-radius:20px 20px 20px 20px;}.elementor-1348 .elementor-element.elementor-element-21465203 > .elementor-widget-container{margin:10px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-21465203{text-align:start;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-4bc4cdba .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-1348 .elementor-element.elementor-element-4bc4cdba .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-1348 .elementor-element.elementor-element-4bc4cdba{--image-border-radius:15px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-1348 .elementor-element.elementor-element-4b3d1449{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-4a41c472{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-4a41c472:not(.elementor-motion-effects-element-type-background), .elementor-1348 .elementor-element.elementor-element-4a41c472 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-2c8bb28 );}.elementor-1348 .elementor-element.elementor-element-5f6af7d6{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--border-radius:25px 25px 25px 25px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-1348 .elementor-element.elementor-element-5f6af7d6:hover{box-shadow:0px 0px 13px 0px rgba(27.200000000000014, 27.200000000000014, 27.200000000000014, 0.13);}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-wrapper{align-items:start;gap:8px;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-title{margin-block-end:4px;color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-59eb4798.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-59eb4798.elementor-view-framed .elementor-icon, .elementor-1348 .elementor-element.elementor-element-59eb4798.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon{font-size:40px;padding:8px;border-width:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-b7aeba8{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-secondary );--border-color:var( --e-global-color-secondary );--border-radius:25px 25px 25px 25px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-1348 .elementor-element.elementor-element-b7aeba8:hover{box-shadow:0px 0px 13px 0px rgba(27.200000000000014, 27.200000000000014, 27.200000000000014, 0.13);}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon-box-wrapper{align-items:start;gap:8px;}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon-box-title{margin-block-end:4px;color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-7c82505c.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-7c82505c.elementor-view-framed .elementor-icon, .elementor-1348 .elementor-element.elementor-element-7c82505c.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon{font-size:40px;padding:8px;border-width:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon-box-description{font-size:1rem;line-height:1.1em;color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-44dfed6e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:100px 100px;--row-gap:100px;--column-gap:100px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:48px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-44dfed6e:not(.elementor-motion-effects-element-type-background), .elementor-1348 .elementor-element.elementor-element-44dfed6e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-76c5f1ee{--display:flex;--justify-content:space-between;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-1348 .elementor-element.elementor-element-76c5f1ee:not(.elementor-motion-effects-element-type-background), .elementor-1348 .elementor-element.elementor-element-76c5f1ee > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-2c8bb28 );}.elementor-1348 .elementor-element.elementor-element-76c5f1ee.e-con{--align-self:center;}.elementor-1348 .elementor-element.elementor-element-2403518 .fluentform-widget-wrapper .ff-el-group .ff-btn-submit{background-color:var( --e-global-color-2c8bb28 );color:#ffffff !important;}.elementor-1348 .elementor-element.elementor-element-72ebfbb4{--display:flex;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-72ebfbb4.e-con{--order:-99999 /* order start hack */;}.elementor-1348 .elementor-element.elementor-element-2fa7a2c3{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;}.elementor-1348 .elementor-element.elementor-element-2fa7a2c3.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-1348 .elementor-element.elementor-element-2fa7a2c3 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-primary );}.elementor-1348 .elementor-element.elementor-element-6874a624{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-primary );}.elementor-1348 .elementor-element.elementor-element-6874a624 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-6874a624.elementor-element{--align-self:flex-start;}.elementor-1348 .elementor-element.elementor-element-6874a624 p{margin-block-end:0px;}.elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:10px 10px 10px 10px;padding:16px 24px 16px 24px;}.elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button:hover, .elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-516bc670 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-516bc670.elementor-element{--align-self:flex-start;}.elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button .elementor-button-content-wrapper{gap:16px;}.elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button:hover svg, .elementor-1348 .elementor-element.elementor-element-516bc670 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-1348 .elementor-element.elementor-element-4f0b2c65{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:048px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-52b6862{--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;--justify-content:space-between;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-17952b2d{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-614e3162{width:var( --container-widget-width, 54% );max-width:54%;--container-widget-width:54%;--container-widget-flex-grow:0;}.elementor-1348 .elementor-element.elementor-element-614e3162 > .elementor-widget-container{margin:0px 0px -12px 0px;padding:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-614e3162.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1348 .elementor-element.elementor-element-614e3162 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-accent );}.elementor-1348 .elementor-element.elementor-element-e8614b1 > .elementor-widget-container > .jet-listing-grid > .jet-listing-grid__items{--columns:3;}@media(max-width:1024px){.elementor-1348 .elementor-element.elementor-element-5f19053e{--min-height:50vh;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-1348 .elementor-element.elementor-element-516d6a5d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1348 .elementor-element.elementor-element-516d6a5d .elementor-heading-title{font-size:42px;}.elementor-1348 .elementor-element.elementor-element-76378289{--flex-wrap:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:30px;--padding-right:30px;}.elementor-1348 .elementor-element.elementor-element-21465203{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-4a41c472{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1348 .elementor-element.elementor-element-5f6af7d6{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-wrapper{align-items:center;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon{font-size:35px;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-b7aeba8{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon-box-wrapper{align-items:center;}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon{font-size:35px;}.elementor-1348 .elementor-element.elementor-element-44dfed6e{--padding-top:100px;--padding-bottom:100px;--padding-left:25px;--padding-right:25px;}.elementor-1348 .elementor-element.elementor-element-6874a624{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-4f0b2c65{--padding-top:100px;--padding-bottom:100px;--padding-left:25px;--padding-right:25px;}}@media(max-width:767px){.elementor-1348 .elementor-element.elementor-element-5f19053e{--min-height:20vh;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-1348 .elementor-element.elementor-element-53f15f67{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1348 .elementor-element.elementor-element-516d6a5d .elementor-heading-title{font-size:34px;}.elementor-1348 .elementor-element.elementor-element-76378289{--padding-top:50px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1348 .elementor-element.elementor-element-21465203{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-5f6af7d6{--padding-top:8px;--padding-bottom:8px;--padding-left:8px;--padding-right:8px;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-wrapper{align-items:center;text-align:start;}.elementor-1348 .elementor-element.elementor-element-59eb4798 .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-b7aeba8{--padding-top:8px;--padding-bottom:8px;--padding-left:8px;--padding-right:8px;}.elementor-1348 .elementor-element.elementor-element-7c82505c .elementor-icon-box-wrapper{align-items:center;}.elementor-1348 .elementor-element.elementor-element-44dfed6e{--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1348 .elementor-element.elementor-element-76c5f1ee{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-1348 .elementor-element.elementor-element-2fa7a2c3{text-align:start;}.elementor-1348 .elementor-element.elementor-element-6874a624{text-align:start;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1348 .elementor-element.elementor-element-516bc670.elementor-element{--align-self:center;}.elementor-1348 .elementor-element.elementor-element-4f0b2c65{--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1348 .elementor-element.elementor-element-614e3162{--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;text-align:start;}.elementor-1348 .elementor-element.elementor-element-e8614b1 > .elementor-widget-container > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}}@media(min-width:768px){.elementor-1348 .elementor-element.elementor-element-53f15f67{--width:100%;}.elementor-1348 .elementor-element.elementor-element-76378289{--content-width:1340px;}.elementor-1348 .elementor-element.elementor-element-55fa977c{--width:70%;}.elementor-1348 .elementor-element.elementor-element-4b3d1449{--width:30%;}.elementor-1348 .elementor-element.elementor-element-5f6af7d6{--width:100%;}.elementor-1348 .elementor-element.elementor-element-b7aeba8{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1348 .elementor-element.elementor-element-53f15f67{--width:100%;}.elementor-1348 .elementor-element.elementor-element-55fa977c{--width:100%;}.elementor-1348 .elementor-element.elementor-element-4b3d1449{--width:100%;}.elementor-1348 .elementor-element.elementor-element-5f6af7d6{--width:50%;}.elementor-1348 .elementor-element.elementor-element-b7aeba8{--width:50%;}}/* Start custom CSS for fluent-form-widget, class: .elementor-element-2403518 *//* =============================================                                                                                                           
     FLUENT FORMS - Les Charpentes de Gilbert                                                                                                                
     Version : fond clair, accent marron #8B5A2B                                                                                                             
     5 étapes : Projet, Logement, Surface, Infos, Coordonnées                                                                                                
     ============================================= */                                                                                                        
                                                                                                                                                             
  /* --- Radio boutons en pilules --- */                                                                                                                     
  .ff-el-form-check {                                                                     
    display: grid;                                                                                                                                           
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));                                                                                             
    gap: 12px;
  }                                                                                                                                                          
                                                                                          
  .ff-el-form-check label {                                                                                                                                  
    border: 2px solid #E0E0E0;
    border-radius: 50px;                                                                                                                                     
    padding: 14px 18px;                                                                   
    cursor: pointer;                                                                                                                                         
    font-size: 15px;
    font-weight: 500;                                                                                                                                        
    transition: all 0.25s ease;                                                           
    background: #FFFFFF;
    display: block;                                                                                                                                          
    text-align: center;
    color: #212121;                                                                                                                                          
  }                                                                                       

  .ff-el-form-check input[type="radio"] {                                                                                                                    
    display: none;
  }                                                                                                                                                          
                                                                                          
  .ff-el-form-check label:hover {
    border-color: #8B5A2B;
    color: #8B5A2B;
    box-shadow: 0 4px 12px rgba(139, 90, 43, 0.1);                                                                                                           
  }
                                                                                                                                                             
  .ff-el-form-check label:has(input:checked) {                                                                                                               
    background: #8B5A2B;
    color: #FFFFFF;                                                                                                                                          
    border-color: #8B5A2B;                                                                
  }                                                                                                                                                          
   
  @media (max-width: 768px) {                                                                                                                                
    .ff-el-form-check { grid-template-columns: repeat(2, 1fr); gap: 10px; }               
    .ff-el-form-check label { padding: 12px 14px; font-size: 14px; }                                                                                         
  }
                                                                                                                                                             
  @media (max-width: 480px) {                                                             
    .ff-el-form-check { grid-template-columns: 1fr; gap: 8px; }
  }                                                                                                                                                          
   
  /* --- Champs texte, email, tel, textarea, select --- */                                                                                                   
  .fluentform .ff-el-input--content input[type="text"],                                   
  .fluentform .ff-el-input--content input[type="email"],                                                                                                     
  .fluentform .ff-el-input--content input[type="tel"],                                    
  .fluentform .ff-el-input--content textarea,                                                                                                                
  .fluentform .ff-el-input--content select {                                                                                                                 
    border: 2px solid #E0E0E0;
    border-radius: 8px;                                                                                                                                      
    padding: 12px 16px;                                                                                                                                      
    font-size: 15px;
    transition: border-color 0.25s ease;                                                                                                                     
    background: #FFFFFF;                                                                  
  }                                                                                                                                                          
   
  .fluentform .ff-el-input--content input:focus,                                                                                                             
  .fluentform .ff-el-input--content textarea:focus,                                       
  .fluentform .ff-el-input--content select:focus {
    border-color: #8B5A2B;                                                                                                                                   
    outline: none;
    box-shadow: 0 0 0 3px rgba(139, 90, 43, 0.12);                                                                                                           
  }                                                                                                                                                          
   
  /* --- Labels des champs --- */                                                                                                                            
  .fluentform .ff-el-input--label label {                                                 
    font-weight: 600;                                                                                                                                        
    color: #212121;
    font-size: 15px;                                                                                                                                         
    margin-bottom: 8px;                                                                   
  }                                                                                                                                                          
   
  /* --- Boutons Suivant / Précédent / Envoyer --- */                                                                                                        
  .ff-btn-next,                                                                           
  .ff-btn-prev,
  .ff-btn-submit {                                                                                                                                           
    border-radius: 50px !important;
    padding: 14px 32px !important;                                                                                                                           
    font-weight: 600 !important;                                                          
    font-size: 15px !important;                                                                                                                              
    transition: all 0.25s ease !important;
    border: none !important;                                                                                                                                 
    cursor: pointer;                                                                      
  }                                                                                                                                                          
   
  .ff-btn-next,                                                                                                                                              
  .ff-btn-submit {                                                                        
    background: #8B5A2B !important;
    color: #FFFFFF !important;                                                                                                                               
  }
                                                                                                                                                             
  .ff-btn-next:hover,                                                                     
  .ff-btn-submit:hover {
    background: #5C3A1E !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(139, 90, 43, 0.25);                                                                                                          
  }
                                                                                                                                                             
  .ff-btn-prev {                                                                          
    background: transparent !important;
    color: #666 !important;
    border: 2px solid #E0E0E0 !important;                                                                                                                    
  }
                                                                                                                                                             
  .ff-btn-prev:hover {                                                                    
    border-color: #8B5A2B !important;
    color: #8B5A2B !important;
  }                                                                                                                                                          
   
  /* --- Barre de progression / Étapes --- */                                                                                                                
  .fluentform .ff-step-titles {                                                           
    display: flex;
    justify-content: space-between;
    margin: 0 0 40px;                                                                                                                                        
    padding: 0;
    position: relative;                                                                                                                                      
  }                                                                                       

  /* Ligne de fond unique */
  .fluentform .ff-step-titles:before {
    content: "";                                                                                                                                             
    position: absolute;
    top: 18px;                                                                                                                                               
    left: 10%;                                                                            
    right: 10%;
    height: 2px;
    background: #E0E0E0;
    z-index: 0;
  }                                                                                                                                                          
   
  /* Masquer les lignes natives Fluent Forms */                                                                                                              
  .fluentform .ff-step-titles li:after {                                                  
    display: none !important;
  }

  .fluentform .ff-step-titles li {                                                                                                                           
    display: flex;
    flex-direction: column;                                                                                                                                  
    align-items: center;                                                                  
    font-size: 12px;
    font-weight: 500;
    color: #999;
    padding: 0 5px;
    flex: 1;                                                                                                                                                 
    text-align: center;
    position: relative;                                                                                                                                      
  }                                                                                       

  /* Cercles numérotés (inactifs) */
  .fluentform .ff-step-titles li:before {
    background: #FFFFFF;                                                                                                                                     
    border: 2px solid #E0E0E0;
    border-radius: 50%;                                                                                                                                      
    color: #999;                                                                          
    display: flex;
    align-items: center;                                                                                                                                     
    justify-content: center;
    font-size: 13px;                                                                                                                                         
    font-weight: 600;                                                                     
    width: 36px;
    height: 36px;
    min-width: 36px;
    line-height: 1;
    margin: 0 auto 8px;                                                                                                                                      
    position: relative;
    z-index: 2;                                                                                                                                              
    transition: all 0.3s ease;                                                            
  }

  /* Numéros forcés — 5 étapes */                                                                                                                            
  .fluentform .ff-step-titles li:nth-child(1):before { content: "1"; }
  .fluentform .ff-step-titles li:nth-child(2):before { content: "2"; }                                                                                       
  .fluentform .ff-step-titles li:nth-child(3):before { content: "3"; }                                                                                       
  .fluentform .ff-step-titles li:nth-child(4):before { content: "4"; }
  .fluentform .ff-step-titles li:nth-child(5):before { content: "5"; }                                                                                       
                                                                                          
  /* Étape active */                                                                                                                                         
  .fluentform .ff-step-titles li.ff_active {                                              
    color: #8B5A2B;                                                                                                                                          
    font-weight: 600;
  }                                                                                                                                                          
  .fluentform .ff-step-titles li.ff_active:before {                                       
    background: #8B5A2B;
    border-color: #8B5A2B;                                                                                                                                   
    color: #FFFFFF;
  }                                                                                                                                                          
                                                                                          
  /* Étape complétée */
  .fluentform .ff-step-titles li.ff_completed {
    color: #8B5A2B;
  }                                                                                                                                                          
  .fluentform .ff-step-titles li.ff_completed:before {
    background: #8B5A2B;                                                                                                                                     
    border-color: #8B5A2B;                                                                
    color: #FFFFFF;
    content: "\2713" !important;                                                                                                                             
    font-size: 16px;
  }                                                                                                                                                          
                                                                                          
  /* --- Conteneur général du formulaire --- */
  .fluentform {
    background: #FFFFFF;
    padding: 40px;                                                                                                                                           
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(139, 90, 43, 0.08);                                                                                                         
    max-width: 800px;                                                                     
    margin: 0 auto;                                                                                                                                          
  }
                                                                                                                                                             
  /* --- Messages d'erreur --- */                                                         
  .fluentform .error {
    color: #C8102E;
    font-size: 13px;
    margin-top: 4px;                                                                                                                                         
  }
                                                                                                                                                             
  /* --- Responsive --- */                                                                
  @media (max-width: 768px) {
    .fluentform {
      padding: 24px 16px;
      border-radius: 12px;
    }                                                                                                                                                        
    .fluentform .ff-step-titles li {
      font-size: 0;                                                                                                                                          
      padding: 0 3px;                                                                     
    }
    .fluentform .ff-step-titles li:before {
      width: 30px;                                                                                                                                           
      height: 30px;
      min-width: 30px;                                                                                                                                       
      font-size: 12px;                                                                    
    }
    .fluentform .ff-step-titles:before {
      top: 15px;
    }                                                                                                                                                        
  }/* End custom CSS */