/* ------JeLoueMonSiteWeb.Com------ */
/* --------2020------- */
/* ---------v5-------- */
/* ------PreTheme----- */
/* ------CRYSTAL------ */

/* ----- Commun ------ */

/*
Couleur 1 : #89b422;
Couleur 2 : #F05926;

Typo 1 : Alata;
Typo 2: "Montserrat";

*/

/* --------Font------- */

/* alata-regular - latin */
@font-face {
  font-family: "Alata";
  font-style: normal;
  font-weight: 400;
  src: url("./typ/alata/alata.eot"); /* IE9 Compat Modes */
  src: local("Alata Regular"), local("Alata-Regular"),
    url("./typ/alata/alata.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("./typ/alata/alata.woff2") format("woff2"),
    /* Super Modern Browsers */ url("./typ/alata/alata.woff") format("woff"),
    /* Modern Browsers */ url("./typ/alata/alata.ttf") format("truetype"),
    /* Safari, Android, iOS */ url("./typ/alata/alata.svg#Alata") format("svg"); /* Legacy iOS */
}

/* latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("./typ/montserrat/montserrat.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Light"), local("Montserrat-Light"),
    url("./typ/montserrat/montserrat.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("./typ/montserrat/montserrat.woff2") format("woff2"),
    /* Super Modern Browsers */ url("./typ/montserrat/montserrat.woff")
      format("woff"),
    /* Modern Browsers */ url("./typ/montserrat/montserrat.ttf")
      format("truetype"),
    /* Safari, Android, iOS */ url("./typ/montserrat/montserrat.svg#montserrat")
      format("svg"); /* Legacy iOS */
}

/* ------General------ */

body {
  background: #eee;
  font-family: "Montserrat";
  margin: 0;
  padding: 0;
}

a {
  color: #89b422;
}

p {
  color: #555;
  font-family: "Montserrat";
  font-size: 15px;
  margin: 20px 0;
}

.cta_clair {
  background: #89b422;
  border-radius: 5px;
  border: 0 none;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font-family: Alata;
  font-size: 14px;
  padding: 7px 15px;
  text-decoration: none;
}

.cta_blc {
  background: #fff;
  border-radius: 5px;
  border: 0 none;
  color: #89b422;
  cursor: pointer;
  display: inline-block;
  font-family: Alata;
  font-size: 14px;
  padding: 7px 15px;
  text-decoration: none;
}

.cta_fonce,
button {
  background: #89b422;
  color: #fff;
  cursor: pointer;
  border: #89b422;
  border-radius: 5px;
  display: inline-block;
  font-family: Alata;
  font-size: 14px;
  padding: 7px 15px;
  text-decoration: none;
}

.pointer {
  cursor: pointer;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #89b422;
  font-weight: 800;
  margin: 10px 0;
}

h1 {
  font-size: 45px;
}

h2 {
  font-size: 35px;
}

h3 {
  font-size: 25px;
}

input[type="text"],
input[type="email"] {
  border-radius: 5px;
  border: 1px solid #ccc;
  color: #444;
  font-size: 20px;
  outline: none;
  padding: 5px;
  width: calc(100% - 12px);
}

input[type="text"]:hover,
input[type="text"]:active,
input[type="text"]:focus,
input[type="email"]:hover,
input[type="email"]:active,
input[type="email"]:focus {
  border: 1px solid #89b422;
}

textarea {
  border-radius: 5px;
  border: 1px solid #ccc;
  color: #444;
  font-size: 20px;
  min-height: 193px;
  outline: none;
  padding: 5px;
  width: calc(100% - 12px);
}

textarea:hover {
  border: 1px solid #89b422;
}

input::placeholder,
textarea::placeholder {
  color: #ddd;
}

input[type="submit"] {
}

input[type="submit"]:hover {
}

input.error,
textarea.error {
  border-color: #c00;
  box-shadow: 0 0 5px #c004;
}

label {
  color: #555;
  display: block;
  font-size: 12px;
  font-weight: bold;
  margin: 20px 0 5px;
  text-transform: uppercase;
}

form button {
  margin-top: 30px;
}

input.about {
  display: none;
}

hr {
  border-bottom: 1px solid #f9f9f9;
  border-left: none;
  border-right: none;
  border-top: 1px solid #ddd;
  margin: 30px 0;
}

.message_confirmation {
  background: #090;
  border-radius: 5px;
  display: none;
  margin: 20px auto;
  overflow: hidden;
  padding: 10px;
  text-align: center;
  width: 300px;
}

.message_erreur {
  background: #900;
  border-radius: 5px;
  display: none;
  margin: 20px auto;
  overflow: hidden;
  padding: 10px;
  text-align: center;
  width: 300px;
}

.chiffre {
  font-family: "Alata";
  font-size: 40px;
}

.center {
  text-align: center;
}

.justif {
  text-align: justify;
}

.right {
  text-align: right;
}

img {
  object-fit: cover;
}

.img10 {
  margin: auto 1%;
  vertical-align: middle;
  width: 8%;
}

.img20 {
  margin: auto;
  width: 20%;
}

.img25 {
  margin: auto;
  width: 25%;
}

.img33 {
  margin: auto;
  width: 33%;
}

.img50 {
  margin: auto;
  width: 50%;
}

.img66 {
  margin: auto;
  width: 66%;
}

.img75 {
  margin: auto;
  width: 75%;
}

.img100 {
  margin: auto;
  width: 100%;
}

.imgh200 {
  height: 200px;
  object-fit: cover;
}

.nb {
  filter: saturate(0);
}

.opa5 {
  opacity: 0.5;
}

.zoom1 {
  transform: scale(1.1);
}

.zoom2 {
  transform: scale(1.2);
}

section {
  margin: auto;
  overflow: hidden;
}

main {
  padding-bottom: 100px;
}

.line:not(.fee) {
  display: inline-block;
  overflow: auto;
  transition: ease 0.5s;
  width: 100%;
}

.line.show_anim {
  opacity: 0;
  transform: translateY(50px);
}

.block_blc {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 15px #ccc;
  overflow: hidden;
  position: relative;
}

.block_blc p:first-child {
  margin-top: 0;
}

.block_blc p:last-child {
  margin-bottom: 0;
}

.block_blc .line_message {
  font-size: 18px;
  left: 0;
  padding: 10px 30px;
  position: absolute;
  right: 0;
  top: 0;
}

.block_blc .light {
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.bg_rouge {
  background: #f33;
  color: #fff;
}

.bg_vert {
  background: #89b422;
  color: #fff;
}

.bandeau,
.bandeau * {
  color: #eee;
}

.border_dashed {
  border: 1px dashed #ccc;
  padding: 0 20px;
}

.cadre1 {
  margin: auto;
  max-width: 1600px;
  overflow: hidden;
  width: 90%;
}

.cadre2 {
  margin: auto;
  max-width: 1200px;
  overflow: hidden;
  width: 90%;
}

.cadre3 {
  margin: auto;
  max-width: 900px;
  overflow: hidden;
  width: 90%;
}

.cadre4 {
  margin: auto;
  max-width: 500px;
  overflow: hidden;
  width: 90%;
}

main .cadre1,
main .cadre2,
main .cadre3,
main .cadre4 {
  padding: 15px;
}

.transi1 {
  transition: all cubic-bezier(0.3, 0.1, 0.33, 1) 0.5s;
}

.transi2 {
  transition: all cubic-bezier(0, 0.5, 0.5, 1) 1s;
}

.transip,
.transip * {
  transition: all cubic-bezier(0.3, 0.1, 0.33, 1) 0.5s;
}

.gradient1 {
  background: rgb(51, 51, 51);
}

/* --------Col-------- */

.a20,
.a25,
.a33,
.a50,
.a66,
.a75,
.a100 {
  float: left;
  margin: 0;
  padding: 0;
  position: relative;
}

.a20 {
  width: 20%;
}

.a25 {
  width: 25%;
}

.a33 {
  width: 33.33%;
}

.a50 {
  width: 50%;
}

.a66 {
  width: 66.66%;
}

.a75 {
  width: 75%;
}

.a100 {
  width: 100%;
}

.b20,
.b25,
.b33,
.b50,
.b66,
.b75,
.b100 {
  float: left;
  margin: 1%;
  padding: 1%;
  position: relative;
}

.b20 {
  width: calc(20% - 4%);
}

.b25 {
  width: calc(25% - 4%);
}

.b33 {
  width: calc(33.33% - 4%);
}

.b50 {
  width: calc(50% - 4%);
}

.b66 {
  width: calc(66.66% - 4%);
}

.b75 {
  width: calc(75% - 4%);
}

.b100 {
  width: calc(100% - 4%);
}

.c20,
.c25,
.c33,
.c50,
.c66,
.c75,
.c100 {
  float: left;
  margin: 1.5%;
  padding: 2%;
  position: relative;
}

.c20 {
  width: calc(20% - 7%);
}

.c25 {
  width: calc(25% - 7%);
}

.c33 {
  width: calc(33.33% - 7%);
}

.c50 {
  width: calc(50% - 7%);
}

.c66 {
  width: calc(66.66% - 7%);
}

.c75 {
  width: calc(75% - 7%);
}

.c100 {
  width: calc(100% - 7%);
}

.d20,
.d25,
.d33,
.d50,
.d66,
.d75,
.d100 {
  float: left;
  margin: 2%;
  padding: 3%;
  position: relative;
}

.d20 {
  width: calc(20% - 10%);
}

.d25 {
  width: calc(25% - 10%);
}

.d33 {
  width: calc(33.33% - 10%);
}

.d50 {
  width: calc(50% - 10%);
}

.d66 {
  width: calc(66.66% - 10%);
}

.d75 {
  width: calc(75% - 10%);
}

.d100 {
  width: calc(100% - 10%);
}

.e20,
.e25,
.e33,
.e50,
.e66,
.e75,
.e100 {
  float: left;
  margin: 0;
  padding: 0;
  position: relative;
}

.e20 {
  width: 20%;
}

.e25 {
  width: 25%;
}

.e33 {
  width: 33.33%;
}

.e50 {
  width: 50%;
}

.e66 {
  width: 66.66%;
}

.e75 {
  width: 75%;
}

.e100 {
  width: 100%;
}

.f20,
.f25,
.f33,
.f50,
.f66,
.f75,
.f100 {
  float: left;
  margin: 1.5%;
  padding: 2%;
  position: relative;
}

.f20 {
  width: calc(20% - 7%);
}

.f25 {
  width: calc(25% - 7%);
}

.f33 {
  width: calc(33.33% - 7%);
}

.f50 {
  width: calc(50% - 7%);
}

.f66 {
  width: calc(66.66% - 7%);
}

.f75 {
  width: calc(75% - 7%);
}

.f100 {
  width: calc(100% - 7%);
}

.b_marge {
  margin: 20px;
}

/* FOR TEST 

.c25, .c33, .c50, .c66, .c75, .c100 {
	background: #FFF;
	height: 50px;
}


/* ---------- Cookie ---------- */

section.cookies {
  background: #333;
  color: #ccc;
  overflow: hidden;
  transition: height ease 0.4s;
}

section.cookies .f75 {
  padding-top: 0;
}

section.cookies .f25,
section.cookies .f75 {
  margin-bottom: 0;
  margin-top: 0;
  padding-bottom: 0;
}

section.cookies .img50 {
  margin: 10px auto;
  width: 40%;
}

section.cookies b {
  font-size: 11px;
}

section.cookies p {
  color: #999;
  font-size: 9px;
  margin: 10px 0;
}

section.cookies button {
  margin-top: 22px;
}

/* ---------- Header ---------- */

header {
}

header section {
  width: 100%;
}

header li {
}

.ctn_droite {
  position: absolute;
  right: 9%;
  top: 25px;
}

/* --------Nav-------- */

header .navigation {
  position: absolute;
  z-index: 100;
}

header .navigation .ctn_logo {
  padding: 7px;
  position: absolute;
  width: 90px;
}

header .navigation ul {
  margin: 0;
  padding: 0;
  text-align: center;
}

header .navigation .horizontal li {
  display: inline-block;
  list-style: none;
}

header .navigation .horizontal a {
  color: #eee;
  display: block;
  font-size: 14px;
  font-weight: 300;
  padding: 25px 40px;
  text-decoration: none;
  text-transform: uppercase;
}

.btn_droite {
  background: #eee;
  bottom: 0;
  color: #eee;
  font-weight: bold;
  padding: 25px 40px;
  position: absolute;
  right: 0;
  text-decoration: none;
  text-transform: uppercase;
  top: 0;
}

/* Nav scroll */

header .navigation.scrolled {
  background: rgb(51, 51, 51);

  height: 50px;
  position: fixed;
  top: 0;
  z-index: 100;
}

header .navigation.scrolled .ctn_logo {
  height: 48px;
  padding: 2px;
}

header .navigation.scrolled .ctn_logo .logo {
  height: 100%;
  width: auto;
}

header .navigation.scrolled a {
  padding: 15px 40px;
}

header .navigation.scrolled .ctn_droite {
  height: 100%;
  right: 0;
  top: 0;
}

header .navigation.scrolled .ctn_droite a {
  background: #89b422;
  border-radius: 0;
  color: #eee;
  height: 100%;
}

/* INDEX */

.ctt_home {
  position: absolute;
  height: 100%;
  top: 0;
  width: 100%;
}

.liste_btn ul {
  margin: 0;
  padding: 0;
  text-align: center;
}

.liste_btn li {
  list-style: none;
}

.liste_btn a {
  background: #eee;
  border-radius: 6px;
  color: #333;
  display: inline-block;
  font-size: 16px;
  margin: 10px 0;
  padding: 5px;
  text-align: center;
  text-decoration: none;
  width: 140px;
}

.bandeau_gris_home {
  overflow: initial;
  padding: 12px;
  position: relative;
}

.bandeau_gris_home::before {
  background: #333;
  content: "";
  height: 50px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.bandeau_gris_home a {
  display: inline-block;
  margin: 8px 20px;
  text-decoration: none;
}

.bandeau_gris_home a img {
  height: 25px;
  margin-right: 20px;
  vertical-align: middle;
}

.bandeau_vert {
  background: url("./images/mot.svg") no-repeat 80% center / auto 180% #89b422;
  padding: 50px 0;
}

.bandeau_vert p,
.bandeau_vert h3 {
  color: #eee;
}

/* Animation */

@keyframes nom {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(90deg);
  }
}

/* ----- Slider ----- */

.slider {
  overflow: hidden;
  position: relative;
}

.slider .btn_prev {
  background: url("./images/precedent.svg") no-repeat center center / 30px;
  left: 0;
}

.slider .btn_suiv {
  background: url("./images/suivant.svg") no-repeat center center / 30px;
  right: 0;
}

.slider .btn {
  cursor: pointer;
  height: 100%;
  opacity: 0.4;
  position: absolute;
  top: 0;
  width: 10%;
  z-index: 2;
}

.slider:hover .btn {
  opacity: 0.55;
}

.slider .item-slide {
  left: 10%;
  position: absolute;
  right: 10%;
  width: 80%;
  z-index: 1;
}

.slider .item-slide.droite {
  opacity: 0;
  transform: translateX(50%);
}

.slider .item-slide.gauche {
  opacity: 0;
  transform: translateX(-25%);
}

section.home_slider {
  background: url("./images/CF027451.jpg") no-repeat center 75% / cover !important;
  height: 60vh;
  position: relative;
}

.home_slider .gradient {
  background: linear-gradient(
    0deg,
    rgba(137, 180, 30, 0) 0%,
    rgba(50, 60, 10, 1) 100%
  ) !important;
  height: 60%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 8;
}

.ctn_cta_map a {
  display: inline-block;
  margin: 20px 0 0;
  padding-left: 0;
  padding-right: 0;
  text-align: center;
  width: 100%;
}

/* ----- Page vierge ----- */

.ctn_titre h1 {
  color: #eee;
  position: relative;
  text-shadow: 0 0 1px #333;
  z-index: 8;
}

.ctn_titre h2 {
  color: #ddd;
}

.ctn_titre {
  background: #333;
  padding-top: 100px;
  text-align: center;
  padding-bottom: 40px;
}

.ctn_titre li {
  display: initial;
}

.ctn_titre ol {
  color: #eee;
  font-size: 12px;
  margin: 0;
  padding: 0;
}

.ctn_titre a {
  color: #ddd;
  text-decoration: none;
}

.main_ctn {
  box-shadow: 0 -15px 20px #89b42299;
}

/**
 * ORDER 
 */

.descriptionOffer h1 {
  line-height: 80px;

  font-family: "Alata";
}

.descriptionOffer h1,
.descriptionOffer h2,
.descriptionOffer h3 {
  color: #89b422;
  margin: 60px 0 40px;
}

.descriptionContent {
  font-family: "Montserrat";
  font-weight: 400;
  line-height: 28px;
}

.scrollerImages {
  display: flex;
  overflow-x: scroll;
  position: relative;
}

.scrollerImages img {
  height: 60vh;
  width: 100vw;
}

.scrollerImages::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.scrollerImages {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

.arrowNext {
  background: linear-gradient(90deg, transparent 50%, #0009);
  inset: 0;
  margin: auto;
  position: absolute;
  opacity: 1;
  transition: opacity ease 0.8s;
  pointer-events: none;
  z-index: 1;
}

@keyframes nextPix {
  0% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(10px);
  }
  40% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(0px);
  }
}

.arrowNext img {
  animation: nextPix 3s ease infinite;
  bottom: 0;
  position: absolute;
  height: 15px;
  right: 15px;
  top: 0;
  width: 50px;
  margin: auto;
  object-fit: contain;
}

.descriptionOffer h2,
.descriptionOffer h3 {
  font-family: "Alata";
}

.imagesContainer {
  margin: -20px 0px 34px;
  position: relative;
}

.imagesContainer::before {
  content: "";
  display: block;
  position: absolute;
  height: 300px;
  pointer-events: none;
  background: linear-gradient(0, #fff0, #0009);
  width: 100%;
  transition: ease 0.5s;
  z-index: 1;
}

.mt-8 {
  margin-top: -80px;
}

.titlePage h1 {
  color: #fff;
  text-shadow: 0 0 50px #000, 0 0 70px #000;
  z-index: 3;
}

/* Logement */

.collapse {
  pointer-events: none;
  opacity: 0.5;
  transition: all ease 0.5s;
}

.collapse.active {
  pointer-events: initial;
  opacity: 1;
}

.resume table {
  margin: 24px 0;
  width: 100%;
}

.resume table td {
  padding: 12px;
  min-width: 100px;
}

.resume table tr:not(tr:last-child) td {
  border-bottom: 1px dashed #ccc;
}

.resume table tr.line {
  display: table-row;
}

.resume table .option {
  cursor: pointer;
}

.resume table .totalOrder {
  font-weight: bold;
  font-size: 18px;
}

.resume span.infos {
  color: #777;
  font-size: 12px;
  font-style: italic;
}

.option span.infos,
.fee span.infos {
  padding-left: 5px;
  display: inline-block;
}

.option .checkbox {
  height: 20px;
  display: inline-block;
  width: 22px;
  vertical-align: middle;
  margin-right: 10px;
  margin-top: 2px;
  float: left;
}

.option .optionContent {
  float: left;
}

.option .checkbox svg {
  object-fit: contain;
}

.checkbox .frameC {
  transition: ease 0.5s;
  stroke: #ccc;
  stroke-width: 50;
}

.checkbox.checked .frameC {
  stroke: #86ab03da;
  stroke-width: 60;
}

.checkbox .tik {
  opacity: 0;
  transition: ease 0.5s;
  stroke-dasharray: 0px, 1px;
}

.checkbox.checked .tik {
  opacity: 1;
  stroke-dasharray: 1px, 1px;
}

.orderBlock,
.blockV2 {
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 0 30px #cccc;
  overflow: hidden;
  width: calc(100% - 16px);
}

.orderBlock.fixed {
  position: fixed;
  top: 210px;
  margin-top: 0;
}

.orderBlock .datepicker__month-name,
.orderBlock .datepicker__month-button,
.orderBlock .datepicker__week-name {
  color: #000;
}

.block .titleBlock {
  font-size: 28px;
  font-family: "Alata";
  margin: 20px 0 !important;
  text-align: center;
}

.orderBlock .titleBlock.bigTitle {
  background: #89b422;
  margin: 0 !important;
  padding: 6px 0 22px !important;
  color: #000;
  font-size: 32px;
}

.offerImg {
  float: left;
  height: 150px;
  margin: 20px;
}

.btnBlock {
  border-radius: 0;
  padding-bottom: 10px;
  width: calc(100% - 0px);
}

.orderBlock .datepicker__month-button--prev:after {
  background-image: url(images/left.svg);
}

.orderBlock .datepicker__month-button--next:after {
  background-image: url(images/right.svg);
}

.orderBlockBook {
  padding-bottom: 20px;
}

.orderBlockBook .checkbox {
  display: none;
}

.orderBlockBook .resumeTable {
  background: transparent;
  box-shadow: none;
  width: 100%;
}

.orderBlockBook .resumeTable td {
  border-bottom: 1px dashed #ccc;
  padding: 12px;
}

.orderBlockBook .resumeTable tr:last-child td {
  border-bottom: none;
  font-weight: bold;
}

.orderBlock .datepicker {
  border-radius: 0;
}

.groupHidden {
  display: none;
}

.quantity {
  display: flex;
  align-items: center;
  justify-content: center;
}

.quantity button {
  padding: 12px;
  border-radius: 5px 0 0 5px;
}

.quantity .plus {
  padding: 12px;
  border-radius: 0 5px 5px 0;
}

.quantity .value {
  padding: 0;
  width: 50px;
  font-size: 16px;
  text-align: center;
  height: 43px;
  border: 1px solid #89b422;
  border-radius: 0;
  font-family: "Montserrat";
}

.arguBlock {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  text-align: center;
  font-size: 18px;
}

.arguBlock img {
  height: 30%;
  object-fit: contain;
  opacity: 0.5;
  display: block;
}

.listEquipment {
  padding: 0;
}

.listEquipment li {
  font-size: 18px;
  padding: 8px 8px 8px 42px;
  list-style: none;
  background: url("/assets/images/ico_include.svg") no-repeat left center / auto
    50%;
}

.tableTotal tr td {
  padding: 16px;
  text-align: center;
  border-bottom: 1px dashed #ddd;
  font-family: "Montserrat";
}

.tableTotal th {
  font-family: "Montserrat";
  font-size: 18px;
  padding: 12px 0 8px;
}

.tableTotal tr td:first-child {
  text-align: left;
  font-family: "Alata";
}

.tableTotal tr:last-child td {
  border-bottom: none;
}

.p3 {
  padding: 30px;
}

.totalRecap p {
  font-size: 18px;
}

.tableTotal tr td:last-child {
  min-width: 100px;
}

#card-element {
  margin: 40px 0;
}

.waiting {
  opacity: 1;
  pointer-events: initial;
  transition: ease 0.5s;
}

.waiting.active {
  opacity: 0.5;
  pointer-events: none;
  filter: blur(2px);
}

.totalRecap td:first-child {
  columns: 1;
}

.mapContent img {
  margin: 100px auto;
  width: 100%;
}

/* ----- Avis ----- */

.review {
  text-align: center;
}

.review .note {
  font-family: "Alata";
  font-size: 12px;
}

.review .note .ch_note {
  color: #89b422;
  font-size: 30px;
}

.review b p {
  font-family: "Alata";
  font-size: 20px;
}

.review .author {
  font-size: 12px;
  font-style: italic;
  margin: 10px 0;
}

.review .text {
  font-size: 15px;
}

/* ---------- Notification ---------- */

.red {
  background-color: #e74c3c;
}

.green {
  background-color: #89b422;
}

.orange {
  background-color: #d35400;
}

.blue {
  background-color: #3498db;
}

.grey {
  background-color: #333333;
}

.ctn_notification {
  left: 0px;
  opacity: 0;
  padding: 20px 0;
  position: fixed;
  text-align: center;
  top: -100px;
  transition: all cubic-bezier(0.3, 0.1, 0.33, 1) 0.5s;
  width: 100%;
  z-index: 999;
}

.ctn_notification.checked {
  opacity: 1;
  top: 0px;
}

.ctt_message {
  color: #fff;
  text-align: center;
  white-space: nowrap;
}

.videoHero {
  position: absolute !important;
  z-index: -1;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
}
.videoHero video {
  width: 100%;
  position: absolute;
  height: 100%;
  object-fit: cover;
}

.containerTop {
  position: relative;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.blockLogement {
  padding: 0;
  width: 100%;
}

.blockLogement .detail {
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  padding: 50px 20px 20px;
  background: linear-gradient(transparent, #000);
  color: #fff;
  font-size: 22px;
}

.blockLogement .btn {
  margin-bottom: 0;
}

/** FROM v1 */

table td {
  padding: 10px;
}

.table_tarif {
  font-family: Times New Roman;
  margin-top: 40px;
  width: 100%;
}

.table_tarif th {
  font-weight: normal;
  font-style: italic;
  padding: 8px 0;
}

.table_tarif .nuit {
  font-weight: bold;
  font-style: normal;
}

.table_tarif tr:first-child {
  background: #cec;
}

.table_tarif .remise {
  text-transform: uppercase;
  font-size: 11px;
  display: block;
  margin-top: 6px;
  font-weight: bold;
  color: #393;
}

.table_tarif td:first-child {
  color: #999;
}

.table_date_stage {
  font-family: Times New Roman;
  text-align: center;
  width: 100%;
}

.table_date_stage th {
  background: #eee;
  border: 1px solid #ddd;
  padding: 8px 0;
}

.table_date_stage td {
  border: 1px solid #ddd;
}

.prix_stage {
  text-align: center;
  width: 100%;
}

.prix_stage td {
  border: 1px solid #ddd;
}

.liste_prix_heber {
  color: #555;
  font-size: 14px;
  text-align: center;
}

.resultBlock {
  display: none;
  position: fixed;
  inset: 0;
  margin: auto;
  width: 50%;
  height: 240px;
  background: #fff;
  box-shadow: 0 0 150px #0004;
  z-index: 99;
}

.resultBlock.active {
  display: block;
}

.resultBlock h2 {
  background: #89b422;
  color: #eee;
  margin: 0;
}

.resultBlock > * {
  padding: 0 50px;
}

.resultBG {
  background: #000a;
  position: fixed;
  inset: 0;
  z-index: 9;
  display: none;

  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}

.resultBG.active {
  display: block;
}

/** FORM INDEX */

.containerOrderIndex {
  background: #333;
  margin-top: -50px;
  z-index: 99;
  position: relative;
  border-radius: 5px;
  box-shadow: 0 0 35px #3339;
}

.containerOrderIndex label {
  color: #89b422;
}

.containerOrderIndex .datepicker-input,
.containerOrderIndex .datepicker-input:active,
.containerOrderIndex .datepicker-input:focus,
.containerOrderIndex .datepicker-input:hover {
  background: transparent;
  border: transparent;
  color: #89b422;
  text-align: center;
  outline: none !important;
}

/* ----- FAQ ----- */

.faq h3 {
  background: #89b422;
  color: #fff;
  font-size: 28px;
  margin: 0;
  padding: 10px 20px;
  text-align: center;
}

.faq .reponse {
  margin: 20px auto 40px;
}

footer label {
  color: #999;
}

footer input[type="text"],
footer input[type="email"],
footer textarea {
  background: transparent;
  color: #eee;
}

/* ----- Pages ----- */

.lien_tel {
  text-decoration: none;
}

.map {
  height: 650px;
  margin-bottom: -100px;
}

.map_gradient {
  background: radial-gradient(
    rgba(238, 238, 238, 0) 10%,
    rgba(238, 238, 238, 1) 85%
  );
  bottom: 0;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.cadre_photo strong {
  font-size: 32px;
  font-style: italic;
}

.cadre_photo p {
  font-size: 20px;
  margin: 100px 0;
}

.saison_date {
  color: #999;
  font-size: 14px;
}

.img_pres_tarifs {
  height: 200px;
}

article {
  background: rgba(137, 180, 34, 0.1);
  border-radius: 6px;
  overflow: hidden;
  padding-bottom: 50px !important;
  height: 320px;
}

article a {
  text-decoration: none;
}

article img {
  transform-origin: bottom center;
  transform: scale(1.23);
}

article h3 {
  font-size: 20px;
}

article p {
  font-size: 14px;
}

article .cta_clair {
  border-radius: 0;
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
}

.map_gite {
  object-fit: contain;
  width: 95%;
  margin: 2.5%;
}

/* ----- Table ----- */

table {
  border-collapse: collapse;
  text-align: center;
  width: 100%;
}

th {
  background: #89b422;
  color: #eee;
  font-size: 18px;
  padding: 8px;
}

td {
  padding: 20px;
}

.block_table {
  padding: 0;
}

/* ----- Footer ----- */

footer {
  background: #333;
  color: #dfdfdf;
}

footer section {
}

footer ul {
  margin: 0;
  padding: 0;
}

footer a {
  color: #dfdfdf;
  font-size: 11px;
}

footer p {
  color: #dfdfdf;
  font-size: 10px;
  text-align: justify;
}

section.contact-nous {
  background: #89b422;
  color: #eee;
}

section.main_footer {
  background: #444;
  position: relative;
}

.ctn_anim {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
}

.ctn_anim .pattern {
  background: url("./images/pattern_footer.png") repeat center center / 80px;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 2;
}

.bulle_couleur {
  border-radius: 30px;
  filter: blur(100px);
  left: 0;
  position: absolute;
  top: 0;
  opacity: 0;
  transition: all ease 10s;
  z-index: 1;
}

.bulle_couleur1 {
  background: #444;
  height: 200px;
  width: 300px;
}

.bulle_couleur2 {
  background: #666;
  height: 100px;
  width: 300px;
}

.bulle_couleur3 {
  background: #89b422;
  height: 150px;
  width: 250px;
}

footer .navigation a {
  display: inline-block;
  padding: 4px 0;
  font-size: 15px;
  text-decoration: none;
}

.contact-nous a {
  font-size: 16px;
  text-decoration: none;
}

.contact-nous img {
  height: 50px;
}

.social {
  list-style: none;
}

.social a {
  display: inline-block;
  padding: 8px 0;
}

.social img {
  height: 40px;
}

.legal p,
.legal p a {
  color: #777;
  font-size: 10px;
  text-align: center;
}

/* -----Responsive---- */

.phone {
  display: none;
}

@media only screen and (max-width: 1930px) {
}

@media only screen and (max-width: 1700px) {
}

@media only screen and (max-width: 1500px) {
}

@media only screen and (max-width: 1400px) {
}

@media only screen and (max-width: 1100px) {
}

@media only screen and (max-width: 850px) {
  .a25,
  .a75 {
    width: 50%;
  }

  .b25,
  .b75 {
    width: calc(50% - 4%);
  }

  .c25,
  .c75 {
    width: calc(50% - 7%);
  }

  .d25,
  .d75 {
    width: calc(50% - 10%);
  }
}

@media only screen and (max-width: 600px) {
  .a20,
  .a25,
  .a50,
  .a33,
  .a66,
  .a75 {
    width: 100%;
  }

  .b20,
  .b25,
  .b50,
  .b33,
  .b66,
  .b75 {
    width: calc(100% - 4%);
  }

  .c20,
  .c25,
  .c50,
  .c33,
  .c66,
  .c75 {
    width: calc(100% - 7%);
  }

  .d20,
  .d25,
  .d50,
  .d33,
  .d66,
  .d75 {
    width: calc(100% - 10%);
  }

  .b_phone {
    padding: 1% !important;
  }

  .c_phone {
    padding: 2% !important;
  }

  .d_phone {
    padding: 4% !important;
  }

  .desk {
    display: none;
  }

  .phone {
    display: initial;
  }

  .img10 {
    margin: auto 1%;
    vertical-align: middle;
    width: 25%;
  }

  .img20 {
    width: 15%;
  }

  .img25 {
    width: 20%;
  }

  .img33 {
    width: 25%;
  }

  .img50 {
    width: 33%;
  }

  /* ---- */

  .ctn_btn_nav {
    background: #5559;
    border-radius: 100%;
    cursor: pointer;
    height: 40px;
    left: 10px;
    position: fixed;
    top: 10px;
    width: 40px;
    z-index: 10;
  }

  .nav_bar {
    background: #eee;
    border-radius: 4px;
    height: 2px;
    margin: 6px 0;
    width: 100%;
  }

  .ctt_btn_nav {
    bottom: 0;
    height: 23px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 55%;
  }

  header section {
    overflow: initial;
  }

  section.cookies button {
    margin-top: 15px;
  }

  section.cookies .img50 {
    margin-top: 15px;
  }

  nav {
    background: rgb(51, 51, 51);
    bottom: 0;
    left: -50%;
    overflow: hidden;
    position: fixed;
    top: 0;
    width: 0;
    z-index: 9;
  }

  nav li {
    display: block !important;
  }

  nav li a {
    font-size: 18px !important;
  }

  nav .logo {
    display: block;
    margin: 30px auto;
    width: 100px;
  }

  .navigation .ctn_logo {
    left: 0;
    margin: auto;
    right: 0;
    top: 0;
  }

  .bandeau_vert .cadre4 p {
    padding: 12px;
  }

  .map_gite {
    height: 370px;
    object-fit: contain;
  }

  .block_table {
    width: calc(100% - 2%);
  }

  /* Active menu */

  nav.show {
    border-radius: 0;
    height: 100%;
    width: 200%;
  }

  .ctn_btn_nav.open .nav_bar:nth-child(1) {
    transform: translateY(5px) rotate(45deg);
  }

  .ctn_btn_nav.open .nav_bar:nth-child(2) {
    transform: translateY(-3px) rotate(-45deg);
  }

  /* Main */

  main .cadre1,
  main .cadre2,
  main .cadre3,
  main .cadre4 {
    margin: auto;
    padding: 0;
    width: 100%;
  }

  /* Footer */

  .social li {
    display: inline-block;
    margin: 15px;
  }
}

@media only screen and (max-width: 550px) {
}

@media only screen and (max-width: 375px) {
}

@media only screen and (max-width: 320px) {
}

/* Module style */
.datepicker {
  box-sizing: border-box;
  overflow: hidden;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.datepicker--inline {
  position: relative;
}

.datepicker__inner {
  overflow: hidden;
}

.datepicker__month {
  border-collapse: collapse;
  text-align: center;
  width: 100%;
}

.mainAnnonces .datepicker__month {
  width: 100%;
}

.datepicker__month--month2,
.mainAnnonces .datepicker__month--month2,
.mainAnnonces .datepicker__months:before {
  display: none;
  background: transparent;
}

.datepicker__month-day--valid {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}

.datepicker__month-day--lastMonth,
.datepicker__month-day--nextMonth {
  visibility: hidden;
}

.mainAnnonces .datepicker__month-day--lastMonth,
.mainAnnonces .datepicker__month-day--nextMonth {
  visibility: initial;
}

.datepicker__month-button {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}

.datepicker__info--feedback {
  display: none;
}

.datepicker__info--error,
.datepicker__info--help {
  display: block;
}

datepicker__buttons {
  -webkit-user-select: none;
  user-select: none;
}

.datepicker__close-button,
.datepicker__clear-button {
  cursor: pointer;
}

.datepicker__tooltip {
  position: absolute;
}

/* =============================================================
   * THEME
   * ============================================================*/
.datepicker {
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 0 50px #0005;
  color: #fff;
  font-size: 16px;
  line-height: 14px;
  font-family: "Montserrat";
}

.datepickerDark .datepicker {
  background: #333;
}

.block .datepicker {
  border-radius: none;
  box-shadow: none;
  background: transparent;
}

.datepicker__inner {
  padding: 20px;
}

.block .datepicker__inner {
  padding: 0;
}

.datepicker__month {
  font-size: 18px;
}

.datepicker__month-caption {
  border-bottom: 1px solid #dcdcdc;
  height: 3em;
  vertical-align: middle;
}

.datepicker__month-name {
  text-transform: uppercase;
  font-size: 20px;
  margin-bottom: 20px;
}

.datepicker__week-days {
  height: 2em;
  vertical-align: middle;
}

.datepicker__week-name {
  font-size: 11px;
  font-weight: 400;
  text-transform: uppercase;
}

.datepicker__month-day {
  transition-duration: 0.2s;
  transition-property: color, background-color, border-color;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  color: #000;
  padding: 14px 7px;
  border: 1px solid transparent;
}

.datepickerDark .datepicker__month-day:not(.datepicker__month-day--invalid) {
  color: #eee;
}

.datepicker__month-day:focus {
  outline: none;
  background-color: #89b422;
}

.datepicker__month-day--no-checkin {
  position: relative;
}

.datepicker__month-day--no-checkin:before {
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  border-bottom: 8px solid red;
  border-right: 8px solid transparent;
}

.datepicker__month-day--no-checkout {
  position: relative;
}

.datepicker__month-day--no-checkout:before {
  top: 0;
  content: "";
  display: block;
  right: 0;
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  border-top: 8px solid red;
  border-left: 8px solid transparent;
}

.datepicker__month-day--no-checkin.datepicker__month-day--no-checkout:before {
  content: none;
}

.datepicker__month-day--invalid {
  color: #555;
}

.datepicker__month-day--disabled {
  color: #555;
  position: relative;
}

.orderBlock .datepicker__month-day--invalid {
  color: #ddd;
}

.orderBlock .datepicker__month-day--disabled {
  color: #ddd;
  position: relative;
}

.datepicker__month-day--no-checkin,
.datepicker__month-day--no-checkout,
.datepicker__month-day--day-of-week-disabled {
  background-color: rgba(232, 235, 244, 0.5);
}

.datepicker__month-day--selected {
  background-color: #89b422;
  color: #fff;
}

.datepicker__month-day--selected:after,
.datepicker__month-day--selected:before {
  display: none;
}

.datepicker__month-day--hovering {
  background-color: #89b422;
  color: #fff;
}

.datepicker__month-day--first-day-selected,
.datepicker__month-day--last-day-selected {
  background-color: #89b422;
  color: #fff;
}

.datepicker__month-day--last-day-selected:after {
  content: none;
}

.datepicker__month-button {
  transition-duration: 0.2s;
  transition-property: color, background-color, border-color;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-block;
  text-indent: -9999px;
  padding: 5px;
}

.datepicker__month-button:after {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  float: left;
  text-indent: 0;
  content: "";
  width: 12px;
  height: 12px;
}

.datepicker__month-button--prev:after {
  background-image: url("images/left-white.svg");
}

.datepicker__month-button--next:after {
  background-image: url("images/right-white.svg");
}

.datepicker__topbar {
  margin-bottom: 20px;
  position: relative;
}

.datepicker--topbar-bottom .datepicker__topbar {
  margin-bottom: 0;
  padding-top: 20px;
  border-top: 1px solid #dcdcdc;
}

.datepicker__info-text {
  font-size: 13px;
}

.datepicker__info--selected {
  font-size: 11px;
  text-transform: uppercase;
}

.datepicker__info--selected-label {
  color: #333;
}

.datepicker__info-text--selected-days {
  font-size: 11px;
  font-style: normal;
}

.datepicker__info--error {
  color: red;
  font-size: 13px;
  font-style: italic;
}

.datepicker__info--help {
  color: #333;
  font-style: italic;
}

.datepicker__close-button,
.datepicker__clear-button,
.datepicker__submit-button {
  transition-duration: 0.2s;
  transition-property: color, background-color, border-color;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #89b422;
  border-radius: 2px;
  border: none;
  box-shadow: none;
  font-size: 10px;
  color: #ffffff;
  margin-top: 20px;
  padding: 7px 13px;
  text-decoration: none;
  text-shadow: none;
  text-transform: uppercase;
}

.datepicker--topbar-top .datepicker__close-button,
.datepicker--topbar-top .datepicker__clear-button,
.datepicker--topbar-top .datepicker__submit-button {
  margin-top: 0;
}

.datepicker__close-button:hover,
.datepicker__clear-button:hover,
.datepicker__submit-button:hover {
  background-color: #89b422;
  color: #ffffff;
}

.datepicker__close-button:disabled,
.datepicker__close-button[disabled],
.datepicker__clear-button:disabled,
.datepicker__clear-button[disabled],
.datepicker__submit-button:disabled,
.datepicker__submit-button[disabled] {
  background-color: #c8c9d0;
  color: #ffffff;
  cursor: not-allowed;
}

.datepicker__clear-button + .datepicker__close-button {
  margin-left: 10px;
}

.datepicker__clear-button + .datepicker__submit-button {
  margin-left: 10px;
}

.datepicker__submit-button {
  width: auto;
}

.datepicker__tooltip {
  background-color: #ffffff;
  color: #000;
  border-radius: 1px;
  font-size: 11px;
  margin-top: -5px;
  padding: 5px 10px;
}

.datepicker__tooltip:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid #ffffff;
  bottom: -4px;
  content: "";
  left: 50%;
  margin-left: -4px;
  position: absolute;
}

@media (min-width: 320px) {
}

@media (min-width: 480px) {
  .datepicker__months {
    overflow: hidden;
  }
  .datepicker__month {
    width: 50%;
  }
  .datepicker__month--month1 {
    float: left;
  }
  .datepicker__month--month2 {
    display: table;
    float: right;
  }
  .datepicker__month-button--disabled {
    visibility: hidden;
  }
  .datepicker__months {
    position: relative;
  }
  .datepicker__months:before {
    background: #dcdcdc;
    bottom: 0;
    content: "";
    display: block;
    left: 50%;
    position: absolute;
    top: 0;
    width: 1px;
  }
}

@media (min-width: 768px) {
  .datepicker__month {
    width: 50%;
  }
  .datepicker--topbar-has-close-button .datepicker__info,
  .datepicker--topbar-has-clear-button .datepicker__info,
  .datepicker--topbar-has-submit-button .datepicker__info {
    max-width: 325px;
  }
  .datepicker__buttons {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}

.datepicker__month-day--first-day-selected {
  border-radius: 5px 0 0 5px;
}

.datepicker__month-day--last-day-selected {
  border-radius: 0 5px 5px 0;
}

.moresevendays .datepicker__month-day--first-day-selected {
  border-radius: 5px 0 0 0;
}

.moresevendays .datepicker__month-day--last-day-selected {
  border-radius: 0 0 5px 0;
}
