:root {
  --fontcolor: rgba(0, 0, 0, 1);
  --greyfontcolor : rgba(40, 40, 40, 1);
  --reversefontcolor:  rgba(255, 255, 255, 1);
  --background-color: rgba(255, 255, 255, 1);
  --background-pattern-color : rgba(248, 249, 240, 1);
  --kitcolor1: rgba(241, 242, 232, 1);
  --kitcolor2: rgba(182, 187, 160, 1);
  --kitcolor3: rgba(128, 132, 113, 1); /* 124 130 104 */
  --kitcolor4: rgba(163, 98, 80, 1);
  --kitcolor5: rgba(186, 121, 102, 1);
  --kitcolor6: rgba(156, 138, 121, 1);
  --kitcolor7: rgba(214, 204, 188, 1);
  --kitcolor8: rgba(204, 156, 143, 1);
  --kitcolor9: rgba(201, 185, 165, 1);

  --scrollbarsize: 8px;
  --scrollbarthumb: rgba(200, 200, 200, 1.0);
  --scrollbarthumbhover: rgba(170, 170, 170, 1.0) ;

  --cp-max-width: 1366px;
  --cp-padding: calc(min(var(--bodyW), var(--cp-max-width)) * 0.0366);
  --cp-padding-sum: calc(var(--cp-padding) * 2);
}

html {
  overflow: hidden visible;
}

body {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 18px;
  padding: 0;
  margin: 0;
  background-color: var(--background-color);
  background-color: var(--background-pattern-color);
  background-image: url(source/leaves_background_1.png);
  background-repeat: repeat;
  background-origin: inherit;
  background-position: top;
  background-blend-mode: overlay;
  background-attachment: fixed;
}
a {
  text-decoration: none;
  color: inherit;
}
p {
  padding: 0;
  margin: 0;
  text-align: justify;
}
b {
  font-weight: 500;
}
h1, h2, h3, h4, h5 {
  font-family: 'Bodoni Moda', serif;
  line-height: 1.3;
}
h1 {
  font-size: 50px;
}
h2 {
  font-size: 2em;
}
h3 {
  font-size: 1.5em;
}
h4 {
  font-size: 1.3em;
}


img {
  overflow-clip-margin: unset;
}
::marker {
  font-size: 0.7em;
}


/* H E A D E R */

.header {
  width: calc(100% - 140px);
  height: auto;
  padding: 20px 70px;
  position: sticky;
  top: 0;
  z-index: 10;
  background-color: var(--kitcolor3);
  display: inline-flex;
  flex-wrap: wrap;
  color: var(--reversefontcolor);
  align-items: center;
  justify-content: space-around;
  gap: 20px 80px;
  border-bottom: solid 4px var(--kitcolor2);
  box-shadow: 0px 2px 25px 4px rgba(0,0,0,0.10);
}
.header_logo {
  height: 120%;
}
.header_title {
  font-family: 'Bodoni Moda', serif;
  font-weight: 800;
  font-size: 55px;
  white-space: nowrap;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  gap: 20px;
  height: 60px;
}
.header_menu_container {
  padding: 0;
  margin: 0;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  list-style: none;
  gap: 8px 40px;
}
.header_menu_element {
  font-size: 20px;
  white-space: nowrap;
}
.header_menu_element:hover, #header_menu_selected {
  text-decoration: solid underline 2px;
  text-underline-offset: 5px;
}

/* C O N T E N T   P A G E */

.emoji {
  height: 25px;
  margin-inline: 5px;
  margin-top: -8px;
  transform: translateY(6px);
}
.contentpage_container {
  max-width: var(--cp-max-width);
  min-height: 100vh;
  margin-inline: auto;
  padding-bottom: 120px;
  padding-left : var(--cp-padding);
  padding-right: var(--cp-padding);
  box-shadow: 0px 2px 25px 4px rgba(0,0,0,0.10);
  background-color: var(--background-color);
  overflow: hidden;
}
.contentpage_block {
  padding-top: 160px;
  width: 100%;
  position: static;
}
.contentpage_block_presentation {
  position: relative;
  width: 85%;
  max-width: 887px;
  margin-inline: auto;
  padding-top: 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.contentpage_block_presentation h1 {
  position: relative;
  display: block;
  font-family: "Bodoni Moda", serif;
  font-size: 50px;
  font-weight: 800;
  color: var(--greyfontcolor);
  text-align: center;
  margin: 42px 0;
}
.contentpage_block_presentation p {
  padding: 20px 0;
  position: relative;
  text-align: justify;
  text-align-last: center;
  line-height: 1.3em;
}
.contentpage_block_presentation div {
  width: 20%;
  margin-inline: auto;
  height: 2px;
  background-color: var(--kitcolor2);
  margin-top: 50px;
  margin-bottom: -50px;
}
.contentpage_block_center {
  text-align: center;
  text-align-last: center;
  max-width: 850px;
  margin-inline: auto;
}
.color_block {
  position: relative;
  background-color: var(--kitcolor3);
  height: auto;
  display: flex;
  flex-direction: column;
}
.color_block p {
  display: flex;
  align-items: center;
  /* min-height: calc(100% - 80px - 130px); /* minus padding top bottom & minus button below */
  padding: 40px;
  flex: 1;
}
.image_block_container {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: inherit;
}
.image_block {
  /* border: 3px solid var(--kitcolor2); */
  overflow: hidden;
  display: flex;
  justify-content: center;
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
}

/* I N D E X */

.index_img {
  position: relative;
  width: 100%;
  margin-top: -20px;
}
.index_img img {
  width: 100%;
}
.card_container{
  margin-top: -35px;
  display: flex;
  justify-content: center;
  padding: 0 30px;
}
.card_group {
  position: relative;
  display: inline-flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1066px;
  gap: 15px 25px;
  justify-content: center;
}
.card {
  min-width: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px 10px;
  height: 80px;
  background-color: var(--kitcolor2);
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
  color: var(--reversefontcolor);
  font-size: 20px;
  line-height: 1;
  border-radius: 6px;
  flex-direction: column;
}
.card_style_font {
  font-family: 'Bodoni Moda', serif;
  font-size: 40px;
  font-weight: 500;
}
.card_bis {
  min-width: 160px;
  background-color: var(--kitcolor4);
  font-family: 'Bodoni Moda', serif;
  font-size: 26px;
  font-weight: 500;
  flex-direction: row;
}
.card_bis:hover {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  transition: 0.1s;
}
.card_bis img {
  height: 40%;
}
.contentpage_block_presentation_index {
  padding-left : var(--cp-padding);
  padding-right: var(--cp-padding);
  width: 92%;
  max-width: 990px;
  box-sizing: border-box;
}
.contentpage_block_presentation_index h1 {
  white-space: nowrap;
}
.contentpage_block_presentation_trace {
  height: 170px;
  min-width: 100%;
  position: absolute;
  transform: translate(38px, -7px);
}
.contentpage_block_1, .contentpage_block_2, .contentpage_block_3 {
  display: inline-flex;
  justify-content: space-between;
  height: unset;
  align-items: center;
}
.contentpage_block_4 {
  height: auto;
}
.color_block_extension {
  position: absolute;
  height: 0;
  width: calc((100% - 1366px - (1366px * 0.0732))/2 + 1px);
  padding-right: calc(min(100%, 1366px)* 0.0366);
  background-color: var(--kitcolor3);
  z-index: 2;
  box-shadow: inset 0px 30px 25px -26px rgba(0,0,0,0.10), inset 0px -30px 25px -26px rgba(0,0,0,0.10);
}
.color_block_extension_1, .color_block_extension_3 {
  left: 0;
}
.color_block_extension_2 {
  right: 0;
}
.color_block_1, .color_block_3 {
  box-shadow: inset 0px 30px 25px -26px rgba(0,0,0,0.10), inset 0px -30px 25px -26px rgba(0,0,0,0.10), inset -30px 0px 25px -26px rgba(0,0,0,0.10);
}
.color_block_1, .color_block_2, .color_block_3, .color_block_4 {
  color: var(--reversefontcolor);
}
.color_block_1 {
  left: 0;
  min-height: 480px;
  width: 50%;
  border-radius: 0px 8px 8px 0px;
}
.color_block_2 {
  right: 0;
  min-height: 480px;
  width: 35%;
  border-radius: 8px 0px 0px 8px;
  box-shadow: inset 0px 30px 25px -26px rgba(0,0,0,0.10), inset 0px -30px 25px -26px rgba(0,0,0,0.10), inset 30px 0px 25px -26px rgba(0,0,0,0.10);
}
.color_block_3 {
  left: 0;
  min-height: 480px;
  width: 50%;
  border-radius: 0px 8px 8px 0px;
}
.color_block_4 {
  position: relative;
  width: 90%;
  max-width: min(683px, 77%);
  height: 350px;
  margin-inline: auto;
  background-color: var(--kitcolor2);
  justify-content: flex-start;
  text-align: center;
  align-items: center;
  border-radius: 8px;  
  box-shadow: inset 0px 0px 25px 4px rgba(0,0,0,0.10);
}
.color_block_4 span {
  font-family: 'Bodoni Moda', serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 1;
  margin-top: 40px;
  padding: 0 10px;
  color: var(--reversefontcolor);
}
.color_block_line {
  height: 3px;
  width: 35%;
  background-color: var(--background-color);
  margin-top: 45px;
}
.color_block_button {
  position: relative;
  margin: 0px auto 60px auto;
  height: 70px;
  width: 180px;
  background-color: var(--kitcolor4);
  text-align: center;
  display: flex;
  align-items: center;
  cursor: pointer;
  color: var(--reversefontcolor);
  font-family: 'Bodoni Moda', serif;
  font-size: 20px;
  line-height: 1.2em;
  font-weight: 500;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;
  transition: 0.1s;
  border-radius: 8px;
}
.color_block_button span {
  flex: 1;
}
.color_block_button img {
  height: 40%;
  padding-right: 15px;
}
.color_block_button:hover {
  box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 10px 0px;
  transition: 0.1s;
}
.image_block_container_1, .image_block_container_3 {
  float: right;
  width: 45%;
}
.image_block_container_2 {
  float: left;
  display: grid;
  width: 60%;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  padding-left: 1%;
  padding-top: 1.5%;
}
.image_block_column {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: inherit;
}
.image_block_1 {
  flex: 1;
}
.image_block_1:nth-child(1) img {    
  position: relative;
  height: 400px;
}
.image_block_1:nth-child(2) img {
  position: relative;
  height: 520px;
}
.image_block_1:nth-child(1) {
  z-index: 2;
  transform: translateX(25px);
}
.image_block_1:nth-child(2) {
  z-index: 1;
}
.image_block_2 {
  aspect-ratio: 3/2;
}
.image_block_2:nth-child(1) {
  align-self: end;
  transform: translate(-1%, -9%) scale(1.05);
}
.image_block_2:nth-child(2) {
  align-self: end;
  transform: translate(0, 7%) scale(0.9);
}
.image_block_2:nth-child(3) {
  align-self: start;
  transform: translate(0, -7%) scale(0.9);
}
.image_block_2:nth-child(4) {
  align-self: start;
  transform: translate(-14%, -6%) scale(0.75);
}
.review_container {
  position: relative;
  z-index: 2;
  margin-top: -200px;
  left: 50%;
  transform: translateX(-50%);
  width: 1366px;
  max-width: 95vw;
}
.review_scroll_container {
  overflow: scroll hidden;
}
.review_hider {
  position: absolute;
  height: calc(100% - var(--scrollbarsize));
  top: 0;
  width: 40px;
  background-color: transparent;
  z-index: 3;
  pointer-events: none;
}
.review_hider_left {
  left: 0;
  box-shadow: inset 30px 0px 20px -10px white;
}
.review_hider_right {
  right: 0;
  box-shadow: inset -30px 0px 20px -10px white;
}
.review_band {
  position: relative;
  display: inline-flex;
  justify-content: center;
  transition: 0.5s;
  cursor: pointer;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-inline: calc(50% - min(25vw, 400px) - 30px - 30px);
}
.review_card {
  position: relative;
  flex: 1;
  width: 50vw;
  max-width: 800px;
  min-height: 150px;
  padding: 30px;
  margin: 0 30px;
  background-color: var(--background-color);
  box-shadow: 4px 0px 25px 4px rgba(0,0,0,0.10);
}
.review_card_firstline_container {
 display: flex;
 flex-direction: row;
 align-items: center;
 justify-content: space-between;
}
.review_card_logo {
  height: 30px;
}
.review_card_stars_container {
  display: flex;
  align-items: center;
  height: 18px;
  width: auto;
  gap: 2px;
}
.review_card_stars_container span {
  font-size: 1.1em;
  font-weight: 500;
  padding-right: 5px;
  padding-top: 1px;
}
.review_card_star {
  height: inherit;
}
.review_card p {
  color: var(--fontcolor);
  padding: 30px 0;
}
.review_card_name {
  position: absolute;
  right: 30px;
  bottom: 30px;
  color: var(--kitcolor4);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 12px;
}
.review_card_source {
  height: 25px;
}

/* C H A M B R E S */

.contentpage_block_chambres_grid { 
  height: auto;
  position: relative;
  overflow: hidden;  
  display: grid;
  --gridgap: 0px;
  --gridnbcolumns: 50;
  --gridgapcalc: calc(var(--gridgap) / var(--gridnbcolumns) * (var(--gridnbcolumns) - 1)); /* -1 cause there is 1 gap less than columns */
  --gridsquarecalc: calc(min(var(--cp-max-width), calc(var(--bodyW) - var(--cp-padding-sum))) / var(--gridnbcolumns) - var(--gridgapcalc));
  grid-template-columns: repeat(var(--gridnbcolumns), var(--gridsquarecalc) );
  grid-template-rows: repeat(78, var(--gridsquarecalc));
  grid-gap: var(--gridgap);
}
.floor {
  display: block;
  font-family: "Bodoni Moda", serif;
  font-size: min(3.3vw, 45px);
  font-weight: 800;
  color: var(--greyfontcolor);
  white-space: nowrap;
  margin: 0;
}
.floor_1 {
  grid-area: 3/37;
}
.floor_2 {
  grid-area: 49/4
}
.chambre {
  display: block;
  position: relative;
  font-size: min(18px, 1.212vw);
  line-height: 1.3em;
  display: flex;
  border-radius: 8px;
  box-shadow: inset 4px 0px 15px 0px rgba(0,0,0,0.10);
}
.chambre p {
  padding: calc(0.02 * min(1466px, 100vw));
  flex: 2;
}
.chambre ul {
  flex: 1;
  margin: 0;
  margin-left: 7%;
  padding: calc(0.02 * min(1466px, 100vw));
  list-style: circle;
  font-weight: 500;
}
.chambre a {
  position: absolute;
  width: 100%;
}
.image_block_chambres {
  border: 2px solid var(--kitcolor1);
}
.chambre_1 {
  background-color: var(--kitcolor7);
  color: var(--greyfontcolor);
  grid-area: 1/1/12/27;
}
.chambre_1 ul {
  padding-top: 6%;
}
.chambre_1 .image_block_chambres_1 {
  width: 50%;
  aspect-ratio: 3/2;
  transform: translate(8%,74%);
}
.chambre_1 .image_block_chambres_2 {
  width: 50%;
  aspect-ratio: 3/2;
  transform: translate(88%,59%);
}
.chambre_2 {
  background-color: var(--kitcolor5);
  color: var(--reversefontcolor);
  grid-area: 10/34/23/51;
  flex-direction: column;
}
.chambre_2 .image_block_chambres_1 {
  width: 65%;
  aspect-ratio: 5/4;
  transform: translate(43%,119%);
}
.chambre_2 .image_block_chambres_2 {
  width: 70%;
  aspect-ratio: 5/4;
  transform: translate(-42%,54%);
}
.chambre_2 p {
  flex: 1;
}
.chambre_2 ul {
  margin-left: 46%;
  padding-top: 0;
  margin-top: -4%;
  flex: 3;
}
.chambre_3 {
  background-color: var(--kitcolor3);
  color: var(--reversefontcolor);
  grid-area: 22/1/37/20;
  flex-direction: column;
}
.chambre_3 .image_block_chambres_1 {
  width: 65%;
  aspect-ratio: 5/4;
  transform: translate(8.5%,89%);
}
.chambre_3 .image_block_chambres_2 {
  width: 70%;
  aspect-ratio: 5/4;
  transform: translate(87%,32%);
}
.chambre_3 ul {
  padding: 0 4.25% 42% 10%;
}
.chambre_4 {
  background-color: var(--kitcolor4);
  color: var(--reversefontcolor);
  grid-area: 46/24/58/51;
  flex-direction: column;
}
.chambre_4 .image_block_chambres_1 {
  width: 50%;
  aspect-ratio: 3/2;
  transform: translate(8%,50%);
}
.chambre_4 .image_block_chambres_2 {
  width: 50%;
  aspect-ratio: 3/2;
  transform: translate(89%,78%);
}
.chambre_4 ul {
  margin-left: 60%;
  margin-top: -44%;
}
.chambre_5 {
  background-color: var(--kitcolor6);
  color: var(--reversefontcolor);
  grid-area: 58/1/74/17;
  flex-direction: column;;
}
.chambre_5 .image_block_chambres_1 {
  width: 80%;
  aspect-ratio: 5/4;
  transform: translate(8%,72%);
}
.chambre_5 .image_block_chambres_2 {
  width: 85%;
  aspect-ratio: 5/4;
  transform: translate(97%,38%);
}
.chambre_5 p {
}
.chambre_5 ul {
  padding-top: 0;
  padding-bottom: 59%;
  margin-left: 12%;
}

 /* D A T A   B L O C K S  */

.data_container_exterieur, .data_container_maison {
  display: flex;
  flex-wrap: wrap;
}
.data_block_exterieur, .data_block_maison {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.data_block_exterieur span, .data_block_maison span {
  font-size: 16px;
}
.data_block_exterieur_max h3, .data_block_maison h3 {
  font-size: 35px;
  margin: 0;
}
.data_block_exterieur_min h3, .data_block_maison h3 {
  font-size: 28px;
  margin: 0;
}


/* M A I S O N */

.contentpage_block_maison_grid {
  height: unset;
  display: grid;
  --gridgap: 10px;
  --gridnbcolumns: 20;
  --gridgapcalc: calc(var(--gridgap) / var(--gridnbcolumns) * (var(--gridnbcolumns) - 1)); /* -1 cause there is 1 gap less than columns */
  --gridsquarecalc: calc( min(var(--cp-max-width), calc(var(--bodyW) - var(--cp-padding-sum))) / var(--gridnbcolumns) - var(--gridgapcalc));
  grid-template-columns: repeat(var(--gridnbcolumns), var(--gridsquarecalc));
  grid-gap: var(--gridgap);
}
.contentpage_block_maison_grid_1 {
  grid-template-rows: repeat(10, var(--gridsquarecalc));
}
.contentpage_block_maison_grid_2 {
  grid-template-rows: repeat(10, var(--gridsquarecalc));
}
.contentpage_block_maison_grid_3 {
  grid-template-rows: repeat(9, var(--gridsquarecalc));
}
.image_block_maison {
  border: unset;
}
.image_block_maison img {
  height: 100%;
  min-width: 100%;
  object-fit: cover;
}
.image_block_maison_1 {

}
.image_block_maison_1:nth-child(1) {
  grid-area: 1/11/7/21;
}
.image_block_maison_1:nth-child(2) {
  grid-area: 7/11/11/17;
}
.image_block_maison_1:nth-child(3) {
  grid-area: 7/17/11/21;
}
.image_block_maison_2 {

}
.image_block_maison_2:nth-child(1) {
  grid-area: 1/1/7/11;
}
.image_block_maison_2:nth-child(2) {
  grid-area: 7/1/11/7;
}
.image_block_maison_2:nth-child(3) {
  grid-area: 7/7/11/11;
}
.image_block_maison_3 {

}
.image_block_maison_3:nth-child(1) {
  grid-area: 2/10/6/15;
}
.image_block_maison_3:nth-child(2) {
  grid-area: 2/15/6/21;
}
.image_block_maison_3:nth-child(3) {
  grid-area: 6/10/10/16;
}
.image_block_maison_3:nth-child(4) {
  grid-area: 6/16/10/21;
}
.data_container_maison_3 {
  grid-area: 1/11/2/21;
  justify-content: space-evenly;
  align-self: end;
  padding-bottom: 15px;
  flex-wrap: nowrap;
}
.data_block_maison_3 {

}
.color_block_maison {
  border-radius: 8px;
  box-shadow: 0px 0px 25px 4px rgba(0,0,0,0.10);
}
.color_block_maison h2 {
  text-align: center;
  font-size: 40px;
  padding: 40px 0;
  margin: 0;
}
.color_block_maison h3 {
  text-align: center;
  font-size: 20px;
  padding: 0 20px 6px 20px;  
  margin: 0;
}
.color_block_maison p {
  padding-bottom: 25px;
  padding-top: 0;
}
.color_block_maison_separator {
  height: 2px;
  width: 15%;
  margin: 15px 0 20px 0;
  background-color: var(--fontcolor);
  align-self: center;
}
.color_list_maison {
  display: flex;
  justify-content: center;
  padding: 0 40px;
}
.color_list_maison div {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.color_list_maison ul {
  margin: 0;
  padding: 10px 0 40px 20px;
  list-style: none;
}
.color_list_maison li {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 6px 0;
}
.color_list_maison li img {
  height: 20px;
  padding-right: 15px;
  padding-bottom: 2px;
}
.color_block_maison_1 {
  grid-area: 2/1/10/12;
  color: var(--reversefontcolor);
  background-color: var(--kitcolor3);
  align-self: center;
}
.color_block_maison_2 {
  grid-area: 2/10/10/21;
  color: var(--reversefontcolor);
  background-color: var(--kitcolor5);
  align-self: center;
}
.color_block_maison_3 {
  grid-area: 2/1/9/11;
  color: var(--fontcolor);
  background-color: var(--kitcolor9);
  align-self: center;
}
.color_patch_maison_container {
  position: absolute;
  width: 15%;
  display: flex;
  flex-direction: column;
  gap: var(--gridgap);
}
.color_patch_maison_container_1 {
  left: 0;
  transform: translate(-75%, -20%);
}
.color_patch_maison_container_2 {
  right: 0;
  transform: translate(75%, -20%);
}
.color_patch_maison_container_3 {
  left: 0;
  transform: translate(-75%, -20%);
}
.color_patch_maison {
  width: 100%;
  padding-bottom: 100%;
  z-index: 2;
  border-radius: 8px;
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
}
.color_patch_maison_container_1 .color_patch_maison_1 {
  background-color: var(--kitcolor2);
}
.color_patch_maison_container_1 .color_patch_maison_2 {
  background-color: var(--kitcolor1);
}
.color_patch_maison_container_2 .color_patch_maison_1 {
  background-color: var(--kitcolor4);
}
.color_patch_maison_container_2 .color_patch_maison_2 {
  background-color: var(--kitcolor8);
}
.color_patch_maison_container_3 .color_patch_maison_1 {
  background-color: var(--kitcolor6);
}
.color_patch_maison_container_3 .color_patch_maison_2 {
  background-color: var(--kitcolor7);
}

/* E X T E R I E U R S */

.contentpage_block_exterieur_grid {
  height: unset;
  display: grid;
  --gridgap: 10px;
  --gridnbcolumns: 20;
  --gridgapcalc: calc(var(--gridgap) / var(--gridnbcolumns) * (var(--gridnbcolumns) - 1)); /* -1 cause there is 1 gap less than columns */
  --gridsquarecalc: calc( min(var(--cp-max-width), calc(var(--bodyW) - var(--cp-padding-sum))) / var(--gridnbcolumns) - var(--gridgapcalc));
  grid-template-columns: repeat(var(--gridnbcolumns), var(--gridsquarecalc));
  grid-gap: var(--gridgap);
}
.contentpage_block_exterieur_grid_1 {
  grid-template-rows: repeat(12, var(--gridsquarecalc));
}
.contentpage_block_exterieur_grid_2 {
  grid-template-rows: repeat(10, var(--gridsquarecalc));
}
.contentpage_block_exterieur_grid_3 {
  grid-template-rows: repeat(8, var(--gridsquarecalc));
}
.image_block_exterieur {
  border: none;
}
.image_block_exterieur img {
  height: 100%;
  min-width: 100%;
  object-fit: cover;
}
.image_block_exterieur_1:nth-child(1) {
  grid-area: 1/1/9/13;
}
.image_block_exterieur_1:nth-child(2) {
  grid-area: 9/1/13/7;
}
.image_block_exterieur_1:nth-child(3) {
  grid-area: 9/7/13/13;
}
.image_block_exterieur_2:nth-child(1) {
  grid-area: 1/1/7/11;
}
.image_block_exterieur_2:nth-child(2) {
  grid-area: 1/11/7/21;
}
.image_block_exterieur_3:nth-child(1) {
  grid-area: 1/9/5/15;
}
.image_block_exterieur_3:nth-child(2) {
  grid-area: 5/9/9/15;
}
.image_block_exterieur_3:nth-child(3) {
  grid-area: 1/15/9/21;
}
.color_block_exterieur {
  border-radius: 8px;
  box-shadow: 0px 0px 25px 4px rgba(0,0,0,0.10);
}
.color_block_exterieur h2 {
  text-align: center;
  font-size: 40px;
  padding-top: 40px;  
  margin: 0;
}
.color_block_exterieur p {
}
.color_block_exterieur_1 {
  grid-area: 1/12/10/21;
  background-color: var(--kitcolor7);
  color: var(--fontcolor);
  align-self: end;
  justify-self: right;
  min-height: 520px;
  min-width: 480px;
}
.color_block_exterieur_2 {
  grid-area: 6/3/11/15;
  background-color: var(--kitcolor5);
  color:var(--reversefontcolor);
  align-self: start;
  min-height: 320px;
}
.color_block_exterieur_3 {
  grid-area: 1/1/8/10;
  background-color: var(--kitcolor3);
  color:var(--reversefontcolor);
  align-self: center;
  min-height: 330px;
}
.color_block_exterieur_dontsmoke {
  width: 550px;
  background-color: var(--kitcolor4);
  color: var(--reversefontcolor);
  margin: 10px auto;
  display: flex;
  flex-direction: row;
  outline: 10px solid var(--kitcolor4);
  border: 4px solid white;
}
.color_block_exterieur_dontsmoke img {
  width: 70px;
  padding: 25px 0 25px 25px;
  filter: invert(1);
}
.color_block_exterieur_dontsmoke p {
  font-size: 0.85em;
  padding: 25px;
  font-weight: 500;
}
.nf_container {
  display: inline-flex;
  height: 28px;
  align-items: center;
  justify-content: flex-end;
  padding: 0 20px 10px 20px;
  gap: 10px;
  font-size: 16px;
  margin-top: -15px;
}
.nf_container img {
  height: 100%;
}
.data_container_exterieur_1 {
  grid-area: 10/13/13/21;
  align-self: start;
  row-gap: 7px;
  padding-top: 15px;
}
.data_container_exterieur_2 {
  grid-area: 7/15/11/21;
  flex-direction: column;
  justify-content: center;
  row-gap: 20px;
}
.data_container_exterieur_1 .data_block_exterieur_max {
  width: 100%;
}
.data_container_exterieur_1 .data_block_exterieur_min {
  width: 50%;
}
.data_block_exterieur_max h3 {
  font-size: 35px;
  margin: 0;
}
.data_block_exterieur_min h3 {
  font-size: 28px;
  margin: 0;
}

/* R E S E R V A T I O N */

.color_block_tarifs {
  align-items: center;
  background-color: unset;
  color: var(--fontcolor);
  padding: 40px 0 40px 0;
  margin-inline: auto;
  width: 100%;
  border-radius: 8px;
  /* box-shadow: 0px 0px 15px 4px rgba(0,0,0,0.10);*/
}
.color_block_tarifs h2 {
  font-size: 2em;
  margin: 0;
}
.tarifs_container {
  padding: 40px;
  display: flex;
  flex-direction: row;
  box-sizing: border-box;
  width: 100%;
  max-width: 1100px;
  justify-content: center;
}
.tarifs_separator {
  height: auto;
  margin: 4% 5%;
  width: 2px;
  background-color: var(--fontcolor);
}
.tarifs_hs, .tarifs_bs, .tarifs_ms {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.tarifs_hs {

}
.tarifs_bs {

}
.tarifs_ms {

}
.tarifs_hs h3, .tarifs_bs h3, .tarifs_ms h3 {
  font-size: 1.2em;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  margin: 0 0 10px 0;
  flex: 1;
}
.tarifs_hs span, .tarifs_bs span, .tarifs_ms span {
  font-size: 0.9em;
  flex: 1;
  padding: 0;
  align-content: center;
}
.tarifs_hs .tarifs_price, .tarifs_bs .tarifs_price, .tarifs_ms .tarifs_price {
  background-color:  hsl(29 23% 75% / 1);
  box-sizing: border-box;
  padding: 20px 20px;
  width: 100%;
  max-width: 200px;
  color: var(--greyfontcolor);
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;
  font-weight: 600;
  font-size: 1.2em;
  margin-top: 40px;
  border-radius: 8px;
}
.tarifs_data_container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.tarifs_data {
  display: flex;
  flex-direction: column;
  background-color:  hsl(29 23% 75% / 1);
  align-items: center;
  padding: 15px 40px;
  border-radius: 5px;
  gap: 8px;
}
.tarifs_data div {
  background-color: unset;
  /*padding: 10px 30px;*/
  color: var(--greyfontcolor);
  border-radius: 8px;
  /*box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;*/
  width: 100%;
  font-size: 1em;
  font-weight: 500;
  text-align: center;
  box-sizing: border-box;
}
.tarifs_data div:nth-child(1) {
  font-size: 1.1em;
  font-weight: 600;
}
.tarifs_data div:nth-child(2) {
  font-size: 0.9em;
}
.tarifs_taxedesejour {
  color: var(--greyfontcolor);
  margin-top: 15px;
  width: 100%;
  font-size: 0.8em;
  font-weight: 400;
  text-align: center;
  font-style: italic;
  box-sizing: border-box;
}
.tarifs_info_container {
 display: flex;
 justify-content: center;
 flex-direction: row;
 width: 67%;
 margin-inline: auto;
}
.tarifs_info {
  flex: 1;
  height: fit-content;
  /*background-color: var(--kitcolor7);*/
  color: var(--greyfontcolor);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-radius: 35px 3px;
  padding: 10px 10px 20px 10px;
}
.tarifs_info img {
  width: 30px;
  padding: 14px;
  transition: 0.1s;
}
.tarifs_info img:hover {
  transform: scale(1.1);
  transition: 0.1s;
}
.tarifs_info_title {
  width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1em;
  font-weight: 600;
}
.tarifs_info_content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;  
  padding: 0 0;
}
.tarifs_info_content i {
  padding-top: 10px;
  font-size: 0.8em;
}
.color_block_contact {
  position: relative;
  background-color: var(--kitcolor6);
  color: var(--reversefontcolor);
  width: fit-content;
  min-width: 45%;
  margin-inline: auto;
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 40px 80px;
  box-sizing: border-box;
  gap: 40px;
  border-radius: 8px;
  box-shadow: 0px 0px 25px 4px rgba(0,0,0,0.10);
}
.color_block_contact h2 {
  font-size: 2em;
  margin: 0;
}
.color_block_contact span {

}


/* I N F O S  P R A T I Q U E S */

.infospratiques_map_container {
  display: flex;
}
.infospratiques_map_container iframe {
  width: 50%;
  height: auto;
  border:0; 
  position: relative;
}
.infospratiques_equipements_container, .infospratiques_access_container, .infospratiques_services_container, .infospratiques_activities_container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 10px;
}
.infospratiques_access_container {
  width: 50%;
  padding: 10px 40px;
  box-sizing: border-box;
}
.infospratiques_equipements_container, .infospratiques_services_container, .infospratiques_activities_container {
  text-align: center;
  justify-content: center;
  max-width: 850px;
  width: 100%;
  margin-inline: auto;
}
.infospratiques_access_container h2, .infospratiques_equipements_container h2, .infospratiques_services_container h2, .infospratiques_activities_container h2 {
  margin: 10px 0;
  width: 100%;
  text-align: center;
}
.infospratiques_access_item {
  flex: 1;
  min-width: max(34%, 265px); 
  display: flex;
  flex-direction: column;
  align-items: center;
}
.infospratiques_access_item img {
  width: 35px;
  padding: 8px;
  margin-top: 10px;
  transition: 0.1s;
}
.infospratiques_equipements_item img, .infospratiques_services_item img, .infospratiques_activities_item img {
  width: 30px;
  padding: 14px;
  transition: 0.1s;
}
.infospratiques_access_item img:hover, .infospratiques_services_item img:hover, .infospratiques_activities_item img:hover {
  transform: scale(1.1);
  transition: 0.1s;
}

.infospratiques_access_item span {
  font-size: 1.1em;
  font-weight: 600;
  text-align: center;
}
.infospratiques_access_item p {
  line-height: 1.5em;
  text-align: center;
  margin-top: 15px;
}
.infospratiques_equipements_container, .infospratiques_services_container, .infospratiques_activities_container {
  display: flex;
  flex-direction: row;
  gap: 10px;
  flex-wrap: wrap;
  text-align: center;
  justify-content: center;
  max-width: 850px;
  width: 100%;
  margin-inline: auto;
}
.infospratiques_equipements_container p, .infospratiques_services_container p, .infospratiques_activities_container p {
  margin-top: 30px;
  text-align: justify;
  text-align-last: center;
}
.infospratiques_equipements_item {
  flex: 1;
  min-width: calc(20% - 10px);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.infospratiques_services_item, .infospratiques_activities_item {
  flex: 1;
  min-width: calc(25% - 10px);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.infospratiques_activities_item .item_title {
  font-weight:;
}
.infospratiques_activities_item .item_detail {
  font-size: 0.8em;
}



/* F O O T E R */

.footer {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  flex-wrap: nowrap;
  bottom: 0;
  width: 100%;
  max-width: 1366px;
  padding: 0 calc((100% - 1366px) / 2);
  padding-top: 20px;
  padding-bottom: 5px;
  border-top: solid 4px var(--kitcolor2);
  background-color: var(--kitcolor1);
/*  background-image: url(source/leaves_band.png);
  background-blend-mode: soft-light;
  background-size: cover;
  background-position: center; */
  font-size: 0.8em;
  font-weight: 500;
  text-align: center
}
.footer_contact, .footer_rating {  
  display: flex;
  flex-direction: column;
  row-gap: 15px;
  padding: 0px 25px;
}
.footer_contact > a, .footer_rating > a {
  font-family: 'Bodoni Moda', serif;
  font-weight: 900;
  color: var(--kitcolor3);
  font-size: 35px;
}
.footer_contact span, .footer_rating span {
}
.rating_container {
  margin: 0px;
  display: inline-flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  justify-content: center;
  height: 100%;
  align-items: center;
}
.starbox {
  padding: 0 6px;
  height: 25px;
  width: 25px;
  fill: none;
  stroke-width: 2;
}
.starbox5:hover, .starbox4:hover, .starbox4:hover ~ .starbox5, .starbox3:hover, .starbox3:hover ~ .starbox4, .starbox3:hover ~ .starbox5, .starbox2:hover, .starbox2:hover ~ .starbox3, .starbox2:hover ~ .starbox4, .starbox2:hover ~ .starbox5, .starbox1:hover, .starbox1:hover ~ .starbox2, .starbox1:hover ~ .starbox3, .starbox1:hover ~ .starbox4, .starbox1:hover ~ .starbox5 {
  fill: #ED8A19;
}
.footer_mentionslegales {
  text-decoration: underline;
  background-color: var(--kitcolor1);
  color: rgba(0,0,0,0.3);
  text-align: center;
  padding: 10px 0;
  font-size: 0.7em;
}

/* S C R O L L B A R */

/* width */       ::-webkit-scrollbar {width: var(--scrollbarsize); height: var(--scrollbarsize);}
/* Track */       ::-webkit-scrollbar-track {background-color: var(--background-color);border-radius: 0px;}
/* Handle */      ::-webkit-scrollbar-thumb {background: var(--scrollbarthumb);border-radius: 4px;}
/* Handle on hover */ ::-webkit-scrollbar-thumb:hover {background: var(--scrollbarthumbhover);}



/* M E D I A */

@media (max-width: 1481px) { /* Contentpage full width*/
  footer {background-color: var(--kitcolor1); background-image: url(source/leaves_band.png); background-blend-mode: soft-light; background-size: cover; background-position: center;}
  .footer {background-color: unset}
  .footer_mentionslegales {background-color: unset;}
}

@media (max-width: 1320px) {
/* INDEX 1320PX */
  .color_block_extension {display: none}
  .color_block {}
  .color_block_1, .color_block_3 {width: 54%; margin-left: -4%}
  .color_block_2 {width: 39%; margin-right: -4%}
/* CONTENTPAGE 1320PX */
  .contentpage_block_chambres_grid {overflow: visible; --gridnbcolumns: 25; grid-template-columns: repeat(var(--gridnbcolumns), var(--gridsquarecalc));
 grid-template-rows: repeat(120, 22px);}
/* CHAMBRE 1320PX */
  .chambre {font-size: 17px; line-height: 1.2em;}
  .chambre p {padding: 22px; text-align: justify;}
  .chambre ul {padding: 22px}
  .chambre_1 {grid-area: 5/1/18/25; max-width: 710px; justify-self: left;}
  .chambre_1 ul {flex: 1; padding-top: 5%; padding-left: 6%; padding-right: 12%}
  .chambre_1 .image_block_chambres_1 {width: 48%; transform: translate(6%, 66%);}
  .chambre_1 .image_block_chambres_2 {width: 50%; transform: translate(90%, 51%);}
  .chambre_2 {grid-area: 25/3/39/26; max-width: 585px; justify-self: right}
  .chambre_2 ul {margin-left: 51%; margin-top: -3%}
  .chambre_2 .image_block_chambres_1 {width: 55%; transform: translate(73%, 95%);}
  .chambre_2 .image_block_chambres_2 {width: 57%; transform: translate(-16%, 38%);}
  .chambre_3 {grid-area: 50/1/66/23; max-width: 560px; justify-self: left}
  .chambre_3 ul {padding-bottom: 36%; margin-left: 13%; margin-top: -2.5%}
  .chambre_3 .image_block_chambres_1 {width: 55%; transform: translate(7%, 80%);}
  .chambre_3 .image_block_chambres_2 {width: 60%; transform: translate(90%, 32%);}
  .chambre_4 {grid-area: 80/2/92/26; max-width: 630px; justify-self: right}
  .chambre_4 p {flex: 1}
  .chambre_4 ul {flex: 3; margin-top: -2%; margin-left: 53%}
  .chambre_4 .image_block_chambres_1 {aspect-ratio: 5/4; width: 50%; transform: translate(-8%, 41%);}
  .chambre_4 .image_block_chambres_2 {width: 53%; transform: translate(79%, 79%);}
  .chambre_5 {grid-area: 100/1/116/21; max-width: 508px; justify-self: left}
  .chambre_5 p {flex: 1}
  .chambre_5 ul {flex: 4; margin-left: 6%; margin-top: -3%}
  .chambre_5 .image_block_chambres_1 {width: 65%; transform: translate(7%, 65%);}
  .chambre_5 .image_block_chambres_2 {width: 65%; transform: translate(96%, 32%);}
  .floor {font-size: 45px; margin-top: -25px; text-align: center;}
  .floor_1 {grid-area: 1/1/2/26}
  .floor_2 {grid-area: 76/1/77/26}
}

@media (max-width: 1024px) {
  body {font-size: 17px}
/* HEADER 1024PX */
  .header {padding: 15px 50px; width: auto}
  .header_menu_container {gap: 8px 35px}
  .header_title {font-size: 50px; height: 52px;}
  .header_menu_element {font-size: 19px}
  .header_menu_element:hover, #header_menu_selected {text-decoration: solid underline 1px; text-underline-offset: 3px}
/* CONTENTPAGE 1024PX */
  .contentpage_block_presentation_trace {transform: translate(38px, -8px); height: 160px}
  .contentpage_block_presentation h1 {font-size: 45px;}
/* DATA BLOCKS 1024PX */
  .data_block_exterieur_max h3, .data_block_maison h3 {font-size: 30px}
  .data_block_exterieur_min h3 {font-size: 24px}
  .data_block_exterieur span, .data_block_maison span {font-size: 14px}
/* MAISON 1024PX */
  .contentpage_block_maison_grid {--gridgap: 5px;}
  .contentpage_block_maison_grid_3 {grid-template-rows: repeat(11, var(--gridsquarecalc));}
  .color_block_maison h2 {font-size: 35px; padding: 30px 25px 30px 25px;}
  .color_block_maison p {padding-inline: 25px}
  .color_list_maison {padding: 0 25px;}
  .color_list_maison li {padding: 5px 0;}
  .image_block_maison_1:nth-child(1) {grid-area: 1/12/7/21;}
  .image_block_maison_1:nth-child(2) {grid-area: 7/12/11/17;}
  .color_block_maison_1 {grid-area: 2/1/10/13;}
  .image_block_maison_2:nth-child(1) {grid-area: 1/1/7/10;}
  .image_block_maison_2:nth-child(2) {grid-area: 7/1/11/6;}
  .image_block_maison_2:nth-child(3) {grid-area: 7/6/11/10;}
  .color_block_maison_2 {grid-area: 2/9/10/21;}
  .image_block_maison_3:nth-child(1) {grid-area: 2/10/7/15;}
  .image_block_maison_3:nth-child(2) {grid-area: 2/15/7/21;}
  .image_block_maison_3:nth-child(3) {grid-area: 7/10/12/16;}
  .image_block_maison_3:nth-child(4) {grid-area: 7/16/12/21;}
  .data_container_maison_3 {grid-area: 1/11/2/21;}
  .color_block_maison_3 {grid-area: 2/1/11/11;}
/* EXTERIEUR 1024PX */ 
  .contentpage_block_exterieur_grid {--gridgap: 5px;}
  .contentpage_block_exterieur_grid_1 {grid-template-rows: repeat(12, var(--gridsquarecalc));}
  .contentpage_block_exterieur_grid_2 {}
  .contentpage_block_exterieur_grid_3 {}
  .image_block_exterieur_1:nth-child(1) {grid-area: 1/1/8/11;}
  .image_block_exterieur_1:nth-child(2) {grid-area: 8/1/12/6;}
  .image_block_exterieur_1:nth-child(3) {grid-area: 8/6/12/11;}
  .color_block_exterieur {border-radius: 6px}
  .color_block_exterieur_1 {align-self: end; transform: translateY(0); grid-area: 1/10/11/21; min-width: 356px; min-height: unset}
  .color_block_exterieur_2 {min-height: unset}
  .color_block_exterieur_3 {}
  .color_block_exterieur h2 {font-size: 35px; padding: 30px 25px 0 25px;}
  .color_block_exterieur p {padding: 40px 25px 40px 25px}
  .color_block_exterieur_dontsmoke p {padding: 25px;}
  .nf_container {font-size: 15px; height: 25px;}
  .data_container_exterieur_1 {grid-area: 11/10/13/21; align-self: start;}
  .data_container_exterieur_2 {}
  .data_container_exterieur_3 {}
/* RESERVATION 1024PX */ 
  .tarifs_info_container {width: 80%; max-width: unset;}
/* INFOS PRATIQUES 1024PX */ 
  .infospratiques_services_container {}
  .infospratiques_services_item {}

}

@media (max-width: 810px) {
  body {font-size: 16px}
/* HEADER 550PX */ 
  .header {position: static; }
/* INDEX 810PX */ 
  .card_group {gap: 10px 15px;}
  .card {height: 60px; min-width: 140px; gap: 4px 10px; font-size: 16px}
  .card_bis {font-size: 21px;}
  .card_style_font {font-size: 30px;}
  .contentpage_container_index {padding: 0 0 160px 0;}
  .contentpage_block {padding-top: 100px}
  .contentpage_block_1, .contentpage_block_2, .contentpage_block_3 {display: flex; flex-direction: column; height: auto; margin-top: 0px;}
  .contentpage_block_4 {padding-top: 130px}
  .color_block {position: relative; width: auto; border-radius: 6px; margin-inline: 0}
  .color_block p { padding: 60px 35px;}
  .color_block_button {height: 60px; width: 160px; font-size: 18px; margin: 0 auto 40px auto;}
  .color_block_1, .color_block_2, .color_block_3 {min-height: unset}
  .image_block_container {width: 70%; margin-inline: auto; flex-direction: column; height: auto;}
  .image_block_1 {aspect-ratio: 3/2;}
  .image_block_1:nth-child(1) img, .image_block_1:nth-child(2) img {height: unset;}
  .image_block_1:nth-child(1) {height: auto; width: 75%; transform: translateY(25px);}
  .image_block_1:nth-child(2) {height: auto; width: 95%;}
  .contentpage_block_2 {flex-direction: column-reverse; row-gap: 10px;}
  .image_block_container_2 {padding-top: 5.5%; padding-left: 2%; width: 90%; margin-top: 0}
  .color_block_4 {width: 70%; left: 0; margin-inline: auto; height: 210px;}
  .color_block_4 span {margin-top: 20px; font-size: 34px;}
  .color_block_line {margin-top: 25px; height: 2px;}
  .review_container {max-width: 100%; margin-top: -100px;}
  .review_card p {}
  .review_card_logo {height: 26px;}
  .review_card_name {font-size: 15px;}
  .review_hider {display: none;}
/* CONTENTPAGE 810PX */ 
  .contentpage_block_presentation {padding-top: 70px; width: 90%; padding-bottom: 30px}
  .contentpage_block_presentation_trace {height: 140px}
  .contentpage_block_presentation h1 {font-size: 38px; margin: 30px 0;}
/* CHAMBRES 810PX */ 
  .contentpage_block_chambres_grid {grid-template-rows: repeat(120, 18px);}
  .chambre {font-size: 15.5px;}
  .chambre p {padding: 16px;}
  .chambre ul {padding: 16px;}
  .chambre_1 {grid-area: 5/1/17/24; max-width: 432px;}
  .chambre_1 ul {flex: 1.25; margin-top: 4%; margin-left: 3%;}
  .chambre_1 .image_block_chambres_1 {width: 52%; transform: translate(6%, 94%);}
  .chambre_1 .image_block_chambres_2 {width: 54%; transform: translate(94%, 74%);}
  .chambre_2 {max-width: 424px;}
  .chambre_2 ul {margin-left: 54%; margin-top: -5%}
  .chambre_2 .image_block_chambres_1 {transform: translate(71%, 116%);}
  .chambre_2 .image_block_chambres_2 {transform: translate(-16%, 54%);}
  .chambre_3 {grid-area: 50/1/67/23; max-width: 396px;}
  .chambre_3 ul {margin-bottom: 36%; margin-left: 10%;}
  .chambre_3 .image_block_chambres_1 {width: 55%; transform: translate(6%, 102%);}
  .chambre_3 .image_block_chambres_2 {width: 60%; transform: translate(86%, 44%);}
  .chambre_4 {max-width: 432px;}
  .chambre_4 ul {flex: 3; margin-top: -4%; margin-left: 60%;}
  .chambre_4 .image_block_chambres_1 {aspect-ratio: 5/4; width: 50%; transform: translate(6%, 59%);}
  .chambre_4 .image_block_chambres_2 {width: 53%; transform: translate(77%, 110%);}
  .chambre_5 {max-width: 360px;}
  .chambre_5 ul {flex: 3; margin-left: 10%; margin-top: -6%; margin-right: 45%;}
  .chambre_5 .image_block_chambres_1 {transform: translate(6%, 93%);}
  .chambre_5 .image_block_chambres_2 {transform: translate(85%, 44%);}
  .floor {font-size: min(6vw, 35px); margin-top: 0}
/* DATA BLOCKS 810PX */
  .data_block_exterieur_max h3, .data_block_maison h3 {font-size: 28px}
  .data_block_exterieur_min h3 {font-size: 22px}
  .data_block_exterieur span, .data_block_maison span {}
/* MAISON 810PX */ 
  .contentpage_block_maison_grid_1 {grid-template-rows: repeat(26, var(--gridsquarecalc));}
  .contentpage_block_maison_grid_2 {grid-template-rows: repeat(24, var(--gridsquarecalc));}
  .contentpage_block_maison_grid_3 {grid-template-rows: repeat(17, var(--gridsquarecalc)); padding-top: 150px}
  .image_block_maison_1:nth-child(1) {grid-area: 11/3/21/19; transform: translateY(-10px);}
  .image_block_maison_1:nth-child(2) {grid-area: 21/3/27/12; transform: translateY(-10px);}
  .image_block_maison_1:nth-child(3) {grid-area: 21/12/27/19; transform: translateY(-10px);}
  .image_block_maison_2:nth-child(2) {grid-area: 20/3/25/11;}
  .image_block_maison_2:nth-child(1) {grid-area: 10/3/20/19;}
  .image_block_maison_2:nth-child(3) {grid-area: 20/11/25/19;}
  .image_block_maison_3:nth-child(1) {grid-area: 3/12/8/21;}
  .image_block_maison_3:nth-child(2) {grid-area: 8/12/13/21;}
  .image_block_maison_3:nth-child(3) {grid-area: 13/12/18/21;}
  .image_block_maison_3:nth-child(4) {display: none}
  .color_block_maison {border-radius: 6px}
  .color_block_maison_1 { grid-area: 1/1/11/21; align-self: end;}
  .color_block_maison_2 {grid-area: 1/1/11/21; align-self: end;}
  .color_block_maison_3 {grid-area: 1/1/18/13; align-self: center;}
  .color_block_maison h2 {font-size: 30px}
  .color_block_maison p {padding: 0px 20px 20px 20px;}
  .color_list_maison {padding: 0 20px;}
  .color_list_maison li {padding: 4px 0;}
  .color_list_maison li img {height: 18px; padding-right: 14px;}
  .data_container_maison_3 {grid-area: 2/13/2/21; padding-bottom: 5px}
  .color_patch_maison_container {width: 60px}
/* EXTERIEUR 810PX */ 
  .contentpage_block_exterieur_grid {}
  .contentpage_block_exterieur_grid_1 {grid-template-rows: repeat(27, var(--gridsquarecalc));}
  .contentpage_block_exterieur_grid_2 {grid-template-rows: repeat(16, var(--gridsquarecalc));}
  .contentpage_block_exterieur_grid_3 {grid-template-rows: repeat(15, var(--gridsquarecalc));}
  .image_block_exterieur_1:nth-child(1) {grid-area: 10/3/20/19;}
  .image_block_exterieur_1:nth-child(2) {grid-area: 20/3/25/11;}
  .image_block_exterieur_1:nth-child(3) {grid-area: 20/11/25/19;}
  .image_block_exterieur_2:nth-child(1) {grid-area: 8/1/15/11;}
  .image_block_exterieur_2:nth-child(2) {grid-area: 8/11/15/21;}
  .image_block_exterieur_3:nth-child(1) {grid-area: 1/12/6/21;}
  .image_block_exterieur_3:nth-child(2) {grid-area: 6/12/11/21;}
  .image_block_exterieur_3:nth-child(3) {grid-area: 11/12/16/21;}
  .color_block_exterieur {border-radius: 6px}
  .color_block_exterieur_1 {grid-area: 1/1/11/21; transform: unset; align-self: end; min-height: unset; min-width: unset}
  .color_block_exterieur_2 {grid-area: 1/2/9/20; align-self: end;}
  .color_block_exterieur_3 {grid-area: 2/1/15/13; align-self: center; min-height: 300px}
  .color_block_exterieur h2 {font-size: 30px}
  .color_block_exterieur p {padding: 40px 20px 40px 20px;}
  .color_block_exterieur_dontsmoke {width: 70%; font-size: 15px}
  .color_block_exterieur_dontsmoke img {width: 55px; padding: 20px 0 20px 20px;}
  .color_block_exterieur_dontsmoke p {padding: 20px;}
  .nf_container {font-size: 14px; height: 24px; gap: 8px}
  .data_container_exterieur_1 {grid-area: 25/3/28/19; align-self: start; padding-top: 10px; row-gap: unset}
  .data_container_exterieur_2 {grid-area: 15/1/17/21; flex-direction: row; align-self: start; padding-top: 10px; row-gap: unset; justify-content: space-around}
  .data_container_exterieur_3 {grid-area: 15/3/18/19; flex-direction: row; align-self: start; padding-top: 10px; row-gap: unset}
  .data_container_exterieur_2 .data_block_exterieur {flex: 1}
/* RESERVATION 810PX */ 
  .tarifs_info_container {flex-wrap: wrap; gap: 20px; width: 90%; max-width: 580px}
  .tarifs_info {padding: 0;}
  .tarifs_container {padding: 30px; gap: 8%}
  .tarifs_separator {display: none;}
  .tarifs_hs, .tarifs_bs, .tarifs_ms {}
  .tarifs_hs .tarifs_price, .tarifs_bs .tarifs_price, .tarifs_ms .tarifs_price {margin-top: 30px; padding: 15px 15px;}
  .tarifs_taxedesejour, .tarifs_taxedesejour {margin-top: 0px}
  .tarifs_hs div, .tarifs_bs div, .tarifs_ms div {}
  .color_block_contact {}
/* INFOS PRATIQUES 810PX */ 
  .infospratiques_map_container {flex-direction: column;}
  .infospratiques_map_container iframe {width: 100%; height: 400px}
  .infospratiques_access_container {width: 100%; padding: 10px 0}
  .infospratiques_access_item {min-width: max(34%, 208px);}
  .infospratiques_equipements_container, .infospratiques_access_container, .infospratiques_services_container, .infospratiques_activities_container {gap: 5px}
/* FOOTER 810PX */ 
  .footer {}
  .footer_contact, .footer_rating {}
  .footer_contact > a, .footer_rating > a {font-size: 30px}
  .rating_container {}
  .starbox {padding: 0 5px; height: 22px; width: 22px; stroke-width: 2.5;}
  .footer_mentionslegales {}
  .color_block_contact {}
}

@media (max-width: 550px) {
  body {font-size: 14px}
/* HEADER 550PX */ 
  .header {padding: 15px 25px; width: auto;}
  .header_menu_container {align-items: center; gap: 2px 30px}
  .header_title {font-size: 35px; height: 42px;}
  .header_menu_element {font-size: 16px}
  .header_menu_element:hover, #header_menu_selected {text-decoration: solid underline 1px; text-underline-offset: 3px}
/* CONTENTPAGE 550PX */ 
  .contentpage_container {padding-bottom: 70px}
  .contentpage_block {padding-top: 70px}
  .contentpage_block_presentation {width: 100%; padding-top: 50px}
  .contentpage_block_presentation_trace {height: 100px; transform: translate(16px, 9px);}
  .contentpage_block_presentation h1 {font-size: 32px; margin: 30px 0;}
  .contentpage_block_presentation p {}
/* INDEX 550PX */ 
  .index_img {margin-top: 0; width: 100%; left: 50%; transform: translateX(-50%); aspect-ratio: 3/2; display: flex; justify-content: center}
  .index_img img {height: 100%; width: unset}
  .card_container {padding: 0 10px;}
  .card_group {gap: 8px 10px;}
  .card {height: 50px; min-width: 120px; font-size: 15px}
  .card_bis {font-size: 17px}
  .card_style_font {font-size: 24px}
  .color_block p {padding: 40px 20px;}
  .color_block_button {height: 55px; width: 155px; font-size: 16px; margin: 0 auto 25px auto;}
  .color_block_4 {max-width: unset; width: 80%}
  .color_block_4 span {font-size: 28px}
  .review_band {padding-inline: calc(50% - min(32.5vw, 400px) - 20px - 10px); padding-top: 20px; padding-bottom: 20px}
  .review_card {padding: 20px; margin: 0 10px; width: 65vw}
  .review_card p {}
  .review_card_logo {height: 23px}
  .review_card_stars_container {height: 15px}
  .review_card_name {font-size: 14px}
/* CHAMBRES 550PX */ 
  .contentpage_block_chambres_grid {grid-template-rows: repeat(120, min(16px, calc((var(--bodyW) - var(--cp-padding-sum)) / var(--gridnbcolumns))));}
  .chambre {font-size: min(3vw, 13.4px);} /* 13.824px */
  .chambre p, .chambre ul {padding: 4%;}
  .chambre_1 {max-width: 384px;}
  .chambre_2 {max-width: 368px;}
  .chambre_2 ul {margin-top: -6%}
  .chambre_3 {max-width: 352px;}
  .chambre_4 {max-width: 384px;}
  .chambre_5 {max-width: 320px;}
  .chambre_5 ul {margin-right: 47%}
  .floor {font-size: min(6vw, 26px);}
/* DATA BLOCKS 550PX */
  .data_block_exterieur_max h3, .data_block_maison h3 {font-size: 22px}
  .data_block_exterieur_min h3 {font-size: 18px}
  .data_block_exterieur span, .data_block_maison span {font-size: 12px}
/* MAISON 550PX */
  .contentpage_block_maison_grid_3 {grid-template-rows: repeat(30, var(--gridsquarecalc));}
  .color_block_maison_3 {grid-area: 1/1/19/21; align-self: end}
  .image_block_maison_3:nth-child(1) {grid-area: 18/2/25/11}
  .image_block_maison_3:nth-child(2) {grid-area: 18/11/25/20}
  .image_block_maison_3:nth-child(3) {grid-area: 25/4/31/13;}
  .color_list_maison li {padding: 2px 0;}
  .color_list_maison li img {height: 15px; padding-right: 12px;}
  .data_container_maison_3 {grid-area: 25/13/31/20; flex-direction: column; align-self: unset;}
  .color_patch_maison_container {width: 55px}
  .color_block_maison p {padding: 0px 20px 20px 20px;}
/* EXTERIEUR 550PX */  
  .color_block_exterieur h2 {font-size: 28px}
  .color_block_exterieur p {padding: 30px 20px 30px 20px}
  .nf_container {font-size: 12px; height: 20px; gap: 6px}
  .color_block_exterieur_dontsmoke {font-size: 13px; flex-direction: column; align-items: center;}
  .color_block_exterieur_dontsmoke img {width: 50px; padding: 15px 15px 0 15px}
  .color_block_exterieur_dontsmoke p {padding: 15px}
/* RESERVATION 550PX */ 
  .tarifs_info_container {width: 100%; gap: 10px; max-width: 425px}
  .tarifs_info {padding: 0}
  .tarifs_info img {width: 27px; padding: 5px}
  .tarifs_info_title {height: 45px}
  .tarifs_container {gap: 25px; padding: 30px 0}
  .tarifs_separator {display: none}
  .tarifs_hs .tarifs_price, .tarifs_bs .tarifs_price, .tarifs_ms .tarifs_price {max-width: 183px; width: 100%; box-sizing: border-box; padding: 10px}
  .tarifs_taxedesejour, .tarifs_taxedesejour {}
  .tarifs_data {padding: 10px 20px}
/* INFOS PRATIQUES 550PX */ 
  .infospratiques_services_container {}
  .infospratiques_equipements_item {min-width: max(calc(43% - 5px), 122px); flex: 0}
  .infospratiques_services_item, .infospratiques_activities_item {min-width: max(calc(43% - 5px), 122px); flex: 0}
/* FOOTER 550PX */ 
  .footer {flex-direction: column; row-gap: 24px; padding-top: 18px; padding-bottom: 10px; font-size: 0.8em}
  .footer_contact, .footer_rating {row-gap: 9px; padding: 0px 5px;}
  .footer_contact > a, .footer_rating > a {font-size: 25px; line-height: 1.1em}
  .rating_container {}
  .starbox {padding: 0 4px; height: 16px; width: 16px; fill: #ED8A19;}
  .footer_mentionslegales {font-size: 0.7em}
  .color_block_contact {width: 100%; padding: 30px 10px}
}