﻿@charset "UTF-8";
/* =============================================================================
/* IMPORTS
/* ============================================================================= */
/* =============================================================================
/* VARIABLES
/* ============================================================================= */
/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

progress {
  vertical-align: baseline;
}

template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
a {
  background-color: transparent;
}

a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
}

b,
strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

figure {
  margin: 1em 40px;
}

hr {
  height: 0;
  overflow: visible;
}

button,
input,
select,
textarea {
  font: inherit;
}

optgroup {
  font-weight: bold;
}

button,
input,
select {
  overflow: visible;
}

button,
input,
select,
textarea {
  margin: 0;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

[disabled] {
  cursor: default;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button:-moz-focusring,
input:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/* =============================================================================
/* gallery
/* ============================================================================= */
.fancybox-iframe,
.photoswipe-item {
  cursor: zoom-in;
}

.visible-print {
  display: none;
}

/* -----------------------------------------------------------------------------
/* clearfix
/* ----------------------------------------------------------------------------- */
.clearfix:before, .row:before, .clearfix:after, .row:after {
  content: " ";
  display: table;
}
.clearfix:after, .row:after {
  clear: both;
}

/* =============================================================================
/* BASIC
/* ============================================================================= */
html {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  font-size: 1em;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

*, *:before, *:after {
  -moz-box-sizing: inherit;
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

body {
  font-family: "chaparral-pro", serif;
  line-height: 1.5;
  color: #464646;
  background-color: #f4f3f1;
  font-weight: 300;
  letter-spacing: 0.02em;
}

p {
  margin: 0 0 10px;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

figure {
  margin: 0;
}

.fluid-image, .base-item__image, .rooms-contact__images img {
  max-width: 100%;
  height: auto;
  display: block;
  width: 100%;
}

.cookie-banner {
  max-width: 350px;
  right: auto !important;
  bottom: 15px !important;
  left: 15px !important;
}

.letter-big {
  font-size: 80px;
  line-height: 100px;
  color: #66987e;
  font-style: italic;
}

con-pricecalendar {
  display: block;
  overflow: hidden;
  position: relative;
}

/* =============================================================================
/* CUSTOM STYLES
/* ============================================================================= */
.container-outer {
  max-width: 990px;
  margin: 0 auto;
  position: relative;
}
@media all and (max-width: 1040px) {
  .container-outer {
    padding-left: 25px;
    padding-right: 25px;
  }
}

.container-content {
  max-width: 740px;
  margin: 0 auto;
  position: relative;
}
@media all and (max-width: 790px) {
  .container-content {
    padding-left: 25px;
    padding-right: 25px;
  }
}

.container {
  max-width: 814px;
  margin: 0 auto;
  position: relative;
}
.container .container-content {
  margin-left: 0;
}
@media all and (max-width: 864px) {
  .container {
    padding-left: 25px;
    padding-right: 25px;
  }
}

.bg-pattern {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  z-index: -1;
  overflow: hidden;
  font-size: 0;
  /*&:before {
      content: "";
      position: absolute;
      top: 81%;
      left: 0;
      background: $base-background-color;
      z-index: 3;
      display: block;
      width: 100%;
      padding-top: 100%;
      @include transform(skewY(45deg));
  }*/
}
@media all and (max-width: 768px) {
  .bg-pattern {
    height: 100vh;
  }
}
.bg-pattern__line {
  white-space: nowrap;
  margin-left: -140px;
}
@media all and (max-width: 768px) {
  .bg-pattern__line {
    margin-left: -66px;
  }
}
.bg-pattern__line:nth-child(2n+1) {
  margin-left: 0;
}
.bg-pattern__tile {
  width: 280px;
  height: 130px;
  display: inline-block;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
  opacity: 0;
  -webkit-transform: translate(-30px, -30px);
  -moz-transform: translate(-30px, -30px);
  -ms-transform: translate(-30px, -30px);
  -o-transform: translate(-30px, -30px);
  transform: translate(-30px, -30px);
}
.js-animate-tiles .bg-pattern__tile {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
@media all and (max-width: 768px) {
  .bg-pattern__tile {
    width: 130px;
    height: 75px;
  }
}
.bg-pattern canvas {
  background: #f4f3f1;
  position: relative;
  z-index: 2;
}

.fastcheckin {
  margin-top: 60px;
  margin-bottom: 30px;
  overflow: hidden;
}
.fastcheckin .main-content {
  overflow: auto;
}
.fastcheckin .container-content {
  padding-left: 0;
  padding-right: 0;
}
.fastcheckin iframe {
  min-width: 460px;
}

.coupon-widget {
  margin: 60px 25px 30px;
  padding: 25px;
  overflow: hidden;
  background: #fff;
}

/* =============================================================================
/* Modules
/* ============================================================================= */
/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* -----------------------------------------------------------------------------
/* buttons
/* ----------------------------------------------------------------------------- */
.icon-button {
  border: none;
  outline: none;
  background: none;
  width: 39px;
  height: 39px;
  position: relative;
  text-align: center;
  display: -webkit-inline-box;
  display: -moz-inline-box;
  display: inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.icon-button:before {
  content: "";
  display: block;
  width: 39px;
  height: 39px;
  background: #639982;
  -webkit-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -moz-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -ms-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -o-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
  z-index: 1;
  position: absolute;
  left: 50%;
  top: 50%;
}
.icon-button svg {
  z-index: 2;
  position: relative;
  margin: auto;
}

.icon-button--secondary:before {
  background: #f3a0a0;
}
.icon-button--secondary:hover:before {
  background: #ed7373;
}

.button {
  display: inline-block;
  padding: 0 1.4375em;
  margin-bottom: 0;
  font-size: 1em;
  font-weight: normal;
  line-height: 2.1875;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  color: #464646;
  background-color: #fff;
  border-color: #CCD1D9;
  letter-spacing: 0.1em;
}
.button--small-padding {
  padding: 0 0.3125em;
}
.button:hover, .button:focus, .button:active {
  color: #464646;
  background-color: #F5F7FA;
  border-color: #CCD1D9;
}
.button:hover, .button:focus {
  text-decoration: none;
}
.button:active {
  background-image: none;
  outline: 0;
}
.button.disabled, .button[disabled] {
  pointer-events: none;
  cursor: not-allowed;
  filter: alpha(opacity=65);
  opacity: 0.65;
}

.button--primary {
  color: #fff;
  background-color: #639982;
  border-color: #639982;
}
.button--primary:hover, .button--primary:focus, .button--primary:active {
  color: #fff;
  background-color: #32554b;
  border-color: #32554b;
}

.button--secondary {
  color: #fff;
  background-color: #f3a0a0;
  border-color: #f3a0a0;
}
.button--secondary:hover, .button--secondary:focus, .button--secondary:active {
  color: #fff;
  background-color: #ed7373;
  border-color: #ed7373;
}

.button--gray {
  color: #fff;
  background-color: #42434a;
  border-color: #42434a;
}
.button--gray:hover, .button--gray:focus, .button--gray:active {
  color: #fff;
  background-color: #2a2b2f;
  border-color: #2a2b2f;
}

.button--lightgray {
  color: #fff;
  background-color: #babab4;
  border-color: #babab4;
}
.button--lightgray:hover, .button--lightgray:focus, .button--lightgray:active {
  color: #fff;
  background-color: #42434a;
  border-color: #42434a;
}

.button--empty {
  color: #639982;
  background-color: transparent;
  border-color: transparent;
}
.button--empty:hover, .button--empty:focus, .button--empty:active {
  color: #32554b;
  background-color: transparent;
  border-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.button--full {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */
/* =============================================================================
/* CONGRID
/* ============================================================================= */
/* -----------------------------------------------------------------------------
/* clearfix for the rows
/* ----------------------------------------------------------------------------- */
/* -----------------------------------------------------------------------------
/* base styles
/* ----------------------------------------------------------------------------- */
[class*=col-] {
  width: 100%;
  position: relative;
  min-height: 1px;
  float: left;
}

[class*=gutter-] > [class*=col-] {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* -----------------------------------------------------------------------------
/* grid
/* ----------------------------------------------------------------------------- */
.col-1 {
  width: 8.3333333333%;
}

.col-push-1 {
  left: 8.3333333333%;
}

.col-pull-1 {
  right: 8.3333333333%;
}

.col-2 {
  width: 16.6666666667%;
}

.col-push-2 {
  left: 16.6666666667%;
}

.col-pull-2 {
  right: 16.6666666667%;
}

.col-3 {
  width: 25%;
}

.col-push-3 {
  left: 25%;
}

.col-pull-3 {
  right: 25%;
}

.col-4 {
  width: 33.3333333333%;
}

.col-push-4 {
  left: 33.3333333333%;
}

.col-pull-4 {
  right: 33.3333333333%;
}

.col-5 {
  width: 41.6666666667%;
}

.col-push-5 {
  left: 41.6666666667%;
}

.col-pull-5 {
  right: 41.6666666667%;
}

.col-6 {
  width: 50%;
}

.col-push-6 {
  left: 50%;
}

.col-pull-6 {
  right: 50%;
}

.col-7 {
  width: 58.3333333333%;
}

.col-push-7 {
  left: 58.3333333333%;
}

.col-pull-7 {
  right: 58.3333333333%;
}

.col-8 {
  width: 66.6666666667%;
}

.col-push-8 {
  left: 66.6666666667%;
}

.col-pull-8 {
  right: 66.6666666667%;
}

.col-9 {
  width: 75%;
}

.col-push-9 {
  left: 75%;
}

.col-pull-9 {
  right: 75%;
}

.col-10 {
  width: 83.3333333333%;
}

.col-push-10 {
  left: 83.3333333333%;
}

.col-pull-10 {
  right: 83.3333333333%;
}

.col-11 {
  width: 91.6666666667%;
}

.col-push-11 {
  left: 91.6666666667%;
}

.col-pull-11 {
  right: 91.6666666667%;
}

.col-12 {
  width: 100%;
}

.col-push-12 {
  left: 100%;
}

.col-pull-12 {
  right: 100%;
}

.gutter-5 {
  margin-left: -5px;
  margin-right: -5px;
}

.gutter-5 > [class*=col-] {
  padding-left: 5px;
  padding-right: 5px;
}

.gutter-10 {
  margin-left: -10px;
  margin-right: -10px;
}

.gutter-10 > [class*=col-] {
  padding-left: 10px;
  padding-right: 10px;
}

@media (max-width : 1280px) {
  .col-xlg-push-0 {
    left: 0;
  }
  .col-xlg-pull-0 {
    right: 0;
  }
  .col-xlg-1 {
    width: 8.3333333333%;
  }
  .col-xlg-push-1 {
    left: 8.3333333333%;
  }
  .col-xlg-pull-1 {
    right: 8.3333333333%;
  }
  .col-xlg-2 {
    width: 16.6666666667%;
  }
  .col-xlg-push-2 {
    left: 16.6666666667%;
  }
  .col-xlg-pull-2 {
    right: 16.6666666667%;
  }
  .col-xlg-3 {
    width: 25%;
  }
  .col-xlg-push-3 {
    left: 25%;
  }
  .col-xlg-pull-3 {
    right: 25%;
  }
  .col-xlg-4 {
    width: 33.3333333333%;
  }
  .col-xlg-push-4 {
    left: 33.3333333333%;
  }
  .col-xlg-pull-4 {
    right: 33.3333333333%;
  }
  .col-xlg-5 {
    width: 41.6666666667%;
  }
  .col-xlg-push-5 {
    left: 41.6666666667%;
  }
  .col-xlg-pull-5 {
    right: 41.6666666667%;
  }
  .col-xlg-6 {
    width: 50%;
  }
  .col-xlg-push-6 {
    left: 50%;
  }
  .col-xlg-pull-6 {
    right: 50%;
  }
  .col-xlg-7 {
    width: 58.3333333333%;
  }
  .col-xlg-push-7 {
    left: 58.3333333333%;
  }
  .col-xlg-pull-7 {
    right: 58.3333333333%;
  }
  .col-xlg-8 {
    width: 66.6666666667%;
  }
  .col-xlg-push-8 {
    left: 66.6666666667%;
  }
  .col-xlg-pull-8 {
    right: 66.6666666667%;
  }
  .col-xlg-9 {
    width: 75%;
  }
  .col-xlg-push-9 {
    left: 75%;
  }
  .col-xlg-pull-9 {
    right: 75%;
  }
  .col-xlg-10 {
    width: 83.3333333333%;
  }
  .col-xlg-push-10 {
    left: 83.3333333333%;
  }
  .col-xlg-pull-10 {
    right: 83.3333333333%;
  }
  .col-xlg-11 {
    width: 91.6666666667%;
  }
  .col-xlg-push-11 {
    left: 91.6666666667%;
  }
  .col-xlg-pull-11 {
    right: 91.6666666667%;
  }
  .col-xlg-12 {
    width: 100%;
  }
  .col-xlg-push-12 {
    left: 100%;
  }
  .col-xlg-pull-12 {
    right: 100%;
  }
  .gutter-xlg-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-xlg-0 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  .gutter-xlg-5 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-xlg-5 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
  .gutter-xlg-10 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-xlg-10 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width : 1024px) {
  .col-lg-push-0 {
    left: 0;
  }
  .col-lg-pull-0 {
    right: 0;
  }
  .col-lg-1 {
    width: 8.3333333333%;
  }
  .col-lg-push-1 {
    left: 8.3333333333%;
  }
  .col-lg-pull-1 {
    right: 8.3333333333%;
  }
  .col-lg-2 {
    width: 16.6666666667%;
  }
  .col-lg-push-2 {
    left: 16.6666666667%;
  }
  .col-lg-pull-2 {
    right: 16.6666666667%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-4 {
    width: 33.3333333333%;
  }
  .col-lg-push-4 {
    left: 33.3333333333%;
  }
  .col-lg-pull-4 {
    right: 33.3333333333%;
  }
  .col-lg-5 {
    width: 41.6666666667%;
  }
  .col-lg-push-5 {
    left: 41.6666666667%;
  }
  .col-lg-pull-5 {
    right: 41.6666666667%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-7 {
    width: 58.3333333333%;
  }
  .col-lg-push-7 {
    left: 58.3333333333%;
  }
  .col-lg-pull-7 {
    right: 58.3333333333%;
  }
  .col-lg-8 {
    width: 66.6666666667%;
  }
  .col-lg-push-8 {
    left: 66.6666666667%;
  }
  .col-lg-pull-8 {
    right: 66.6666666667%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-10 {
    width: 83.3333333333%;
  }
  .col-lg-push-10 {
    left: 83.3333333333%;
  }
  .col-lg-pull-10 {
    right: 83.3333333333%;
  }
  .col-lg-11 {
    width: 91.6666666667%;
  }
  .col-lg-push-11 {
    left: 91.6666666667%;
  }
  .col-lg-pull-11 {
    right: 91.6666666667%;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .gutter-lg-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-lg-0 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  .gutter-lg-5 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-lg-5 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
  .gutter-lg-10 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-lg-10 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width : 768px) {
  .col-md-push-0 {
    left: 0;
  }
  .col-md-pull-0 {
    right: 0;
  }
  .col-md-1 {
    width: 8.3333333333%;
  }
  .col-md-push-1 {
    left: 8.3333333333%;
  }
  .col-md-pull-1 {
    right: 8.3333333333%;
  }
  .col-md-2 {
    width: 16.6666666667%;
  }
  .col-md-push-2 {
    left: 16.6666666667%;
  }
  .col-md-pull-2 {
    right: 16.6666666667%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-4 {
    width: 33.3333333333%;
  }
  .col-md-push-4 {
    left: 33.3333333333%;
  }
  .col-md-pull-4 {
    right: 33.3333333333%;
  }
  .col-md-5 {
    width: 41.6666666667%;
  }
  .col-md-push-5 {
    left: 41.6666666667%;
  }
  .col-md-pull-5 {
    right: 41.6666666667%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-7 {
    width: 58.3333333333%;
  }
  .col-md-push-7 {
    left: 58.3333333333%;
  }
  .col-md-pull-7 {
    right: 58.3333333333%;
  }
  .col-md-8 {
    width: 66.6666666667%;
  }
  .col-md-push-8 {
    left: 66.6666666667%;
  }
  .col-md-pull-8 {
    right: 66.6666666667%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-10 {
    width: 83.3333333333%;
  }
  .col-md-push-10 {
    left: 83.3333333333%;
  }
  .col-md-pull-10 {
    right: 83.3333333333%;
  }
  .col-md-11 {
    width: 91.6666666667%;
  }
  .col-md-push-11 {
    left: 91.6666666667%;
  }
  .col-md-pull-11 {
    right: 91.6666666667%;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .gutter-md-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-md-0 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  .gutter-md-5 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-md-5 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
  .gutter-md-10 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-md-10 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width : 667px) {
  .col-sm-push-0 {
    left: 0;
  }
  .col-sm-pull-0 {
    right: 0;
  }
  .col-sm-1 {
    width: 8.3333333333%;
  }
  .col-sm-push-1 {
    left: 8.3333333333%;
  }
  .col-sm-pull-1 {
    right: 8.3333333333%;
  }
  .col-sm-2 {
    width: 16.6666666667%;
  }
  .col-sm-push-2 {
    left: 16.6666666667%;
  }
  .col-sm-pull-2 {
    right: 16.6666666667%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-4 {
    width: 33.3333333333%;
  }
  .col-sm-push-4 {
    left: 33.3333333333%;
  }
  .col-sm-pull-4 {
    right: 33.3333333333%;
  }
  .col-sm-5 {
    width: 41.6666666667%;
  }
  .col-sm-push-5 {
    left: 41.6666666667%;
  }
  .col-sm-pull-5 {
    right: 41.6666666667%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-7 {
    width: 58.3333333333%;
  }
  .col-sm-push-7 {
    left: 58.3333333333%;
  }
  .col-sm-pull-7 {
    right: 58.3333333333%;
  }
  .col-sm-8 {
    width: 66.6666666667%;
  }
  .col-sm-push-8 {
    left: 66.6666666667%;
  }
  .col-sm-pull-8 {
    right: 66.6666666667%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-10 {
    width: 83.3333333333%;
  }
  .col-sm-push-10 {
    left: 83.3333333333%;
  }
  .col-sm-pull-10 {
    right: 83.3333333333%;
  }
  .col-sm-11 {
    width: 91.6666666667%;
  }
  .col-sm-push-11 {
    left: 91.6666666667%;
  }
  .col-sm-pull-11 {
    right: 91.6666666667%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .gutter-sm-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-sm-0 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  .gutter-sm-5 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-sm-5 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
  .gutter-sm-10 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-sm-10 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width : 414px) {
  .col-xs-push-0 {
    left: 0;
  }
  .col-xs-pull-0 {
    right: 0;
  }
  .col-xs-1 {
    width: 8.3333333333%;
  }
  .col-xs-push-1 {
    left: 8.3333333333%;
  }
  .col-xs-pull-1 {
    right: 8.3333333333%;
  }
  .col-xs-2 {
    width: 16.6666666667%;
  }
  .col-xs-push-2 {
    left: 16.6666666667%;
  }
  .col-xs-pull-2 {
    right: 16.6666666667%;
  }
  .col-xs-3 {
    width: 25%;
  }
  .col-xs-push-3 {
    left: 25%;
  }
  .col-xs-pull-3 {
    right: 25%;
  }
  .col-xs-4 {
    width: 33.3333333333%;
  }
  .col-xs-push-4 {
    left: 33.3333333333%;
  }
  .col-xs-pull-4 {
    right: 33.3333333333%;
  }
  .col-xs-5 {
    width: 41.6666666667%;
  }
  .col-xs-push-5 {
    left: 41.6666666667%;
  }
  .col-xs-pull-5 {
    right: 41.6666666667%;
  }
  .col-xs-6 {
    width: 50%;
  }
  .col-xs-push-6 {
    left: 50%;
  }
  .col-xs-pull-6 {
    right: 50%;
  }
  .col-xs-7 {
    width: 58.3333333333%;
  }
  .col-xs-push-7 {
    left: 58.3333333333%;
  }
  .col-xs-pull-7 {
    right: 58.3333333333%;
  }
  .col-xs-8 {
    width: 66.6666666667%;
  }
  .col-xs-push-8 {
    left: 66.6666666667%;
  }
  .col-xs-pull-8 {
    right: 66.6666666667%;
  }
  .col-xs-9 {
    width: 75%;
  }
  .col-xs-push-9 {
    left: 75%;
  }
  .col-xs-pull-9 {
    right: 75%;
  }
  .col-xs-10 {
    width: 83.3333333333%;
  }
  .col-xs-push-10 {
    left: 83.3333333333%;
  }
  .col-xs-pull-10 {
    right: 83.3333333333%;
  }
  .col-xs-11 {
    width: 91.6666666667%;
  }
  .col-xs-push-11 {
    left: 91.6666666667%;
  }
  .col-xs-pull-11 {
    right: 91.6666666667%;
  }
  .col-xs-12 {
    width: 100%;
  }
  .col-xs-push-12 {
    left: 100%;
  }
  .col-xs-pull-12 {
    right: 100%;
  }
  .gutter-xs-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-xs-0 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  .gutter-xs-5 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-xs-5 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
  .gutter-xs-10 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-xs-10 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
/* =============================================================================
/* GRID HELPER
/* ============================================================================= */
@media all and (max-width: 1280px) {
  .hidden-xlg {
    display: none !important;
  }
  .visible-xlg {
    display: block !important;
  }
}
@media all and (max-width: 1024px) {
  .hidden-lg {
    display: none !important;
  }
  .visible-lg {
    display: block !important;
  }
}
@media all and (max-width: 768px) {
  .hidden-md {
    display: none !important;
  }
  .visible-md {
    display: block !important;
  }
}
@media all and (max-width: 667px) {
  .hidden-sm {
    display: none !important;
  }
  .visible-sm {
    display: block !important;
  }
}
@media all and (max-width: 414px) {
  .hidden-xs {
    display: none !important;
  }
  .visible-xs {
    display: block !important;
  }
}
/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* form
/* ============================================================================= */
.form {
  font-size: 16px;
  /* date */
  /* error-message */
  /* form-block */
}
.form__title {
  margin-bottom: 25px;
  margin-top: 30px;
}
.form__row {
  margin-bottom: 3px;
}
.form__control {
  display: block;
  width: 100%;
  padding: 0 0.3125em;
  height: 1.5625em;
  line-height: 2.1875;
  color: #464646;
  background-color: #f2f2f0;
  background-image: none;
  border: 1px solid transparent;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  /* invalid / valid */
}
.form__control[type=text] {
  padding-left: 0.625em;
}
.form__control:focus {
  border-color: #639982;
  outline: 0;
}
.form__control--auto-width {
  width: auto;
}
.form__control.hf-invalid, .form__control.hf-invalid:focus {
  border-color: #da4453;
}
.form__control.hf-valid, .form__control.hf-valid:focus {
  border-color: #8cc152;
}
.form__date-block {
  position: relative;
  display: inline-block;
  width: auto;
  padding: 0.3125em 0.625em 0.3125em 0.3125em;
  line-height: 2.1875;
  color: #464646;
  background-color: #efefef;
  background-image: none;
  border: 1px solid #efefef;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.form__date-control {
  border: none;
  max-width: none;
  height: 2.0625em;
  vertical-align: top;
  width: 6.25em;
  padding: 0 0.3125em;
  background: none;
}
.form__date-control.calendar-departure {
  margin-left: 10px;
}
.form .hf-warning {
  display: block;
  background: #da4453;
  color: #fff;
  padding: 0;
  z-index: 1;
  position: relative;
  font-size: 0.875em;
  line-height: 2;
  padding: 0 0.75em;
}
.form label, .form__label {
  padding-top: 0.3125em;
  display: inline-block;
  cursor: pointer;
}
.form__req:after {
  content: " *";
}
.form .form__block {
  position: relative;
  border-bottom: 1px dashed #639982;
  padding-bottom: 2.1875em;
  margin-bottom: 2.1875em;
  zoom: 1;
}

.form-number {
  width: 50px;
  display: inline-block;
}
.form-number__minus, .form-number__plus {
  border: none;
  padding: 0;
  margin: 0;
  background: #f9f9f9;
  outline: none;
  color: #464646;
  line-height: 1.5625;
  text-align: center;
  width: 30px;
}
.form-number__minus {
  border-right-width: 0;
}
.form-number__plus {
  border-left-width: 0;
}

.form-radiobutton-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.form-radiobutton-list li {
  margin: 0;
  position: relative;
  display: block;
}
.form-radiobutton-list label {
  padding: 0 0 0 1.25em;
}
.form-radiobutton-list input[type=radio] {
  position: absolute;
  top: 0.4375em;
  left: 0;
}

textarea.form__control {
  height: auto;
  min-height: 80px;
}

/* input-group */
label.input-group__addon {
  display: table-cell;
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555;
  text-align: center;
  background-color: #E6E9ED;
  border: 1px solid #aab2bd;
}
label.input-group__addon:last-child {
  border-left-width: 0;
}
label.input-group__addon:first-child {
  border-right-width: 0;
}

.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group .form__control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
}
.input-group .form__control:first-child, .input-group__addon:first-child {
  -webkit-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -webkit-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group .form__control:last-child, .input-group__addon:first-child {
  -webkit-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -webkit-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* checkboxes */
.form input[type=checkbox] {
  margin-right: 5px;
}

.form-checkbox-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.form-checkbox, .form-checkbox-list li {
  margin: 0;
  padding: 0 0 0 1.25em;
  position: relative;
}
.form-checkbox input[type=checkbox], .form-checkbox-list input[type=checkbox] {
  position: absolute;
  top: 0.4375em;
  left: 0;
}

/* block */
.form-separator {
  height: 1px;
  line-height: 1px;
  font-size: 1px;
  margin: 10px 0;
  background-color: #42434a;
}

.form-space {
  height: 2em;
  line-height: 1em;
  font-size: 0.625em;
  border: none;
  margin: 0;
  padding: 0;
}

/* found-site */
.checkbox-additional__textbox {
  visibility: hidden;
}
.checkbox-additional.js-visible .checkbox-additional__textbox {
  visibility: visible;
}

.form-interests ul {
  padding-left: 1.25em;
}

/* button */
.form .button.sending {
  display: none;
}

/* children */
.contact__child-age {
  display: none;
}
.contact__child-age input {
  width: 46px;
}

.contact__children-ages {
  display: none;
}

/* rooms */
.contact__rooms-block {
  margin-bottom: 10px;
  padding-bottom: 5px;
  position: relative;
}
.contact__rooms-block .close {
  display: none;
}
.contact__rooms-block--alternative {
  display: none;
}
.contact__rooms-block.js-visible {
  display: block;
}

.contact__room-type {
  display: none;
}
.contact__rooms-block--alternative .contact__room-type {
  display: block;
}

.contact__add-room-container {
  clear: left;
  text-align: right;
  position: relative;
  margin-bottom: 10px;
}

.contact__remove-room {
  display: none;
  z-index: 100;
  padding-right: 20px;
  color: #3b4043;
}
.contact__rooms-block--alternative .contact__remove-room {
  display: block;
}
.contact__remove-room:after {
  margin-left: 5px;
  content: "✕";
}
.contact__remove-room:hover {
  color: #151515;
}

/* rooms-detail */
.rooms-contact {
  padding: 1em;
  background: #f2f2f2;
}
.rooms-contact__main-image {
  margin-bottom: 10px;
}
.rooms-contact__infos {
  font-weight: bold;
}
.rooms-contact__more {
  margin-top: 10px;
  margin-top: 0.625rem;
}
.rooms-contact__name {
  font-size: 23px;
  font-size: 1.4375rem;
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}

/* =============================================================================
/* custom-checkbox
/* ============================================================================= */
.form__custom-checkbox {
  padding-left: 0;
  position: relative;
}
.form__custom-checkbox input {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
}
.form__custom-checkbox label:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 1px 16px 0 1px;
  border: none;
  background-color: #f2f2f0;
  vertical-align: top;
  -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
}
.form__custom-checkbox input:checked ~ label:before, .form__custom-checkbox--active label:before {
  background: #639982;
}

/* =============================================================================
/* custom-checkbox
/* ============================================================================= */
.form__custom-radio {
  padding-left: 0;
  position: relative;
}
.form__custom-radio input {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
}
.form__custom-radio label {
  padding-left: 0;
}
.form__custom-radio label:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 1px 16px 0 1px;
  border: none;
  background-color: #f2f2f0;
  vertical-align: top;
  -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.form__custom-radio input:checked ~ label:before, .form__custom-radio--active label:before {
  background: #639982;
}

.module-item-contact {
  padding: 1em;
  background: #f2f2f2;
}
.module-item-contact__infos {
  font-weight: bold;
}
.module-item-contact__images img {
  width: 100%;
  height: auto;
  display: block;
}
.module-item-contact__more {
  margin-top: 10px;
  margin-top: 0.625rem;
}
.module-item-contact__name {
  font-size: 23px;
  font-size: 1.4375rem;
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}
.module-item-contact__price {
  margin-top: 20px;
  font-weight: bold;
}

.calendar-range input {
  z-index: 1;
}
.calendar-range label {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* PAGER
/* ============================================================================= */
.pager {
  text-align: left;
  font-size: 0;
}

.pager__link {
  font-size: 15px;
  width: 34px;
  display: inline-block;
  padding: 0;
  text-align: center;
  background: #fff;
  color: #2a2b2f;
  text-decoration: none;
  line-height: 34px;
}
.pager__link:hover {
  background-color: #81ae9b;
  color: #fff;
  text-decoration: none;
}
.pager__link.active {
  background-color: #639982;
  color: #fff;
}
.pager__link.inactive {
  color: #42434a;
}

.pager__link.inactive:hover,
.pager__link.active.inactive:hover {
  background-color: #5a5b65;
}

.pager__info {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  color: #393939;
}

/* =============================================================================
/* SITEMAP
/* ============================================================================= */
.sitemap a {
  display: block;
}

.sitemap ul {
  padding-left: 30px;
}

.sitemap ul a {
  font-weight: bold;
}

.sitemap ul ul a {
  font-weight: normal;
}

.sitemap ul ul ul a {
  font-style: italic;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* AJAX
/* ============================================================================= */
.ajax-container {
  position: relative;
}

.ajax-container .loading-continuous {
  text-align: center;
}

.ajax-loading {
  position: absolute;
  left: 0;
  top: 0;
  display: none;
  z-index: 20;
  width: 100%;
  height: 100%;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.5);
}

.ajax-loading .loading {
  position: absolute;
  top: 21%;
  left: 50%;
  margin-left: -11px;
  margin-top: -16px;
  font-size: 140%;
  font-weight: bold;
  text-align: center;
  z-index: 1000;
}

.loading-flower {
  width: 76px;
  height: 79px;
  position: relative;
  overflow: hidden;
  margin: 0 auto 10px;
  outline: none;
  pointer-events: none;
}
.loading-flower > i {
  position: absolute;
  display: block;
  z-index: 50;
  opacity: 0;
  -webkit-animation: animateFlower 2s infinite ease-in-out 0.3s;
  -moz-animation: animateFlower 2s infinite ease-in-out 0.3s;
  animation: animateFlower 2s infinite ease-in-out 0.3s;
}
.loading-flower i:nth-child(1) {
  background: url(/media/logo-flower.png) -160px -80px;
  width: 23px;
  height: 27px;
  left: 27px;
  top: 21px;
  z-index: 100;
  opacity: 1;
  -webkit-animation: animateFlowerCenter 2s infinite ease-in-out 0.3s;
  -moz-animation: animateFlowerCenter 2s infinite ease-in-out 0.3s;
  animation: animateFlowerCenter 2s infinite ease-in-out 0.3s;
}
.loading-flower i:nth-child(2) {
  background: url(/media/logo-flower.png) 0 0;
  width: 14px;
  height: 26px;
  left: 24px;
  top: 0px;
  -webkit-transform-origin: 35% 100%;
  -moz-transform-origin: 35% 100%;
  -ms-transform-origin: 35% 100%;
  -o-transform-origin: 35% 100%;
  transform-origin: 35% 100%;
}
.loading-flower i:nth-child(3) {
  background: url(/media/logo-flower.png) -40px 0;
  width: 12px;
  height: 20px;
  left: 33px;
  top: 6px;
  -webkit-transform-origin: 35% 100%;
  -moz-transform-origin: 35% 100%;
  -ms-transform-origin: 35% 100%;
  -o-transform-origin: 35% 100%;
  transform-origin: 35% 100%;
}
.loading-flower i:nth-child(4) {
  background: url(/media/logo-flower.png) -80px 0;
  width: 20px;
  height: 26px;
  left: 39px;
  top: 1px;
  -webkit-transform-origin: 12% 100%;
  -moz-transform-origin: 12% 100%;
  -ms-transform-origin: 12% 100%;
  -o-transform-origin: 12% 100%;
  transform-origin: 12% 100%;
}
.loading-flower i:nth-child(5) {
  background: url(/media/logo-flower.png) -120px 0;
  width: 32px;
  height: 12px;
  left: 45px;
  top: 22px;
  -webkit-transform-origin: 0% 50%;
  -moz-transform-origin: 0% 50%;
  -ms-transform-origin: 0% 50%;
  -o-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
}
.loading-flower i:nth-child(6) {
  background: url(/media/logo-flower.png) -160px 0;
  width: 36px;
  height: 22px;
  left: 46px;
  top: 32px;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -o-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}
.loading-flower i:nth-child(7) {
  background: url(/media/logo-flower.png) 0 -40px;
  width: 24px;
  height: 16px;
  left: 42px;
  top: 41px;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -o-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}
.loading-flower i:nth-child(8) {
  background: url(/media/logo-flower.png) -40px -40px;
  width: 33px;
  height: 35px;
  left: 40px;
  top: 42px;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -o-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}
.loading-flower i:nth-child(9) {
  background: url(/media/logo-flower.png) -80px -40px;
  width: 15px;
  height: 34px;
  left: 38px;
  top: 43px;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -o-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}
.loading-flower i:nth-child(10) {
  background: url(/media/logo-flower.png) -120px -40px;
  width: 15px;
  height: 39px;
  left: 27px;
  top: 43px;
  -webkit-transform-origin: 60% 0%;
  -moz-transform-origin: 60% 0%;
  -ms-transform-origin: 60% 0%;
  -o-transform-origin: 60% 0%;
  transform-origin: 60% 0%;
}
.loading-flower i:nth-child(11) {
  background: url(/media/logo-flower.png) -160px -40px;
  width: 31px;
  height: 32px;
  left: 8px;
  top: 38px;
  -webkit-transform-origin: 100% 0%;
  -moz-transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  -o-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}
.loading-flower i:nth-child(12) {
  background: url(/media/logo-flower.png) 0px -80px;
  width: 29px;
  height: 18px;
  left: 1px;
  top: 36px;
  -webkit-transform-origin: 100% 0%;
  -moz-transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  -o-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}
.loading-flower i:nth-child(13) {
  background: url(/media/logo-flower.png) -40px -80px;
  width: 23px;
  height: 10px;
  left: 12px;
  top: 29px;
  -webkit-transform-origin: 100% 50%;
  -moz-transform-origin: 100% 50%;
  -ms-transform-origin: 100% 50%;
  -o-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}
.loading-flower i:nth-child(14) {
  background: url(/media/logo-flower.png) -80px -80px;
  width: 29px;
  height: 16px;
  left: 5px;
  top: 16px;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  -o-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}
.loading-flower i:nth-child(15) {
  background: url(/media/logo-flower.png) -120px -80px;
  width: 13px;
  height: 15px;
  left: 22px;
  top: 15px;
  z-index: 10;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  -o-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

@-webkit-keyframes animateFlower {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
}
@-moz-keyframes animateFlower {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
}
@keyframes animateFlower {
  0% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(0) scale(1);
    -moz-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    -o-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: rotate(-90deg) scale(0);
    -moz-transform: rotate(-90deg) scale(0);
    -ms-transform: rotate(-90deg) scale(0);
    -o-transform: rotate(-90deg) scale(0);
    transform: rotate(-90deg) scale(0);
  }
}
@-webkit-keyframes animateFlowerCenter {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes animateFlowerCenter {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes animateFlowerCenter {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* -----------------------------------------------------------------------------
/* link styles
/* ----------------------------------------------------------------------------- */
a {
  color: #639982;
  text-decoration: none;
}
a:focus, a:hover {
  color: #f3a0a0;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* TYPO
/* ============================================================================= */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .title-big, .title-medium, .title-small {
  font-family: inherit;
  font-weight: 500;
  line-height: 1;
  color: inherit;
}

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small,
h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small, .title-big small,
.title-medium small, .title-small small {
  font-weight: normal;
  line-height: 1;
  color: #606060;
}

h1, .h1, h2, .h2, h3, .h3, .title-big, .title-medium, .title-small {
  margin-top: 20px;
  margin-bottom: 10px;
}

h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h1 .small, .h1 .small, h2 .small, .h2 .small, h3 .small, .h3 .small, .title-big small, .title-medium small, .title-small small {
  font-size: 65%;
}

h4, .h4, h5, .h5, h6, .h6, .title-big, .title-medium, .title-small {
  margin-top: 10px;
  margin-bottom: 10px;
}

h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small, h4 .small, .h4 .small, h5 .small, .h5 .small, h6 .small, .h6 .small, .title-big small, .title-medium small, .title-small small {
  font-size: 75%;
}

h1, .h1 {
  font-size: 1.125em;
  line-height: 1.3888888889;
  color: #639982;
  letter-spacing: 0.2em;
  margin-top: 0;
  margin-bottom: 0;
  text-transform: uppercase;
  font-weight: 600;
}

h2, .h2, .title-big {
  font-size: 2.1875em;
  line-height: 1;
  margin-top: 0;
  font-weight: 600;
  margin-bottom: 0;
}
@media all and (max-width: 350px) {
  h2, .h2, .title-big {
    font-size: 1.875em;
  }
}

h3, .h3, .title-medium {
  font-size: 1.125em;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: #639982;
}

h4, .h4, .title-small {
  font-size: 1.125em;
}

h5, .h5 {
  font-size: 0.875em;
}

h6, .h6 {
  font-size: 0.75em;
}

small,
.small {
  font-size: 85%;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /*---------------------------------------------------
/* modal
/*---------------------------------------------------*/
.modal {
  position: absolute;
  top: 10px;
  left: 50%;
  -moz-transform: translateX(-50%) translateY(-100px);
  -ms-transform: translateX(-50%) translateY(-100px);
  -o-transform: translateX(-50%) translateY(-100px);
  -webkit-transform: translateX(-50%) translateY(-100px);
  transform: translateX(-50%) translateY(-100px);
  opacity: 0;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background: #fff;
  -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  padding: 10px;
  width: 70%;
  width: 70vw;
}
@media all and (max-width: 1280px) {
  .modal {
    width: 80%;
    width: 80vw;
  }
}
@media all and (max-width: 1024px) {
  .modal {
    width: 90%;
    width: 90vw;
    width: calc(100vw - 20px);
  }
}
.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  pointer-events: none;
}
.modal-container.modal--open {
  pointer-events: auto;
}
.modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(66, 67, 75, 0.7);
  opacity: 0;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.modal--open .modal-overlay {
  opacity: 1;
}
.modal iframe {
  border: none;
  width: 100%;
  height: 90%;
  height: 80vh;
  display: block;
  height: calc(74vh - 40px);
}
.modal__close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 30px;
  height: 30px;
  display: inline-block;
  color: #fff;
  background: #b71c07;
  text-align: center;
  line-height: 1;
  padding: 8px 10px;
}
.modal__close:hover {
  text-decoration: none;
  color: #fff;
  background: #e8290f;
}
.modal--open .modal {
  opacity: 1;
  -moz-transform: translateX(-50%) translateY(0);
  -ms-transform: translateX(-50%) translateY(0);
  -o-transform: translateX(-50%) translateY(0);
  -webkit-transform: translateX(-50%) translateY(0);
  transform: translateX(-50%) translateY(0);
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* base-module
/* ============================================================================= */
.base-item {
  margin-bottom: 23px;
  line-height: 1.3125;
}
.base-item__content {
  border-bottom: 1px dashed #639982;
  padding: 0 15px 30px;
}
@media all and (max-width: 41.6875em) {
  .base-item__content {
    padding-left: 0;
    padding-right: 0;
    padding-top: 15px;
  }
}
.base-item__name {
  font-size: 2.1875em;
  line-height: 1;
  color: #464646;
  display: block;
  font-weight: 600;
  margin-bottom: 5px;
}
.base-item__subtitle {
  font-size: 1.125em;
  line-height: 1.3888888889;
  font-weight: 600;
  color: #639982;
  letter-spacing: 0.06em;
  margin-bottom: 15px;
}
.base-item__description {
  font-style: italic;
  font-weight: 300;
}
.base-item__more {
  color: #f3a0a0;
}
.base-item__price {
  font-weight: bold;
  display: block;
  margin-top: 20px;
  color: #639982;
}

.base-module {
  margin-bottom: 85px;
  margin-bottom: 4.4736842105vw;
}
.base-module__inner {
  border-top: 1px dashed #639982;
  padding-top: 50px;
  max-width: 642px;
}
.base-module__container {
  background: #fff;
  padding: 25px 15px;
}
.base-module--has-sibling {
  margin-bottom: 0;
}
.base-module--has-sibling .base-module__container {
  padding-bottom: 25px;
}

.base-detail__main-content--two-columns {
  -moz-column-count: 2;
  -ms-column-count: 2;
  -webkit-column-count: 2;
  column-count: 2;
  -moz-column-gap: 10px;
  -ms-column-gap: 10px;
  -webkit-column-gap: 10px;
  column-gap: 10px;
}
@media all and (max-width: 48em) {
  .base-detail__main-content--two-columns {
    -moz-column-count: 1;
    -ms-column-count: 1;
    -webkit-column-count: 1;
    column-count: 1;
    -moz-column-gap: 0;
    -ms-column-gap: 0;
    -webkit-column-gap: 0;
    column-gap: 0;
  }
}

.base-detail-banner__content {
  position: absolute;
  bottom: 102px;
  bottom: 5.3684210526vw;
  left: 0;
  right: 0;
  z-index: 3;
  font-size: 60px;
  font-size: 3.1578947368vw;
  line-height: 1;
  color: #fff;
}
@media all and (max-width: 64em) {
  .base-detail-banner__content {
    font-size: 2.125em;
  }
}
.base-detail-banner__subtitle {
  font-weight: 600;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* baseAccordion
/* ============================================================================= */
.base-accordion {
  /*&__trigger:focus &__icon {
      -moz-box-shadow: 0 0 10px rgba($main-color,0.3);
      -webkit-box-shadow: 0 0 10px rgba($main-color,0.3);
      box-shadow: 0 0 10px rgba($main-color,0.3);
  }*/
}
.base-accordion__title {
  font-size: 2.1875em;
  line-height: 1;
  color: #639982;
  font-weight: 600;
  margin-bottom: 27px;
}
@media all and (max-width: 48em) {
  .base-accordion__title {
    font-size: 1.5em;
  }
}
.base-accordion__h2 {
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
.base-accordion__trigger {
  width: 100%;
  padding: 0;
  background: none;
  border: none;
  border-top: 1px dashed #639982;
  height: 80px;
  text-align: left;
  position: relative;
  outline: none;
  padding-right: 65px;
}
dt:first-child .base-accordion__trigger {
  border-top-width: 0;
}
.base-accordion__icon {
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 43px;
  height: 43px;
  display: block;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  padding: 5px;
  stroke: #639982;
}
[aria-expanded=true] .base-accordion__icon {
  -webkit-transform: translateY(-50%) rotate(-180deg);
  -moz-transform: translateY(-50%) rotate(-180deg);
  -ms-transform: translateY(-50%) rotate(-180deg);
  -o-transform: translateY(-50%) rotate(-180deg);
  transform: translateY(-50%) rotate(-180deg);
}
.base-accordion__trigger .base-accordion__title {
  color: #464646;
  margin-bottom: 0;
  font-weight: 300;
  letter-spacing: 0.08em;
}
.base-accordion__panel {
  -webkit-transition: height 0.3s ease-in-out;
  -moz-transition: height 0.3s ease-in-out;
  transition: height 0.3s ease-in-out;
  height: 0px;
  position: relative;
  overflow: hidden;
}
.base-accordion__panel[hidden] {
  display: block;
}

.accordion__inner {
  border-top: none;
  padding-top: 0;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* languages
/* ============================================================================= */
.languages {
  text-align: right;
  padding-right: 10px;
  color: #42434a;
  font-size: 14px;
}
.languages a {
  text-transform: uppercase;
  color: #42434a;
}
@media all and (max-width: 414px) {
  .languages {
    text-align: center;
    margin-bottom: 20px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /*---------------------------------------------------
/* googlemap
/*---------------------------------------------------*/
#routemap {
  height: 400px;
  position: relative;
  z-index: 10;
}

.routeplanner {
  position: relative;
}
.routeplanner__directions {
  display: none;
}
.routeplanner__form {
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  z-index: 100;
}
@media all and (max-width: 667px) {
  .routeplanner__form {
    position: relative;
    bottom: auto;
  }
}
.routeplanner__form .container-content {
  background: #fff;
  padding: 15px;
}
.routeplanner__form .button {
  line-height: 23px;
}
@media all and (max-width: 667px) {
  .routeplanner__form .button {
    margin-top: 15px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* flatpickr
/* ============================================================================= */
.flatpickr-calendar {
  background: transparent;
  opacity: 0;
  display: none;
  text-align: center;
  visibility: hidden;
  padding: 0;
  -webkit-animation: none;
  animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 307.875px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  -webkit-box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);
  box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 500px) {
  .flatpickr-calendar {
    position: fixed;
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-box-shadow: 0 0 1000px rgba(0, 0, 0, 0.7);
    box-shadow: 0 0 1000px rgba(0, 0, 0, 0.7);
  }
}

.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}

.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999;
}

.flatpickr-calendar.animate.open {
  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media all and (max-width: 500px) {
  .flatpickr-calendar.animate.open {
    -webkit-animation: none;
    animation: none;
  }
}

.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}

.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #eceef1;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-innerContainer {
  border-bottom: 0;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  border: 1px solid #eceef1;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}

.flatpickr-calendar:before,
.flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  left: 22px;
}

.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.rightMost:after {
  left: auto;
  right: 22px;
}

.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px;
}

.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  bottom: 100%;
}
@media all and (max-width: 500px) {
  .flatpickr-calendar.arrowTop:before,
  .flatpickr-calendar.arrowTop:after {
    display: none;
  }
}

.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #eceef1;
}

.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #eceef1;
}

.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
  top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
  border-top-color: #eceef1;
}

.flatpickr-calendar.arrowBottom:after {
  border-top-color: #eceef1;
}

.flatpickr-calendar:focus {
  outline: 0;
}

.flatpickr-wrapper {
  position: relative;
  display: inline-block;
}

.flatpickr-months {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.flatpickr-months .flatpickr-month {
  border-radius: 5px 5px 0 0;
  background: #eceef1;
  color: #5a6171;
  fill: #5a6171;
  height: 28px;
  line-height: 1;
  text-align: center;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0px;
  line-height: 16px;
  height: 28px;
  padding: 10px;
  z-index: 3;
  color: #5a6171;
  fill: #5a6171;
}

.flatpickr-months .flatpickr-prev-month.disabled,
.flatpickr-months .flatpickr-next-month.disabled {
  display: none;
}

.flatpickr-months .flatpickr-prev-month i,
.flatpickr-months .flatpickr-next-month i {
  position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
  /*
    /*rtl:begin:ignore*/
  /*
    */
  left: 0;
  /*
    /*rtl:end:ignore*/
  /*
    */
}

/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
  /*
    /*rtl:begin:ignore*/
  /*
    */
  right: 0;
  /*
    /*rtl:end:ignore*/
  /*
    */
}

/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: #bbb;
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
  fill: #639982;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
  width: 14px;
  height: 14px;
}

.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path {
  -webkit-transition: fill 0.1s;
  transition: fill 0.1s;
  fill: inherit;
}

.numInputWrapper {
  position: relative;
  height: auto;
}

.numInputWrapper input,
.numInputWrapper span {
  display: inline-block;
}

.numInputWrapper input {
  width: 100%;
}

.numInputWrapper input::-ms-clear {
  display: none;
}

.numInputWrapper span {
  position: absolute;
  right: 0;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(72, 72, 72, 0.15);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.numInputWrapper span:hover {
  background: rgba(0, 0, 0, 0.1);
}

.numInputWrapper span:active {
  background: rgba(0, 0, 0, 0.2);
}

.numInputWrapper span:after {
  display: block;
  content: "";
  position: absolute;
}

.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(72, 72, 72, 0.6);
  top: 26%;
}

.numInputWrapper span.arrowDown {
  top: 50%;
}

.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(72, 72, 72, 0.6);
  top: 40%;
}

.numInputWrapper span svg {
  width: inherit;
  height: auto;
}

.numInputWrapper span svg path {
  fill: rgba(90, 97, 113, 0.5);
}

.numInputWrapper:hover {
  background: rgba(0, 0, 0, 0.05);
}

.numInputWrapper:hover span {
  opacity: 1;
}

.flatpickr-current-month {
  font-size: 135%;
  line-height: inherit;
  font-weight: 300;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 6.16px 0 0 0;
  line-height: 1;
  height: 28px;
  display: inline-block;
  text-align: center;
  -webkit-transform: translate3d(0px, 0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}

.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
  background: rgba(0, 0, 0, 0.05);
}

.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  width: 7ch\0 ;
  display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: #5a6171;
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: #5a6171;
}

.flatpickr-current-month input.cur-year {
  background: transparent;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  cursor: text;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: initial;
}

.flatpickr-current-month input.cur-year:focus {
  outline: 0;
}

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(90, 97, 113, 0.5);
  background: transparent;
  pointer-events: none;
}

.flatpickr-weekdays {
  background: #eceef1;
  text-align: center;
  overflow: hidden;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

span.flatpickr-weekday {
  cursor: default;
  font-size: 90%;
  background: #eceef1;
  color: #5a6171;
  line-height: 1;
  margin: 0;
  text-align: center;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  font-weight: bolder;
}

.dayContainer,
.flatpickr-weeks {
  padding: 1px 0 0 0;
}

.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 307.875px;
  border-left: 1px solid #eceef1;
  border-right: 1px solid #eceef1;
}

.flatpickr-days:focus {
  outline: 0;
}

.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 307.875px;
  min-width: 307.875px;
  max-width: 307.875px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-transform: translate3d(0px, 0px, 0px);
  transform: translate3d(0px, 0px, 0px);
  opacity: 1;
}

.dayContainer + .dayContainer {
  -webkit-box-shadow: -1px 0 0 #eceef1;
  box-shadow: -1px 0 0 #eceef1;
}

.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #484848;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  -webkit-flex-basis: 14.2857143%;
  -ms-flex-preferred-size: 14.2857143%;
  flex-basis: 14.2857143%;
  max-width: 39px;
  height: 39px;
  line-height: 39px;
  margin: 0;
  display: inline-block;
  position: relative;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}

.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
  cursor: pointer;
  outline: 0;
  background: #e2e2e2;
  border-color: #e2e2e2;
}

.flatpickr-day.today {
  border-color: #bbb;
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
  border-color: #bbb;
  background: #bbb;
  color: #fff;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
  background: #639982;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #fff;
  border-color: #639982;
}

.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
  border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
  border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  -webkit-box-shadow: -10px 0 0 #639982;
  box-shadow: -10px 0 0 #639982;
}

.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
  border-radius: 50px;
}

.flatpickr-day.inRange {
  border-radius: 0;
  -webkit-box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;
  box-shadow: -5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;
}

.flatpickr-day.disabled,
.flatpickr-day.disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(72, 72, 72, 0.3);
  background: transparent;
  border-color: transparent;
  cursor: default;
}

.flatpickr-day.disabled,
.flatpickr-day.disabled:hover {
  cursor: not-allowed;
  color: rgba(72, 72, 72, 0.1);
}

.flatpickr-day.week.selected {
  border-radius: 0;
  -webkit-box-shadow: -5px 0 0 #639982, 5px 0 0 #639982;
  box-shadow: -5px 0 0 #639982, 5px 0 0 #639982;
}

.flatpickr-day.hidden {
  visibility: hidden;
}

.rangeMode .flatpickr-day {
  margin-top: 1px;
}

.flatpickr-weekwrapper {
  display: inline-block;
  float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  border-left: 1px solid #eceef1;
}

.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
  display: block;
  width: 100%;
  max-width: none;
  color: rgba(72, 72, 72, 0.3);
  background: transparent;
  cursor: default;
  border: none;
}

.flatpickr-innerContainer {
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid #eceef1;
}

.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.flatpickr-time {
  text-align: center;
  outline: 0;
  display: block;
  height: 0;
  line-height: 40px;
  max-height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  border-radius: 0 0 5px 5px;
}

.flatpickr-time:after {
  content: "";
  display: table;
  clear: both;
}

.flatpickr-time .numInputWrapper {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 40%;
  height: 40px;
  float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #484848;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #484848;
}

.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
  width: 49%;
}

.flatpickr-time input {
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  color: #484848;
  font-size: 14px;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.flatpickr-time input.flatpickr-hour {
  font-weight: bold;
}

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
  font-weight: 400;
}

.flatpickr-time input:focus {
  outline: 0;
  border: 0;
}

.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  height: inherit;
  display: inline-block;
  float: left;
  line-height: inherit;
  color: #484848;
  font-weight: bold;
  width: 2%;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
  background: #efefef;
}

.flatpickr-input[readonly] {
  cursor: pointer;
}

@-webkit-keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
span.flatpickr-day.selected {
  font-weight: bold;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* baseBox
/* ============================================================================= */
.base-box {
  margin-top: 157px;
  margin-top: 8.2631578947vw;
  margin-bottom: 157px;
  margin-bottom: 8.2631578947vw;
}
.base-box > .row {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
}
.base-box__container {
  background: #fff;
}
.base-box__title {
  color: #639982;
  line-height: 1.9444444444;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: 600;
}
.base-box__name, .base-box__subtitle {
  color: #464646;
  line-height: 1;
  font-size: 1.9444444444em;
  display: block;
}
.base-box__name {
  font-weight: 600;
  margin-bottom: 5px;
}
.base-box__subtitle {
  max-width: 250px;
}
.base-box__description {
  margin: 13px 0 14px;
}
.base-box__description a {
  color: #f3a0a0;
}
.base-box__description a:hover {
  color: #f3a0a0;
  text-decoration: underline;
}
.base-box__link-detail {
  color: #f3a0a0;
}
.base-box__button-detail {
  text-transform: uppercase;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* intro
/* ============================================================================= */
.intro {
  position: relative;
  overflow: hidden;
}
.intro__logo {
  display: block;
  margin: 0 auto 25px;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro__logo {
    margin-bottom: 20px;
    width: 135px;
    height: 135px;
  }
}
@media all and (max-width: 48em) {
  .intro__logo {
    margin-bottom: 0;
    width: 196px;
    height: 196px;
  }
}
.intro__open-nav-container {
  position: fixed;
  z-index: 200;
  top: 0;
  right: 0;
  left: 0;
  pointer-events: none;
}
.js-nav-in-view .intro__open-nav-container, .js-nav-fixed .intro__open-nav-container {
  display: none;
}
@media all and (max-width: 48em) {
  .intro__open-nav-container {
    display: none;
  }
}
.intro__open-nav {
  pointer-events: auto;
  float: right;
  margin-top: 25px;
  background: none;
  border: none;
  outline: none;
}
.intro__open-nav:before, .intro__open-nav:after {
  content: "";
}
.intro__open-nav:before, .intro__open-nav:after,
.intro__open-nav span {
  height: 3px;
  width: 25px;
  background: #32554b;
  display: block;
  margin-bottom: 3px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  position: relative;
}
.js-intro-nav-fixed .intro__open-nav span {
  opacity: 0;
}
.js-intro-nav-fixed .intro__open-nav:before {
  -webkit-transform: translateY(6px);
  -moz-transform: translateY(6px);
  -ms-transform: translateY(6px);
  -o-transform: translateY(6px);
  transform: translateY(6px);
}
.js-intro-nav-fixed .intro__open-nav:after {
  -webkit-transform: translateY(-6px);
  -moz-transform: translateY(-6px);
  -ms-transform: translateY(-6px);
  -o-transform: translateY(-6px);
  transform: translateY(-6px);
}
.js-intro-nav-open .intro__open-nav:before {
  -webkit-transform: translateY(6px) rotate(45deg);
  -moz-transform: translateY(6px) rotate(45deg);
  -ms-transform: translateY(6px) rotate(45deg);
  -o-transform: translateY(6px) rotate(45deg);
  transform: translateY(6px) rotate(45deg);
}
.js-intro-nav-open .intro__open-nav:after {
  -webkit-transform: translateY(-6px) rotate(-45deg);
  -moz-transform: translateY(-6px) rotate(-45deg);
  -ms-transform: translateY(-6px) rotate(-45deg);
  -o-transform: translateY(-6px) rotate(-45deg);
  transform: translateY(-6px) rotate(-45deg);
}

@media all and (max-width: 48em) {
  .intro-mobile {
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: all 0.6s ease-in-out;
    -moz-transition: all 0.6s ease-in-out;
    transition: all 0.6s ease-in-out;
    position: relative;
    display: block;
  }
  .js-mobile-animation .intro-mobile {
    -webkit-transform: rotateY(180deg) translateZ(0);
    -moz-transform: rotateY(180deg) translateZ(0);
    -ms-transform: rotateY(180deg) translateZ(0);
    -o-transform: rotateY(180deg) translateZ(0);
    transform: rotateY(180deg) translateZ(0);
  }
}
.intro-mobile img {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}
.intro-mobile__container {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: rotateY(-180deg);
  -moz-transform: rotateY(-180deg);
  transform: rotateY(-180deg);
  position: absolute;
  left: 0;
  top: 0;
  display: none;
  width: 195px;
  height: 195px;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media all and (max-width: 48em) {
  .intro-mobile__container {
    display: block;
  }
}
.intro-mobile__text {
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  background: none;
  border: 1px solid #464646;
  width: 138px;
  height: 138px;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -o-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  color: #464646;
  font-size: 1.375em;
  line-height: 1.0909090909;
}
.intro-mobile__text:before {
  content: "";
  width: 132px;
  height: 132px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid #639982;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  z-index: 1;
}
.intro-mobile__text-inner {
  color: #464646;
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  -o-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  width: 114px;
  height: 132px;
  text-align: center;
}
.intro-mobile__text-inner strong {
  display: block;
}
.intro-mobile__hr {
  margin: 5px auto;
  background: #639982;
  width: 25px;
  height: 1px;
  display: block;
}

.intro-bg {
  z-index: 1;
  position: relative;
  overflow: hidden;
}
.intro-bg__item {
  height: 100vh;
  height: calc(100vh - 100px);
}
@media all and (max-width: 48em) {
  .intro-bg__item {
    height: 100vh;
    height: calc(100vh - 104px);
  }
  .intro-bg__item:nth-child(n+3) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
  }
  .intro-bg__item:nth-child(1) {
    z-index: 100;
  }
  .intro-bg__item:nth-child(3) {
    top: -50%;
    -webkit-transform: skewY(-43deg) translateX(-100%) translateY(-100%);
    -moz-transform: skewY(-43deg) translateX(-100%) translateY(-100%);
    -ms-transform: skewY(-43deg) translateX(-100%) translateY(-100%);
    -o-transform: skewY(-43deg) translateX(-100%) translateY(-100%);
    transform: skewY(-43deg) translateX(-100%) translateY(-100%);
    border-bottom: 1px solid #fff;
  }
  .intro-bg__item:nth-child(3) img {
    -webkit-transform: skewY(43deg) translateY(50%);
    -moz-transform: skewY(43deg) translateY(50%);
    -ms-transform: skewY(43deg) translateY(50%);
    -o-transform: skewY(43deg) translateY(50%);
    transform: skewY(43deg) translateY(50%);
  }
  .intro-bg__item:nth-child(4) {
    top: 50%;
    -webkit-transform: skewY(-43deg) translateX(100%) translateY(100%);
    -moz-transform: skewY(-43deg) translateX(100%) translateY(100%);
    -ms-transform: skewY(-43deg) translateX(100%) translateY(100%);
    -o-transform: skewY(-43deg) translateX(100%) translateY(100%);
    transform: skewY(-43deg) translateX(100%) translateY(100%);
    border-top: 1px solid #fff;
  }
  .intro-bg__item:nth-child(4) img {
    -webkit-transform: skewY(43deg) translateY(-50%);
    -moz-transform: skewY(43deg) translateY(-50%);
    -ms-transform: skewY(43deg) translateY(-50%);
    -o-transform: skewY(43deg) translateY(-50%);
    transform: skewY(43deg) translateY(-50%);
  }
  .intro-bg__item:nth-child(2) {
    display: none;
  }
  .js-mobile-animation .intro-bg__item:nth-child(3) {
    -webkit-transform: skewY(-43deg) translateX(0) translateY(0);
    -moz-transform: skewY(-43deg) translateX(0) translateY(0);
    -ms-transform: skewY(-43deg) translateX(0) translateY(0);
    -o-transform: skewY(-43deg) translateX(0) translateY(0);
    transform: skewY(-43deg) translateX(0) translateY(0);
  }
  .js-mobile-animation .intro-bg__item:nth-child(4) {
    -webkit-transform: skewY(-43deg) translateX(0) translateY(0);
    -moz-transform: skewY(-43deg) translateX(0) translateY(0);
    -ms-transform: skewY(-43deg) translateX(0) translateY(0);
    -o-transform: skewY(-43deg) translateX(0) translateY(0);
    transform: skewY(-43deg) translateX(0) translateY(0);
  }
}
.intro-bg img {
  width: 100%;
  height: auto;
  display: block;
}

@supports (-o-object-fit: cover) {
  .intro-bg img {
    height: 100%;
    -o-object-fit: cover;
  }
}
@supports (object-fit: cover) {
  .intro-bg img {
    height: 100%;
    object-fit: cover;
  }
}
.intro-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  overflow: hidden;
  pointer-events: none;
}
.intro-text .container-outer {
  top: 50%;
}
.intro-text.is-fixed {
  position: fixed;
}
@media all and (max-width: 48em) {
  .intro-text.is-fixed {
    position: absolute;
  }
}
.intro-text__container {
  position: absolute;
  top: 50%;
  left: 0;
  width: 530px;
  background: #fff;
  height: 620px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: left 0.3s ease-in-out, height 0.3s ease-in-out, margin-left 0.3s ease-in-out;
  -moz-transition: left 0.3s ease-in-out, height 0.3s ease-in-out, margin-left 0.3s ease-in-out;
  transition: left 0.3s ease-in-out, height 0.3s ease-in-out, margin-left 0.3s ease-in-out;
  overflow: hidden;
  text-align: center;
  padding: 20px 26px 0;
  font-size: 1em;
  pointer-events: auto;
}
.intro--en .intro-text__container, .intro--it .intro-text__container {
  height: 535px;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text__container {
    height: 535px;
  }
}
@media all and (max-width: 960px) {
  .intro-text__container {
    left: 15px;
  }
}
@media all and (max-width: 48em) {
  .intro-text__container {
    background: none;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    left: 50%;
    height: auto;
    width: auto;
    padding: 0;
    overflow: visible;
  }
}
.intro-text.is-bottom {
  position: absolute;
  top: auto;
  bottom: 0;
}
@media all and (max-width: 48em) {
  .intro-text.is-bottom {
    position: absolute;
    top: 0;
    bottom: 0;
  }
}
.intro-text--right .intro-text__container {
  left: 100%;
  margin-left: -400px;
  height: 630px;
  padding-top: 0;
}
@media all and (max-width: 1300px) {
  .intro-text--right .intro-text__container {
    margin-left: -538px;
  }
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text--right .intro-text__container {
    height: 535px;
  }
}
@media all and (max-width: 960px) {
  .intro-text--right .intro-text__container {
    margin-left: -545px;
  }
}
@media all and (max-width: 48em) {
  .intro-text--right .intro-text__container {
    margin-left: 0;
    left: 50%;
    padding-top: 0;
    height: auto;
  }
}
.intro-text__item {
  height: 630px;
  padding-top: 0;
  position: relative;
}
.intro--en .intro-text__item, .intro--it .intro-text__item {
  height: 545px;
}
.intro-text__item:first-child {
  height: 630px;
  padding-top: 35px;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text__item {
    height: 535px;
  }
  .intro-text__item:first-child {
    height: 535px;
  }
}
@media all and (max-width: 48em) {
  .intro-text__item {
    height: auto;
  }
  .intro-text__item:first-child {
    height: auto;
    padding-top: 0;
  }
  .intro-text__item:nth-child(n+2) {
    display: none;
  }
}
.intro-text__inner {
  position: relative;
  top: 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media all and (max-width: 48em) {
  .intro-text__inner {
    top: 0 !important;
  }
}
.intro-text__image {
  margin-bottom: 15px;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text__image {
    width: 135px;
    height: auto;
  }
}
.intro-text__name {
  font-size: 1.875em;
  line-height: 1;
  font-weight: 600;
  display: block;
  margin-bottom: 15px;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text__name {
    font-size: 1.25em;
  }
}
@media all and (max-width: 48em) {
  .intro-text__name {
    display: none;
  }
}
.intro-text__name-secondline {
  display: block;
  font-weight: 300;
}
@media all and (max-width: 48em) {
  .intro-text__name-secondline {
    display: none;
  }
}
.intro-text__scroll-down {
  margin: 15px auto 0;
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
}
.intro-text__scroll-down svg {
  width: 18px;
  height: 39px;
  stroke: #fff;
}
@media all and (max-width: 48em) {
  .intro-text__scroll-down {
    position: absolute;
    margin-top: 0;
    left: 50%;
    top: 150%;
    display: block;
    -webkit-transform: translateX(-50%) translateZ(0);
    -moz-transform: translateX(-50%) translateZ(0);
    -ms-transform: translateX(-50%) translateZ(0);
    -o-transform: translateX(-50%) translateZ(0);
    transform: translateX(-50%) translateZ(0);
  }
  .intro-text__scroll-down:before {
    display: none;
  }
  .intro-text__scroll-down svg {
    stroke: #639982;
    width: 25px;
    height: 21px;
  }
  .js-mobile-animation .intro-text__scroll-down svg {
    stroke: #fff;
  }
}
.intro-text--right .intro-text__scroll-down {
  margin-left: 10px;
}
.intro-text__description {
  text-align: left;
}
@media all and (max-width: 68.75em), all and (max-height: 46.875em) {
  .intro-text__description {
    font-size: 1;
  }
}
.intro-text__description a {
  display: inline-block;
  padding: 0 0.3333333333em;
  margin-bottom: 0;
  font-size: 0.9375em;
  font-weight: normal;
  line-height: 1.6666666667;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  color: #fff;
  background-color: #639982;
  border-color: #639982;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
  margin-right: 5px;
}
.intro-text__description a:hover, .intro-text__description a:focus, .intro-text__description a:active {
  color: #fff;
  background-color: #32554b;
  border-color: #32554b;
}
.intro-text__description a:hover, .intro-text__description a:focus {
  text-decoration: none;
}
@media all and (max-width: 48em) {
  .intro-text__description {
    display: none;
  }
}
.intro-text__brixencard {
  position: absolute;
  top: -20px;
  right: -26px;
  color: #fff;
  width: 200px;
  height: 200px;
  overflow: hidden;
}
.intro-text__brixencard:before {
  content: "";
  -webkit-transform: rotate(42deg);
  -moz-transform: rotate(42deg);
  -ms-transform: rotate(42deg);
  -o-transform: rotate(42deg);
  transform: rotate(42deg);
  background: #639982;
  position: absolute;
  top: -82px;
  right: -117px;
  z-index: 50;
  width: 292px;
  height: 200px;
}
.intro-text__brixencard a {
  display: block;
  position: relative;
  color: #fff;
  -webkit-transform: rotate(42deg);
  -moz-transform: rotate(42deg);
  -ms-transform: rotate(42deg);
  -o-transform: rotate(42deg);
  transform: rotate(42deg);
  z-index: 100;
  padding-left: 91px;
  font-size: 21px;
  text-align: center;
}
@media all and (max-width: 48em) {
  .intro-text__brixencard {
    display: none;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* offers
/* ============================================================================= */
.offers-box {
  position: absolute;
  top: -193px;
  left: 0;
  z-index: 200;
  font-size: 1.125em;
  -webkit-transform: rotate(-45deg) translateZ(0);
  -moz-transform: rotate(-45deg) translateZ(0);
  -ms-transform: rotate(-45deg) translateZ(0);
  -o-transform: rotate(-45deg) translateZ(0);
  transform: rotate(-45deg) translateZ(0);
}
@media all and (max-width: 48em) {
  .offers-box {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -o-transform-origin: 100% 0;
    transform-origin: 100% 0;
  }
}
.offers-box__mobile-link {
  display: none;
  text-align: center;
  color: #fff;
  font-size: 1.125em;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  padding-top: 10px;
}
.offers-box__mobile-link:active, .offers-box__mobile-link:focus, .offers-box__mobile-link:hover {
  text-decoration: none;
  color: #fff;
}
@media all and (max-width: 48em) {
  .offers-box__mobile-link {
    display: block;
  }
}
.offers-box__content {
  background: #639982;
  width: 350px;
  height: 350px;
  position: relative;
  margin-bottom: 13px;
}
@media all and (max-width: 48em) {
  .offers-box__content {
    margin-bottom: 0;
    width: 300px;
    height: 200px;
  }
}
.offers-box__image-container {
  font-size: 0;
}
@media all and (max-width: 48em) {
  .offers-box__image-container {
    display: none;
  }
}
.offers-box__image {
  display: inline-block;
  vertical-align: top;
  position: relative;
  overflow: hidden;
  width: 110px;
  height: 110px;
  margin-right: 13px;
}
.offers-box__image img {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -moz-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -ms-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -o-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
  display: block;
}
.offers-box__content-inner {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 20px;
  color: #fff;
}
@media all and (max-width: 48em) {
  .offers-box__content-inner {
    display: none;
  }
}
.offers-box__name {
  font-size: 1.3888888889em;
  color: #fff;
  max-width: 175px;
  display: block;
  line-height: 1;
  margin-bottom: 20px;
}
.offers-box__show-offer {
  color: #fff;
  text-decoration: underline;
  font-size: 20px;
}
.offers-box__button:before {
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -o-transform: none;
  transform: none;
  left: 0;
  top: 0;
}
.offers-box__button svg {
  width: 18px;
  height: 22px;
  fill: #fff;
  stroke: none;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.offers-box-slide__container {
  padding: 15px 15px 27px;
}
.offers-box-slide__button {
  text-transform: uppercase;
}
.offers-box-slide__title {
  margin-bottom: 25px;
}
.offers-box-slide .base-item:nth-last-child(2) .base-item__content {
  border-bottom: none;
}

.offer-item__more {
  margin-top: 10px;
}

.offers-detail__h2 {
  font-size: 15px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* menuMain
/* ============================================================================= */
@-webkit-keyframes navMainButtonFloat {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(-10px);
    -moz-transform: rotate(90deg) translateX(-10px);
    -ms-transform: rotate(90deg) translateX(-10px);
    -o-transform: rotate(90deg) translateX(-10px);
    transform: rotate(90deg) translateX(-10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
@-moz-keyframes navMainButtonFloat {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(-10px);
    -moz-transform: rotate(90deg) translateX(-10px);
    -ms-transform: rotate(90deg) translateX(-10px);
    -o-transform: rotate(90deg) translateX(-10px);
    transform: rotate(90deg) translateX(-10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
@keyframes navMainButtonFloat {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(-10px);
    -moz-transform: rotate(90deg) translateX(-10px);
    -ms-transform: rotate(90deg) translateX(-10px);
    -o-transform: rotate(90deg) translateX(-10px);
    transform: rotate(90deg) translateX(-10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
@-webkit-keyframes navMainButtonFloatUp {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(10px);
    -moz-transform: rotate(90deg) translateX(10px);
    -ms-transform: rotate(90deg) translateX(10px);
    -o-transform: rotate(90deg) translateX(10px);
    transform: rotate(90deg) translateX(10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
@-moz-keyframes navMainButtonFloatUp {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(10px);
    -moz-transform: rotate(90deg) translateX(10px);
    -ms-transform: rotate(90deg) translateX(10px);
    -o-transform: rotate(90deg) translateX(10px);
    transform: rotate(90deg) translateX(10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
@keyframes navMainButtonFloatUp {
  0% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
  50% {
    -webkit-transform: rotate(90deg) translateX(10px);
    -moz-transform: rotate(90deg) translateX(10px);
    -ms-transform: rotate(90deg) translateX(10px);
    -o-transform: rotate(90deg) translateX(10px);
    transform: rotate(90deg) translateX(10px);
  }
  100% {
    -webkit-transform: rotate(90deg) translateX(0);
    -moz-transform: rotate(90deg) translateX(0);
    -ms-transform: rotate(90deg) translateX(0);
    -o-transform: rotate(90deg) translateX(0);
    transform: rotate(90deg) translateX(0);
  }
}
.nav-main {
  background: #fff;
  border-bottom: 1px solid #000;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  height: 100px;
  z-index: 1000;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}
.nav-main__logo-container {
  position: relative;
  overflow: hidden;
  height: 100px;
  text-align: center;
}
@media all and (max-width: 48em) {
  .nav-main__logo-container {
    height: 70px;
  }
  .js-nav-open .nav-main__logo-container {
    height: 50px;
  }
}
.nav-main__phone {
  display: none;
  position: absolute;
  left: 26px;
  top: 20px;
  z-index: 100;
}
.nav-main__phone svg {
  fill: #32554b;
  width: 26px;
  height: 26px;
}
@media all and (max-width: 48em) {
  .nav-main__phone {
    display: block;
  }
}
.nav-main__mail {
  display: none;
  position: absolute;
  left: 69px;
  top: 8px;
  z-index: 100;
  font-size: 45px;
  color: #457567;
  opacity: 0.9;
  line-height: 1;
}
.nav-main__mail:hover, .nav-main__mail:focus, .nav-main__mail:active {
  color: #ed7373;
  text-decoration: none;
}
@media all and (max-width: 48em) {
  .nav-main__mail {
    display: block;
  }
}
.nav-main__logo-link {
  display: inline-block;
  margin: 11px auto 0;
}
@media all and (max-width: 48em) {
  .nav-main__logo-link {
    margin-top: 0;
  }
}
.nav-main__logo {
  max-width: 100%;
  height: auto;
  display: block;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}
.js-naviga-active .nav-main__logo {
  -webkit-transform: translateZ(0) translateY(58px);
  -moz-transform: translateZ(0) translateY(58px);
  -ms-transform: translateZ(0) translateY(58px);
  -o-transform: translateZ(0) translateY(58px);
  transform: translateZ(0) translateY(58px);
}
@media all and (max-width: 48em) {
  .nav-main__logo {
    width: 45px;
    margin-top: 17px;
  }
  .js-naviga-active .nav-main__logo {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
  }
  .js-nav-open .nav-main__logo {
    width: 100px;
  }
}
.nav-main:after {
  content: "";
  position: absolute;
  bottom: 3px;
  height: 1px;
  background: #639982;
  z-index: 1;
  width: 100%;
}
.nav-main__open-nav {
  display: none;
  pointer-events: auto;
  margin-top: 25px;
  background: none;
  border: none;
  outline: none;
  position: absolute;
  right: 26px;
  top: 0;
  z-index: 1000;
  padding: 0;
}
@media all and (max-width: 48em) {
  .nav-main__open-nav {
    display: block;
  }
}
.nav-main__open-nav:before, .nav-main__open-nav:after {
  content: "";
}
.nav-main__open-nav:before, .nav-main__open-nav:after,
.nav-main__open-nav span {
  height: 3px;
  width: 25px;
  background: #32554b;
  display: block;
  margin-bottom: 3px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  position: relative;
}
.js-nav-open .nav-main__open-nav span {
  opacity: 0;
}
.js-nav-open .nav-main__open-nav:before {
  -webkit-transform: translateY(6px);
  -moz-transform: translateY(6px);
  -ms-transform: translateY(6px);
  -o-transform: translateY(6px);
  transform: translateY(6px);
}
.js-nav-open .nav-main__open-nav:after {
  -webkit-transform: translateY(-6px);
  -moz-transform: translateY(-6px);
  -ms-transform: translateY(-6px);
  -o-transform: translateY(-6px);
  transform: translateY(-6px);
}
.js-nav-open .nav-main__open-nav:before {
  -webkit-transform: translateY(6px) rotate(45deg);
  -moz-transform: translateY(6px) rotate(45deg);
  -ms-transform: translateY(6px) rotate(45deg);
  -o-transform: translateY(6px) rotate(45deg);
  transform: translateY(6px) rotate(45deg);
}
.js-nav-open .nav-main__open-nav:after {
  -webkit-transform: translateY(-6px) rotate(-45deg);
  -moz-transform: translateY(-6px) rotate(-45deg);
  -ms-transform: translateY(-6px) rotate(-45deg);
  -o-transform: translateY(-6px) rotate(-45deg);
  transform: translateY(-6px) rotate(-45deg);
}
@media all and (max-width: 48em) {
  .nav-main {
    position: fixed;
    top: 0;
    bottom: auto;
    height: 70px;
  }
  .js-intro-nav-fixed .nav-main {
    bottom: auto;
    top: 0;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
  }
  .intro + .nav-main__container .nav-main {
    background: none;
    border-bottom-color: transparent;
    -webkit-transition: background 0.6s ease-in-out 0.6s, border-bottom-color 0.6s ease-in-out 0.8s;
    -moz-transition: background 0.6s ease-in-out 0.6s, border-bottom-color 0.6s ease-in-out 0.8s;
    transition: background 0.6s ease-in-out 0.6s, border-bottom-color 0.6s ease-in-out 0.8s;
  }
  .intro + .nav-main__container .nav-main:after {
    background: transparent;
    -webkit-transition: background 0.6s ease-in-out 0.8s;
    -moz-transition: background 0.6s ease-in-out 0.8s;
    transition: background 0.6s ease-in-out 0.8s;
  }
  .intro + .nav-main__container .nav-main__phone, .intro + .nav-main__container .nav-main__logo {
    opacity: 0;
    -webkit-transition: opacity 0.6s ease-in-out 0.8s;
    -moz-transition: opacity 0.6s ease-in-out 0.8s;
    transition: opacity 0.6s ease-in-out 0.8s;
  }
  .intro.js-mobile-animation + .nav-main__container .nav-main {
    background: #fff;
    border-bottom-color: #000;
  }
  .intro.js-mobile-animation + .nav-main__container .nav-main:after {
    background: #639982;
  }
  .intro.js-mobile-animation + .nav-main__container .nav-main__phone, .intro.js-mobile-animation + .nav-main__container .nav-main__logo {
    opacity: 1;
  }
  .js-nav-open .intro.js-mobile-animation + .nav-main__container .nav-main, .js-nav-open .nav-main {
    border-bottom-color: transparent;
  }
  .js-nav-open .intro.js-mobile-animation + .nav-main__container .nav-main:after, .js-nav-open .nav-main:after {
    background: none;
  }
}
.nav-main .container-outer {
  z-index: 2;
}
@media all and (max-width: 1280px) {
  .nav-main .container-outer {
    max-width: none;
  }
}
.nav-main__dropdown-container {
  position: static;
  text-align: left;
}
@media all and (max-width: 1024px) {
  .nav-main__dropdown-container {
    margin-left: 0%;
  }
}
@media all and (max-width: 48em) {
  .nav-main__dropdown-container {
    position: absolute;
    margin-left: 0;
    top: 70px;
    left: 0;
    right: 0;
    height: calc(100vh - 70px);
    background: #f2f2f0;
    display: none;
    overflow-x: hidden;
    overflow-y: auto;
  }
  .js-nav-open .nav-main__dropdown-container {
    display: block;
  }
}
.nav-main__container {
  position: relative;
  height: 100px;
  width: 100%;
}
@media all and (max-width: 48em) {
  .nav-main__container {
    height: 104px;
    background: #fff;
  }
}
.nav-main__dropdown {
  margin: 0;
  padding: 0 0 0 9px;
  list-style: none;
}
@media all and (max-width: 60em) {
  .nav-main__dropdown {
    padding-left: 0;
  }
}
.nav-main__flyout-0 {
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 100%;
  right: 0;
  opacity: 0;
  -webkit-transition: all 0.6s ease-in-out;
  -moz-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
  max-height: calc(100vh - 110px);
  overflow-x: hidden;
  overflow-y: auto;
}
.js-naviga-open .nav-main__flyout-0 {
  display: block;
  pointer-events: auto;
  opacity: 1;
}
.nav-main__flyout-0 .container {
  max-width: 740px;
}
.js-intro-nav-open .nav-main__flyout-0 {
  top: auto;
  bottom: 100%;
}
@media all and (max-width: 48em) {
  .nav-main__flyout-0 {
    position: relative;
    top: auto;
    opacity: 1;
    display: none;
    max-height: none;
    overflow: auto;
  }
}
.nav-main__flyout-inner {
  margin-left: 8.33333%;
  background: #fff;
}
@media all and (max-width: 64em) {
  .nav-main__flyout-inner {
    margin-left: 0;
  }
}
.nav-main__level-0 {
  display: inline-block;
}
@media all and (max-width: 48em) {
  .nav-main__level-0 {
    display: block;
  }
}
.nav-main__menu-0 {
  font-size: 1.125em;
  padding: 0 9px;
  line-height: 5.5555555556;
  display: block;
  text-transform: uppercase;
  color: #464646;
  letter-spacing: 0.06em;
  font-weight: 600;
  position: relative;
}
@media all and (max-width: 60em) {
  .nav-main__menu-0 {
    padding: 0 10px;
  }
}
@media all and (max-width: 48em) {
  .nav-main__menu-0 {
    line-height: 3.7777777778;
    border-bottom: 1px dashed #fff;
    text-align: left;
    padding-left: 27px;
  }
}
.nav-main__active-0 .nav-main__menu-0 {
  color: #639982;
}
@media all and (max-width: 60em) {
  .nav-main__empty-column {
    display: none;
  }
}
.nav-main__buttons {
  white-space: nowrap;
  padding-top: 20px;
}
@media all and (max-width: 1024px) {
  .nav-main__buttons {
    position: absolute;
    right: 0;
    top: 100%;
    padding-top: 0;
  }
  .js-nav-open .nav-main__buttons {
    display: none;
  }
}
.nav-main__button {
  background: #639982;
  height: 34px;
  display: inline-block;
  color: #fff;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.1em;
  -webkit-transition: padding 0.2s ease-in-out, background 0.2s ease-in-out;
  -moz-transition: padding 0.2s ease-in-out, background 0.2s ease-in-out;
  transition: padding 0.2s ease-in-out, background 0.2s ease-in-out;
}
.nav-main__button--request {
  font-weight: 600;
}
.nav-main__button:hover, .nav-main__button:focus, .nav-main__button:active {
  color: #fff;
  text-decoration: none;
  background: #32554b;
}
.nav-main__button--secondary {
  background: #f3a0a0;
}
.nav-main__button--secondary:after {
  background: #f9c9c7;
}
.nav-main__button--secondary:hover, .nav-main__button--secondary:focus, .nav-main__button--secondary:active {
  background: #f9c9c7;
}
.nav-main__button span {
  height: 34px;
  line-height: 34px;
  display: block;
  position: relative;
}
@media all and (max-width: 73.75em) {
  .nav-main__button {
    display: block;
    float: left;
    width: 50%;
    padding: 0;
    text-align: center;
  }
  .nav-main__button.button--full {
    width: 100%;
  }
}
@media all and (max-width: 64em) {
  .nav-main__button {
    width: 25%;
  }
  .nav-main__button.button--full {
    width: 50%;
  }
}
@media all and (max-width: 48em) {
  .nav-main__button {
    width: 50%;
  }
  .nav-main__button.button--full {
    width: 100%;
  }
}
.nav-main__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  background: rgba(66, 67, 75, 0.7);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.js-naviga-active .nav-main__overlay {
  opacity: 1;
}
.nav-main__mobile-buttons {
  display: none;
  margin-top: -1px;
}
.nav-main__mobile-buttons a {
  display: block;
  text-transform: uppercase;
  width: 50%;
  float: left;
  font-weight: 600;
}
.nav-main__mobile-buttons a.button--full {
  width: 100%;
}
.nav-main__mobile-buttons a:first-child {
  font-weight: 300;
}
@media all and (max-width: 48em) {
  .nav-main__mobile-buttons {
    display: block;
  }
}
.nav-main__mobile-arrow {
  display: none;
  width: 16px;
  height: 16px;
  stroke: #639982;
  position: absolute;
  right: 27px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(90deg);
  -moz-transform: translateY(-50%) rotate(90deg);
  -ms-transform: translateY(-50%) rotate(90deg);
  -o-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.js-naviga-open .nav-main__mobile-arrow {
  -webkit-transform: translateY(-50%) rotate(0);
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -o-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0);
}
@media all and (max-width: 48em) {
  .nav-main__mobile-arrow {
    display: block;
  }
}
.nav-main__mobile-lines {
  display: block;
  width: 100%;
  border-top: 1px solid #639982;
  border-bottom: 1px solid #464646;
  height: 6px;
  margin-top: 15px;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  z-index: 1000;
}
.js-nav-open .nav-main__mobile-lines {
  display: block;
}
.nav-main__gallery-button {
  position: absolute;
  bottom: -35px;
  right: 25%;
  z-index: 100;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.nav-main__gallery-button:hover {
  opacity: 0.9;
}
@media all and (max-width: 1024px) {
  .nav-main__gallery-button {
    bottom: 16px;
    right: 11px;
  }
}
@media all and (max-width: 768px) {
  .nav-main__gallery-button {
    display: none;
  }
}
.nav-main__phone-mail {
  position: relative;
  white-space: nowrap;
  margin-top: 5px;
  margin-left: 34px;
}
.nav-main__phone-mail span {
  margin: 0 10px;
}
.nav-main__phone-mail a {
  display: inline-block;
  color: #464646;
}
@media all and (max-width: 73.75em) {
  .nav-main__phone-mail {
    margin-left: 0;
    margin-top: 43px;
  }
}
@media all and (max-width: 64em) {
  .nav-main__phone-mail {
    text-align: right;
    background: #fff;
    margin-top: 0;
    float: left;
    width: 50%;
    line-height: 34px;
    text-align: center;
  }
}
@media all and (max-width: 48em) {
  .nav-main__phone-mail {
    display: none;
  }
}

.nav-main-flyout {
  padding-bottom: 45px;
}
.nav-main-flyout__title {
  font-weight: 600;
  font-style: italic;
  letter-spacing: 0.06em;
  font-size: 1.125em;
  padding: 18px 0;
  text-align: left;
}
@media all and (max-width: 48em) {
  .nav-main-flyout__title {
    display: none;
  }
}
.nav-main-flyout__image-subtitle {
  font-size: 35px;
  line-height: 1;
  font-weight: 300;
  text-align: left;
}
.nav-main-flyout__image-subtitle strong {
  font-weight: 600;
}
@media all and (max-width: 48em) {
  .nav-main-flyout {
    padding-bottom: 0;
  }
  .nav-main-flyout--rooms {
    padding-top: 28px;
  }
}

.nav-main-address {
  display: none;
  text-align: left;
  color: #babab4;
  font-size: 0.8125em;
  letter-spacing: 0.06em;
  line-height: 1.3076923077;
}
.nav-main-address__gallery-button {
  position: absolute;
  bottom: 19px;
  right: 63px;
  display: none;
}
@media all and (max-width: 768px) {
  .nav-main-address__gallery-button {
    display: block;
  }
}
.nav-main-address__inner {
  padding-left: 28px;
  padding-right: 100px;
  padding-top: 28px;
  position: relative;
}
.nav-main-address__owner {
  display: block;
  color: #639982;
  margin-bottom: 5px;
}
.nav-main-address__link {
  color: #babab4;
}
.nav-main-address__map-icon {
  position: absolute;
  right: 40px;
  bottom: 0;
}
.nav-main-address__map-icon svg {
  width: 24px;
  height: 24px;
  fill: #fff;
}
@media all and (max-width: 48em) {
  .nav-main-address {
    display: block;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* banner
/* ============================================================================= */
.banner-container {
  position: relative;
  z-index: 100;
}

.banner {
  z-index: 1;
  white-space: nowrap;
  font-size: 0;
  position: relative;
  overflow: hidden;
  background: #fff;
}
.banner__gallery-button {
  position: absolute;
  top: -28px;
  right: 20px;
  display: none;
}
@media all and (max-width: 768px) {
  .banner__gallery-button {
    display: block;
  }
}

.banner-nav {
  position: absolute;
  z-index: 2;
  bottom: -11px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  font-size: 14px;
  white-space: normal;
  width: 100%;
  text-align: right;
}
.banner-nav__item {
  border: none;
  outline: none;
  background: none;
  width: 23px;
  height: 23px;
  position: relative;
  text-align: center;
  color: #fff;
  margin-right: 6px;
}
.banner-nav__item span {
  position: relative;
  z-index: 2;
  display: block;
}
.banner-nav__item:before {
  content: "";
  display: block;
  width: 23px;
  height: 23px;
  background: #464646;
  -webkit-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -moz-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -ms-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -o-transform: rotate(45deg) translateX(-50%) translateY(-50%);
  transform: rotate(45deg) translateX(-50%) translateY(-50%);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
  z-index: 1;
  position: absolute;
  left: 50%;
  top: 50%;
}
.banner-nav__item[aria-selected=true]:before {
  background: #639982;
}

.banner-item {
  position: relative;
  display: inline-block;
  white-space: normal;
  font-size: 16px;
  color: #fff;
  width: 100%;
}
.banner-item:before {
  content: "";
  height: 163px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#a6000000",GradientType=0 );
}
.banner-item__image {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  z-index: 1;
}
.banner-item__content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
}
@media all and (max-width: 61.875em) {
  .banner-item__content {
    background: rgba(255, 255, 255, 0.65);
  }
  .banner-item__content br {
    display: none;
  }
}
.banner-item__name {
  font-size: 3.75em;
  line-height: 1;
  margin-bottom: 10px;
}
@media all and (max-width: 75em) {
  .banner-item__name {
    font-size: 2.5em;
  }
}
@media all and (max-width: 61.875em) {
  .banner-item__name {
    font-size: 1.625em;
    color: #464646;
    padding-top: 10px;
  }
}
.banner-item__name span {
  font-weight: 600;
  display: block;
}
.banner-item__subtitle2, .banner-item__subtitle {
  font-size: 1.125em;
  line-height: 1.9444444444;
  display: inline-block;
  background: #fff;
  -moz-box-shadow: 15px 0 0 rgb(255, 255, 255), -15px 0 0 rgb(255, 255, 255);
  -webkit-box-shadow: 15px 0 0 rgb(255, 255, 255), -15px 0 0 rgb(255, 255, 255);
  box-shadow: 15px 0 0 rgb(255, 255, 255), -15px 0 0 rgb(255, 255, 255);
  color: #464646;
}
@media all and (max-width: 61.875em) {
  .banner-item__subtitle2, .banner-item__subtitle {
    font-size: 0.8125em;
    line-height: 1.3076923077;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: none;
  }
}
.banner-item__subtitle {
  margin-left: 80px;
}
.banner-item__subtitle2 {
  margin-left: 140px;
}
.banner-item__button--hidden {
  visibility: hidden;
  pointer-events: none;
}
@media all and (max-width: 61.875em) {
  .banner-item__subtitle {
    padding-right: 3px;
  }
  .banner-item__subtitle, .banner-item__subtitle2 {
    margin-left: 0;
    display: block;
  }
}
.banner-item__button-container {
  padding: 13px 0 55px 107px;
}
@media all and (max-width: 61.875em) {
  .banner-item__button-container {
    padding-left: 0;
    padding-bottom: 10px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* highlights
/* ============================================================================= */
.highlights {
  position: relative;
  overflow: hidden;
}
.highlights:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  z-index: 1;
  background: #455c52;
  width: 100%;
}
.highlights__container {
  z-index: 2;
  background: #455c52;
  padding: 13px 0 13px 0;
}
.highlights__slider {
  white-space: nowrap;
  position: relative;
  overflow: hidden;
}
.highlights__item {
  display: inline-block;
  width: 25%;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.1em;
  position: relative;
  padding: 22px 32px 22px 45px;
  border-right: 1px dashed #fff;
  min-height: 76px;
}
.highlights__item:last-child {
  border-right-width: 0;
}
@media all and (max-width: 55.625em) {
  .highlights__item {
    text-align: center;
    padding-left: 0;
    border-right: none;
    width: 33.33333%;
  }
}
@media all and (max-width: 43.125em) {
  .highlights__item {
    width: 50%;
  }
}
@media all and (max-width: 25.875em) {
  .highlights__item {
    width: 100%;
  }
}
.highlights__name {
  position: absolute;
  top: 50%;
  left: 45px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media all and (max-width: 55.625em) {
  .highlights__name {
    display: block;
    line-height: 1;
  }
  .highlights__name:before {
    content: "";
    display: block;
    width: 53px;
    border-top: 1px dashed #fff;
    height: 1px;
    margin: 7px auto;
  }
}
.highlights__icon {
  stroke: #fff;
  width: 25px;
  height: 25px;
  position: absolute;
  top: 50%;
  left: 13px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media all and (max-width: 55.625em) {
  .highlights__icon {
    position: relative;
    left: auto;
    top: 0;
    margin: 0 auto;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    display: block;
  }
}
.highlights .tns-controls {
  position: absolute;
  left: 0;
  top: 50%;
  right: 0;
  z-index: 100;
  display: none;
}
@media all and (max-width: 55.625em) {
  .highlights .tns-controls {
    display: block;
  }
}
.highlights .tns-controls button {
  background: none;
  border: none;
  outline: none;
  position: absolute;
  top: 0;
  margin-top: -10px;
}
.highlights .tns-controls button:hover, .highlights .tns-controls button:focus, .highlights .tns-controls button:active {
  outline: none;
}
.highlights .tns-controls button[disabled] {
  opacity: 0.2;
}
.highlights .tns-controls button:first-child {
  left: 25px;
}
.highlights .tns-controls button:last-child {
  right: 25px;
}
.highlights .tns-controls svg {
  width: 20px;
  height: 20px;
  stroke: #fff;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* news
/* ============================================================================= */
.news-box {
  position: relative;
  overflow: hidden;
}
@media all and (max-width: 41.6875em) {
  .news-box .row {
    display: block;
  }
}
.news-box__slider-content, .news-box__slider-images {
  font-size: 0;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
}
.news-box__slider-content.tns-slider, .news-box__slider-images.tns-slider {
  overflow: visible;
}
.news-box__content {
  padding: 20px 55px 25px;
  background: #fff;
}
@media all and (max-width: 41.6875em) {
  .news-box__content {
    padding: 20px 25px 25px;
  }
}
.news-box__slider-item {
  font-size: 18px;
  line-height: 1.3333333333;
  white-space: normal;
  display: inline-block;
  background: #fff;
}
.news-box__slider-inner {
  padding-right: 5px;
  background: #fff;
  position: absolute;
  left: 5px;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}
@media all and (max-width: 41.6875em) {
  .news-box__slider-inner {
    position: relative;
    left: auto;
    padding-right: 0;
  }
  .news-box__slider-inner img {
    max-width: 100%;
    width: 100%;
  }
}
.news-box .tns-controls {
  position: absolute;
  left: -28px;
  top: 38px;
  width: 46px;
  height: 46px;
  z-index: 2;
  white-space: nowrap;
  font-size: 0;
}
.news-box .tns-controls:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 46px;
  height: 46px;
  margin-left: -23px;
  margin-top: -23px;
  background: #639982;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.news-box .tns-controls button {
  z-index: 2;
  position: relative;
  background: none;
  border: none;
  outline: none;
  display: inline-block;
  width: 50%;
  position: relative;
  height: 46px;
}
.news-box .tns-controls button[disabled] {
  opacity: 0.2;
}
.news-box .tns-controls button svg {
  position: absolute;
  top: 50%;
  left: 1px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  stroke: #fff;
  width: 20px;
  height: 20px;
  z-index: 100;
}
@media all and (max-width: 41.6875em) {
  .news-box .tns-controls {
    right: 9px;
    left: auto;
    top: -23px;
    width: auto;
  }
  .news-box .tns-controls:before {
    display: none;
  }
  .news-box .tns-controls button {
    width: 46px;
  }
  .news-box .tns-controls button svg {
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .news-box .tns-controls button:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 46px;
    height: 46px;
    margin-left: -23px;
    margin-top: -23px;
    background: #639982;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .news-box .tns-controls button:first-child {
    margin-right: 20px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* weather
/* ============================================================================= */
.weather-box {
  margin-top: 157px;
  margin-top: 8.2631578947vw;
  margin-bottom: 157px;
  margin-bottom: 8.2631578947vw;
}
@media all and (max-width: 25.875em) {
  .weather-box {
    display: none;
  }
}
.weather-box__inner {
  max-width: 490px;
  font-size: 1.125em;
  background: #f4f3f1;
  padding: 15px;
}
.weather-box__title {
  font-weight: 600;
  color: #639982;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
.weather-box__description {
  font-size: 1.9444444444em;
  line-height: 1.1428571429;
  font-style: italic;
  font-weight: 300;
  margin: 20px 0;
}
.weather-box__description strong {
  font-weight: 600;
}
.weather-box__callout {
  font-size: 2.7777777778em;
  line-height: 1;
  font-weight: 600;
  color: #464646;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* instagram
/* ============================================================================= */
.instagram-box {
  margin-bottom: 90px;
  margin-bottom: 4.7368421053vw;
}
.instagram-box__outer {
  padding-top: 35px;
  padding-bottom: 20px;
  position: relative;
  overflow: hidden;
}
@media all and (max-width: 48em) {
  .instagram-box__outer {
    padding-top: 53px;
    padding-bottom: 30px;
  }
}
.instagram-box__container {
  padding: 20px 0 30px 15px;
}
@media all and (max-width: 48em) {
  .instagram-box__container {
    background: none;
    padding-left: 0;
  }
}
.instagram-box__description {
  margin-bottom: 80px;
}
.instagram-box__outer-right {
  position: static;
}
.instagram-box__right-container {
  width: 357px;
  position: absolute;
  right: -109px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -o-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: -38px;
}
.instagram-box__right-container > div {
  padding: 0 5px;
}
@media all and (max-width: 48em) {
  .instagram-box__right-container {
    position: relative;
    right: auto;
    top: auto;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: 0 auto;
    display: block;
    width: 100%;
    max-width: 183px;
  }
}
.instagram-box__column-left {
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  -webkit-flex: 0 0 67%;
  -moz-flex: 0 0 67%;
  -ms-flex: 0 0 67%;
  flex: 0 0 67%;
}
@media all and (max-width: 48em) {
  .instagram-box__column-left {
    display: block;
  }
}
.instagram-box__column-right {
  -webkit-align-self: flex-end;
  -moz-align-self: flex-end;
  align-self: flex-end;
  -ms-flex-item-align: end;
}
@media all and (max-width: 48em) {
  .instagram-box__column-right {
    position: absolute;
    left: 100%;
    bottom: 0;
  }
  .instagram-box__column-right .tns-outer {
    display: none;
  }
}
.instagram-box__slider-container--1 {
  max-width: 107px;
  margin-bottom: 10px;
  float: right;
}
@media all and (max-width: 48em) {
  .instagram-box__slider-container--1 {
    display: none;
  }
}
.instagram-box__slider-container--2 {
  clear: right;
}
@media all and (max-width: 48em) {
  .instagram-box__slider-container--3 {
    display: none;
  }
}
.instagram-box__slider {
  white-space: nowrap;
  font-size: 0;
  position: relative;
  overflow: hidden;
}
.instagram-box__slider > div {
  font-size: 16px;
  display: inline-block;
}
.instagram-box__mobile-logo {
  display: none;
  width: 40px;
  height: 40px;
  position: absolute;
  right: 100%;
  top: 0;
  margin-right: 5px;
  background: #f3a0a0;
}
.instagram-box__mobile-logo svg {
  fill: #fff;
  width: 22px;
  height: 22px;
  position: relative;
  display: block;
  z-index: 100;
  margin: 9px 0 0 9px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media all and (max-width: 48em) {
  .instagram-box__mobile-logo {
    display: block;
  }
}
.instagram-box__controls {
  width: 46px;
  height: 46px;
  z-index: 2;
  white-space: nowrap;
  font-size: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-bottom: 10px;
}
.instagram-box__controls:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 46px;
  height: 46px;
  background: #f3a0a0;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.instagram-box__controls button {
  z-index: 2;
  position: relative;
  background: none;
  border: none;
  outline: none;
  display: inline-block;
  width: 50%;
  position: relative;
  height: 46px;
}
.instagram-box__controls button svg {
  position: absolute;
  top: 50%;
  left: 1px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  stroke: #fff;
  width: 20px;
  height: 20px;
}
@media all and (max-width: 48em) {
  .instagram-box__controls {
    margin-bottom: 0;
    width: auto;
    height: auto;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
  .instagram-box__controls:before {
    display: none;
  }
  .instagram-box__controls button {
    width: 46px;
    display: block;
    background: #639982;
  }
  .instagram-box__controls button svg {
    -webkit-transform: rotate(-45deg) translateY(-65%);
    -moz-transform: rotate(-45deg) translateY(-65%);
    -ms-transform: rotate(-45deg) translateY(-65%);
    -o-transform: rotate(-45deg) translateY(-65%);
    transform: rotate(-45deg) translateY(-65%);
    left: 48%;
  }
  .instagram-box__controls button:last-child {
    margin-top: 10px;
  }
}

.instagram-box-item {
  position: relative;
  overflow: hidden;
}
.instagram-box-item__image-container {
  -webkit-transform: rotate(-45deg) scale(1.5);
  -moz-transform: rotate(-45deg) scale(1.5);
  -ms-transform: rotate(-45deg) scale(1.5);
  -o-transform: rotate(-45deg) scale(1.5);
  transform: rotate(-45deg) scale(1.5);
  position: relative;
  display: block;
}

.instagram .are-images-unloaded {
  opacity: 0;
}
.instagram__view-more-button {
  position: relative;
  margin: 20px auto 0;
  display: block;
  outline: none;
}
.instagram__view-more-button:disabled .ajax-loading {
  display: block;
}
.instagram__view-more-button .ajax-loading {
  left: -2px;
  top: -2px;
  right: -2px;
  bottom: -2px;
  width: auto;
  height: auto;
}
.instagram__view-more-button .ajax-loading__container {
  margin-top: 29px;
}

.instagram-item {
  margin-bottom: 20px;
  width: 49%;
  position: relative;
  overflow: hidden;
  float: left;
}
.instagram-item__icon {
  position: absolute;
  left: 40px;
  bottom: 23px;
}
@media all and (max-width: 1280px) {
  .instagram-item__icon {
    left: 20px;
    bottom: 5px;
  }
}
.instagram-item__icon svg {
  fill: #fff;
  width: 25px;
  height: 25px;
}
.instagram-item__image-container {
  position: relative;
  overflow: hidden;
  display: block;
}
.instagram-item__image-container:before {
  content: "";
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
  height: 100px;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  right: 0;
}
.instagram-item__col-sizer {
  width: 49%;
  position: absolute;
}
.instagram-item__gutter {
  width: 1%;
  position: absolute;
}
@media all and (max-width: 1280px) {
  .instagram-item {
    width: 24%;
  }
  .instagram-item__col-sizer {
    width: 24%;
  }
}
@media all and (max-width: 1024px) {
  .instagram-item {
    width: 32.33333%;
  }
  .instagram-item__col-sizer {
    width: 32.33333%;
  }
}
@media all and (max-width: 768px) {
  .instagram-item {
    width: 49.5%;
    margin-bottom: 10px;
  }
  .instagram-item__col-sizer {
    width: 49.5%;
  }
  .instagram-item__gutter {
    width: 0.5%;
  }
}
@media all and (max-width: 667px) {
  .instagram-item {
    width: 100%;
    margin-bottom: 5px;
  }
  .instagram-item__col-sizer {
    width: 100%;
  }
  .instagram-item__gutter {
    width: 0;
  }
}

.instagram-item-owner {
  position: absolute;
  left: 35px;
  top: 20px;
  font-size: 0.875em;
  line-height: 1;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  z-index: 100;
}
@media all and (max-width: 1280px) {
  .instagram-item-owner {
    left: 20px;
    top: 15px;
  }
}
.instagram-item-owner:hover {
  text-decoration: none;
}
.instagram-item-owner__image-container {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  position: relative;
  overflow: hidden;
  border: 2px solid #fff;
  width: 40px;
  width: 2.1052631579vw;
  height: 40px;
  height: 2.1052631579vw;
  float: left;
  margin-right: 14px;
}
.instagram-item-owner__image {
  width: 40px;
  width: 2.1052631579vw;
  height: 40px;
  height: 2.1052631579vw;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: rotate(-45deg) scale(1.5);
  -moz-transform: rotate(-45deg) scale(1.5);
  -ms-transform: rotate(-45deg) scale(1.5);
  -o-transform: rotate(-45deg) scale(1.5);
  transform: rotate(-45deg) scale(1.5);
}
.from-cache .instagram-item-owner__image {
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}
.js-loaded .instagram-item-owner__image {
  opacity: 1;
}
@media all and (max-width: 667px) {
  .instagram-item-owner__image {
    width: 35px;
    height: 35px;
  }
}
.instagram-item-owner__name {
  color: #fff;
  display: block;
  background: #42434a;
  max-width: 80%;
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-left: 55px;
  margin-top: 3px;
}
.from-cache .instagram-item-owner__name {
  max-width: 100%;
  background: none;
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}
.js-loaded .instagram-item-owner__name {
  max-width: 100%;
  background: none;
}
.instagram-item-owner__date {
  color: #e6e6e6;
  display: block;
  margin-top: 3px;
  margin-left: 55px;
}

.instagram-item > div {
  z-index: 50;
  position: absolute;
  left: 0;
  top: 0;
}
.instagram-item__icon {
  position: absolute;
  left: 40px;
  bottom: 23px;
}
@media all and (max-width: 1280px) {
  .instagram-item__icon {
    left: 20px;
    bottom: 5px;
  }
}
.instagram-item__icon svg {
  fill: #fff;
  width: 25px;
  height: 25px;
}
.instagram-item__image-container {
  position: relative;
  overflow: hidden;
  display: block;
}
.instagram-item__image-container span {
  -moz-transform: scale(2);
  -ms-transform: scale(2);
  -o-transform: scale(2);
  -webkit-transform: scale(2);
  transform: scale(2);
  position: relative;
  display: block;
  -moz-transform-origin: 50% 80%;
  -ms-transform-origin: 50% 80%;
  -o-transform-origin: 50% 80%;
  -webkit-transform-origin: 50% 80%;
  transform-origin: 50% 80%;
}
.instagram-item__image-container:before {
  content: "";
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
  height: 100px;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  right: 0;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* teaser
/* ============================================================================= */
.teaser-container {
  max-width: 523px;
  margin-left: 109px;
  position: relative;
}

.teaser {
  width: 100%;
  position: relative;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  overflow: hidden;
  /*@media (max-width: 1600px) {
      width: 220px;
      transform: none;
      overflow: visible;
  }*/
  /*&__column {
      @media (max-width: 1600px) {
          position: relative;
          overflow: hidden;
          transform: rotate(45deg);
          transform-origin: 50% 50%;
          top: 50px;

          &:last-child {
              top: -15px;
          }
      }
  }*/
}
.teaser__outer {
  overflow: hidden;
  margin: 90px auto 90px auto;
  margin: 4.7368421053vw auto 4.7368421053vw auto;
  padding-top: 5px;
}
.teaser__outer--small {
  padding-bottom: 66px;
}
@media all and (max-width: 49.125em) {
  .teaser__outer {
    display: none;
  }
}
.teaser picture {
  position: relative;
  overflow: hidden;
  display: block;
}
.teaser__item {
  padding: 5px;
  position: relative;
  overflow: hidden;
  /*@media (max-width: 1600px) {
      &--empty {
          display: none;
      }
  }*/
}
.teaser__item--right {
  float: right;
}
.teaser__item:before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 5px;
  right: 5px;
  bottom: 5px;
  top: 5px;
  background: #32554b;
}
.teaser__item--gray:before {
  background: #42434a;
}
.teaser__item--lightgreen:before {
  background: #639982;
}
.teaser__item--pink:before {
  background: #f3a0a0;
}
.teaser__item--space {
  background: none;
  padding: 0 5px;
}
.teaser__item--space:before {
  display: none;
}
.teaser__right-aligned > .teaser__item {
  float: right;
  clear: right;
}
.teaser__name {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg) translateZ(0);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(-45deg) translateZ(0);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg) translateZ(0);
  -o-transform: translateX(-50%) translateY(-50%) rotate(-45deg) translateZ(0);
  transform: translateX(-50%) translateY(-50%) rotate(-45deg) translateZ(0);
  z-index: 3;
  color: #fff;
  text-transform: uppercase;
  font-size: 1.125em;
  white-space: nowrap;
  letter-spacing: 0.06em;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 1;
}
.teaser__item:hover .teaser__name {
  opacity: 0;
}
.teaser img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 2;
  -webkit-transform: rotate(-45deg) scale(1.5) translateZ(0);
  -moz-transform: rotate(-45deg) scale(1.5) translateZ(0);
  -ms-transform: rotate(-45deg) scale(1.5) translateZ(0);
  -o-transform: rotate(-45deg) scale(1.5) translateZ(0);
  transform: rotate(-45deg) scale(1.5) translateZ(0);
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.teaser__item--small img {
  opacity: 1;
}
.teaser__item:hover img {
  opacity: 1;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* ModuleName
/* ============================================================================= */
.ratings__container {
  background: #f4f3f1;
}

.rating__description {
  margin: 10px 0 10px;
  font-size: 1.625em;
  line-height: 1.2307692308;
  letter-spacing: 0.03em;
  position: relative;
}
.rating__description:before, .rating__description:after {
  color: #639982;
  position: absolute;
  font-size: 50px;
  line-height: 50px;
}
.rating__description:before {
  content: "“";
  top: 0;
  right: 100%;
  padding-right: 10px;
}
.rating__description:after {
  content: "”";
  padding-left: 10px;
}
.rating__author {
  text-align: right;
  color: #639982;
  font-size: 1.125em;
}

.ratings-logos {
  background: #f4f3f1;
  margin-bottom: 30px;
}
@media all and (max-width: 48em) {
  .ratings-logos {
    display: none;
  }
}

.rating-logo {
  width: 20%;
  float: left;
  padding-left: 20px;
}
.rating-logo:first-child {
  padding-left: 0;
}
.rating-logo__rating {
  font-size: 1.125em;
  color: #639982;
  letter-spacing: 0.04em;
}
.rating-logo__logo {
  background: url(/media/sprite.png) no-repeat 0 0;
  width: 123px;
  height: 31px;
  display: block;
  text-indent: -9999px;
}
.rating-logo__logo--expedia {
  background-position: 0 0;
}
.rating-logo__logo--tripadvisor {
  background-position: -123px 0;
}
.rating-logo__logo--booking {
  background-position: -246px 0;
}
.rating-logo__logo--trivago {
  background-position: 0 -31px;
}
.rating-logo__logo--holidaycheck {
  background-position: -123px -31px;
}
@media all and (max-width: 48em) {
  .rating-logo__logo {
    background-image: none;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* footer
/* ============================================================================= */
.footer-main {
  background: #fff;
  padding-top: 50px;
  line-height: 1.25;
}
.footer-main__title {
  font-size: 1.125em;
  line-height: 1.9444444444;
  letter-spacing: 0.06em;
  color: #639982;
}
.footer-main__title--dark {
  color: #464646;
}
.footer-main__link {
  font-size: 2.8125em;
  line-height: 1;
  font-weight: 600;
  display: block;
  color: #464646;
  margin-bottom: 35px;
}
.footer-main__link--color-main {
  color: #639982;
}
@media all and (max-width: 48em) {
  .footer-main__link {
    font-size: 1.625em;
  }
}
@media all and (max-width: 41.6875em) {
  .footer-main__link {
    margin-bottom: 23px;
  }
}
@media all and (max-width: 41.6875em) {
  .footer-main {
    border-bottom: 1px dashed #639982;
  }
}

.address {
  color: #babab4;
  letter-spacing: 0.06em;
  margin-top: 50px;
}
@media all and (max-width: 41.6875em) {
  .address {
    margin-top: 23px;
  }
}

.nav-bottom {
  margin-top: 20px;
  color: #babab4;
}
.nav-bottom a {
  color: #babab4;
  margin-right: 10px;
}
@media all and (max-width: 41.6875em) {
  .nav-bottom {
    margin-bottom: 23px;
  }
}

.footer-logos {
  background: #f4f3f1;
  padding: 27px 0 32px;
}
@media all and (max-width: 41.6875em) {
  .footer-logos {
    text-align: center;
    padding-top: 45px;
  }
}

.footer-logos-inner {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
}

.footer-logo {
  width: 73px;
  height: 31px;
  background: url(/media/suedtirol.png) no-repeat;
  filter: grayscale(1);
  display: inline-block;
  text-indent: -9999px;
  margin-right: 3px;
  background-size: contain;
}
.footer-logo--southtyrol {
  height: 56px;
}
.footer-logo--bikehotels {
  background-position: -73px -62px;
  background: url(/media/bikehotels-suedtirol-logo.png) no-repeat;
  background-size: contain;
}
.footer-logo--brixen {
  width: 59px;
  background: url(/media/logo-brixen-2021.png) no-repeat 0 0;
  height: 29px;
}
.footer-logo--bettbike {
  width: 80px;
  background: url(/media/bettundbike.jpg) no-repeat 0 0;
  height: 28px;
  background-size: contain;
}
.footer-logo--bookingsuedtirol-de, .footer-logo--bookingsuedtirol-it, .footer-logo--bookingsuedtirol-en {
  width: 110px;
  position: relative;
}
.footer-logo--bookingsuedtirol-de {
  background: url(/media/booking-logo-de.png) no-repeat 0 0;
  height: 15px;
}
.footer-logo--bookingsuedtirol-it {
  background: url(/media/booking-logo-it.png) no-repeat 0 0;
  height: 15px;
}
.footer-logo--bookingsuedtirol-en {
  background: url(/media/booking-logo-en.png) no-repeat 0 0;
  height: 13px;
}
.footer-logo--sustainable {
  background: none;
}
.footer-logo--mountainbikeholidays {
  background: url(/media/mbh.png) no-repeat 0 0;
  width: 56px;
}
@media all and (max-width: 21.875em) {
  .footer-logo--mountainbikeholidays {
    margin-top: 10px;
  }
}
.footer-logo--sustainable {
  height: 40px;
  width: 40px;
  text-indent: 0;
  position: relative;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* newsletter
/* ============================================================================= */
.newsletter-box__title {
  display: block;
  margin-bottom: 10px;
}
.newsletter-box__form {
  position: relative;
  max-width: 260px;
  width: 100;
}
.newsletter-box__input {
  background: none;
  border: 1px solid #babab4;
  border-width: 0 0 1px 0;
  display: block;
  width: 100%;
  line-height: 28px;
  height: 28px;
  outline: none;
}
.newsletter-box__input:hover, .newsletter-box__input:focus {
  border-bottom-color: #639982;
}
.newsletter-box__input::-webkit-input-placeholder {
  color: #babab4;
}
.newsletter-box__input::-moz-placeholder {
  color: #babab4;
}
.newsletter-box__input:-ms-input-placeholder {
  color: #babab4;
}
.newsletter-box__input:-moz-placeholder {
  color: #babab4;
}
.newsletter-box__arrow {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  text-align: right;
}
.newsletter-box__arrow svg {
  vertical-align: top;
  margin-top: 4px;
  display: inline-block;
  stroke: #639982;
  width: 18px;
  height: 18px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /*---------------------------------------------------
/* googlemap
/*---------------------------------------------------*/
#map {
  height: 400px;
}
@media all and (max-width: 41.6875em) {
  #map {
    display: none;
  }
}

.googlemap-box {
  position: relative;
}
@media all and (max-width: 41.6875em) {
  .googlemap-box {
    padding-bottom: 70px;
  }
}
.googlemap-box__mobile-map-icon {
  display: none;
  position: absolute;
  bottom: -20px;
  right: 26px;
  z-index: 3;
}
.googlemap-box__mobile-map-icon svg {
  width: 20px;
  height: 20px;
  fill: #fff;
}
@media all and (max-width: 41.6875em) {
  .googlemap-box__mobile-map-icon {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: inline-box;
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}
.googlemap-box__social-icon {
  position: absolute;
  bottom: 88%;
  left: 26px;
  z-index: 3;
}
@media all and (max-width: 41.6875em) {
  .googlemap-box__social-icon {
    bottom: -20px;
  }
}
.googlemap-box__social-icon--facebook {
  left: 92px;
}
.googlemap-box__social-icon svg {
  width: 20px;
  height: 20px;
  fill: #fff;
}
.googlemap-box__logo {
  position: absolute;
  right: 35px;
  bottom: 85%;
  z-index: 2;
  width: 92px;
  height: 92px;
}
.googlemap-box__logo:before {
  content: "";
  width: 88px;
  height: 88px;
  background: #fff;
  border: 1px solid #639982;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -o-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  z-index: 2;
}
.googlemap-box__logo:after {
  content: "";
  width: 92px;
  height: 92px;
  background: none;
  border: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  -o-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  z-index: 1;
}
.googlemap-box__logo img {
  display: block;
  max-width: 100%;
  height: auto;
  position: absolute;
  top: 14%;
  left: 50%;
  z-index: 3;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media all and (max-width: 41.6875em) {
  .googlemap-box__logo {
    display: none;
  }
}
.googlemap-box #map {
  height: 163px;
  margin-top: 64px;
  position: relative;
  z-index: 1;
  border-top: 1px dashed #639982;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* menuFlyout
/* ============================================================================= */
.nav-flyout {
  text-align: left;
  border-left: 1px dashed #639982;
  padding-left: 20px;
}
@media all and (max-width: 48em) {
  .nav-flyout {
    padding-left: 0;
    border-left: none;
    padding-top: 28px;
  }
}
.nav-main-flyout--no-border .nav-flyout {
  border-left-width: 0;
}
.nav-flyout ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav-flyout__name {
  font-size: 1.125em;
  line-height: 1.1666666667;
  display: block;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.nav-flyout__description {
  display: block;
  line-height: 1.3125;
  font-weight: 300;
  font-style: italic;
}
@media all and (max-width: 48em) {
  .nav-flyout__description {
    display: none;
  }
}
.nav-flyout__item {
  margin-bottom: 28px;
}
.nav-flyout__more {
  color: #ed7373;
  font-weight: bold;
}

@media all and (max-width: 48em) {
  .nav-flyout-columns {
    padding-top: 28px;
  }
}
.nav-flyout-columns__item {
  margin-bottom: 23px;
}
.nav-flyout-columns__name {
  font-size: 1.125em;
  line-height: 1;
  display: block;
  font-weight: 600;
  margin-top: 15px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  -ms-word-break: break-all;
  word-break: break-all;
}
@media all and (max-width: 48em) {
  .nav-flyout-columns__name {
    text-align: left;
    line-height: 1.1666666667;
    margin-top: 0;
    margin-bottom: 0;
    text-transform: none;
  }
}
.nav-flyout-columns__more {
  display: block;
  margin-top: 10px;
}

.flyout-room {
  text-align: left;
  margin-bottom: 25px;
}
@media all and (max-width: 48em) {
  .flyout-room {
    font-size: 1em;
  }
  .flyout-room:last-child, .flyout-room:nth-last-child(2) {
    margin-bottom: 0;
  }
}
.flyout-room img {
  width: 100%;
}
.flyout-room:nth-child(2n+1) {
  clear: left;
}
.flyout-room__name {
  font-size: 1.125em;
  line-height: 1;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin-top: 12px;
  margin-bottom: 5px;
  display: block;
}
@media all and (max-width: 48em) {
  .flyout-room__name {
    font-size: 1em;
  }
}
.flyout-room__image-container {
  position: relative;
  display: block;
}
.flyout-room__button {
  position: absolute;
  right: 0;
  bottom: 0;
  line-height: 1.25;
  padding-left: 0;
  padding-right: 0;
  width: 20px;
}

.flyout-city__quote {
  font-size: 2.1875em;
  line-height: 1.1428571429;
  color: #827f85;
  font-weight: 300;
  font-style: italic;
  text-align: left;
  padding-left: 35px;
}
@media all and (max-width: 64em) {
  .flyout-city__quote {
    font-size: 1.5em;
  }
}
.flyout-city__alex {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 240px;
  height: 193px;
  background: url(/media/b078c71b-37de-4de7-a8f9-a43db9cd2f56/nocache/alex-flyout.png) no-repeat 100% 100%;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* ModuleName
/* ============================================================================= */
.page-content {
  margin-top: 85px;
  margin-top: 4.4736842105vw;
  margin-bottom: 85px;
  margin-bottom: 4.4736842105vw;
  line-height: 1.5;
}
.page-content__container {
  padding: 25px 15px;
  padding-bottom: 85px;
  padding-bottom: 4.4736842105vw;
  background: #fff;
}
.page-content--has-sibling {
  margin-bottom: 0;
}
.page-content--has-sibling .page-content__container {
  padding-bottom: 25px;
}
.page-content__hgroup {
  margin-bottom: 25px;
}

.main-content {
  max-width: 642px;
}

.sitepath {
  color: #babab4;
}
.sitepath ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
.sitepath li {
  display: inline-block;
}
.sitepath a {
  color: #babab4;
}
.sitepath__separator {
  margin: 0 10px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* roooms
/* ============================================================================= */
.room-detail__price-text {
  color: #639982;
  margin-top: 43px;
  margin-top: 2.2631578947vw;
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
.room-detail__button-row {
  margin-top: 50px;
}

.rooms-detail-accordion {
  margin-top: 85px;
  margin-top: 4.4736842105vw;
  margin-bottom: 85px;
  margin-bottom: 4.4736842105vw;
}
.rooms-detail-accordion__inner {
  background: #fff;
  padding: 43px 15px 20px;
}
.rooms-detail-accordion dt:first-child .base-accordion__trigger {
  border-top-width: 1px;
}
@media all and (max-width: 48em) {
  .rooms-detail-accordion .container-content {
    padding: 0;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* webcams
/* ============================================================================= */
.webcams-box {
  margin-bottom: 90px;
  margin-bottom: 4.7368421053vw;
}
.webcams-box__container {
  padding: 20px 0 30px 15px;
  background: #f4f3f1;
}
.webcams-box__description {
  margin-bottom: 25px;
  font-size: 2.1875em;
  line-height: 1.1428571429;
  font-style: italic;
}
.webcams-box__description strong {
  font-weight: 600;
  font-style: normal;
}
.webcams-box__outer-right {
  position: static;
}
.webcams-box__right-container {
  width: 171px;
  height: 171px;
  position: absolute;
  right: 35px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -o-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
@media all and (max-width: 48em) {
  .webcams-box__right-container {
    position: relative;
    right: auto;
    top: auto;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: 55px auto 0;
  }
}
.webcams-box__slider {
  white-space: nowrap;
  font-size: 0;
  position: relative;
  overflow: hidden;
}
.webcams-box__slider > div {
  font-size: 16px;
  display: inline-block;
}
.webcams-box__controls {
  width: 46px;
  height: 46px;
  z-index: 2;
  white-space: nowrap;
  font-size: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-right: 10px;
  position: absolute;
  right: 100%;
  bottom: 0;
}
.webcams-box__controls:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 46px;
  height: 46px;
  background: #f3a0a0;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.webcams-box__controls button {
  z-index: 2;
  position: relative;
  background: none;
  border: none;
  outline: none;
  display: inline-block;
  width: 50%;
  position: relative;
  height: 46px;
}
.webcams-box__controls button svg {
  position: absolute;
  top: 50%;
  left: 1px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  stroke: #fff;
  width: 20px;
  height: 20px;
}

.webcams-box-item {
  position: relative;
  overflow: hidden;
  height: 171px;
  width: 171px;
}
.webcams-box-item__image-container {
  -webkit-transform: rotate(-45deg) scale(1.5);
  -moz-transform: rotate(-45deg) scale(1.5);
  -ms-transform: rotate(-45deg) scale(1.5);
  -o-transform: rotate(-45deg) scale(1.5);
  transform: rotate(-45deg) scale(1.5);
  position: relative;
  display: block;
  height: 171px;
}
.webcams-box-item__image-container img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
}

.webcams-item {
  margin-bottom: 10px;
}
.webcams-item:nth-child(2n+1) {
  clear: left;
}
.webcams-item__name {
  font-size: 1.0625em;
  line-height: 1.3888888889;
  font-weight: 600;
  color: #639982;
  letter-spacing: 0.06em;
  display: block;
  margin-top: 5px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* alexPopup
/* ============================================================================= */
.alex-popup {
  position: fixed;
  bottom: -1px;
  left: 0;
  right: 0;
  z-index: 1100;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  pointer-events: none;
}
.alex-popup__container {
  max-width: 90%;
  margin: 0 auto;
  position: relative;
}
@media all and (max-width: 1024px) {
  .alex-popup__container {
    max-width: 95%;
  }
}
.alex-popup__image {
  float: right;
  cursor: pointer;
  pointer-events: none;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 0;
  -webkit-transform: translateY(20px);
  -moz-transform: translateY(20px);
  -ms-transform: translateY(20px);
  -o-transform: translateY(20px);
  transform: translateY(20px);
}
.js-image-active .alex-popup__image {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
.alex-popup__description {
  -webkit-clip-path: polygon(100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%);
  clip-path: polygon(100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%);
  background: #728e8b;
  width: 250px;
  text-align: left;
  font-size: 1.125em;
  letter-spacing: 0.04em;
  line-height: 1.2222222222;
  color: #fff;
  position: absolute;
  right: 136px;
  bottom: 160px;
  padding: 20px 17px 40px 35px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: rotate(20deg);
  -moz-transform: rotate(20deg);
  -ms-transform: rotate(20deg);
  -o-transform: rotate(20deg);
  transform: rotate(20deg);
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  -o-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  opacity: 0;
  pointer-events: auto;
}
.js-active .alex-popup__description {
  -webkit-clip-path: polygon(100% 0, 93% 76%, 89% 77%, 89% 100%, 76% 80%, 0 90%, 12% 8%);
  clip-path: polygon(100% 0, 93% 76%, 89% 77%, 89% 100%, 76% 80%, 0 90%, 12% 8%);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  opacity: 1;
}
.alex-popup__close {
  position: absolute;
  right: 105px;
  bottom: 266px;
  color: #728e8b;
  border: none;
  background: none;
  outline: none;
  font-size: 24px;
  display: none;
  pointer-events: auto;
}
.js-active .alex-popup__close {
  display: block;
}
.alex-popup__buttons {
  position: absolute;
  right: -5%;
  top: 74%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  pointer-events: auto;
}
.alex-popup__buttons:after {
  right: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-right-color: #639982;
  border-width: 8px;
  margin-top: -8px;
  display: none;
}
.alex-popup__buttons a {
  display: block;
  width: 100px;
  font-size: 12px;
  padding-left: 0;
  padding-right: 0;
}
.js-image-active .alex-popup__buttons {
  top: 9px;
}
.js-image-active .alex-popup__buttons:after {
  display: block;
}
@media all and (max-width: 102.5em) {
  .js-image-active .alex-popup__buttons {
    top: 54%;
  }
}
@media all and (max-width: 64em) {
  .alex-popup__buttons {
    right: -18px;
  }
  .alex-popup__buttons:after {
    right: auto;
    left: 50%;
    top: auto;
    bottom: 100%;
    border: solid transparent;
    border-right-color: rgba(136, 183, 213, 0);
    border-bottom-color: #f3a0a0;
    border-width: 8px;
    margin-top: 0;
    margin-left: -8px;
  }
}
@media all and (max-width: 768px) {
  .alex-popup__buttons {
    display: none;
  }
}

.alex-whatsapp {
  position: absolute;
  right: -3%;
  top: 46%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  pointer-events: auto;
}
.js-image-active .alex-whatsapp {
  top: -60px;
}
@media all and (max-width: 768px) {
  .alex-whatsapp {
    top: -74px;
    display: block;
  }
  .js-image-active .alex-whatsapp {
    top: -74px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* textwithIcon
/* ============================================================================= */
.text-with-icon__item {
  margin-bottom: 75px;
  margin-bottom: 3.9473684211vw;
}
.text-with-icon__item:last-child {
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
.text-with-icon__title {
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
.text-with-icon__name {
  color: #639982;
  text-transform: uppercase;
  font-size: 1.125em;
  line-height: 1.9444444444;
  letter-spacing: 0.2em;
  margin-bottom: 10px;
  font-weight: 600;
}
.text-with-icon svg {
  stroke: #32554b;
  width: 64px;
  height: 64px;
  margin: 10px auto 0;
  display: block;
}
@media all and (max-width: 25.875em) {
  .text-with-icon svg {
    margin-left: 0;
    margin-right: 0;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* contentContact
/* ============================================================================= */
.content-contact__title {
  color: #639982;
  font-size: 1.125em;
  line-height: 1.1111111111;
  letter-spacing: 0.06em;
  font-weight: 600;
  margin-bottom: 5px;
}
.content-contact__title--first {
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
.content-contact__text {
  font-size: 2.1875em;
  line-height: 1;
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
@media all and (max-width: 48em) {
  .content-contact__text {
    font-size: 1.5em;
  }
}
.content-contact__text a {
  color: #464646;
}
.content-contact__text--first {
  font-weight: 600;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* galleriesBox
/* ============================================================================= */
.galleries-box {
  margin-top: 85px;
  margin-top: 4.4736842105vw;
  margin-bottom: 85px;
  margin-bottom: 4.4736842105vw;
}
.galleries-box .container-content {
  padding-left: 0;
  padding-right: 0;
}
.galleries-box__button {
  position: absolute;
  right: 74px;
  bottom: 47px;
  pointer-events: none;
}
.galleries-box__button svg {
  width: 18px;
  height: 18px;
  stroke: #fff;
}
.galleries-box__title {
  margin-bottom: 15px;
}
.galleries-box__slider {
  white-space: nowrap;
  font-size: 0;
  position: relative;
  overflow: hidden;
}
.galleries-box__item {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
}
.galleries-box__item .inner {
  position: relative;
}
.galleries-box__item .download-image {
  position: absolute;
  bottom: 0;
  right: 0;
  left: auto;
  display: inline-block;
  color: #fff;
  font-size: 1em;
  padding: 10px;
  background: rgba(50, 85, 75, 0.6);
}
.galleries-box__item .download-image:hover {
  background: rgba(50, 85, 75, 0.99);
}
.galleries-box__item .download-image svg {
  display: inline-block;
  margin-left: 7px;
}
.galleries-box--hide-buttons .galleries-box__item .download-image {
  opacity: 0;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.galleries-box--hide-buttons .galleries-box__item .download-image:hover, .galleries-box--hide-buttons .galleries-box__item .download-image:active, .galleries-box--hide-buttons .galleries-box__item .download-image:focus {
  opacity: 1;
}
.galleries-box--hide-buttons .galleries-box__item:hover .download-image {
  opacity: 1;
}
.galleries-box__controls {
  width: 39px;
  height: 39px;
  z-index: 2;
  white-space: nowrap;
  font-size: 0;
  margin-right: 10px;
  position: absolute;
  right: 33px;
  bottom: 79px;
  display: none;
}
.galleries-box__controls:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 39px;
  height: 39px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background: #639982;
}
.galleries-box__controls button {
  z-index: 2;
  position: relative;
  background: none;
  border: none;
  outline: none;
  display: inline-block;
  width: 50%;
  position: relative;
  height: 39px;
}
.galleries-box__controls button svg {
  position: absolute;
  top: 50%;
  left: 1px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  stroke: #fff;
  width: 18px;
  height: 20px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* weekprogram
/* ============================================================================= */
.weekprogram-item {
  display: table;
  width: 100%;
  font-size: 0.875em;
  line-height: 1.2142857143;
  font-style: italic;
  letter-spacing: normal;
  table-layout: fixed;
  margin-bottom: 10px;
  /*border-bottom: 1px solid $base-font-color;*/
  /*&__inner-row &__inner-column {
      border-bottom: 1px solid $base-font-color;
      border-top: none;

      @media all and (max-width: em(550px, 16px)) {
          border-bottom: none;
      }
  }

  &__inner-row:last-child &__inner-column {
      border-bottom: none;
  }*/
}
.weekprogram-item:nth-child(2n+1) {
  background: #efefef;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item {
    display: block;
    padding: 10px 0;
    font-size: 1em;
    line-height: 1.5;
  }
}
.weekprogram-item__header {
  padding-top: 70px;
  border-bottom: 1px solid #464646;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__header {
    padding-top: 0;
  }
  .weekprogram-item__header .weekprogram-item__column--dayofweek {
    display: none;
  }
}
.weekprogram-item__inner-row {
  display: table;
  width: 100%;
  table-layout: fixed;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__inner-row {
    display: block;
    margin-bottom: 10px;
  }
  .weekprogram-item__inner-row:last-child {
    margin-bottom: 0;
  }
}
.weekprogram-item__description {
  width: 100%;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 10px;
}
.weekprogram-item__description:last-child {
  border-bottom-color: #464646;
}
.weekprogram-item__column {
  display: table-cell;
  vertical-align: middle;
  /*@media all and (max-width: em(550px, 16px)) {
      &--cable-car,
      &--shuttle,
      &--return,
      &--start,
      &--km,
      &--rise,
      &--difficulty {
          padding-left: 28px;
      }
  }*/
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column {
    display: block;
    vertical-align: top;
  }
}
.weekprogram-item__column--dayofweek {
  font-size: 1.2857142857em;
  color: #639982;
  position: relative;
  background: #fff;
  border-bottom: 1px solid #fff;
  top: 1px;
  font-style: normal;
  text-align: right;
  padding-right: 24px;
  width: 8%;
}
.weekprogram-item__column--dayofweek-mobile {
  display: none;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--dayofweek {
    text-align: left;
    padding-right: 0;
    top: 0;
    border-bottom: none;
  }
  .weekprogram-item__column--dayofweek:after {
    content: ": ";
  }
  .weekprogram-item__column--dayofweek-desktop {
    display: none;
  }
  .weekprogram-item__column--dayofweek-mobile {
    display: block;
  }
}
.weekprogram-item__column--dayofweek-header {
  font-size: 1.2857142857em;
  color: #639982;
  position: relative;
  background: #efefef;
  border-bottom: 1px solid #efefef;
  top: 1px;
  font-style: normal;
  text-align: right;
  padding-right: 24px;
  width: 7%;
}
.weekprogram-item__column--dayofweek-header-mobile {
  display: none;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--dayofweek-header {
    text-align: left;
    padding-right: 0;
    top: 0;
    border-bottom: none;
  }
  .weekprogram-item__column--dayofweek-header:after {
    content: ": ";
  }
  .weekprogram-item__column--dayofweek-header-desktop {
    display: none;
  }
  .weekprogram-item__column--dayofweek-header-mobile {
    display: block;
  }
}
.weekprogram-item__column--title {
  width: 17.3913043478%;
  font-weight: 400;
  font-size: 45px;
  line-height: 1;
  color: #639982;
  position: relative;
  overflow: hidden;
  font-style: normal;
}
.weekprogram-item__column--title-header {
  width: 18.8473520249%;
  font-weight: 400;
  font-size: 45px;
  line-height: 1;
  color: #639982;
  position: relative;
  overflow: hidden;
  font-style: normal;
}
.weekprogram-item__column--header {
  width: 7.476635514%;
  font-size: 1.2857142857em;
  font-weight: 400;
  color: #639982;
  position: relative;
  padding-left: 19px;
  white-space: nowrap;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  font-style: normal;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--header {
    display: none;
  }
}
.weekprogram-item__column--header-meetingpoint {
  width: 18.2242990654%;
  padding-left: 10.5%;
  left: -10.5%;
}
.weekprogram-item__column--name {
  width: 19.6226415094%;
  font-weight: 600;
  padding-right: 10px;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--name {
    width: 100%;
    padding-right: 0;
    font-size: 1.2857142857em;
  }
}
.weekprogram-item__column--tourname-container {
  width: 69.2452830189%;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--tourname-container {
    width: 100%;
  }
}
.weekprogram-item__column--tourname {
  width: 17.3913043478%;
  font-weight: bold;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--tourname {
    width: 100%;
  }
}
.weekprogram-item__column--meetingpoint {
  width: 17.3913043478%;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--meetingpoint {
    width: 100%;
  }
}
.weekprogram-item__column--cable-car, .weekprogram-item__column--shuttle {
  width: 6.2608695652%;
  text-align: center;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--cable-car, .weekprogram-item__column--shuttle {
    width: 100%;
    text-align: left;
  }
}
.weekprogram-item__column--price, .weekprogram-item__column--return, .weekprogram-item__column--start, .weekprogram-item__column--km, .weekprogram-item__column--rise {
  width: 6.9565217391%;
  text-align: center;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--price, .weekprogram-item__column--return, .weekprogram-item__column--start, .weekprogram-item__column--km, .weekprogram-item__column--rise {
    width: 100%;
    text-align: left;
  }
}
.weekprogram-item__column--difficulty {
  width: 6.4347826087%;
  text-align: center;
  color: #639982;
  font-weight: 600;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__column--difficulty {
    width: 100%;
    text-align: left;
  }
}
.weekprogram-item:nth-child(2n+1) .weekprogram-item__column--dayofweek {
  background: #efefef;
  border-bottom-color: #efefef;
}
.weekprogram-item__inner-row:first-child .weekprogram-item__column {
  vertical-align: bottom;
}
.weekprogram-item__inner-row:last-child .weekprogram-item__column {
  vertical-align: middle;
}
.weekprogram-item__inner-column {
  padding: 10px 0;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__inner-column {
    padding: 0;
  }
}
.weekprogram-item__inner-column {
  border-top: 1px solid #464646;
}
.weekprogram-item__inner-column:first-child {
  border-top: none;
}
.weekprogram-item__mobile-label {
  display: none;
  font-weight: 800;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__mobile-label {
    display: inline-block;
  }
}
.weekprogram-item__mobile-value {
  display: none;
}
@media all and (max-width: 34.375em) {
  .weekprogram-item__mobile-value {
    display: inline-block;
  }
}
.weekprogram-item__desktop-value {
  display: none;
}
@media all and (min-width: 34.375em) {
  .weekprogram-item__desktop-value {
    display: block;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* teaser
/* ============================================================================= */
.teaser-slider__content {
  padding: 20px 30px 25px 55px;
  background: #fff;
}
@media all and (min-width: 667px) {
  .teaser-slider__content {
    min-height: 400px;
  }
}
@media all and (min-width: 667px) and (max-width: 1024px) {
  .teaser-slider__content {
    min-height: 300px;
  }
}
.teaser-slider__description {
  margin-bottom: 0;
}
.teaser-slider__subtitle {
  max-width: 100%;
  font-size: 1.5em;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* tours
/* ============================================================================= */
.tour-item__key {
  font-weight: 600;
}
.tour-item__name {
  padding: 0 15px;
}
@media all and (max-width: 41.6875em) {
  .tour-item__name {
    padding: 0;
  }
}

.tours-detail__description {
  margin-top: 55px;
  margin-top: 2.8947368421vw;
}
.tours-detail__scroll-to-download {
  margin-top: 25px;
}

#toursmap {
  height: 400px;
  margin-top: 55px;
  margin-top: 2.8947368421vw;
}

.tours-checkbox-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tours-checkbox-list li {
  padding-left: 0;
}

.tours-download__scroll-anchor {
  position: absolute;
  top: -100px;
  left: 0;
  height: 1px;
  width: 1px;
}

.other-tours {
  padding-left: 0;
  list-style: none;
}
.other-tours__container {
  border-top: 1px dashed #639982;
  margin-top: 75px;
  margin-top: 3.9473684211vw;
  padding-top: 30px;
  padding-top: 1.5789473684vw;
}
.other-tours li:before {
  content: "·";
  padding-right: 10px;
}
.other-tours__item {
  color: #464646;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* galleriesBox
/* ============================================================================= */
.videos-box {
  margin-top: 85px;
  margin-top: 4.4736842105vw;
  margin-bottom: 85px;
  margin-bottom: 4.4736842105vw;
}
.videos-box__image {
  width: 100%;
  height: auto;
  display: block;
}
.videos-box__title {
  margin-bottom: 20px;
}
@media all and (max-width: 768px) {
  .videos-box__title {
    font-size: 25px;
  }
}
.videos-box__button {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  pointer-events: none;
}
.videos-box__button svg {
  width: 18px;
  height: 18px;
  stroke: #fff;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* base-share
/* ============================================================================= */
.base-share {
  position: relative;
  margin-top: 43px;
  margin-top: 2.2631578947vw;
  margin-bottom: 50px;
  margin-bottom: 2.6315789474vw;
}
.base-share__button, .base-share__icon {
  display: inline-block;
}
.base-share__button {
  text-decoration: none;
  color: #fff;
  margin: 0 2px;
  border-radius: 5px;
  padding: 0.5em 0.75em;
  line-height: 15px;
}
.base-share__button:first-child {
  margin-left: 0;
}
.base-share__button:last-child {
  margin-right: 0;
}
.base-share__button--twitter {
  background-color: #55acee;
}
.base-share__button--twitter:hover {
  background-color: #2795e9;
}
.base-share__button--facebook {
  background-color: #3b5998;
}
.base-share__button--facebook:hover {
  background-color: #2d4373;
}
.base-share__button--googleplus {
  background-color: #dd4b39;
}
.base-share__button--googleplus:hover {
  background-color: #c23321;
}
.base-share__button--email {
  background-color: #777;
}
.base-share__button--email:hover {
  background-color: #5e5e5e;
}
.base-share__icon {
  width: 1em;
  height: 1em;
  fill: #fff;
  stroke: none;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* quickrequest
/* ============================================================================= */
.quickrequest {
  display: none;
}
@media all and (max-width: 48em) {
  .quickrequest {
    display: block;
  }
}
.quickrequest__label {
  background: #639982;
  color: #fff;
  font-size: 0.8125em;
  line-height: 1.4375;
  padding-left: 10px;
  display: block;
}
.quickrequest__calendar {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.quickrequest__date-label {
  background: #fff;
  display: block;
  text-align: center;
}
.quickrequest__date-label .year,
.quickrequest__date-label .day {
  display: block;
}
.quickrequest__date-label .day {
  font-size: 26px;
  line-height: 43px;
  font-weight: 800;
}
.quickrequest__date-label .year {
  font-size: 13px;
  max-width: 53px;
  width: 100%;
  border-top: 1px solid #464646;
  margin: 0 auto;
  line-height: 33px;
}
.quickrequest input {
  display: block;
  border: none;
  width: 100%;
  line-height: 76px;
  text-align: center;
  font-weight: 800;
  font-size: 26px;
}
.quickrequest__buttons {
  margin-top: 15px;
}
.quickrequest__buttons a {
  display: block;
  width: 50%;
  float: left;
  text-transform: uppercase;
}
@media all and (max-width: 25.875em) {
  .quickrequest__buttons a {
    float: none;
    width: 100%;
    margin-bottom: 10px;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* prices
/* ============================================================================= */
.price-header {
  padding-top: 180px;
}
.price-header__room-name {
  display: block;
  font-size: 1.2857142857em;
  font-weight: 400;
  color: #639982;
  position: relative;
  padding-left: 30px;
  white-space: nowrap;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  font-style: normal;
}
@media all and (max-width: 414px) {
  .price-header {
    display: none;
  }
}

.price-type {
  font-style: italic;
  text-align: center;
}
.price-type__mobile {
  display: none;
  margin-left: 30px;
}
.price-type__mobile:after {
  content: ":";
  margin-right: 15px;
}
@media all and (max-width: 414px) {
  .price-type {
    display: none;
  }
  .price-type__mobile {
    display: inline-block;
  }
}

.price-item {
  letter-spacing: normal;
  text-align: center;
  border-top: 1px solid #464646;
  padding: 4px 0;
}
.prices--room-detail .price-item:nth-child(1) {
  border-top: none;
}
.price-item__date {
  font-weight: 600;
  font-size: 15px;
  padding-top: 25px;
}
@media all and (max-width: 414px) {
  .price-item__date {
    padding-top: 15px;
    padding-bottom: 10px;
  }
}
.price-item__room-name {
  font-size: 1.2857142857em;
  color: #639982;
  display: none;
}
@media all and (max-width: 414px) {
  .price-item__room-name {
    display: block;
  }
}
@media all and (max-width: 31.25em) {
  .price-item {
    font-size: 0.875em;
  }
}
@media all and (max-width: 414px) {
  .price-item {
    text-align: left;
  }
  .price-item:nth-child(2) {
    border-top: none;
  }
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* teaser
/* ============================================================================= */
.socialwall-showcase {
  position: relative;
  overflow: hidden;
  margin-top: 85px;
  margin-top: 4.4736842105vw;
  margin-bottom: 80px;
  margin-bottom: 4.2105263158vw;
  padding-bottom: 30px;
}
.socialwall-showcase__title {
  position: absolute;
  left: 50%;
  bottom: 50%;
  margin-bottom: -30px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 100;
  display: block;
  background: #639982;
  color: #fff;
  padding: 15px 41px 15px 23px;
  text-transform: uppercase;
  font-size: 40px;
  line-height: 1;
  font-family: "chaparral-pro", serif;
  white-space: nowrap;
  letter-spacing: 0.05em;
}
.socialwall-showcase__title svg {
  fill: #fff;
  width: 31px;
  height: 31px;
}
@media all and (max-width: 414px) {
  .socialwall-showcase__title {
    left: 0;
    right: 0;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    font-size: 1.875em;
    text-align: center;
  }
}
.socialwall-showcase__item {
  position: relative;
}
.socialwall-showcase__item:nth-child(2n+2) {
  top: 30px;
}
.socialwall-showcase__item:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 100%;
}
@media all and (max-width: 768px) {
  .socialwall-showcase__item:nth-child(2n+2) {
    top: 0;
  }
  .socialwall-showcase__item:nth-child(2n+1) {
    top: 30px;
  }
  .socialwall-showcase__item:nth-child(n+7) {
    display: none;
  }
}
@media all and (max-width: 414px) {
  .socialwall-showcase__item:nth-child(n+5) {
    display: none;
  }
}
.socialwall-showcase img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  display: block;
}

@supports (-o-object-fit: cover) {
  .socialwall-showcase img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
  }
}
@supports (object-fit: cover) {
  .socialwall-showcase img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
  }
}
.socialwall .are-images-unloaded {
  opacity: 0;
}
.socialwall__view-more-button {
  position: relative;
  margin: 20px auto 0;
  display: block;
  outline: none;
}
.socialwall__view-more-button:disabled .ajax-loading {
  display: block;
}
.socialwall__view-more-button .ajax-loading {
  left: -2px;
  top: -2px;
  right: -2px;
  bottom: -2px;
  width: auto;
  height: auto;
}
.socialwall__view-more-button .ajax-loading__container {
  margin-top: 29px;
}

.socialwall-item,
.socialwall-item__col-sizer {
  width: 49.5%;
}
@media all and (max-width: 667px) {
  .socialwall-item,
  .socialwall-item__col-sizer {
    width: 100%;
  }
}

.socialwall-item__gutter {
  position: absolute;
  width: 1%;
}
@media all and (max-width: 768px) {
  .socialwall-item__gutter {
    width: 0.5%;
  }
}
@media all and (max-width: 667px) {
  .socialwall-item__gutter {
    width: 0;
  }
}

.socialwall-item {
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
  float: left;
  -moz-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  background: #fff;
}
.socialwall-item.js-loading {
  opacity: 0;
}
.socialwall-item__icon {
  position: absolute;
  left: 40px;
  bottom: 23px;
}
@media all and (max-width: 1280px) {
  .socialwall-item__icon {
    left: 20px;
    bottom: 5px;
  }
}
.socialwall-item__icon svg {
  fill: #fff;
  width: 25px;
  height: 25px;
}
.socialwall-item__image-container {
  position: relative;
  overflow: hidden;
  display: block;
}
.socialwall-item__image-container:before {
  content: "";
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
  height: 100px;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  right: 0;
}
.socialwall-item__col-sizer {
  position: absolute;
}
@media all and (max-width: 768px) {
  .socialwall-item {
    margin-bottom: 10px;
  }
}
@media all and (max-width: 667px) {
  .socialwall-item {
    margin-bottom: 5px;
  }
}
.socialwall-item__content {
  padding: 20px;
}
.socialwall-item__message {
  font-size: 0.875em;
}
.socialwall-item__message p {
  margin: 0;
  padding: 0;
}
.socialwall-item__count {
  display: -webkit-box;
  display: -moz-box;
  display: box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #efefef;
  padding-top: 20px;
  font-size: 0;
}
.socialwall-item__count-icon {
  position: relative;
  text-align: center;
  color: #42434a;
  display: inline-block;
  font-size: 8px;
  padding-top: 1px;
  font-weight: bold;
  margin-right: 20px;
}
.socialwall-item__count-icon span {
  position: absolute;
  width: 15px;
  height: 15px;
  background: #42434a;
  color: #fff;
  right: -9px;
  bottom: 17px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  line-height: 15px;
}
.socialwall-item__count-icon--comments span {
  right: -7px;
}
.socialwall-item__source-icon, .socialwall-item__count-icon svg {
  width: 24px;
  height: 24px;
  fill: #42434a;
  display: inline-block;
}
.socialwall-item__source {
  position: relative;
  margin-left: auto;
}

.socialwall-item-owner {
  position: absolute;
  left: 20px;
  top: 20px;
  font-size: 0.875em;
  line-height: 1;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  z-index: 100;
}
.socialwall-item-owner:hover {
  text-decoration: none;
}
.socialwall-item-owner__image-container {
  position: relative;
  overflow: hidden;
  border: 2px solid #fff;
  float: left;
  margin-right: 14px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
}
.socialwall-item-owner__image {
  display: block;
}
.socialwall-item-owner__name {
  color: #fff;
  display: block;
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-left: 45px;
  margin-top: 3px;
}
.socialwall-item-owner__date {
  color: #e6e6e6;
  display: block;
  margin-top: 3px;
  margin-left: 45px;
}

.socialwall-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  pointer-events: none;
  opacity: 0;
}
@media all and (max-height: 768px) {
  .socialwall-modal {
    overflow-x: hidden;
    overflow-y: auto;
  }
}
.socialwall-modal--open {
  opacity: 1;
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  pointer-events: auto;
}
.socialwall-modal__container {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background: #fff;
  -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #fff;
  max-width: 1024px;
  width: 100%;
}
@media all and (max-height: 768px) {
  .socialwall-modal__container {
    top: 20px;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-bottom: 20px;
  }
}
@media all and (max-width: 1280px) {
  .socialwall-modal__container {
    width: 80%;
    width: 80vw;
  }
}
@media all and (max-width: 1024px) {
  .socialwall-modal__container {
    width: 90%;
    width: 90vw;
    width: calc(100vw - 20px);
  }
}
.socialwall-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.2);
  opacity: 0;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.socialwall-modal--open .socialwall-modal__overlay {
  opacity: 1;
}
.socialwall-modal__image {
  display: block;
  width: 100%;
  height: auto;
}
.socialwall-modal__content {
  padding: 20px;
}
.socialwall-modal__inner {
  position: relative;
  z-index: 1;
}
.socialwall-modal__close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  color: #fff;
  width: 35px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  background: #f3a0a0;
  z-index: 100;
}
.socialwall-modal__close svg {
  width: 20px;
  height: 20px;
  fill: #fff;
  margin-top: 7px;
  display: inline-block;
}
.socialwall-modal__close:hover {
  color: #fff;
  text-decoration: none;
}
.socialwall-modal__nav {
  border: none;
  outline: none;
  background: rgba(66, 67, 74, 0.5);
  padding: 0;
  margin: 0;
  position: absolute;
  bottom: 0;
  padding: 10px 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.socialwall-modal__nav:hover {
  background: rgba(66, 67, 74, 0.7);
}
.socialwall-modal__nav--prev {
  right: 24px;
}
.socialwall-modal__nav--next {
  right: 0;
}
.socialwall-modal__nav svg {
  width: 24px;
  height: 24px;
  fill: #fff;
  display: block;
}
.socialwall-modal__message {
  margin-top: 20px;
  padding-bottom: 70px;
  font-size: 90%;
}
.socialwall-modal__message p {
  margin: 0;
  padding: 0;
}
.socialwall-modal__count {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  border-top: 1px solid #efefef;
  padding-top: 20px;
}
.socialwall-modal__count .socialwall-item__source {
  right: 0;
}

.socialwall-modal-owner {
  font-size: 0.875em;
  line-height: 1;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  z-index: 100;
}
.socialwall-modal-owner:hover {
  text-decoration: none;
}
.socialwall-modal-owner__image-container {
  position: relative;
  overflow: hidden;
  border: 2px solid #fff;
  float: left;
  margin-right: 14px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
  -moz-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}
.socialwall-modal-owner__image {
  display: block;
}
.socialwall-modal-owner__name {
  color: #464646;
  display: block;
  max-width: 80%;
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-left: 45px;
  margin-top: 3px;
}
.from-cache .socialwall-modal-owner__name {
  max-width: 100%;
  background: none;
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}
.js-loaded .socialwall-modal-owner__name {
  max-width: 100%;
  background: none;
}
.socialwall-modal-owner__date {
  color: #42434a;
  display: block;
  margin-top: 3px;
  margin-left: 45px;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */
/* =============================================================================
/* cookie banner tag manager
/* ============================================================================= */
.cookie-banner-tm__option input:hover + label:before {
  background: #639982;
}
.cookie-banner-tm__option input:checked + label:before {
  background: #639982;
}
.cookie-banner-tm__option input:checked + label:after {
  background: #fff;
}
.cookie-banner-tm__button {
  background-color: #639982;
}
.cookie-banner-tm__button:hover {
  background-color: #32554b;
  color: #fff;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* cookies
/* ============================================================================= */
.cookie-category {
  margin-bottom: 2.5em;
}
.cookie-category__title {
  font-weight: bold;
}

.cookie-table {
  width: 100%;
  margin: 0.625em 0;
}
.cookie-table__container {
  max-width: 100%;
  overflow: auto;
}
.cookie-table th {
  padding: 0.1875em 0.3125em;
  border: solid 1px #464646;
}
.cookie-table td {
  border: solid 1px #464646;
  padding: 0.1875em 0.3125em;
}

/* =============================================================================
/* VARIABLES
/* ============================================================================= */ /* =============================================================================
/* smartPay
/* ============================================================================= */
.smartPay {
  letter-spacing: 0;
}
.smartPay .hgPaymentWidget {
  margin: 0 auto;
}
.smartPay .hgPaymentWidget .hgpButton.hgpButtonPrimary {
  background-color: #639982;
}
.smartPay .hgPaymentWidget .hgpButton.hgpButtonPrimary:hover, .smartPay .hgPaymentWidget .hgpButton.hgpButtonPrimary:focus, .smartPay .hgPaymentWidget .hgpButton.hgpButtonPrimary:active {
  background-color: #32554b;
}
.smartPay .hgPaymentWidget .hgpButton:hover, .smartPay .hgPaymentWidget .hgpButton:focus, .smartPay .hgPaymentWidget .hgpButton:active {
  text-decoration: none;
}
.smartPay .hgPaymentWidget .hgpProgress {
  border-bottom: 5px solid #639982;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpStepActive .hgpRect {
  background-color: #639982;
  color: #f4f3f1;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpRect {
  border: 1px solid #639982;
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpLabel {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpText.hgpInfo a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpForm input[type=text]:focus, .smartPay .hgPaymentWidget .hgpForm input[type=email]:focus, .smartPay .hgPaymentWidget .hgpForm input[type=number]:focus, .smartPay .hgPaymentWidget .hgpForm select:focus, .smartPay .hgPaymentWidget .hgpForm textarea:focus {
  box-shadow: 0 0 0 2px #639982;
}
.smartPay .hgPaymentWidget .hgpForm .hgpHighlight {
  background: #639982;
}
.smartPay .hgPaymentWidget .hgpForm .hgpAddPerson .hgpLeft {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpForm .hgpAddPerson a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpCheckBox {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpCheckBox input[type=checkBox] + span:before {
  border: 2px solid #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpCheckBox input[type=checkBox] + span:after {
  border: solid #639982;
  border-width: 0 3px 3px 0;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpRadioButton {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpRadioButton input[type=radio] + span:before {
  border: 2px solid #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpRadioButton input[type=radio] + span:after {
  background: #639982;
}
.smartPay .hgPaymentWidget .hgpFormElement .hgpIcon svg {
  color: #639982;
  fill: #639982;
}
.smartPay .hgPaymentWidget .hgpPrivacyCheckbox span a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpRssvInfoReceved span a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpFormAmountCalculator .hgpBooked {
  background: #4f7a68;
}
.smartPay .hgPaymentWidget .hgpFormAmountCalculator .hgpAmount {
  background: #639982;
}
.smartPay .hgPaymentWidget .hgpFooter .hgpFooterHeader {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpFooterImpressum a, .smartPay .hgPaymentWidget .hgpFooterAgent a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpAdditionalInfo a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpLoadingSign .hgpLoadingIcon:before {
  border-top-color: #639982;
}
.smartPay .hgPaymentWidget .hgpButton.hgpButtonPrimary {
  background: #639982;
}
.smartPay .hgPaymentWidget .hgpExpander {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpExpander a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpExpanderContainer a {
  color: #639982;
}
.smartPay .hgPaymentWidget .hgpCalendar-date[data-state=pending], .smartPay .hgPaymentWidget .hgpCalendar-date[data-state=start], .smartPay .hgPaymentWidget .hgpCalendar-date[data-state=end] {
  background: #639982 !important;
  border-color: #639982;
}
.smartPay .hgPaymentWidget .hgpCalendar-button:hover {
  border-color: #639982;
}
.smartPay .hgpPopupContent .hgpPopupContentHeader {
  background-color: #639982;
}
.smartPay .hgPaymentWidget .hgpSummaryContainer.hgpSummarySum {
  background-color: #4f7a68;
}
.smartPay .hgPaymentWidget .hgpFinishContainer .hgpFinishHeader {
  background-color: #4f7a68;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpStep:not(:last-child) .hgpStepInner > div:last-child:before {
  border-top: 2px dotted #4f7a68;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpRect {
  color: #4f7a68;
}
.smartPay .hgPaymentWidget .hgpProgress .hgpSumContainer {
  background-color: #4f7a68;
}

/* =============================================================================
/* RETINA
/* ============================================================================= */
@media only screen and (-Webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {
  /* =============================================================================
  /* LOGO CONSISTO
  /* ============================================================================= */
  .logo-consisto {
    background-image: url(http://www.consisto.it/media/logos/consisto-gray@2.png);
    background-size: 49px 19px;
  }
  .logo-consisto:hover {
    background-image: url(http://www.consisto.it/media/logos/consisto@2.png);
  }
}
