/**
Theme Name: Divi child
Author: Eclate
Description: Child theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: divi-child
Template: Divi
*/




/* #region Default styles */


.et_pb_button {
    -webkit-user-select: none;
    -ms-user-select: none; 
    user-select: none;
}


/* Helper */
/*

Taille des titres :

h1 => 42px;
h2 => 32px;
h3 => 24px;
h4 => 21px;
h5 => 18px;
h6 => 16px;

Classes de styles à ajouter

bg-fonce
bg-orange
bg-gris
bg-blanc

bigger-text => 18px;

title-as-h2 
title-as-h3
title-as-h4
title-as-h5
title-as-h6

title-orange

radius => 9px;
small-radius => 8px;

Module image
plus-margin-left => agrandi l'image placée dans la colonne gauche jusqu'au bord gauche de la page
plus-margin-right => agrandi l'image placée dans la colonne droite jusqu'au bord droit de la page

*/

/* #block Variables & Font-size responsive */

:root {

    --white: #ffffff;
    --fonce: #00214F;
    --gris: #E9EEF5;
    --orange: #F16122;

    /* --fs-biggest-text: clamp(32px, 28.286px + 0.9286vw, 45px);
    --fs-h1: clamp(30px, 26.571px + 0.8571vw, 42px);
	--fs-h2: clamp(26px, 24.286px + 0.4286vw, 32px);
    --fs-h3: clamp(22px, 21.429px + 0.1429vw, 24px);
    --fs-h4: clamp(20px, 19.714px + 0.0714vw, 21px);
    --fs-h5: clamp(18px, 18px + 0vw, 18px);
    --fs-h6: clamp(16px, 16px + 0vw, 16px); */

    --fs-biggest-text: clamp(32px, 24px + 2vw, 60px);
    --fs-h1: clamp(30px, 22.857px + 1.7857vw, 55px);
    --fs-h2: clamp(26px, 21.429px + 1.1429vw, 42px);
    --fs-h3: clamp(22px, 19.714px + 0.5714vw, 30px);
    --fs-h4: clamp(20px, 18.286px + 0.4286vw, 26px);
    --fs-h5: clamp(18px, 16.571px + 0.3571vw, 23px);
    --fs-h6: clamp(16px, 14.857px + 0.2857vw, 20px);

    --default-pad-v: clamp(80px, 7vw, 144px);
    --default-pad-v-row: clamp(20px, 2vw, 41px);
    --default-pad-v-section: clamp(50px, 4vw, 80px);

    --fw-title: 700;
    --lh-title: 1.1em;

	--radius: 9px;
	--small-radius: 8px;

    --et_global_body_font_size: 16px;
    /* --body-text-fs: 16px; */
    /* --body-text-fs: var(--et_global_body_font_size); */
    --big-text-fs: 18px;
    --btn-fs: 18px;

    
    --row-margin: calc((100vw - min(90vw, 1600px)) / 2);

    /*
    --font-title: 'Inter', sans-serif;
    --font-text: 'Inter', sans-serif;
    */
	
	/* --encadre: clamp(25px, 17px + 2vw, 65px) clamp(20px, 10px + 2.5vw, 70px); */
	/* --s-encadre: clamp(25px, 21.6px + 0.85vw, 42px) clamp(20px, 17.2px + 0.7vw, 34px); */

}

.et_pb_scroll_top {
    background-color: rgba(0, 33, 79, 0.5)!important;
}

.bigger-module-gutter {
    --module-gutter: 40px;
}

.smaller-vertical-gap {
    --vertical-gap: 40px;

    @media (max-width:980px) {
        --vertical-gap: 30px;
    }
}

@media (max-width:980px) {
    .et_pb_section.et_flex_section:has( > .et_pb_row:not(.et_block_row):first-child), .et_block_section:has( > .et_pb_row:not(.et_block_row):first-child) {
        padding-top: 80px;
    }

    .et_pb_section.et_flex_section:has( > .et_pb_row:not(.et_block_row):last-child), .et_block_section:has( > .et_pb_row:not(.et_block_row):last-child) {
        padding-bottom: 80px;
    }
}

.et_pb_section.et_flex_section {

}


@media (min-width:981px) {
	:root {
		/* --section-gutter-v: 100px; */
	}
	
	.et_flex_section {
		/* --vertical-gap: var(--section-gutter-v); */
	}
}


body, input, textarea, select {
    /* font-family: var(--font-text) !important; */
}

body {
    /* background-color: var(--gris); */
    /* font-size: var(--body-text-fs)!important; */
}

body.admin-bar {
    --admin-offset: 32px;
}

@media (max-width: 782px) {
    body.admin-bar {
        --admin-offset: 46px;
    }
}


/*
@media (min-width: 981px) {
    :root {
        --btn-fs: 18px;
    }

    body {
        font-size: 16px !important;
    }
}

@media (min-width:981px) and (max-width:1375px) {
    :root {
        --btn-fs: 20px;
    	--big-text-fs: 21px;
    }
}


@media (min-width: 768px) and (max-width: 980px) {
    :root {
        --btn-fs: 21px;
    	--big-text-fs: 20px; 
    }

    body {
        font-size: 16px !important;
    }
}

@media (max-width: 767px) {
    :root {
        --btn-fs: 18px;
    	--big-text-fs: 19px;
		
    }

    body {
        font-size: 16px !important;
    }
}
*/

/*
.font-title {
    font-family: var(--font-title) !important;
}

.font-text :is(h1,h2,h3,h4,h5,h6) {
    font-family: var(--font-text) !important;
}
*/


/* #end Variables & Font-size responsive */

/* #main-content,
.et_pb_section:not([class*='bg-']):not(.footer-section) {
    background-color: var(--light);
} */


[class*='wrap-'].wrapped > .et_pb_column {
   margin-right: 0 !important;
   width: 100% !important;
}

.et_flex_row[class*='wrap-'].wrapped {
	flex-wrap: wrap;
}


.et_pb_bg_layout_dark,
.et_pb_bg_layout_dark :is(h1, h2, h3, h4, h5, h6) {
    color: var(--white) !important;
}

/* #block Titles */
@media (min-width: 768px) {
    :is(h1, h2, h3, h4, h5, h6) {
        text-wrap: balance;
    }
}

@media (max-width: 767px) {
    :is(h1, h2, h3, h4, h5, h6) {
        text-wrap: pretty;
    }
}

h3, h4, h5 {
    --fw-title: 600;
}


.title-as-h2 :is(h3, h4, h5), .title-as-h6 :is(h3, h4, h5) {
    --fw-title: 700;
}


:is(h1, h2, h3, h4, h5, h6) {
    /* font-family: var(--font-title) !important; */
    line-height: var(--lh-title);
    font-weight: var(--fw-title) !important;
    /* letter-spacing: -2%; */
}

@supports (text-box: trim-start cap alphabetic) {
    :is(h1, h2, h3, h4, h5, h6) {
        text-box: trim-start cap alphabetic;
    }

    .no-text-box :is(h1, h2, h3, h4, h5, h6) {
        text-box: initial;
    }

    /* .text-box-trim-both * {
        text-box: trim-both cap alphabetic;
    } */

}




#page-container h1 {
    font-size: var(--fs-h1);
}

/* body.home #page-container h2 {
    font-size: var(--fs-h1);
} */

#page-container h2, #page-container .title-as-h2 :is(h1,h2,h3,h4,h5,h6) {
    font-size: var(--fs-h2);
}

#page-container h3, #page-container .title-as-h3 :is(h1,h2,h3,h4,h5,h6) {
    font-size: var(--fs-h3);
}

#page-container h4, #page-container .title-as-h4 :is(h1,h2,h3,h4,h5,h6) {
    font-size: var(--fs-h4);
}

#page-container h5, #page-container .title-as-h5 :is(h1,h2,h3,h4,h5,h6) {
    font-size: var(--fs-h5);
}

#page-container h6, #page-container .title-as-h6 :is(h1,h2,h3,h4,h5,h6) {
    font-size: var(--fs-h6);
}


:is(h1, h2, h3, h4, h5, h6):not(:last-child) {
    padding-bottom: max(0.5em, 10px) !important;
}

:is(p, ul, ol) + :is(h1, h2, h3, h4, h5, h6) {
    padding-top: max(0.85em, 16px) !important;
}

:is(h1, h2, h3, h4, h5, h6, p):has(+ :is(h1, h2, h3, h4, h5, h6)) {
    padding-bottom: 0 !important;
}

:is(h1, h2, h3, h4, h5, h6):last-child {
    padding-bottom: 0 !important;
}

.no-pb,
.et_pb_section.no-pb > .et_pb_row:not(.og-pad):last-child {
    padding-bottom: 0 !important;
}

.no-pt,
.et_pb_section.no-pt > .et_pb_row:not(.og-pad):first-child {
    padding-top: 0 !important;
}

#page-container :is(b, strong) {
    font-weight: 800;
}

/* #end Titles */

/* #block #left-area fullwidth */

#left-area {
    width: 100% !important;
    padding-right: 0 !important;
}

.et_right_sidebar #main-content .container:before {
    display: none;
}

/* #end #left-area fullwidth */

.et_pb_section > .et_pb_row {
    width: 90%;
}

#main-header > .container {
        width: min(90%, 1600px) !important;
    }

/* @media (min-width:981px) and (max-width:1000px) {

    #main-header > .container {
        width: 100% !important; 
        padding-left: 30px;
        padding-right: 30px;
    }
} */

@media (max-width: 980px) {
    .container {
        width: 90% !important;
    }
}







/*
#page-container .et_pb_row.et_flex_row:not(.big-gap){
    --horizontal-gap: 20px;
    --row-gutter-horizontal: 20px;
	--row-gutter-vertical: 30px;
}


#page-container .et_pb_row .et_flex_column:has(> .et_pb_row_nested).big-gap {
	--module-gutter: 40px;
}

 #page-container .et_pb_row.et_flex_row .et_pb_row_nested.et_flex_row {
    --horizontal-gap-parent: 20px;
    --vertical-gap-parent: 20px;
	 
 }

@media (max-width:980px) {
	#page-container .et_pb_row.et_flex_row .et_pb_row_nested.et_flex_row.small-row-gutter {
        --row-gutter-vertical: 20px;
    }
}
*/

/*
@media (max-width: 980px) {

    .et_pb_row.et_flex_row:not(:has(.et_pb_column:nth-child(3))) {
        flex-direction: column;
    }

    .et_pb_row.et_flex_row:not(:has(.et_pb_column:nth-child(3))) .et_pb_column {
        width: 100% !important;
        max-width: 100% !important;
    }

}
*/
p:not(.has-background):last-of-type:not(:last-child):not(:has(+ .et_pb_module)) {
    padding-bottom: 1em;
}

.et_pb_module p:last-of-type ~ :is(ul, ol):last-child {
    padding-bottom: 0;
}

.et_pb_module :is(ul, ol) li:not(:last-of-type) {
    padding-bottom: 0.25em;
}

.et_pb_module :is(ul, ol):not(:last-child):not(:has(+ :is(h1, h2, h3, h4, h5, h6))) {
    padding-bottom: 1em !important;
}

.et_pb_module :is(ul, ol):not(:last-child):has(+ :is(h1, h2, h3, h4, h5, h6)) {
    padding-bottom: 0 !important;
}



/*
.encadre {
	padding: var(--encadre)!important;
}

.small-encadre {
	padding: var(--s-encadre);
}


:is(.encadre, .small-encadre).bordered {
    border: solid 3px var(--accent-color, var(--fonce)) !important;
}
*/


.radius {
    border-radius: var(--radius);
}

.small-radius {
    border-radius: var(--small-radius);
}

.et_pb_module:is(.radius, .small-radius) {
    overflow: hidden;
}



/* #region Menu */

#main-header, #main-header.et-fixed-header {
    box-shadow: none!important;
}

#top-menu > li:not(:last-child) {
    /* padding-right: 65px; */
    padding-right: clamp(24px, -37.5px + 5.6944vw, 65px);
}

/*#page-container {
    overflow: hidden;
}

.privacy-policy #et-top-navigation {
    display: none !important;
} 

.privacy-policy #main-header {
    padding: 22px 0!important;
}

@media (max-width:980px) {
    .privacy-policy #main-header {
        padding: 12px 0!important;
    }
}
*/

/*
#main-header {
    --menu-h-spacing: calc(var(--menu-fs) * 2.4);
    --menu-h-spacing: min(clamp(25px, -12.125px + 3.375vw, 52px), calc(var(--menu-fs) * 2.4));
    --logo-w: 500px;
    --menu-fs: clamp(15px, 7.528px + 0.7617vw, 22px);
    box-shadow: none !important;
}


#main-header:is(.et-fixed-header, .has-button) {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

#main-header li a {
    font-family: var(--font-title);
    font-weight: 500 !important;
    transition:
        color 200ms ease-in-out,
        background-color 200ms ease-in-out !important;
    font-weight: 700;
    font-size: 15px;
}

#main-header #top-menu li.current-menu-item > a {
    color: var(--fonce);
}

#main-header li a:hover {
    opacity: 1 !important;
}

#page-container :is(#main-header, #main-header.et-fixed-header) #top-menu-nav li:is(.bouton-menu, .lang-item) {
    display: none;
}

#page-container :is(#main-header, #main-header.et-fixed-header) .bouton-menu a,
a.bouton-menu,
.et_pb_menu .bouton-menu a {
    background-color: var(--fonce);
    color: var(--white) !important;
    line-height: 1 !important;
    padding: 14px 31px 16px !important;
    border-radius: 10px;
    text-wrap: balance;
    position: relative;
    z-index: 100000;
    display: flex;
    cursor: pointer;
    font-weight: 600 !important;
}

#page-container :is(#main-header, #main-header.et-fixed-header) .bouton-menu a:hover,
a.bouton-menu:hover,
.et_pb_menu .bouton-menu a:hover {
    background-color: var(--secondary) !important;
    color: var(--fonce) !important;
}

@media (min-width: 1081px) {
    #main-header:not(.et-fixed-header) .container {
        align-items: flex-start!important;
    }

    #main-header:not(.et-fixed-header) #et-top-navigation  {
        padding-top: 20px!important;
        height: 100%;
    }

    #et-top-navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        transition: all 400ms ease-in-out !important;
        padding-left: 0 !important;
        padding-bottom: 20px!important;
    }

    #top-menu .sub-menu :is(li, a) {
        width: 240px;
    }

    #top-menu .sub-menu > li {
        padding-left: 0;
        padding-right: 0;
    }

    #top-menu .sub-menu > li > a {
        font-size: clamp(18px, 16.714px + 0.119vw, 19px);
        line-height: 1.2;
        font-weight: 400;
    }
}

@media (max-width: 1080px) {
    #et-top-navigation {
        padding-left: 0 !important;
    }
}
*/







/*
.container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.container:after {
    display: none;
}

.logo_container .logo_helper {
    display: none;
}

#page-container .logo_container {
    position: relative;
    width: fit-content;
    width: -moz-fit-content;
    display: block;
    height: 100%;
}



.logo_container a #logo {
    transition: all 300ms ease-in-out;
    object-position: left;
    object-fit: contain;
}

@media (min-width: 1081px) {
    #main-header.et-fixed-header .logo_container a {
        top: 0!important;
    }

    #main-header:not(.et-fixed-header) .logo_container a {
        top: 30px;
    }

    .logo_container a {
        display: block;
        position: relative;
        height: 100%;
        transition: all 300ms ease-in-out!important;
        padding: 10px 0;

    }

    #main-header.et-fixed-header .logo_container a {
    }

    #main-header:not(.et-fixed-header) .logo_container a #logo {
        height: clamp(100px, 74.594px + 2.3503vw, 131px)!important;
    }

    .et-fixed-header .logo_container a #logo {
        height: 70px !important;
    }
}

@media (max-width: 1080px) {
    .et_header_style_left #logo {
        max-width: 100%;
        height: 55px;
    }
}


.menu-item.lang-item.current-lang:not(:has(+ .menu-item.lang-item)):first-child {
    opacity: 0;
    pointer-events: none;
}

#et-top-navigation {
    float: none !important;
    width: fit-content;
    width: -moz-fit-content;
}

@media (min-width: 1081px) {

    #main-header .et_menu_container {
        transition: padding-right 300ms ease-in-out;
    }


    #main-header.et-fixed-header {
        background-color: rgba(255, 240, 230, 0.9);
    }

    #main-header.et-fixed-header #logo {
        object-position: left;
        object-fit: contain;
    }

   

    #top-menu > li {
        padding-right: var(--menu-h-spacing)!important;
    }

    #top-menu > li:not(:last-child) {
        padding-right: var(--menu-h-spacing);
        margin-right: var(--menu-h-spacing);
        
    }

    #top-menu > li:not(:last-child):after {
        content: "";
        width: 1px;
        height: 1em;
        background-color: var(--fonce);
        position: absolute;
        right: 0;
        top: 50%;
        translate: 0 -50%;
        font-size: var(--menu-fs);
    }

    #top-menu > li > a {
        font-size: var(--menu-fs);
        line-height: 1;
        padding-top: 10px!important;
        padding-bottom: 10px!important;
    }

    
    #top-menu {
        display: flex;
        align-items: center;
    }

    #top-menu .dropdown-icon {
        display: none !important;
    }

    #top-menu > li > .sub-menu {
        top: 100%;
    }

    #top-menu > li.menu-item-has-children > a {
        padding-right: 26px !important;
    }

    #top-menu > li.menu-item-has-children > a:after {
        top: 50% !important;
        translate: 0 -50% !important;
        font-size: 22px !important;
    }

    #top-menu > li:not(.bouton-menu) {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
}
*/

/* Responsive */

/* Mobile */
@media (max-width:980px) {
    #main-header {
        position: fixed!important;
        top: 0!important;
    }

    #main-header.et-fixed-header #mobile_menu {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
}


@media (min-width:783px) and (max-width:980px) {
    body.admin-bar #main-header {
        top: 32px!important;
    }
}
@media (max-width:782px) {
    body.admin-bar #main-header {
        top: 46px!important;
    }
   
}
@media (max-width:600px) {
    body.admin-bar #main-header.et-fixed-header {
        top: 0px!important;
    }
}

#mobile_menu {
    /* margin-left: auto; */
    /* width: 200px; */
    /* min-width: fit-content; */
    /* max-width: 100%; */
    /* left: auto; */
    /* right: 0; */
    background-color: var(--fonce)!important;
    border-radius: var(--radius);
    padding-left: 0!important;
    padding-right: 0!important;
    border-top: none!important;
    transition: border-radius 0.3s ease;
    
}

.et_mobile_menu li a {
    border-bottom: none;
    color: var(--white)!important;
    background: transparent!important;
    opacity: 1!important;
}

/*
#mobile_menu a:not(.bouton-menu-a) {
    color: var(--white);
}

:is(#mobile_menu, .utilitary-menu) a {
    text-decoration: none;
    text-align: center;
}

@media (max-width: 1080px) {
    #main-header.et-fixed-header {
        background-color: rgba(255, 240, 230, 0.9);
    }

    #main-header #logo {
        object-position: left;
        object-fit: contain;
    }
}

@media (min-width: 981px) and (max-width: 1080px) {
   

    #et_mobile_nav_menu {
        display: block !important;
    }

    #top-menu-nav {
        display: none !important;
    }

    #main-header #logo {
		height: 70px;
    }
}

@media (max-width:980px) {
    #main-header, #main-header.et-fixed-header {
        position: fixed!important;
        background-color: rgba(255, 240, 230, 0.9)!important;
    }
}


.mobile_menu_bar_toggle {
    padding-bottom: 0 !important;
    padding-top: 0;
    height: 50px;
    width: 50px;
    background-color: var(--fonce);
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    margin-top: 24px;
    
}

@media (max-width:980px) {
    .mobile_menu_bar_toggle {
        margin-bottom: 16px;
        margin-top: 16px;
    }
}

.mobile_nav .mobile_menu_bar_toggle:before {
    color: var(--white) !important;
}

.mobile_nav.opened .mobile_menu_bar_toggle:before {
    content: 'M';
}

@media (max-width:1080px) {
    #mobile_menu {
        padding: min(5%, 30px) 0;
    }
}

@media (min-width: 981px) and (max-width: 1080px) {
    #mobile_menu {
        right: 32px;
    }
}

#mobile_menu {
    background-color: var(--fonce) !important;
    padding-left: 0;
    padding-right: 0;
    max-height: calc((100vh - 80px) - var(--admin-offset));
    overflow: scroll;
    border-radius: 15px;
}


#mobile_menu li:not(.bouton-menu) a:hover {
    background: none!important;
}

#mobile_menu > li > a {
    font-size: 20px;
    line-height: 1.2;
    padding-left: 25px;
    padding-right: 25px;
    text-wrap: balance;
}

#mobile_menu .sub-menu li {
    padding-left: 0;
}

#page-container #mobile_menu .menu-item-has-children:not(.opened) > .sub-menu {
    display: none !important;
}

#page-container #mobile_menu .menu-item-has-children {
    position: relative;
}


#mobile_menu .sub-menu li a {
    font-weight: 400;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 16px;
    line-height: 1.2;
}

#mobile_menu .sub-menu li a:before {
    content: '- ';
}

@media (max-width: 1080px) {
    #et-top-navigation {
        padding-top: 0px !important;
    }

    
}
*/


/* #end Menu */




/* #region Sections */
/*
.et_pb_section:not([data-radius^="bottom"]) + .et_pb_section:not([data-radius="bottom"]):not(.no-radius):not(:first-child), .footer-section {
	border-top-left-radius: var(--radius);
	border-top-right-radius: var(--radius);
}

.et_pb_section[data-radius*="bottom"]:not(.no-radius):not(:last-child) {
	border-bottom-left-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
} 

.et_pb_section:not(.no-outline):not(.no-outline-top):not(.no-outline-bottom) {
	outline: solid 3px var(--accent-color, var(--fonce));
}

.et_pb_section[data-radius^="bottom"] + .et_pb_section {
	outline: none;
}

.et_pb_section.no-outline, .et_pb_section[data-radius="top bottom"] {
    z-index: 10;
}

.et_pb_section[data-radius="top bottom"].no-outline-bottom:before {
    content: "";
    width: 100%;
    height: var(--radius);
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    background-color: var(--bg-modifier, var(--gris));
    border-top-left-radius: var(--radius);
    border-top-right-radius: var(--radius);
    border: solid 3px var(--accent-color, var(--fonce));
    border-bottom: 0;
}


.et_pb_section:last-child:after,
.et_pb_section:not([data-radius*="bottom"]):not(.no-radius):after,
.et_pb_section[data-radius*="bottom"]:not(.no-radius):not(:last-child) + .et_pb_section:before {
    content: "";
    width: 100%;
    height: var(--radius);
    position: absolute;
    left: 0;
	background-color: var(--bg-modifier, var(--gris));
}

.et_pb_section:not([data-radius^="bottom"]):not(.no-radius):after, .et_pb_section:last-child:after {
	bottom: calc(-1 * var(--radius));
}

.et_pb_section[data-radius*="bottom"]:not(.no-radius):not(:last-child) + .et_pb_section:before {
	top: calc(-1 * var(--radius));
	z-index: -1;
}
*/
/* #end Sections */





/* #region Buttons */

/*
.cd-upload-btn {
    display: block;
    width: fit-content;
    width: -moz-fit-content;
    margin-left: auto;
    margin-right: auto;
    background-color: var(--fonce)!important;
    color: var(--white)!important;
    font-size: 16px;
    font-weight: 600;
    border: none;
    line-height: 1 !important;
    border-radius: 10px;

    text-align: center;
    padding: 0.6364em 1.6em 0.7273em !important;

    
}


#page-container .cd-upload-btn:hover {
    background-color: var(--white);
    color: var(--fonce);
}


*/
#page-container .et_pb_button {
    /* padding: 14px 32px 16px !important; */
    /* padding: 0.7em 1.6em 0.8em !important; */
    padding: 0.6364em 1.6em 0.7273em !important;
    background-color: var(--orange)!important;
    color: var(--white)!important;
    border: none;
    border-radius: 5px;

    font-size: var(--btn-fs);
    line-height: 1.2 !important;
    font-weight: 500;
    text-align: center;
}

#page-container .et_pb_button {
    transition: all 150ms ease-in-out;
}



#page-container .et_pb_button:hover {
    background-color: var(--fonce)!important;
    color: var(--white)!important;
}

/* Dark button */
#page-container .et_pb_button.light-button {
    background-color: var(--white)!important;
    color: var(--fonce)!important;
}

#page-container .et_pb_button.light-button:hover {
    background-color: var(--white)!important;
    color: var(--fonce)!important;
}


/*  */

#page-container .et_pb_button:after {
    display: none;
}

/* #end Buttons */







.bigger-text, .bigger-text .et_pb_module {
    /* font-size: 20px; */
    font-size: var(--big-text-fs);
    line-height: 1.3;
}



@media (max-width: 980px) {
    .et_pb_column:has(+ .et_pb_column.et_pb_column_empty) {
        margin-bottom: 0 !important;
    }
}

.twb {
    text-wrap: balance;
}

.twp {
    text-wrap: pretty;
}



.bg-blanc, [data-fond="blanc"] {
    --bg-modifier: var(--white);
    --color-modifier: var(--fonce);
    --title-modifier: var(--fonce);
}

.bg-gris, [data-fond="gris"] {
    --bg-modifier: var(--gris);
    --color-modifier: var(--fonce);
    --title-modifier: var(--fonce);
}

.bg-fonce, [data-fond="fonce"] {
    --bg-modifier: var(--fonce);
    --color-modifier: var(--white);
    --title-modifier: var(--white);
}

.bg-orange, [data-fond="orange"] {
    --bg-modifier: var(--orange);
    --color-modifier: var(--white);
    --title-modifier: var(--white);
}


.title-orange {
    --title-modifier: var(--orange);
}

.texte-orange {
    --color-modifier: var(--orange) !important;
}

.et_pb_bg_layout_dark {
    --color-modifier: var(--white);
    --title-modifier: var(--white);
}

/*
.accent-orange {
    --accent-color: var(--orange);
    --title-modifier: var(--orange);
}
*/



/* #page-container [class*="bg-"] { */
#page-container :is([data-fond], [class*="bg-"]) {
    background-color: var(--bg-modifier, var(--white))!important;
	color: var(--color-modifier, #00214F)!important;

    .et_pb_module:not(.et_pb_button) {
        color: var(--color-modifier, #00214F)!important;
    }
    
}


#page-container {

    :is(h1,h2,h3,h4,h5,h6) {
		color: var(--title-modifier, #00214F)!important;
	}
}


/* .bold-gris :is(b, strong) {
    color: var(--gris) !important;
} */

.section-bg-img-w-text:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.45);
    /* opacity: 0.5; */
    /* z-index: -1; */
    
}
.section-bg-img-w-text .et_pb_text {
    text-align: center;
    text-shadow: 0 0 15px rgba(0, 0, 0, 0.45);
    text-wrap: balance;
}

.biggest-text {
    font-size: var(--fs-biggest-text);
    line-height: 1.2;
    line-height: normal;
    letter-spacing: -0.45px;
    font-weight: 600;
}


.col-w-counter {
    counter-reset: module-counter;
}

.col-w-counter .w-counter {
    counter-increment: module-counter;
}

.col-w-counter .w-counter .et_pb_text_inner {
    display: grid;
    grid-template-columns: 36px 1fr;
}

.col-w-counter .w-counter .et_pb_text_inner > *:not(:is(h1,h2,h3,h4,h5,h6)) {
    grid-column: 2 / -1;
}


.col-w-counter .w-counter :is(h1,h2,h3,h4,h5,h6) {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: subgrid;
}

.col-w-counter .w-counter :is(h1,h2,h3,h4,h5,h6):before {
    content: counter(module-counter) ".";
    /* place-self: center; */
    justify-self: center;
}

/* #block Accordeon */

.et_pb_toggle {
    background-color: var(--white);
    /* padding: 20px 16px 18px!important; */
    padding: 0!important;
    border-radius: var(--small-radius);
    border: none;
    transition: padding 700ms ease-in-out;
}

#page-container .et_pb_toggle_title {
    padding: 20px 16px 18px!important;
    /* padding-right: calc((16px * 2) + 15px)!important; */
    /* padding-bottom: 0!important; */
    text-box: initial !important;
    transition: padding 400ms ease-in-out;
}

#page-container .et_pb_toggle_title .et_pb_toggle_title_inner {
    position: relative;
    display: block;
    width: 100%;
    padding-right: calc(16px + 15px);
}

#page-container .opened {
    /* padding-top: 20px!important; */
}

#page-container .opened .et_pb_toggle_title {
    /* padding-top: 0!important; */
    padding-bottom: 12px!important;
}

/*
.et_pb_toggle_title:before {
    content: '';
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M11 6L6 1L1 6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' stroke='%2300214F'/%3e%3c/svg%3e ");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 10px;
    translate: 0 -50%;
    margin-top: 0;
    right: 16px!important;
}

.et_pb_toggle.opened .et_pb_toggle_title:before{
    content: "";
    display: block!important;
    transform: rotate(180deg);
} */

.et_pb_toggle_title_inner:before {
    content: '';
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M11 6L6 1L1 6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' stroke='%2300214F'/%3e%3c/svg%3e ");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 10px;
    margin-top: 0;
    position: absolute;
    top: 50%;
    right: 0px!important;
    translate: 0 -50%;
    transition: transform 400ms ease-in-out;
    transform: rotate(180deg);

}



.et_pb_toggle.opened .et_pb_toggle_title_inner:before {
    transform: rotate(0deg);
}

.et_pb_toggle .et_pb_toggle_title:before {
    display: none!important;
}

.et_pb_toggle_content {
    padding-top: 12px;
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 18px;
    transition: padding-top 400ms ease-in-out;
}

.et_pb_toggle.opened .et_pb_toggle_content {
    padding-top: 0px;
}

p:last-of-type:has(+ .et_pb_module) {
    text-box: trim-end cap alphabetic;
}
.et_flex_module[style*="display: block"]>.et_pb_module:not(:last-child), p:last-of-type:has(+ .et_pb_module) {
    margin-bottom: var(--vertical-gap);
}

/* #end Accordeon */

/* #block Entete accueil */

.entete-accueil:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    z-index: -1;
    pointer-events: none;
    background-color: var(--gris);
    width: 100%;
    height: var(--header-height, 80px);
    pointer-events: none;
}
/*
@media (min-width:981px) {
    .entete-accueil {
        padding-top: 0!important;
        padding-bottom: 0!important;
    }

    .entete-accueil .et_pb_row {
        align-items: flex-end;
        max-width: 90%!important;
    }

    .entete-accueil .et_pb_column:has(.et_pb_text){
        padding-bottom: 3vw; 
    }

    .entete-accueil .et_pb_image {
        --img-height: 91vh;
        height: var(--img-height);
		min-height: clamp(400px, 137.294px + 26.7794vw, 780px);
        width: calc(100% + 5vw);
        border-bottom-left-radius: var(--radius);
        border-bottom-right-radius: var(--radius);
        overflow: hidden;
    }

    body.admin-bar .entete-accueil .et_pb_image {
        height: calc(var(--img-height) - var(--admin-offset))
    }
}

@media (max-width:980px) {
    .entete-accueil {
        padding-bottom: 0;
    }

    .entete-accueil .et_pb_image {
        margin-left: calc(var(--row-margin) * -1);
        margin-right: calc(var(--row-margin) * -1);
    }

    .entete-accueil .et_pb_image img {
        border-radius: var(--radius);
        overflow: hidden;
    }
    
}



.entete-accueil .et_pb_image :is(.et_pb_image_wrap, img) {
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: 50% min(20%, 20px);
        
    }

*/






/* #end Entete accueil */


.et_pb_image:is(.plus-margin-left, .plus-margin-right) {
    width: calc(100% + var(--row-margin));
}

.et_pb_image:is(.plus-margin-left, .plus-margin-right) :is(.et_pb_image_wrap, img) {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.plus-margin-left {
    margin-left: calc(var(--row-margin) * -1)!important;
}


.w-fit {
    width: fit-content !important;
    width: -moz-fit-content !important;
}
.acf-map {
    height: 320px;
}

@media (min-width:981px) {
    .carte-google .et_pb_map, .acf-map {
        height: 530px;
    }
}
@media (max-width:500px) {
    .acf-map {
        height: 320px;
    }
}


/* Fonctionnalités */

#fonctionnalites .et_pb_svg .et_pb_svg_inner svg {
    width: unset;
    max-width: unset;
}

@media (min-width:981px) and (max-width:1100px) {
    .fonctionnalites-row {
        --column-count: 2!important;
    }
}

.fonctionnalites-row .et_pb_column {
    container: fonctionnalites / inline-size;
}

.fonctionnalites-row .et_pb_column .et_pb_group {
    display: grid;
    grid-template-columns: 41px 1fr;
    --horizontal-gap: clamp(14px, 10.667px + 0.8333vw, 24px);
    --vertical-gap: 18px;
}



@container fonctionnalites (width < 350px) {
    .fonctionnalites-row .et_pb_column .et_pb_group {
        /* flex-direction: column!important; */
        grid-template-columns: 1fr;
    }
}



/* END Fonctionnalités */


/* Formulaires */

.code-w-form {
    padding: clamp(20px, 18.667px + 0.3333vw, 24px);
    background-color: var(--white);
    border-radius: var(--small-radius);
    --color-modifier: var(--fonce)!important;
}

.wpcf7-form-control-wrap {
    margin-bottom: clamp(20px, 13px + 1.75vw, 41px);
    display: block;
}

:is(.wpcf7-text, .wpcf7-textarea, .wpcf7-email) {
    display: block;
    width: 100%;
    padding: 12px 16px!important;
    border-radius: var(--small-radius);
    border: 1px solid #D9D9D9!important;
    color: var(--fonce);
    font-size: 16px;
    line-height: 1;
}

.wpcf7-textarea {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    height: 80px;
    min-height: 80px;
    max-height: 160px;
}

:is(.wpcf7-text, .wpcf7-textarea, .wpcf7-email)::placeholder {
    color: var(--fonce);
}

.wpcf7-submit {
    width: 100%;
    text-align: center;
    background-color: var(--orange);
    color: var(--white);
    border-radius: var(--small-radius);
    padding: 12px;
    border: none!important;
    display: block;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 500;
    cursor: pointer;
    transition: all 200ms ease-in-out;
}

.wpcf7-submit:hover {
    background-color: var(--fonce); 
}

.wpcf7-form:not(.submitting) .wpcf7-spinner {
   display: none;
}

.wpcf7 form .wpcf7-response-output {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0;
    color: var(--fonce);
}

/* END Formulaires */


/* #block Footer */

.footer-section {
    padding-bottom: 40px!important;
}

.footer-section a {
    color: var(--white);
}

/*
.coordonnees-row .reseaux-sociaux {
	gap: 32px;
}

.coordonnees-row .reseaux-sociaux .et_pb_module.et_pb_icon .et-pb-icon {
	font-size: 27px;
	line-height: 1em;
}

.credits-row {
	border-top: solid 3px var(--gris);
	padding-top: 24px;
}
*/
.logo-footer {
	width: 80%!important;
	max-width: 373px;
}
/*
@media (max-width:980px), (min-width:981px) and (max-width:1250px) {
    .credits-row .manage-cookies {
        display: block;
    }

    .credits-row .separator {
        display: none;
    }
}

*/


.footer-section .credits-row a {
    text-decoration: underline;
    text-decoration-thickness: from-font;
    color: var(--blanc);
}

.footer-section .credits-row span.manage-cookies {
    text-decoration: underline;
    text-decoration-thickness: from-font;
    cursor: pointer;
}

.footer-section .credit {
    flex-shrink: 0;
}

/* #end Footer */



/* #block 404 */


.error404, .error404 .text-404 {
    color: var(--fonce);
}

/*
.error404 #main-header {
    background-color: #221f1f !important;
}
*/

@media (min-width:981px) {
    body.error404 {
        font-size: 20px;
    }
}

.error404 .text-404 h1 {
    font-size: max(var(--fs-h1), 50px) !important;
}

.error404 .text-404 strong {
    font-size: 30px;
}

.error404 .et_builder_inner_content .et_pb_code .et_pb_module:not(:last-child) {
    margin-bottom: 50px;
}

.error404 .et_builder_inner_content .et_pb_code .et_pb_button_alignment_center {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.error404 .et_builder_inner_content .et_pb_code .et_pb_button {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
}

/* #end 404 */

