#slider {    
    display: flex;
    justify-content: flex-end;
    background: transparent;
	position: relative;
    top: -50px;
}

.slider-home {
    height:calc(100vh - 70px);
    position:relative;
    width: 100%;
}

.slider {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;

}

.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s;
  background-size: cover;
  background-position: center;
  z-index:1;
}

.slide.active {
  opacity: 1;
  z-index:10;
}

.slide-content {
  position: absolute;
  bottom: 200px;
  left: 50%;
  transform: translate(-50%, -10%);
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 30px;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: center;
flex-wrap:wrap;
}

.slide-content span,
.slide-content p {
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  color:white;
  margin: 0 auto;
font-weight:600;
    text-shadow: 0 0 20px black;
}

.slide-content span {
  margin-top: 0;
  font-size:40px;
display:block;
  font-family: "itc-avant-garde-gothic-pro";
}

.slide-content .btn-container{
width:100%;
}

.slide-content h3 {
    font-size: 4em;
    text-transform: uppercase;
    margin-bottom: 20px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
}

.slide-content h4 {
    margin-top: 0;
  font-size:100px;
  font-family: "autograph",sans-serif; 
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
}

.slide-content p {
	font-size: 60px;
    margin: 20px;
    text-align: center;
    max-width: 700px;
    font-family: "itc-avant-garde-gothic-pro";
    display: block;
}

.slide-content img {
 object-fit: contain;
    width: 200px;
}

.slide-content button {
  background-color: #fff;
  color: #000;
  padding: 10px 20px;
  border: none;
  border-radius: 20px;
  font-size: 18px;
  cursor: pointer;
}

.slider-btn {
  position: absolute;
  bottom: 35%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: white;
  z-index: 10;
  cursor: pointer;
  transition:all 0.5s;
  border-radius:50%;
}

.slider-btn:hover{
  background-color: #c9bbad;
}

.slider-btn i {
  color: black;
  font-size: 24px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.slider-btn.prev {
  left: 20px;
}

.slider-btn.next {
  right: 20px;
}


/* search-container*/
.chapo{
position:relative;
}

.search-container{
    width: 1300px;
    background: #63c3d1;
    margin: 0 auto;
    position: absolute;
    bottom: -43px;
    padding: 15px 0 10px 0;
    left: calc(50% - 650px);
z-index: 10;
}

.thr-search-engine-multi .form-group label {
	color:#63c3d1 !important;
}

.thr-search-engine-multi .thr-search-engine-main.thr-search-engine-main-full>.thr-btn-search{
	background-color:white !important;
	color:#63c3d1 !important;
}

 

/* mosaique bleu */


.presentation-container{
width:100%;
padding: 100px 0;
}


.mosaique-bleu{
background:white;
display:flex;
flex-direction: row;
justify-content: stretch;
align-items: stretch;
margin:0 auto;
max-width: 1400px;
height: 450px;
position:relative;
}

.mosaique-bleu .bloc-bleu{
position:relative;
background:#cdebf0;
clip-path: polygon(0 0, /* haut gauche */ 100% 0, /* haut droit */ 100% 100%, /* bas droit */ 40px 100%, /* bas, un peu � droite */ 0 calc(100% - 40px) /* coin coup� */);
padding:60px 40px;
width:25%;
margin:2px 2px 0 0;
}


.mosaique-bleu .bloc-bleu p{
color:black;
font-family:"futura-pt";
font-size: 1.2em;
text-align: justify;
font-weight: 300;
margin-bottom: 15px;
}

.mosaique-bleu img.vagues{
position:absolute;
bottom:10px;
z-index:10;
left:16%;
}

.mosaique-row {
display:flex;
flex-wrap:wrap;
flex-direction:row;
justify-content:center;
width:55%;
align-items: stretch;
}

.mosaique-row img{
padding:2px;
object-fit:cover;
height: 50%;
}

.mosaique-row img:nth-child(1) {
width:20%;
}

.mosaique-row img:nth-child(2) {
width:50%;
}

.mosaique-row img:nth-child(3){
width:30%;
}

.mosaique-row img:nth-child(4){
width:50%;
}

.mosaique-row img:nth-child(5){
width:50%;
}

.mosaique-column{
display:flex;
flex-wrap:no-wrap;
flex-direction:column;
justify-content:stretch;
align-items:stretch;
flex-basis: fit-content;
width:20%;
height:100%;
}

.mosaique-column img{
padding:2px;
object-fit:cover;
}

.mosaique-column img:nth-child(1){
width:100%;
height:60%;
}

.mosaique-column img:nth-child(2){
width:100%;
height:40%;
}

/*camping list*/

.camping-list{
background:#e1d9d0;
width:100%;
padding:40px 0;
}

.camping-bordure{
 max-width: 1400px;
 padding: 1px; /* épaisseur de la bordure */
 clip-path: polygon(0 0, 100% 0, 100% 100%, 40px 100%, 0 calc(100% - 40px));
background:#88877a;
margin:20px auto;
}

.camping-vignette{
background:white;
display:flex;
flex-direction: row;
justify-content: stretch;
align-items: stretch;
margin:0 auto;
max-width: 1400px;
height: 400px;
position:relative;
clip-path: polygon(0 0, /* haut gauche */ 100% 0, /* haut droit */ 100% 100%, /* bas droit */ 40px 100%, /* bas, un peu � droite */ 0 calc(100% - 40px) /* coin coup� */);
 box-shadow: 0 0 0 4px #e2dfd8 inset;
}


.camping-vignette .slogan{
width:15%;
display:flex;
justify-content:center;
align-items:center;
z-index:10;
}

.camping-vignette .slogan p{
	font-size:2em;
	font-weight:600;
	font-family: "futura-pt";
	text-align:center;
color:white;
margin:0;
padding:10px;
}

.camping-vignette .image{
width:30%;
}

.camping-vignette .image .details{
position:absolute;
top:0;
display:flex;
flex-direction:row;
justify-content:flex-start;
align-items:flex-start;
}

.camping-vignette .image .pitches,
.camping-vignette .image .squares{
clip-path: polygon(
  0 0,                        /* haut gauche */
  100% 0,                     /* haut droit */
  100% calc(100% - 15px),     /* coin coupé */
  calc(100% - 15px) 100%,     /* bas, un peu à gauche */
  0 100%                      /* bas gauche */
);
background:white;
color:black;
font-family:"futura-pt";
padding: 5px 20px 10px 20px;
margin:0px 10px 0 0;
}

.camping-vignette .image .pitches p,
.camping-vignette .image .squares p{
margin:0;
line-height: 1.1;
}

.camping-vignette .image .pitches strong,
.camping-vignette .image .squares strong{
display:block;
font-weight:700;
font-size:1.2em;
line-height: 1.1;
}
.camping-vignette .image img{
height: 100%;
object-fit: cover;
width: 100%;
}


.camping-vignette .camping-details{
width:55%;
background:white;
}


.camping-vignette .camping-details .titre{
border-left:4px solid; 
border-right:4px solid; 
margin:20px 30px;
padding: 10px 20px 10px 20px;
display:flex;
flex-direction:row;
justify-content:space-between;
align-items:center;
max-width:100%;
}

.camping-vignette .camping-details .titre h3{
font-family:"itc-avant-garde-gothic-pro";
color:black;
font-size:30px;
font-weight:300;
text-align:left;
margin:0;
}

.camping-vignette .camping-details .titre h3 span{
font-size:20px;
display:block;
}

.camping-vignette .camping-details .titre .departement{
padding: 10px 15px 10px 20px;
clip-path: polygon(0 0, /* haut gauche */ 100% 0, /* haut droit */ 100% 100%, /* bas droit */ 15px 100%, /* bas, un peu � droite */ 0 calc(100% - 15px) /* coin coup� */);
color:white;
}

.camping-vignette .camping-details .titre .departement p{
margin:0;
font-weight: 300;
font-family: 'itc-avant-garde-gothic-pro';
}

.camping-vignette .camping-details .services-list{
display:flex;
flex-direction:row;
flex-wrap:wrap;
justify-content:flex-start;
align-items:center;
max-width:100%;
margin:20px 30px;
padding: 10px 20px 10px 20px;
}

.camping-vignette .camping-details .services-list h4{
font-family:"futura-pt";
font-weight:300;
margin-bottom:0;
font-size:22px;
margin-right:5px;
}

.camping-vignette .camping-details .services-list h4 span{
font-weight:700;
border:none;
background:white !important;
padding:0 !important;
font-size:22px !important;
margin:0 !important;
}

.camping-vignette .camping-details .services-list span{
border:1px solid black;
border-radius:20px;	
color:black;
padding:2px 20px;
font-size:16px;
font-family:"futura-pt";
margin:3px;
}

.camping-vignette .camping-details .services-general{
display:flex;
flex-direction:row;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
max-width:100%;
margin:20px 30px;
padding: 10px 20px 10px 20px;
}

.camping-vignette .camping-details .services-general p{
color:black;
font-family:"futura-pt";
background:white;
display:block;
margin-bottom: 10px;
}


.camping-vignette .camping-details .plus{
display:flex;
flex-direction:row;
flex-wrap:wrap;
justify-content:center;
align-items:center;
max-width:100%;
margin:20px 30px;
padding: 10px;
}

.camping-vignette .camping-details .plus h4{
font-family:"itc-avant-garde-gothic-pro";
font-size:1.2em;
font-size:700;
margin-right:5px;
}

.camping-vignette .camping-details .plus h4 span{
    font-family: "itc-avant-garde-gothic-pro";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: white;
    padding: 2px;
    border: 1px solid;
    width: 38px;
    height: 38px;
    border-radius: 50%;
}

.camping-vignette .camping-details .plus h4 span strong{
font-family: "itc-avant-garde-gothic-pro";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: white;
    padding: 2px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: 30px;
}

.camping-vignette .camping-details .plus p{
	color:black;
font-family:"futura-pt";
}



/*camping list colors bouti*/
.camping-vignette.bouti .slogan,
.camping-vignette.bouti .camping-details .titre .departement,
.camping-vignette.bouti .camping-details .services-list span,
.camping-vignette.bouti .camping-details .plus h4 span strong{
background:#b5d4a0;
}

.camping-vignette.bouti .image .pitches strong,
.camping-vignette.bouti .image .squares strong,
.camping-vignette.bouti .camping-details .titre h3 span,
.camping-vignette.bouti .camping-details .stars i,
.camping-vignette.bouti .camping-details .services-list h4,
.camping-vignette.bouti .camping-details .services-list h4 span,
.camping-vignette.bouti .camping-details .services-general p span,
.camping-vignette.bouti .camping-details .plus h4{
color:#99ba7f;
}

.camping-vignette.bouti .camping-details .titre,
.camping-vignette.bouti .camping-details .plus h4 span{
border-color:#b5d4a0;
}

/*camping list colors leveno*/
.camping-vignette.leveno .slogan,
.camping-vignette.leveno .camping-details .titre .departement,
.camping-vignette.leveno .camping-details .services-list span,
.camping-vignette.leveno .camping-details .plus h4 span strong {
  background: #cfc27b;
}

.camping-vignette.leveno .image .pitches strong,
.camping-vignette.leveno .image .squares strong,
.camping-vignette.leveno .camping-details .titre h3 span,
.camping-vignette.leveno .camping-details .stars i,
.camping-vignette.leveno .camping-details .services-list h4,
.camping-vignette.leveno .camping-details .services-list h4 span,
.camping-vignette.leveno .camping-details .services-general p span,
.camping-vignette.leveno .camping-details .plus h4 {
  color: #cabc6c;
}

.camping-vignette.leveno .camping-details .titre,
.camping-vignette.leveno .camping-details .plus h4 span {
  border-color: #cfc27b;
}


/*camping list colors kerzerho*/
.camping-vignette.kerzerho .slogan,
.camping-vignette.kerzerho .camping-details .titre .departement,
.camping-vignette.kerzerho .camping-details .services-list span,
.camping-vignette.kerzerho .camping-details .plus h4 span strong {
  background: #a3c0de;
}

.camping-vignette.kerzerho .image .pitches strong,
.camping-vignette.kerzerho .image .squares strong,
.camping-vignette.kerzerho .camping-details .titre h3 span,
.camping-vignette.kerzerho .camping-details .stars i,
.camping-vignette.kerzerho .camping-details .services-list h4,
.camping-vignette.kerzerho .camping-details .services-list h4 span,
.camping-vignette.kerzerho .camping-details .services-general p span,
.camping-vignette.kerzerho .camping-details .plus h4 {
  color: #6687ac;
}

.camping-vignette.kerzerho .camping-details .titre,
.camping-vignette.kerzerho .camping-details .plus h4 span {
  border-color: #a3c0de;
}


/*camping list colors palace*/
.camping-vignette.palace .slogan,
.camping-vignette.palace .camping-details .titre .departement,
.camping-vignette.palace .camping-details .services-list span,
.camping-vignette.palace .camping-details .plus h4 span strong {
  background: #e4bc82;
}

.camping-vignette.palace .image .pitches strong,
.camping-vignette.palace .image .squares strong,
.camping-vignette.palace .camping-details .titre h3 span,
.camping-vignette.palace .camping-details .stars i,
.camping-vignette.palace .camping-details .services-list h4,
.camping-vignette.palace .camping-details .services-list h4 span,
.camping-vignette.palace .camping-details .services-general p span,
.camping-vignette.palace .camping-details .plus h4 {
  color: #e4bc82;
}

.camping-vignette.palace .camping-details .titre,
.camping-vignette.palace .camping-details .plus h4 span {
  border-color: #e4bc82;
}

/* MAP INTERACTIVE*/


.camping-map-container{
    width: 100%;
    background: #e1d9d0;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    height: 80vh;
    position: relative;
}


.texte-container{
width: 35%;
max-width: 35%;
}

.map-container{
width:65%;
position:relative;
height:100%;
}
.camping-map-container .texte-container{
    margin-left: 6%;
    width: 26%;
    max-width: 26%;
}

.map-container svg{
position: absolute;
top: 0px;
right: 155px;
max-width: 900px;
}

.mosaique-map{
position: absolute;
    right: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    z-index: 1;
    width: 40%;
    height: 100%;
}

.mosaique-map .bloc{
width: 230px;
height: 230px;
border-radius:20px;
background:black; 
margin:10px;
}

.mosaique-map .bloc:nth-child(1){
margin-top:100px;
}

.mosaique-map .bloc img{
width: 100%;
height: 100%;
border-radius: 20px;
object-fit: cover;
}

.kerzerho-hotspot,
.leveno-hotspot,
.bouti-hotspot,
.palace-hotspot{
	 stroke: transparent;      /* couleur de la bordure */
    stroke-width: 2px; /* épaisseur de la bordure */
shape-rendering:geometricPrecision;
 vector-effect:non-scaling-stroke; /* garde une épaisseur de trait stable lors du scale */
    transform-box:fill-box;           /* nécessaire pour que transform-origin se base sur la boîte du path */
    transform-origin:center;          /* centre géométrique du path */
	transition:all 500ms;
}

.kerzerho-hotspot:hover,
.leveno-hotspot:hover,
.bouti-hotspot:hover,
.palace-hotspot:hover{
  cursor: pointer;
  border:2px solid black;
   stroke: #000;      /* couleur de la bordure */
    stroke-width: 2px; /* épaisseur de la bordure */
	filter:drop-shadow(0 0 .5px rgba(0,0,0,.35)); 
transform:scale(1.18); /* grossissement */
}

.kerzerho-hotspot{
	fill:#557ba3 !important;
}

.kerzerho-hotspot:hover {

}


.leveno-hotspot{
	fill:#c0b771 !important;
}

.leveno-hotspot:hover {

}


.bouti-hotspot{
	transition:all 500ms;
	fill:#88b781 !important;
}

.bouti-hotspot:hover {

}



.palace-hotspot{
	transition:all 500ms;
	fill:#e0b581 !important;
}

.palace-hotspot:hover {

}

.bouti-tag rect{fill:#88bF86;}			 /* vert badge Bouti */
.kerzerho-tag rect{ fill:#5B80B2;}        /* bleu badge Kerzerho */
  .leveno-tag  rect{ fill:#c0b771;}         /* or badge Guérande */
  .palace-tag  rect{ fill:#E2B077;}         /* beige/orangé badge Soulac */

  /* Nom de l'établissement*/
.bouti-name,
  .kerzerho-name,
  .leveno-name,
  .palace-name{
    fill:#000; font-weight:900; font-size:20px; letter-spacing:.6px;
    paint-order:stroke fill; stroke:#fff; stroke-width:2px;
    font-family: "itc-avant-garde-gothic-pro", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  }

.bouti-tag text,
 .kerzerho-tag text,
  .leveno-tag text,
  .palace-tag text{ fill:#fff; font-weight:700; font-size:12px; letter-spacing:.2px; }






/* AVIS CONTAINERS */



.region-container{
width:100%;
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    align-items: center;
}

.region-container img{
    width: 33.1%;
    height: 325px;
	object-fit: cover;
  object-position: left;
}

.avis-container{
width:100%;
background:#dcf1f4;
  display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;

}

.texte-avis{
width:400px;
  display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: row;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
position:relative;
}

.texte-avis h2{
font-size: 1em;
  width: 100%;
  margin: 10px;
}

.texte-avis p{
width: 246px;
  text-align: left;
}

.texte-avis img:nth-child(2){
position: absolute;
  top: 58px;
  left: 35px;
}

.texte-avis img:nth-child(4){
position: absolute;
  bottom: 15px;
  right: 70px;
}

.avis-vignette{
  display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
padding: 40px 20px;
}

.avis-vignette img{
width:100%;
object-fit:contain;
}

.avis-total{
width: 355px;
margin-left: 20px;
}

.avis-total p {
	font-size: 2em;
font-family:"futura-pt";
font-weight:300;
margin-bottom: 0;
}

.avis-total p strong{
font-size: 1.5em;
font-weight:600;
}


.panoramique-container{
width:100%;
}
.panoramique-container img{
width:100%;
object-fit:cover;
}

@media (max-width: 1600px) {
.camping-map-container h2{
font-size:1.5em;
}

.camping-map-container h2 span{
font-size:1.2em;
}
}

@media (max-width: 1200px) {
.camping-vignette{
flex-wrap:wrap;
max-width: 800px;
height:100%;
}

.camping-bordure {
    max-width: 800px;
	margin:20px auto;
}

.camping-vignette .slogan{
width:100%;
}

.camping-vignette .image{
width:100%;
height:350px;
}

.camping-vignette .camping-details{
width:100%;
}

.camping-vignette .camping-details .plus,
.camping-vignette .camping-details .services-general {
padding:10px; margin:10px;
}


.camping-map-container{
display: none;
}

.map-container {
  width: 100%;
  position: relative;
  height: 100%;
}

.camping-map-container .texte-container {
  margin: 40px auto;
  width: 80%;
  max-width:80%;

}



}




/* Herbergement container mosaique carroussel*/
/* ---------- Mobile : < 900px ---------- */
@media (max-width: 900px) {

.camping-bordure {
    max-width: 600px;
}

  /* Le wrapper reste block ; l’Owl gère les slides .bloc */
.tabs-scope header, .tabs-scope .tabs-subnav{
padding: 0 16px;
}

	.hebergement-container{
	            padding: 0 16px !important;
    }
  .hebergement-container .herbergement-mosaique { display: block; position: relative; }

  /* Légendes sous la photo dans le carrousel */
  .hebergement-container .herbergement-mosaique .bloc {
    width: 100% !important;
    margin: 0;
	position: relative;
    padding: 0px;
    height: 350px;
  }

.hebergement-container .hebergement-text {
padding: 20px 20px 40px 20px;
}

  .hebergement-container .herbergement-mosaique .bloc img,
  .hebergement-container .herbergement-mosaique .bloc picture img {
    display: block;
        width: 100%;
        height: 350px;
        object-fit: cover;
        border-radius: 0;
        box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
  }
  .hebergement-container .herbergement-mosaique .bloc .bloc-text {
    display: block;
    text-align: center;
    font-family: "futura-pt", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.4;
    margin:  0;
    color: #111;
	z-index: 10000;
        position: absolute;
        top: 0px;
        left: 0px;
	width: 100%;
	padding: 20px 20px 40px 20px;
  }
  .hebergement-container .herbergement-mosaique .bloc .bloc-text p { margin: 0; 
    position: absolute;
    border-left: 0px solid black;
    color: black;
    font-family: "futura-pt";
    font-weight: 700;
    font-size: 16px;
    margin: 0;
    text-transform: uppercase;
    background: #d1c6ba;
    clip-path: polygon(0 0, /* haut gauche */ 100% 0, /* haut droit */ 100% calc(100% - 20px), /* coin coup� */ calc(100% - 20px) 100%, /* bas, un peu � gauche */ 0 100% /* bas gauche */);
	top: 0px;
    left: 0px;
    padding: 10px 20px 10px 20px;
}

  /* Les .mosaique-text déplacés au-dessus / au-dessous : look cohérent */
  .hebergement-container .mosaique-text--above,
  .hebergement-container .mosaique-text--below {
    display: block;
    margin: 14px 0;
    padding: 20px 6px;
        padding-bottom: 0;
        margin-bottom: 0;
  }

   .hebergement-container .mosaique-text--above{
padding-bottom: 20px;
}

  .hebergement-container .mosaique-text--above h3,
  .hebergement-container .mosaique-text--below h3 {
    font-family: "itc-avant-garde-gothic-pro", sans-serif;
    font-size: 20px;
    margin: 0 0 6px;
    text-transform: none;
  }
  .hebergement-container .mosaique-text--above p,
  .hebergement-container .mosaique-text--below p {
    margin: 0;
    font-size: 15px;
    color: #333;
  }

  /* Habillage Owl dans ce contexte */
  .hebergement-container .owl-nav {
   position: absolute;
  top: 0px;
  right: 10px;
  }
  .hebergement-container .owl-nav button.owl-prev,  .hebergement-container .owl-nav button.owl-next {
    background: white !important;
  width: 40px;
  height: 40px;
  font-size: 50px !important;
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  padding-bottom: 10px !important;
  border-radius: 50% !important;
  transition: all 250ms;
  }
  .hebergement-container .owl-nav button:hover { transform: translateY(-1px); background: rgba(0,0,0,.7) !important; }


  .hebergement-container .owl-dots { display: flex; justify-content: center; gap: 8px; margin-top: 10px; bottom: 5px; position: absolute; width: 100%;}
  .hebergement-container .owl-dot span {
    width: 8px; height: 8px; display: block; border-radius: 50%;
    background: black !important;
  }

  .hebergement-container .owl-dot.active span { background: white !important; }
}



@media (max-width: 1200px) {
.mosaique-bleu img.vagues{display:none;}

.carrousel-container {
  width: 100% !important;
  margin-top: 2px;
}

.mosaique-bleu .bloc-bleu {
  width: 100% !important;
 padding: 20px 40px;
}

.mosaique-bleu {
  height: auto !important;
  flex-wrap: wrap;
width: 100%;
    max-width: 800px;
}

.mosaic-owl .owl-item img {
  display: block;
  width: 100%;
  height: 498px;
  object-fit: cover;
}

.mosaic-owl.owl-theme .owl-nav {
  position: absolute;
  top: 0px;
  right: 10px;
}

.mosaic-owl.owl-carousel .owl-nav button.owl-prev, .mosaic-owl.owl-carousel .owl-nav button.owl-next{
background: white;
  width: 40px;
  height: 40px;
  font-size: 50px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 10px !important;
  border-radius: 50%;
  transition: all 250ms;
}

.mosaic-owl.owl-theme .owl-dots{
width: 100%;
  position: absolute;
 bottom: 10px;
}

.mosaic-owl.owl-theme .owl-dots .owl-dot.active span, .mosaic-owl.owl-theme .owl-dots .owl-dot:hover span {
  background: white;
}

.mosaic-owl.owl-theme .owl-dots .owl-dot span {
  background: black;
}

.mosaique-bleu .bloc-bleu{
margin:2px 0 0 0;
}

}


/* ---------- Desktop : >= 901px ---------- */
@media (min-width: 901px) {
  .hebergement-container .owl-nav,
  .hebergement-container .owl-dots { display: none !important; }

  /* sur desktop, on laisse la grille et l’aspect existants ; on annule les helpers */
  .hebergement-container .mosaique-text--above,
  .hebergement-container .mosaique-text--below { display: none; }
}



@media (max-width: 620px) {
.image-full,
.region-container{
display:none;
}

.camping-bordure{
margin:20px;
}

.camping-vignette .camping-details .titre{
border:none;
margin:0px;
padding:10px;
}

.camping-vignette .camping-details .geo{
display:none;
}

.camping-vignette .camping-details .titre .departement {
padding:5px;
}

.camping-vignette .camping-details .services-list h4{
width:100%;
}

.camping-vignette .camping-details .services-list{
justify-content: center;
}

.camping-vignette .camping-details .titre h3 {
font-size: 21px;
}

.camping-vignette .camping-details .titre h3 span {
font-size: 18px;
}

.camping-vignette .camping-details .services-general{
justify-content: space-evenly;
}

.camping-vignette .camping-details .plus h4{
margin:5px;
padding:5px;
}

.camping-vignette .camping-details .services-general p{
margin:5px;
}

.camping-vignette .camping-details .services-list span{
width:145px;
}

}




@media (max-width: 520px) {

    #slider{
        margin-top:0px;
    }

    .slider-home {
        height: calc(100vh - 70px);
    }

    .slider {
        border-top-left-radius: 90px;
    }

    .slider .slide:nth-child(1){
        background-position:right;
    }

    .slide-content span {
        font-size:2.5em;
    }

    .slide-content h3 {
        font-size:2.5em;
    }

    .slide-content h4 {
        font-size:2.5em;
    }

    .slide-content p {
        font-size: 1.1em;
    }

    .slide-content img {
        object-fit: cover;
        object-position: center;
    }

    .slider-btn {
        bottom:0%;
    }
}
