:root {
  /* COLOR */
  /* ===== */
  --primary-h: 221; /* hue */
  --primary-s: 100%; /* saturation */
  --primary-l: 45%; /* lightness */

  --accent-h: 210; /* hue */
  --accent-s: 85%; /* saturation */
  --accent-l: 40%; /* lightness */

  --text-h: 218; /* hue */
  --text-s: 28%; /* saturation */
  --text-l: 17%; /* lightness */

  --background-h: 0; /* hue */
  --background-s: 0%; /* saturation */
  --background-l: 100%; /* lightness */

  --accent50: hsla(200, 33%, 96%, 1);


  --gray0: hsla(0, 0%, 100%, 1);
  --gray50: hsla(210, 40%, 98%, 1);

  --gray900: hsla(219, 36%, 11%, 1);
  --background-2:var(--accent50);
  --title-color: var(--gray900);

  /* font size */
  /* ===== */

  --display2xl: 61px;
  --displayxl: 40px;
  --displaylg: 35px;
  --displaymd: 31px;
  --displaysm: 25px;
  --displayxs: 20px;

  --textlg: 20px;
  --textmd: 16px;
  --textsm: 13px;
  --textxs: 10px;

  --h1-font-size: var(--display2xl);
  --h2-font-size: var(--displayxl);
  --h3-font-size: var(--displaylg);
  --h4-font-size: var(--displaymd);
  --h5-font-size: var(--displaysm);
  --h6-font-size: var(--displayxs);

  --h1-mobile-font-size: var(--displaymd);
  --h2-mobile-font-size: var(--displaysm);
  --h3-mobile-font-size: var(--displayxs);
  --h4-mobile-font-size: var(--textlg);
  --h5-mobile-font-size: var(--textsm);
  --h6-mobile-font-size: var(--textxs);

  /* FONT FAMILY */

  /* ===== */
  --primary-font: "Inter", sans-serif;
  --secondary-font: "Plus Jakarta Sans", sans-serif;

  /* RADIUS */
  /* ===== */
  --border-radius: 8px;
  --button-border-radius: 8px;

  /* FONT WEIGHT */
  /* ===== */
  --font-weight-regular: 400;
  --font-weight-semi-bold: 600;
  --font-weight-bold: 800;
  --line-height: 1.5rem;

  --transition: 0.3s all ease-in-out;
}


/* =============================== */
/*           GENERAL                 */
/* =============================== */
a[href="#"] {
  cursor: default;
}
a:focus,
[id*="formulaire"] .btn:focus {
    outline: none;
}

a:focus-visible,
.card a:focus-visible,
[id*="formulaire"] .btn:focus-visible {
    outline: 3px solid #0057B8;
    /* Couleur bleu bien contrastée */
    outline-offset: 4px;
    border-radius: 4px;
    transition: outline 0.2s ease;
}

[class*="btn"] a.btn,
[id*="formulaire"] .btn {
    padding: 12.5px 1.4rem;
    font-weight: 600;
    letter-spacing: 0px;
}

[class*="btn"] .accent.btn {
    border: 1.5px solid var(--accent-color);
}

[class*="btn"] .accent.btn:hover {
    background-color: #fff;
    color: #1E1E1E;
}
.accent.btn:hover svg path {
stroke:#1E1E1E
}

[class*="btn"] a.btn svg {
    margin-left: .5rem;
}

.contact-page [id*="formulaire"] .btn.primary {
    border-color: var(--accent-color);
    background-color: var(--accent-color);
    border: 2px solid var(--accent-color);
}

.contact-page [id*="formulaire"] .btn.primary:hover {
    background-color: var(--accent-color-30);
}





[class*="btn"] a.btn:not(.accent):hover path {
    stroke: #fff;
}

.btn.outlined {
background: #D7F4FF;
border-color: #D7F4FF;
color: #11365A;
font-size: 16px;
font-weight: 600;
padding: 12.5px 19px
}
.btn.outlined:hover {
  border-color: #0F67BE;
  background: #fff;
  color: #11365A;
}


.politique-de-confidentialite main .btn-contact {
  margin-top: 1rem;
  width: max-content;
}
.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;
}
.catalogue-card-image img,.actualites-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-interne .sc-content .clear_both {
  margin-bottom: 60px;
}

a,
.card-image img {
  transition: var(--transition);
}
p {
  margin: 12px 0 1.5rem;
}
p strong {
  font-weight: 800;
}
body.contact-page main .section:first-child .row .col .row {
  flex-wrap: nowrap;
}
#blocHorsLigne {
  z-index: 999999 !important;
}
#fil_ariane, .fil-ariane {
  font-size: 14px;
}

a, p {
  line-height: var(--line-height);
}
main p a {
  color: inherit;
  text-decoration: underline;
}
h1.h1-geoloc,#bloc-01 h1.h1-geoloc span {
  color: var(--background-color);
}
h1.h1-geoloc span::before, .title-1.h1-geoloc span::before{content: "";
margin-right: 0;
}
.blocs {
  position: relative;
}
main p a {
  color: #119CFF;
  text-decoration: none;
}
main p a:hover {
  text-decoration: underline;
  color: #11365A;
}
h1,
.title-1 {
  font-size: var(--h1-mobile-font-size);
  line-height: var(--h1-mobile-font-size);
}
h2,
.title-2 {
  font-size: var(--h2-mobile-font-size);
  line-height: var(--h2-mobile-font-size);
}
h3,
.title-3,h1.h1-geoloc span, .title-1.h1-geoloc span,h1 span, .title-1 span {
  font-size: var(--h3-mobile-font-size);
  line-height: var(--h3-mobile-font-size);
}
h4,
.title-4 {
  font-size: var(--h4-mobile-font-size);
  line-height: var(--h4-mobile-font-size);
}
h1,
h2,
h3,
h4,
h5,
[class*="title"],
[class*="title"] a,
h1 span,
h1.h1-geoloc span,
#relance a {
  font-family: var(--secondary-font);
  font-weight: var(--font-weight-bold);
  margin: 0;
}
h1 span{
  margin-top: 8px;
}
.index-page h1,
.page-interne h1 {
  margin: 0;
}
.slick-catalogue,
.slick-actualites,
.slick-prestations,
.slick-avis,.slick-points-fort {
  margin-top: 48px;
}
.card-title,
.card-title a {
  font-size: var(--displayxs);
  line-height: var(--displayxs);
  text-decoration: none;
}
body :where(address) {
  margin: 0;
}
#fil_ariane {
  margin: 40px 0;
}
.fil-ariane {
  margin-bottom: 25px;
}
.sitemap-nav li {
  margin: 10px 0;
}
@media screen and (max-width: 992px) {
  .blocs img,
  .page-interne .sc-content .ac-doubleColonne .ac-colonne img,
  .ac-colonne img,
  #listing-autres-actus-categorie {
    display: block;
    max-width: 450px;
    max-height: 400px;
    margin: 30px auto;
    object-fit: cover;
    width: 100%;
  }

}
@media screen and (max-width: 600px) {}
@media screen and (min-width: 993px) {
  
  #fil_ariane, nav#fil_ariane, .fil-ariane {
    font-size: 14px;
}
nav#fil_ariane, #fil_ariane {
  margin: 3em 0em 3em 0em;
}
  .contact-page .intro {
    margin-bottom: 0;
  }
  .page-interne .sc-content .clear_both {
    margin-bottom: 80px;
  }

  h1 {
    font-size: var(--h1-font-size);
    line-height:77px;
  }
  .index-page h1{
    margin-bottom: 20px;
  }
  h2,
  .title-2, .title-1 {
    font-size: var(--h2-font-size);
    line-height: var(--h2-font-size);
  }
  h3, .title-3,h1.h1-geoloc span, .title-1.h1-geoloc span,h1 span, .title-1 span{
    font-size: var(--h3-font-size);
    line-height: var(--h3-font-size);
  }
  h4,
  .title-4 {
    font-size: var(--h4-font-size);
    line-height: var(--h4-font-size);

  }

  .index-page main .section {
    padding: 120px 0;
  }
}


/* =============================== */
/*           END              */
/* =============================== */

.row-btn {
    display: flex;
    align-items: center;
    gap: 12px;
}



@media screen and (min-width:600px) {
  [class*="btn"] a.btn, .btn.primary {
    width: auto;
  }
}



/* =============================== */
/*           BRAND                 */
/* =============================== */

.brand a {
  display: inline-block;
  transition: opacity 0.3s;
}
.brand a:hover {
  opacity: 0.75;
}
header .brand img.footer-only,
footer .brand img.header-only,
.rappel_telephonique .brand img.footer-only {
  display: none;
}

/* =============================== */
/*           HEADER                 */
/* =============================== */
.header-contact a.tel{
  font-size: 16px;
  font-weight: 600;
  color: #1E1E1E;
}
@media screen and (max-width: 600px) {
  
  .fold-tel {
    justify-content: center;
    margin-bottom: 12px;
  }
  .index-contact .tel {
    text-align: center;
    display: block;
    margin: auto;
  }
  .fold .btn-rdv, .fold .btn-contact, .fold .btn-devis {
    margin-top: 10px;
  }

}

@media screen and (max-width: 992px) {
  header a.tel {
    font-size: 20px;
}
.menu_opened .menu-mobile {
  height: 3.5rem;
  background-color: var(--primary-color-darken);
}
  .menu-mobile {
    height: 90px;
    background-color: var(--background-color);
}

  .header-content .nav#topbar-nav li:not(.opened) a {
    padding: 1.5rem;
    text-decoration: none;
    border-bottom: solid 1px var(--brand200);
  }
  .header-content .nav#main-nav li:not(.opened) a {
    padding: 1rem;
    border-color: var(--brand200);
  }
  .header-content .nav#main-nav li.index-link a {
    border-top: solid 1px var(--brand200);
  }
  .header-content nav a {
    font-weight: var(--font-weight-bolder);
    font-size: var(--textlg);
  }
  .fold {
    margin-top: 16px;
  }
  .header-content .nav > ul > .sous_menu.opened > a,
  .header-content .nav .dropdown > .sous_menu.opened > a {
    font-size: var(--textmd);
  }
  .header-content .nav ul li a.selected {
    color: var(--accent-color);
  }
  .index-contact {
    margin-bottom: 1rem;
    margin-top: 1rem;
  }
  .sticky-active .menu-mobile {
    box-shadow: 0px 4px 4px 0px hsla(0, 0%, 0%, 0.15);
  }
  .span-menu-burger {
    background: var(--accent-color);
    color: var(--gray0);
    padding: 12px;
    border-radius: 8px;
}
 
  .header-content .nav>ul>.sous_menu.opened>a,
  .header-content .nav .dropdown>.sous_menu.opened>a {
    width: calc(100% - 12rem); left: 22px;
  }
  .sous_menu.selected.opened a {
    background-color: transparent!important;
  }

  .fold-tel {
    display: flex;
    align-items: center;
    gap: .5rem;
  }
  .fold-tel .tel {
    font-size: 20px;
    font-weight: 400;
    line-height: 31px;
    color: var(--text-color)
  }

}
@media screen and (min-width: 993px) {
  .main-header-content {
    padding: 24px 0;
  }
  .header-content .nav ul li.sous_menu>a::after {
    content: url(../assets/gifs/Down.svg);
    text-decoration: none;
}
  li.firstLi.no-menu-desk {
    display: none;
  }
  .header-content .nav ul li.sous_menu ul.dropdown > li a {font-size: 13px;}
  .header-content .nav#main-nav > ul {
    gap:24px
  }
  .header-content .nav#main-nav > ul > li > a {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    padding: 8px 0;
    position: relative;
  }
  .header-content .nav#main-nav>ul>li>a::before,
  .header-content .nav#topbar-nav>ul>li>a:before,
  .nav-footer a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    height: 2px;
    background-color: #119CFF;
    width: 0;
    transition: var(--transition);
  }
  .header-content .nav ul li.sous_menu ul.dropdown > li:hover a, .header-content .nav ul li.sous_menu ul.dropdown > li a.selected{
    background-color: #119CFF;
    color: var(--gray0);
  }
 
  .header-content .nav#main-nav>ul>li>a.selected:before,
  .header-content .nav#main-nav>ul>li>a:hover:before,
  .header-content .nav#topbar-nav>ul>li>a:hover:before,
  .header-content .nav#topbar-nav>ul>li>a.selected:before,
  .nav-footer a:hover::before,
  .nav-footer a.selected::before {
    width: 100%;
    left: 0;
    right: 0;
  }
  .header-contact {
    display: flex;
    align-items: center;
    gap: .5rem;
  }

}
@media screen and (min-width: 1280px) {

}




/* =============================== */
/*           FOLD + SLIDER         */
/* =============================== */
.slider-slick {
  display: block;
}
.slider-slick {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}
.slider-slick .slick {
  height: 100%;
}

.slide-img {
  position: relative;
  min-height: auto;
  background-size: cover;
  background-position: center;
  text-align: center;
  z-index: 0;
}
.slide-img::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(22, 40, 59, 0.7);
  z-index: 0;
}

.slide-content {
  color: var(--background-color);
  position: relative;
  z-index: 1;
  padding-block: 80px;
  margin: 0 auto;
}
.slide-img.slide-01 {
  background-image: url("../assets/gifs/slider/slide-01.jpg");
}
.slide-img.slide-02 {
  background-image: url("../assets/gifs/slider/slide-02.jpg");
}
.slide-img.slide-03 {
  background-image: url("../assets/gifs/slider/slide-03.jpg");
}
.slide-img .container {
  min-height: auto;
}
.fold .slick-slider {
  margin-bottom: 0;
}
.logo-slider {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

@media screen and (max-width: 992px) {  
  .slide-content .boutons {
    display: none;
  }
  .fold-top,
  .fold-interne {
    padding: 12px 5%;
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  .fold .btn-contact {
    margin-top: 10px;
  }


}
@media screen and (min-width: 993px) {
  .slide-content {
    padding-block: 135px;
  }


}


/* =============================== */
/*           ENCART PRESTATIONS      */
/* =============================== */

#encart-prestations{
  background: #EDFBFF;
}
#encart-prestations .title-2{
  margin: 0;
}
#encart-prestations .text {
  margin-top: 20px;
  max-width: 872px;
  margin-left: auto;
  margin-right: auto;
}
#encart-prestations .titre-decoration::before,
#encart-prestations .titre-decoration::after {
  content: "";
  position: absolute;
  top: 55%;
  width: 12vw;
  height: 1px;
  background-color: var(--accent800);
}

.card-image {
  position: relative;
  overflow: hidden;
  border-radius: 0;
}
.card-image img {
  transition: 0.3s;
  width: 100%;
}
.prestations-card-image a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)),
linear-gradient(180deg, rgba(22, 40, 59, 0) 0%, rgba(22, 40, 59, 0.6) 100%);

    z-index: 1;
}

.card:hover img {
  transform: scale(1.15);
  border-radius: 4px;
}
.prestations-card,
.prestations-card img {
  min-height: 410px;
  object-fit: cover;
  position: relative;
}
.prestations-card-content a {
  color: white;
  text-decoration: none;
  position: relative;
}
.prestations-card-content {
  position: absolute;
  bottom: 0;
  padding: 24px;
}
.prestations-card-title a {
  font-size: 24px;
  text-decoration: none;
  color: white;
}
.prestations-card-image a {
  position: relative;
  z-index: 0;
  display: block;
}


@media screen and (min-width: 993px) {

  .prestations-card-content {
    display: flex;
    flex-direction: column;
  }
  .prestations-card-content a.link-prest {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-in-out, transform 0.3s ease-in-out,
      max-height 0.2s ease-in-out;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
  }
  .prestations-card:hover .prestations-card-content a.link-prest {
    opacity: 1;
    transform: translateY(0);
    max-height: 150px;
    margin-top: 20px;
  }
}
@media screen and (max-width: 600px) {
  #encart-prestations .titre-decoration::before, #encart-prestations .titre-decoration::after {
    display: none;
  }
  .header-content #nav-container {
    margin-top: 48px;
}
}


/* =============================== */
/*           BLOC 01     */
/* =============================== */



/* =============================== */
/*           ENCART devis    */
/* =============================== */
html.devis .g-recaptcha {
  margin-bottom: 30px;
}
@media screen and (max-width: 992px) { 
  
}
@media screen and (max-width: 600px) {
  
}
@media screen and (min-width: 993px) {

}

/* =============================== */
/*           ENCART AVIS     */
/* =============================== */
.encart-avis .title-2 {
  max-width: 648px;
  margin-left: auto;
  margin-right: auto;
}

.encart-avis .container{
  position: relative;
}
.section-avis {
  padding: 2rem 0;
}


.avis-card {
  padding: 24px;
  color: var(--text-color);
  position: relative;
  background-color: #EDFBFF;
  border-radius: 8px;
  font-weight: 400;
}
.avis-card .avis-card-text {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  padding-left: 76px;
  height: 96px;
  margin: 8px 0 4px;
}
.avis-name {
  font-style: normal;
  font-weight: 700;
  color: var(--title-color);
  font-size: var(--textmd);
  line-height: 24px;
}
.encart-avis .align-right button.show-more.btn.small {
  padding: 0 !important;    color:#119CFF;
}
.avis-date {
  font-size: var(--textxs);
  font-style: normal;
  font-weight: 400;
  margin-left: -16px;
  color: hsla(209, 17%, 59%, 1);
}
.encart-avis .row.s-middle.s-start {
  padding-top: 4px;
}

.date.avis-date.card-date.avis-card-date.avis-encart-card-date.small,
.encart-avis .avis-card.js-more .avis-card-text::after {
  display: none;
}

@media screen and (min-width: 993px) {
  .encart-avis .container:before{
    content: "";
    position: absolute;
    background: url(../assets/gifs/before-avis.png);
    width: 443px;
      height: 161px;
      top: 0;
      left: -298px;
  }
  .encart-avis .container:after{
    content: "";
    position: absolute;
    background: url(../assets/gifs/after-avis.png);
    width: 348px;
      height: 137px;
      top: 0;
      right: -272px;
  }

.section-avis {padding: 80px 0;}
.slick-avis {
  margin-bottom: 0;
}
.full-img{
  margin-bottom: 48px;
}


}

/* =============================== */
/*   ENCART ACTUALITES               */
/* =============================== */
/* ***************************************ACTUALITES*********************************** */

#encart-actualites {
    background: #EDFBFF;
}

#encart-actualites .title-2:before, #encart-prestations .title-2:before,
 .encart-avis .title-2:before, #encart-pt-fort .title-2:before{
  content: "";
  position: relative;
  background: url(../assets/gifs/before-color.png);
  width: 256px;
    height: 10px;
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
}

#encart-catalogue .title-2:before{
  content: "";
  position: relative;
  background: url(../assets/gifs/before-color.png);
  width: 256px;
    height: 10px;
    display: block;
    margin: 0 auto;
    margin-bottom:20px;
}

#encart-actualites .title-2, #encart-prestations .title-2, .encart-avis .title-2, 
#encart-catalogue .title-2, #encart-pt-fort .title-2{
    position: relative;
    color: #1E1E1E;
    font-weight: 800;
}
#encart-actualites p{
  max-width: 648px; 
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.actualites-card-image {
    height: 324px;
}

.actualites-date,
.actualites-card .card-link {
    color: #1E1E1E;
    font-weight: 400;
}

.actualites-card-image img,
.actualites-card-image a {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .7s;
}

.actualites-card-image a {
    position: relative;
    overflow: hidden;
}

.actualites-card-image a::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.actualites-card:hover .actualites-card-image a::before,
.actualites-card:focus .actualites-card-image a::before {
    background: hsla(217, 45%, 10%, 0.4);
    z-index: 2;
}

.actualites-card:hover .actualites-card-image img,
.actualites-card:focus .actualites-card-image img {
    transform: scale(1.2);
}

.actualites-card-title {
    overflow: visible;
}

.actualites-card-title a {
    text-decoration: none;
    color: #1E1E1E;
    font-size: 24px;
    font-weight: 800;
    line-height: 125%;
    letter-spacing: 0px;
    display: block;
    max-height: 32px;
    overflow: hidden;
}

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

.actualites-card .card-content {
    padding-top: 20px;
}

.actualites-card .card-text {
    margin: 10px 0;
    line-height: 26px;
}

#listing-autres-actus-categorie ul a {
    font-size: 15px;
    text-decoration: none;
    color: #000;
}

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

.actualites-detail .detail-btn {
    text-align: center;
}

.actualites-detail .detail-actu-reseaux-sociaux {
    align-items: flex-start;
}

.detail-actu-reseaux-sociaux>div {
    display: flex;
}

.detail-actu-image img {
    border-radius: var(--border-radius);
}

.actualites-listing #fil_ariane {
    margin-bottom: 0rem;
    margin-top: -24px;
}

@media screen and (max-width: 1400px) and (min-width: 993px) {
    #listing-autres-actus-categorie a.btn {
        padding: 12px 12px;
        font-size: 12px;
    }
}

@media screen and (min-width: 601px) {
    .actualites-listing .recherche_actu #input_recherche_actu {
        width: calc(100% - 6.25rem);
    }
}

.actualites-detail #listing-autres-actus-categorie {
    background-color: hsla(220, 60%, 97%, 1);
    padding: 1rem;
    border-radius: var(--border-radius);
}

@media screen and (min-width: 993px) {
  #encart-actualites .title-2 { 
font-size: 40px;
  }


}


/* =============================== */
/*           FOOTER    */
/* =============================== */
footer {
    background-color: #0F67BE;
    color: var(--gray0);
}

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

@media screen and (min-width: 993px) {
    #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 {
    margin: 0;
}

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

footer .footer-1 .title-4 {
  color: #EDFBFF;
  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: #EDFBFF;
    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: #fff;
  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);
  color: var(--gray0);
}
.footer-2 nav a,
.page-404 footer a {
    line-height: 24px;
    color: var(--gray0);
    font-size: 16px;
    font-weight: 600;
}

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

.footer-2 nav a:hover,
.page-404 footer a:hover {
    color: hsla(0, 0%, 12%, 1);
    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: #fff;
  width: 0;
  transition: var(--transition);
}

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


.paginationControl {
  text-align: center;
  margin: 20px 0 10px;
  font-size: 14px;
}
.col.date.card-date.actualites-date.actualites-card-date.actualites-listing-card-date.line-clamp-1 {
  font-size: 14px;
  margin: 10px 0px;
}
.contact-page .fold {
  display: none;
}



/* =============================== */
/*           PAGE INTERNE    */
/* =============================== */
.page-interne .sc-content .clear_both {
  margin-bottom: 60px;
}
.politique-de-confidentialite main .btn-contact {
  margin-top: 1rem;
}
.contact-page .index-contact .tel {
  display: none;
}

.sc-content .ac-doubleColonne .ac-colonne {
  width: 100%!important;
}
.page-interne p {
  margin-top: 0px;
  margin-bottom: 30px;
}

@media screen and (min-width: 993px) {
  .page-interne h1, .page-interne h2, .page-interne h3 {
    margin-bottom:8px;
  }
  .page-interne h2, .page-interne h3 {
    margin-top:0;
  }
  img.mobile-seulement {
    display: none;
  }
  body.contact-page main .intro {    
    margin-bottom: 0px;
  }
  .index-contact {
    display: none !important;
  }
  p.intro {
    margin-bottom: 60px;
  }
  .sc-content #relance {
    margin: 60px auto !important;
  }
  .page-interne #container {
    padding-bottom: 0;
  }
  
  section.ac-doubleColonne h2 {
    margin-top: 0px;
  }
  main img {
    margin: 0px auto;
  }
  
}



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

#encart-contact {
  color: #ffff;
  position: relative;
}
#encart-contact:before {
  content: "";
  position: absolute;
  left: -5000px;
  width: 10000px;
  height: 100%;
  background: #0F67BE;
  z-index: -1;
  bottom: 0px;
}
#encart-contact [class*="btn"] .accent.btn {
background: #EDFBFF;
color: #1E1E1E;
}
#encart-contact [class*="btn"] .accent.btn svg path{
  stroke:#1E1E1E;
}
#encart-contact [class*="btn"] .accent.btn:hover {
background: var(--accent-color);
border-color: #119CFF;
color: #fff;
}
#encart-contact [class*="btn"] .accent.btn:hover svg path{stroke:#fff;}
.page-interne #encart-contact p{
  margin: 24px 0;
}
a.lien-maps span {
  display: block;
}

@media screen and (min-width: 993px) {
 
  #encart-contact:after{
  content: "";
  background: url(../assets/gifs/livre.png);
  position: absolute;
  width: 659px;
  height: 439px;
  right: 0;
  top: 0;
  }

}


  /* =============================== */
/*          PAGES INTERNE           */
/* =============================== */
.hero-bg .title-1, .hero-interne .title-1 {
  max-width: 90%;
  color: var(--background-color);
}
.hero-bg *, .section-interne *, .hero-interne * {
  color: var(--background-color);
}
.page-interne div#container {
  padding-top: 0;
}
.ac-doubleColonne.hero-bg p {
  color: var(--background-color);
  margin: 1rem 0 0;
}
 .hero-interne {
  margin-bottom: 60px;
}
.hero-interne .title-1,.hero-interne h1 {
  max-width: 900px;
  margin: 0;
}
body[class*="listing"] h1, .devis h1 {
  margin-bottom: 20px;
}
body[class*="listing"] .fold {
  margin-top: -2px;
}
body[class*="listing"] main > .section, .catalogue-detail main > .section, 
.actualites-detail main > .section,.politique-de-confidentialite main > .section,.plan-site main > .section {
  padding-top: 0;
}
.sc-content .ac-doubleColonne.hero-bg,.hero-interne {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 400px;
}
.section-hero {
  position: relative;
}
.hero-bg::before,
.hero-interne::before,
.hero-interne::after,
.hero-bg::after {
  position: absolute;
  content: "";
  background: url(../assets/gifs/slider/slide-01.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  width: 150%;
  left: -23%;
  max-width: 1920px;
  top: 0;
  height: 100%;
  z-index: -1;
  background-position: top;
  margin: 0 auto;
  right: -20%;
}
nav#fil_ariane,
#fil_ariane,
.fil-ariane {
  margin: 0 0 3em;
}
  .page-interne .hero-bg::after,.hero-interne::after {
    background: linear-gradient(360deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%),
    linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);    
  }

@media screen and (min-width: 993px) {
  .hero-interne p{
    max-width: 60%;
  }
  .section.section-hero {
    margin-bottom: 48px;
}
  body[class*="listing"] .hero-interne {
      margin-bottom: 88px;
  }
  .page-interne .sc-content img:not(.page-interne #encart-actualites img) {
      height: 100%;
      object-fit: cover;
  }
  h2.western,
  .sc-content .ac-doubleColonne h2 {
    margin-top: 0;
  }
  div#container:not(.devis div#container) {
    padding-bottom: 0;
  }
  .page-interne
    section:not(section.ac-doubleColonne, section.ac-doubleColonne
      section, #relance, .ac-include)
    p,
  section.ac-doubleColonne p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  .page-interne p.intro {
    margin-bottom: 30px;
  }
  #fil_ariane,
  nav#fil_ariane,
  .fil-ariane {
    font-size: 14px;
  }
  .page-interne .ac-doubleColonne p {
    font-size: 16px;
  }
  .sc-content #relance {
    margin-top: 4rem;
    margin-bottom: 4rem;
    text-align: center;
  }

}

/* =============================== */
/*           CONTACT PAGE    */
/* =============================== */
.section-hero h1{
  margin: 20px 0;
  font-size: var(--h4-font-size);
}
.section-hero [class*="title"] {
  color: var(--background-color);
}
.section-hero {
  position: relative;
  background-image: url('../assets/gifs/slider/slide-01.jpg');
  background-size: cover;
  max-width: 1920px;
  margin: 0 auto;
  z-index: 0;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.section-hero::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%),
  linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%); 
  min-height: 400px;
  z-index: -1;
}
.section-info {
  background-color: var(--background-2);
}
.contact-page h1 {
  font-size: var(--displaymd);
  margin: 25px 0 0;
  line-height: normal;
}
.col.contact-page-horaires .row,
.contact-page-coordonnees.reset .row,
.contact-page-infos-pratiques .row {
  flex-wrap: nowrap;
}
.contact-page .contact-page-infos-pratiques {
  margin-bottom: 2rem;
}
.contact-page-infos-pratiques .title-2 {
  margin: 0;
}
.contact-page .map-container iframe {
  max-height: 400px;
}
.cards .ac-colonne {
  border: 1px solid var(--accent-color);
  padding: 15px;
  margin: 15px 0;
  border-radius: 8px;
}
.sc-content .ac-doubleColonne .ac-colonne {
  width: 100% !important;
}
.bg-notes{
  border: 1px solid var(--accent-color);
  border-radius: 8px;
  padding: 15px;
    margin-top: 12px;
}
.page-interne .bg-notes p{margin-bottom: 0;}
.ac-1v1 .ac-colonne {
  border: 1px solid var(--accent-color);
  border-radius: 8px;
  margin: 15px 0;
  padding:20px;
}
/*********************** SLICK DOTS tirets/dots*/
ul.slick-dots {
  bottom: -2.5rem;
  z-index: 1;
}
ul.slick-dots li button {
  width: 14px;
  height: 10px;
  transition: 0.3s ease-in-out;
}
ul.slick-dots li.slick-active button {
  width: 64px;
}
ul.slick-dots li button .slick-dot-icon {
  opacity: 1;
  color: #99C2E0;
}
ul.slick-dots li button .slick-dot-icon::before {
  content: "";
  top: -2px;
  left: -2px;
  width: 10px;
  height: 10px;
  border-radius: 8px;
  background-color: #99C2E0;
  transition: 0.3s ease-in-out;
}
ul.slick-dots li button:is(:hover, :focus) .slick-dot-icon::before {
  background-color: #119CFF;
}
ul.slick-dots li.slick-active button .slick-dot-icon::before {
  width: 60px;
  background-color: #119CFF;
}
/***************************/
#encart-catalogue p {
  max-width: 872px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.catalogue-card-content {
  padding: 16px;
}
.catalogue-card-title a {
font-size: 22px;
font-weight: 800;
color: #301D18;
}
.catalogue-card-title{
  margin-bottom: 10px;
}
.prix{
  font-weight: 500;
}

@media screen and (min-width: 993px) {
  .slick-next .slick-next-icon:before {
    content: "";
    background: url(../assets/gifs/next.png);
    width: 56px;
    height: 40px;
    display: block;
    opacity: 1;
  }
  .slick-prev .slick-prev-icon:before{
    content: "";
    background: url(../assets/gifs/prev.png);
    width: 56px;
    height: 40px;
    display: block;
    opacity: 1;
  }
#encart-catalogue .container{
  position: relative;
}
#encart-catalogue .container:before{
  content: "";
  position: absolute;
  background: url(../assets/gifs/before-produit.png);
  width: 508px;
  height: 166px;
  bottom: -120px;
  left: -285px;
}
#encart-catalogue .container:after{
  content: "";
  position: absolute;
  background: url(../assets/gifs/after-produit.png);
  width: 573px;
  height: 155px;
  bottom: -120px;
  right: -245px;
}
.content-b3 {
  max-width: 592px;
}
.right-content{
margin-right: 0;
margin-left: auto;
}

}
/**********************************/
#encart-pt-fort {
  background: #EDFBFF;
}
#encart-pt-fort .title-2 {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}
.slik-ptfort{
  margin-top: 48px;
}
.card-pt {
  text-align: center;
}

.title-pt {
  margin-bottom: 8px;
  color: #1E1E1E;
  font-size: 28px;line-height: 35px;
  font-weight: 800;
  font-family: var(--secondary-font);
}
.descrip-pt {
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
}


@media screen and (min-width: 993px) {
  #bloc-06 .container{
    position: relative;
  }
  #bloc-06 .container:after {
    content: "";
    background: url(../assets/gifs/after-bas.png);
    position: absolute;
    z-index: -1;
    width: 1314px;
    height: 246px;
    bottom: -212px;
  }
.slik-ptfort {
  display: flex;
  justify-content: center;
  gap: 48px;
}
.l3 .card-pt {
  max-width: 302px;
}
.l4 .card-pt {
  max-width: 354px;
}
#bloc-03 {
  padding-bottom: 0;
}
#bloc-04 {
  padding-top: 40px;
}
#encart-contact .container{width: 100%;}
.page-interne #encart-contact{
  padding: 120px 0;
}

.page-interne #encart-contact:after {
  
  right: -372px;

}
}


body.catalogue-listing main .tri-realisations{
  margin-bottom: 1rem;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
body.catalogue-listing main .tri-realisations a{
  padding: 5px 10px;
  margin-bottom: 10px;
}
body.catalogue-listing main .tri-realisations a:not(:last-child){
  margin-right: 10px;
}
@media screen and (max-width: 600px) {
  body.catalogue-listing main .tri-realisations a:not(:last-child){
    margin-right: 0;
  }
}

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

.promotional-modal-content {padding: 1.5rem;}
.promotional-modal-img {max-height: 250px;} 
.promotional-modal-content .title-2 {
  margin-top: 0;
  margin-bottom: .25rem;
}
.promotional-modal-content .title-1 {margin: 0;}
.promotional-modal-phone-text {
  display: block;
  margin-bottom: .25rem;
}
@media screen and (min-width: 601px) {
  .promotional-modal-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 2.5rem 1rem 2.5rem 2.5rem;
  }
  .promotional-modal-img {max-height: 100%;} 
}

.reset li{
  margin: 5px 0;
}