/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */

/* Savoir faire gallery */
.home_gallery .et_pb_image {
    position: relative;
    overflow: hidden;
}

.home_gallery .et_pb_image img {
    width: 100%;
    height: auto;
    transition: transform 0.5s ease;
}

.home_gallery .et_pb_image:hover img {
    transform: scale(1.1);
}

.home_gallery .et_pb_column {
    position: relative;
}

/* to access et_pb_text on home gallery, temporarly comment next lines*/
.home_gallery .et_pb_column .et_pb_text {
    position: absolute;
    bottom: 20px;
    left: 20px;
    /* transform: translate(-50%, -50%); */
    z-index: 2;
    text-align: center;
    width: 90%;
    color: white;
    pointer-events: none;
}

body.et-fb .et_pb_text {
    pointer-events: inherit !important;
}


.home_gallery .et_pb_column .et_pb_text_inner {
    font-size: 48px;
    color: white;
    word-wrap: break-word;
    line-height: 1.2;
}


/* Filtre bleu */
.home_gallery .et_pb_module {
    position: relative;
}

.home_gallery .et_pb_module img {
    display: block;
    filter: grayscale(100%);
}

.home_gallery .et_pb_module::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #002856;
    mix-blend-mode: screen;
    pointer-events: none;
}

.home_gallery .et_pb_module.et_pb_text::after {
    background-color: unset;
}

/* 1. Transition fluide sur le pseudo-élément et le filtre */
.home_gallery .et_pb_module::after {
    transition: opacity 0.3s ease;
}

.home_gallery .et_pb_module img {
    transition: transform 0.5s ease, filter 0.3s ease;
}

/* 2. Au hover : enlever le bleu et rétablir les couleurs */
.home_gallery .et_pb_module:hover::after {
    opacity: 0;
}

.home_gallery .et_pb_module:hover img {
    filter: grayscale(0%);
    transform: scale(1.1);
}

.flex_container {
    display: flex;
    align-items: center;
}

/* Chiffres clés */
.et_pb_number_counter {
    font-weight: 700;
}

/* Video banner */
/* Section contenant la vidéo */
.video-banner-full.et_pb_section {
    width: 100%;
    height: auto !important;
    overflow: visible;
    position: relative;
}

/* Conteneur Divi vidéo */
.video-banner-full .et_pb_section_video_bg {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    /* supprime le ratio CSS */
}

/* Conteneur MediaElement.js */
.video-banner-full .et_pb_section_video_bg .mejs-container {
    width: 100% !important;
    height: auto !important;
}

/* La vidéo elle-même */
.video-banner-full .et_pb_section_video_bg video {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    max-height: none !important;
}

/* Mobile menu */
.et_mobile_menu {
    border-color: #002856;
    border-top: 3px solid #002856;
}

.mobile_menu_bar:before {
    color: #002856;
}

/* Team section */

#team_line_2 {
    display: flex;
    justify-content: center;
}

#team_line_2>div:nth-of-type(3) {
    margin-right: 0;
}

#team_line_2>div:last-of-type {
    width: 0;
}

/* Moins de 500px */
@media (max-width: 499px) {

    .team_section {
        font-size: 28px !important;
    }

    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 28px !important;
    }
}

@media (min-width: 500px) and (max-width: 599px) {
    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 32px !important;
    }
}

/* De 500px à 799px */
@media (min-width: 500px) and (max-width: 799px) {

    .team_section {
        font-size: 40px !important;
    }
}

@media (min-width: 600px) and (max-width: 799px) {

    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 58px !important;
    }
}

/* De 800px à 1299px */
@media (min-width: 800px) and (max-width: 1299px) {
    .team_section {
        font-size: 55px !important;
    }
}

@media (min-width: 800px) and (max-width: 980px) {
    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 70px !important;
    }
}

@media (min-width: 981px) and (max-width: 1299px) {
    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 30px !important;
    }
}

@media (min-width: 1300px) and (max-width: 1499px) {
    .home_gallery .et_pb_column .et_pb_text_inner {
        font-size: 42px !important;
    }
}



/* Top navigation responsive */
@media (min-width: 981px) and (max-width: 1040px) {
    #top-menu li, #top-menu li a {
        font-size: 16px !important;
    }
}
@media (min-width: 1041px) and (max-width: 1100px) {
    #top-menu li, #top-menu li a {
        font-size: 18px !important;
    }
}

@media (min-width: 981px) and (max-width: 1199px) {
    #logo {
        max-height: 50% !important;
    }

    #top-menu li {
        padding-right: 8px;
    }

    #et-top-navigation {
        padding-left: 0;
    }
}

#top-menu li li a {
    width: fit-content;
    white-space: nowrap;
}

.nav li ul.sub-menu {
    width: fit-content;
}

@media (max-width: 980px) {
    #logo {
        max-height: 80% !important;
    }
}

/* Footer */
#footer_credit {
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
}

/* @media (max-width: 980px) {
    #footer_credit {
        padding-left: 3rem;
    }
} */

#footer_credit::after {
    content: "";
    display: inline-block;
    height: 2em;
    width: 8em;
    aspect-ratio: 1 / 1;
    background-image: url('/wp-content/uploads/2025/11/easycorp_full_black-scaled.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#footer_article #footer-bottom>.container {
    width: 100%;
}

/* Style LinkedIn comme les autres icônes sociales Divi */
@media (max-width: 980px) {
    #footer_article #footer-bottom #footer-info {
        text-align: center;
    }

    #footer_article .et-social-icons {
        padding-bottom: 0;
    }

    .et-social-icons {
        display: flex;
        width: 100%;
        justify-content: center;
        gap: 1rem;
        margin: 0 0 1rem;
    }

    .et-social-icons li {
        margin-left: 0;
    }
}

.et-social-icons,
.et-social-icons li {
    display: flex;
}

.et-social-icon.et-social-linkedin a:before {
    content: "\f0e1";
    /* Unicode Font Awesome LinkedIn */
    font-family: "Font Awesome 5 Brands" !important;
    font-size: 28px;
    color: #002856;
    vertical-align: middle;
    display: inline-block;
}

/*Slider */
.custom_slider .et-pb-arrow-next,
.custom_slider .et-pb-arrow-prev {
    color: white !important;
}

.custom_slider.et_pb_bg_layout_light .et-pb-controllers a {
    background-color: white;
}

@media (max-width: 980px) {
    #top_footer .et_pb_column {
        width: 100%;
        margin-bottom: 30px;
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

@media (min-width: 981px) {

    #footer_section h3,
    #footer_section p {
        text-align: left !important;
    }

    #footer_section>.et_pb_row {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center;
    }

    #footer_section .et_pb_column {
        padding: 0 !important;
        /* margin: 0 !important; */
        width: fit-content;
    }

    /* Supprime les marges/paddings Divi */
    #footer_section .et_pb_column.et-last-child {
        margin-left: auto !important;
    }

    /* Supprime l'espacement imposé par Divi sur les modules */
    #footer_section .et_pb_module {
        margin-bottom: 0 !important;
        width: fit-content;
    }

    #footer_section .et_pb_text_inner {
        width: fit-content;
    }

}

#top_footer a {
    color: white !important;
}

@media (min-width: 981px) {
    #top_footer>div {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #top_footer .et_pb_column:nth-of-type(2) {
        padding: 0 !important;
        /* margin: 0 !important; */
        width: fit-content;
    }

    /* Supprime les marges/paddings Divi */
    #top_footer .et_pb_column.et-last-child {
        margin-left: auto !important;
    }

    /* Supprime l'espacement imposé par Divi sur les modules */
    #top_footer .et_pb_module {
        margin-bottom: 0 !important;
        width: fit-content;
    }

    #top_footer .footer_cities {
        width: 100%;
    }

    #top_footer .et_pb_text_inner {
        width: fit-content;
    }

    #top_footer .footer_cities .et_pb_text_inner {
        width: 100%;
    }

}

/* Search page  */

.et_pb_ajax_pagination_container h2,
.et_pb_ajax_pagination_container .post-content-inner p {
    font-family: 'Lato', sans-serif;
    color: #002856;
}

.is-search-form {
    font-family: 'Lato', sans-serif;
}

.is-search-submit {
    cursor: pointer;
}

@media (max-width: 440px) {
    .et_header_style_left .et-search-form {
        width: 100% !important;
        max-width: 100% !important;
    }
}

.et_header_style_left .et-search-form {
    background-color: white !important;
}

.search_results_header {
    line-height: 1;
}

.cmplz-cookiebanner {
    z-index: 9999;
}

/* articles */
article.post {
    font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif;
    color: #002856 !important;
}

article.post p {
    font-size: 16px;
}

article.post p a {
    color: #002856;
    text-decoration: underline;
}

article.post .entry-title,
.et_pb_blog_grid .entry-title {
    font-weight: 900;
    text-transform: uppercase;
    font-size: 40px;
    color: #002856 !important;
}

.et_pb_blog_grid article.post .entry-title,
.et_pb_blog_grid .entry-title {
    font-size: 18px;
    line-height: 1.4;
}

article.post .et_pb_text_inner h1 {
    font-size: 30px;
    font-weight: 700;
    text-transform: uppercase;
    color: #002856 !important;
}


article.post .post-meta {
    display: none;
}

@media (min-width: 981px) {
    article.post .et_pb_gutters2 {
        display: flex;
        align-items: center;
    }

    article.post .et_pb_gutters2>div:first-of-type {
        width: 74.25%;
        border-right: solid 2px #002856;
        padding-right: 55px;
    }
}

@media (max-width: 980px) {
    article.post .et_pb_gutters2>div:nth-of-type(2) .et_pb_module {
        margin-bottom: 0;
        border: 1px solid #002856;
        padding-top: 1em;
        border-radius: 30px;
    }

}

article.post .et_pb_gutters2>div:nth-of-type(2) span {
    font-size: 22px;
    font-weight: 700;
}

/* HERO SLIDER SUR PAGES SAVOIR-FAIRE */
.slider_hero {
    position: relative;
}

.slider_hero .et_pb_slider::after {
    content: '';
    position: absolute;
    inset: 0;
    background: #002856;
    opacity: 0.2;
    z-index: 5;
    pointer-events: none;
}

.slider_hero .et_pb_slider {
    position: relative;
}

.slider_hero_title {
    position: absolute;
    top: 20%;
    left: 0;
    right: 0;
    z-index: 10;
}

@media (max-width: 980px) {
    .slider_hero_title {
        top: 30%;
    }
}


/* HOME KEY FIGURES SECTION */

@media (max-width: 1450px) {
    .grid_mobile_container .et_pb_row_4.et_pb_row {
        flex-wrap: wrap !important;
        row-gap: 3rem !important;
    }

    .grid_mobile_container .et_pb_row_4 .et_pb_column_1_4 {
        width: 50% !important;
        display: flex;
        align-items: center;
    }

}

@media (max-width: 770px) {
    .grid_mobile_container .et_pb_row_4 .et_pb_column_1_4 {
        width: 100% !important;
    }
}


.single-post .et_post_meta_wrapper > img {
    display: none;
}

.single-post #left-area {
    float: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    width: 100% !important;
}