.elementor-19 .elementor-element.elementor-element-fe19133{--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: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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-19 .elementor-element.elementor-element-fe19133:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-fe19133 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.uneaffairedefamillehsl.com/wp-content/uploads/2020/12/offre_emplois.jpg");}.elementor-19 .elementor-element.elementor-element-fe19133::before, .elementor-19 .elementor-element.elementor-element-fe19133 > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-fe19133 > .e-con-inner > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-fe19133 > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-fe19133 > .e-con-inner > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-fe19133 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#080808;--background-overlay:'';}.elementor-19 .elementor-element.elementor-element-0bdea00{--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:center;}.elementor-19 .elementor-element.elementor-element-0bdea00.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-repeater-item-bb4b3dc.elementor-social-icon{background-color:#EF8815D6;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-repeater-item-90f46c8.elementor-social-icon{background-color:#EF8815D6;}.elementor-19 .elementor-element.elementor-element-eed6923{--grid-template-columns:repeat(0, auto);--icon-size:29px;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-widget-container{text-align:center;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon{background-color:#EF8815;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon i{color:#FFFFFF;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon svg{fill:#FFFFFF;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon:hover{background-color:#FFFFFF;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon:hover i{color:#93BF23;}.elementor-19 .elementor-element.elementor-element-eed6923 .elementor-social-icon:hover svg{fill:#93BF23;}.elementor-19 .elementor-element.elementor-element-891378d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-891378d.e-con{--flex-grow:0;--flex-shrink:0;}.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-19 .elementor-element.elementor-element-75d8de2 > .elementor-widget-container{background-color:#FFFFFF;margin:0px 0px 0px 0px;padding:5px 5px 5px 5px;border-radius:10px 10px 10px 10px;}.elementor-19 .elementor-element.elementor-element-63d35d3{--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:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-19 .elementor-element.elementor-element-791fa0d .elementor-button{background-color:#93BF23ED;font-family:"Roboto", Sans-serif;font-weight:500;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);transition-duration:1.5s;border-radius:5px 5px 5px 5px;padding:20px 20px 20px 20px;}.elementor-19 .elementor-element.elementor-element-791fa0d .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-791fa0d .elementor-button:focus{background-color:#EF8815D6;}.elementor-19 .elementor-element.elementor-element-2da4403{--display:flex;--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;--align-items:center;--background-transition:0.3s;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#FFFFFF;--border-color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--z-index:1;}.elementor-19 .elementor-element.elementor-element-2da4403:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-2da4403 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(128deg, #FFD20D 15%, #E00920 100%);}.elementor-19 .elementor-element.elementor-element-2da4403:hover{background-color:transparent;background-image:linear-gradient(141deg, #93BF23 15%, #05562A 72%);}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-menu-toggle{margin:0 auto;background-color:#F8F8F8AB;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu .elementor-item{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item{color:#000000;fill:#000000;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FAFAFA;}.elementor-19 .elementor-element.elementor-element-1f7efa1{--e-nav-menu-horizontal-menu-item-margin:calc( 60px / 2 );}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:60px;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown a, .elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-menu-toggle{color:#000000;fill:#000000;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown{background-color:#FFFFFFF0;border-style:solid;border-width:0px 2px 2px 2px;border-color:#008D84;border-radius:7px 7px 10px 10px;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown a:hover,
					.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown a.highlighted{background-color:#EF8815D1;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown a.elementor-item-active{background-color:#72F70785;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:7px;border-top-right-radius:7px;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:10px;border-bottom-left-radius:10px;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu--main .elementor-nav-menu--dropdown, .elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-nav-menu__container.elementor-nav-menu--dropdown{box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-19 .elementor-element.elementor-element-be5129c{--display:flex;--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:space-around;--align-items:center;--overlay-opacity:0.5;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#FFFFFF;--border-color:#FFFFFF;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:0;}.elementor-19 .elementor-element.elementor-element-be5129c:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.uneaffairedefamillehsl.com/wp-content/uploads/2020/12/famille_exterieur.jpg");background-position:0px -245px;background-repeat:no-repeat;background-size:cover;}.elementor-19 .elementor-element.elementor-element-be5129c::before, .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-be5129c > .e-con-inner > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-be5129c > .e-con-inner > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(113deg, #204D11 0%, #D69EAC 100%);}.elementor-19 .elementor-element.elementor-element-13dc7ef{--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;--justify-content:center;--margin-top:280px;--margin-bottom:280px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button{background-color:#93BF23E0;fill:#FFFFFF;color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFFFFF;border-radius:3px 3px 3px 3px;padding:15px 15px 15px 15px;}.elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button:focus{background-color:#FFFFFF;color:#000000;}.elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button:hover svg, .elementor-19 .elementor-element.elementor-element-de56df2 .elementor-button:focus svg{fill:#000000;}.elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button{background-color:#EF8815D1;fill:#FFFFFF;color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFFFFF;border-radius:3px 3px 3px 3px;padding:15px 15px 15px 15px;}.elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button:focus{background-color:#FFFFFF;color:#000000;}.elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button:hover svg, .elementor-19 .elementor-element.elementor-element-c2a7c61 .elementor-button:focus svg{fill:#000000;}.elementor-19 .elementor-element.elementor-element-5b9f3da{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19 .elementor-element.elementor-element-4070450{--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:0px 0px;--row-gap:0px;--column-gap:0px;--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-19 .elementor-element.elementor-element-08328d4{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19 .elementor-element.elementor-element-03801d7{--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:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#FFFFFF;--border-color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-19 .elementor-element.elementor-element-03801d7:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-03801d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.uneaffairedefamillehsl.com/wp-content/uploads/2025/05/depositphotos_15549477-stock-photo-many-hands-together-group-of.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-19 .elementor-element.elementor-element-03801d7::before, .elementor-19 .elementor-element.elementor-element-03801d7 > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-03801d7 > .e-con-inner > .elementor-background-video-container::before, .elementor-19 .elementor-element.elementor-element-03801d7 > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-03801d7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-19 .elementor-element.elementor-element-03801d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-19 .elementor-element.elementor-element-3b856ee{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-a2b5f8e{--display:flex;--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;--align-items:center;--background-transition:0.3s;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#FFFFFF;--border-color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--z-index:1;}.elementor-19 .elementor-element.elementor-element-a2b5f8e:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-a2b5f8e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(128deg, #FFD20D 15%, #E00920 100%);}.elementor-19 .elementor-element.elementor-element-a2b5f8e:hover{background-color:transparent;background-image:linear-gradient(141deg, #93BF23 15%, #05562A 72%);}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-c6d47a4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:13px 13px 13px 13px;}.elementor-19 .elementor-element.elementor-element-c6d47a4{text-align:center;}.elementor-19 .elementor-element.elementor-element-c6d47a4 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;color:#FFFFFF;}@media(min-width:768px){.elementor-19 .elementor-element.elementor-element-0bdea00{--width:45%;}.elementor-19 .elementor-element.elementor-element-891378d{--width:10%;}.elementor-19 .elementor-element.elementor-element-63d35d3{--width:40%;}.elementor-19 .elementor-element.elementor-element-be5129c{--width:100%;}.elementor-19 .elementor-element.elementor-element-08328d4{--width:100%;}.elementor-19 .elementor-element.elementor-element-3b856ee{--width:100%;}}@media(max-width:1024px){.elementor-19 .elementor-element.elementor-element-eed6923{--icon-size:15px;--grid-column-gap:15px;}.elementor-19 .elementor-element.elementor-element-75d8de2 > .elementor-widget-container{padding:5px 5px 5px 5px;}.elementor-19 .elementor-element.elementor-element-75d8de2 img{width:100%;max-width:100%;}.elementor-19 .elementor-element.elementor-element-791fa0d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-19 .elementor-element.elementor-element-791fa0d .elementor-button{font-size:10px;}.elementor-19 .elementor-element.elementor-element-1f7efa1{--nav-menu-icon-size:28px;}.elementor-19 .elementor-element.elementor-element-1f7efa1 .elementor-menu-toggle{border-width:1px;border-radius:10px;}.elementor-19 .elementor-element.elementor-element-be5129c:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}}@media(max-width:767px){.elementor-19 .elementor-element.elementor-element-eed6923{--icon-size:28px;}.elementor-19 .elementor-element.elementor-element-791fa0d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-19 .elementor-element.elementor-element-791fa0d .elementor-button{font-size:20px;}.elementor-19 .elementor-element.elementor-element-be5129c:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-be5129c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-64ae1b4 *//* CSS pour le Formulaire Gravity Forms - Une Affaire de Famille */
/* Design moderne et coloré avec l'identité de la marque */

:root {
    --primary-green: #8AC926;
    --dark-green: #2D5A2D;
    --accent-yellow: #FECF04;
    --accent-orange: #FF6B35;
    --light-bg: #F8F9FA;
    --white: #FFFFFF;
    --gray-light: #F5F7FA;
    --gray-medium: #E9ECEF;
    --gray-dark: #6C757D;
    --text-dark: #212529;
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.04);
    --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.12);
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Reset box-sizing global pour le formulaire */
.gform_wrapper *,
.gform_wrapper *::before,
.gform_wrapper *::after {
    box-sizing: border-box;
}

/* Conteneurs Elementor */
.elementor-widget-shortcode,
.elementor-shortcode {
    width: 100%;
}

/* Container principal - peut être col-md-6 ou le wrapper du formulaire */
.col-md-6,
.gform_wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 40px;
    background: linear-gradient(135deg, #E8F5E9 0%, var(--white) 30%, #FFF8E1 60%, #FFF3E0 100%);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

/* Si le wrapper est dans un col-md-6, ne pas doubler le style */
.col-md-6 .gform_wrapper {
    max-width: none;
    padding: 0;
    background: none;
    border-radius: 0;
}

/* Décoration de fond animée */
.col-md-6::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(138, 201, 38, 0.15) 0%, rgba(254, 207, 4, 0.2) 50%, transparent 70%);
    border-radius: 50%;
    top: -200px;
    right: -200px;
    animation: float 20s infinite ease-in-out;
}

.col-md-6 h3,
.gform_wrapper h3,
.gform_title {
    font-size: 2.5rem;
    font-weight: 700;
    background: linear-gradient(135deg, var(--primary-green) 0%, var(--dark-green) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    z-index: 1;
    animation: fadeInDown 0.8s ease-out;
}

/* Ligne décorative sous le titre */
.col-md-6 h3::after,
.gform_wrapper h3::after,
.gform_title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 4px;
    background: linear-gradient(90deg, var(--accent-orange) 0%, var(--accent-yellow) 50%, var(--primary-green) 100%);
    border-radius: 2px;
}

/* En-tête du formulaire */
.gform_heading {
    margin-bottom: 30px;
    text-align: center;
}

.gform_description {
    color: var(--gray-dark);
    font-size: 1rem;
    margin-top: 10px;
}

/* Wrapper Gravity Forms */
.gform_wrapper {
    position: relative;
    z-index: 1;
}

/* Formulaire */
#gform_1 {
    width: 100%;
}

/* Clear floats après le formulaire */
#gform_1::after,
.gform_body::after,
.gform_fields::after {
    content: "";
    display: table;
    clear: both;
}

/* Liste des champs */
.gform_fields {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}

/* Champs individuels avec design moderne */
.gfield {
    margin: 0;
    padding: 30px;
    background: var(--white);
    border-radius: 16px;
    position: relative;
    transition: var(--transition);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    border: 2px solid transparent;
    background-image: linear-gradient(var(--white), var(--white)), 
                      linear-gradient(135deg, transparent 0%, transparent 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
    box-sizing: border-box;
    width: 100%;
}

.gfield:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(138, 201, 38, 0.15);
    background-image: linear-gradient(var(--white), var(--white)), 
                      linear-gradient(135deg, var(--primary-green) 0%, var(--accent-yellow) 100%);
}

.gfield:focus-within {
    box-shadow: 0 8px 25px rgba(138, 201, 38, 0.2);
    transform: translateY(-2px);
    background-image: linear-gradient(var(--white), var(--white)), 
                      linear-gradient(135deg, var(--primary-green) 0%, var(--accent-yellow) 50%, var(--accent-orange) 100%);
    animation: pulse 2s infinite;
}

/* Types de champs spéciaux avec couleurs distinctes */
.gfield--type-name {
    background: linear-gradient(135deg, rgba(138, 201, 38, 0.03) 0%, rgba(254, 207, 4, 0.03) 100%);
    border-left: 4px solid var(--primary-green);
}

.gfield--type-email {
    background: linear-gradient(135deg, rgba(138, 201, 38, 0.03) 0%, rgba(255, 107, 53, 0.03) 100%);
    border-left: 4px solid var(--primary-green);
}

.gfield--type-text {
    background: linear-gradient(135deg, rgba(255, 107, 53, 0.03) 0%, rgba(254, 207, 4, 0.03) 100%);
    border-left: 4px solid var(--accent-orange);
}

.gfield--type-textarea {
    background: linear-gradient(135deg, rgba(138, 201, 38, 0.05) 0%, rgba(45, 90, 45, 0.02) 100%);
    border: 2px dashed rgba(138, 201, 38, 0.3);
}

/* Labels modernes */
.gfield_label,
.gform-field-label {
    display: block;
    font-weight: 600;
    color: var(--dark-green);
    margin-bottom: 8px;
    font-size: 14px;
    letter-spacing: 0.025em;
    transition: var(--transition);
}

/* Labels cachés pour accessibilité */
.hidden_label .gfield_label,
.hidden_sub_label,
.screen-reader-text {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Labels des sous-champs (prénom/nom) */
.gform-field-label--type-sub {
    font-size: 12px;
    font-weight: 400;
    color: var(--gray-dark);
}

/* Champs masqués */
.hidden_label .gfield_label,
.hidden_sub_label {
    position: absolute;
    left: -10000px;
}

/* Container pour les noms */
.ginput_container_name {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

/* Tous les inputs avec style moderne */
.gfield select,
.gfield textarea,
.gfield input[type="text"],
.gfield input[type="password"],
.gfield input[type="date"],
.gfield input[type="number"],
.gfield input[type="email"],
.gfield input[type="tel"],
input#input_1_1_3,
input#input_1_1_6,
input#input_1_2,
input#input_1_3,
textarea#input_1_4 {
    display: block;
    width: 100%;
    height: 48px;
    padding: 12px 16px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--text-dark);
    background-color: var(--white);
    border: 2px solid var(--gray-medium);
    border-radius: 12px;
    outline: none;
    transition: var(--transition);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
    font-family: inherit;
}

/* Hover sur les inputs */
.gfield select:hover,
.gfield textarea:hover,
.gfield input[type="text"]:hover,
.gfield input[type="password"]:hover,
.gfield input[type="number"]:hover,
.gfield input[type="email"]:hover,
.gfield input[type="tel"]:hover {
    border-color: var(--primary-green);
    box-shadow: 0 2px 8px rgba(138, 201, 38, 0.15);
}

/* Focus sur les inputs */
.gfield select:focus,
.gfield textarea:focus,
.gfield input[type="text"]:focus,
.gfield input[type="password"]:focus,
.gfield input[type="number"]:focus,
.gfield input[type="email"]:focus,
.gfield input[type="tel"]:focus {
    border-color: var(--primary-green);
    box-shadow: 0 0 0 4px rgba(138, 201, 38, 0.1);
    background-color: var(--white);
}

/* Textarea spécifique */
.gfield textarea,
textarea#input_1_4 {
    min-height: 120px;
    height: auto;
    resize: vertical;
    padding-top: 12px;
    padding-bottom: 12px;
}

/* Styles par défaut pour tous les champs */
.gf_left_half,
.gf_right_half {
    width: 100%;
    display: block;
    box-sizing: border-box;
}

/* Container spécifique pour la grille du nom */
.ginput_container_name,
.gform-grid-row {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
}

.gform-grid-col {
    width: 100% !important;
}

/* Conteneurs spécifiques pour les champs de nom */
.name_first,
.name_last {
    position: relative;
}

/* Classes spécifiques Gravity Forms */
.gform_legacy_markup_wrapper {
    background: transparent;
}

.ginput_container {
    position: relative;
    width: 100%;
}

/* Classes de taille des champs */
.medium {
    width: 100% !important;
}

/* Styles pour les listes de champs */
ul.gform_fields {
    margin: 0;
    padding: 0;
}

li.gfield {
    list-style: none;
}

/* Grille pour les champs côte à côte sur desktop uniquement */
@media (min-width: 992px) {
    /* Container pour les champs demi-largeur */
    .gform_body {
        position: relative;
        overflow: hidden;
    }
    
    /* Conteneur pour gérer les paires de champs */
    .gform_fields::after {
        content: "";
        display: table;
        clear: both;
    }
    
    /* Utiliser flexbox pour une meilleure gestion */
    .gform_fields {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 30px !important;
        align-items: flex-start;
    }
    
    /* Créer une grille flexible pour les champs */
    .gfield.gf_left_half,
    .gfield.gf_right_half {
        float: none !important;
        flex: 1 1 calc(50% - 15px) !important;
        max-width: calc(50% - 15px) !important;
        width: auto !important;
        margin: 0 !important;
        clear: none !important;
    }
    
    /* Les autres champs prennent toute la largeur */
    .gfield:not(.gf_left_half):not(.gf_right_half) {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
    
    /* Assurer que les inputs prennent toute la largeur */
    .gfield.gf_left_half .ginput_container,
    .gfield.gf_right_half .ginput_container {
        width: 100%;
    }
    
    .gfield.gf_left_half input,
    .gfield.gf_right_half input,
    .gfield.gf_left_half select,
    .gfield.gf_right_half select {
        width: 100% !important;
    }
    
    /* Clear après les paires */
    .gfield.gf_right_half + .gfield:not(.gf_left_half) {
        clear: both;
    }
    
    /* Retirer le margin-bottom car gap le gère */
    .gfield.gf_left_half,
    .gfield.gf_right_half {
        margin-bottom: 0 !important;
    }
    
    /* Ajuster margin-bottom uniquement pour les champs sans flexbox */
    .gfield:not(.gf_left_half):not(.gf_right_half) {
        margin-bottom: 0;
    }
    
    /* Alternative avec grid pour un meilleur support */
    @supports (display: grid) {
        .gform_fields {
            display: grid !important;
            grid-template-columns: repeat(2, 1fr) !important;
            gap: 30px !important;
        }
        
        .gfield.gf_left_half,
        .gfield.gf_right_half {
            grid-column: span 1;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
        }
        
        .gfield:not(.gf_left_half):not(.gf_right_half) {
            grid-column: span 2;
        }
    }
}

/* Footer du formulaire avec décoration */
.gform_footer,
.gform-footer {
    margin-top: 50px;
    padding: 40px 0 20px;
    text-align: center;
    position: relative;
    background: transparent;
    border: none;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Ligne décorative avant le bouton */
.gform_footer::before,
.gform-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    height: 4px;
    background: linear-gradient(90deg, var(--accent-yellow) 0%, var(--primary-green) 50%, var(--accent-orange) 100%);
    border-radius: 2px;
}

/* Bouton submit avec effet brillance */
#gform_submit_button_1,
.gform_button,
.gform_footer .button {
    display: inline-block;
    background: linear-gradient(135deg, var(--primary-green) 0%, var(--dark-green) 100%);
    color: var(--white);
    border: none;
    padding: 18px 50px;
    border-radius: 50px;
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: var(--transition);
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(138, 201, 38, 0.3);
    text-transform: uppercase;
    height: auto;
    margin: 0 auto;
}

/* Effet brillance au survol */
#gform_submit_button_1::before,
.gform_button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s;
}

#gform_submit_button_1:hover,
.gform_button:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 30px rgba(138, 201, 38, 0.4);
}

#gform_submit_button_1:hover::before,
.gform_button:hover::before {
    left: 100%;
}

#gform_submit_button_1:active,
.gform_button:active {
    transform: translateY(-1px);
    box-shadow: 0 3px 15px rgba(138, 201, 38, 0.3);
}

/* Placeholder */
::placeholder {
    color: var(--gray-dark);
    opacity: 0.7;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: var(--gray-dark);
    opacity: 0.7;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: var(--gray-dark);
    opacity: 0.7;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: var(--gray-dark);
    opacity: 0.7;
}

/* Messages et descriptions */
.gfield_description {
    color: var(--gray-dark);
    font-size: 13px;
    margin-top: 8px;
    line-height: 1.5;
    display: block;
}

/* Messages d'erreur avec design moderne */
.gfield_error {
    border-color: var(--accent-orange);
    background-color: rgba(255, 107, 53, 0.05);
}

.gfield_error input,
.gfield_error select,
.gfield_error textarea {
    border-color: var(--accent-orange);
    background-color: rgba(255, 107, 53, 0.02);
}

.validation_message {
    color: var(--accent-orange);
    font-size: 13px;
    margin-top: 8px;
    padding: 8px 12px;
    background: rgba(255, 107, 53, 0.08);
    border-radius: 8px;
    border-left: 3px solid var(--accent-orange);
    display: flex;
    align-items: center;
}

/* Message de validation du formulaire */
.gform_validation_error {
    background: #FFF3CD;
    border: 1px solid #FFC107;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 30px;
}

.gform_validation_error_message {
    color: #856404;
    font-weight: 600;
}

/* Message de confirmation */
#gform_confirmation_message_1 {
    background: linear-gradient(135deg, #E8F5E9 0%, #FFF8E1 100%);
    border-radius: 15px;
    padding: 30px;
    text-align: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
    animation: fadeInUp 0.5s ease-out;
}

#gform_confirmation_message_1 h3 {
    color: #8AC926;
    font-size: 1.8rem;
    margin-bottom: 15px;
}

/* Spinner de chargement */
.gform_ajax_spinner {
    margin-left: 10px;
    vertical-align: middle;
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(138, 201, 38, 0.4); }
    70% { box-shadow: 0 0 0 10px rgba(138, 201, 38, 0); }
    100% { box-shadow: 0 0 0 0 rgba(138, 201, 38, 0); }
}

@keyframes float {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg);
    }
    33% {
        transform: translate(30px, -30px) rotate(120deg);
    }
    66% {
        transform: translate(-20px, 20px) rotate(240deg);
    }
}

/* Responsive - Desktop Large */
@media (min-width: 1200px) {
    .col-md-6,
    .gform_wrapper {
        padding: 80px 60px;
    }
    
    .col-md-6 .gform_wrapper {
        padding: 0;
        max-width: 900px;
        margin: 0 auto;
    }
    
    .gfield {
        padding: 35px;
    }
}

/* Responsive - Desktop */
@media (min-width: 992px) and (max-width: 1199px) {
    .col-md-6,
    .gform_wrapper {
        max-width: 1000px;
        padding: 60px 40px;
    }
    
    .col-md-6 .gform_wrapper {
        padding: 0;
        max-width: 800px;
        margin: 0 auto;
    }
}

/* Responsive - Tablette */
@media (min-width: 769px) and (max-width: 991px) {
    .col-md-6,
    .gform_wrapper {
        max-width: 800px;
        padding: 50px 35px;
    }
    
    .col-md-6 .gform_wrapper {
        padding: 0;
    }
    
    .col-md-6 h3,
    .gform_wrapper h3,
    .gform_title {
        font-size: 2.2rem;
    }
    
    /* Reset flexbox pour tablette */
    .gform_fields {
        display: block !important;
    }
    
    .gfield {
        padding: 25px;
        margin-bottom: 25px !important;
    }
    
    .gfield.gf_left_half,
    .gfield.gf_right_half {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin-right: 0 !important;
    }
    
    /* Ajuster la grille du nom pour tablette */
    .ginput_container_name,
    .gform-grid-row {
        grid-template-columns: 1fr 1fr !important;
    }
}

/* Responsive - Mobile Paysage et Petite Tablette */
@media (max-width: 768px) {
    .col-md-6,
    .gform_wrapper {
        max-width: 100%;
        padding: 40px 20px;
        border-radius: 0;
    }
    
    .col-md-6 .gform_wrapper {
        padding: 0;
    }
    
    .col-md-6 h3,
    .gform_wrapper h3,
    .gform_title {
        font-size: 2rem;
        margin-bottom: 30px;
    }
    
    /* Reset flexbox pour mobile */
    .gform_fields {
        display: block !important;
    }
    
    /* Reset complet pour mobile */
    .gfield {
        margin: 0 0 20px 0 !important;
        padding: 20px;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        clear: both !important;
    }
    
    .gfield.gf_left_half,
    .gfield.gf_right_half {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin-right: 0 !important;
        display: block !important;
    }
    
    /* Grille du nom en colonne unique sur mobile */
    .ginput_container_name,
    .gform-grid-row {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }
    
    #gform_submit_button_1,
    .gform_button {
        padding: 16px 40px;
        font-size: 16px;
    }
}

/* Responsive - Mobile Portrait */
@media (max-width: 480px) {
    .col-md-6,
    .gform_wrapper {
        padding: 30px 15px;
    }
    
    .col-md-6 .gform_wrapper {
        padding: 0;
    }
    
    .col-md-6 h3,
    .gform_wrapper h3,
    .gform_title {
        font-size: 1.75rem;
        margin-bottom: 25px;
    }
    
    .col-md-6 h3::after,
    .gform_wrapper h3::after,
    .gform_title::after {
        width: 80px;
    }
    
    .gfield {
        padding: 16px;
        border-radius: 12px;
    }
    
    .gfield select,
    .gfield textarea,
    .gfield input[type="text"],
    .gfield input[type="email"],
    .gfield input[type="tel"] {
        font-size: 16px; /* Évite le zoom sur iOS */
        height: 44px;
        padding: 10px 14px;
    }
    
    #gform_submit_button_1,
    .gform_button {
        padding: 14px 32px;
        font-size: 15px;
        width: 100%;
    }
    
    .gform_footer::before,
    .gform-footer::before {
        width: 120px;
    }
}

/* Accessibilité */
@media (prefers-reduced-motion: reduce) {
    * {
        animation: none !important;
        transition: none !important;
    }
    
    #gform_submit_button_1::before,
    .gform_button::before {
        display: none;
    }
}/* End custom CSS */