@font-face {
  font-family: 'Blacker-Pro-Display-Heavy';
  src: url(../fonts/Blacker-Pro-Display-Heavy.woff);
  src: url(../fonts/Blacker-Pro-Display-Heavy.woff) format('woff'),
       url(../fonts/Blacker-Pro-Display-Heavy.ttf) format('truetype');
}
@font-face {
  font-family: 'CormorantGaramond-Bold';
  src: url(../fonts/CormorantGaramond-Bold.woff);
  src: url(../fonts/CormorantGaramond-Bold.woff) format('woff'),
       url(../fonts/CormorantGaramond-Bold.ttf) format('truetype');
}
@font-face {
  font-family: 'Stingray';
  src: url(../fonts/Stingray.woff);
  src: url(../fonts/Stingray.woff) format('woff'),
       url(../fonts/Stingray.ttf) format('truetype');
}
@font-face {
  font-family: 'VujahdayScript-Regular';
  src: url(../fonts/VujahdayScript-Regular.woff);
  src: url(../fonts/VujahdayScript-Regular.woff) format('woff'),
       url(../fonts/VujahdayScript-Regular.ttf) format('truetype');
}


:root {
  --Bleu: #133161;
  --BleuClair: #006eb1;
  --Orange: #df5b0b;
  --OrangeClair: #f18700;
  /*--RougeDark: #b4010b;
  --BleuLight: #009aff; 
  --BleuDark: #013267;*/ 
}

/* 
Pair            : div > div:nth-child(even) {} 
Impair          : div > div:nth-child(odd) {} 
4e, 8e, 16e ..  : div > div:nth-child(4n) {} 
4, 7, 10, 13 .. : div > div:nth-child(3n+4) {} 
Le 3e           : div > div:nth-child(0n+3) {} 
*/




/** GENERAL *************************************/

html {font-size: 12px;}
body {font-size: 16px;line-height: 1.4; color: #333333; background-color: #fff; font-family: "Quicksand", sans-serif; font-weight: 400;}

p, ul, table {font-size: 1em;margin-bottom:1em;}
a {text-decoration: none; transition: all 0.4s; color: var(--Bleu);}
a.unstyled {color: inherit;text-decoration: underline;}
a.charte, .charte a:not(.btn) {color: var(--Bleu);text-decoration: underline; }


h1, .h1 { color: var(--Bleu); font-size: 2em; margin-bottom: .55em; font-family: 'Blacker-Pro-Display-Heavy'; line-height: 1.12em; display: inline-block;}
h1:after, .h1:after {content: ""; margin-top: 16px; width: 150px; height: 28px; background: url(../images/signature-titre.svg) top right no-repeat; background-size: 100%; display: block; margin-right: auto; margin-left: auto; animation: none;}
.h1.animate::after {
  animation: drawLine 1.0s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}
  
@keyframes drawLine {
  0%   { clip-path: inset(0 99.9% 0 0); }
100% { clip-path: inset(0 0 0 0); }
}
@media (min-width: 768px) {
	h1:after, .h1:after {margin-right: -30px; margin-left: auto; }
}
/*.text-center h1:after, .text-center.h1:after {margin-left: auto; margin-right: auto;}*/

/*h2, h1.h2 {color: var(--Bleu); font-size: 1.6em; margin-bottom: .75em;font-family: 'Blacker-Pro-Display-Heavy';line-height: 1em;}
h2:after, h1.h2:after {content: ""; margin-top: 1.1em; width: 80px; height: 8px; background-color: var(--Rouge); display: block;}
.text-center h2:after, .text-center h1.h2:after {margin-left: auto; margin-right: auto;}*/

@media (min-width: 480px) {
	h1, .h1-bandeau {font-size: 2.5em;}
	h2, h1.h2 {font-size: 1.75em;}
}
@media (min-width: 768px) {
	h1, .h1-bandeau {font-size: 3em;}
	h2, h1.h2 {font-size: 1.85em;}
}
@media (min-width: 992px) {
	h1, .h1-bandeau {font-size: 2.9em;}
	h2, h1.h2 {font-size: 2em;}
	.text-center.text-lg-start h2:after, .text-center.text-lg-start h1.h2:after {margin-left: 0; margin-right: 0;}
}
@media (min-width: 1200px) {
	h1, .h1-bandeau {font-size: 3.4em;}
	h2, h1.h2 {font-size: 2.1em;}
}
@media (min-width: 1500px) {
	h1, .h1-bandeau {font-size: 4.075em;}
	h2, h1.h2 {font-size: 2.22em; line-height: 1.2;}
	h2:after, h1.h2:after {width: 100px; height: 10px;}
}

.bg--grey {background-color: #efefef;}
.bg--creme {background-color: #f5f2ee;}

.rounded {border-radius: 10px;}

.btn {padding: 7px 30px 9px; font-size: 16px; text-align: center; background-color: var(--Rouge); border: 1px solid var(--Rouge); color: #fff;font-family: 'Typold-Regular'; border-radius: 30px; margin-bottom: 0; text-decoration: none !important;}
.btn:hover {color: #fff;background-color: var(--RougeDark); border-color: var(--RougeDark); text-decoration: none;}

.btn--outline {color: var(--Bleu); border: 1px solid var(--Bleu); background-color: transparent;}
.btn--outline:hover {color: #fff; background-color:var(--Bleu);border-color: var(--Bleu);}

.btn--contact {padding-left: 50px; background-image: url("../images/picto-phone.png"); background-repeat: no-repeat; background-position: 22px center; background-size: auto 22px;}
.btn--account {padding-left: 50px; background-image: url("../images/picto-user.svg"); background-repeat: no-repeat; background-position: 20px center; background-size: auto 22px;}

.page {overflow: hidden;}

.txt-bleu {color: var(--Bleu);}
.txt-noir {color: #000;}

.section-titre {margin-top: -30px; position: relative;}
@media (min-width: 992px) {
	.section-titre {margin-top: -50px;}
}
@media (min-width: 1500px) {
	.section-titre {margin-top: -70px;}
}



/** HEADER *****************************************************/

.page-header {background-color: #fff; z-index: 999;box-shadow: 0 2px 2px rgba(0, 0, 0, .1);position: relative;}

.topbar {background: linear-gradient(to right, var(--Bleu) 0%, var(--Bleu) 35%, #03639e 50%, var(--Bleu) 60%, var(--Bleu) 100%); padding: 9px 0;}
.topbar-nav {font-size: 0.89em;}
.topbar-nav ul {margin: 0;}
.topbar-nav ul li {margin-right: 5px;}
.topbar-nav ul li:last-child {margin-right: 0;}
.topbar-nav ul li a {color: #fff; padding: 3px 10px 5px; line-height: 1em; border-radius: 30px; display: inline-block;border: 1px solid transparent;}
/*.topbar-nav ul li.qui:after {content:'|'; color: #fff; padding-left: 9px;}*/
.topbar-nav ul li.qui {border-right: solid 1px #fff; padding-right: 5px;}
.topbar-nav ul li.telephone a:before {content:''; width: 15px; height: 15px; background: url(../images/telephone.svg) center left no-repeat; background-size: 80%; padding-left: 25px;}
.topbar-nav ul li.email a:before {content:''; width: 15px; height: 15px; background: url(../images/mail.svg) center left no-repeat; background-size: 80%; padding-left: 25px;}
.topbar-nav ul li a:hover, .topbar-nav ul li a.current {color: var(--OrangeClair);}
.topbar-nav ul li.link-outline a {border-color: #fff;}
.topbar-nav ul li.link-outline a:hover {background-color: #fff; color: var(--Bleu);}

.header-logo {width: 200px;margin: 12px 0;}
.header-logo a:hover {text-decoration: none;}

.topbar-nav ul.socials li a {width: 25px; height: 25px; margin-left: 6px; background-color: #fff; border-radius: 50%; padding: 0; cursor: pointer; display: inline-block;}
.topbar-nav ul.socials li a svg {display: block; height: 21px; width: auto; margin: 3px auto;}
.topbar-nav ul.socials li a svg path {fill: var(--Bleu);}
.topbar-nav ul.socials li a:hover {background-color: var(--OrangeClair);}
.topbar-nav ul.socials li a:hover svg path {fill: #fff;}


@media (min-width: 480px) {
	a.topbar-account .peda {display: inline;}
}
@media (min-width: 992px) {
	.header-logo {width: 280px;margin: 18px 0;}
	a.topbar-account .peda {display: none;}
}
@media (min-width: 1200px) {
	.header-logo {width: 314px;}
	a.topbar-account .peda {display: inline;}
}

/** NAV *****************************************************/

.main-nav ul {margin: 0; padding: 0;}
ul.nav-menu li {display:block;}
ul.nav-menu a {display: block;}
ul.nav-menu a:hover {text-decoration: none;}


/* ======================== GLOBAL ======================== */

.nav-toggle {
  display: block;
}

.nav-icon {
  width: 40px;
  cursor: pointer;
}

.nav-icon:after,
.nav-icon:before,
.nav-icon div {
  background-color: var(--Bleu);
  border-radius: 3px;
  content: '';
  display: block;
  height: 5px;
  margin: 7px 0;
  transition: all 0.4s ease-in-out;
}

.nav-toggle.is-open .nav-icon:before {
  transform: translateY(12px) rotate(135deg);
}

.nav-toggle.is-open .nav-icon:after {
  transform: translateY(-12px) rotate(-135deg);
}

.nav-toggle.is-open .nav-icon div {
  transform: scale(0);
}


/* ======================== MOBILE (max-width: 991px) ======================== */
@media (max-width: 991px) {
  #nav {
    display: none;
  }

  body.nav-is-open {
    overflow: hidden;
  }

  .main-nav {
    position: fixed;
    top: 160px;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-y: scroll;
    background-color: #fff;
    z-index: 997;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;
    /*padding-top: 20px;*/
  }

  ul.nav-menu,
  .extranav ul {
    width: 684px;
    margin: 0 auto;
  }
  
  ul.nav-menu,
  .extranav ul li:hover {background: var(--BleuClair); }

  ul.nav-menu li a {
    display: block;
    color: var(--Bleu);
  }

  ul.nav-menu > li {
    margin-bottom: 1em;
  }

  ul.nav-menu > li > a {
    padding: 10px;
    font-family: 'Typold-Bold';
    font-size: 1.3em;
    background-color: var(--Bleu);
    color: #fff;
  }


  .extranav {
    background-color: var(--Bleu);
    padding-bottom: 25px;
  }

  .extranav ul li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .extranav ul li:last-child {
    border: 0;
  }

  .extranav ul li a {
    color: #fff;
    padding: 10px;
    display: block;
  }

  .extranav ul li a:hover {
    background-color: var(--BleuDark);
  }

  .nav-toggle {
    margin-left: auto;
  }
}


/* ======================== MOBILE SMALL (max-width: 767px) ======================== */
@media (max-width: 767px) {
  ul.nav-menu,
  .extranav ul {
    width: auto; 
    padding: 0 15px;
  }
}


/* ======================== DESKTOP (min-width: 992px) ======================== */
@media (min-width: 992px) {
  .main-nav {
    margin-top: 0;
  }

  .main-navm {
    justify-content: flex-start;
  }

  .main-nav {
    justify-content: flex-end;
  }

  .main-navm .nav-menu,
  .main-nav .nav-menu {
    display: inline-flex;
  }

  .titre-onglet {
    font-weight: 600; font-size: 1.12em;
    padding: 3px 0;
    color: var(--Orange);
    text-align: center;
  }
  #nav3 .titre-onglet {color: var(--Bleu);}

  ul.nav-menu {
    background: var(--Orange);
    border-radius: 20px;
  }
  #nav3 ul.nav-menu {background: var(--Bleu);}

  ul.nav-menu > li {
    display: inline-block;
  }

  ul.nav-menu > li > a {
    padding: 7px 15px;
    position: relative;
    font-weight: 500;
    color: #fff;
    line-height: 1.2em;
    border-radius: 20px;
  }

  ul.nav-menu > li > a:hover,
  .nav-menu > li > a.active {
    background: var(--OrangeClair);
    box-shadow: 2px 0 2px rgba(0, 0, 0, 0.5);
  }
  #nav3 ul.nav-menu > li > a:hover, #nav3 .nav-menu > li > a.active {background: var(--BleuClair);}

  /* Désactiver l’effet "active" si un autre bouton est survolé */
  ul.nav-menu:hover:has(#navbtn2:hover) #navbtn1.active,
  ul.nav-menu:hover:has(#navbtn3:hover) #navbtn1.active,
  ul.nav-menu:hover:has(#navbtn1:hover) #navbtn2.active,
  ul.nav-menu:hover:has(#navbtn3:hover) #navbtn2.active,
  ul.nav-menu:hover:has(#navbtn2:hover) #navbtn3.active,
  ul.nav-menu:hover:has(#navbtn1:hover) #navbtn3.active,
  
  ul.nav-menu:hover:has(#navbtn5:hover) #navbtn4.active,
  ul.nav-menu:hover:has(#navbtn4:hover) #navbtn5.active
  {
    background: none;
    box-shadow: none;
  }
}


/* ======================== LARGE SCREENS ======================== */
@media (min-width: 1200px) {
  .main-nav .submenu1,
  .main-nav .submenuimg {
    width: 1104px;
  }

  .submenu-wrap {
    top: 168px;
  }

  .main-nav .submenu1 > li {
    width: 380px;
  }

  .main-nav .submenu2 {
    width: 440px;
    left: 380px;
    padding-left: 60px;
  }
}







/** SLICKSLIDER *******************************************************/

.slick-slider {position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list {position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus {outline: none; }
.slick-list.dragging {cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list {-webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track {position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after {display: table; content: ''; }
.slick-track:after {clear: both; }
.slick-loading .slick-track {visibility: hidden; }
.slick-slide {display: none; float: left; height: 100%; min-height: 1px; }
[dir='rtl'] .slick-slide {float: right; }
.slick-slide img {display: block; }
.slick-slide.slick-loading img {display: none; }
.slick-slide.dragging img {pointer-events: none; }
.slick-initialized .slick-slide {display: block; }
.slick-loading .slick-slide {visibility: hidden; }
.slick-vertical .slick-slide {display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden {display: none; }
.slick-loading .slick-list:after { background-color: rgba(0, 0, 0, .3); content:""; display:block; width: 40px; height: 40px; position: absolute; left: 50%; margin-left: -20px; top: 50%; margin-top: -20px; -webkit-animation: rotate-loading 1.2s infinite ease-in-out; animation: rotate-loading 1.2s infinite ease-in-out; }
@-webkit-keyframes rotate-loading {0% { -webkit-transform: perspective(120px)} 50% { -webkit-transform: perspective(120px) rotateY(180deg)} 100% { -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg)} }
@keyframes rotate-loading {0% { transform: perspective(120px) rotateX(0deg) rotateY(0deg);-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg)} 50% { transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg)} 100% { transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);} }

/* Arrows */
.slick-prev, .slick-next {width: 34px; height: 59px;border: 0;font-size: 0; line-height: 0; position: absolute; z-index: 99; top: calc(50% - 15px); display: block;  padding: 0; text-decoration: none !important; overflow: hidden;-webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent;  outline: none; background-color: transparent; }
.slick-prev:hover, .slick-next:hover {color: transparent; outline: none;}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {opacity: .25;}
.slick-prev:before, .slick-next:before {width: 34px; height: 59px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: ""; display: block; background-repeat: no-repeat; background-position: center center;}
.slick-prev {left: 15px;}
.slick-next {right: 15px;}
.slick-prev:before {background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='31.5 54.2'><path fill='none' stroke-miterlimit='none' stroke='%23004289' d='M0.9,27.2c0,0.9,0.4,1.9,1.1,2.6l22.6,22.6c1.4,1.4,3.8,1.4,5.2,0c1.4-1.4,1.4-3.8,0-5.2l-20-20l20-20 c1.4-1.4,1.4-3.8,0-5.2c-1.4-1.4-3.8-1.4-5.2,0L1.9,24.6C1.2,25.4,0.9,26.3,0.9,27.2z'/></svg>"); }
.slick-prev:hover:before {background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='31.5 54.2'><path fill='%23004289' d='M0.8,27.1c0-0.9,0.4-1.9,1.1-2.6L24.5,1.8c1.4-1.4,3.8-1.4,5.2,0c1.4,1.4,1.4,3.8,0,5.2l-20,20l20,20 c1.4,1.4,1.4,3.8,0,5.2c-1.4,1.4-3.8,1.4-5.2,0L1.8,29.7C1.1,29,0.8,28,0.8,27.1'/></svg>"); }
.slick-next:before{background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='31.5 54.2'><path fill='none' stroke-miterlimit='none' stroke='%23004289' d='M30.9,27.2c0-0.9-0.4-1.9-1.1-2.6L7.2,2C5.7,0.6,3.4,0.6,1.9,2c-1.4,1.4-1.4,3.8,0,5.2l20,20l-20,20 c-1.4,1.4-1.4,3.8,0,5.2c1.4,1.4,3.8,1.4,5.2,0l22.6-22.6C30.5,29.1,30.9,28.2,30.9,27.2z'/></svg>");}
.slick-next:hover:before{background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='31.5 54.2'><path fill='%23004289' d='M30.8,27.1c0,0.9-0.4,1.9-1.1,2.6L7.1,52.3c-1.4,1.4-3.8,1.4-5.2,0c-1.4-1.4-1.4-3.8,0-5.2l20-20l-20-20 c-1.4-1.4-1.4-3.8,0-5.2c1.4-1.4,3.8-1.4,5.2,0l22.6,22.6C30.4,25.2,30.8,26.1,30.8,27.1'/></svg>");}

/* Dots */
.slick-dots {bottom: 0;position: absolute; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
.slick-dots li {width: 20px; height: 20px;border: 2px solid #fff; border-radius: 50%; margin: 0 5px;position: relative; display: inline-block; padding: 0; cursor: pointer; }
.slick-dots li button {width: 11px; height: 12px; margin: 2px; background: #fff; opacity: 0;font-size: 0; line-height: 0; display: block; cursor: pointer; color: transparent; border: 0; outline: none;border-radius: 50%;}
.slick-dots li button:hover, .slick-dots li button:focus {outline: none; opacity: .75;}
.slick-dots li.slick-active button {opacity: 1;}


/* main slider */
.hero {position: relative; }
.heroslider-img {position: absolute; left: 0; top: 0; right: 0; bottom: 0;}
.heroslider-img,
.heroslider-img .slick-slide {height: 500px; }
.heroslider-img .slick-slide {background-position: center center; background-repeat: no-repeat;background-size: cover; position: relative;}
.heroslider-img .slick-dots {bottom: 10px;}
.heroslider-img .slogan {display: none; width: 500px; height: 100px; position: absolute; left: calc(50% - 250px); top: calc(40% - 50px); background: url(../images/slogan-slider.png) center center no-repeat; background-size: 100%}
.hero .etoile1 {width: 90px; height:90px; left: 46%; top: 22%;}
.hero .etoile2 {width: 75px; height:75px; left: 56%; top: 40%;}
.hero .etoile3 {width: 115px; height:115px; left: 36%; top: 30%;}
.hero .etoile4 {width: 115px; height:115px; left: 30%; top: 18%;}
.hero .etoile-animation-1 {position: absolute; background: url(../images/etoile-slider.png) center center no-repeat; background-size: 100%;
-webkit-animation: blinkAnim 8s infinite; -moz-animation: blinkAnim 8s infinite; -ms-animation: blinkAnim 8s infinite; -o-animation: blinkAnim 8s infinite; animation: blinkAnim 8s infinite; }
.hero .etoile-animation-2 {position: absolute; background: url(../images/etoile-slider.png) center center no-repeat; background-size: 100%;
-webkit-animation: blinkAnim2 10s infinite; -moz-animation: blinkAnim2 10s infinite; -ms-animation: blinkAnim2 10s infinite; -o-animation: blinkAnim2 10s infinite; animation: blinkAnim2 10s infinite; }
.hero .etoile-animation-3 {position: absolute; background: url(../images/etoile-slider.png) center center no-repeat; background-size: 100%;
-webkit-animation: blinkAnim 6s infinite; -moz-animation: blinkAnim 6s infinite; -ms-animation: blinkAnim 6s infinite; -o-animation: blinkAnim 6s infinite; animation: blinkAnim 6s infinite; }
.hero .etoile-animation-4 {position: absolute; background: url(../images/etoile-slider.png) center center no-repeat; background-size: 100%;
-webkit-animation: blinkAnim2 7s infinite; -moz-animation: blinkAnim2 7s infinite; -ms-animation: blinkAnim2 7s infinite; -o-animation: blinkAnim2 7s infinite; animation: blinkAnim2 7s infinite; }


@keyframes blinkAnim {
     from { opacity: 1; }
     50%   { opacity: 0.35; }
     to   { opacity: 1; }
}
@-webkit-keyframes blinkAnim {
     from { opacity: 1; }
     50%   { opacity: 0.35; }
     to   { opacity: 1; }
}
@keyframes blinkAnim2 {
     from { opacity: 1; }
	 45% {opacity: 1;}
     80%   { opacity: 0.55; }
     to   { opacity: 1; }
}
@-webkit-keyframes blinkAnim2 {
     from { opacity: 1; }
     45% {opacity: 1;}
     80%   { opacity: 0.55; }
     to   { opacity: 1; }
}
	
@media (min-width: 280px) {
	.heroslider-img, .hero, 
	.heroslider-img .slick-slide {height: 450px;}
	.heroslider-img .slick-dots {bottom: 80px;}
}
@media (min-width: 500px) {
	.heroslider-img .slogan {display: block;}
}
@media (min-width: 768px) {
	.heroslider-img, .hero, 
	.heroslider-img .slick-slide {height: 520px;}
	.heroslider-img .slick-dots {bottom: 100px;}
	.heroslider-img .slogan {width: 600px; height: 150px; left: calc(50% - 300px); top: calc(40% - 75px); background: url(../images/slogan-slider.png) center center no-repeat; background-size: 100%}
}
@media (min-width: 992px) {
	.heroslider-img, .hero, 
	.heroslider-img .slick-slide {height: 580px;}
	.heroslider-img .slick-dots {bottom: 120px;}
	.hero .etoile1 {left: 40%; top: 22%;}
	.hero .etoile2 {left: 46%; top: 40%;}
	.hero .etoile3 {left: 32%; top: 30%;}
	.hero .etoile4 {left: 28%; top: 18%;}
}
@media (min-width: 1200px) {
	.heroslider-img, .hero, 
	.heroslider-img .slick-slide {height: 600px;}
	.heroslider-img .slick-dots {bottom: 150px;}
	.hero .etoile1 {left: 42%; top: 22%;}
	.hero .etoile2 {left: 46%; top: 40%;}
	.hero .etoile3 {left: 34%; top: 33%;}
	.hero .etoile4 {left: 38%; top: 18%;}
}
@media (min-width: 1500px) {
	.hero .etoile1 {left: 48%; top: 22%;}
	.hero .etoile2 {left: 52%; top: 40%;}
	.hero .etoile3 {left: 40%; top: 33%;}
	.hero .etoile4 {left: 46%; top: 18%;}
}
@media (min-width: 2200px) { 
	.heroslider-img .slick-dots {bottom: 180px;}
}


.bigwave {position: absolute; bottom: 0; overflow:hidden; left: 0; right: 0; height: 65px;}
.bigwave > span {display: block; width: 480px; height: 65px; margin-left: -240px; left: 50%; bottom: 0; background: url("../images/vague.svg") no-repeat center center; background-size: cover;position: absolute;}
@media (min-width: 480px) { 
	.bigwave {height: 70px;}
	.bigwave > span {width: 768px; height: 70px; margin-left: -384px;}
}
@media (min-width: 768px) { 
	.bigwave {height: 74px;}
	.bigwave > span {width: 992px; height: 74px; margin-left: -496px;}
}
@media (min-width: 992px) { 
	.bigwave {height: 90px;}
	.bigwave > span {width: 1200px; height: 90px; margin-left: -600px;}
}
@media (min-width: 1200px) { 
	.bigwave {height: 102px;}
	.bigwave > span {width: 1500px; height: 102px; margin-left: -750px;}
}
@media (min-width: 1500px) { 
	.bigwave {height: 125px;}
	.bigwave > span {width: 1800px; height: 125px; margin-left: -900px;}
}
@media (min-width: 1800px) { 
	.bigwave {height: 139px;}
	.bigwave > span {width: 2000px; height: 139px; margin-left: -1000px;}
}
@media (min-width: 2000px) { 
	.bigwave {height: 149px;}
	.bigwave > span {width: 2400px; height: 149px; margin-left: -1150px;}
}
@media (min-width: 2200px) { 
	.bigwave {height: 160px;}
	.bigwave > span {width: 2600px; height: 160px; margin-left: -1300px;}
}




/* destinations slider */
/* Ne plus forcer aspect-ratio sur le slide */
.destinations-slider .slick-slide {
  padding: 12px;
  box-sizing: border-box;
  display: block !important;
}

/* Nouveau conteneur carré pour l’image */
.destinations-slider .image-wrapper {
  aspect-ratio: 4/3;
  width: 100%;
  overflow: hidden;
}

.destinations-slider .item {border-radius: 4px; box-shadow: 1px 1px 7px #999;  }
.destinations-slider .item .titre {color: var(--Bleu); font-family: 'Blacker-Pro-Display-Heavy'; font-size: 1.4em; line-height: 1.18; margin-bottom: 2px;}
.destinations-slider .item .type {font-family: 'QuickSand'; text-transform: uppercase; padding: 0; letter-spacing: 0.75px; color: #000;}
.destinations-slider .item .date {font-family: 'QuickSand'; font-size: 0.9em; margin-top: 5px; margin-bottom: 10px; position: relative;  color: var(--Orange); text-transform: uppercase; font-weight: 600;}
.destinations-slider .item .date::before {
  content: "";
  display: block;
  width: 50px;
  height: 1px;
  background-color: #dedede;
  margin-bottom: 8px; /* centré, avec espace en dessous */
}
.destinations-slider .item .avantages {margin:0; padding: 0;}
.destinations-slider .item .avantages li {margin:0; padding: 0; list-style: none; padding-left: 18px; position: relative; color: #000; font-size: 0.93em; font-weight: 500;}
.destinations-slider .item .avantages li::before {content: '';
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-55%);
  width: 10px;
  height: 10px;
  background-image: url(../images/check.svg);
  background-size: contain;
background-repeat: no-repeat;}
.destinations-slider .item .prix {color: var(--Orange); font-size: 1.97em; font-weight: 600; line-height: 1.05; margin-bottom: 3px;}
.destinations-slider .item .bouton a {position: relative; background: var(--OrangeClair); border-radius: 50px; height: 34px; padding: 4px; padding-top: 6px; padding-left: 20px; text-align:center; display: block; width: 125px; color: #fff; font-size: 0.93em; font-weight: 500; margin: 0 auto;}
.destinations-slider .item .bouton a:before {content: ''; position: absolute; top: 5px; left: 7px; display: block; width: 22px; height: 22px; background: url(../images/loupe.svg) center center no-repeat; background-size: 22px;}
.destinations-slider .item .bouton a:hover {background: var(--Orange);}



/* L’image remplit le carré */
.destinations-slider .image-wrapper {
  overflow: hidden;
}
.destinations-slider .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; border-top-left-radius: 4px; border-top-right-radius: 4px;
  transition: transform 0.4s ease;
}
.destinations-slider .image-wrapper:hover img {
  transform: scale(1.05);
}

/* Texte sous l’image */
.destinations-slider .infos {
  padding: 10px 0 0;
  text-align: center;
}

/* Étend les slides à la même hauteur */
.destinations-slider .slick-track {
  display: flex !important;
}

/* Force les slides à prendre toute la hauteur */
.destinations-slider .slick-slide {
  height: auto !important;
  display: flex !important;
  flex-direction: column;
}

/* L'élément .item prend toute la hauteur disponible */
.destinations-slider .item {
  flex: 1;
  display: flex;
  flex-direction: column;  
}
.destinations-slider .item a {position: relative;}
.destinations-slider .item a .legende {position: absolute; width: 160px; left: calc(50% - 80px); bottom: 12px; height: 28px; background: var(--OrangeClair); color: #fff; text-align: center; padding: 3px 8px; border-radius: 20px; font-size: 0.9em; font-weight: normal;}
.destinations-slider .item a .legende-complet {width: 100px; left: calc(50% - 50px); }
.destinations-slider .infos {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* centrage vertical */  
  padding: 18px;
  text-align: left;
}

.destinations-slider .slick-dots {margin-bottom: -30px;}
.destinations-slider .slick-dots li {
  width: 12px;
  height: 12px;
  display: inline-block;
  margin: 0 3px;
  position: relative;
}

.destinations-slider .slick-dots li button {
  padding: 0;
  border: 2px solid #333;
  background: #333;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  opacity: 0.5;
  box-sizing: border-box;
  margin: auto;
  display: block;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0;  /* empêche les espaces */
  line-height: 0;
}

.destinations-slider .slick-dots li.slick-active button {
  width: 12px;
  height: 12px;
  opacity: 1;
}


.destinations-slider .slick-next {right:0; margin-right: -20px;}
.destinations-slider .slick-prev {left:0; margin-left: -20px;}
.destinations-slider .slick-prev, .destinations-slider .slick-next {background: #fff; width: 50px; height: 50px; border-radius: 50%; box-shadow: 1px 1px 7px #999;}
.destinations-slider .slick-prev:before {background: url(../images/slider-fleche-gauche.svg) center center no-repeat; background-size: 24px; width: 50px; height: 50px;}
.destinations-slider .slick-next:before {background: url(../images/slider-fleche-droite.svg) center center no-repeat; background-size: 24px; width: 50px; height: 50px;}


.souhaits {color: #fff;}
.souhaits .souhait-1 {background: linear-gradient(0.25turn, var(--OrangeClair) 0%, var(--Orange) 100%); padding: 15px; padding-bottom: 35px;}
.souhaits .souhait-2 {background: linear-gradient(0.25turn, var(--BleuClair) 0%, var(--Bleu) 100%); padding: 15px; padding-bottom: 35px; }
.souhaits .invite {font-family: 'Blacker-Pro-Display-Heavy'; font-size: 1.75em; padding: 10px 0;}
.souhaits .choix {font-family: 'VujahdayScript-Regular'; font-size: 3em; line-height: 1.3;}
.souhaits .phrase {padding: 15px; font-weight: 700; font-size: 1.15em;}
.souhaits .formulaire {background: #fff; padding: 20px 25px; border-radius: 15px; color: #555; width: 292px; margin: 0 auto;}
.souhaits .choix-type {overflow: hidden; font-size: 0.9em; width: 242px; border: solid 1px #ededed; border-radius: 25px;}
.souhaits .choix-type .choix-item {float: left; width: 50%; text-align: center;position: relative; height: 40px; width: 120px; padding: 10px 5px; padding-left: 30px; background: #ededed; cursor: pointer;}
.souhaits .choix-type .choix-actif {background: #fff;}
.souhaits .choix-type #choix-1:before {content: ''; position: absolute; top: 10px; left: 5px; display: block; width:30px; height: 20px; background: url(../images/journee-svg.svg) center right no-repeat; background-size: 30px;}
.souhaits .choix-type #choix-2:before {content: ''; position: absolute; top: 10px; left: 5px; display: block; width:30px; height: 20px; background: url(../images/sejour-svg.svg) center right no-repeat; background-size: 28px;}
.souhaits #date_depart { background: #ededed; padding: 10px 5px; height: 40px; border: none; border-radius: 25px; text-align: center; width: 100%;}
.souhaits .bouton1 {position: relative; background: var(--OrangeClair); border-radius: 50px; height: 40px; padding: 5px; padding-top: 8px; padding-left: 30px; text-align:center; display: block; color: #fff; font-size: 0.95em; font-weight: 600;}
.souhaits .bouton1:before {content: ''; position: absolute; top: 5px; left: calc(50% - 70px); display: block; width:30px; height: 30px; background: url(../images/loupe.svg) center center no-repeat; background-size: 30px;}
.souhaits .bouton1:hover {background: var(--Orange);}
.souhaits .bouton2 {position: relative; background: #ededed; border-radius: 50px; height: 40px; padding: 5px; padding-top: 8px; text-align:center; display: block; color: #000; font-size: 0.95em; font-weight: 600;}
.souhaits .bouton2:hover {background: #ccc;}
.souhaits .bouton3 {position: relative; background: var(--Bleu); border-radius: 50px; height: 40px; padding: 5px; padding-top: 8px; text-align:center; display: block; color: #fff; font-size: 0.95em; font-weight: 600;}
.souhaits .bouton3:hover {background: var(--BleuClair);}

@media (min-width: 480px) {
	.souhaits .formulaire2 {width: 350px; border-radius: 40px; }
}
@media (min-width: 768px) {
	.souhaits {background: url(../images/bg-souhaits.jpg) center center no-repeat; background-size: cover;}
	.souhaits .formulaire {border-radius: 15px;}
	
	.souhaits .row {display: flex; align-items: center; /* Centre verticalement les enfants */}

  .souhaits .souhait-1,
  .souhaits .souhait-2 {
    background: none; display: flex;
    flex-direction: column;
    justify-content: center; /* Centre le contenu verticalement */
    height: 100%; /* Nécessaire si le parent a une hauteur définie */
  }
}
@media (min-width: 1200px) {
	.souhaits .formulaire {width: auto; border-radius: 40px;}
	.souhaits .bouton1 span {display: none;}
	.souhaits .bouton1:before {left: 10px; }
	.souhaits .formulaire2 {width: 350px;}
}
@media (min-width: 1500px) {
	.souhaits .bouton1:before {left: 5px; }
	.souhaits .bouton1 span {display: inline;}
}


.famille .bouton {background: #ededed; border-radius: 50px; height: 40px; padding: 7px 40px; padding-top: 8px; text-align:center; display: inline-block; color: #000; font-size: 0.95em; font-weight: 600;}
.famille .bouton:hover {background: #ccc;}
.famille {
  position: relative;
  z-index: 1;
}

.avec-carte-europe::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url(../images/carte-europe.png) top right no-repeat;
  background-size: auto 100%;
  opacity: 0.5;
  z-index: -1; /* derrière le contenu */
  pointer-events: none; /* permet de cliquer à travers */
}
@media (min-width: 992px) {
	.avec-carte-europe::before {opacity: 1;}
}


.questions {background: linear-gradient(0.25turn, var(--BleuClair) 0%, var(--Bleu) 100%); padding: 50px 30px; color: #fff;}
.questions .h1 {color: #fff;}
.questions .h1:after {margin-right: auto; margin-left: auto;}
.questions h3 {font-family: 'VujahdayScript-Regular'; font-size: 2.5em; font-weight: 400; margin-bottom: 15px; line-height: 1;}
.questions .discuter {font-weight: 700; font-size: 1.25em; margin-bottom: 2px;}
.questions .bouton {background: #fff; border-radius: 50px; height: 40px; padding: 7px 40px; padding-top: 8px; text-align:center; display: inline-block; color: #000; font-size: 0.95em; font-weight: 600; border: solid 1px #fff;}
.questions .bouton:hover {background: var(--BleuClair); color: #fff;}
@media (min-width: 768px) {
	.questions {background: url(../images/bg-questions.jpg) center center no-repeat; background-size: cover;}
}




/** BANDEAU PAGES INTERIEURES ****************************************************/
.bandeau {height: 300px; position : relative;}
.bandeau .slogan {position: absolute; text-align: center; width: 100%; top: calc(40% - 65px); color: #fff; font-family: 'Blacker-Pro-Display-Heavy'; font-size: 2.7em; text-shadow: 1px 1px 2px #000; padding: 0 10px;}
.bandeau .slogan .sous-titre {font-family: "Quicksand", sans-serif; margin-top: 5px; font-size: 0.52em;}
@media (min-width: 768px) {
	.bandeau {height: 330px;}
	.bandeau .slogan {width: 600px; left: calc(50% - 300px);}
}
@media (min-width: 992px) {
	.bandeau {height: 350px;}
}
@media (min-width: 1200px) {
	.bandeau {height: 380px;}
}




/** QUI SOMMES NOUS ****************************************************/
body.qui .bandeau {background: url(../images/header-qui.jpg) bottom left -150px; background-size: cover;}
@media (min-width: 768px) {
	body.qui .bandeau {background: url(../images/header-qui.jpg) bottom left; background-size: cover;}
}
@media (min-width: 1500px) {
	body.qui .bandeau {background: url(../images/header-qui.jpg) bottom center; background-size: cover;}
}

.equipe .accroche {color: var(--Bleu); font-size: 1.1em; font-weight: 600; text-align: center; margin: 0 auto; max-width: 580px;}
.equipe .listing .item {margin: 0 auto; max-width: 210px;}
.equipe .listing .photo {border-radius: 50%; aspect-ratio: 1;}
.equipe .listing .nom {color: var(--OrangeClair); font-family: 'Blacker-Pro-Display-Heavy'; font-size: 1.3em; padding: 10px 0; line-height: 1.2;}

.atouts .item {flex: 1; display: flex; flex-direction: column; box-shadow: 1px 1px 7px #999; margin-left: auto; margin-right: auto; max-width: 420px;}
.atouts .item .item-header {aspect-ratio: 1.5; background: url(../images/bg-atouts.jpg) center center no-repeat; background-size: cover; color: #fff; font-family: 'Blacker-Pro-Display-Heavy'; font-size: 1.7em; line-height: 1.12; padding: 20px 0; display: flex;
  flex-direction: column;       /* Empile les enfants verticalement */
  align-items: center;          /* Centre horizontalement */
  justify-content: flex-end;    /* Aligne tout en bas */
  text-align: center;}
.atouts .item-body ul {margin:0; padding:0; list-style: none;}
.atouts .item-body ul li {padding-left: 23px; position: relative; color: #000; font-size: 0.93em; font-weight: 500; margin-bottom: 5px;}
.atouts .item-body li::before {content: '';
  position: absolute;
  left: 0;
  top: 5px;
 /* transform: translateY(-55%);*/
  width: 14px;
  height: 14px;
  background-image: url(../images/check.svg);
  background-size: contain;
background-repeat: no-repeat; }

@media (min-width: 992px) {
.atouts .row-items {
    display: flex;
  }

  .atouts .row-items > .col-lg-4 {
    display: flex;
  }

  .atouts .item {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
  }

  .atouts .item-body {
    flex-grow: 1;
  }
}




/** FAQ ****************************************************/
body.faq .bandeau {background: url(../images/header-faq.jpg) bottom center; background-size: cover;}
body.faq .domaine {border-bottom: dotted 1px #ccc;}
body.faq .domaine.dernier {border-bottom: none;}
body.faq .domaine-titre {font-family: 'Blacker-Pro-Display-Heavy'; line-height: 1.12em; color: var(--Orange); font-size: 1.55em;}

body.faq .item .question {background: #eceff9; border-radius: 8px; padding: 14px; margin-bottom: 18px; font-weight: 700; font-size: 1.12em; color: var(--Bleu); position: relative; cursor:pointer;}
body.faq .item .question:after {content: ''; position: absolute; top: calc(50% - 7px); right: 14px; display: block; width: 15px; height: 15px; background: url(../images/faq-fleche-bas.svg) center center no-repeat; background-size: 15px;}
body.faq .item .question.current:after {background: url(../images/faq-fleche-droite.svg) center center no-repeat; background-size: 15px;}
body.faq .item .reponse {margin-top: -11px;}

@media (max-width: 767.98px) {
	body.faq .bandeau .slogan {font-size: 2.4em;}
}
@media (max-width: 479.98px) {
	body.faq .bandeau .slogan {font-size: 2em;}
}




/** DEVIS ****************************************************/
body.devis .bandeau {background: url(../images/header-devis.jpg) bottom center; background-size: cover;}
body.devis .h1 span {font-family: "Quicksand", sans-serif; font-weight: 600; font-size: 0.53em;}
body.devis .h1:after {margin-left: auto; margin-right: auto;}
body.devis .bigwave > span {background: url("../images/vague-creme.svg") no-repeat center center; background-size: cover;}
body.devis .section-titre {margin-top: -30px; position: relative;}
@media (min-width: 992px) {
	body.devis .section-titre {margin-top: -30px;}
}
@media (min-width: 1500px) {
	body.devis .section-titre {margin-top: -40px;}
}

body.devis form {margin-left: auto; margin-right: auto; max-width: 480px;}
body.devis form .titre {font-weight: 600; font-size: 1.4em;}
body.devis form .bt-type {display: inline-block; border: solid 1px var(--Bleu); color: var(--Bleu); padding: 4px 30px; font-size: 1.11em; font-weight:600; border-radius: 25px; display: inline-block; cursor: pointer;}
body.devis form .bt-type.current, body.devis form .bt-type:hover {background: var(--Bleu); color: #fff;}
body.devis form .ligne {border-bottom: solid 2px #fff; margin-top: 15px; padding-bottom: 15px; text-align: left;}
body.devis form .ligne-derniere {border-bottom: none;}
body.devis form .ligne label {display: block;  padding-bottom: 8px;}
body.devis form .obli {color: var(--Orange);}
body.devis form .ligne input {border: none; border-radius: 4px; background: #fff; padding: 15px 22px; width: 100%;}
body.devis form .ligne select {border: none; border-radius: 4px; background: #fff; padding: 15px 22px; padding-bottom: 16px; width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: white url("data:image/svg+xml;utf8,<svg fill='black' height='10' width='10' viewBox='0 0 10 10' xmlns='http://www.w3.org/2000/svg'><path d='M0 2l5 5 5-5z'/></svg>") no-repeat right 1rem center;
  padding-right: 2.5rem;
}
body.devis form .ligne textarea {border: none; border-radius: 4px; background: #fff; padding: 15px 22px; width: 100%; height: 180px;}
body.devis form .ligne .champs-radio input {width: 20px;}
body.devis form .ligne .champs-radio label {display: inline; padding-right: 20px;}
body.devis form .type_produit {text-align: center!important;}
body.devis form input[type="submit"] {background: var(--OrangeClair); color: #fff; padding: 8px 32px; font-size: 0.9em; border-radius: 17px; border: none;}
body.devis form input[type="submit"]:hover {background: var(--Orange);}
@media (min-width: 992px) {
	body.devis form {max-width: 700px;}
}

/* Inscription en ligne */
body.devis.inscription .bt-supprimer {color: var(--Orange); font-size: 0.71em; text-decoration: underline; font-weight: 400;}
body.devis.inscription form {font-weight: 700;}
body.devis.inscription form .ligne {border-bottom: none;}
body.devis.inscription form .titre {line-height: 1;}
body.devis.inscription form .bt-ajout {background: var(--BleuClair); color: #fff; padding: 8px 32px; font-size: 0.9em; border-radius: 17px; border: none;}
body.devis.inscription form .bt-ajout:hover {background: var(--Bleu);}
body.devis.inscription hr {display: block;
  height: 1px;
  border: 0;
  border-top: 2px solid #fff; margin: 40px 0;
padding: 0;}
body.devis.inscription .checkbox-container {
      display: flex;
      align-items: center; /* Alignement vertical */
      gap: 0.5rem; /* Espace entre la checkbox et le label */
      font-weight: 700;
    }
body.devis.inscription input[type="checkbox"] {
      width: 16px;
      height: 16px;
    }
body.devis.inscription .lien-document {margin-left: 20px; display: inline-block; border-radius: 18px; padding: 6px 20px; margin-top: 4px; border: solid 1px var(--Bleu);font-size: 0.9em; font-weight: 700;}
body.devis.inscription .lien-document:hover {background: var(--Bleu); color: #FFF;}
body.devis.inscription .info2 {margin-left: 22px; font-weight: 400;}
body.devis.inscription .confirmer  {background: var(--Bleu); color: #fff; text-align: center; padding: 25px; border-radius: 14px; font-weight: 400; }
body.devis.inscription .confirmer .titre {text-transform: uppercase;}
body.devis.inscription .confirmer p {margin-bottom: 0; padding-bottom: 0;}
body.devis.inscription .confirmer .adresse {font-weight: 700; background: #FFF; color: var(--Bleu); border-radius: 18px; padding: 6px 14px; display: inline-block; margin-left: auto; margin-right: auto;}




/** CONTACT ****************************************************/
body.contact .bandeau {background: url(../images/header-faq.jpg) bottom center; background-size: cover;}
@media (min-width: 992px) {
	body.contact .bandeau .slogan {top: 60px;}
}
@media (max-width: 767.98px) {
	body.contact .bandeau .slogan {font-size: 2.4em;}
}
@media (max-width: 479.98px) {
	body.contact .bandeau .slogan {font-size: 2em;}
}

body.contact form input {width: 100%; border: none; padding: 22px 25px; background: #f6f3ee; border-radius: 8px;}
body.contact form textarea {width: 100%; border: none; padding: 22px 25px; background: #f6f3ee; border-radius: 8px; height: 180px;}
body.contact form .obli {color: var(--Orange); font-size: 0.88em;}
body.contact form input[type="submit"] {background: var(--OrangeClair); color: #fff; padding: 8px 32px; font-size: 0.9em; border-radius: 17px; border: none; width: auto;}
body.contact form input[type="submit"]:hover {background: var(--Orange);}

body.contact .row-zone {--bs-gutter-x: 4.5rem;}
body.contact .row-zone form {--bs-gutter-x: 3rem;}

body.contact .coordonnees .item {padding-left: 80px; position: relative; margin-top: 40px; font-size: 0.94em; line-height: 1.15;}
body.contact .coordonnees .item a {color: #000;}
body.contact .coordonnees .item a:hover {color: var(--Bleu);}
body.contact .coordonnees .item .titre {color: var(--Bleu); font-weight: 600; margin-bottom: 3px;}
body.contact .coordonnees .item-telephone {padding-top: 12px;}
body.contact .coordonnees .item-telephone:before {content: ''; position: absolute; top: 0; left: 0px; display: block; width: 65px; height: 65px; background: url(../images/contact-tel.svg) center center no-repeat; background-size: 65px;}
body.contact .coordonnees .item-mail {padding-top: 12px;}
body.contact .coordonnees .item-mail:before {content: ''; position: absolute; top: 0; left: 0px; display: block; width: 65px; height: 65px; background: url(../images/contact-mail.svg) center center no-repeat; background-size: 65px;}
body.contact .coordonnees .item-map {padding-top: 0px;}
body.contact .coordonnees .item-map:before {content: ''; position: absolute; top: 0; left: 0px; display: block; width: 65px; height: 65px; background: url(../images/contact-map.svg) center center no-repeat; background-size: 65px;}
body.contact .coordonnees .item-horaires {padding-top: 6px; margin-top: 20px;}
body.contact .coordonnees .item-horaires:before {content: ''; position: absolute; top: 0; left: 0px; display: block; width: 65px; height: 65px; background: url(../images/contact-horaires.svg) center center no-repeat; background-size: 65px;}


.reseaux {background: url(../images/bg-reseaux.jpg) center center no-repeat; background-size: cover;  color: #fff;}
.reseaux .container {padding: 20px 0;}
.reseaux .h1 {color: #fff; margin-bottom: 0.25em;}
.reseaux .h1:after {margin-right: auto; margin-left: auto; background: url(../images/signature-blanche-titre.svg) top right no-repeat; background-size: 100%;}
.reseaux .discuter {font-weight: 600; font-size: 1.05em; margin-bottom: 2px;}
.reseaux .bouton {box-shadow: 1px 1px 7px #999;}
@media (min-width: 768px) {
	.reseaux .container {background: url(../images/reseaux-main.png) bottom left no-repeat; background-size: auto 90%;}
}
@media (min-width: 992px) {
	.reseaux .container {background: url(../images/reseaux-main.png) bottom left 30px no-repeat; background-size: auto 100%;}
}


/** PRODUITS ****************************************************/
body.produits .heroslider-img, body.produits .hero, body.produits .heroslider-img .slick-slide {height: 300px;}
body.produits .heroslider-img .slogan {display: block; position: absolute; text-align: center; width: 100%; top: 26%; color: #fff;  font-size: 1.15em; left: 0; background: none; text-shadow: 2px 2px 5px #000;}
body.produits .heroslider-img .slogan h1 {font-size: 30px; font-family: 'Blacker-Pro-Display-Heavy'; font-size: 2em;  color: #fff; }
body.produits .heroslider-img .slogan h1:after {display: none;}
body.produits .heroslider-img .slogan > div {font-weight: 500;}
@media (min-width: 768px) {
	body.produits .heroslider-img, body.produits .hero, body.produits .heroslider-img .slick-slide {height: 340px;}
}
@media (min-width: 992px) {
	body.produits .heroslider-img, body.produits .hero, body.produits .heroslider-img .slick-slide {height: 380px;}
}
@media (min-width: 1200px) {
	body.produits .heroslider-img, body.produits .hero, body.produits .heroslider-img .slick-slide {height: 430px;}
}




.bt-filtrer {background: #efefef; border-radius: 30px; position: relative; padding: 10px 15px; padding-left: 30px; color: #999999; font-weight: 500; font-size: 0.9em;}
.bt-filtrer:hover {background: #999999; color: #fff;}
.bt-filtrer:before {content: ''; position: absolute; top: 12px; left: 10px; display: block; width: 16px; height: 16px; background: url(../images/filtrer.svg) center center no-repeat; background-size: 16px;}
.bt-filtrer:hover:before {background: url(../images/filtrer-blanc.svg) center center no-repeat; background-size: 16px;}

body.produits .formulaire {border-radius: 12px;}
body.produits .formulaire input {border-radius: 8px; padding: 6px 10px; background: #fff; border: solid 1px #ccc; width: 100%;}
body.produits .formulaire button {width: 100%; position: relative; border: none; background: var(--OrangeClair); border-radius: 50px; height: 36px; padding: 4px 10px; padding-top: 3px; text-align:center; display: block; color: #fff; font-size: 0.95em; font-weight: 600;}
body.produits .formulaire button:hover {background: var(--Orange);}
@media (min-width: 480px) {
	body.produits .formulaire button {padding-left: 35px; }
	body.produits .formulaire button:before {content: ''; position: absolute; top: 6px; left: 8px; display: block; width:24px; height: 24px; background: url(../images/loupe.svg) center center no-repeat; background-size: 24px;}

}




/* Nouveau conteneur carré pour l’image */
body.produits .resultats .image-wrapper {
  aspect-ratio: 4/3;
  width: 100%;
  overflow: hidden;
}

body.produits .resultats .item {border-radius: 4px; box-shadow: 1px 1px 7px #999; height: 100%; margin: 0 auto; max-width: 380px;}
body.produits .resultats .item .titre {color: var(--Bleu); font-family: 'Blacker-Pro-Display-Heavy'; font-size: 1.4em; line-height: 1.18; margin-bottom: 2px;}
body.produits .resultats .item .type {font-family: 'QuickSand'; text-transform: uppercase; padding: 0; letter-spacing: 0.75px; color: #000;}
body.produits .resultats .item .date {font-family: 'QuickSand'; font-size: 0.9em; margin-top: 5px; margin-bottom: 10px; position: relative;  color: var(--Orange); text-transform: uppercase; font-weight: 600;}
body.produits .resultats .item .date::before {
  content: "";
  display: block;
  width: 50px;
  height: 1px;
  background-color: #dedede;
  margin-bottom: 8px; /* centré, avec espace en dessous */
}
body.produits .resultats .item .avantages {margin:0; padding: 0;}
body.produits .resultats .item .avantages li {margin:0; padding: 0; list-style: none; padding-left: 18px; position: relative; color: #000; font-size: 0.93em; font-weight: 500;}
body.produits .resultats .item .avantages li::before {content: '';
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-55%);
  width: 10px;
  height: 10px;
  background-image: url(../images/check.svg);
  background-size: contain;
background-repeat: no-repeat;}
body.produits .resultats .item .prix {color: var(--Orange); font-size: 1.97em; font-weight: 600; line-height: 1.05; margin-bottom: 3px;}
body.produits .resultats .item .bouton a {position: relative; background: var(--OrangeClair); border-radius: 50px; height: 34px; padding: 4px; padding-top: 6px; padding-left: 20px; text-align:center; display: block; width: 125px; color: #fff; font-size: 0.93em; font-weight: 500; margin: 0 auto;}
body.produits .resultats .item .bouton a:before {content: ''; position: absolute; top: 5px; left: 7px; display: block; width: 22px; height: 22px; background: url(../images/loupe.svg) center center no-repeat; background-size: 22px;}
body.produits .resultats .item .bouton a:hover {background: var(--Orange);}

body.produits .pagination {display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin-top: 10px;}
body.produits .pagination a {color: var(--Bleu); border: solid 2px var(--Bleu); border-radius: 50%; width: 40px; height: 40px; line-height: 36px; font-size: 1.15em; font-weight: 700; display: inline-block; margin: 0; text-align: center; text-decoration: none; background: #fff;}
body.produits .pagination a.current, body.produits .pagination a:hover {color: #fff; background: var(--Bleu); border-color: var(--Bleu);}
body.produits .pagination:has(+ .resultats) {margin-top: 45px;}
body.produits .pagination a.nav {width: auto; border-radius: 20px; padding: 0 16px; font-size: 1em;}


/* L’image remplit le carré */
body.produits .resultats .image-wrapper {
  overflow: hidden; 
}
body.produits .resultats .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; border-top-left-radius: 4px; border-top-right-radius: 4px;
  transition: transform 0.4s ease;
}
body.produits .resultats .image-wrapper:hover img {
  transform: scale(1.05);
}

/* Texte sous l’image */
body.produits .resultats .infos {
  padding: 10px 0 0;
  text-align: center;
}

/* Étend les slides à la même hauteur */
.destinations-slider .slick-track {
  display: flex !important;
}

/* Force les slides à prendre toute la hauteur */
.destinations-slider .slick-slide {
  height: auto !important;
  display: flex !important;
  flex-direction: column;
}

/* L'élément .item prend toute la hauteur disponible */
body.produits .resultats .item {
  flex: 1;
  display: flex;
  flex-direction: column;
}
body.produits .resultats .item a {position: relative;}
body.produits .resultats .item a .legende {position: absolute; width: 200px; left: calc(50% - 100px); bottom: 12px; height: 28px; background: var(--OrangeClair); color: #fff; text-align: center; padding: 3px 8px; padding-top: 1px; border-radius: 20px; font-size: 1.05em; font-weight: bold;}
body.produits .resultats .item a .legende-complet {width: 100px; left: calc(50% - 50px); }
body.produits .resultats .infos {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* centrage vertical */  
  padding: 18px;
  text-align: left;
}




/** FICHE PRODUIT ****************************************************/
body.produit .produit-header {}
body.produit .produit-header .col-inscription {color: var(--Orange); display: flex;
  align-items: center; /* alignement vertical */
  gap: 10px; /* espace entre les éléments */
  flex-wrap: wrap; /* utile pour le responsive */
}
body.produit .produit-header .col-imprimer {text-align: right;}
body.produit .col-inscription .label-inscription {
  font-weight: 600; text-transform: uppercase;
  font-size: 0.85em;
}
body.produit a.bt-inscrire-internet {position: relative; background: var(--Orange); border-radius: 50px; height: 26px; padding: 4px; padding-top: 5px; padding-right: 20px; text-align:center; display: block; width: 110px; color: #fff; font-size: 0.75em; text-transform: uppercase; font-weight: 500; }
body.produit a.bt-inscrire-internet:before {content: ''; position: absolute; top: 5px; right: 12px; display: block; width: 16px; height: 16px; background: url(../images/ecrans.svg) center center no-repeat; background-size: 16px;}
body.produit a.bt-inscrire-internet:hover {background: var(--OrangeClair);}
body.produit a.bt-inscrire-papier {position: relative; background: var(--Orange); border-radius: 50px; height: 26px; padding: 4px; padding-top: 5px; padding-right: 20px; text-align:center; display: block; width: 100px; color: #fff; font-size: 0.75em; text-transform: uppercase; font-weight: 500; }
body.produit a.bt-inscrire-papier:before {content: ''; position: absolute; top: 5px; right: 12px; display: block; width: 16px; height: 16px; background: url(../images/pdf.svg) center center no-repeat; background-size: 16px;}
body.produit a.bt-inscrire-papier:hover {background: var(--OrangeClair);}
body.produit .produit-header a.bt-imprimer {position: relative; background: var(--Bleu); border-radius: 50px; height: 26px; padding: 4px; padding-top: 5px; padding-right: 20px; text-align:center; display: block; width: 205px; color: #fff; font-size: 0.75em; text-transform: uppercase; font-weight: 500; margin-right: 0; margin-left: auto;}
body.produit .produit-header a.bt-imprimer:before {content: ''; position: absolute; top: 5px; right: 12px; display: block; width: 16px; height: 16px; background: url(../images/print.svg) center center no-repeat; background-size: 16px;}
body.produit .produit-header a.bt-imprimer:hover {background: var(--BleuClair);}
@media (max-width: 767.98px) {
  body.produit .col-inscription,
  body.produit .col-imprimer {
    display: flex;
    justify-content: center;
    text-align: center !important;
  }

  body.produit .produit-header a.bt-imprimer {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media (max-width: 479.98px) {
  body.produit .col-inscription {
    flex-direction: column;
    align-items: center;
  }

  body.produit .col-inscription .label-inscription {
    margin-bottom: 6px;
    display: block;
    width: 100%;
    text-align: center;
  }

  body.produit .col-inscription .bt-inscrire-internet,
  body.produit .col-inscription .bt-inscrire-papier {
    display: inline-block;
    margin: 0 5px;
  }
}



body.produit h1:after{display: none;}
body.produit h1 { display: flex;                /* <— on passe en flexbox */
    align-items: center;          /* <— aligne verticalement */
gap: 20px; }
body.produit h1 .legende { background: var(--OrangeClair);
    color: #fff;
    text-align: center;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 15px;
    font-weight: 600;
    font-family: "Quicksand", sans-serif;
    line-height: 1; margin-top: 5px;}
body.produit .produit-entete {--bs-gutter-x: 0;}
body.produit .produit-entete .col-infos {background: var(--Orange); color: #fff; text-align: center; font-weight: 600; padding: 15px 30px;  --bs-gutter-x: 3rem;}
body.produit .col-infos .date {text-transform: uppercase; font-size: 1.1em; margin-top: 15px;}
body.produit .col-infos .duree {font-size: 1.9em; padding-bottom: 40px; margin-bottom: 40px; border-bottom: solid 1px #fff;}
body.produit .col-infos .duree span {font-size: 0.57em; font-weight: 500;}
body.produit .col-infos .prix-titre {text-transform: uppercase; font-size: 1.1em; margin-top: 15px;}
body.produit .col-infos .prix {font-size: 1.9em; padding-bottom: 10px;}
body.produit .col-infos .mentions {font-size: 0.88em; line-height: 1.1;}
@media (min-width: 480px) and (max-width: 991.98px) {
	body.produit .col-infos .duree {border-bottom: none; margin-bottom: 10px; padding-bottom: 10px;}
}
@media (min-width: 992px) {
	body.produit .col-infos .duree {padding-bottom: 15px; margin-bottom: 15px;}
}
@media (min-width: 1200px) {
	body.produit .col-infos .duree {padding-bottom: 15px; margin-bottom: 15px;}
}
@media (min-width: 1500px) {
	body.produit .produit-entete .col-infos {padding-top: 65px!important; padding-bottom: 55px!important;}
}



body.produit .produit-entete {
  display: flex;
  flex-wrap: wrap;
}
/* .entete-slider doit prendre la hauteur du voisin */
body.produit .entete-slider {
  display: flex;
  flex-direction: column;
}
/* Le slider lui-même s’étire à 100% */
body.produit .slider-img {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
body.produit .slider-img .slide {
 display: flex;
    justify-content: center;
}
body.produit .slider-img .slide img {
    width: 100%;   /* image remplit la largeur du slide */
    height: auto;  /* hauteur proportionnelle */
    display: block;
}
body.produit .slider-img .slick-prev, body.produit .slider-img .slick-next {top: inherit; bottom: 1px; margin-bottom: -20px;}
body.produit .slider-img .slick-prev, body.produit .slider-img .slick-next {width: 52px; height: 52px; border-radius: 50%; background-color: var(--Bleu); border: solid 2px #fff; box-shadow: 0 2px 10px rgba(0,0,0,.55); background-repeat: no-repeat; background-position: center; background-size: 26px; opacity: 1;}
body.produit .slider-img .slick-prev:hover, body.produit .slider-img .slick-next:hover, body.produit .slider-img .slick-prev:focus, body.produit .slider-img .slick-next:focus {background-color: #fff; border-color: var(--Bleu);}
body.produit .slider-img .slick-prev {left: calc(50% - 60px); background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M15 3 L6 12 L15 21' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");}
body.produit .slider-img .slick-prev:hover, body.produit .slider-img .slick-prev:focus {background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M15 3 L6 12 L15 21' fill='none' stroke='%23133161' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");}
body.produit .slider-img .slick-prev:before {display: none;}
body.produit .slider-img .slick-next {right: calc(50% - 60px); background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 3 L18 12 L9 21' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");}
body.produit .slider-img .slick-next:hover, body.produit .slider-img .slick-next:focus {background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 3 L18 12 L9 21' fill='none' stroke='%23133161' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");}
body.produit .slider-img .slick-next:before {display: none;}


body.produit .reglementations {font-size: color: #000; font-size: 0.9em; font-weight: 500;}
body.produit .reglementations a {font-size: color: #000; text-decoration: underline;}
body.produit h2 {font-family: 'Blacker-Pro-Display-Heavy'; line-height: 1em; font-weight: 400; font-size: 1.5em; color: var(--Bleu);}

body.produit .produit-details .colonne-1 .titre-colonne {background: var(--Bleu);}
body.produit .produit-details .colonne-2 .titre-colonne  {background: var(--Orange);}
body.produit .produit-details .titre-colonne {padding: 15px 40px; color: #fff; text-transform: uppercase; font-weight: 600; font-size: 1.4em;}
body.produit .produit-details .description .texte-sejour {font-weight: 500;}
body.produit .produit-details .reglementations--footer {border-top: solid 1px #ccc;}
body.produit .produit-details .programme .jour .jour-titre {color: var(--Orange); font-weight: 700; font-size: 1.15em;}
body.produit .produit-details .programme .jour .jour-titre span {text-transform: uppercase;}
body.produit .produit-details .programme .jour .jour-texte {text-align: justify;}
body.produit .produit-details .inclus-titre {color: var(--Bleu); font-weight: 700; font-size: 1.15em;}
body.produit .produit-details .inclus ul {margin:0; padding: 0;}
body.produit .produit-details .inclus ul li {margin:0; padding: 0; list-style: none; padding-left: 22px; padding-bottom: 1px; padding-top:2px; position: relative; color: #000; font-size: 0.93em; font-weight: 500;}
body.produit .produit-details .inclus ul li::before {content: '';
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-55%);
  width: 12px;
  height: 12px;
  background-image: url(../images/check.svg);
  background-size: contain;
background-repeat: no-repeat;}
@media (min-width: 992px) and (max-width: 1199.98px) {
	body.produit .produit-details .titre-colonne {font-size: 1.3em;}
}
@media (min-width: 992px) {
	body.produit .produit-details .inclus {border-left: solid 1px #ccc;}
}

body.produit .zone-boutons {max-width: 340px;}
body.produit .zone-boutons a.bt-inscrire-internet {width: 144px; height: 46px; padding-right: 40px; padding-top: 10px; line-height: 1.15;}
body.produit .zone-boutons a.bt-inscrire-internet span {font-weight: 700;}
body.produit .zone-boutons a.bt-inscrire-internet:before {width: 30px; height: 30px; background-size: 30px; top: 8px; right: 15px;}
body.produit .zone-boutons a.bt-inscrire-papier {width: 140px; height: 46px; padding-right: 40px; padding-top: 10px; line-height: 1.15;}
body.produit .zone-boutons a.bt-inscrire-papier span {font-weight: 700;}
body.produit .zone-boutons a.bt-inscrire-papier:before {width: 30px; height: 30px; background-size: 30px; top: 8px; right: 15px;}

body.produit .zone-contact {background: var(--Bleu); color: #fff; }
body.produit .zone-contact .h1 {color: #fff; font-size: 1.4em; margin-bottom: 0;}
body.produit .zone-contact .h1:after {margin-right: auto; margin-left: auto; }
body.produit .zone-contact .question {font-family: 'VujahdayScript-Regular'; font-size: 2.25em;}
body.produit .zone-contact .texte {margin: 0 auto; margin-top: 15px; margin-bottom: 20px; max-width: 260px; font-weight: 600; line-height: 1.2;}
body.produit .zone-contact .bouton {background: var(--OrangeClair); border-radius: 50px; height: 40px; padding: 7px 20px; padding-top: 10px; text-align:center; display: inline-block; color: #000; font-size: 0.85em; font-weight: 600; color: #fff;}
body.produit .zone-contact .bouton:hover {background: var(--Orange); color: #fff;}

.cotes {background: url(../images/bg-cotes) center center var(--Orange); background-size: cover; color: #fff;}
.cotes .h1 {color: #fff; font-size: 2em;}
.cotes .h1:after {margin-right: auto; margin-left: auto; background: url(../images/signature-blanche-titre.svg) top right no-repeat; background-size: 100%; }
.cotes .texte p {margin-bottom: 3px; font-size: 1.13em; font-weight: 600;}
.cotes .texte p.en-avant {background:#fff; padding: 8px 21px; color: var(--Orange); font-size: 1.35em; font-weight: 700; border-radius: 30px; display: inline-block; margin: 0 auto; width: auto;}

@media (min-width: 992px) {
	body.produit .zone-boutons {max-width: none;}
	body.produit .zone-boutons a {display: inline-block;}
}
@media (min-width: 1200px) {
	body.produit .zone-boutons a.bt-inscrire-internet,  body.produit .zone-boutons a.bt-inscrire-papier {width: 94%;}
}


body.produit .slider-img .slick-prev, body.produit .slider-img .slick-next {bottom: calc(50% - 26px); margin-bottom: 0;}
body.produit .slider-img .slick-prev {left: 20px;}
body.produit .slider-img .slick-next {right: 20px;}



/** AUTOCARS ****************************************************/
body.autocars .h1:after {display: none;}
body.autocars .accroche {text-transform: uppercase; font-size: 1.15em; font-weight: 600;}
body.autocars .texte strong {font-weight: 600;}
body.autocars .texte p {margin-bottom: 9px;}
body.autocars .texte p.dernier {margin-bottom: 2px;}
body.autocars .texte li {margin-bottom: 4px;}
body.autocars .bg--creme a.contact {background: var(--Orange); color: #fff; padding: 8px 18px; display: inline-block; border-radius: 22px; font-size: 0.92em;}
body.autocars .bg--creme a.contact:hover {background: var(--OrangeClair);}
@media (min-width: 1500px) {
	body.autocars .bg--creme {--bs-gutter-x: 8rem;}
}



/** GROUPE ****************************************************/
body.groupe .bandeau .slogan  {font-size: 30px; font-family: 'Blacker-Pro-Display-Heavy'; font-size: 2em;  color: #fff; }

body.groupe .colonne1 {background: #fff; border-top-left-radius: 12px; border-top-right-radius: 12px;}
body.groupe .colonne1 > div, body.groupe .colonne2 > div {padding: 20px 10px; }
body.groupe h1 {font-size: 1.7em;}
body.groupe h1:after {display: none;}
body.groupe .colonne1 p.sous-titre {font-size: 1em; font-family: inherit; font-weight: 600; line-height: 1.2;}
body.groupe .colonne1 .blanc .h1:after {
    margin-right: auto;
    margin-left: auto;
}
body.groupe .colonne2 {background: url(../images/groupe/bg-bleu.jpg) center center no-repeat; background-size: cover; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; color: #fff;}
body.groupe .bouton a {position: relative; background: var(--OrangeClair); border-radius: 50px; height: 34px; padding: 4px; padding-top: 6px; text-align:center; display: block; width: 125px; color: #fff; font-size: 0.93em; font-weight: 500; margin: 0 auto;}
body.groupe .bouton a:hover {background: var(--Orange);}
body.groupe .champ {width: 100%; margin-left: auto; margin-right: auto;  background: #f5f2ee; padding: 10px 10px; border-radius: 6px; border: none;}
body.groupe .colonne2 h1 {color: #fff;}
body.groupe .bouton input[type="submit"] {position: relative; background: var(--OrangeClair); border-radius: 50px; height: 34px; padding: 4px; padding-top: 6px; text-align:center; display: block; width: 125px; color: #fff; font-size: 0.93em; font-weight: 500; margin: 0 auto; border: 0;}
body.groupe .bouton input[type="submit"]:hover {background: var(--Orange);}
body.groupe .colonne2 #id_type {
  appearance: none;          /* masque la flèche par défaut */
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,<svg fill='black' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 0.75rem center; /* ici tu choisis la distance */
  background-size: 2rem;
  padding-right: 2rem; /* pour que le texte ne chevauche pas la flèche */
}

@media (min-width: 480px) {
	body.groupe .colonne1 > div, body.groupe .colonne2 > div {padding: 40px 30px; }
	body.groupe .champ {width: 350px;}
}
@media (min-width: 992px) {
	body.groupe .colonne1 { border-top-right-radius: 0; border-top-left-radius: 12px; border-bottom-left-radius: 12px;}
	body.groupe .colonne2 {border-bottom-left-radius: 0; border-top-right-radius: 12px; border-bottom-right-radius: 12px; }
}



body.groupe .bandeau {background: url(../images/header-groupes.jpg) center center; background-size: cover;}
body.groupe .section-listing .h1 .mini {font-family: "Quicksand", sans-serif; font-weight: 500; font-size: 0.65em; margin-top: 7px;}
body.groupe .section-listing .liste-docs {margin-left: auto; margin-right: auto; max-width: 500px;}
body.groupe .section-listing .liste-docs .item {background: #eceff8; padding: 15px; padding-left: 60px; position: relative; border-radius: 12px; margin-bottom: 0.75em; color: var(--Bleu); font-weight: 500; font-size: 0.89em;}
body.groupe .section-listing .liste-docs .item:before {content: ''; position: absolute; top: 11px; left: 20px; width: 30px; height: 33px; background: url(../images/groupe/pdf.svg) center center no-repeat; background-size: 100%;}
body.groupe .section-listing .liste-docs .item:hover {background: var(--Orange); color: #fff;}
body.groupe .section-listing .liste-docs .item:hover:before {background: url(../images/groupe/pdf-blanc.svg) center center no-repeat; background-size: 100%;}
body.groupe .section-listing .liste-docs .item a {background: #fff; border-radius: 22px; padding: 6px 0; padding-left: 15px; padding-right: 25px; position: relative; transition: all 0;}
body.groupe .section-listing .liste-docs .item a:after {content: ''; position: absolute; top: 7px; right: 7px; width: 12px; height: 16px; background: url(../images/groupe/fleche.svg) center center no-repeat; background-size: 100%;}
body.groupe .section-listing .liste-docs .item:hover a:hover {background: var(--OrangeClair); color: #fff;}
body.groupe .section-listing .liste-docs .item:hover a:hover:after {background: url(../images/groupe/fleche-blanc.svg) center center no-repeat; background-size: 100%;}




/** FOOTER ****************************************************/
footer {color: #000;}
.footer-logo img {max-width: 210px;}
.footer-logo .contact {
  display: inline-block;
  padding: 6px 15px;
  border: solid 1px #000;
  border-radius: 20px;
  line-height: 1; /* éviter que la hauteur dépende de la police */
  vertical-align: middle;
}

.footer-logo .contact:hover {
  background: var(--Bleu);
  color: #fff;
  border-color: var(--Bleu);
}
.footer-subtitle {color: var(--Bleu); font-weight: 600; text-transform: uppercase; font-size: 1.25em; margin-bottom: 12px;}
.footer-sitemap ul {margin:0; padding:0;}
.footer-sitemap li {margin-left: 20px; padding-left: -5px; padding-bottom: 7px;}
@media (max-width: 991.98px) {
	.footer-sitemap ul {
		list-style-position: inside;
		text-align: center;
		padding-left: 0; /* Enlève l'indentation gauche */
	  }
}




