:root {
    --primary-h: 230;
    /* hue */
    --primary-s: 10%;
    /* saturation */
    --primary-l: 24%;
    /* lightness */
    --accent-h: 45;
    /* hue */
    --accent-s: 88%;
    /* saturation */
    --accent-l: 59%;
    /* lightness */
    --text-h: 0;
    /* hue */
    --text-s: 0%;
    /* saturation */
    --text-l: 100%;
    /* lightness */
    --background-h: 230;
    /* hue */
    --background-s: 9%;
    /* saturation */
    --background-l: 13%;
    /* lightness */
    --primary-font: "area-normal", sans-serif;
    --h1-font-size: 42px;
    --h2-font-size: 44px;
    --h3-font-size: 33px;
    --headings-line-height: 1.333333;
    --link-color: var(--accent-color);
    --border-radius: 80px;
    --transition: all 0.3s ease;
    ;
}


/* BRAND */


/* ===== */

.brand a {
    display: inline-block;
    transition: opacity .3s;
}

.brand a:hover {
    opacity: .75;
}

header .brand img.footer-only,
footer .brand img.header-only,
.rappel_telephonique .brand img.footer-only {
    display: none;
}


/*========= GENERAL ============== */


/* =============================== */

.slick-dots li button .slick-dot-icon:before {
    content: "";
}

.slick-dots li {
    margin: 0 4px;
    padding: 4px;
}

.slick-dots li button {
    height: 6px;
    width: 6px;
    border-radius: 100px;
    padding: 0;
    position: relative;
    background-color: rgba(218, 199, 199, 1);
}

.slick-dots li button::before {
    top: -4px;
    left: -4px;
    bottom: -2px;
    right: -2px;
    width: 14px;
    height: 14px;
    border-radius: 7px;
    opacity: 0;
}

.slick-dots li.slick-active button {
    width: 60px;
    height: 8px;
    opacity: 1;
    background-color: hsla(49, 86%, 89%, 1);
}

.slick-dots li.slick-active button::before,
.slick-dots li button:hover .slick-dot-icon,
.slick-dots li button:focus .slick-dot-icon {
    opacity: 1;
}

.slick-dots li button .slick-dot-icon {
    color: var(--text-color);
    opacity: 1;
}

.slick-dots li.slick-active button:hover .slick-dot-icon,
.slick-dots li.slick-active button:focus .slick-dot-icon {
    opacity: 0.7;
}

.slick-dots li.slick-active button .slick-dot-icon {
    color: hsla(49, 86%, 89%, 1);
    opacity: 1;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"] {
    margin-block: 0;
    font-family: var(--secondary-font);
    font-weight: bold;
}

h1.h1-geoloc span::before,
.title-1.h1-geoloc span::before {
    display: none;
}

h1.h1-geoloc span,
.title-1.h1-geoloc span {
    font-weight: 600;
    font-size: 28px;
}

.relativer {
    position: relative;
}

.card {
    position: relative;
    display: block;
}

.card a::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: block;
    z-index: 4;
}

.card-image {
    position: relative;
    overflow: hidden;
    height: 100%;
}

.card:hover img {
    transform: scale(1.15);
    transition: var(--transition);
}

.relative {
    position: relative;
}

div#blocHorsLigne {
    position: relative;
    z-index: 999 !important;
}

@media screen and (min-width: 993px) {
    .index-page .section {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
    .sticky-active .sticky-element.sticky-scroll-up {
        transform: translateY(0);
        background: var(--accent-color-20);
    }
    .sticky-element.sticky-scroll-down {
        background: var(--accent-color-20);
    }
    a.lien-categorie-catalogue.btn.small.outlined {
        margin: 10px;
        padding: 4px;
    }
}

@media (max-width: 1366px) and (min-width: 993px) {
    h1,
    .title-1 {
        font-size: 50px;
        margin: 0;
    }
}


/* SLIDER */


/* ====== */

.slick-slider {
    margin-bottom: 0;
}

.slick-slider .title-3 {
    padding-block: 24px;
}

.slider-slick .slick {
    height: 100%;
}

.slide-img {
    height: 100vh;
}

.slide-img.slide-01 {
    background: linear-gradient(0, hsla(230, 9%, 13%, 0.6), hsla(230, 9%, 13%, 0.6)), url("../assets/gifs/slider/slide-01.jpg");
    background-size: auto, cover;
    background-position: center;
}

.slide-img.slide-02 {
    background: linear-gradient(0, hsla(230, 9%, 13%, 0.6), hsla(230, 9%, 13%, 0.6)), url("../assets/gifs/slider/slide-02.jpg");
    background-size: auto, cover;
    background-position: center;
}

.slide-img.slide-03 {
    background: linear-gradient(0, hsla(230, 9%, 13%, 0.6), hsla(230, 9%, 13%, 0.6)), url("../assets/gifs/slider/slide-03.jpg");
    background-size: auto, cover;
    background-position: center;
}

.slide-img.slide-04 {
    background: linear-gradient(0, hsla(230, 9%, 13%, 0.6), hsla(230, 9%, 13%, 0.6)), url("../assets/gifs/slider/slide-04.jpg");
    background-size: auto, cover;
    background-position: center;
}

.slide-content {
    padding-block: 40px 144px;
}

.slider-dots-container {
    position: relative;
    z-index: 1;
}

.contenu-slide {
    position: absolute;
    top: 34vh;
    width: 100%;
    min-height: 509px;
}

.slick-slider {
    position: relative;
}

@media screen and (min-width: 1200px) {
    .slick-slider ul.slick-dots {
        position: absolute;
        top: 8%;
        right: 37%;
        transform: translate(-5px, -16px);
        pointer-events: auto;
    }
}

@media screen and (max-width: 992px) {
    /* .slick-track {
        height: 246px;
    } */
    a.lien-categorie-catalogue.btn.small.outlined {
        margin: 17px;
        line-height: 10px;
    }
    .fold {
        padding-block: 28px 70px;
    }
    .page-interne .fold {
        padding-block: 28px 65px;
    }
    nav#fil_ariane {
        padding-block: 44px;
    }
    .slide-img {
        background-size: auto, cover;
        background-position: center;
        height: 100vh;
    }
    .d-none {
        display: none;
    }
    .contenu-slide {
        position: absolute;
        top: 42vh;
        width: 100%;
    }
    .header-content .nav#main-nav li:not(.opened) a.selected {
        background-color: var(--primary-color);
    }
}

input#field_5 {
    background-color: var(--accent-color);
}


/* ********************************************HEADER****************************************** */

@media screen and (min-width: 1200px) {
    .container.menu-content {
        background-color: var(--background-color);
        border-radius: var(--border-radius);
        max-width: 1300px;
        margin: 1.5rem auto 0;
        backdrop-filter: blur(20px);
    }
}

@media screen and (min-width: 993px) {
    .header-contact {
        display: flex;
        text-align: center;
        align-items: center;
        gap: 9px;
    }
    .fold .index-contact {
        display: none;
    }
    .header-content .btn-devis {
        padding-right: 23px;
    }
    .header-content .devis-link {
        display: none;
    }
    .header-content .nav#main-nav>ul>li>a {
        padding: .5rem .75rem;
    }
    header address {
        color: white;
    }
    .header-content {
        background-color: hsla(230, 9%, 13%, 1);
    }
    .index-page .header-content,
    .contact-page .header-content,
    .page-interne .header-content,
    .actualites-detail .header-content,
    .actualites-listing .header-content,
    .catalogue-listing .header-content,
    .catalogue-detail .header-content,
    .devis-page .header-content {
        background-color: transparent;
    }
    .index-page,
    .contact-page,
    .page-interne,
    .actualites-detail,
    .actualites-listing,
    .catalogue-listing,
    .catalogue-detail,
    .devis-page {
        padding-top: 0!important
    }
    .sticky-active .header-content {
        background-color: hsla(46, 87%, 56%, 1);
    }
    header .header-content .nav ul li.sous_menu ul.dropdown li a {
        font-size: 14px;
        color: var(--accent-color);
    }
    header .header-content .nav ul li.sous_menu ul.ssdropdown li a {
        font-size: 12px;
        color: var(--accent-color);
    }
    .header-content .nav ul li a.selected,
    .header-content .nav ul li a:hover,
    .header-content .nav ul li:hover>a {
        text-decoration: underline;
        text-underline-offset: 12px;
        text-decoration-thickness: 3px;
        color: var(--accent-color) !important;
    }
    .header-content .nav ul li.sous_menu a::after {
        text-decoration: none;
    }
    a.lien-maps:hover {
        text-decoration: underline;
    }
}

@media screen and (min-width: 993px) and (max-width: 1300px) {
    .header-content .nav#main-nav>ul>li>a {
        padding: .5rem .5rem;
        font-size: 13px;
    }
    .header-content .nav ul li.sous_menu ul.dropdown li a {
        font-size: 12px;
    }
    .header-content .nav ul li.sous_menu ul.ssdropdown li a {
        font-size: 11px;
    }
    .header-content .btn-rdv a {
        padding: 13px 1rem;
        font-size: 13px;
    }
}

@media screen and (max-width: 992px) {
    .header-content .nav>ul>.sous_menu.opened>a,
    .header-content .nav .dropdown>.sous_menu.opened>a {
        width: calc(100% - 12rem);
    }
    .header-content .nav>ul>.sous_menu.opened>a,
    .header-content .nav .dropdown>.sous_menu.opened>a {
        left: 22px;
    }
    .index-contact {
        margin-bottom: 1rem;
        margin-top: 1rem;
    }
    .menu-mobile {
        height: 7.625rem;
        background-color: #fff;
    }
    .menu-mobile .brand .col {
        width: 120px;
    }
    .menu_opened .menu-mobile {
        height: 3.5rem;
        background-color: var(--primary-color-30);
    }
    .span-menu-burger {
        color: var(--accent-color);
        padding: 12px;
        background-color: var(--accent-color-90);
        border-radius: 100%;
    }
    .menu-mobile .menu-title {
        text-transform: capitalize;
        font-family: var(--secondary-font);
        font-size: 20px;
        font-weight: 400;
        line-height: 24px;
    }
    .fold-tel {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }
    .header-content .nav>ul>.sous_menu.opened>a,
    .header-content .nav .dropdown>.sous_menu.opened>a {
        background-color: transparent;
    }
    .header-content #nav-container .nav#main-nav ul li a,
    .header-content #nav-container .nav#topbar-nav ul li a {
        padding: 1.5rem 5%;
    }
    .header-content .nav ul li a.selected {
        color: var(--text-color);
    }
}

.header-content .nav .sous_menu .btnMenuLevel2,
.header-content .nav .sous_menu .btnMenuLevel3 {
    color: white;
}

@media screen and (max-width: 600px) {
    .fold-tel {
        justify-content: center;
        margin-bottom: 12px;
    }
    .btn-plus {
        margin-top: 19px;
    }
    .page-interne #encart-contact {
        padding: 41px;
    }
}

.divGenerateurRequired {
    margin-block: 10px;
}

@media screen and (max-width: 600px) {
    .header-content .nav>ul>.sous_menu.opened>a,
    .header-content .nav .dropdown>.sous_menu.opened>a {
        width: calc(100% - 10rem);
    }
}


/* ================================ Boutton ================================== */

[class*="btn"] a.btn,
.btn.outlined,
.btn.accent {
    border-radius: var(--border-radius);
    padding: 18px 24px;
    position: relative;
    overflow: hidden;
    min-width: max-content;
    line-height: 77%;
    color: black;
    border: 2px solid var(--accent-color);
    background-color: var(--accent-color);
}

.btn-text {
    line-height: 77%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform 0.5s ease-in-out;
}

.btn-wrapper {
    height: 18px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.btn:hover .btn-text {
    transform: translateY(-20px);
}

.btns {
    padding-top: 20px;
}

a#gtm-encart-catalogue-btn,
a#gtm-encart-actu-btn,
a.btn.accent.center.gtm-global-plus {
    background-color: transparent;
    color: white;
    border: 2px solid var(--accent-color);
}

a#gtm-encart-catalogue-btn:hover,
a#gtm-encart-actu-btn:hover,
a.btn.accent.center.gtm-global-plus:hover {
    background-color: var(--accent-color);
    color: black;
}


/* ================================ BLOC  1, 2 ,3================================== */

div#bloc-01,
.encart-avis,
#encart-actualites {
    background-color: var(--primary-color);
}

.bloc-text em {
    display: block;
    font-style: normal;
    color: var(--title-color);
    font-weight: 300;
    margin: 3rem 0 2rem;
    text-transform: uppercase;
    font-size: 1.25rem;
}

#bloc-02 .bloc-text,
#bloc-03 .bloc-text {
    padding-block: 2.5rem;
}

div#bloc-02 {
    padding-block: 0;
}

@media screen and (min-width: 993px) {
    #bloc-02 .bloc-text,
    #bloc-03 .bloc-text {
        padding-block: 5rem;
    }
    .bloc-text em {
        font-size: 1.5rem;
    }
    .bloc-right img {
        position: absolute;
        top: 0;
        left: 58%;
        width: 70%;
        right: -23%;
        height: 100%;
    }
    .bloc-left img {
        position: absolute;
        top: 0;
        right: 65%;
        width: 65%;
        left: -23%;
        height: 100%;
    }
    .contenu-b05,
    .content-b04,
    .contenu-b05 {
        max-width: 608px;
        margin-left: auto;
        margin-right: 0;
    }
    .contenu-b04 {
        max-width: 592px;
    }
}

.img-bloc05 {
    max-width: 1920px;
    margin: 0 auto 48px;
    position: relative;
    overflow: hidden;
}

.img-bloc05::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(hsla(215, 38%, 32%, 0.8), hsla(215, 38%, 32%, 0.8));
    z-index: 1;
    pointer-events: none;
}

.reseaux-sociaux.gtm-reseaux-sociaux svg {
    fill: white;
    margin-top: 20px;
}

.reseaux-sociaux a:hover svg {
    fill: #485afe;
}

#bloc-02 p em,
#bloc-03 p em,
#bloc-04 p em {
    display: block;
    font-style: normal;
    font-weight: bold;
    font-size: 24px;
    margin-block: 25px;
    line-height: 170%;
    text-transform: capitalize;
}

div#bloc-03 {
    padding-top: 0;
}


/* ************************************************ENCART CONTACT **********************************************/

#encart-contact,
#bloc-03 .img-bloc05 {
    background: linear-gradient(hsla(215, 38%, 32%, 0.8), hsla(215, 38%, 32%, 0.8)), url(../assets/gifs/bg-contact.jpg);
    background-size: cover;
}

#encart-contact .title-2 {
    margin-bottom: 25px;
}

#encart-contact .title-2::before {
    display: none;
}

#encart-contact .reseaux-sociaux {
    margin: 26px 0;
}

#encart-contact .reseaux-sociaux svg {
    fill: #fff;
}

#encart-contact p {
    margin-bottom: 1.5rem;
}

#encart-contact address {
    margin: 0;
}

#encart-contact h3 {
    margin: 0 0 12px;
    font-size: 1rem;
    font-weight: 700;
}

#encart-contact .card-contact {
    margin-bottom: 20px;
}

#encart-contact .btn-contact a {
    background-color: #fff;
    color: hsla(19, 31%, 14%, 1);
}

@media screen and (min-width: 993px) {
    .col.l4.s12.onScroll.bounceIn.col-info {
        background-color: black;
        max-width: 307px;
        padding: 60px;
    }
}

@media screen and (max-width: 992px) {
    .col.l4.s12.onScroll.bounceIn.col-info {
        padding-top: 20px;
    }
    #encart-contact .btn-contact {
        margin-bottom: 2rem;
    }
}


/* ******************************************* ENCART ACTUALITE ******************************************** */

.slick-actualites,
.actualites-encart-btn {
    margin-top: 60px;
}

.actualites-card-image {
    margin-bottom: 20px;
}

.actualites-card:hover .actualites-card-image a::before {
    background-color: hsla(215, 38%, 32%, 0.8);
}

.actualites-card-title a,
.lire-plus,
.link-catalogue a {
    text-decoration: none;
    color: white;
}

.actualites-card-title a {
    font-size: 20px;
    font-weight: 800;
}

.actualites-card-text {
    margin-block: 8px;
}

.actualites-card-image a img {
    width: 100%;
}

@media screen and (max-width: 992px) {
    .actualites-encart-btn {
        margin-top: 122px;
    }
}


/* ******************************************* CATALOGUE******************************************** */

.index-page .slick-catalogue {
    display: grid;
    grid-gap: 0;
    overflow: hidden;
}

.catalogue-card a.img-apres {
    display: none;
}

.index-page .slick-catalogue .col.s12:nth-child(2) .catalogue-card-image a,
.index-page .slick-catalogue .col.s12:nth-child(3) .catalogue-card-image a,
.index-page .slick-catalogue .col.s12:nth-child(5).catalogue-card-image a,
.index-page .slick-catalogue .col.s12:nth-child(6).catalogue-card-image a,
.index-page .slick-catalogue .col.s12:nth-child(8).catalogue-card-image a,
.index-page .slick-catalogue .col.s12:nth-child(9).catalogue-card-image a {
    height: 300px !important;
    object-fit: cover;
    overflow: hidden;
}

.catalogue-card-image a {
    position: relative;
    z-index: 0;
    display: block;
}

.card-title a,
.categorie.catalogue-categorie.catalogue-detail-categorie span {
    color: white;
    text-decoration: none;
    font-size: 24px;
    line-height: 24.2px;
}

.catalogue-card-image a::before {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    margin: auto;
    height: 580px;
    width: 484px;
    top: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
}

.btn-prestation a {
    text-decoration: none;
    color: white;
}

.info {
    padding-bottom: 72px;
}

.catalogue-card:hover .catalogue-card-image a::before {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) -36.11%, rgba(0, 0, 0, 0.6) 100%);
    z-index: 1;
}

.card.prestations-card.prestations-encart-card:hover svg path {
    stroke: black;
}

.catalogue-encart-card {
    position: relative;
    z-index: 0;
    color: white;
    overflow: hidden;
}

.catalogue-card-content .catalogue-card-text,
.catalogue-card-content .link-catalogue,
.catalogue-card-title a {
    opacity: 0;
    transform: translateY(20px);
    transition: var(--transition);
    pointer-events: none;
    color: white;
}

.catalogue-card-title {
    margin-bottom: 12px;
}

.catalogue-card:hover .catalogue-card-text,
.catalogue-card:hover .link-catalogue,
.catalogue-card:hover .catalogue-card-title a {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    overflow: hidden;
}

.catalogue-card:hover .card-content {
    bottom: 0;
    transition: var(--transition);
    padding-bottom: 24px;
}

.catalogue-card .card-content {
    position: absolute;
    padding: 0 24px;
    bottom: -46px;
    padding-bottom: 0;
    z-index: 2;
}

.catalogue-card-image img {
    height: 580px;
    width: 484px;
    object-fit: cover;
}



a.lien-categorie-catalogue.btn.small.outlined {
    padding-inline: 20px;
    line-height: 26px;
    color: white;
    border-color: white;
    font-size: 13px;
    background-color: transparent;
}

a.lien-categorie-catalogue.btn.small.outlined:hover {
    background-color: var(--accent-color);
    color: black;
    border-color: var(--accent-color);
}

.encart-btn.catalogue-encart-btn.align-right {
    margin-top: 22px;
}

.catalogue-listing-card {
    margin-bottom: 0;
    overflow: hidden;
}

.categorie.catalogue-categorie.catalogue-detail-categorie {
    line-height: 99px;
    text-align: right;
}

.categorie.catalogue-categorie.catalogue-detail-categorie span {
    font-size: 24px;
}

@media screen and (min-width: 993px) {
    .catalogue-card:hover a.img-avant {
        display: none;
    }
    .catalogue-card:hover a.img-apres {
        display: block;
    }
}

@media screen and (max-width: 600px) {
    a.lien-categorie-catalogue.btn.small.outlined {
        padding-inline: 5px;
        line-height: 15px;
    }
}


/* ******************************************* ENCART AVIS ******************************************** */

.slick-avis {
    margin-top: 4rem;
}

.slick-avis .card-content .row {
    flex-wrap: nowrap;
}

.avis-card {
    padding: 1rem;
}

.avis-card .avis-card-text {
    padding-left: 4.75rem;
    height: 6.5rem;
    margin-top: 0.5rem;
}

.avis-name {
    font-weight: 600;
    color: var(--title-color);
}


.avis-date {
    margin-left: -1rem;
    font-size: .625rem;
    color: white;
}

.encart-avis .row.s-middle.s-start {
    padding-top: 0.25rem;
}


/* *************************************************Points forts********************************* */

.pt-fort {
    padding: 20px;
}

.pt-fort .number {
    display: inline-block;
    border: 1px solid var(--accent-color);
    border-radius: var(--border-radius);
    padding: 10px 20px;
    font-size: var(--h2-font-size);
    font-weight: bold;
    color: white;
    margin-bottom: 15px;
}


/* *************************************************Prestation********************************* */

@media screen and (min-width: 993px) {
    div#encart-prestations {
        padding: 120px 0;
    }
}

.card-image.prestations-card-image.prestations-encart-card-image {
    margin-bottom: 20px;
}

.card.prestations-card.prestations-encart-card {
    min-height: 365px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    background-color: var(--primary-color);
    padding: 24px;
}

.card.prestations-card.prestations-encart-card:hover,
.prestations-encart-card:hover span.link-more,
.prestations-card-title:hover {
    background-color: var(--accent-color);
    color: black;
}

.card.prestations-card.prestations-encart-card:hover .prestations-card-title a,
.card.prestations-card.prestations-encart-card:hover .prestations-card-title svg {
    color: black;
    fill: black !important;
}

.card.prestations-card.prestations-encart-card:hover {
    display: inline-block;
    transform: translateY(-29px);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

span.link-more,
.sous-titre {
    color: var(--accent-color);
    font-weight: 600;
}

.sous-titre {
    font-size: 20px;
    text-transform: uppercase;
}

@media screen and (max-width: 992px) {
    .card.prestations-card.prestations-encart-card {
        margin: auto;
    }
}


/* *************************************************Footer ******************************** */

body:not(.index-page) footer .section.footer-1 {
    padding: 2rem 0 1.5rem;
}

footer .text span {
    margin-inline: 10px;
}

footer .lien-maps span {
    display: block;
}

@media screen and (min-width: 993px) {
    div#bloc-01 h1.h1-geoloc {
        max-width: 509px;
    }
    #footer-nav .row-menu {
        flex-wrap: nowrap;
    }
    #footer-nav .nav>ul {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1.5rem;
        margin: 1.5rem 0;
    }
    footer #footer-nav .nav ul li.sous_menu ul.dropdown {
        bottom: 100%;
    }
}

@media screen and (max-width: 992px) {
    footer #footer-nav .nav ul li.sous_menu ul.dropdown {
        min-width: 18%;
        top: 100%;
    }
    .footer-contact {
        margin-top: 2rem;
    }
    #footer-nav nav a {
        font-size: 14px;
    }
}

@media screen and (max-width: 1300px) and (min-width: 993px) {
    #footer-nav a {
        font-size: 13px;
    }
    #footer-nav .nav ul li.sous_menu ul.dropdown {
        font-size: 11px;
    }
}

.footer-row-contact {
    display: flex;
    gap: 6px;
}

footer address {
    display: flex;
    margin: 0;
    flex-direction: column;
}

footer .section.footer-1 {
    padding: 39px 0 1.5rem;
}

footer .footer-1 .title-4 {
    color: white;
    font-weight: 600;
    font-family: var(--primary-font);
    font-size: 16px;
    line-height: 24px;
    margin: 0 0;
}

.footer-contact {
    display: flex;
    flex-direction: column;
    row-gap: 12px;
}

.footer-1 address a,
.footer-1 .text {
    font-weight: 400;
    line-height: 26px;
}

footer .siret {
    font-weight: 400;
    line-height: 24px;
}

#footer-nav .nav ul li.sous_menu ul.dropdown {
    position: absolute;
    left: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    width: max-content;
    min-width: 100%;
    margin: 0;
    padding: 0;
    font-weight: normal;
    z-index: 1;
    background-color: black;
    border: 1px solid var(--primary-color);
}

#footer-nav .nav ul li.sous_menu>a::after {
    position: absolute;
    right: 0.625rem;
    display: block;
    font-family: var(--icon-font);
    line-height: 0;
    content: "\e5cf";
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin: -0.125em 0 0 0.25em;
    text-decoration: none;
}

#footer-nav .no-menu,
#footer-nav .contact-link {
    display: none;
}

#footer-nav .container {
    max-width: 1454px;
}

#footer-nav nav a {
    font-weight: 400;
    line-height: 24px;
}

#footer-nav .nav>ul>li {
    margin-bottom: 8px;
}

#footer-nav .nav ul li.sous_menu ul.dropdown>li:not(:last-child) {
    border-bottom: 1px solid #e0e0e0;
}

#footer-nav .nav ul li.sous_menu {
    position: relative;
}

#footer-nav .nav ul li.sous_menu:hover ul.dropdown {
    display: flex;
}

#footer-nav .nav ul li.sous_menu ul.dropdown>li a {
    padding: 0.5rem;
    margin: 0;
    font-size: 13px;
    display: block;
    color: var(--text-color);
}

.footer-2 {
    padding: 24px 0 48px;
}

#footer-nav nav a {
    color: white;
    position: relative;
    padding: 8px 0;
}

#footer-nav .nav ul li.sous_menu ul.dropdown>li a:hover,
#footer-nav .nav ul li.sous_menu ul.dropdown>li a.selected {
    background: var(--accent-color);
}

.footer-2 nav a,
.page-404 footer a {
    line-height: 24px;
    color: white;
    font-size: 16px;
    font-weight: 600;
}

a.lien-maps:hover {
    text-decoration: underline;
}

.footer-2 nav a:hover,
.page-404 footer a:hover {
    color: white;
    text-decoration: underline;
}

footer #footer-nav ul li>a.selected:before,
footer #footer-nav ul li>a:hover:before {
    width: 100%;
    left: 0;
    right: 0;
}

footer #footer-nav ul>li>a::before,
footer #footer-nav ul>li>a:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    height: 2px;
    background-color: var(--accent-color);
    width: 0;
    transition: var(--transition);
}

footer svg {
    fill: white;
}

span.lien-maps span {
    display: block;
}


/* PAGE ACTU DETAIL */

.container_actualite .clear_both {
    margin-bottom: 0px;
}

body.actualites-detail .listing-autres-actus-categorie {
    height: max-content;
    padding: 24px;
    margin-bottom: 24px;
    background-color: var(--primary-color);
}

.col.detail-actu {
    margin-top: 22px;
}

body.actualites-detail .listing-autres-actus-categorie .detail-btn {
    text-align: center;
}

#listing-autres-actus-categorie ul li ul {
    padding-left: 0;
}

#listing-autres-actus-categorie ul li ul li {
    list-style: none !important;
}

#listing-autres-actus-categorie ul li a {
    text-decoration: none;
}

#listing-autres-actus-categorie ul li a:hover {
    text-decoration: underline;
}

.fb-like.fb_iframe_widget {
    position: relative;
    top: 6px;
}

.listing-autres-actus-categorie-mois {
    margin-block: 5px;
    display: block;
}


/* pagination actu*/

.paginationControl {
    letter-spacing: normal;
    text-align: center;
    padding: 40px 0 0;
}

.paginationControl a,
.paginationControl span {
    display: inline-block !important;
    padding: 0 10px;
    color: white;
    font-size: 14px;
    line-height: 30px;
    background: var(--primary-color);
    border: 1px solid #dcdde1;
}

.paginationControl a:hover,
.paginationControl span.selected {
    color: white;
    background: var(--accent-color);
}

.paginationControl span.disabled {
    color: #353b48;
    background: #dcdde1;
}

@media screen and (min-width: 601px) {
    .actualites-listing .recherche_actu #recherche_actu_submit {
        margin-left: .5rem;
        width: 3rem;
        padding: 7px;
    }
}


/* ****************************************PAGES INTERNES******************************** */

.contact-page .s-middle {
    flex-wrap: nowrap;
    height: 100%;
}

.contact-page .s-stretch {
    flex-wrap: nowrap;
}

.contact-hero .title-2 {
    font-size: 35px;
    margin: 0;
    line-height: normal;
    color: #fff;
    padding: 0;
}

#input_recherche_actu::placeholder {
    color: white;
}

.contact-hero p.intro {
    color: #fff;
}

.page-interne .sc-content #relance {
    margin-top: 0;
}

.page-interne #container {
    padding: 0;
}

.page-interne .hero-bg,
.hero-interne {
    margin-top: -4%;
    position: relative;
}

.actualites-listing div#fil_ariane {
    margin-block: 44px;
}

div#fil_ariane {
    margin-top: 44px;
}

.actualites-detail .hero-interne {
    padding: 88px 0 56px;
    margin-top: 3rem;
}

.actualites-detail .hero-interne h1 {
    margin: 0;
}

.contact-hero {
    background: linear-gradient(180deg, rgba(40, 32, 33, 0.5) 0%, rgba(40, 32, 33, 0.8) 100%), url('../assets/gifs/slider/slide-01.jpg');
    background-size: cover;
    background-position: left;
}

.plan-site h1 {
    margin-bottom: 2rem;
}

.page-interne .hero-bg::before,
.hero-interne::before {
    position: absolute;
    content: "";
    background: linear-gradient(180deg, rgba(40, 32, 33, 0.5) 0%, rgba(40, 32, 33, 0.8) 100%), url('../assets/gifs/slider/slide-01.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    width: 100vw;
    left: 50%;
    transform: translate(-50%);
    top: 0;
    height: 100%;
    z-index: -1;
    background-position: center;
    margin: 0 auto;
}

nav.fil-ariane.gtm-fil-ariane {
    margin-block: 39px;
}

.page-interne .ac-include .container {
    width: 100%;
}

.page-interne p>em {
    font-style: normal;
    display: block;
    text-decoration: none;
    padding: 20px 0;
    border-top: 1px solid hsla(36, 35%, 47%, 1);
    border-bottom: 1px solid hsla(36, 35%, 47%, 1);
}

@media screen and (min-width: 601px) {
    .cp_ville {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
    }
    .cp_ville>p {
        width: calc(50% - 6px);
    }
}

.page-interne .sc-content .ac-doubleColonne .clear_both {
    margin-bottom: 2.35rem;
}

.hero-interne p {
    margin: 0;
}

.page-interne #encart-contact {
    width: 100vw;
    left: 50%;
    transform: translate(-50%);
    top: 0;
    height: 100%;
    position: relative;
    padding-block: 6.5rem;
}

.page-interne .ac-doubleColonne .ac-doubleColonne {
    margin: 1.5rem 0 0;
}

.catalogue-listing .btn-cat {
    margin-bottom: 2rem;
}

body:has(.hero-interne) main>.section {
    padding-top: 0;
}

.actualites-listing main>.section {
    margin-top: -2rem;
}

.actualites-detail main>.section {
    margin-top: -4rem;
}

.hero-bg span {
    font-weight: 700;
}

.page-interne .ac-stat .ac-colonne p {
    margin: 0;
}

.devis-page li {
    margin: 0;
    list-style: none;
}

fieldset {
    margin-top: 20px;
}

.devis-page #field_44 fieldset label.optional {
    display: none;
}

body.politique-de-confidentialite h1,
body.plan-site h1 {
    padding-block: 50px;
}

@media screen and (min-width: 993px) {
    .contact-hero {
        padding: 13rem 0 6rem;
    }
    .page-interne .sc-content .ac-doubleColonne .ac-colonne_1 img {
        width: 84.3%;
        margin-right: auto;
        max-width: 536px;
    }
    .actualites-detail .hero-interne {
        padding: 200px 0 56px;
    }
    .page-interne .hero-bg,
    .hero-interne {
        padding: 223px 0 123px;
    }
    nav#fil_ariane {
        padding-block: 50px;
    }
    .sc-content #relance ul li a {
        color: var(--accent-color);
    }
    .page-interne h1 {
        font-size: 52px;
        font-weight: 500;
    }
    .actualites-detail .hero-interne h1,
    .catalogue-listing .hero-interne h1,
    body.actualites-listing .hero-interne .title-1 {
        margin-block: 92px 0;
    }
    .hero-bg span,
    .hero-interne .title-1 {
        font-size: 45px;
        letter-spacing: 0px;
        margin: 0 0 0;
        padding-block: 22px 0;
    }
    .hero-interne .title-1 {
        text-align: center;
    }
    .contact-page .intro {
        margin-bottom: 0;
    }
    .hero-bg h1,
    .hero-interne h1 {
        font-size: 52px;
        margin-top: 74px;
    }
    .ac-doubleColonne p:last-of-type {
        margin-bottom: 0;
    }
    .page-interne .sc-content img {
        height: 100%;
        object-fit: cover;
    }
    .page-interne .sc-content .ac-stat.ac-doubleColonne img {
        height: auto;
        width: auto;
        margin: auto;
    }
    .page-interne .sc-content .ac-doubleColonne.bloc-h2 {
        align-items: center;
    }
    .page-interne .sc-content .clear_both,
    #container .sc-content #relance {
        margin-block: 6.35rem;
    }
    .ac-doubleColonne h2 {
        margin: 0 0 1.5rem;
    }
    .page-interne #encart-contact {
        padding: 100px 0;
    }
}

.page-interne .sc-content .ac-doubleColonne {
    align-items: center;
}

@media screen and (max-width: 992px) {
    footer .title-4,
    .title-contact {
        font-size: 20px;
    }
    .page-interne .ac-stat .ac-colonne {
        margin-bottom: 1rem;
    }
    [class*="actualites"] main>.section {
        margin-top: -1rem;
    }
    .page-interne .hero-bg,
    .hero-interne,
    .contact-hero {
        padding: 80px 0;
    }
    h1,
    .title-1 {
        font-size: 30px;
        line-height: 39px;
    }
    h1 span,
    h1.h1-geoloc span {
        font-size: 20px;
        line-height: 30px;
    }
    h2,
    .title-2 {
        font-size: 23px;
        line-height: normal;
    }
    h2,
    .title-3 {
        font-size: 24px;
    }
    body[class*="listing"] .hero-interne .title-marketing,
    .hero-bg span {
        font-size: 32px;
    }
    .page-interne #container .ac-doubleColonne .ac-colonne img {
        width: auto;
        margin: 1rem auto;
    }
    .page-interne .bloc-bg {
        padding: 2rem 0;
    }
}

.page-interne .sc-content .bloc-card section {
    align-items: center;
    min-height: 184px;
    border: 1px solid var(--accent-color);
    padding: 20px;
}

.ac-1v1 .ac-colonne {
    padding: 20px;
    min-height: 636px !important;
    border: 2px solid var(--primary-color);
}

@media screen and (max-width: 600px) {
    a#gtm-detail-catalogue-retour {
        margin-top: 17px;
    }
    .btn-tel {
        justify-content: center;
    }
    [class*="btn"] .accent.btn {
        font-size: 13px;
        padding: 10px 14px;
    }
}