/*
Theme Name: Hestia Child
Theme URI: https://www.themeisle.com/
Description: This is a custom child theme I have created.
Author: ThemeIsle
URI: https://www.themeisle.com/
Template: hestia    
Version: 0.1
*/

@import url('https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100..900;1,100..900&family=Saira+Condensed:wght@100;200;300;400;500;600;700;800;900&family=Saira:ital,wght@0,100..900;1,100..900&display=swap');

/*
font-family: "Saira", sans-serif;
font-family: "Saira Condensed", sans-serif;
font-family: "Overpass", sans-serif;
*/

:root {
  --couleur-1: #005c9f; /* Bleu foncé */
  --couleur-2: #fcc977; /* Orange */
  --couleur-3: #a9d19a; /* Vert */
  --couleur-4: #072e55; /* Bleu nuit */
  --couleur-5: #b3c9de; /* Bleu clair */
  --couleur-6: #d9e1d6; /* vert clair */
  --couleur-7: #004c8f; /* vert clair */
}

.sr-only{
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (min-width: 992px) {
	.responsive_992 {
		display: none !important;
	}
}
@media (max-width: 991px) {
	.desktop_992,
    .page-template-page-classique .responsive_actus_992 {
		display: none !important;
	}
}
@media (min-width: 769px) {
	.responsive_769 {
		display: none !important;
	}
}
@media (max-width: 768px) {
	.desktop_769 {
		display: none !important;
	}
}
@media (min-width: 1200px) {
	.responsive_1200 {
		display: none !important;
	}
}
@media (max-width: 1199px) {
	.desktop_1199,
	.menu_recherche_destop.desktop_1199 {
		display: none !important;
	}
}

@media (min-width: 1260px) {
    .container {
        width: 1240px;
    }
}
.hestia-scroll-to-top {
    border-radius: 50%;
    background-color: var(--couleur-2) !important;
}
.hestia-scroll-to-top svg, .hestia-scroll-to-top p {
    color: var(--couleur-1) !important;
}


/* ==========================================================================
Style général
========================================================================== */

body, ul, p {
    font-family: "Overpass", sans-serif;
}
body {
    background-color: #fff;
}
a:not(.btn):not(.button):not(.added_to_cart):hover {
    opacity: 1;
}
.h2_picto,
.main article h2.h2_picto {
    display: flex;
    font-family: "Saira Condensed", sans-serif;
    font-size: 45px;
    font-weight: 700;
    line-height: 51px;
    letter-spacing: 1px;
    color: var(--couleur-1);
    text-align: center;
    text-transform: uppercase;
    align-items: center;   /* alignement vertical texte / image */
    gap: 10px;
    justify-content: center;
    margin-bottom: 60px;
}
.h2_picto span {
    color: var(--couleur-2);
}
h2.h2_picto::before {
    content: "";
    display: inline-block;
    width: 92px;
    height: 53px;
    background-image: url("imgs/ico_titre.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    flex-shrink: 0;
    margin-right: 15px;
}
.bloc_bleu .h2_picto {
    color: #fff;
}
.bloc_bleu h2.h2_picto::before {
    background-image: url("imgs/ico_titre_bleu.svg");
}

h3.titre_souligne {
    position: relative;
    display: inline-block;
    margin-bottom: 60px;
    line-height: 1.2;
}

h3.titre_souligne::after {
    content: "";
    position: absolute;
    left: 0;
    top: calc(100% + 20px);
    width: 100%;
    height: 19px; /* hauteur de l’image */
    background: url("imgs/tirets_titre.svg") no-repeat left center;
}
.frise {
    height: 24px;
    margin: 20px 0;
    background: url("imgs/frise_2.svg") repeat-x left center;
    background-size: auto 24px;
}
.section_marge {
    margin-top: 100px;
}
.pad_t {
    padding-top: 50px
}
@media (max-width: 768px) {
    .pad_t {
        padding-top: 20px
    }
}

.bloc_boutons,
.wpsisac-readmore {
    display: inline-grid;
}
.lien_bouton,
.contenu_slider .wpsisac-readmore a.wpsisac-slider-readmore {
    display: block;
    padding: 20px 25px;
    font-size: 16px;
    line-height: 22px;
    text-transform: uppercase;
    position: relative;
    padding-right: 70px;
    font-weight: bold;
}
.lien_bouton.bouton_blanc {
    background: #fff;
    color: var(--couleur-1);
}
.lien_bouton.bouton_bleu {
    background: var(--couleur-1);
    color: #fff;
}
.lien_bouton::after,
.wpsisac-slider-readmore::after {
    content: "";
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background-image: url("imgs/Icon ionic-ios-arrow-dropright-circle.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    pointer-events: none;
}

.wpsisac-readmore a.wpsisac-slider-readmore, 
.wpsisac-readmore a.wpsisac-slider-readmore:visited {
    padding: 4px 10px;
    margin: 5px 0;
    font-size: 13px;
    color: #fff;
    border: 1px solid #fff;
    text-align: center;
    -webkit-transition: .3s ease-in;
    transition: .3s ease-in;
}

@media (max-width: 992px) {
    .h2_picto,
    .main article h2.h2_picto {
        font-size: 30px;
        line-height: 40px;
        letter-spacing: 0px;
        gap: 10px;
        margin-bottom: 40px;
    }
    h2.h2_picto::before {
        width: 60px;
        height: 38px;
        background-image: url("imgs/ico_titre.png");
        margin-right: 10px;
    }
    .section_marge {
        margin-top: 50px;
    }
}

.main .blog-post article ul li::marker {
    color: #f6ad82;
}
.main .blog-post article ul.ul_col3 {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
}
.main .blog-post article ul.ul_col3 li {
    display: inline-block;
    width: 30%;
    margin-right: 3%;
    margin-top: 20px;
    margin-bottom: 20px;
}
.main .blog-post article ul.ul_col3 li img {
    display: inline-block;
    padding-top: 20px;
    padding-bottom: 20px;
}
@media screen and (max-width: 780px) {
    .main .blog-post article ul.ul_col3 li {
        display: inline-block;
        width: 100%;
        margin-right: 0%;
        margin-top: 20px;
        margin-bottom: 20px;
    } 
}


/* ==========================================================================
Header
========================================================================== */

body.admin-bar .navbar {
    margin-top: 12px;
}
.navbar.navbar-transparent > .container {
    padding-top: 5px;
}
.navbar .navbar-header .navbar-brand img {
    width: auto;
    max-height: 95px;
    transition: max-height 0.5s ease;
}
.navbar.navbar-transparent .navbar-header .navbar-brand img {
    width: auto;
    max-height: 95px;
}

/* ==========      Menu principal      ============= */

#main-navigation ul.nav > li {
    padding: 0 6px;
}
.navbar {
    transition: background 0.3s ease;
}

.navbar-default {
    background-color: transparent;
    border-color: transparent !important;
    transition: all .5s !important;
}

.navbar.navbar-not-transparent.fixed-top {
    background-color: transparent;
}
.navbar.navbar-not-transparent.navbar-scroll-point {
    background-color: #fff;
    border-color: transparent !important;
    transition: all .5s !important;
}
.navbar .navbar-nav > li a {
    padding-top: 12px;
    padding-bottom: 12px;
    border-radius: 0px;
    color: inherit;
    font-family: "Saira Condensed", sans-serif;
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 1;
    font-weight: 600;
}
.navbar.navbar-not-transparent.navbar-scroll-point .navbar-nav > li a {
    color: var(--couleur-1);
}
.navbar .navbar-nav > li.menu_port > a,
.navbar .navbar-nav > li.menu_port.active > a,
.navbar .navbar-nav > li.menu_port > a:hover,
.navbar .navbar-nav > li.menu_port.active > a:hover {
    background: var(--couleur-7);
    color: #fff !important;
    margin-right: 5px;
}
.navbar .navbar-nav > li.menu_regie a,
.navbar .navbar-nav > li.menu_regie.active a,
.navbar .navbar-nav > li.menu_regie a:hover,
.navbar .navbar-nav > li.menu_regie.active a:hover {
    background: var(--couleur-3);
    color: var(--couleur-1);
}


/* Trait caché par défaut */
.navbar .navbar-nav > li > a::after {
    content: "";
    position: absolute;
    width: 85px;
    height: 10px;
    background-color: var(--couleur-2);
    left: 50%;
    transform: translateX(-50%);
    bottom: -13px;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.navbar .navbar-nav > li.menu_port > a::after,
.navbar .navbar-nav > li.menu_port.current-menu-item > a::after,
.navbar .navbar-nav > li.menu_port > a:hover::after,
.navbar .navbar-nav > li.menu_regie > a::after,
.navbar .navbar-nav > li.menu_regie.current-menu-item > a::after,
.navbar .navbar-nav > li.menu_regie > a:hover::after {
    height: 8px;
    top: 0px;
    bottom: auto;
}

/* Apparition au survol */
/* .navbar .navbar-nav > li > a:hover::after, */
.navbar .navbar-nav > li.current-menu-item > a::after,
.navbar .navbar-nav > li.current-menu-parent > a::after {
    opacity: 1;
}
/*
.current-menu-parent > a {
    border-bottom: solid 6px var(--couleur-2);
}
.navbar .navbar-nav > li.current-menu-item a {
	border-bottom: solid 6px var(--couleur-2);
}
*/
/*
.navbar .navbar-nav > li:hover a {
	border-bottom: solid 6px var(--couleur-2);
}
.navbar .navbar-nav > li:has(ul.dropdown-menu):hover a {
	border-bottom: solid 0px var(--couleur-2);
}
*/

/*
.navbar .navbar-nav > li:hover ul li a {
	border-bottom: solid 0px var(--couleur-2);
}
*/
.navbar .navbar-nav > li:hover .dropdown-menu {
    margin-top: -6px;
    z-index: 10;
    margin-left: 0;
    background:  #fff;
    padding: 0 !important;
    left: 50%;
    transform: translateX(-50%);
}
.navbar .navbar-nav > li .dropdown-menu li {
    border: solid 0px #fff;
    border-top: solid 0 #fff;
}
.navbar .navbar-nav > li .dropdown-menu li:first-child {
    border-top: solid 0px #fff;
}

.navbar .navbar-nav > li .dropdown-menu li > a,
.navbar .navbar-nav > li.menu_port .dropdown-menu li > a {
    background-color: #fff;
    margin: 0;
    padding: 10px 15px;
    border-radius: 0px;
    border-bottom: solid 0px var(--couleur-2);
    color: var(--couleur-1);
    text-transform: uppercase;
}
.navbar .dropdown-menu li > a {
    font-size: 15px;
}
.navbar .navbar-nav > li .dropdown-menu li:hover,
.navbar .navbar-nav > li .dropdown-menu li:hover a {
    background: var(--couleur-2);
}
.navbar .navbar-nav > li .dropdown-menu li.current-menu-item > a,
.navbar .navbar-nav > li .dropdown-menu li.current-menu-item:hover > a {
    color: var(--couleur-1);
}

.navbar .navbar-nav > li.menu_recherche_destop a {
    display: inline-block;
    width: 27px;
    height: 27px;
    background-image: url('imgs/ico_search.svg');
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -9999px;
    overflow: hidden;
    vertical-align: middle;
    padding: 0 4px;
    margin: 7px 0 0 7px;
}
.navbar .navbar-nav > li.menu_recherche_destop a:hover {
    border-bottom: 0px solid #fff;
}
.menu_recherche_mobile.responsive_769 {
    display: none;
}

@media screen and (max-width: 1200px) {
    .hestia-top-bar,
    .navbar-toggle-wrapper button {
        display: none !important;
    }
    #rmp-container-1259 {
        position: fixed;
        top: 110px;
        margin: 0;
        transition: transform 0.5s;
        overflow: auto;
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 320px;
        background-color: var(--couleur-1);
        background-image: url(rmp-menu.css);
        height: calc(100% - 120px);
        right: 0;
        padding-top: 0px;
        padding-left: 0px;
        padding-bottom: 0px;
        padding-right: 0px;
    }
    #rmp-menu-wrap-1259 ul.rmp-menu {
        border-top: solid 1px var(--couleur-1);
        border-left: solid 8px var(--couleur-2);
    }
    #rmp-menu-wrap-1259 .rmp-menu-item-link {
        height: 50px;
        line-height: 50px;
        font-size: 16px;
        border: solid 1px var(--couleur-1);
        border-top: 0px solid #fff;
        font-family: inherit;
        color: #fff;
        text-align: left;
        text-transform: uppercase;
        background-color: inherit;
        font-weight: bold;
        letter-spacing: 0px;
        display: block;
        box-sizing: border-box;
        width: 100%;
        text-decoration: none;
        position: relative;
        overflow: hidden;
        transition: background-color 0.5s, border-color 0.5s, 0.5s;
        padding: 0 5%;
        padding-right: 50px;
        background: var(--couleur-1);
    }
    #rmp-menu-wrap-1259 .rmp-menu-item-link:hover, 
    #rmp-menu-wrap-1259 .rmp-menu-item-link:focus {
        color: #fff;
        border-color: #1d4354;
        background-color: var(--couleur-1);
    }
    #rmp-menu-wrap-1259 .menu_port .rmp-menu-item-link,
    #rmp-menu-wrap-1259 .menu_port .rmp-menu-item-link:focus {
        border: solid 1px var(--couleur-7);
        color: #fff;
        background: var(--couleur-7);
    }
    #rmp-menu-wrap-1259 .menu_regie .rmp-menu-item-link,
    #rmp-menu-wrap-1259 .menu_regie .rmp-menu-item-link:focus {
        border: solid 1px var(--couleur-3);
        color: var(--couleur-1);
        background: var(--couleur-3);
    }
    #rmp-menu-wrap-1259 .rmp-menu-current-item .rmp-menu-item-link {
        color: #fff;
        border-color: var(--couleur-1);
        background-color: var(--couleur-1);
    }
    #rmp-menu-wrap-1259 .rmp-menu-subarrow {
        position: absolute;
        top: 0;
        bottom: 0;
        text-align: center;
        overflow: hidden;
        background-size: cover;
        right: 0;
        border-left-style: solid;
        border-left-color: #1d4354;
        border-left-width: 0px;
        height: 39px;
        width: 40px;
        color: #fff;

        background-color: inherit;
    }
    #rmp-menu-wrap-1259 .rmp-menu-subarrow:hover {
        color: var(--couleur-1);
        border-color: #3f3f3f;
        background-color: inherit;
    }
    #rmp-menu-wrap-1259 .rmp-submenu {
        background: var(--couleur-2); 
    }
    #rmp-menu-wrap-1259 .rmp-submenu .rmp-menu-item-link {
        height: 40px;
        line-height: 40px;
        letter-spacing: 0px;
        font-size: 16px;
        border: 0px solid #1d4354;
        font-family: inherit;
        font-weight: normal;
        color: var(--couleur-1);
        text-align: left;
        text-transform: none;
        background-color: inherit;
    }
    #rmp-menu-wrap-1259 .rmp-submenu .rmp-menu-item-link:hover, 
    #rmp-menu-wrap-1259 .rmp-submenu .rmp-menu-item-link:focus {
        color: var(--couleur-1);
        border-color: inherit;
        background-color: inherit;
    }
    #rmp-menu-wrap-1259 .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link {
        color: var(--couleur-1);
        border-color: #fff;
        background-color: #fff;
    }
    #rmp-menu-wrap-1259 .rmp-menu-item-link .rmp-font-icon {
        line-height: 40px;
        font-size: 25px;
    }
    #rmp_menu_trigger-1259,
    #rmp_menu_trigger-1259:hover, 
    #rmp_menu_trigger-1259:focus,
    #rmp_menu_trigger-1259.is-active {
        background: var(--couleur-2);
        border-radius: 50%;
    }
    #rmp_menu_trigger-1259 .rmp-trigger-box {
        width: 20px;
        color: var(--couleur-1);
    }
    #rmp_menu_trigger-1259 .responsive-menu-pro-inner, 
    #rmp_menu_trigger-1259 .responsive-menu-pro-inner::before, 
    #rmp_menu_trigger-1259 .responsive-menu-pro-inner::after {
        width: 20px;
        height: 5px;
        background-color: var(--couleur-1);
        border-radius: 4px;
        position: absolute;
    }
    #rmp_menu_trigger-1259:hover .responsive-menu-pro-inner, 
    #rmp_menu_trigger-1259:hover .responsive-menu-pro-inner::before, 
    #rmp_menu_trigger-1259:hover .responsive-menu-pro-inner::after,
    #rmp_menu_trigger-1259.is-active .responsive-menu-pro-inner, 
    #rmp_menu_trigger-1259.is-active .responsive-menu-pro-inner::before, 
    #rmp_menu_trigger-1259.is-active .responsive-menu-pro-inner::after {
        background-color: var(--couleur-1);
    }
    .dashicons-arrow-up:before {
        content: "\f142";
        color: var(--couleur-2);
    }
    #rmp-menu-additional-content-1259 {
        padding: 15px 8px;
        color: #fff;
        text-align: center;
        font-size: 14px;
    }
    .bloc_menu_compte a.lien_compte {
        color: #fff !important;
    }
    .rmp-search-box {
        background: #fff;
    }
    #rmp-search-box-1259 .rmp-search-box {
        background: #fff;
        border: 1px solid var(--couleur-1);
        color: #1d4354;
        width: 100%;
        padding: 0 5%;
        border-radius: 30px;
        height: 45px;
        -webkit-appearance: none;
    }
}

@media (min-width: 1200px) {
    .caret-wrap,
    .hestia-search-in-menu {
        display: none !important;
    }
    /*
    .navbar-toggle {
        display: none;
    }
    */
}
/*
.collapse {
    display: none !important;
}
@media (min-width: 1200px) {
    .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important;
    }
}
*/

/* menu principal */
.collapse {
    display: none;
}


@media (max-width: 1199px) {
    .container .navbar-header {
        width: 100%;
        display: flex !important;
        margin: 0 auto;
    }
    .navbar .nav.navbar-nav {
        display: block;
    }
    .navbar.navbar-fixed-top .navbar-collapse {
        max-height: calc(100% - 70px);
        margin-top: 70px;
        overflow-y: auto;
        position: fixed;
        z-index: 9999;
        background: #fff;
        width: 100%;
        left: 0;
        top: 0;
        margin-left: 0;
        margin-right: 0;
        -webkit-overflow-scrolling: auto;
    }
    .navbar .navbar-nav li {
        box-sizing: border-box;
        float: left;
        margin: 0;
        padding: 0;
        width: 100%;
        text-align: left;
    }
    .navbar.navbar-fixed-top.header-with-topbar:not(.navbar-scroll-point) .navbar-collapse {
        margin-top: 110px;
    }
    .navbar .navbar-nav .dropdown a .caret {
        border: 1px solid #555;
        border-radius: 2px;
        box-sizing: content-box;
        color: #555;
        cursor: pointer;
        display: inline-block;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        height: 30px;
        margin-left: 0;
        position: absolute;
        right: 15px;
        text-align: center;
        top: 10px;
        width: 30px;
        z-index: 100;
    }
    .navbar .navbar-nav .dropdown a .caret-open .caret svg {
        transform: rotate(-180deg);
    }
    .navbar .navbar-nav .dropdown a .caret svg {
        width: 12.5px;
        margin: 9px;
        transition: all 0.3s ease;
    }
}
@media (min-width: 1200px) {
    .container>.navbar-header, .container-fluid>.navbar-header, .container>.navbar-collapse, .container-fluid>.navbar-collapse {
        margin-right: 0;
        margin-left: 0;
    }
}



.hestia-top-bar {
    background: none !important;
    height: 40px;
    max-height: 40px;
    position: relative;
    z-index: 10;
}
.hestia-top-bar {
    line-height: 40px;
}
.navbar.header-with-topbar {
    position: absolute;
    top: 30px;
}
.navbar.new-navbar-scroll-point {
    position: fixed;
    top: 0;
}

@media (max-width: 768px) {
    body.admin-bar .navbar.header-with-topbar {
        margin-top: 0;
        top: 35px;
    }
    .navbar.header-with-topbar {
        position: absolute;
        top: 0;
    }
    .navbar.header-with-topbar.new-navbar-scroll-point {
        position: fixed;
        top: 0;
    }
}

.header.header-with-topbar {
    height: 30px;
    margin-bottom: 0 !important;
}
@media (max-width: 768px) {
    .header.header-with-topbar {
        height: 99px;
        margin-bottom: 0 !important;
    }
}


/* ==========      Top bar      ============= */

.hestia-top-bar .wrapper_top_bar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    font-size: 14px;
}

.hestia-top-bar .bloc_top_menu ul {
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hestia-top-bar .bloc_top_menu li {
    position: relative;
    padding: 0 13px 0 0;
}

.hestia-top-bar .bloc_top_menu li::after {
  content: "|";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: .6;
}
/*
.hestia-top-bar .bloc_top_menu li:last-child::after{
  content: "";
}
*/
.hestia-top-bar .bloc_top_reseaux,
.zone_menu_mobile_extra .bloc_top_reseaux {
  display: flex;
  align-items: center;
  gap: 12px;
}
.zone_menu_mobile_extra .bloc_top_reseaux {
  justify-content: center;
}

.hestia-top-bar .reseaux_label,
.zone_menu_mobile_extra .reseaux_label {
  font-weight: 600;
  white-space: nowrap;
}
.hestia-top-bar .reseaux_list,
footer .reseaux_list,
.zone_menu_mobile_extra .reseaux_list {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hestia-top-bar .reseaux_list li,
footer .reseaux_list li,
.zone_menu_mobile_extra .reseaux_list li {
  width: 16px;
  height: 16px;
}
.hestia-top-bar .reseaux_list a,
footer .reseaux_list a,
.zone_menu_mobile_extra .reseaux_list a {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
  background-color: #FCC977;

  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;

  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}

/* FACEBOOK */
.hestia-top-bar .reseaux_list li.reseau-facebook a,
footer .reseaux_list li.reseau-facebook a,
.zone_menu_mobile_extra .reseaux_list li.reseau-facebook a {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2716%27%20height%3D%2716.001%27%20viewBox%3D%270%200%2016%2016.001%27%3E%3Cpath%20d%3D%27M85.422%2C16V8.711h2.489l.356-2.844H85.422V4.089c0-.8.267-1.422%2C1.422-1.422h1.511V.089C88%2C.089%2C87.111%2C0%2C86.133%2C0a3.431%2C3.431%2C0%2C0%2C0-3.644%2C3.733V5.867H80V8.711h2.489V16Z%27%20transform%3D%27translate(-76%200.001)%27%20fill%3D%27%23000%27%20fill-rule%3D%27evenodd%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2716%27%20height%3D%2716.001%27%20viewBox%3D%270%200%2016%2016.001%27%3E%3Cpath%20d%3D%27M85.422%2C16V8.711h2.489l.356-2.844H85.422V4.089c0-.8.267-1.422%2C1.422-1.422h1.511V.089C88%2C.089%2C87.111%2C0%2C86.133%2C0a3.431%2C3.431%2C0%2C0%2C0-3.644%2C3.733V5.867H80V8.711h2.489V16Z%27%20transform%3D%27translate(-76%200.001)%27%20fill%3D%27%23000%27%20fill-rule%3D%27evenodd%27/%3E%3C/svg%3E");
}

/* LINKEDIN */
.hestia-top-bar .reseaux_list li.reseau-linkedin a,
footer .reseaux_list li.reseau-linkedin a,
.zone_menu_mobile_extra li.reseau-linkedin a {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2716%27%20height%3D%2716%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20d%3D%27M3.582%2C16H.264V5.318H3.582ZM1.921%2C3.861A1.93%2C1.93%2C0%2C1%2C1%2C3.842%2C1.922%2C1.937%2C1.937%2C0%2C0%2C1%2C1.921%2C3.861ZM16%2C16h-3.31V10.8c0-1.239-.025-2.829-1.725-2.829-1.725%2C0-1.989%2C1.346-1.989%2C2.739V16H5.659V5.318H8.841V6.775h.046A3.486%2C3.486%2C0%2C0%2C1%2C12.026%2C5.05C15.383%2C5.05%2C16%2C7.261%2C16%2C10.133V16Z%27%20transform%3D%27translate(0%20-0.001)%27%20fill%3D%27%23000%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2716%27%20height%3D%2716%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20d%3D%27M3.582%2C16H.264V5.318H3.582ZM1.921%2C3.861A1.93%2C1.93%2C0%2C1%2C1%2C3.842%2C1.922%2C1.937%2C1.937%2C0%2C0%2C1%2C1.921%2C3.861ZM16%2C16h-3.31V10.8c0-1.239-.025-2.829-1.725-2.829-1.725%2C0-1.989%2C1.346-1.989%2C2.739V16H5.659V5.318H8.841V6.775h.046A3.486%2C3.486%2C0%2C0%2C1%2C12.026%2C5.05C15.383%2C5.05%2C16%2C7.261%2C16%2C10.133V16Z%27%20transform%3D%27translate(0%20-0.001)%27%20fill%3D%27%23000%27/%3E%3C/svg%3E");
}

.header-filter-gradient {
    background: linear-gradient(45deg, rgba(97, 188, 200, 1) 0, rgb(97, 188, 200) 100%) !important;
}




/* ==========================================================================
Page Accueil
========================================================================== */


.main-raised {
    margin: 0px 0px 0;
    border-radius: 0;
    -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -5px rgba(0, 0, 0, 0);
    box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -5px rgba(0, 0, 0, 0);
}


/* ==========      Accueil Slider      ============= */

.carousel_accueil {
    margin-top: 135px;
    transition: margin 0.3s ease;
    transform: translateY(-30px);
}
.ac_slider_content_fixed {
    left: 50px;
    right: 50px;
    position: absolute;
    bottom: auto !important;
    padding: 0 15px;
    top: 50%;
    transform: translateY(-60%);
}

@media screen and (max-width: 1200px) {
   .carousel_accueil {
        margin-top: 105px;
    } 
}
.bg_slider {
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.3);
    position: absolute;
    top: 0;
}

.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-content {
    left: 50px;
    right: 50px;
    position: absolute;
    bottom: auto !important;
    padding: 0 15px;
    top: 50%;
    transform: translateY(-60%);
}
@media (max-width: 768px) {
    .carousel_accueil {
        margin-top: 0px;
    }
    .carousel_accueil {
        margin-top: 5px;
        transition: margin 0.3s ease;
        transform: translateY(0px);
    }
    .wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-content {
        left: 10px !important;
        right: 10px !important;
        position: absolute;
        bottom: auto !important;
        padding: 0 5px;
        top: 0;
        transform: translateY(0%);
    }
    .ac_slider_content_fixed {
        left: 0px;
        right: 0px;
        position: absolute;
        bottom: auto !important;
        padding: 0 15px;
        top: 50%;
        transform: translateY(-60%);
    }
    .wpsisac-slider-content.container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slide-title {
    background: transparent;
    padding: 10px;
    width: 60%;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content {
    text-align: left;
    background: rgba(0, 0, 0, 0);
    padding: 10px;
    margin-bottom: 8px;
    color: #fff;
    font-size: 16px;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 h2,
.ac_slider_content_fixed h2 {
    position: relative;
    font-family: "Saira Condensed", sans-serif;
    font-size: 25px;
    font-weight: 600;
    padding: 0 0 5px;
    line-height: 1;
    letter-spacing: 0.4;
    width: 100% !important;
    text-transform: uppercase;
}

.wpsisac-slick-slider.wpsisac-prodesign-1 h2 span,
.ac_slider_content_fixed h2 span {
    color: var(--couleur-2);
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content {
    text-align: left;
    background: rgba(0, 0, 0, 0);
    padding: 0px !important;
    margin-bottom: 18px;
    color: #fff;
    font-size: 20px !important;
    margin-top: 40px;
    font-family: "Overpass", sans-serif;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content p, 
.wpsisac-slick-slider.wpsisac-prodesign-4 .wpsisac-slider-short-content p {
    text-align: left;
    color: #fff;
    font-size: 18px !important;
    line-height: 1.12;
}
.wpsisac-slick .slick-dots {
    left: 15px !important;
    right: 15px;
    bottom: 20px !important;
    line-height: 0 !important;
}
.wpsisac-slick .slick-dots li button, 
.wpsisac-slider-nav .slick-dots li button {
    text-indent: -99999px;
    background: var(--couleur-1) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid var(--couleur-1);
    border-radius: 50% !important;
    width: 19px !important;
    height: 19px !important;
    box-shadow: none !important;
    cursor: pointer;
}
.wpsisac-slick .slick-dots li.slick-active button, 
.wpsisac-slider-nav .slick-dots li.slick-active button {
    background: #fff !important;
    border: 2px solid var(--couleur-1) !important;
}
.wpsisac-slick-slider-link,
.wpsisac-slide-wrap .wpsisac-readmore {
    display: none;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content {
    opacity: 0;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 h2.wpsisac-slide-title {
    position: relative;
    font-size: 45px;
}
h2.wpsisac-slide-title a, h2.wpsisac-slide-title a:active, 
h2.wpsisac-slide-title a:focus, 
h2.wpsisac-slide-title a:hover, 
h2.wpsisac-slide-title a:visited {
    font-size: 45px !important;
    text-decoration: none;
    outline: 0;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content,
.ac_slider_content_fixed .wpsisac-slider-short-content {
    text-align: left;
    background: rgba(0, 0, 0, 0.4);
    padding: 10px 20px 20px !important;
    margin-bottom: 15px;
    color: #fff;
    font-size: 36px !important;
    margin-top: 40px;
}
.wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content p, 
.wpsisac-slick-slider.wpsisac-prodesign-4 .wpsisac-slider-short-content p,
.ac_slider_content_fixed .wpsisac-slider-short-content p {
    text-align: left;
    color: #fff;
    font-size: 16px !important;
    line-height: 1.3;
}


@media (min-width: 769px) {
    .carousel_accueil {
        margin-top: 0;
    }
    .wpsisac-image-fit img.wpsisac-slider-img {
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
        height: 100%;
        width: 100%;
    }
    .aplat_slider {
        position: absolute;
        top: 0;
        left: 50%;
        height: 100%;
        width: 100%;
        background-image: url('imgs/bg_picto_v.png');
        background-repeat: no-repeat;
        background-position: top left;
        background-size: auto 100%;
        opacity: 0.05;
    }
    
    .wpsisac-slider-content .contenu_slider {
        display: block;
        margin-left: 55px;
        max-width: 705px;
        padding: 0 20px;
    }
    .wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content,
    .ac_slider_content_fixed .wpsisac-slider-short-content {
        padding: 10px 20px 20px !important;
        margin-bottom: 15px;
        font-size: 36px !important;
        margin-top: 40px;
    }
    .wpsisac-slick-slider.wpsisac-prodesign-1 h2,
    .ac_slider_content_fixed h2 {
        font-size: 45px;
        padding: 0 0 5px;
        line-height: 1;
    }
    .wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content p, 
    .wpsisac-slick-slider.wpsisac-prodesign-4 .wpsisac-slider-short-content p,
    .ac_slider_content_fixed .wpsisac-slider-short-content p {
        font-size: 21px !important;
        line-height: 1.3;
    }
	
}

@media (max-width: 991px) {
    .wpsisac-slick-slider.wpsisac-prodesign-1 h2 {
        font-size: 25px;
        padding: 0 0 5px;
        line-height: 1;
        letter-spacing: 0.4;
    }
    .wpsisac-slick-slider.wpsisac-prodesign-1 .wpsisac-slider-short-content {
        margin-bottom: 18px;
        font-size: 16px !important;
        margin-top: 30px;
    }
}


/* ==========      Accueil Filières      ============= */

#section_ac_filieres {
    position: relative;
    background-color: transparent;
    transform: translateY(-290px);
    margin-bottom: -290px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2236.138 1210.569'%3E%3Cpath d='M2236.138.289c-113.1-.857-222.128,8.02-323.832,26.444l-243.2,44.1c-60.191,10.925-124.579,16.5-191.718,15.972l-20.336-.051c-57.589-1.02-113.394-6.35-166.155-15.921l-243.178-44.1c-196.5-35.638-422.01-35.647-618.638,0l-243.22,44.1C127.455,81.436,65.249,86.877,0,86.715V210.569c107.286-.026,2236.138,0,2236.138,0Z' fill='%23fff'/%3E%3Crect x='0' y='210.569' width='2236.138' height='1000' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center 110px;
    /* Desktop : largeur fixe, centrée, rognée */
    background-size: 2200px auto;
    overflow: hidden;
}


@media (max-width: 991px) {
  #section_ac_filieres {
    transform: translateY(-140px);
    margin-bottom: -140px;
    background-size: 140% auto;
  }
}

#section_ac_filieres #blocs_filieres {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
}
#section_ac_filieres #blocs_filieres a:hover {
    opacity: 1;
}
#filiere_2 {
    margin-top: 33px;
}
#filiere_3 {
    margin-top: 65px;
}

@media (max-width: 800px) {
    #section_ac_filieres #blocs_filieres {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: flex-start;
        margin-top: 140px;
    }
    .bloc_filiere {
        margin: 10px auto !important;
        max-width: 30%;
    }
    .bloc_filiere a {
        display: block;
        position: relative;
    }
    .bloc_filiere a svg {
        max-width: 100%;
        height: auto;
    }
}


/* ==========      Accueil Nos ports      ============= */


.bloc_double.txt_gauche {
    position: relative;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
/* Bloc gauche */
.bloc_double .sbloc_txt {
    width: 440px;
    padding: 50px;
    position: relative;
    z-index: 2;
    background: #fff;
    border: solid 2px #eee;
    
}
/* Bloc droit */
.bloc_double .sbloc_img {
    width: 1002px;
    margin-left: -180px;
    z-index: 1;
}

@media (max-width: 992px) {
    .bloc_double.txt_gauche {
        width: 100%;
        margin: 0 auto;
        display: flex;
        align-items: center;
        flex-direction: column-reverse;
    }
    /* Bloc gauche */
    .bloc_double .sbloc_txt {
        width: 100%;
        padding: 20px;
        position: relative;
        z-index: 2;
        background: #fff;
        border: solid 2px #eee;

    }
    /* Bloc droit */
    .bloc_double .sbloc_img {
        width: 100%;
        margin-left: 0px;
        z-index: 1;
    }
}
.ac-map{
  position: relative;
  display: inline-block;
  max-width: 100%;
}

.ac-map__img{
    display: block;
    width: 1002px;
    height: auto;
    max-width: 100%;
}

.ac-hotspot{
  position: absolute;
  box-sizing: border-box;
  cursor: pointer;
  background: transparent;
}

/* DEBUG UNIQUEMENT */
.ac-map.is-debug .ac-hotspot{
  border: 1px solid red;
  background: rgba(255,0,0,0.05);
}

/* Base image : 1002 x 599 */

/* 1 */
.ac-hotspot--h1{
  left: 77.83%;
  top: 3.34%;
  width: 10.98%;
  height: 15.03%;
}

/* 2 */
.ac-hotspot--h2{
  left: 48.40%;
  top: 29.22%;
  width: 15.96%;
  height: 15.03%;
}

/* 3 */
.ac-hotspot--h3{
  left: 32.93%;
  top: 43.24%;
  width: 8.98%;
  height: 16.03%;
}

/* 4 */
.ac-hotspot--h4{
  left: 22.95%;
  top: 74.13%;
  width: 12.97%;
  height: 9.18%;
}




/* ==========      Accueil Chiffres clés      ============= */

.bloc_bleu {
    background: #005c9f;
}

.wrapper_chiffres_cles {
    position: relative;
    z-index: 0;
    padding: 50px 0;
    color: #fff;
    --bg-opacity: 0.05;
}
.home .wrapper_chiffres_cles {
    padding: 100px 0;
}

.wrapper_chiffres_cles::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image: url(imgs/bg_chiffres_cles.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    opacity: var(--bg-opacity);
}
.wrapper_chiffres_cles .col-md-3 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}
.sbloc_ac_chiffre_contenu,
.sbloc_ac_chiffre_contenu h3 {
    text-align: center;
    font-family: "Overpass", sans-serif !important;
}
.sbloc_ac_chiffre_contenu h3 {
    font-weight: bold;
    font-size: 45px !important;
    line-height: 22px !important;
    color: #fff !important;
    padding-bottom: 0 !important;
}
.sbloc_picto_chiffre{
    display: flex;
    align-items: center;
    justify-content: center;
}
.sbloc_picto_chiffre img{
    max-width: 100%;
    max-height: 100%;
}

.sbloc_picto_chiffre {
    height: 120px;
    width: 120px;
    background: #004c8f;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto;
    border-radius: 50%;
    margin: 5px auto;
}

@media (max-width: 992px) {
    #section_ac_chiffres .wrapper_chiffres_cles {
        padding: 50px 0;
    }
    .wrapper_chiffres_cles .col-md-3 {
        gap: 5px;
        margin-bottom: 40px;
    }
    .sbloc_ac_chiffre_contenu h3 {
        font-size: 37px !important;
        line-height: 22px;
    }
}


/* ==========      Accueil Actualités      ============= */

#section_ac_actualites {
    
}
.ac_actualites_wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
}
.ac_actualites_bloc_1 {
    grid-column: 1 / -1; /* prend toute la ligne */
}

.ac_actualites_bloc_1 {
    position: relative;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
.ac_actualites_bloc_1 .sbloc_ac_actu_image {
    width: 915px;
    height: 515px;
    margin-right: -160px;
    z-index: 1;
    overflow: hidden;
}
.ac_actualites_bloc_1 .sbloc_ac_actu_image a {
    display: block;
    height: 100%;
}
.ac_actualites_bloc_1 .sbloc_ac_actu_image img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
}
.ac_actualites_bloc_1 .sbloc_ac_actu_contenu {
    width: 490px;
    padding: 50px;
    position: relative;
    z-index: 2;
    background: #fff;
    border: solid 2px #eee; 
    font-size: 16px;
    line-height: 23px;
}
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) .sbloc_actu_contenu {
    display: none;
}

.ac_actualites_bloc_1 h3 {
    position: relative;
    display: inline-block;
    margin-bottom: 60px;
    line-height: 1.2;
}

.ac_actualites_bloc_1 h3::after {
    content: "";
    position: absolute;
    left: 0;
    top: calc(100% + 20px);
    width: 100%;
    height: 19px;
    background: url("imgs/tirets_titre.svg") no-repeat left center;
}
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) h3 {
    font-size: 21px;
    line-height: 27px;
    margin-top: 0;
}
.actualite_lien {
   color: var(--couleur-1); 
}
.actualite_lien:hover {
   color: var(--couleur-1);
}
.sbloc_actu_meta {
    padding-top: 20px;
}
.wprpsp-post-grid-content .sbloc_actu_meta {
    padding-top: 5px;
}
.sbloc_actu_categorie,
.sbloc_actu_date {
    display: inline-block;
    margin-top: 10px;
}
.actualite_categorie {
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    padding: 3px 15px;
    background: #eee;
    color: var(--couleur-1); 
    font-size: 14px;
    text-transform: uppercase;
}
.sbloc_actu_date {
    color: var(--couleur-1); 
    font-size: 14px;
    padding-left: 10px;
}


[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) {
  position: relative;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column; /* vertical */
  align-items: center;
}

/* Bloc image (au-dessus) */
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) .sbloc_ac_actu_image {
    width: 100%;
    height: 209px;
    z-index: 1;
}
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) .sbloc_ac_actu_image a {
    display: block;
    height: 100%;
}
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) .sbloc_ac_actu_image img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

/* Bloc texte (en dessous, chevauche sur l’image) */
[class^="ac_actualites_bloc_"]:not(.ac_actualites_bloc_1) .sbloc_ac_actu_contenu {
    width: 310px;
    padding: 40px 30px 0px;
    position: relative;
    z-index: 2;
    margin-top: -45px;
    background: #fff;
    border: solid 2px #eee;
    min-height: 210px;
}
.single-actualites .blog-post .section-text p {
    margin-bottom: 15px;
}
.section.related-posts {
    background: #eee;
}



/* ==========      Accueil Régie      ============= */

.ac_bloc_regie_wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:  "regie_1 photo_regie"
                        "photo_port port_1";
}

.ac_bloc_regie {
    position: relative;
    height: 590px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ac_bloc_regie_1 { 
    background: var(--couleur-3);
    position: relative;
    z-index: 0;
    padding: 20px 0;
    color: var(--couleur-1);
    --bg-color: #156e2f;
    --bg-opacity: 0.08;
    grid-area: regie_1;
}

.ac_bloc_regie_wrapper .ac_bloc_regie_1::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    /* couleur pilotable */
    background-color: var(--bg-color);
    opacity: var(--bg-opacity);

    /* SVG comme masque */
    -webkit-mask-image: url("imgs/bg_picto_v.png");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: right 500px bottom 0;
    -webkit-mask-size: contain;

    mask-image: url("imgs/bg_picto_v.png");
    mask-repeat: no-repeat;
    mask-position: right 160px bottom 0;
    mask-size: 470px;
}
.ac_bloc_regie_1 .ac_bloc_regie_contenu {
    width: 605px;
    max-width: 90%;
    margin-left: auto;
    margin-right: 0;
    padding-right: 30px;
}
.ac_bloc_regie_contenu .sbloc_txt {
    padding-bottom: 20px;
}
.ac_bloc_regie_contenu h3 {
    font-family: "Saira Condensed", sans-serif;
    font-size: 45px;
    font-weight: bold;
    line-height: 51px;
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 40px;
}
.ac_bloc_regie_contenu h4 {
    font-family: "Overpass", sans-serif;
    font-size: 30px;
    font-weight: bold;
    line-height: 36px;
}
.ac_bloc_regie_contenu p {
    font-size: 16px;
    line-height: 22px;
}

.ac_bloc_regie_2 { 
    background: #fff; 
    grid-area: photo_regie;
}
.ac_bloc_regie_3 { 
    background: #fff; 
    grid-area: photo_port;
}

.image_tuile {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.image_tuile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ac_bloc_regie_2 .sbloc_logo {
    position: absolute;
    top: 40px;
    left: 40px;
}

.ac_bloc_regie_4 { 
    background: var(--couleur-4);
    position: relative;
    z-index: 0;
    padding: 20px 0;
    color: #fff;
    --bg-color: #fff;
    --bg-opacity: 0.06;
    grid-area: port_1;
}

.ac_bloc_regie_wrapper .ac_bloc_regie_4::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    /* couleur pilotable */
    background-color: var(--bg-color);
    opacity: var(--bg-opacity);

    /* SVG comme masque */
    -webkit-mask-image: url("imgs/bg_picto_v.png");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: left 100px top 0;
    -webkit-mask-size: contain;

    mask-image: url("imgs/bg_picto_v.png");
    mask-repeat: no-repeat;
    mask-position: left 120px top 0;
    mask-size: 450px;
}
.ac_bloc_regie_4 .ac_bloc_regie_contenu {
    width: 605px;
    max-width: 90%;
    margin-left: 70px;
    margin-right: auto;
    padding-right: 30px;
}

@media (max-width: 992px) {
    .ac_bloc_regie_wrapper {
        grid-template-columns: 1fr;
        grid-template-areas:  "regie_1"
                            "photo_regie"
                            "port_1"
                            "photo_port";
    }
    .ac_bloc_regie_1 .ac_bloc_regie_contenu {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding-bottom: 20px;
    }
    .ac_bloc_regie_contenu h3 {
        font-size: 25px;
        line-height: 1.2;
        margin-top: 10px;
        margin-bottom: 20px;
    }
    .ac_bloc_regie_contenu h4 {
        font-size: 20px;
        line-height: 1.2;
    }
    .ac_bloc_regie_2,
    .ac_bloc_regie_3 { 
        height: 300px;
    }
    .ac_bloc_regie_2 .sbloc_logo {
        width: 130px;
    }
    .ac_bloc_regie_wrapper .ac_bloc_regie_1::before {
        inset: 0;
        z-index: -1;
        pointer-events: none;

        /* SVG comme masque */
        -webkit-mask-image: url("imgs/bg_picto_v.png");
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: right 60px bottom 0;
        -webkit-mask-size: contain;

        mask-image: url("imgs/bg_picto_v.png");
        mask-repeat: no-repeat;
        mask-position: right 60px bottom 0;
        mask-size: 50%;
    }
    .ac_bloc_regie_wrapper .ac_bloc_regie_4::before {
        inset: 0;
        z-index: -1;
        pointer-events: none;

        /* SVG comme masque */
        -webkit-mask-image: url("imgs/bg_picto_v.png");
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: left 60px top 0;
        -webkit-mask-size: contain;

        mask-image: url("imgs/bg_picto_v.png");
        mask-repeat: no-repeat;
        mask-position: left 60px top 0;
        mask-size: 50%;
    }
    .ac_bloc_regie_1 .ac_bloc_regie_contenu {
        width: 95%;
        max-width: 90%;
        padding-right: 30px;
        padding-left: 30px;
    }
    .ac_bloc_regie_4 .ac_bloc_regie_contenu {
        width: 95%;
        max-width: 90%;
        margin-left: 0;
        margin-right: 0;
        padding-right: 30px;
        padding-left: 30px;
    }
}



/* ==========      Accueil Partenaires      ============= */

#section_ac_partenaires .wpls-fix-box img {
    box-sizing: border-box;
    margin: 0 auto;
    max-height: 110px;
    max-width: 100%;
}



/* ==========================================================================
Footer
========================================================================== */


footer.footer {
    position: relative;
    background-color: transparent;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 110px, rgba(0, 76, 143, 1) 110px) !important;
    padding-top: 220px;
    padding-bottom: 10px;
    overflow: hidden;
}
footer.footer.footer-black {
    position: relative;
    background-color: transparent;
}

/* La vague du footer */
footer.footer::before {
    --wave-h: 210px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 210px;
    background-image: url("data:image/svg+xml;utf8,\
    <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2236.138 210.578'>\
    <path d='M0,210.29c113.1.857,222.128-8.02,323.832-26.444l243.2-44.1c60.191-10.925,124.579-16.5,191.718-15.972l20.336.051c57.589,1.02,113.394,6.35,166.155,15.921l243.178,44.1c196.5,35.638,422.01,35.647,618.638,0l243.22-44.1c58.407-10.608,120.613-16.05,185.862-15.887V.009c-107.286.026-211.215,9.014-308.931,26.726l-243.157,44.1c-118.409,21.457-254.2,21.457-372.564,0l-242.423-44.1C971.243,9,867.105,0,759.567,0h-6.254c-3.631,0-7.241.017-10.85.034L688.84.129v.96C604.22,3.976,522.118,12.562,444,26.735l-243.2,44.1C138.872,82.048,72.322,87.395,2.686,86.649L0,86.615Z' fill='%23ffffff'/>\
    </svg>") !important;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 130% 100%;
    pointer-events: none;
}
.container_footer_mobile {
    padding-top: 10px;
}
.footer-big {
    color: #fff;
    padding: 250px 0 18px;
    text-align: left;
}
footer h3 {
    font-size: 14px;
    font-weight: bold;
    line-height: 20px;
    text-transform: uppercase;
    margin-top: 0;
}
@media (min-width: 992px) {
    .bloc_footer_logo {
        display: flex;
        align-items: flex-end;
    }
}
@media (max-width: 991px) {
    .bloc_footer_logo {
        text-align: center;
    }
    .sbloc_logo_footer img {
        max-width: 180px;
    }
    .container_footer_mobile {
        padding-top: 130px;
    }
}
.bloc_footer_logo,
.bloc_footer_logo p {
    color: var(--couleur-5) !important;
}
.bloc_footer_logo p {
    line-height: 20px;
    margin-bottom: 0;
}
.bloc_footer_logo a {
    color: var(--couleur-5) !important;
    text-decoration: underline;
}
.bloc_footer_logo .sbloc_logo_footer {
    padding-bottom: 7px;
}
.bloc_footer_logo div {
    margin-bottom: 20px;
}




.footer-big ul li a {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #fff !important;
}

@media (min-width: 1200px) {
	.main_footer_wrapper {
		display: grid;
		grid-template-columns: 2fr 2fr 1fr;
		align-items: start;  
		grid-column-gap: 60px;
		overflow-wrap: anywhere;
		grid-template-areas:  "logo_footer menu_footer menu_footer_reseau";
        padding: 55px 0 20px;
	}
    .logo_footer {
        grid-area: logo_footer;
    }
    .footer_menu {
        grid-area: menu_footer;
    }
    .footer_menu_reseau {
        grid-area: menu_footer_reseau;
    }
}
.footer_menu_class {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: space-around;
}


.footer_menu_class > li {
    position: relative;
    margin-right: 30px;
    max-width: 200px;
    margin-bottom: 30px;
}
@media (max-width: 991px) {
    .footer_menu_class {
        padding: 0;
        margin: 0;
        flex-direction: column;
        justify-content: space-around;
        text-align: center;
    }
    .footer_menu_class > li {
        position: relative;
        margin-right: 0px;
        max-width: 100%;
    }
    .footer_menu_reseau {
        text-align: center;
    }
    .footer_menu_reseau .reseaux_list {
        justify-content: center;
    }
}

.footer_menu_class .sub-menu {
    padding-top: 25px;
}
.footer_menu_class .sub-menu li a {
    text-transform: none !important;
    font-weight: 400;
}

.footer_menu_class .sub-menu {
    padding-top: 5px;
}
.footer_menu_class .sub-menu li {
    padding-bottom: 1px;
}
.footer-big ul li a {
    display: inline-block;
    position: relative;
    padding: 2px 0;
    border-radius: 0px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
}
.sbloc_logo_footer {
    padding-right: 0;
}



.footer_bottom {
    padding: 20px 0 10px;
    text-align: center;
    color: #fff;
    font-size: 14px;
}
.footer_bottom p {
    color: var(--couleur-5) !important;
}
.footer_bottom ul {
    text-align: center;
}
.footer_bottom li {
    display: inline-block;
    padding-right: 10px;
    padding-left: 10px;
    position: relative;
}
.footer_bottom li::before {
    content: " . ";
    position: absolute;
    left: -2px;
    color: inherit;
}
.footer_bottom li:first-of-type::before {
  content: none;
}


@media (max-width: 991px){
  footer {
    background-size: 100% auto;
  }
}


/* ==========================================================================
Page classique
========================================================================== */


/* ==========      Bandeau      ============= */

#primary {
    top: -30px;
}
.sur_titre,
h1.hestia-title {
   font-family: "Saira Condensed", sans-serif !important; 
}
h1.hestia-title {
    font-size: 45px;
    text-shadow: 2px 2px 5px rgba(0,0,0,0.48);
}
.sur_titre {
    font-size: 24px;
}
h1.hestia-title.marg_mini {
    margin-top: 0 !important;
}
.btn_scroll {
    margin-top: 50px;
}
.blog-post{
  position: relative;
}

body .blog-post:not(.sans_frise)::before{
  content: "";
  display: block;
  height: 24px;
  margin: 20px 0;
  background: url("imgs/frise_2.svg") repeat-x left center;
  background-size: auto 24px;
}
.page-content-wrap,.page-content-wrap dl,.page-content-wrap ol,.page-content-wrap table,.page-content-wrap ul,.page-template-template-fullwidth article,.page-template-template-fullwidth article dl,.page-template-template-fullwidth article ol,.page-template-template-fullwidth article table,.page-template-template-fullwidth article ul,.single-post-wrap,.single-post-wrap dl,.single-post-wrap ol,.single-post-wrap table,.single-post-wrap ul {
    font-size: 16px
}

.elementor-image-carousel-wrapper,
.elementor-image-carousel-wrapper .swiper,
.elementor-image-carousel-wrapper .swiper-wrapper,
.elementor-image-carousel-wrapper .swiper-slide,
.elementor-image-carousel-wrapper .swiper-slide-inner {
  height: 500px !important;
}
@media (max-width: 991px){
    .elementor-image-carousel-wrapper,
    .elementor-image-carousel-wrapper .swiper,
    .elementor-image-carousel-wrapper .swiper-wrapper,
    .elementor-image-carousel-wrapper .swiper-slide,
    .elementor-image-carousel-wrapper .swiper-slide-inner {
      height: 300px !important;
    }
}

/* 2) L'image doit remplir cette zone (sans recadrage) */
.elementor-image-carousel-wrapper img.swiper-slide-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block;
}

/* 3) Évite la coupe par un parent si Elementor en met */
.elementor-image-carousel-wrapper .swiper-slide {
  overflow: hidden; /* ou visible si tu veux être sûr de ne rien couper */
}
.elementor-element .swiper .elementor-swiper-button svg, 
.elementor-element .swiper~.elementor-swiper-button svg, 
.elementor-lightbox .swiper .elementor-swiper-button svg, 
.elementor-lightbox .swiper~.elementor-swiper-button svg {
    fill: var(--couleur-1) !important;
    height: 1em;
    width: 1em;
}
.swiper-pagination-bullet {
    background: var(--couleur-2) !important;
    width: 10px !important;
    height: 10px !important;
    opacity: 1 !important;
}
.swiper-pagination-bullet-active {
    background: var(--couleur-1) !important;
}

/* ==========================================================================
Régie de plaisance
========================================================================== */

body.page-id-321,
.page-id-321 .main {
    background: var(--couleur-6);
}
/* La vague du footer */
body.page-id-321 footer::before {
    --wave-h: 210px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 210px;
    background-image: url("data:image/svg+xml;utf8,\
    <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2236.138 210.578'>\
    <path d='M0,210.29c113.1.857,222.128-8.02,323.832-26.444l243.2-44.1c60.191-10.925,124.579-16.5,191.718-15.972l20.336.051c57.589,1.02,113.394,6.35,166.155,15.921l243.178,44.1c196.5,35.638,422.01,35.647,618.638,0l243.22-44.1c58.407-10.608,120.613-16.05,185.862-15.887V.009c-107.286.026-211.215,9.014-308.931,26.726l-243.157,44.1c-118.409,21.457-254.2,21.457-372.564,0l-242.423-44.1C971.243,9,867.105,0,759.567,0h-6.254c-3.631,0-7.241.017-10.85.034L688.84.129v.96C604.22,3.976,522.118,12.562,444,26.735l-243.2,44.1C138.872,82.048,72.322,87.395,2.686,86.649L0,86.615Z' fill='%23d9e1d6'/>\
    </svg>") !important;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 130% 100%;
    pointer-events: none;
}

/* ==========================================================================
Nous rejoindre
========================================================================== */

.liste-offres-emploi .offre-emploi { 
    margin: 0 0 30px; 
    padding: 20px; 
    border: 1px solid #ddd; 
    background: #eee;
}
.offre-emploi__meta { 
    display: flex; 
    flex-direction: column;
    gap: 12px; 
    font-weight: 600; 
    margin: 8px 0 12px; 
}


/* ==========================================================================
Contact
========================================================================== */

form.form-group {
    padding: 50px 0;
}
.ligne_form {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 0px;
    margin-bottom: 10px;
    grid-template-areas: "label" 
                        "champ"; 
}

.form_label {
    grid-area: label;
}
.form_champ {
    grid-area: champ;
}

@media (max-width: 768px) {
    .form_label p {
        margin-bottom: 0 !important;
    }
}
@media (min-width: 769px) {
    .ligne_form {
        display: grid;
        grid-template-columns: 120px auto;
        column-gap: 20px;
        margin-bottom: 10px;
        grid-template-areas: "label champ"; 
    }
    .form_label {
        width: 120px;
    }
    .form_champ {
        width: calc(100% - 140px)
    }
    .champ_mini input:not([type="submit"]) {
        width: 500px;
        max-width: 95%;
    }
}

.form_label {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    text-transform: uppercase;
}
.form_label label {
    font-weight: 400;
}
.form-control, .form-group .form-control, .woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
    background-image: linear-gradient(#9c27b0, #9c27b0), linear-gradient(#d2d2d2, #d2d2d2);
    float: none;
    border-radius: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center bottom, center calc(100% - 1px);
    background-size: 0 2px, 100% 1px;
    font-weight: 400;
    -webkit-transition: background 0s ease-out;
    transition: background 0s ease-out;
    background:  #eee;
    border: solid 1px #ccc;
}

.form-group.is-focused .form-control {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#01bfbf), to(#01bfbf)), -webkit-gradient(linear, left top, left bottom, from(#d2d2d2), to(#d2d2d2));
    background-image: -webkit-linear-gradient(linear, left top, left bottom, from(#01bfbf), to(#01bfbf)), -webkit-linear-gradient(linear, left top, left bottom, from(#d2d2d2), to(#d2d2d2));
    background-image: linear-gradient(linear, left top, left bottom, from(#01bfbf), to(#01bfbf)), linear-gradient(linear, left top, left bottom, from(#d2d2d2), to(#d2d2d2));
    background: #fff !important;
}

input.wpcf7-form-control.wpcf7-submit {
    display: block;
    padding: 20px 70px 20px 25px !important;
    font-size: 16px;
    line-height: 22px;
    text-transform: uppercase;
    font-weight: bold;
    color: #fff;
    background-color: var(--couleur-1);
    background-image: url("imgs/Icon ionic-ios-arrow-dropright-circle.png");
    background-repeat: no-repeat;
    background-position: right 25px center;
    background-size: 30px 30px;
    border: none;
    cursor: pointer;
    transition: background-position 0.3s ease, filter 0.3s ease;
    box-shadow: none;
}

input.wpcf7-form-control.wpcf7-submit:hover {
    background-position: right 18px center;
    filter: brightness(1.1);
    box-shadow: none;
}



/* ==========================================================================
Actualités
========================================================================== */


.liste_actualites {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 60px;
}
.liste_actualites .ac_actualites_bloc {
    position: relative;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.actualite_item {
    width: 100%;
    margin-bottom: 50px;
}
.actualite_item .sbloc_ac_actu_image {
    width: 100%;
}
.actualite_item .actualite_image {
    width: 100%;
    height: 210px;
    background: #eee;
}
.actualite_item .actualite_image a {
    display: block;
    height: 100%;
}
.actualite_item .actualite_image a img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    max-height: 210px;
}
.wprpsp-recent-post-slider.wprpsp-image-fit .wprpsp-post-image-wrap .wprpsp-post-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center center;
}
.actualite_item .sbloc_ac_actu_contenu,
.wprpsp-post-grid-content .sbloc_ac_actu_contenu {
    width: 310px;
    padding: 25px 30px 0px;
    position: relative;
    z-index: 2;
    margin-top: -45px;
    background: #fff;
    border: solid 2px #eee;
    min-height: 200px;
}
.wprpsp-post-grid-content .sbloc_ac_actu_contenu {
    width: 90%;
    padding: 10px 10px;
    margin: -45px auto 10px;
    background: #fff;
    border: solid 2px #eee;
    min-height: 100px;
}
.wprpsp-recent-post-slider.wprpsp-design-15 .wprpsp-post-grid-content {
    background: #fff;
    border-bottom: 0px solid #555;
}

.actualite_item .sbloc_actu_titre h3,
.wprpsp-post-grid-content .sbloc_actu_titre h3 {
    font-size: 21px !important;
    line-height: 29px !important;
    font-weight: 600 !important;
    margin: 10px 0 12px !important;
}
.wprpsp-post-grid-content .sbloc_actu_titre h3 {
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 600 !important;
    margin: 5px 0 5px !important;
}

.wprpsp-post-grid-content .sbloc_actu_categorie,
.wprpsp-post-grid-content .sbloc_actu_date {
    display: inline-block;
    margin-top: 10px;
}
.wprpsp-post-grid-content .post-categories.wprpsp-post-categories {
    margin: 0 !important;
    padding: 0 !important;
}
.wprpsp-post-grid-content .post-categories.wprpsp-post-categories li {
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    padding: 3px 15px;
    background: #eee;
    color: var(--couleur-1); 
    font-size: 14px;
    text-transform: uppercase;
    list-style: none;
}
.wprpsp-post-grid-content .sbloc_actu_date {
    color: var(--couleur-1); 
    font-size: 14px;
    padding-left: 10px;
}
.elementor-slideshow__title {
    display: none;
}
.wprpsp-recent-post-slider .slick-dots li button {
    background: var(--couleur-2) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid var(--couleur-2);
    border-radius: 50% !important;
    width: 13px !important;
    height: 13px !important;
    box-shadow: none !important;
}
.wprpsp-recent-post-slider .slick-dots li.slick-active button {
    background: var(--couleur-1) !important;
    border: 2px solid var(--couleur-1);
}

@media (max-width: 992px) {
    .liste_actualites {
        display: grid;
        grid-template-columns: 1fr;
        column-gap: 60px;
    }
    .actualite_item .sbloc_actu_titre h3 {
        font-size: 21px !important;
        line-height: 29px !important;
        font-weight: 500 !important;
        margin: 10px 0 12px !important;
    }
}

.categories_list {
    margin-bottom: 60px;
}

.filtre-actus.form-group {
    padding: 15px 20px;
    background: #eee;
    margin-bottom: 40px;
}
#cat_actu {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: white;
    border: 1px solid #ccc;
    padding: 8px 30px 8px 20px;
    padding-right: 30px; 
    font-size: 16px;
    background-image: url("imgs/icon-dropdown-arrow.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 12px 6px;
    max-width: 90%;
    cursor: pointer;
}
.titre_thematiques {
    display: inline-block;
    text-transform: uppercase;
    font-size: 18px;
    padding-right: 30px;
}
@media (max-width: 991px) {
    .categories_list {
        margin-bottom: 40px;
        text-align: center;
    }
    .titre_thematiques {
        display: block;
        text-align: center;
    }
}


.single .main-raised {
    margin-top: 50px;
    margin-bottom: 30px;
}
.single-post-wrap {
    font-size: 16px;
}
.content_actualite_wrapper {
    margin-top: 50px;
}
.section.section-blog-info {
    display: none;
}


.actualite_meta {
    margin-bottom: 45px;
}
.liste_actualites_colonne .actualite_item .sbloc_actu_titre h3 {
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 600 !important;
    margin: 3px 0 2px !important;
}
h2.h2_colonne_droite {
    font-size: 21px;
    font-weight: 600;
    color: var(--couleur-2);
    margin-top: 0;
    margin-bottom: 40px;
}

.liste_actualites_colonne .actualite_item {
    width: 100%;
    margin-bottom: 30px;
    padding-bottom: 25px;
}
.liste_actualites_colonne .actualite_item:not(:last-child) {
    border-bottom: solid 1px #ccc;
}

.liste_actualites_colonne .sbloc_ac_actu_image {
    width: 100%;
    margin-right: 0;
    padding-bottom: 20px;
}
.related-posts .bouton_bleu {
    display: inline-block;
    width: 100%;
}

#actus_relies_page {
    margin-top: 80px;
}
@media (max-width: 991px) {
    #actus_relies_page {
        margin-top: 40px;
    }
}
#actus_relies_page .liste_actualites_colonne {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 60px;
}
#actus_relies_page .liste_actualites_colonne .actualite_item:not(:last-child) {
    border-bottom: solid 0px #ccc;
}
#actus_relies_page .bouton_plus {
    display: none;
}
@media (max-width: 768px) {
    #actus_relies_page .liste_actualites_colonne {
        display: grid;
        grid-template-columns: 1fr;
        column-gap: 60px;
    }
}

.bloc_pagination,
.navigation,
ul.page-numbers {
    text-align: center;
    display: block;
    margin: 30px auto;
    width: auto;
}
ul.page-numbers li {
    display: inline-block;
    margin-right: 15px !important;
    overflow: hidden;
}

.wp-paginate a,
.wp-paginate .current,
a.page-numbers,
ul.page-numbers li span {
    position: relative;
    display: inline-block;
    border: solid 2px var(--couleur-2) !important;
    border-radius: 50%;
    width: 27px !important;
    height: 27px !important;
    color: var(--couleur-1) !important;
    padding: 0px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 22px !important;
}
ul.page-numbers li span {
    background: var(--couleur-1) !important;
    color: #fff !important;
    border: solid 2px var(--couleur-1) !important;
}
.wp-paginate a,
a.page-numbers {
    background: var(--couleur-2) !important;
    color: var(--couleur-1) !important;
}
.wp-paginate .current {
    background: var(--couleur-1) !important;
    color: #fff !important;
}

ul.page-numbers li a.prev,
ul.page-numbers li a.next {
    text-indent: -9999px;
}
ul.page-numbers li a.prev::after,
ul.page-numbers li a.next::after {
    content: "«";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 25px;
    height: 25px;
    font-size: 16px;
    color: var(--couleur-1);
    text-indent: 0;
    pointer-events: none;
}
ul.page-numbers li a.next::after {
    content: "»";
}
.wp-paginate a.prev,
.wp-paginate a.next,
a.prev.page-numbers,
a.next.page-numbers {
    background: #fff !important;
    border: solid 2px #fff !important;
    font-size: 17px !important;
}
.wp-paginate a:hover,
a.page-numbers:hover {
    color: #fff !important;
}
a.prev.page-numbers:hover,
a.next.page-numbers:hover {
    color: var(--couleur-2) !important;
}

.post-type-archive-actualites .header-filter-gradient {
    background: var(--couleur-2);
    background-image: url(imgs/actualites.png) !important;
    background-size: cover !important;
}
.header-filter::before {
    background-color: rgba(0, 0, 0, 0.4) !important;
}

body.page-id-321,
.page-id-321 .main {
    background: var(--couleur-6);
}

body.single-actualites footer.footer {
    position: relative;
    background-color: transparent;
    background: linear-gradient(180deg, rgba(238, 238, 238, 1) 110px, rgba(0, 76, 143, 1) 110px) !important;
    padding-top: 220px;
    padding-bottom: 80px;
    overflow: hidden;
}
/* La vague du footer */
body.single-actualites footer::before {
    --wave-h: 210px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 210px;
    background-image: url("data:image/svg+xml;utf8,\
    <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2236.138 210.578'>\
    <path d='M0,210.29c113.1.857,222.128-8.02,323.832-26.444l243.2-44.1c60.191-10.925,124.579-16.5,191.718-15.972l20.336.051c57.589,1.02,113.394,6.35,166.155,15.921l243.178,44.1c196.5,35.638,422.01,35.647,618.638,0l243.22-44.1c58.407-10.608,120.613-16.05,185.862-15.887V.009c-107.286.026-211.215,9.014-308.931,26.726l-243.157,44.1c-118.409,21.457-254.2,21.457-372.564,0l-242.423-44.1C971.243,9,867.105,0,759.567,0h-6.254c-3.631,0-7.241.017-10.85.034L688.84.129v.96C604.22,3.976,522.118,12.562,444,26.735l-243.2,44.1C138.872,82.048,72.322,87.395,2.686,86.649L0,86.615Z' fill='%23eeeeee'/>\
    </svg>") !important;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 130% 100%;
    pointer-events: none;
}



/* ==========================================================================
Actualités
========================================================================== */

/*
.actus-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}
@media (max-width: 1024px){
  .actus-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .actus-grid{ grid-template-columns: 1fr; }
}
.actus-card{
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.actus-thumb img{
  display:block;
  width:100%;
  height:auto;
}
.actus-content{
  padding: 18px 18px 22px;
}
.actus-terms{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.actus-term{
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
  text-decoration: none;
}
.actus-title{
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.25;
}
.actus-title a{ text-decoration:none; color: inherit; }
.actus-date{
  font-size: 14px;
  opacity: .75;
}
*/


/* ==========================================================================
RECHERCHE
========================================================================== */

.search-result-title {
    font-size: 21px !important;
    line-height: 29px !important;
    font-weight: 600 !important;
    margin: 10px 0 12px !important;
    color: var(--couleur-1);
}
.search-result-title a {
    color: var(--couleur-1) !important;
}
.search-result-excerpt {
    font-size: 15px;
    line-height: 21px;
}
.search-result-thumbnail a {
    display: block;
}
.search-result-thumbnail a img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    max-height: 200px;
}




/* ==========================================================================
Styles admin
========================================================================== */

.bloc_couleur,
.e-con.bloc_couleur {
    padding: 40px 40px 25px;
    padding-inline-end: 50px;
    padding-inline-start: 50px;
    margin-bottom: 30px;
}
.bloc_gris {
    background: #eee;
}
.bloc_vert {
    background: var(--couleur-3);
}
.bloc_bleu {
    background: var(--couleur-1);
    color: #fff !important;
}
.chapo {
    font-size: 24px;
    font-weight: bold;
    line-height: 32px;
    padding-bottom: 20px;
    color: var(--couleur-1);
}
.main article h2,
h2.h2_tiret {
    position: relative;
    display: block;
    color: var(--couleur-1);
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
    padding-bottom: 15px;
    margin-bottom: 60px !important;
}
.main article h3 {
    position: relative;
    display: block;
    color: var(--couleur-1);
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2;
    padding-bottom: 15px;
}
.main article .bloc_bleu h3 {
    color: #fff;
}
.main article h2::after,
h2.h2_tiret::after {
    content: "";
    position: absolute;
    left: 0;
    top: calc(100% + 5px);
    width: 100%;
    height: 19px;
    background: url(imgs/tirets_titre.svg) no-repeat left center;
}
.main article .wrapper_chiffres_cles h2::after {
    display: none;
}
.elementor-widget-text-editor a:not(:has(img)) {
    position: relative;
    text-decoration: none;
    color: inherit;
    background-image: linear-gradient(
        transparent 50%,
        #fcc977 50%
    );
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: 100% 100%;
    transition: background-size 0.3s ease;
}
.main article .bloc_bleu h2 {
    color: #fff !important;
}
.elementor-widget-text-editor a:hover {
    background-size: 100% 150%;
}


.texte_2_colonnes {
    column-count: 2;
    column-gap: 55px;
    margin: 30px 0;
}
.texte_2_colonnes h2,
.texte_2_colonnes h3{
    break-inside: avoid;
}
@media (max-width: 768px) {
    .texte_2_colonnes {
        column-count: 1;
    }
    .bloc_couleur,
    .e-con.bloc_couleur {
        padding: 20px 20px 5px;
        padding-inline-end: 30px;
        padding-inline-start: 30px;
        margin-bottom: 30px;
    }
    .main article h2 {
        font-size: 25px;
        line-height: 1.2;
        padding-bottom: 15px;
        margin-bottom: 50px !important;
    }
}

