:root {
 /* pack variables style*/
 /* color */
 --brand: #84b92f;
 --accent: #19a8da;
 --base-gray: #678498;

 --gray0: white;
 --gray50: #f0f3f5;
 --gray100: #e1e6ea;
 --gray200: #c2ced6;
 --gray300: #a4b5c1;
 --gray400: #869cac;
 --gray500: #678498;
 --gray600: #536979;
 --gray700: #3e4f5b;
 --gray800: #29353d;
 --gray900: #151a1e;
 --gray950: #0e1215;

 --brand50: #f3f6fc;
 --brand100: #eaf6d1;
 --brand200: #d6eda9;
 --brand300: #badf77;
 --brand400: #9fcf4c;
 --brand500: #84b92f;
 --brand600: #638f21;
 --brand700: #4c6e1d;
 --brand800: #3e581c;
 --brand900: #364b1c;
 --brand950: #1a290a;

 --accent50: #f1f9fe;
 --accent100: #e2f3fc;
 --accent200: #bde8fa;
 --accent300: #84d6f5;
 --accent400: #42c2ee;
 --accent500: #19a8da;
 --accent600: #0c8abd;
 --accent700: #0b6e99;
 --accent800: #0e5d7e;
 --accent900: #114d69;
 --accent950: #0b3146;

 --shade-background: var(--accent50);
 --shade-text: var(--gray700);

 --img-radius: 30px;
 --card-radius: 30px;
 --card-inner-img-radius: 30px;
 --button-radius: 28px;
 --input-radius: 8px;
 --icon-radius: 0;
 --transition: 0.6s all ease;
 --link-color: var(--link-default-color);
 --section-padding-block: var(--spacing10);

 --button-padding-block: var(--button-md-padding-block);
 --button-padding-inline: var(--button-md-padding-inline);
 --button-font-size: var(--text-md);
 --button-line-height: var(--line-height-md);
 --text-icon-icon-size: var(--text-icon-md-icon-size);

 /* font-size */
 /* font de base (pour les textes) */
 --font-size: 16px;
 --font-size-sm: 14px;

 /* réglage des tailles cf maquette */
 --text-xs: 11px;
 --text-sm: 14px;
 --text-md: var(--font-size);
 --text-lg: 20px;
 --text-xl: 24px;
 --text-2xl: 28px;

 --display-xs: 20px;
 --display-sm: 24px;
 --display-md: 28px;
 --display-lg: 33px;
 --display-xl: 40px;
 --display-2xl: 61px;

 /* pour la gestion des classes */
 --h1-font-size: var(--display-2xl);
 --h2-font-size: var(--display-xl);
 --h3-font-size: var(--display-lg);
 --h4-font-size: var(--display-md);
 --h5-font-size: var(--display-sm);
 --h6-font-size: var(--display-xs);

 --h1-mobile-font-size: var(--display-xl);
 --h2-mobile-font-size: var(--display-lg);
 --h3-mobile-font-size: var(--display-md);
 --h4-mobile-font-size: var(--display-sm);
 --h5-mobile-font-size: var(--display-xs);
 --h6-mobile-font-size: var(--text-lg);

 /* font-family */
 --font-text: "Inter", sans-serif;
 --font-menu: "Inter", sans-serif;
 --font-display: "Manrope", sans-serif;

 /* font-weight */
 --display-default: var(--font-regular);
 --display-heavy: var(--font-semibold);
 --display-font-weight: var(--display-heavy);

 --menu-default: var(--font-regular);
 --menu-heavy: var(--font-semibold);

 --text-default: var(--font-regular);
 --text-heavy: var(--font-bold);

 /* BUTTONS */
 --button-font-family: var(--font-display);
 --button-font-weight: var(--menu-heavy);

 /* BUTTON PRIMARY */
 /* default */
 --button-primary-default-color: var(--accent500);
 --button-primary-default-background: var(--gray0);
 --button-primary-default-border: 1px solid var(--accent500);
 /* hover */
 --button-primary-hover-color: var(--accent500);
 --button-primary-hover-background: var(--accent200);
 --button-primary-hover-border: 1px solid var(--accent500);
 /* active */
 --button-primary-active-color: var(--accent500);
 --button-primary-active-background: var(--accent400);
 --button-primary-active-border: 1px solid transparent;
 /* disabled */
 --button-primary-disabled-color: var(--accent300);
 --button-primary-disabled-background: var(--gray10);
 --button-primary-disabled-border: 1px solid transparent;

 /* BUTTON SECONDARY */
 /* default */
 --button-secondary-default-color: var(--gray0);
 --button-secondary-default-background: var(--gray900);
 --button-secondary-default-border: 1px solid transparent;
 /* hover */
 --button-secondary-hover-color: var(--gray900);
 --button-secondary-hover-background: var(--gray0);
 --button-secondary-hover-border: 1px solid var(--gray900);
 /* active */
 --button-secondary-active-color: var(--gray800);
 --button-secondary-active-background: var(--gray500);
 --button-secondary-active-border: 1px solid transparent;
 /* disabled */
 --button-secondary-disabled-color: var(--gray300);
 --button-secondary-disabled-background: var(--gray100);
 --button-secondary-disabled-border: 1px solid transparent;

 /* BUTTON CONVERSION */
 /* default */
 --button-conversion-default-color: var(--gray0);
 --button-conversion-default-background: var(--accent500);
 --button-conversion-default-border: none;
 /* hover */
 --button-conversion-hover-color: var(--gray0);
 --button-conversion-hover-background: var(--accent300);
 --button-conversion-hover-border: none;
 /* active */
 --button-conversion-active-color: var(--gray0);
 --button-conversion-active-background: var(--accent900);
 --button-conversion-active-border: none;
 /* disabled */
 --button-conversion-disabled-color: var(--accent300);
 --button-conversion-disabled-background: var(--accent100);
 --button-conversion-disabled-border: none;

 /* LINK */
 /* default */
 --link-default-color: var(--accent700);
 --link-default-text-decoration: underline;
 /* hover */
 --link-hover-color: var(--accent500);
 --link-hover-text-decoration: none;
 /* active */
 --link-active-color: var(--accent600);
 --link-active-text-decoration: none;
 /* visited */
 --link-visited-color: var(--link-default-color);
 /* disabled */
 --link-disabled-color: var(--accent200);

 /* TAG PRIMARY */
 /* default */
 --tag-primary-default-color: var(--gray0);
 --tag-primary-default-background: var(--brand500);
 --tag-primary-default-border: none;
 /* hover */
 --tag-primary-hover-color: var(--gray0);
 --tag-primary-hover-background: var(--brand400);
 --tag-primary-hover-border: none;
 /* active */
 --tag-primary-active-color: var(--gray0);
 --tag-primary-active-background: var(--brand600);
 --tag-primary-active-border: none;

 /* TAG CONVERSION */
 /* default */
 --tag-conversion-default-color: var(--gray0);
 --tag-conversion-default-background: var(--accent500);
 --tag-conversion-default-border: none;
 /* hover */
 --tag-conversion-hover-color: var(--gray0);
 --tag-conversion-hover-background: var(--accent400);
 --tag-conversion-hover-border: none;
 /* active */
 --tag-conversion-active-color: var(--gray0);
 --tag-conversion-active-background: var(--accent600);
 --tag-conversion-active-border: none;

 /* TAG INFO */
 /* default */
 --tag-info-default-color: var(--gray0);
 --tag-info-default-background: var(--info500);
 --tag-info-default-border: none;
 /* hover */
 --tag-info-hover-color: var(--gray0);
 --tag-info-hover-background: var(--info400);
 --tag-info-hover-border: none;
 /* active */
 --tag-info-active-color: var(--gray0);
 --tag-info-active-background: var(--info600);
 --tag-info-active-border: none;
}
@media screen and (992px <= width) {
 :root {
  --section-padding-block: var(--spacing30);
  --section-padding-block-small: var(--spacing20);
 }
}
.card {
 /* text */
 --card-text-color: var(--gray800);
 /* direction : vertical */
 --image-aspect-ratio: 16 / 9;
 /* direction : horizontal */
 --card-horizontal-image-width: 50%;
 --card-horizontal-content-width: calc(
  100% - var(--card-horizontal-image-width)
 );
 /* image : background */
 --image-background-overlay: linear-gradient(transparent, black 125%);
 --image-background-text-color: var(--gray0);
 /* card background */
 --card-background-color: var(--gray0);
 /* icon */
 --card-icon-size: var(--display-sm);
}

/* ============== */
/* === BLOCS BIBLIOTHEQUE === */
/* ============== */

/* ============== */
/* === HEADER === */
/* ============== */

.menu-mobile {
 background-color: var(--shade-background);
}

.menu-mobile .btn-menu {
 height: auto;
 color: var(--shade-text);
}

#menu-burger span,
.close-menu span {
 padding: var(--spacing3);
}

.menu_opened .no-menu-opened,
.top-bar-cta {
 display: none;
}

.fold-actions {
 padding-block: var(--header-padding);
 text-align: center;
}

.fold-actions .contactInfos--phone {
 padding-block: var(--header-padding);
 align-items: center;
}

@media screen and (max-width: 992px) {
 .header-content .nav#main-nav li:not(.opened) a,
 .header-content .nav#topbar-nav li:not(.opened) a {
  padding: 0.75rem 5%;
  border-bottom: none;
 }

 .header-content .nav ul li {
  border-bottom: solid 1px var(--gray200);
 }

 .header-content .nav ul li a.selected {
  color: var(--gray0);
  background-color: var(--brand);
 }

 .header-content .nav .sous_menu .btnMenuLevel2,
 .header-content .nav .sous_menu .btnMenuLevel3 {
  right: 0;
  border-left: solid 1px var(--gray200);
 }

 .header-content #nav-container,
 .dropdown,
 .ssdropdown {
  border-top: solid 1px var(--gray200);
 }

 .header-content .nav > ul > .sous_menu.opened > a,
 .header-content .nav .dropdown > .sous_menu.opened > a {
  justify-content: center;
  max-width: 500px;
  text-align: center;
  color: var(--shade-text);
 }

 .header-content .nav > ul > .sous_menu.opened > a.selected,
 .header-content .nav .dropdown > .sous_menu.opened > a.selected {
  background: transparent;
 }

 .header-content .nav#main-nav li.sous_menu:not(.opened) > a,
 .header-content .nav#topbar-nav li.sous_menu:not(.opened) > a {
  padding-right: calc(5% + 3rem);
 }
}

@media screen and (min-width: 768px) {
 .fold-actions {
  display: none;
 }
 .top-bar-cta {
  display: block;
 }
}

@media screen and (min-width: 993px) {
 .header-content .nav#main-nav > ul > li,
 .header-content .nav#topbar-nav > ul > li {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
 }
 .header-content .nav > ul > li > ul.dropdown > li a {
  font-size: var(--font-size-sm);
 }
 .header-content .nav#main-nav > ul > li > a,
 .header-content .nav#topbar-nav > ul > li > a {
  padding: 0.25rem;
 }

 .main-header-content {
  padding-block: var(--header-padding);
 }

 #topbar-nav {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
 }

 .top-bar {
  padding-block: var(--header-padding-topbar);
  font-size: var(--font-size-sm);
 }
 .top-bar .socialLinkList a.RS {
  padding-block: 0;
 }
}

/* ============== */
/* === FOOTER === */
/* ============== */

.footer {
 padding-block: calc(2 * var(--footer-padding));
}

.footer > .container {
 display: flex;
 flex-direction: column;
 gap: calc(2 * var(--footer-padding));
}

.footer__mainContent.row {
 width: 100%;
 row-gap: var(--contact-infos-list-gap);
}

@media (width <= 992px) {
 .footer__mainContent.row {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
 }
}

@media screen and (992px <= width) {
 .footerLogoCenter > .container {
  align-items: center;
 }
}

@media (992px < width <= 1199px) {
 .footerLogoLeft .footer__brand {
  width: 100%;
  margin-bottom: var(--footer-padding);
  text-align: center;
 }

 .footer.footerLogoLeft .footer__brand .socialLinkList {
  justify-content: center;
 }
}

/* socialLinkList : liens réseaux sociaux dans le footer */

.footer__socialLinks {
 display: flex;
 flex-direction: column;
 gap: var(--spacing2);
}

.footer .socialLinkList {
 justify-content: flex-start;
}

.footer__socialLinks p:not(.textBlock p) {
 width: max-content;
 margin-bottom: 0;
}

.footerLogoLeft--b .socialLinkList,
.footerLogoLeft--d .socialLinkList,
.footerLogoLeft--e .socialLinkList,
.footerLogoCenter--d .socialLinkList,
.footerLogoBottom--b .socialLinkList {
 margin-top: var(--paragraph-gap-md);
}

@media screen and (992px <= width) {
 .footerLogoCenter--a .socialLinkList {
  justify-content: center;
 }
}

/* footer__siteNav : navigation du site dans le footer */

.footer__siteNav ul {
 margin-block: 0;
}

.footer__siteNav .dropdown,
.footer__siteNav .ssdropdown {
 flex-direction: column;
 gap: 0;
 padding-left: var(--spacing6);
 font-size: var(--text-sm);
 border-top: none;
}

@media screen and (992px <= width) {
 .footer__siteNav--horizontal ul {
  display: flex;
  justify-content: center;
  gap: var(--text-list-gap-md);
 }
}

/* footer__legalNav : liens légaux dans le footer */

.footer__paragraph {
 margin-bottom: var(--text-list-gap-md);
}
nav.footer__legalNav a {
 color: var(--link-color, var(--link-default-color));
}

.footer__legalNav a:not(:last-child),
.footer__siteNav li:not(:last-child) a {
 display: inline-block;
}

/* .footer__siteNav li:not(:last-child) a {
  margin-bottom: calc(var(--text-list-gap-md) - var(--spacing1));
} */

@media (width < 992px) {
 .footer__nav a {
  padding-block: var(--spacing1);
 }
 .footer__legalNav .buttonGroup {
  flex-direction: column;
 }
 .footer__legalNav .buttonGroup .link:not(:first-child) {
  margin-left: 0;
 }
 .footerLogoBottom .footer__legalInfos {
  margin-top: var(--footer-gap);
 }
}

@media screen and (992px <= width) {
 .footer__paragraph {
  text-align: center;
 }
 /* .footer__siteNav li:not(:last-child) a {
    margin-bottom: var(--text-list-gap-sm);
  } */
 .footerLogoLeft--e .footer__legalNav .buttonGroup {
  flex-direction: column;
 }
 .footerLogoLeft--e .footer__legalNav .buttonGroup .link:not(:first-child) {
  margin-left: 0;
 }
}

/* Footer contact infos */

.footer address {
 margin-block: 0;
}
.footer .contactInfos--address2lines .lien-maps span {
 display: block;
}

/* Footer menu dropdown */
.footer__siteNav ul li.sous_menu {
 position: relative;
}
.footer__siteNav 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;
 z-index: 1;
 background-color: var(--shade-background);
 border: 1px solid var(--gray100);
}

.footer__siteNav 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__siteNav ul li.sous_menu ul.dropdown > li:not(:last-child) {
 border-bottom: 1px solid var(--gray100);
}

.footer__siteNav ul li.sous_menu:hover ul.dropdown {
 display: flex;
}

.footer__siteNav ul li.sous_menu ul.dropdown > li a {
 padding: 0.5rem;
 margin: 0;
 font-size: var(--text-sm);
 display: block;
}

.footer__siteNav ul li a {
 border-bottom: 2px solid transparent;
}

@media screen and (min-width: 992px) {
 .footer__siteNav ul li.sous_menu ul.dropdown {
  bottom: 100%;
 }
}

/* @media screen and (max-width: 992px) {
  .footer__siteNav ul li.sous_menu ul.dropdown {
    min-width: 18%;
    top: 100%;
  }
} */

/* ============= */
/* === 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;
}

/* ============== */
/* === HERO 1 === */
/* ============== */

.hero1__image img {
 display: block;
 width: 100%;
 height: auto;
}

.hero1--imageSizeFullWidth .hero1__image img {
 width: 100%;
}

@media screen and (992px <= width) {
 .hero1__content {
  align-content: center;
 }

 .hero1__image > img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  background-position: center;
 }
}

@media screen and (width < 992px) {
 .hero1--textPositionLeft .hero1__content {
  margin-bottom: var(--section-gap-md);
 }
 .hero1--textPositionRight .hero1__content {
  margin-top: var(--section-gap-md);
 }
}

.hero1--textPositionLeft .hero1__backgroundBlock {
 margin-bottom: calc(-1 * var(--section-padding-block));
 margin-top: calc(3 * var(--section-padding-block));
}

.hero1--textPositionRight .hero1__backgroundBlock {
 margin-top: calc(-1 * var(--section-padding-block));
 margin-bottom: calc(3 * var(--section-padding-block));
}

@media screen and (992px <= width) {
 .hero1--textPositionLeft .hero1__backgroundBlock,
 .hero1--textPositionRight .hero1__backgroundBlock {
  margin-block: calc(-1 * var(--section-padding-block));
 }
}
@media screen and (601px <= width < 992px) {
 .hero1__image img {
  object-fit: cover;
  background-position: center;
  max-height: 500px;
 }
}
/* ============== */
/* === HERO 2 === */
/* ============== */

.html-block.hero2 {
 padding-block: 0;
}
.hero2__content {
 margin-block: var(--section-padding-block);
}
@media screen and (992px <= width) {
 .html-block.padding-small .hero2__content {
  margin-block: var(--section-padding-block-small);
 }
}
/* =================== */
/* === CARDS SET 1 === */
/* =================== */

.cardsSet1__cards {
 margin-block: var(--section-gap-md);
}

@media screen and (1200px <= width < 1500px) {
 .cardsSet1--directionCarrousel .grid .xl-col-end-13 {
  --col-end: 12;
 }
 .cardsSet1--directionCarrousel .grid .xl-col-start-1 {
  --col-start: 2;
 }
}

/* =================== */
/* === CARROUSEL 1 === */
/* =================== */

.html-block.carrousel1 {
 padding-block: 0;
}

.carrousel1 [class^="slide-"] .container .cell {
 min-height: 30rem;
 padding-block: var(--section-padding-block);
 align-content: center;
 text-align: center;
}

.carrousel1 .cell {
 position: relative;
}

.carrousel1 .slick-slide .cell > img {
 display: block;
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: center;
}

.carrousel1 .slick-slider {
 margin: 0 !important;
 z-index: 0;
}

.carrousel1 .slick-slider.slick-dotted {
 margin: 0 !important;
}

.carrousel1 .slick-dots {
 position: absolute;
 bottom: calc(var(--section-padding-block) / 2) !important;
 width: 100%;
 max-width: 640px;
 left: 50%;
 transform: translateX(-50%);
}

@media not (pointer: fine) {
 .carrousel1-slick-prev,
 .carrousel1-slick-next {
  display: none;
 }
}

@media (992px <= width) {
 .carrousel1-slick-prev,
 .carrousel1-slick-next {
  position: absolute;
  top: 50%;
  z-index: 1;
 }

 .carrousel1-slick-prev {
  right: calc(50% + var(--container) / 2);
  left: auto !important;
  transform: translate(100%, -50%) !important;
 }

 .carrousel1-slick-next {
  right: auto !important;
  left: calc(50% + var(--container) / 2);
  transform: translate(-100%, -50%) !important;
 }
}

/* ====================== */
/* === TESTIMONIALS 1 === */
/* ====================== */

.testimonials1__cards {
 margin-block: var(--section-gap-md);
}

@media screen and (992px <= width) {
 .testimonials1:not(.testimonials1--textPositionTop) .testimonials1__cards {
  margin-block: 0;
 }
}
/* ===================== */
/* === IMAGES LIST 1 === */
/* ===================== */

.imagesList1__imagesList {
 display: flex;
 flex-direction: column;
 justify-content: center;
 gap: var(--grid-gutter);
 padding-left: 0;
 margin-block: 0;
}

.imagesList1--textPositionTop .imagesList1__imagesList {
 margin-block: var(--section-gap-md);
}

.imagesList1--textPositionLeft .imagesList1__imagesList,
.imagesList1--textPositionRight .imagesList1__imagesList {
 margin-top: var(--section-gap-md);
}

.imagesList1__imagesList .imageText__media {
 max-height: 10rem;
}

@media screen and (400px <= width) {
 .imagesList1__imagesList {
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
 }

 .imagesList1__imagesList .imageText {
  flex-basis: calc(50% - (var(--grid-gutter) / 2));
 }
}

@media screen and (768px <= width) {
 .imagesList1--textPositionTop .imagesList1__imagesList .imageText {
  flex-basis: calc(33% - (2 * (var(--grid-gutter)) / 3));
 }
 .imagesList1--textPositionLeft .imagesList1__imagesList,
 .imagesList1--textPositionRight .imagesList1__imagesList {
  margin-block: 0;
 }
}

@media screen and (992px <= width) {
 .imagesList1--textPositionTop .imagesList1__imagesList {
  flex-wrap: nowrap;
 }
}
/* ====================== */
/* ==== contactSection === */
/* ====================== */

.contactSection__content1 {
 margin-bottom: var(--section-gap-md);
}
.contactSection__content2 {
 margin-top: var(--section-gap-md);
}
.contactSection .socialLinkList {
 justify-content: flex-start;
}
.contactSection .textBlock__col {
 flex-basis: 50%;
}

@media screen and (min-width: 768px) {
 .contactSection .textBlock__col2 {
  align-items: end;
 }
}

/* ====================== */
/* === CUSTOM === */
/* ====================== */
.slick-slide {
 padding: 0px 0px 13px;
}
#blocHorsLigne {
 z-index: 999 !important;
}
a.tag {
 border-radius: calc(var(--button-radius) / 2);
}
.color-accent950 {
 color: var(--accent950);
}
.card__image,
.card__image * {
 border-radius: inherit;
 overflow: hidden;
}

.card--clickable *,
.socialLinkList a path {
 transition: var(--transition);
}
.valide p {
 color: green;
 padding: var(--spacing3);
 border: 1px solid green;
}

.erreur p {
 color: red;
}
.socialLinkList a:hover path {
 fill: #4b5ffa;
 transform: scale(0.9);
}
.paragraph__text p {
 line-height: 26px;
}
.card__text p {
 margin-bottom: 0;
}
a.lien-maps:hover {
 text-decoration: underline;
}

.title-1,
h1,
.title-2,
h2 {
 letter-spacing: -1px;
}
.span-titre {
 font-weight: 700;
 line-height: 24px;
 letter-spacing: 0%;
 padding: 10px 20px;
 border-radius: var(--button-radius);
 border: 1px solid var(--brand400);
 color: var(--brand400);
 text-transform: uppercase;
 width: fit-content;
}
h2 {
 /* color: var(--gray900); */
}
.btn-tel {
 border: 1px solid var(--accent500);
 border-radius: var(--button-radius);
 max-height: 50px;
}
.button {
 min-height: 50px;
 max-height: 50px;
 box-sizing: border-box;
}

.btn-tel:hover {
 background-color: var(--accent200);
}
.mx-auto {
 margin-inline: auto;
}

.slick--dots .slick-dots li button {
 padding: var(--spacing1);
}

.slick--dots {
 margin-top: var(--spacing6);
}

.slick--dots .slick-dots li button .slick-dot-icon::before {
 width: 12px;
 height: 12px;
 background-color: var(--accent300);
}

.slick--dots .slick-dots li.slick-active button .slick-dot-icon::before {
 border-radius: var(--radius6);
 width: 122px;
 background-color: var(--accent500);
 height: 12px;
}

[id*="bloc-"] p:has(em),
.ac-doubleColonne p:has(em) {
 padding: 75px 32px 32px;
 position: relative;
 border-radius: var(--card-radius);
 border-left: 5px solid var(--accent400);
 background-color: var(--accent100);
 margin-top: var(--spacing6);
 letter-spacing: 0px;
 box-shadow: 4px 4px 20px 4px rgba(0, 0, 0, 0.1);
}

[id*="bloc-"] p em,
.ac-doubleColonne p em {
 font-style: normal;
 position: relative;
}

[id*="bloc-"] p:has(em)::after,
.ac-doubleColonne p:has(em)::after {
 position: absolute;
 content: "À noter:";
 top: 29px;
 font-family: var(--font-display);
 font-size: var(--display-sm);
 left: 82px;
 color: var(--accent700);
 font-weight: 600;
}
[id*="bloc-"] p:has(em)::before,
.ac-doubleColonne p:has(em)::before {
 position: absolute;
 content: "";
 top: 24px;
 left: 34px;
 width: 38px;
 height: 31px;
 background-image: url(../assets/gifs/before-encart.svg);
}
.page-ville {
 display: none;
}
@media screen and (min-width: 992px) and (max-width: 1920px) {
 .index-page .grid {
  --container: calc(100% - 200px);
  container: 1520px;
 }
}

@media screen and (min-width: 1921px) {
 .index-page .grid {
  container: 1520px;
  --container: 1520px;
 }
}

@media screen and (min-width: 992px) {
 div:not(.card__footer) > .buttonGroup {
  align-items: center;
 }
 .index-page .container {
  max-width: 1520px;
 }
}

@media screen and (max-width: 991px) and (min-width: 579px) {
 div:not(.card__footer) > .buttonGroup {
  align-items: center;
  justify-content: center;
 }
}

/* =======================HEADER=================== */

@media screen and (min-width: 993px) {
 .main-header-content {
  background-color: var(--accent);
  padding-block: 1px;
  border-radius: 0 0 60px 60px;
 }
 .top-bar {
  background-color: var(--accent100);
 }
 .header-content {
  background-color: transparent;
 }
 .header-content .nav#main-nav > ul > li > a {
  color: var(--gray50);
 }
 .header-content .nav#topbar-nav > ul > li > a {
  color: var(--gray950);
 }
 body:not(.contact-page) header .contact-link {
  display: none;
 }

 .header-content .nav ul li.sous_menu ul.dropdown li a,
 .header-content .nav ul li.sous_menu ul.dropdown > li:last-child > a,
 .header-content .nav ul li a {
  border-bottom: 2px solid transparent;
  display: block;
  margin-inline: 0;
  padding-inline: var(--spacing2);
 }

 .header-content .nav ul li.sous_menu ul.dropdown {
  border: 0;
 }

 .header-content .nav ul li.sous_menu ul.dropdown > li a:hover,
 .header-content .nav ul li.sous_menu ul.dropdown > li a.selected,
 .header-content .nav ul li.sous_menu ul.dropdown > li:last-child > a:hover,
 .header-content .nav ul li.sous_menu ul.dropdown > li:last-child > a.selected,
 .header-content .nav ul li a.selected,
 .header-content .nav ul li a:hover,
 .header-content .nav ul li:hover > a,
 .header-content
  .nav
  ul
  li.sous_menu
  ul.dropdown
  > li.sous_menu:not(.empty-link):hover
  > a {
  color: inherit;
  opacity: 1;
  border-color: var(--accent500);
 }
 .header-content .nav#main-nav > ul > li > a:hover,
 .header-content .nav#main-nav > ul > li > a.selected {
  border-color: var(--gray50);
 }
 .header-content .tel {
  font-family: var(--font-display);
  font-weight: 600;
  color: var(--gray950);
 }
 .empty-link:hover > a {
  cursor: default;
 }
 body:not(.page-404) {
  padding-top: 0 !important;
 }
}

@media screen and (min-width: 993px) and (max-width: 1350px) {
 .header-content .nav#main-nav > ul > li > a {
  font-size: 15px;
  text-align: center;
 }
 .header-content .row {
  justify-content: center;
 }
 .header-content .nav#main-nav > ul > li {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
 }
}

body:not(.menu_opened) .menu-mobile {
 height: 5.5rem;
 box-shadow: 0 4px 17px 0 rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 992px) {
 .header-content .nav ul li a.selected {
  background-color: var(--brand600);
 }
}

/* ====================HERO==================== */
#hero .hero2__content {
 position: relative;
 z-index: 2;
}
.video-hero {
 z-index: -2;
}
@media screen and (min-width: 992px) {
 #hero .hero2__content {
  padding-block: 198.5px 78.5px;
 }
 #hero .textBlock ::before {
  position: absolute;
  content: "";
  width: 133px;
  height: 122px;
  background-image: url(../assets/gifs/clean-hero.svg);
  right: 0%;
  top: -35%;
  z-index: 0;
 }
}
@media screen and (min-width: 992px) and (max-width: 1400px) {
 #hero .title-1 {
  font-size: 55px;
 }
}
/* =================BLOC 01 + ================== */
#bloc-01 {
 background: linear-gradient(180deg, #e2f3fc 0%, #bde8fa 100%);
}
#bloc-01 .span-titre {
 margin-bottom: 0;
}
#bloc-01 h1 {
 max-width: 695px;
}
#bloc-01::after {
 position: absolute;
 content: "";
 width: 1431px;
 height: 358px;
 background-image: url(../assets/gifs/after-hero.png);
 right: 0;
 bottom: -207px;
 z-index: 0;
}
#bloc-01::before {
 position: absolute;
 content: "";
 width: 563px;
 height: 776px;
 background-image: url(../assets/gifs/before-01.png);
 left: 0;
 bottom: 0;
 z-index: 0;
}
h1.h1-geoloc span::before,
.title-1.h1-geoloc span::before {
 display: none;
}
h1 span,
h1.h1-geoloc span {
 color: var(--accent500);
 font-size: var(--display-sm);
 margin: var(--spacing1) 0 0;
}
#bloc-01 .hero1__content {
 position: relative;
 z-index: 2;
}
@media screen and (min-width: 992px) and (max-width: 1400px) {
 #bloc-01 h1 {
  font-size: 50px;
 }
}
@media screen and (max-width: 991px) {
 #bloc-01::after {
  bottom: -143px;
  max-width: 100%;
 }
}
/* =============== POINTS FORTS =================== */
#encart-points-forts li.imageText {
 border-radius: 18px;
 background: var(--accent100);
 box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.12);
 padding: var(--spacing8);
 color: var(--accent950);
 height: 100%;
}
@media screen and (768px <=width) {
 #encart-points-forts .imagesList1__imagesList .imageText {
  flex-basis: calc(50% - (2 * (var(--grid-gutter)) / 3));
 }
}

@media screen and (992px <=width) {
 #encart-points-forts .imagesList1__imagesList {
  margin-block: var(--spacing1) 0;
 }
 #encart-points-forts .imagesList1__imagesList {
  flex-wrap: wrap;
 }
}

@media screen and (max-width: 991px) {
 #encart-points-forts li.imageText {
  height: 100%;
 }
 #encart-points-fort LI .paragraph__title {
  min-height: 58px;
 }
}
/* ================PRESTATIONS==================== */
#encart-prestations .cardsSet1__cards {
 margin-block: 0;
}
#encart-prestations .card {
 aspect-ratio: 4/4.85;
 text-align: center;
 overflow: hidden;
}
#encart-prestations .card__content {
 gap: var(--spacing2);
}
#encart-prestations .card__title {
 position: relative;
}
#encart-prestations .slick--dots {
 margin-top: 0;
}
#encart-prestations .card__title::before {
 position: absolute;
 content: "";
 width: 139px;
 height: 1px;
 background-color: var(--gray0);
 left: calc(50% - 79px);
 top: -10px;
}
#encart-prestations .card__text,
#encart-prestations .card__footer {
 display: none;
}
#encart-prestations .card__footer .link__label {
 font-family: var(--font-display);
}
#encart-prestations .card__footer .buttonGroup {
 justify-content: center;
}
#encart-prestations .card:hover .card__title {
 animation: mymove 0.5s ease-in-out;
}

#encart-prestations .card:hover .card__text,
#encart-prestations .card:hover .card__footer {
 display: block;
}

@keyframes mymove {
 from {
  transform: translateY(100px);
 }

 to {
  transform: translateY(0px);
 }
}
#encart-prestations .cardsSet1__content {
 margin-bottom: var(--spacing10);
}
.button_slick {
 height: 88px;
 width: 888px;
 border-radius: 100px;
 border: 1px solid var(--accent300);
 background: var(--accent100);
 max-width: 88px;
 min-height: 88px;
}
#encart-prestations .button_slick:hover {
 background: var(--accent200);
 color: var(--accent950);
 border-color: var(--accent200);
}
@media screen and (max-width: 1200px) {
 #encart-prestations .card__title a {
  font-size: var(--display-sm);
 }
}

@media screen and (max-width: 991px) {
 #encart-prestations .cardsSet1__content {
  margin-bottom: 102px;
 }
}
@media screen and (min-width: 992px) {
 #encart-prestations .container::after {
  position: absolute;
  content: "";
  width: 133px;
  height: 122px;
  background-image: url(../assets/gifs/clean-hero.svg);
  right: 0%;
  top: 23px;
  z-index: 0;
 }
}
@media screen and (max-width: 1400px) {
 .button_slick {
  max-width: 50px;
  min-height: 50px;
 }
}
/* =====================AVIS================== */
.testimonialCard {
 border: 1px solid var(--accent100);
 box-shadow: 0px 4px 23px 0px #00000026;
 background-color: var(--accent100);
 border-radius: 25px;
 margin-bottom: 8px;
}
#encart-avis .avis-card.js-more .avis-card-text::after {
 display: none;
}
@media screen and (min-width: 992px) {
 #encart-avis .testimonials1__cards {
  margin-block: var(--spacing20);
 }
}
/* ====================CATALOGUE===================== */
.cardCatalogue {
 min-height: 500px;
 box-shadow: 0px 4px 30px 0px #0000001f;
}

#encart-catalogue .slick-slide:nth-of-type(odd) {
 margin-top: var(--spacing10);
}

.cardCatalogue .card__image::before {
 background: transparent;
}
.cardCatalogue:hover .card__image img {
 transform: scale(1.1);
}
@media screen and (min-width: 992px) {
 #encart-catalogue {
  padding-bottom: 60px;
 }
 #encart-catalogue::after {
  position: absolute;
  content: "";
  width: 541px;
  height: 822px;
  background-image: url(../assets/gifs/after-catalogue.png);
  right: 0%;
  top: -24%;
  z-index: 0;
 }
}
/* =============BLOC 3 ENCART =========== */
#encart-3-bloc {
 background: url(../assets/gifs/background-3.jpg);
 background-size: cover;
}
/* ==================BLOC 02====================== */
#bloc-02 h2 {
 color: var(--accent950);
}
/* ===================CONTACT========================= */
#encart-contact .container {
 border-radius: 15px;
 background: rgba(255, 255, 255, 0.1);
 padding: var(--spacing8);
 position: relative;
}
#encart-contact .container::before {
 content: "";
 position: absolute;
 inset: 0;
 padding: 2px;
 border-radius: inherit;
 background: linear-gradient(90deg, #42c2ee 0%, #9fcf4c 100%);
 -webkit-mask:
  linear-gradient(#fff 0 0) content-box,
  linear-gradient(#fff 0 0);
 -webkit-mask-composite: xor;
 mask-composite: exclude;
 pointer-events: none;
}
#encart-contact .contactInfosList .textIcon__media {
 border-radius: var(--radius2);
 background-color: var(--brand400);
 width: 45px;
 height: 45px;
}
#encart-contact .socialLinkList path {
 fill: var(--brand500);
}

#encart-contact .socialLinkList a:hover path {
 fill: #4b5ffa;
}
#encart-contact .contactInfosList > ul {
 gap: var(--spacing5);
}
@media screen and (992px <=width) {
 #encart-contact .container {
  padding: 100px 8.5%;
 }
}

#encart-contact .textBlock__col2 .contactInfosList {
 background: var(--accent200);
 padding: 5% 4%;
 box-shadow: 3px 7px 35px 0px #0000001a;
 border-radius: 15px;
}

@media screen and (min-width: 992px) {
 #encart-contact .textBlock__col2 {
  align-items: center;
 }
}

@media screen and (max-width: 991px) {
 .textBlock--offset {
  flex-direction: column;
 }
 #encart-contact .textBlock__col2 {
  align-items: flex-start;
 }
 #encart-contact .textBlock__col2 .contactInfosList {
  width: 100%;
  padding-left: var(--spacing8);
 }
}
/* ==================BLOC 03 + 04 + 05 + 6 + 7  /================ */

.bloc-accordeon .paragraph__text {
 display: revert;
 position: relative;
 padding: var(--spacing6);
 border-radius: 15px;
 border-bottom: 4px solid var(--accent200);
}
.bloc-accordeon .paragraph__text:hover,
.bloc-accordeon .paragraph__text:has(h2.open) {
 background-color: var(--accent50);
}
.bloc-accordeon .paragraph__text,
.bloc-accordeon .paragraph__text * {
 transition: all 0.6s ease;
}

.bloc-accordeon .paragraph__text.active h2 {
 position: relative;
 max-width: 88%;
 line-height: 135%;
 cursor: pointer;
 margin-bottom: 0;
 color: var(--accent900);
 letter-spacing: -0.7px;
 font-size: var(--display-lg);
}

.bloc-accordeon .paragraph__text.active h2::after {
 position: absolute;
 right: -13%;
 top: 0%;
 content: "+";
 z-index: 2;
 font-weight: 300;
 transition: var(--transition);
 color: var(--accent900);
}

.bloc-accordeon .paragraph__text.active h2::after:hover {
 transform: rotate(45deg);
}

.bloc-accordeon .paragraph__text.active h2.open {
 margin-bottom: var(--spacing2);
 color: var(--accent950);
}
.bloc-accordeon .paragraph__text:hover h2 {
 color: var(--accent950);
}

.bloc-accordeon .paragraph__text.active h2.open::after {
 content: "-";
}

.bloc-accordeon .paragraph__text.active p,
.bloc-accordeon .paragraph__text.active ul {
 max-height: 0;
 overflow: hidden;
 max-width: 85%;
 transition: all 0.6s ease;
}

.bloc-accordeon .paragraph__text.active:not(:has(h2.open)) p,
.bloc-accordeon .paragraph__text.active:not(:has(h2.open)) ul {
 margin: 0;
}

@media screen and (max-width: 991px) {
 .bloc-accordeon .container {
  padding: 45px 32px 0;
 }

 .bloc-accordeon .paragraph__text.active h2::after {
  right: -19%;
 }

 .bloc-accordeon .paragraph__text.active h2 {
  max-width: 85%;
 }

 .bloc-accordeon .hero1__content {
  margin-top: 0;
 }

 .bloc-accordeon .container::after {
  font-size: 45.32px;
  top: 24px;
 }

 .bloc-accordeon {
  padding-top: 0;
 }
}

/* ==============ACTUALITES===================== */
#encart-actualites {
 background: linear-gradient(180deg, #f1f9fe 0%, #e2f3fc 100%);
 position: relative;
 margin-top: -1px;
}
#encart-actualites .container {
 position: relative;
 z-index: 2;
}
#encart-actualites .slick-slide {
 margin-bottom: var(--spacing1);
}
#encart-actualites::after {
 position: absolute;
 content: "";
 width: 1431px;
 height: 358px;
 background-image: url(../assets/gifs/after-hero.png);
 right: 0;
 bottom: -53px;
 z-index: 0;
}
.cardActualite {
 box-shadow: 0 1px 15px 0 #00000026;
 border-radius: var(--radius5);
}
#encart-actualites .cardsSet1__buttonGroup {
 position: relative;
 z-index: 2;
}
.cardActualite .card__title a {
 color: black;
}
.card:hover .link__label {
 text-decoration: underline;
}
.cardActualite .link__label {
 font-family: var(--font-display);
}
.cardActualite .link__label:hover {
 color: var(--accent300);
}
.cardActualite img,
.cardActualite img {
 aspect-ratio: 4/3;
}
.cardActualite__image,
.cardActualite__image * {
 border-radius: var(--card-radius) var(--card-radius) 0 0;
}
.cardActualite:hover .card__image img {
 transform: scale(1.1);
}
.cardActualite .card__image a::after {
 background: #00000026;
}
.cardActualite:hover .card__image a::after {
 background: #00000066;
}
a.lightbox img {
 border-radius: var(--img-radius);
}
@media screen and (601px > width) {
 .actualites-listing .cardActualite {
  margin-bottom: var(--spacing10);
 }
}
@media screen and (991px < width) {
 #encart-actualites {
  padding-block: 71px;
 }
}
@media screen and (992px > width) {
 #encart-actualites::after {
  max-width: 100%;
 }
}
/* ==================FOOTER========================= */

.footer {
 background-color: var(--accent100);
}
body:not(.page-404) .footer__legalNav {
 border-top: 1px solid var(--accent950);
}
footer .horaires span {
 display: none;
}
.footer > .container {
 gap: var(--spacing8);
}

.footer__legalNav .link__label {
 text-decoration: none;
 font-family: var(--font-display);
}

.footer__legalNav .link__label:hover {
 text-decoration: underline;
}

footer * {
 line-height: 26px;
}

.footer__siteNav ul li a {
 border-bottom: 2px solid transparent;
 color: var(--accent950);
}

.footer__siteNav ul li a.selected,
.footer__siteNav ul li a:hover,
.footer__siteNav ul li:hover > a {
 color: var(--accent950);
 border-bottom: 2px solid var(--accent600);
}

.footer__legalNav a:hover .link__label {
 text-underline-offset: var(--spacing2);
 text-decoration: underline var(--accent600) 2px;
}

.footer__siteNav ul li.sous_menu ul.dropdown > li a {
 text-align: left;
}

.footer__siteNav ul li.sous_menu ul.dropdown {
 background-color: var(--accent50);
 z-index: 3;
}

footer .contactInfos__textIcon {
 line-height: 26px;
}

footer .no-menu {
 display: none;
}

@media screen and (min-width: 992px) {
 .footer__legalNav {
  margin: auto;
 }

 .footer {
  padding-block: 50px var(--spacing6);
 }

 footer .text-sm {
  max-width: 288px;
 }

 footer .footer > .container {
  gap: var(--spacing16);
 }
}

@media screen and (max-width: 992px) {
 footer .text-sm {
  font-size: var(--text-md);
 }

 footer .contact-link {
  min-height: 36px;
 }
 body:not(.page-404) .footer__legalNav {
  margin-top: var(--spacing4);
 }
}

@media screen and (max-width: 1080px) and (min-width: 992px) {
 .footer__siteNav a,
 .footer__legalNav .link__label {
  font-size: 14px;
 }
}
/* ======================PAGES INTERNE========= */

.sitemap-nav li {
 margin-bottom: 1rem;
 padding-top: var(--spacing2);
}
.page-interne h2 {
 color: var(--gray950);
}
body:not(.index-page) h1:not(.color-accent50) {
 color: var(--accent900);
}
.hero-bg {
 position: relative;
 color: var(--accent50);
}

.hero-bg .title-1 {
 margin-block: var(--spacing3) 0;
 color: var(--accent50);
}

[class*="hero-"] a,
[class*="hero"] #fil_ariane a:not([href="#"]),
.contact-hero nav a {
 color: var(--accent100);
}

.contact-page .primary-30 {
 background-color: var(--brand);
}

.contact-page .contact-hero .horaires {
 color: var(--gray0);
}

.contact-page footer .horaires {
 color: var(--shade-text);
}

.ac-doubleColonne.hero-bg::before,
.contact-hero::before,
.hero-interne::before {
 position: absolute;
 content: "";
 width: 100vw;
 height: 100%;
 background:
  linear-gradient(#0000004d, #0000004d), url(../assets/gifs/hero-interne.jpg);
 background-size: cover;
 z-index: -1;
 transform: translateX(-50%);
 left: 50%;
 top: 0px;
}
.contact-hero::before {
 background:
  linear-gradient(#00000057, #00000057), url(../assets/gifs/hero-interne.jpg);
 background-size: cover;
}

.hero-bg nav,
.hero-interne nav {
 font-size: var(--font-size-sm);
 position: relative;
 z-index: 2;
}

.hero-interne nav,
.hero-bg nav {
 line-height: 27px;
}

.hero-interne h1 {
 margin-top: var(--spacing3);
 margin-bottom: 0;
}

body:not(.contact-page) main > .section {
 padding-top: 0;
}

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

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

.sc-content .ac-doubleColonne.bloc-border .ac-colonne {
 border: 1px solid var(--accent700);
 padding: var(--spacing6);
 border-radius: var(--radius6);
}

.page-interne .sc-content .ac-inlink {
 padding: 1rem;
 background-color: var(--accent200);
 border-radius: var(--radius6);
}

.ac-doubleColonne h2:not(:first-of-type),
.ac-doubleColonne:has(h1) h2 {
 margin-top: var(--spacing8);
}

.ac-doubleColonne.bloc-border.align-center
 + .ac-doubleColonne.bloc-border.align-center {
 padding-top: 0;
}

.ac-doubleColonne.bloc-border h2:first-of-type {
 margin-top: var(--spacing3);
}

.sc-content .ac-doubleColonne.bloc-border.align-center .ac-colonne ul {
 text-align: left;
}

@media screen and (min-width: 600px) and (max-width: 992px) {
 #container .ac-doubleColonne img {
  width: 50%;
  margin-inline: auto;
 }
}

.page-interne .sc-content .ac-doubleColonne + .ac-doubleColonne {
 margin-top: 0;
}

@media only screen and (max-width: 992px) {
 .ac-doubleColonne.bloc-border:not(.align-center) .ac-colonne.ac-colonne_2 {
  margin-top: var(--section-padding-block);
 }

 .ac-doubleColonne:has(+ #relance) {
  padding-bottom: var(--section-padding-block);
 }

 #container .sc-content .ac-doubleColonne.bloc-border .ac-colonne.ac-colonne_1,
 .sc-content .ac-doubleColonne.bloc-border .ac-colonne {
  margin-bottom: var(--spacing4);
 }

 .page-interne .ac-include {
  padding-block: var(--spacing4);
 }

 .sc-content #relance li {
  margin-bottom: var(--spacing4);
 }

 #container .hero-bg {
  padding-block: var(--spacing6) var(--spacing10);
 }
}

@media screen and (min-width: 993px) and (max-width: 1379px) {
 .contact-hero .title-2 {
  font-size: 36px;
 }

 .page-interne .title-2,
 .page-interne h2 {
  font-size: 35px;
 }
}

@media screen and (min-width: 993px) {
 .hero-bg {
  padding-block: var(--spacing56) var(--spacing30);
 }

 .page-interne h1 {
  font-size: 50px;
 }

 .sc-content .ac-doubleColonne {
  justify-content: space-between;
 }

 .sc-content .ac-doubleColonne:has(img) .ac-colonne {
  flex-basis: 47%;
 }

 .page-interne #container .sc-content img {
  object-fit: cover;
  width: auto;
  margin: auto;
 }

 .page-interne .sc-content .ac-doubleColonne:has(img) {
  align-items: center;
 }

 #container .hero-bg p {
  margin-bottom: 0;
 }

 .sc-content .ac-doubleColonne.bloc-border.align-center .ac-colonne {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
 }
}
