/* =======================================================
   praz.css — cleaned
   Cleaned: duplicates merged, later declarations retained,
   declarations alphabetized for readability.
   ======================================================= */

html {
  scroll-behavior: smooth;
}

.ffd100 {
  color: #ffd100;
}

a.plain-link {
  color: #fff;
  text-decoration: none;
}

a.praz-link {
  color: #006579;
  text-decoration: none;
}

a.nav-link-top {
  color: rgba(8, 45, 64, 1);
  font-family: kallisto;
  font-size: 15px;
  font-weight: 300;
  letter-spacing: 0px;
  opacity: 1;
  padding-bottom: 5px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

a.service-button-btn:hover, .btn-praz:hover {
  background-color: rgb(109,180,189);
  color: #fff;
}

a.service-button-btn:active, .btn-praz:active {
  background-color: #082d40;
}

.btn-link:disabled, .btn-link.disabled {
  color: #fff;
}

div.user-form-btn {
  background-color: #3A8692;
  border-color: #3A8692;
  border-radius: 0;
  color: #fff;
  padding-bottom: 10px;
  padding-top: 10px;
  text-align: center;
  text-transform: uppercase;
}

div.user-form-btn:hover {
  background-color: rgb(109,180,189);
}

.user-form-btn a:hover {
  border-bottom: 4px solid #fff;
  color: #fff;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  box-shadow: none;
  outline: 0;
}

a:hover {
  color: #fff;
  text-decoration: none;
}

a.user-form-btn {
  border-color: #3A8692;
  border-radius: 0;
  color: #fff;
  padding-bottom: 10px;
  padding-top: 10px;
  text-align: center;
  text-transform: uppercase;
}

a .flag-icon {
  border-radius: 50%;
}

a.nav-link-top:hover {
  border-bottom: 4px solid #018894;
  color: #018894;
}

a.btn-link:hover, _a.btn-praz:hover, a.user-form-btn:hover {
  background-color: rgb(109,180,189);
  border-bottom: 4px solid #fff;
  color: #fff;
  text-decoration: none;
}

a.btn-link, a.btn-link:visited, a.btn-link:active, a.btn-praz:visited, a.user-form-btn:visited {
  color: #fff;
  text-decoration: none;
}

a.btn-praz:hover {
  color: #fff;
}

a.teal-link {
  border: 1px solid #296477;
  border-radius: 50%;
  color: #296477;
  padding: 3px 6px;
}

a.expand-link {
  font-size: 14px;
}

a.expand-link:hover {
  background-color: rgb(109,180,189);
  color: #fff;
}

.expand-link {
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 5px;
}

.flag-icon {
  background-repeat: initial;
  display: inline-block;
  height: 1.333em;
  width: 1.333em;
}

.btn-primary:hover {
  background-color: #018894;
  border-color: #018894;
  color: #fff;
}

.btn-praz {
  background-color: #3A8692;
  border-color: #3A8692;
  color: #fff;
  text-transform: uppercase;
}

.navbar {
  margin-bottom: 30px;
}

.pdb-tarif-store {
  font: normal normal normal 18px/23px "urw-din";
  text-decoration: line-through;
}

.pdb-tarif-web-row {
  position: absolute;
  top: 40%;
}

.pdb-tarif-web {
  font: normal normal normal 25px/23px "urw-din";
}

.pdb-tarif-web-txt {
  font: normal normal normal 10px/20px "urw-din";
  text-transform: uppercase;
}

.pdb-tarif-btn {
  background-color: #3A8692;
  border-color: #3A8692;
  bottom: 0;
  color: #fff;
  left: 0;
  padding-bottom: 10px;
  padding-top: 10px;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}

.pdb-tarif-btn:hover {
  background-color: rgb(109,180,189);
  color: #fff;
}

.heading {
  text-align: center;
}

.bg-booking-white, .booking {
  background-color: #FBFBFB;
}

.bg-booking-skyblue, .bg-pale {
  background-color: #CDDFE3;
}

.bg-form {
  background-color: #bee0e1;
  padding-top: 20px;
}

#mailFormActivites select {
  color: #fff;
}

#mailFormActivites .form-control:focus {
  border-color: #fff;
}

.user-form-control {
  border: 1px solid #63a5ab;
  height: 36px !important;
}

.fd-bg {
  background-color: #fff !important;
}

.bg-teal-pale {
  background-color: #018894;
}

.bg-teal-dark {
  background-color: #006579;
}

.bg-button {
  background-color: #3A8692;
}

.teal-dark {
  color: #296477;
}

.txt1 {
  font-weight: 500;
  text-transform: uppercase;
}

.txt1, .txt2 {
  color: #006579;
  font-family: "urw-din";
  font-size: 20px;
}

.txt3 {
  font-family: "urw-din";
  font-size: 16px;
}

.carousel {
  height: 500px;
  position: relative;
}

.carousel-control-prev {
  justify-content: left;
}

.carousel-control-next {
  justify-content: right;
}

.price-group-block {
  position: relative;
}

.price-prod-group {
  background-color: #CDDFE3;
}

.price-prod-name {
  background-color: #fff;
  border-bottom: 1px solid #018894;
  border-right: 1px solid #018894;
  color: #006579;
  font-family: "urw-din";
  font-size: 16px;
  padding: 10px 0;
  text-align: center;
}

.vtxt {
  color: #006579;
  font-family: "urw-din";
  font-size: 16px;
  font-weight: 600;
  left: -100px;
  position: absolute;
  text-align: right;
  top: 110px;
  transform: rotate(-90deg);
  width: 200px;
  z-index: 50;
}

.user-label {
  font: normal normal normal 14px/20px "urw-din";
}

label.user-label, .form-user-group label {
  font-style: normal;
  height: 30px;
  top: 0;
}

.form-label-group .user-label {
  font-size: 12px;
  font-style: normal;
  top: -2px;
}

.user-select:invalid {
  font-style: normal;
}

.ttu {
  text-transform: uppercase;
}

body {
  align-items: normal;
  background-color: #fdfdfd;
  color: #006579;
}

.pl-14 {
  padding-left: 14px;
}

.plr-5 {
  padding-left: 5px;
  padding-right: 5px;
}

.row-recap {
  padding-left: 10%;
  padding-right: 10%;
}

.p-10vh {
  padding-top: 10vh;
}

.pt-10 {
  padding-top: 10px;
}

.pt-20 {
  padding-top: 20px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-20 {
  padding-bottom: 20px;
}

.ptb-20 {
  padding-bottom: 20px;
  padding-top: 20px;
}

.pr-5 {
  padding-right: 5px;
}

.mt-0 {
  margin-top: 0;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-50 {
  margin-top: 50px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mlr-0 {
  margin-left: 0;
  margin-right: 0;
}

.mr-5 {
  margin-right: 5px;
}

.mr-15 {
  margin-right: 15px;
}

.t-20 {
  top: 20px;
}

.white {
  color: #fff;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.cal-month-name {
  color: #006579;
  font-family: "urw-din";
  font-size: 16px;
  padding: 10px 0;
  text-align: center;
  text-transform: uppercase;
}

.col-md-cal {
  -ms-flex: 0 0 14.280%;
  flex: 0 0 14.280%;
  max-width: 14.280%;
}

.cal-day, .tbl-hdr {
  background-color: #CDDFE3;
  border-bottom: 1px solid #018894;
  border-right: 1px solid #018894;
  color: #006579;
  padding: 10px 0;
  text-align: center;
}

.cal-day:nth-child(7n), .cal-date:nth-child(7n) {
  border-right: none;
}

.cal-date {
  background-color: #fff;
  border-bottom: 1px solid #018894;
  border-right: 1px solid #018894;
  color: #006579;
  font-family: "urw-din";
  font-size: 16px;
  padding: 10px 0;
  text-align: center;
}

.tbl-price {
  background-color: #fff;
  border-bottom: 1px solid #018894;
  border-right: 1px solid #018894;
  color: #006579;
  font-family: "urw-din";
  font-size: 16px;
  padding: 10px 0;
  text-align: center;
}

.tbl-hdr:nth-child(8n), ._tbl-price:nth-child(7n) {
  border-right: none;
}

.next-month {
  float: right;
  margin-left: -28px;
  margin-right: 10px;
}

.uc-bold {
  font-weight: bold;
  text-transform: uppercase;
}

.bg-facade-lower {
  background-color: #006579;
  color: #fff;
  padding-bottom: 10px;
  padding-top: 10px;
}

.nav-row {
  padding-bottom: 9px;
}

.title-row {
  position: relative;
}

.title-txt {
  color: #296477;
  font: normal normal 500 40px/35px kallisto;
  letter-spacing: 6px;
  padding-bottom: 15px;
  text-align: center;
  text-transform: uppercase;
}

.title-sm-txt {
  color: #296477;
  font-family: kallisto;
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 4.5px;
  text-align: center;
  text-transform: uppercase;
}

.pg-outer hr {
  border-top: 3px solid rgba(58, 134, 146,0.5);
}

.product {
  padding-bottom: 30px;
}

.product-group-title {
  color: #296477;
  font: normal normal 700 20px/35px kallisto;
  letter-spacing: 3px;
  padding-bottom: 5px;
  text-transform: uppercase;
}

.product-title, .user-title {
  color: #296477;
  font: normal normal 500 20px/35px kallisto;
  letter-spacing: 3px;
  padding-bottom: 5px;
  text-transform: uppercase;
}

.close-me {
  border: 1px solid #296477;
  border-radius: 50%;
  color: #296477;
  font: normal normal 500 20px/35px kallisto;
  font-size: 14px;
  padding: 2px 7px;
}

a .close-me {
  text-decoration: none;
}

.circle {
  border: 1px solid #fff;
  border-radius: 50%;
  padding: 3px 6px;
}

.circle-teal {
  border: 1px solid #296477;
  border-radius: 50%;
  color: #296477;
  padding: 3px 6px;
}

.product-detail-block {
  background-color: #fff;
}

.product-name {
  color: #006579;
  font: normal normal normal 14px/20px urw-din;
  font-weight: 300;
  opacity: 0.75;
  padding-bottom: 10%;
}

.pdb-option .product-name {
  text-transform: lowercase;
}

.pdb-main, .pdb-option {
  border: 2px solid #cddfe3;
  padding: 3% 3%;
}

.pdb-tarif {
  border: 2px solid #cddfe3;
  padding: 3% 15px;
}

.pdb-main img {
  max-height: 200px;
  max-width: 100%;
}

.pdb-main footer {
  width: 100%;
}

.pdb-option img {
  width: 100%;
}

.product-user-block {
  background-color: #fff;
  margin-top: 20px;
  padding: 30px;
}

.user-txt {
  color: #082D40;
  font: normal normal normal 14px/16px urw-din;
  padding-bottom: 20px;
}

.sub-title-row {
  position: relative;
}

.sub-title-txt {
  color: #006579;
  font: normal normal 300 18px/20px "urw-din";
  text-align: center;
}

.title-bar {
  color: #fff;
  font: normal small-caps normal 18px/20px "urw-din";
  padding-bottom: 5px;
  padding-top: 5px;
  text-transform: uppercase;
}

.nav-logo {
  position: relative;
  top: 9px;
  width: 100%;
}

.nav-logo img {
  width: 100%;
}

.facade {
  background: url(graphics/bg-mountain-effect.png);
  background-position: top 128px center;
  background-repeat: no-repeat;
  background-size: cover;
}

.facade img {
  margin-top: 60px;
  position: relative;
  width: 100%;
}

.facade-lower {
  background-color: #eff4f5;
  padding-bottom: 50px;
  padding-top: 20px;
  position: relative;
}

.facade-lower-panel {
  align-items: center;
  background-color: #006579;
  color: #fff;
  display: flex;
  float: left;
  height: 160px;
  padding-bottom: 25px;
  padding-top: 25px;
  position: relative;
  text-align: left;
  top: -20px;
  width: 29%;
}

.facade-lower-panel-short {
  background-color: #018894;
  color: #fff;
  height: 160px;
  padding-bottom: 25px;
  padding-top: 25px;
  position: relative;
  text-align: left;
  top: -20px;
  width: 13%;
}

.bg-mountain {
  background: url(../graphics/bg-mountain-effect-2.png);
  background-position: top 128px center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 220px;
}

.panel-icon {
  float: left;
}

.panel-text {
  font-family: "urw-din";
  font-size: 16px;
  line-height: 20px;
}

.services-block {
  background-color: #FBFBFB;
}

.services-title {
  padding-bottom: 42.5px;
  padding-top: 42.5px;
}

.service-block {
  background: #fff;
  border-radius: 1px;
  box-shadow: 0px 11px 16px #00657929;
  margin-bottom: 50px;
  padding: 0;
  padding-bottom: 20px;
}

.service-photo img {
  width: 100%;
}

.service-title {
  padding-bottom: 34px;
  padding-top: 21px;
}

.service-title-txt {
  color: #082d40;
  font-family: kallisto;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 2.16px;
  text-align: center;
  text-transform: uppercase;
}

.service-text-txt {
  color: #006579;
  font-family: "urw-din";
  font-size: 14px;
  height: 75px;
  letter-spacing: 0px;
  padding: 0 10px;
  text-align: center;
}

.service-button {
  width: 100%;
}

.service-button-btn {
  background: #3A8692 0% 0% no-repeat padding-box;
  color: #fff;
  font-family: "Barlow", sans-serif;
  font-size: 14px;
  opacity: 1;
  text-align: center;
  width: 181px;
}

.btn a {
  color: #fff;
}

.feedback {
  background-color: #3A8692;
  margin-bottom: 50px;
  max-height: 500px;
  overflow: hidden;
}

.fb-photo img {
  width: 100%;
}

.cite {
  color: #fff;
  text-align: center;
}

blockquote {
  border: none;
  font-family: Georgia, "Times New Roman", Times, serif;
  margin-bottom: -30px;
  quotes: "“""”""‘""’";
}

blockquote h3, blockquote .cite {
  font-size: 21px;
}

blockquote .cite:before {
  color: #fff;
  content: open-quote;
  font-size: 100px;
  font-weight: bold;
}

.cite-text {
  color: #fff;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 20px;
  font-style: italic;
  line-height: 30px;
  text-align: center;
}

.cite-author {
  color: #fff;
  font-family: "urw-din";
  font-size: 16px;
  text-align: center;
}

.citecenter {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
}

.fb-nav {
  border: 1px solid;
  border-radius: 50%;
  color: #fff;
  height: 24px;
  padding-left: 6px;
  padding-top: 2px;
  width: 24px;
}

.form-control {
  border-radius: 0;
}

.form-control:focus {
  border-color: rgb(20,93,111);
  box-shadow: none;
}

.user-form-control:focus, .user-select:focus {
  background-color: #fff;
  border: 2px solid #63a5ab;
  box-shadow: none;
  color: #495057;
  outline: 0;
}

select:invalid {
  color: #006579;
  font-family: "urw-din";
  font-size: 12px;
  font-style: italic;
  font-weight: 300;
}

.form-label-group input:not(:placeholder-shown) ~ label {
  padding-top: 0.05rem;
}

.form-label-group label {
  color: #006579;
  font-family: "urw-din";
  font-size: 12px;
  font-style: italic;
  top: 5px;
}

.label-txt {
  color: #006579;
  font-family: "urw-din";
  font-size: 10px;
  font-style: italic;
  font-weight: 300;
  top: 10px !important;
}

textarea.form-control {
  padding-top: 20px;
}

.form-control-plain {
  background-clip: padding-box;
  background-color: #fff;
  border-bottom: 3px solid #006579;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  color: #006579;
  font-size: 1rem;
  font-weight: 400;
  left: 12px;
  line-height: 1.5;
  position: relative;
  top: -5px;
}

.sub-heading {
  color: #296477;
  font-family: kallisto;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 6px;
  text-transform: uppercase;
}

.sectionBlock {
  border-top: 4px solid rgba(0, 0, 0, 0.1);
}

.social-txt {
  color: #006579;
  font: normal normal normal 18px/23px urw-din;
  letter-spacing: 0px;
  opacity: 1;
  padding-bottom: 30px;
  padding-top: 50px;
  text-align: center;
}

.social-icon {
  background-color: #cddfe3;
  border-radius: 50%;
  color: #006579;
  font-size: 2rem;
  height: 46px;
  line-height: 46px;
  margin: 0 5px;
  text-align: center;
  width: 46px;
}

.text-outline {
  -webkit-text-stroke: 2px #006579;
  color: #cddfe3;
  text-stroke: 2px #006579;
}

.row-wide {
  margin-left: -30px;
  margin-right: -30px;
}

.recap-block .card {
  border: 1px solid #018894;
  border-radius: 0;
  padding-left: 0;
  padding-right: 0;
}

.recap-block .card-header {
  background-color: #018894;
  color: #fff;
  margin-bottom: 20px;
  padding-bottom: 40px;
  padding-top: 20px;
}

.recap-block .card-header:first-child {
  border-radius: 0;
}

.recap-fname {
  font: normal normal normal 18px/23px "kallisto";
  text-transform: uppercase;
}

.recap-pack {
  font: normal normal normal 18px/23px "kallisto";
}

.recap-txt-light {
  font: normal normal normal 16px/23px urw-din;
  opacity: 0.7;
}

.recap-txt-bold {
  font: normal normal normal 16px/23px urw-din;
  font-weight: 700;
  opacity: 0.7;
}

.recap-block hr {
  border-color: #006579;
  margin-left: 20px;
  margin-right: 20px;
  opacity: 0.2;
}

.footer {
  background-color: #006579;
  color: #fff;
  font: normal normal normal 16px/20px urw-din;
  margin-left: -15px;
  margin-right: -15px;
  margin-top: 50px;
  padding-bottom: 50px;
  padding-left: 10%;
  padding-right: 10%;
  padding-top: 50px;
}

.footer-bg {
  padding-left: 0;
  padding-right: 0;
}

.footer-bg img {
  width: 100%;
}

.social-icon-footer {
  background-color: #006579;
  border: 1px solid #fff;
  border-radius: 50%;
  color: #fff;
  font-size: 1.8rem;
  height: 46px;
  line-height: 46px;
  margin: 0 5px;
  text-align: center;
  width: 46px;
}

.text-outline-footer {
  -webkit-text-stroke: 2px #fff;
  color: #006579;
  text-stroke: 2px #fff;
}

.cc-logo {
  width: 50px;
}

.payment-summary-block {
  margin-bottom: 20px;
  margin-left: 20px;
  margin-right: 20px;
  padding: 10px;
}

/* -------------------------------------------------------
   AT-RULES / RESPONSIVE RULES
------------------------------------------------------- */

@font-face {
    font-family:"kallisto";
    src:url("https://use.typekit.net/af/e6d82c/00000000000000007735c0c2/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff2"),url("https://use.typekit.net/af/e6d82c/00000000000000007735c0c2/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff"),url("https://use.typekit.net/af/e6d82c/00000000000000007735c0c2/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("opentype");
    font-display:auto;
    font-style:normal;
    font-weight:500;
}

@media only screen and (min-width:992px) {
  .mobile-show {
    display: none;
  }
}

@media only screen and (max-width:992px) {
  .mobile-mlr-0 {
    margin-left: 0;
    margin-right: 0;
  }

  .mobile-hide {
    display: none;
  }

  .mobile-show {
    display: block;
  }

  .navbar {
    margin-bottom: 0;
    margin-top: 20px;
  }

  .nav-item {
    text-align: left !important;
  }

  .nav-logo {
    position: absolute;
    right: 0;
    top: 9px;
    width: 100px;
  }

  .nav-logo img {
    position: absolute;
    right: 0;
    top: 0;
    width: 120px;
  }

  .title-txt {
    font-size: 7.0vw;
  }

  .sub-title-txt {
    font-size: 3.2vw;
    line-height: 3.2vw;
  }

  .panel-icon img {
    width: 80%;
  }

  .panel-text {
    padding-left: 10px;
  }

  .facade-lower {
    padding-top: 0;
  }

  .pdb-option img {
    width: 100px;
  }
}
