/*variable*/
:root {
    --padding-conteneur: 96px;
    --padding-conteneur-gutter: 56px;
    --image-height: 699px;
    --width-block: 1600px;
    
    --padding-top: 50px;
    --padding-bottom: 50px;
    --margin-top: 0;
    --margin-bottom: 0;

    --bg-color: transparent;
    --scrollbar-width: 15px;
    --outer-width: calc(100vw - var(--scrollbar-width));
    --outside-width-one-side: calc((var(--outer-width) - var(--width-block)) / 2);
}

:root body :where(.is-layout-flow) > *{
    margin-block-start: 0;
    margin-block-end: 0;
}

/*general*/
.hide_this_now{
    display: none !important;
}

html, body{
    height: 100%;
}

body{
    font-size: 16px;
    line-height: 1.5em;
    font-family: "Work Sans", sans-serif;
    color: #000;
    overflow-x: hidden;
}

a{
    text-decoration:none;
    color:#013B81;
}

a:hover{
    text-decoration:underline;
}

h1, h2, h3, h4, h5, h6{
    clear:none;
    line-height:1em;
    font-family: "Poppins", sans-serif;
}

.has-white-color h1,
.has-white-color h2,
.has-white-color h3,
.has-white-color h4,
.has-white-color h5,
.has-white-color h6{
    color: #fff;
}

h2{
    padding-bottom: 10px;
    padding-top: 20px;
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: 40px; /* 125% */
    letter-spacing: 0.64px;
    color: #013B81;
}

h3{
    padding-bottom: 10px;
    padding-top: 20px;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; /* 125% */
    letter-spacing: 0.48px;
    color: #013B81;
}

h4{
    padding-bottom:10px;
    padding-top:20px;
    font-size:21px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; /* 125% */
    letter-spacing: 0.48px;
    color: #013B81;
}

h1,
.home h2{
    font-size: 44px;
    font-style: normal;
    font-weight: 600;
    line-height: 55px; /* 125% */
    letter-spacing: 1.32px;
    text-transform: uppercase;
    padding-bottom: 17px;
}

h1:after,
.home h2:after,
.title_yellow_line:after{
    content: "";
    display: block;
    height: 9px;
    width: 100px;
    margin-top: 10px;
    background: #FFE60D;
}

.cky-btn-revisit-wrapper{
    display: none !important; 
}

.overflow-hidden{
    overflow: hidden;
}

.entry > *:last-child:not(h1):not(h2):not(h3):not(h4):not(h5){
    padding-bottom: 0;
}

ul.wp-block-list,
.entry ul{
    list-style: disc outside;
    margin-left: 20px;
}

ul.wp-block-list,
.entry > ul {
    padding-top: 0;
    padding-bottom: 20px;
    padding-left: 13px;
}

ul.wp-block-list ul.wp-block-list{
    padding-bottom: 0;
}

.wp-block-list ul,
.entry li > ul,
.wp-block-list ol,
.entry li > ol{
    padding-top: 8px;
}

ol.wp-block-list,
.entry ol{
    list-style: decimal outside;
    margin-left: 20px;
}

ol.wp-block-list,
.entry > ol{
    padding-top: 0;
    padding-bottom: 20px;
    padding-left: 13px;
}

.wp-block-list li,
.entry li{
    padding-bottom: 8px;
}

.wp-block-list li:last-child,
.entry li:last-child{
    padding-bottom: 0;  
}

.entry p, .entry div{
    padding-bottom:20px;
}

.entry table{
    margin-top:0;
    margin-bottom:20px;
}

.entry table thead{
    text-transform:uppercase;
    font-size:16px;
    font-weight:bold;
}

.entry table thead td{
    padding:4px 5px;
}

.entry table tbody{
    
}

.entry table tbody td{
    padding:4px 5px;
    vertical-align: top;
}

.entry table tbody td:first-child{
    border-left: none;
}

.entry iframe{
    width: 100%;
    aspect-ratio: 16/9;
    height: auto;
}

address{
    font-style:normal;
    padding-bottom:5px;
}

sup {
    vertical-align: super !important;
    font-size: smaller !important;
    line-height: 0;
    text-transform: lowercase;
}

sub {
    vertical-align: sub !important;
    font-size: smaller !important;
    line-height: 0;
}

.alignleft{
    float:left;
    padding-top:5px;
    padding-right:10px;
}

.alignright{
    float:right;
    padding-top:5px;
    padding-left:10px;
}

.aligncenter{
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.alignleft{
    padding-right:10px;
}

img.alignright{
    padding-left:10px;
}

.wp-block-idea-arianne #fil_arianne ul{
    flex-wrap: wrap;
}

.article_grid{
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(3, 1fr);
}

.article_grid img{
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1;
}

.article_grid .date{
    padding-bottom: 5px;
}

.article_grid h3{
    margin-top: 0;
    padding-top: 0;
}

.article_item{
    background: #f3f3f3;
    position: relative;
}

.article_item a{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.article_item .ico_plus{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 38px;
    height: 38px;
    background: #004293;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    margin-left: auto;
    font-size: 24px;
    font-style: normal;
    font-weight: bold;
    z-index: 2;
}

.article_item .ico_plus:after{
    content: "+";
}

.article_item_content{
    padding: 20px 20px 50px;
}

.wp-block-image,
.wp-block-idea-gallery-slideshow,
.wp-block-gallery{
    margin-bottom: 20px !important;
    margin-top: 10px !important;
    padding-left: 0 !Important;
    padding-right: 0 !Important;
}

.full_screen:not(.with_sidebar) .wp-block-image,
.full_screen:not(.with_sidebar) .wp-block-idea-gallery-slideshow,
.full_screen:not(.with_sidebar) .wp-block-gallery{
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

.wp-block-gallery .wp-block-image{
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

.wp-block-image img{
    width: 100%;
    height: auto;
}

.wp-block-gallery.has-nested-images figure.wp-block-image{
    flex-grow: initial !important;
}

.wp-block-gallery.has-nested-images a{
    overflow: hidden;
}

.wp-block-gallery.has-nested-images img{
    transition: all ease 0.2s;
}

.wp-block-gallery.has-nested-images a:hover img{
    transform: scale(1.1);
}

.wp-block-idea-gallery-slideshow .swiper-slide img{
    object-fit: contain !important;
}

.wp-block-buttons{
    gap: 20px !important;
    padding-top: 20px;
}

.wp-block-details{
    padding-bottom: 30px;
}

.wp-block-details summary{
     padding: 25px 30px;
    background: #013B81;
    color: #fff;
}

.wp-block-details > *:not(summary){
    background: #4599D2;
    color: #fff;
    padding: 30px 30px 36px;
    overflow: hidden;
    margin-left: 0 !important;
}

.wp-block-details > ul{
    padding-left: 50px !important;
}

.wp-block-details *{
    color: #fff;
}

.wp-block-details a{
    color: #fff;
    text-decoration: underline;
}

.center{
    margin:0 auto;
    position:relative;
}

.wp-block-embed.is-type-video,
.wp-block-embed.is-type-video iframe{
    width: 100%;
    height: auto;
}

.wp-embed-aspect-4-3 iframe{
    aspect-ratio: 4/3;
}

.wp-block-columns.dons-type-paiement{
    max-width: 700px !important;
    margin: 0 !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
}

.dons-type-paiement.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{
    width: 300px !important;
    flex-basis: fit-content !important;
}

.wp-embed-aspect-16-9 iframe{
    aspect-ratio: 16/9;
}

blockquote{
    background: #ccc;
    padding: 40px;
    font-style: italic;
    margin-bottom: 20px;
}

blockquote > *:last-child{
    padding-bottom: 0;
}

.wp-block-p{
    padding-bottom: 20px;
}

.wp-element-button,
.btn,
.gform_button{
    background: #013B81;
    border: 1px solid #013B81;
    padding: 18px 28px !important;
    color: #fff;
    font-family: "Poppins", sans-serif !important;
    font-size: 18px !important;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.36px;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-block;
    border-radius: 0 !important;
    transition: all ease 0.2s;
}

.wp-element-button:hover,
.btn:hover,
.gform_button:hover{
    background: transparent !important;
    color: #013B81;
    text-decoration: none;
}
/*
.wp-element-button.has-white-color:hover{
    color: #013B81 !important;
}
*/
/*
.fond_blanc .wp-element-button:hover,
.fond_blanc .btn:hover{
    color: #013b81 !important;
}
*/
.wp-block-p{
    margin-top: 0 !important;
}

.wp-block-gallery.has-nested-images figure.wp-block-image img{
    aspect-ratio: 1;
}

/*wordpress grid*/
.wp-block-columns{
	width: 100%;
    max-width: var(--width-block);
	margin: 0 auto;
}

.wp-block-column > *:first-child{
    padding-top: 0;
}

#col_principal > .wp-block-columns{

}

.wp-block-columns.full_screen{
    max-width: 2500px;
}

/*grid*/
#col_principal > *{
    max-width: var(--width-block);
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: content-box;
}

#col_principal > *.full_screen{
    max-width: 2500px;
    margin: 0 auto;
    box-sizing: border-box;
}

#col_principal > .with_sidebar{
    padding-right: 0;
}

#col_principal > *.wp-core{
    
}

.row{
    margin: 0 auto;
    max-width: var(--width-block);
    display: grid;
    column-gap: 80px;
    row-gap: 20px;
    grid-template-columns: 100%;
    width: 100%;
}

.acf-block{
    position: relative;
    margin-top: var(--margin-top);
    margin-bottom: var(--margin-bottom);
    background-color: var(--bg-color);
}
    
.acf-block-inner{
    margin: 0 auto;
    max-width: var(--width-block);
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}

.row.full_screen,
.acf-block.full_screen .acf-block-inner{
    max-width: 2500px;
}

.anchor{
    position: absolute;
    top:0;
    left: 0;
}

/*header*/
#header{
    padding: 23px 20px 0; 
    font-family: "Poppins", sans-serif;
}

#section_menu_header{
    row-gap: 7px;
}

#header a{
    text-decoration: none;
}

#simple-menu{
    display: none;
    background: url(../images/menu.svg) no-repeat;
    width: 40px;
    height: 40px;
}

#simple-menu-close{
    background: url(../images/close.svg) no-repeat;
    width: 40px;
    height: 40px;
}

#menu_mobile{
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffffb3;
    background: #B7D378;
    z-index: 9999;
    font-family: "Poppins", sans-serif;
    box-sizing: border-box;
    overflow: auto;
}

#menu_mobile.open{
    display: block;
}

#menu_mobile a{
    color:#fff;
    text-decoration: none;
}

#menu_mobile_a > .menu-item > a,
#menu_mobile_b > .menu-item > a{
    display: flex;
    gap: 0;
    align-items: center;
    justify-content: space-between;
}

#menu_mobile a span{
    padding: 10px 0;
}

#menu_mobile .menu-item-has-children > a i{
    content: "";
    background: url(../images/submenu_arrow.svg) no-repeat;
    width: 10px;
    height: 9px;
    display: block;
    padding: 10px 20px;
    background-position: center;
    background-size: 10px;
}

#menu_mobile .menu-item-has-children.open > a i{
    transform: rotate(90deg);
}

#menu_mobile > .row > .colonne{
    padding: 20px;
}

#menu_mobile .mobile_head > .colonne{
    padding: 23px 20px 34px;
    background: #fff;
}

#menu_mobile .mobile_content_primary{
    background: #013B81;
    color: #fff;
}

#menu_mobile .mobile_content_secondary{
    background: #4599D2;
}

#menu_mobile .mobile_content_primary,
#menu_mobile .mobile_content_secondary{
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 90%;
    text-transform: uppercase;
}

#menu_mobile .mobile_content_primary .sub-menu,
#menu_mobile .mobile_content_secondary .sub-menu{
    font-size: 14px;
    font-style: normal;
    text-transform: none;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding-top: 15px;
    padding-left: 15px;
}


#menu_mobile .mobile_content_primary .menu-item-has-children .sub-menu{
    display: none;
}

#menu_mobile .mobile_content_primary .menu-item-has-children.open .sub-menu{
    display: flex;
}

#menu_mobile > .mobile_content_secondary > .colonne,
#menu_mobile > .mobile_content_secondary > .colonne{
    padding: 30px 20px;
}

#menu_mobile .mobile_footer{
    background: #B7D378;
    text-align: center;
    color: #013B81;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 90%; /* 14.4px */
    text-transform: uppercase;
}

#menu_mobile .mobile_footer > .colonne{
    padding: 0 20px 27px;
}

#menu_mobile .mobile_footer #media_sociaux{
    padding-bottom: 6px;
}

#menu_mobile .header_line_1{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}

#menu_mobile #media_sociaux{
    background: transparent;
    display: flex;
    justify-content: center;
}

#menu_mobile_a,
#menu_mobile_b{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#logo img{
    max-width: 212px;
    height: auto;
    display: block;
}

.menu sup{
    text-transform: lowercase !important;
}

#header .header_line_1{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;
}

#header .colonne .menu ul{
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

#header_menu_side{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    row-gap: 25px;
}

#menu-header_principal{
    display: flex;
    justify-content: flex-end;
    column-gap: 22px;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 90%; /* 14.4px */
    text-transform: uppercase;
}

#header .colonne #menu-header_principal .sub-menu{
    display: none;
}

#header #menu-header_principal > li > a{
    display: block;
    padding-bottom: 34px;
    padding-bottom: 22px;
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 10px;
    padding-top: 22px; 
}


#header #menu-header_principal > li.current_page_ancestor > a,
#header #menu-header_principal > li.current_page_parent > a,
#header #menu-header_principal > li.current_page_item > a,
#header #menu-header_principal > li > a:hover{
    background:#E9EFF5;
}

#header .menu-item-has-children{
    position: relative;
}

#header .menu-item-has-children > .sub-menu{
    position: absolute;
    top: 58px;
    left: 0;
    background: #013B81;
    width: 300px;
    z-index: 9999;
    padding: 0;
    flex-direction: column;
    gap: 0 !important;
}

#header .menu-item-has-children > .sub-menu a{
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.1em;
    padding: 14px;
    display: block;
}


#header .menu-item-has-children > .sub-menu .current_page_item a,
#header .menu-item-has-children > .sub-menu a:hover{
    background: #E06E58;
}

#header .menu-item:last-child > .sub-menu{
    left: auto;
    right: 0;
}

#header .colonne #menu-header_principal .menu-item-has-children:hover > .sub-menu{
    display: flex;
}

.menu-header_call_action-container .menu{
    display: flex;
    column-gap: 20px;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 90%; /* 14.4px */
    text-transform: uppercase;
}

.menu-header_call_action-container .menu a{
    background: #013B81;
    padding: 12px 21px;
    color: #fff;
    display: block;
    transition: all ease 0.2s;
}

.menu-header_call_action-container .menu a:hover{
    background: #4599D2;
}

.menu-header_call_action-container .menu .menu-item-108 a{
    background: #E06E58;
}

.menu-header_call_action-container .menu .menu-item-108 a:hover{
    background: #013B81;
}

#menu-header_secondaire{
    display: flex;
    column-gap: 20px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 90%;
}

#menu-header_secondaire a{
    border-bottom: 3px solid transparent;
    display: block;
    padding-bottom: 4px;
}

#menu-header_secondaire a:hover{
    border-bottom: 3px solid #FFE60D;
}

#page-wrap{
    position: relative;
}

/*sidebar*/
.wp-block-idea-menu > div a{
    display: inline-flex !important;
} 

.wp-block-idea-menu > div .menu-item-has-children a span{
    margin-right: 10px;
}

.wp-block-idea-menu > div .menu-item-has-children a i{
    height: 27px !important;
    width: 27px !important;
    padding: 0 !Important;
}

/*footer*/
#footer{
    background: #013B81;
    color: #fff;
    padding: 120px 20px 40px;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 27px;
}

#footer a{
    color: #fff;
    text-decoration: none;
}

#footer a:hover{
    text-decoration: underline;
}

#media_sociaux{
    display: flex;
    gap: 9px;
}

#media_sociaux .media_background{
    fill: transparent !important;
    transition: all ease 0.2s;
}

#media_sociaux .media_element_color_1{
    fill: #fff !important;
    transition: all ease 0.2s;
}

#media_sociaux a:hover .media_background{
    fill: #FFF !important;
}

#media_sociaux a:hover .media_element_color_1{
    fill: #013B81 !important;
}

#media_sociaux.share_this .media_background{
    fill: #013B81 !important;
}

#media_sociaux.share_this .media_element_color_1{
    fill: #ffffff !important;
}

#media_sociaux.share_this a:hover .media_background{
    fill: #fff !important;
}

#media_sociaux.share_this a:hover .media_element_color_1{
    fill: #013B81 !important;
}
/*
#media_sociaux.share-news .media_background{
    fill: #013B81 !important;
}

#media_sociaux.share-news .media_element_color_1{
    fill: #ffffff !important;
}
*/
.share-news{
    padding-top: 20px;
}

.share-news #media_sociaux.share_this a:hover .media_background{
    fill: #6CB5B1 !important;
}

.share-news #media_sociaux.share_this a:hover .media_element_color_1{
    fill: #fff !important;
}



#footer #media_sociaux a .media_background{
    fill: #6CB5B1 !important;
}

#footer #media_sociaux a .media_element_color_1{
    fill: #fff !important;
}

#footer #media_sociaux a:hover .media_background{
    fill: #fff !important;
}

#footer #media_sociaux a:hover .media_element_color_1{
    fill: #6CB5B1 !important;
}

.mobile_footer #media_sociaux a .media_element_color_1{
    fill: #013B81 !important;
}

#media_floating #media_sociaux{
    flex-direction: column;
    background: #6CB5B1;
}

#media_floating #media_sociaux a:hover .media_element_color_1{
    fill: #6CB5B1 !Important;
}

.floating_sidebar{
    position: absolute;
    top: 62px;
    left: 32px;
    z-index: 999;
    transition: all ease 0.2s;
}


#media_sociaux img,
#media_sociaux svg{
    display: block;
}

.media_sociaux_carriere{
    padding-left: 120px !important;
    padding-top: 80px !important;
}

#section_footer_1{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 145px;
}

#footer .title_section{
    font-weight: bold;
    padding-bottom: 11px;
}

#footer #section_footer_1 .menu li{
    padding-bottom: 11px;
}

#footer #section_footer_1 .menu li:last-child{
    padding-bottom: 0;
}

#footer #media_sociaux a:first-child{
    display: none;
}

#section_footer_2{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-direction: column;
    align-items: center;
}

#section_footer_2 .copyright{
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

#menu-footer_politique{
    display: flex;
    align-items: center;
    gap: 5px 38px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

#menu-footer_politique::after{
    display: none;
}

#footer #logo_col img{
    max-width: 213px;
    height: auto;
}

#footer #logo_col_2{
    padding-top: 40px;
}

#footer #logo_col_2 img,
.bloc_contact_img_osbl img{
    max-width: 130px;
    height: auto;
}

#call_action{
    background: #E06E58;
    padding: 82px 20px;
    color: #013B81;
}

#call_action_section{
    background: #fff;
    padding: 90px 70px;
    box-sizing: border-box;
    position: relative;
    min-height: 437px;
    display: flex;
    align-items: center;
}

#call_action_section:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: auto 100% !important;
    background-position: right center !important;
    z-index: 2;
}

#call_action_section:after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #E9EFF5 38.15%, rgba(233, 239, 245, 0.00) 58.8%);
    background: linear-gradient(90deg, #E9EFF5 42.92%, rgba(233, 239, 245, 0.00) 64.82%);
    z-index: 3;
}

#call_action_section .colonne{
    position: relative;
    max-width: 657px;
    z-index: 4;
}

#call_action_section h2{
    font-size: 44px;
    font-style: normal;
    font-weight: 600;
    line-height: 55px;
    letter-spacing: 1.32px;
    text-transform: uppercase;
    padding-bottom: 16px;
    padding-top: 0;
}

#call_action_section  .entry{
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; /* 125% */
    letter-spacing: 0.48px;
    padding-bottom: 42px;
}

#infolettre{
    background: #4599D2;
    padding: 72px 20px;
}

#infolettre .row{
    display: flex;
    justify-content: center;
    gap: 66px;
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; /* 125% */
    letter-spacing: 0.48px;
    color: #fff;
    align-items: center;
}

.nl-icone-gauche svg{
    width: 60px;
    height: auto;
    display: block;
}

#infolettre form{
    
}

#infolettre .content_center{
    text-align: center;
}

#infolettre input{
    border: 1px solid #fff;
    background: transparent;
    color: #fff;
    padding-left: 17px;
    padding-right: 30px;
    outline: #fff;
    font-family: "Work Sans", sans-serif;
    font-optical-sizing: auto;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px; /* 155.556% */
    width: 380px;
}

#infolettre input::placeholder {
    color: #fff;
}

#infolettre button{
    background: transparent;
    border: 1px solid #fff;
    width: 60px;
    height: 60px;
    cursor: pointer;
}

#infolettre .nl-champs{
    display: flex;
}

body .wp-block-cover,
body .wp-block-cover-image{
    padding: 0 20px;
}

.wp-block-cover.green_bg{
    min-height: 264px !important;
}

.wp-block-cover.green_bg .wp-block-cover__background{
    background: #6CB5B1 !important;
    opacity: 0.8 !important;
}

.wp-block-cover.green_bg .wp-block-cover__inner-container{
    font-family: "Poppins", sans-serif;
    font-size: 24px !important;
    font-style: normal;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: 0.48px;
}

.wp-block-cover.bloc_fondation h2,
.wp-block-cover.bloc_fondation h3{
    font-weight: bold !important;
}

.wp-block-cover.bloc_fondation h2{
    padding-top: 0 !important;
}

.wp-block-cover__inner-container .wp-block-column > *:first-child{
    padding-top: 0;
}

.wp-block-cover__inner-container > *:last-child{
    padding-bottom: 0;
}
/*
.center_this_half{
    width: calc((var(--width-block) / 2) - 12px + 10px) !important;
    height: 100%;
    margin-left: auto !important;
    margin-right: 0 !important;
    max-width: 100%;
    flex-basis: auto !important;
    flex-grow: 0 !important;
}

.image_is_left .center_this_half{
    width: calc((var(--width-block) / 2) - 12px + 10px) !important;
    height: 100%;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100%;
    flex-basis: auto !important;
    flex-grow: 0 !important;
    padding-left: 140px !important;
}
*/

.center_this_half > .wp-block-column{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.with_sidebar .center_this_half{
    /*width: calc(var(--outer-width) - var(--outside-width-one-side) - 430px) !important;*/
    /*max-width:  calc(var(--outer-width) - var(--outside-width-one-side) - 430px) !important;*/
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: calc(var(--outside-width-one-side) - 20px);
}

.center_this_half h2{
    /*padding-top: 0 !important;*/
}


.image_on_the_side img{
    max-width: 300px !Important;
}

/*
.wp-block-columns > .wp-block-column:first-child > .center_this_half > .wp-block-column{
    padding-right: 0 !important;
}

.wp-block-columns > .wp-block-column:last-child > .center_this_half .wp-block-column{
    padding-left: 0 !important;
}
*/

.fondation_gallerie_sp figcaption.wp-element-caption{
    position: relative !important;
    background: #fff !important;
    color: #000 !important;
    height: auto;
    display: block;
    overflow: visible;
    height: auto !important;
    max-height: min-content !important;
}

.fondation_gallerie_sp{
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px !important;
}

.fondation_gallerie_sp figure{
    width: auto !important;
    justify-content: flex-start !important;
    gap: 10px;
}

.fondation_gallerie_sp figure:before{
    display: none !Important;
}

.fondation_gallerie_sp figure img{
    height: auto !important;
    object-fit: contain !important;
    width: 100% !important;
    aspect-ratio: 1 !important;
    flex: none !important;
    width: 300px !important;
    margin: 0 auto;
}

.fondation_gallerie_sp figcaption h3{
    padding-top: 0 !important;
}

.logo_filligran{
    background-image: url(../images/logo_filigran.svg);
    background-position: left bottom;
    background-size: 348px;
    background-repeat: no-repeat;
}

.logo_filligran.logo_filigram_right{
    background-image: url(../images/logo_filigran_right.svg);
    background-position: right bottom;
}

.side_image_full_screen{
    padding-right: 0 !Important;
    padding-left: 0 !Important;
    gap: 0 !important;
}

.side_image_full_screen.image_is_left{
    padding-left: 0 !Important;
    padding-right: 0 !Important;
}

.side_image_full_screen figure{
    height: 100%;
}

.side_image_full_screen figure img{
    object-fit: cover;
    height: 100%;
    width: 100%;
    min-height: 400px;
}

/*new*/
.wp-block-columns.full_screen{
    gap: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !Important
}

.wp-block-columns.full_screen > .wp-block-column:nth-child(1) > .wp-block-columns.center_this_half{
    width: calc((var(--width-block) / 2) + 20px) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    box-sizing: border-box !important;
    padding-right: 20px !important;
    height: 100% !important;
}

.wp-block-columns.full_screen > .wp-block-column:nth-child(2) > .wp-block-columns.center_this_half{
    width: calc((var(--width-block) / 2) + 20px) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100% !important;
    padding-left: 100px !important;
    box-sizing: border-box !important;
    padding-right: 20px !important;
    height: 100% !important;
}

.white_gradient_from_right .wp-block-cover__background{
    background: linear-gradient(-90deg, #E9EFF5 40.96%, rgba(233, 239, 245, 0.00) 66.44%) !important;
    opacity: 1 !important;
}

.white_gradient_from_left .wp-block-cover__background{
    background: linear-gradient(90deg, #E9EFF5 40.96%, rgba(233, 239, 245, 0.00) 66.44%) !important;
    opacity: 1 !important;
}
.etoile_bleu,
.etoile_blanc{
    position: relative;
}

.etoile_blanc.opacity_30 span:after,
.etoile_bleu.opacity_30 span:after{
    opacity: 0.3;
}

h1.etoile_right_position:after,
.home h2.etoile_right_position:after,
.title_yellow_line.etoile_right_position:after{
    margin-top: -11px;
}

.etoile_blanc span,
.etoile_bleu span{
    display: inline-flex;
    align-items: center;
}

.etoile_bleu span:after,
.etoile_blanc span:after{
    position: absolute;
    content: "";
    background: url(../images/etoile_bleu.svg) no-repeat top left;
    background-size: contain;
    width: 89px;
    height: 88px;
    z-index: 0;
    top: -62px;
    left: -51px;
}

.etoile_blanc span:after{
    background: url(../images/etoile_blanc.svg) no-repeat top left;
    background-size: contain;
}

.etoile_blanc.etoile_right_position span:after,
.etoile_bleu.etoile_right_position span:after{
    position: relative;
    width: 74px;
    height: 73px;
    display: inline-block;
    margin-left: 10px;
    top: 0;
    left: 0;
}
/*
*.etoile_right_position{
    display: flex;
    align-items: center;
    display: inline-flex;
    flex-direction: row-reverse;
}
*/
.explore_padding_left{
    padding-left: 130px !important;
    box-sizing: border-box;
}

body .valign-center-content{
    align-items: center !important;
}

/*other*/
/*animation*/
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);   
    }
}

/*pour element display inline uniquement*/
@keyframes bounceIn {
    0% {
        transform: scale(0.3);
        opacity: 0;
    }
    20% {
        transform: scale(1.1);
    }
    40% {
        transform: scale(0.9);
    }
    60% {
        transform: scale(1.03);
    }
    80% {
        transform: scale(0.97);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes slideIn {
    from {
        transform: translateY(200px);
    }
    to {
        transform: translateY(0);   
    }
}

.header_img{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 400px;
}

.link_orange a{
    color: #E06E58;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.36px;
    text-transform: uppercase;
    text-decoration: none;
}

.link_orange a:hover{
    text-decoration: underline;
}

.liste_triangle_li ul{
    list-style: none;
    padding-left: 10px;
    margin-left: 10px;
}

.liste_triangle_li ul li::before { 
    content: "";
    border-color: transparent #6CB5B1;
    border-style: solid;
    border-width: 0.35em 0 0.35em 0.45em;
    display: block;
    height: 0;
    width: 0;
    left: -20px;
    top: 17px;
    position: relative;
}

.wp-block-columns.bloc_vert .wp-block-column{
    max-width: 378px;
    padding: 40px 20px;
}

.parcours_liste{
    display: grid;
    gap: 50px;
    grid-template-columns: repeat(2, 1fr);
}

.parcours_liste div{
    padding-bottom: 0 !important;
}

.parcours_liste .parcours_liste_element{
    display: flex;
    background: #E06E58;
    color: #fff;
    align-items: center;
    position: relative;
    transition: all ease 0.2s;
}

.parcours_liste .parcours_liste_element:hover .full_link{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.parcours_liste_element:hover{
    background:#013B81;
}

.parcours_liste .parcours_liste_element h3{
    padding-top: 0;
    padding-bottom: 10px;
}

.parcours_liste .parcours_liste_element a{
    color: #fff;
    text-decoration: none;
}

.parcours_liste .parcours_liste_element a svg{
    padding-left: 12px;
}

.parcours_liste .parcours_liste_element img{
    object-fit: cover;
    aspect-ratio: 1;
    max-width: 250px;
    height: 100%;
}

.parcours_liste .parcours_liste_element .parcours_liste_element_text{
    padding: 20px !important;
}

.parcours_liste .parcours_liste_element .parcours_liste_element_text > *:last-child{
    padding-bottom: 0 !important;
}

.is-last-word{
    white-space: nowrap;
}

.personnel_liste{
    display: grid;
    gap: 50px;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 40px;
    margin-top: 30px;
    padding-bottom: 0 !important;
}

.personnel_liste.personnel_liste_singular{
    display:block !important;
}

.personnel_liste img{
    aspect-ratio: 1;
    object-fit: cover;
    width: 100%;
    height: auto;
    display: block;
}

.personnel_liste.respect_img_size img{
    aspect-ratio: auto;
}

.personnel_liste.personnel_liste_singular img{
    max-width: 400px;
}

.personnel_liste_element{
    padding-bottom: 0 !important;
}

.personnel_liste_element_text{
    padding-top: 16px;
    padding-bottom: 0 !important;
}

.personnel_liste_element_text_titre,
.personnel_liste_element_text_texte,
.personnel_liste_element_text_email{
    padding-bottom: 0;
    color: #000;
    font-family: "Work Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 27px;
    padding-bottom: 0 !important;
}

.bloc_background_vert h3{
    color: #000;
}

.personnel_liste_element_text_texte a,
.personnel_liste_element_text_email{
    color: #000;
    text-decoration: underline;
}

.personnel_liste_element_text_texte > *:last-child{
    padding-bottom: 0 !important;
}

.personnel_liste_element_is_ancien{
    padding-top: 15px;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
    color: #013B81;
    font-family: "Poppins", sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.personnel_liste_element_is_ancien:after{
    content: "";
    background: url(../images/etoile_bleu.svg);
    background-repeat: no-repeat;
    background-size: cover;
    width: 37px;
    height: 37px;
    margin-left: 15px;
}

button, input[type="button"], input[type="submit"] {
    -webkit-appearance: none;
    appearance: none; /* Include the standard property for broader compatibility */
}
    
.gform_wrapper{
    background: #E9EFF5;
    padding: 31px 25px 41px;
}

.gform_fields{
    column-gap: 20px !important;
    row-gap: 20px !important;
}

.gform_wrapper label{
    color: #013B81 !important;
    font-family: "Work Sans" !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 27px !important;
}

.gform_wrapper *{
    box-shadow: none !important;
}

.gform_wrapper input:not(.gform_button):not(.gfield-choice-input):not([type=checkbox]),
.gform_wrapper select{
    height: 50px !important;
    line-height: 50px !important;
}


.gform_wrapper input.gfield-choice-input,
.gform_wrapper input[type=checkbox]{
    margin-top: 5px !Important;
}

.gform_wrapper input,
.gform_wrapper textarea,
.gform_wrapper select{
    border: 1px solid #fff !important;
    border-radius: 0 !important;
}

.gform-theme--foundation legend{
    font-size:18px !important;
    color: rgb(1, 59, 129) !important;
}


.gform_footer{
    justify-content: center !important;
}

.gform_wrapper input.gform_button{
    border: 1px solid #E06E58 !Important;
}

.gform_wrapper input.gform_button:hover{
    background: #fff !important;
    color: #E06E58 !important;
    border: 1px solid #E06E58 !important;
}

.percentage-widget,
.percentage-widget div{
    padding-bottom: 0 !important;
}

.percentage-widget_cont{
    padding-bottom: 0 !important;
    text-align: center;
    width: 400px;
    max-width: 100%;
    margin: 0 auto;
    margin: 71px auto 40px;
}

.percentage-widget_cont h3{
    padding: 0;
    margin: 40px 0 0;
    color: #fff;
}

.percentage-widget {
    width: 200px;
    height: 200px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.percentage-value {
    position: absolute;
    z-index: 2;
    text-align: center;
    font-family: "Poppins", sans-serif;
    font-size: 60px;
    font-style: normal;
    font-weight: 600;
    line-height: 55px; /* 91.667% */
    letter-spacing: 1.8px;
    text-transform: uppercase;
    color: #4599D2;
}

.percentage-circle-svg {
    position: absolute;
    width: 100%;
    height: 100%;
    transform: rotate(-90deg); /* Start the circle at the top */
}

.circle-bg {
    fill: #fff;
    stroke: #fff; /* Light gray background for the circle */
    stroke-width: 10;
    r: 80;
}

.circle-progress {
    fill: none;
    stroke: #A2C752; /* Green color for the progress */
    stroke-width: 10;
    /*    stroke-linecap: round; /* Creates the rounded end */
    /*transition: stroke-dashoffset 1s ease-in-out;*/
    stroke-dasharray: 565.48; /* This value is the circumference of the circle (pi * diameter). For 196px diameter, it's ~615px. Use a slightly smaller value to leave space for the arrow. */
    stroke-dashoffset: 565.48; /* Starts with the circle invisible */
}

.arrow {
    /*
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid #4CAF50;
    transform-origin: 0 115px;
    transform: translateY(-115px) rotate(0deg);
    transition: transform 1s ease-in-out;
    */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: rotate(0);
    /*transition: transform 1s ease-in-out;*/
}

.arrow:after{
    content: "";
    border-width: 16px;
    border-style: solid;
    border-color: transparent transparent transparent #A2C752;
    position: absolute;
    left: 90px;
    top: -8px;
}

.bloc_statistique{
    column-gap: 50px !important;
    row-gap: 20px !important;
}

.call_action_carriere h2{
    padding-bottom: 0;
}

.call_action_carriere .wp-block-acf-editor{
    margin-top: 0;
}

.carriere_poste_detail {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.carriere_poste_detail .wp-block-idea-arianne h1{
    color: #fff;
}

.carriere_poste_detail .wp-block-idea-arianne #fil_arianne,
.carriere_poste_detail .wp-block-idea-arianne #fil_arianne a,
.carriere_poste_detail .wp-block-idea-arianne #fil_arianne span{
    color: #fff;
}

.carriere_media_sociaux .wp-block-acf-editor{
    padding: 107px 145px;
}

.poste_liste{
    display: grid;
    gap: 50px;
    grid-template-columns: repeat(2, 1fr);
}

.poste_liste_element{
    background: #fff;
    color: #013B81;
    padding: 25px;
}

.poste_liste_element h3{
    padding-top: 0;
}

.poste_liste_element a{
    text-decoration: none;
    font-family: "Poppins", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; /* 125% */
    letter-spacing: 0.48px;
}

.poste_liste_element a:after{
    padding-top: 0;
}

.poste_liste_element a svg{
    padding-left: 10px;
}


.poste_liste_element_text_texte{
    padding-bottom: 0 !important;
}

.grille_sport .wp-block-cover{
    aspect-ratio: 731/1024;
    align-items: flex-end !important;
    padding: 0 !important;
}

.grille_sport .wp-block-cover__background{
    display: none !important;
}

.grille_sport .wp-block-cover__inner-container {
    background: #0000006b !important;
    padding: 20px !Important;
}

.grille_sport h2{
    text-align: center !important;
    font-size: 30px !important;
    padding-top: 0 !important;
}

.grille_sport p{
    font-size: 20px !Important;;
}

.wp-block-idea-video.with-play-button .row{
    width: 100% !important;
    left: 0 !important;
}

.wp-block-idea-video.with-play-button svg{
    cursor: pointer;
}

.wp-block-idea-video.with-play-button svg:hover .svg_btn_play_bg{
    transition: all ease 0.2s;
}


#cont_alertes{
    background: #FFE60D;
    padding: 0 30px;
    position: relative;
    transition: all ease 0.2s;
    color: #013B81;
}

#cont_alertes.close_alerte{
    display: none;
}

#alertes{
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    text-align:center;
    position: relative;
}

#alertes a{
    color: #013B81;
    text-decoration: underline;
}

#alertes .swiper-wrapper{
    align-items: center;
}

#cont_alertes .swiper-button-next-close{
    background: url(../images/close_alerte.png) no-repeat center center;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 20px;
    right: 25px;
    z-index: 99;
    cursor: pointer;
}

#alertes .alerte{
    padding: 15px 40px;
    box-sizing: border-box;
    background: #FFE60D;
    font-weight: bold;
}

#alertes .swiper-button-prev-idea-alerte,
#alertes .swiper-button-next-idea-alerte{
    width:12px;
    height: 21px;
    display: block;
    position: absolute;
    top:50%;
    left:0;
    transform: translateY(-50%);
    z-index:999;
}

#alertes .swiper-button-prev-idea-alerte{
    background: url(../images/arrow_back_gris.png) no-repeat top left;
    cursor: pointer;
    background-size: contain !Important;
}

#alertes .swiper-button-prev-idea-alerte:hover{
    background: url(../images/arrow_back_bleu.png) no-repeat top left;
}

#alertes .swiper-button-next-idea-alerte{
    background: url(../images/arrow_next_gris.png) no-repeat top left;
    left:auto;
    right:0;
    cursor: pointer;
    background-size: contain !Important;
}

#alertes .swiper-button-next-idea-alerte:hover{
    background: url(../images/arrow_next_bleu.png) no-repeat top left;
}

/*popup*/

/*popup*/
body.open_popup{
    overflow: hidden;
}

#inner_overlay{
    position: fixed;
    z-index: 12000;
    overflow:auto;
    height:100%;
    width:100%;
    top: 0;
    left: -100%;
    opacity: 1;
    transition: opacity ease 0.5s 0.5s;
    padding: 31px 50px;
    box-sizing: border-box;
    z-index: 9999999;
    background: #fff;
}

#inner_overlay.inner_overlay_popup #login {
    max-width: none;
    height: 100%;
}

#login {
    margin: 0 auto;
    max-width: 900px;
    z-index: 1000;
}

#login .two_col{
    display: flex;
}

#login .two_col > div{
    width:50%;
}

.open_popup #inner_overlay{
    left: 0;
    opacity: 1;
}

#login #popup_content.two_col{
    height: 100%;
    position: relative;
}

#popup_left{
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

#popup_right{
    position: relative;
    padding-left: 20px;
    display: flex;
    align-items: flex-start;
    margin: auto;
    justify-content: center;
    box-sizing: border-box;
    overflow-y: auto;
}

#popup_right_inner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 620px;
    text-align: center;
}

#popup_content #close_popup{
    position: absolute;
    top: 0;
    right: 0;
    width: 42px;
    height: 42px;
    background: #013B81;
    text-align: center;
    cursor: pointer;
}

#popup_content #close_popup:hover{
    background: #000;
}

#inner_overlay #popup_content #close_popup img{
    margin-top: 12px;
    vertical-align: inherit;
    margin-left:0;
}

#popup_content #close_popup:hover svg path{
    fill: #000;
}

#popup_right #popup_titre{
    padding-top: 30px;
    padding-bottom: 30px;
    font-size: 34px;
    line-height: 39px;
    margin-bottom: 0;
}

#popup_right #popup_sous_titre{
    padding-bottom: 40px;
}

#popup_right #popup_sous_titre,
#popup_right #popup_sous_titre *{
    font-size: 24px;
    line-height: 32px;
}

#popup_right #popup_texte{
    padding-bottom: 30px;
}

#popup_right #popup_texte,
#popup_right #popup_texte *{
    font-size: 16px;
    line-height: 28px;
}

#popup_right #popup_texte h2{
    padding-top: 30px;
    padding-bottom: 30px;
    font-size: 34px;
    line-height: 39px;
    margin-bottom: 0;
    border-bottom: none !important;
}

#popup_right #popup_texte h2:after{
    display: none !important;
}
/*endpopup*/

.call_action_bleu{

}

.call_action_bleu .wp-block-cover__background {
    background-image: url(../images/logo_filigran_right.svg);
    background-position: right bottom;
    background-size: 348px;
    background-repeat: no-repeat;
}

.call_action_bleu .wp-block-buttons{
    padding -top: 0 !important;
}