/*! modern-normalize | MIT License | https://github.com/sindresorhus/modern-normalize */

/* Document
   ========================================================================== */

/**
 * Use a better box model (opinionated).
 */

html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

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

/**
 * Use a more readable tab size (opinionated).
 */

:root {
	-moz-tab-size: 4;
	-o-tab-size: 4;
	   tab-size: 4;
}

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/**
 * Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
 */

body {
	font-family:
		-apple-system,
		BlinkMacSystemFont,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji',
		'Segoe UI Symbol';
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct height in Firefox.
 */

hr {
	height: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Add the correct text decoration in Chrome, Edge, and Safari.
 */

abbr[title] {
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp,
pre {
	font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, Courier, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in all browsers.
 */

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

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
	padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome and Firefox.
 */

progress {
	vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type='search'] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Chrome and Safari.
 */

summary {
	display: list-item;
}

/*!
Theme Name: Bwap
Theme URI: https://bwap.ch
Description: Theme provided by the Bureau Web
Author: Bureau Web
Version: 0.1
*/
/**
*   Table of contents 
*
*   Colors
*   Typography
*   Breakpoints
*   Scaffolding
*/
/**
 * The primary color variable.
 *
 * @color
 * @section Colors
 */
/**
 * The secondary color variable.
 *
 * @color
 * @section Colors
 */
/**
 * The text color variable.
 *
 * @color
 * @section Colors
 */
/**
 * The background color variable.
 *
 * @color
 * @section Colors
 */
/**
 * @atom Container
 * @section Scaffold
 */
.container, .image, .image--fluid, .image--small {
  width: 100%;
  max-width: 1140px;
  margin: auto;
  padding: 0 15px; }
  @media (min-width: 577px) {
    .container, .image, .image--fluid, .image--small {
      padding: 0 30px; } }
  @media (min-width: 992px) {
    .container, .image, .image--fluid, .image--small {
      padding: 0 30px; } }
  @media (min-width: 1200px) {
    .container, .image, .image--fluid, .image--small {
      padding: 0 15px; } }
  .container--large, .image {
    max-width: 1430px; }
  .container--small, .image--fluid, .image--small {
    max-width: 750px; }
  .container p:first-of-type, .image p:first-of-type, .image--fluid p:first-of-type, .image--small p:first-of-type {
    margin: 0; }
  .container p:only-child, .image p:only-child, .image--fluid p:only-child, .image--small p:only-child {
    margin: 1rem 0; }
  .container p:last-child, .image p:last-child, .image--fluid p:last-child, .image--small p:last-child {
    margin: 1rem 0 0; }
  .single-laravel-offer .container ul, .single-laravel-offer .image ul, .single-laravel-offer .image--fluid ul, .single-laravel-offer .image--small ul {
    list-style: none; }

/**
 * @atom Grid
 * @section Scaffold
 * @modifiers
 *  .grid--4-cols Display elements on 4 columns
 *  .grid--3-cols Display elements on 3 columns
 *  .grid--small-gap Display elements on 3 columns
 *  .grid--big-gap Display elements on 3 columns
 * @markup
 *  <h3>Standard 2 columns grid</h3>
 *  <div class="grid">
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *  </div>
 *
 *  <h3>3 columns grid</h3>
 *  <div class="grid grid--3-cols">
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *  </div>
 *
 *  <h3>4 columns grid</h3>
 *  <div class="grid grid--4-cols">
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *  </div>
 *
 *  <h3>Big gap grid</h3>
 *  <div class="grid grid--3-cols grid--big-gap">
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *  </div>
 *
 *  <h3>Small gap grid</h3>
 *  <div class="grid grid--3-cols grid--small-gap">
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *      <img class="img-responsive" src="@{image:400:100}" />
 *  </div>
 */
.grid, .bigicons > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .grid > *, .bigicons > div > * {
    width: 100%; }
    @media (min-width: 992px) {
      .grid > *, .bigicons > div > * {
        width: 48%; } }
  @supports (display: grid) {
    .grid, .bigicons > div {
      display: grid;
      grid-template-columns: 1fr;
      grid-gap: 15px; }
      @media (min-width: 577px) {
        .grid--event {
          grid-gap: 15px; }
        .grid--2-cols {
          grid-template-columns: 1fr 1fr; }
        .grid--3-cols, .bigicons > div {
          grid-template-columns: 1fr 1fr; }
        .grid--4-cols {
          grid-template-columns: 1fr 1fr; } }
      @media (min-width: 768px) {
        .grid--event {
          grid-gap: 30px;
          grid-template-columns: 1fr 1fr; }
        .grid--404 {
          grid-template-columns: 1fr 1fr;
          gap: 15px; } }
      @media (min-width: 992px) {
        .grid--event {
          grid-template-columns: 2fr 1fr;
          grid-gap: 120px; }
        .grid--404 {
          grid-template-columns: 1fr 1fr;
          gap: 35px; }
        .grid--3-cols, .bigicons > div {
          grid-template-columns: 1fr 1fr 1fr; }
        .grid--4-cols {
          grid-template-columns: 1fr 1fr 1fr 1fr; } }
      .grid > *, .bigicons > div > * {
        width: 100%; }
      .grid--small-gap {
        grid-gap: 10px; }
      .grid--big-gap {
        grid-gap: 30px; }
      .grid--lg-gap {
        grid-gap: 60px; }
      .grid--xl-gap {
        grid-gap: 120px; }
      .grid--xxl-gap {
        grid-gap: 160px; } }

.grid-center {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin: 40px 20px; }
  @media (min-width: 768px) {
    .grid-center {
      grid-template-columns: repeat(6, 1fr); }
      .grid-center div {
        grid-column: span 2;
        /* Dealing with 2 orphan items */
        /* Dealing with single orphan */ }
        .grid-center div:last-child:nth-child(3n - 1) {
          grid-column-end: -2; }
        .grid-center div:nth-last-child(2):nth-child(3n + 1) {
          grid-column-end: 4; }
        .grid-center div:last-child:nth-child(3n - 2) {
          grid-column-end: 5; } }

.time-table {
  display: grid;
  grid-gap: 10px; }
  @media (min-width: 577px) {
    .time-table {
      grid-gap: 20px;
      grid-template-columns: 50px 1fr 1fr; } }

.section {
  margin-top: 30px;
  margin-bottom: 30px;
  /*Is not use has a main section but inside one*/ }
  @media (min-width: 577px) {
    .section {
      margin-top: 60px;
      margin-bottom: 60px; } }
  .section--padding:not(.section--calltoaction) {
    padding-top: 30px;
    padding-bottom: 30px; }
    @media (min-width: 577px) {
      .section--padding:not(.section--calltoaction) {
        padding-top: 60px;
        padding-bottom: 60px; } }
    .section--padding:not(.section--calltoaction) + .section--padding,
    .section--padding:not(.section--calltoaction) + .section--planyourtrip,
    .section--padding:not(.section--calltoaction) + .section--newsletter {
      margin-top: -30px; }
      @media (min-width: 577px) {
        .section--padding:not(.section--calltoaction) + .section--padding,
        .section--padding:not(.section--calltoaction) + .section--planyourtrip,
        .section--padding:not(.section--calltoaction) + .section--newsletter {
          margin-top: -60px; } }
    .section--padding:not(.section--calltoaction):last-child {
      margin-bottom: 0; }
  .section--herovideo {
    margin: 0; }
    .section--herovideo + .section--booking {
      margin-top: 0 !important; }
  .section--herocarousel {
    margin: -0 0; }
    .section--herocarousel + .section--booking {
      margin-top: 0; }
  .section--hero {
    margin-bottom: 100px;
    color: var(--text-color, #1a1a1a); }
    .section--hero .hero--no-image {
      color: #1e1e1e; }
  .section--hero + .section--booking {
    margin-top: -100px; }
  @media (min-width: 768px) {
    .section--laravel-offer {
      margin-top: 90px;
      margin-bottom: 90px; } }
  .section--teasers {
    width: 100vw;
    overflow: hidden; }
  .section--calltoaction .calltoaction {
    color: var(--text-color, #1a1a1a); }
  .section--background-color:not(.section--calltoaction) {
    position: relative;
    background: var(--background-color, #fff); }
  .section--planyourtrip, .section--newsletter {
    margin: 0;
    padding: 0; }
  .section__header {
    text-align: center;
    max-width: 750px;
    margin: 1.5rem auto 2.5rem;
    padding: 0 15px; }
    @media (min-width: 577px) {
      .section__header {
        padding: 0 30px; } }
    @media (min-width: 992px) {
      .section__header {
        padding: 0 30px; } }
    @media (min-width: 1200px) {
      .section__header {
        padding: 0 15px; } }
    .section__header--align-left {
      text-align: initial; }
  .section__suptitle {
    text-transform: uppercase;
    color: #e7302f;
    margin: 0 0 0.2em; }
  .section__title {
    margin: 0 0 1rem; }
  .section__subtitle {
    color: #4d4d4d; }

@font-face {
  font-family: "Euclid";
  src: url(images/bundle-EuclidLight.eot);
  src: url(images/bundle-EuclidLight.eot?#iefix) format("embedded-opentype"), url(images/bundle-EuclidLight.woff2) format("woff2"), url(images/bundle-EuclidLight.woff) format("woff"), url(images/bundle-EuclidLight.ttf) format("truetype"), url(images/bundle-EuclidLight.svg#EuclidLight) format("svg");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: "Euclid";
  src: url(images/bundle-EuclidRegular.eot);
  src: url(images/bundle-EuclidRegular.eot?#iefix) format("embedded-opentype"), url(images/bundle-EuclidRegular.woff2) format("woff2"), url(images/bundle-EuclidRegular.woff) format("woff"), url(images/bundle-EuclidRegular.ttf) format("truetype"), url(images/bundle-EuclidRegular.svg#EuclidRegular) format("svg");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Euclid";
  src: url(images/bundle-EuclidMedium.eot);
  src: url(images/bundle-EuclidMedium.eot?#iefix) format("embedded-opentype"), url(images/bundle-EuclidMedium.woff2) format("woff2"), url(images/bundle-EuclidMedium.woff) format("woff"), url(images/bundle-EuclidMedium.ttf) format("truetype"), url(images/bundle-EuclidMedium.svg#EuclidMedium) format("svg");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: "Euclid";
  src: url(images/bundle-EuclidBold.eot);
  src: url(images/bundle-EuclidBold.eot?#iefix) format("embedded-opentype"), url(images/bundle-EuclidBold.woff2) format("woff2"), url(images/bundle-EuclidBold.woff) format("woff"), url(images/bundle-EuclidBold.ttf) format("truetype"), url(images/bundle-EuclidBold.svg#EuclidBold) format("svg");
  font-weight: 700;
  font-style: normal; }

.form__input {
  width: 100%;
  max-width: 555px;
  height: 35px;
  border: 0;
  border-bottom: solid 2px #1e1e1e;
  margin: 0.5rem 0 0;
  cursor: default;
  border-radius: 0;
  cursor: text; }
  .form__input--chevron {
    cursor: pointer;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=);
    background-repeat: no-repeat, repeat;
    background-position: right 0 top 50%, 0 0; }

.form__select {
  cursor: pointer;
  width: 100%;
  max-width: 555px;
  height: 35px;
  border: 0;
  border-bottom: solid 2px #1e1e1e;
  margin: 0.5rem 0 0;
  background: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=);
  background-repeat: no-repeat, repeat;
  background-position: right 0 top 50%, 0 0; }
  .form__select::-ms-expand {
    display: none; }
  .form__select option {
    font-weight: normal; }

fieldset {
  border: 1px solid #1e1e1e; }
  @media (min-width: 577px) {
    fieldset {
      padding: 30px 55px; } }

legend {
  text-align: center;
  font-weight: 300;
  padding: 0 30px;
  margin: 0 auto; }
  @media (min-width: 577px) {
    legend {
      letter-spacing: 0.75px;
      font-size: 28px; } }

.wrapper-search {
  text-align: center;
  color: #000; }
  .wrapper-search form {
    width: 100%;
    padding: 5px 0;
    margin-right: 5px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex; }
    @media (min-width: 768px) {
      .wrapper-search form {
        width: 40%; } }
    .wrapper-search form .form-search {
      width: 90%;
      text-align: initial;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      border-bottom: 1px solid currentColor;
      padding: 10px 0; }
      @media (min-width: 768px) {
        .wrapper-search form .form-search {
          width: 95%; } }
    .wrapper-search form .form-input {
      font-size: 17px;
      border: none;
      height: 100%;
      background: transparent;
      color: currentColor;
      margin-left: 10px; }
      .wrapper-search form .form-input:focus {
        outline: none; }
      .wrapper-search form .form-input::-webkit-input-placeholder {
        color: #cacaca; }
      .wrapper-search form .form-input::-moz-placeholder {
        color: #cacaca; }
      .wrapper-search form .form-input::-ms-input-placeholder {
        color: #cacaca; }
      .wrapper-search form .form-input::placeholder {
        color: #cacaca; }
    .wrapper-search form .form-submit {
      background: transparent;
      border: none;
      padding: 0;
      margin: 0;
      color: currentColor;
      cursor: pointer; }
      .wrapper-search form .form-submit:hover {
        opacity: 0.6; }
    .wrapper-search form .form-clear {
      background: transparent;
      border: none;
      color: currentColor;
      cursor: pointer;
      padding: 0;
      margin: 0; }
      .wrapper-search form .form-clear:hover {
        opacity: 0.6; }
  .wrapper-search .form-suggestion {
    width: 95%;
    height: auto;
    background-color: #d7d6d7; }
    .wrapper-search .form-suggestion ul {
      font-size: 17px;
      color: #1a1919;
      padding: 0;
      margin: 20px 0 0; }
      @media (min-width: 768px) {
        .wrapper-search .form-suggestion ul {
          font-size: 23px; } }
      .wrapper-search .form-suggestion ul li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        list-style: none;
        position: relative;
        padding: 15px;
        text-align: left; }
        .wrapper-search .form-suggestion ul li::after {
          content: "";
          position: absolute;
          right: 15px;
          border-style: solid;
          border-width: 2px 2px 0 0;
          display: inline-block;
          height: 16px;
          width: 16px;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg);
          pointer-events: none; }
        .wrapper-search .form-suggestion ul li a {
          color: currentColor;
          display: grid;
          grid-template-columns: auto 1fr;
          gap: 20px;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          width: 100%; }
        .wrapper-search .form-suggestion ul li:hover {
          background-color: #fff; }
      .wrapper-search .form-suggestion ul li.no-suggestion::after {
        display: none; }
      .wrapper-search .form-suggestion ul li.no-suggestion:hover {
        background-color: transparent; }

html,
body {
  color: #1a1a1a;
  font-family: "Euclid", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 0.45px; }

a {
  color: #e7302f;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  text-decoration: none; }
  a:hover {
    opacity: 0.8; }

.primary {
  color: #e7302f; }

h1,
h2,
.testimony__title,
h3,
.lausanner__title,
h4,
.h1,
.hero__title,
.h2,
.section__title,
.booking__title,
.h3,
.newsletter__title,
.plan-your-trip__title,
.hero__subtitle {
  font-family: "Euclid", sans-serif;
  font-weight: 700; }


.h1,
.hero__title,
h1 {
  font-size: 1.66667rem;
  line-height: 1.1; }
  @media (min-width: 577px) {
    
    .h1,
    .hero__title,
    h1 {
      font-size: 2rem; } }
  @media (min-width: 992px) {
    
    .h1,
    .hero__title,
    h1 {
      font-size: 3rem; } }


.h2,
.section__title,
.booking__title,
h2,
.testimony__title {
  font-size: 1.33333rem;
  line-height: 1.1; }
  @media (min-width: 577px) {
    
    .h2,
    .section__title,
    .booking__title,
    h2,
    .testimony__title {
      font-size: 1.6rem; } }
  @media (min-width: 992px) {
    
    .h2,
    .section__title,
    .booking__title,
    h2,
    .testimony__title {
      font-size: 2.4rem; } }


.h3,
.newsletter__title,
.plan-your-trip__title,
.hero__subtitle,
h3,
.lausanner__title {
  font-size: 1rem;
  line-height: 1.1; }
  @media (min-width: 577px) {
    
    .h3,
    .newsletter__title,
    .plan-your-trip__title,
    .hero__subtitle,
    h3,
    .lausanner__title {
      font-size: 1.2rem; } }
  @media (min-width: 992px) {
    
    .h3,
    .newsletter__title,
    .plan-your-trip__title,
    .hero__subtitle,
    h3,
    .lausanner__title {
      font-size: 1.8rem; } }

.h4, .section__suptitle,
h4,
h5,
h6 {
  font-size: 0.83333rem;
  line-height: 1.1; }
  @media (min-width: 577px) {
    .h4, .section__suptitle,
    h4,
    h5,
    h6 {
      font-size: 1rem; } }
  @media (min-width: 992px) {
    .h4, .section__suptitle,
    h4,
    h5,
    h6 {
      font-size: 1.5rem; } }

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

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

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

/*
* +wysiwyg images
*/
.size-medium,
.size-large {
  max-width: 100%;
  height: auto; }

.aligncenter {
  margin: auto;
  display: block; }

.alignright {
  margin-left: auto;
  display: block; }

/*
* Table of contents
* 
* +General stuff 
*/
/*
* +General stuff
*/
:root {
  --primary: #e7302f; }

html,
body {
  width: 100%;
  height: 100%; }

body {
  min-width: 100%;
  min-height: 100%;
  background-color: #fff;
  overflow-x: hidden;
  padding: 60px 0 0; }
  @media (min-width: 992px) {
    body {
      padding: 80px 0 0; } }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    body:before {
      content: "This website has been built for modern browsers. Why not try the newest version of Firefox ?";
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #333;
      color: #fff;
      z-index: 99999; } }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

main {
  width: 100%;
  height: auto; }

.img-rounded {
  border-radius: 60%; }

.img-responsive {
  display: block;
  height: auto;
  width: 100%;
  max-width: 100%; }

.feather {
  width: 24px;
  height: 24px;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  vertical-align: top; }
  .feather--filled {
    fill: currentColor; }

@media (min-width: 768px) {
  .d-md-block {
    display: block; } }

.menu,
.list {
  list-style-type: none;
  padding: 0; }
  .menu--inline,
  .list--inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-line-pack: center;
        align-content: center; }
    .menu--inline *:not(:last-of-type),
    .list--inline *:not(:last-of-type) {
      margin: 0 15px 0 0; }
      @media (min-width: 992px) {
        .menu--inline *:not(:last-of-type),
        .list--inline *:not(:last-of-type) {
          margin: 0 35px 0 0; } }
  .menu--tag,
  .list--tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-line-pack: center;
        align-content: center; }
    .menu--tag *,
    .list--tag * {
      color: primary; }
      .menu--tag *:not(:last-of-type),
      .list--tag *:not(:last-of-type) {
        margin: 0 35px 0 0; }

.container .top-nav, .image .top-nav, .image--fluid .top-nav, .image--small .top-nav {
  margin: 1.5rem 0; }

.top-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .top-nav .side-menu {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .top-nav .side-menu .feather {
      width: 20px;
      height: auto;
      max-height: 20px; }
      @media (min-width: 992px) {
        .top-nav .side-menu .feather {
          width: 40px;
          max-height: 40px; } }

.author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 40px;
  font-weight: 500;
  color: #1a1a1a;
  /* force color in a link */ }
  .author__avatar {
    margin: 0 20px 0 0;
    width: 50px;
    height: 50px; }
    .author__avatar img {
      width: 100%;
      max-width: 100%;
      height: 100%;
      background-size: cover;
      -o-object-fit: cover;
         object-fit: cover; }
  .author__title {
    margin: 0.15rem 0; }
  .author__subtitle {
    margin: 0; }

input {
  border-radius: 0; }

ul {
  font-size: 16px;
  padding: 0 0 0 35px; }

.text-bold {
  font-weight: 700; }

.lazy {
  background-color: #dedede; }
  .lazy.b-loaded {
    background-color: transparent; }

.pagination {
  width: 100%;
  margin: 30px auto 50px; }
  .pagination__arrows {
    display: none; }
    @media (min-width: 577px) {
      .pagination__arrows {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .pagination__previous a svg {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  .pagination__numbers {
    text-align: center; }
    @media (min-width: 577px) {
      .pagination__numbers .prev {
        display: none; } }
    @media (min-width: 577px) {
      .pagination__numbers .next {
        display: none; } }

.sc-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.8em; }
  .sc-icon--top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .sc-icon svg {
    margin: 0 0.5em 0 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 1.8em;
            flex: 0 0 1.8em;
    height: 1.8em;
    width: 1.8em;
    line-height: 1; }
  .sc-icon--inverse > svg {
    margin: 0 0 0 0.5em;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 1.8em;
            flex: 0 0 1.8em;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }

.btn .sc-icon, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn .sc-icon, .openbooking.bootstrap-pxl .ob---result-item .btn-default .sc-icon, .openbooking.bootstrap-pxl .ob-offer-search-button.active .sc-icon, .expanding-teasers__list button .sc-icon {
  margin: 0; }

.floating-zone {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 7; }

iframe {
  width: 1px;
  min-width: 100%; }

.validity {
  font-style: italic;
  font-size: 17px;
  position: relative;
  display: inline-block;
  margin: 10px auto;
  padding: 10px 25px; }
  @media (min-width: 577px) {
    .validity {
      font-size: 18px; } }
  .validity b {
    font-weight: 400;
    color: #e7302f; }
  .validity:after, .validity:before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    position: absolute;
    border: 0 solid #e7302f; }
  .validity:after {
    bottom: -2px;
    right: -2px;
    border-bottom-width: 3px;
    border-right-width: 3px; }
  .validity:before {
    top: -2px;
    left: -2px;
    border-top-width: 3px;
    border-left-width: 3px; }

.bignumbers {
  counter-reset: section; }
  .bignumbers__item {
    text-align: center; }
    .bignumbers__item:before {
      display: block;
      font-family: Roboto;
      counter-increment: section;
      content: counter(section);
      color: #db3539;
      line-height: 1;
      opacity: 0.7;
      font-weight: 500;
      font-size: 120px; }

/*display icons before text in a big fashion*/
.bigicons {
  margin-top: 60px; }
  .bigicons > div > br {
    display: none; }
  .bigicons .sc-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center; }
    .bigicons .sc-icon svg {
      display: block;
      width: 54px;
      height: 54px;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 54px;
              flex: 0 0 54px;
      margin-bottom: 20px; }

.hidden {
  display: none !important; }

.search-filters {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr 1fr 1fr 1fr; }
  .search-filters__togglers-wrapper {
    grid-column: 1 / -1; }
  .search-filters__togglers {
    margin: 10px 0;
    display: grid;
    grid-gap: 5px;
    grid-template-columns: repeat(auto-fit, 100px); }
    @media screen and (min-width: 360px) {
      .search-filters__togglers {
        grid-gap: 20px;
        grid-template-columns: repeat(auto-fit, 120px); } }
    .search-filters__togglers input {
      display: none; }
      .search-filters__togglers input:checked + label {
        color: #fff;
        background-color: #e7b744;
        border-color: #e7b744;
        font-weight: 400; }
    .search-filters__togglers label {
      width: 100%;
      display: block;
      text-align: center;
      font-size: 10px;
      font-weight: 400;
      padding: 3px;
      letter-spacing: 0.3px;
      color: #fff;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      border: 2px solid #3e3f46;
      color: #3e3f46;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      cursor: pointer;
      -webkit-transition: opacity 0.3s, color 0.3s, background-color 0.3s;
      transition: opacity 0.3s, color 0.3s, background-color 0.3s; }
      @media screen and (min-width: 360px) {
        .search-filters__togglers label {
          font-size: 14px; } }
      .search-filters__togglers label:hover {
        opacity: 0.8; }
  .search-filters__date {
    grid-column: 1 / -1; }
    @media (min-width: 570px) {
      .search-filters__date {
        grid-column: span 2; } }
    @media (min-width: 700px) {
      .search-filters__date {
        grid-column: auto; } }
  .search-filters__keyword {
    grid-column: 1 / -1; }
    @media (min-width: 992px) {
      .search-filters__keyword {
        grid-column: 1 / 3; } }
  .search-filters__submit {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 5px; }
    @media screen and (min-width: 360px) {
      .search-filters__submit {
        grid-gap: 20px; } }
    @media (min-width: 992px) {
      .search-filters__submit {
        grid-column: 3 / 5;
        -ms-flex-item-align: end;
            align-self: end; } }
  .search-filters .form__input {
    max-width: 100%;
    border-color: #e7b744;
    color: #e7b744;
    font-size: 25px;
    letter-spacing: 0.6px; }

.search-page-listing {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 20px; }
  @media (min-width: 577px) {
    .search-page-listing {
      grid-template-columns: 1fr 1fr 1fr; } }
  @media (min-width: 1200px) {
    .search-page-listing {
      grid-template-columns: 1fr 1fr 1fr 1fr; } }
  .search-page-listing--list {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 20px;
    width: 100%;
    max-width: 700px; }
  .search-page-listing__options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 30px 0 50px; }
    .search-page-listing__options .toggle-display {
      margin-left: 0; }
  .search-page-listing__categories .btn, .search-page-listing__categories .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .search-page-listing__categories .ob-offer__btn,
  .search-page-listing__categories .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .search-page-listing__categories .btn-default,
  .search-page-listing__categories .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .search-page-listing__categories .ob-offer-search-button.active, .search-page-listing__categories .expanding-teasers__list button, .expanding-teasers__list .search-page-listing__categories button {
    margin: 5px !important; }
    @media (min-width: 768px) {
      .search-page-listing__categories .btn, .search-page-listing__categories .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .search-page-listing__categories .ob-offer__btn,
      .search-page-listing__categories .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .search-page-listing__categories .btn-default,
      .search-page-listing__categories .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .search-page-listing__categories .ob-offer-search-button.active, .search-page-listing__categories .expanding-teasers__list button, .expanding-teasers__list .search-page-listing__categories button {
        margin: 0 5px !important; } }
  .search-page-listing .teaser {
    height: 100%; }

.header {
  font-weight: 700;
  position: fixed;
  top: 0;
  left: 0;
  width: 1000vw;
  max-width: 100%;
  z-index: 10;
  -webkit-transition: top 0.8s ease;
  transition: top 0.8s ease;
  background: #fff;
  color: #e7302f;
  -webkit-box-shadow: 0 3px 25px 0 rgba(32, 33, 36, 0.28);
          box-shadow: 0 3px 25px 0 rgba(32, 33, 36, 0.28); }
  @media (min-width: 992px) {
    .header {
      border-bottom: 0; } }
  .header ul {
    list-style-type: none; }
  .header__container {
    display: grid;
    grid-template-columns: 1fr auto auto;
    grid-gap: 10px;
    height: 60px; }
    @media (min-width: 577px) {
      .header__container {
        grid-template-columns: 1fr 1fr 1fr; } }
    @media (min-width: 992px) {
      .header__container {
        height: 80px; } }
    .header__container > * {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
  .header__burger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    border: 0;
    background-color: transparent;
    outline: none;
    padding: 0;
    grid-row: 1 / 2;
    grid-column: 3 / 4;
    margin-right: 10px; }
    @media (min-width: 577px) {
      .header__burger {
        grid-column: 1 / 2;
        margin-right: 0; } }
  .header__burger-label {
    display: none; }
    @media (min-width: 577px) {
      .header__burger-label {
        display: inline-block;
        margin-left: 5px;
        color: #e7302f; } }
  @media (min-width: 577px) {
    .header__navbrand {
      grid-row: 1 / 2;
      grid-column: 2 / 3;
      -ms-flex-item-align: center;
          align-self: center;
      justify-self: center; } }
  .header__navbrand a {
    display: block;
    text-align: center; }
  .header__side-menu {
    justify-self: end; }
    .header__side-menu > *:not(:first-child) {
      margin: 0 0 0 1rem; }
    .header__side-menu a {
      display: block;
      height: 20px; }
      @media (min-width: 577px) {
        .header__side-menu a {
          height: 24px; } }
    .header__side-menu .feather {
      color: #89898b;
      height: 20px;
      width: 20px; }
      @media (min-width: 577px) {
        .header__side-menu .feather {
          height: 24px;
          width: 24px; } }
      .header__side-menu .feather:hover {
        color: #e7302f; }
    .header__side-menu .header__lang > ul {
      padding: 0;
      margin: 0; }
    .header__side-menu .js-load-favorites {
      position: relative; }
    .header__side-menu .js-favorites-counter {
      position: absolute;
      top: 10px;
      left: 10px;
      width: 22px;
      color: #fff;
      font-size: 10px;
      text-align: center;
      background-color: #e7302f;
      border-radius: 8px;
      line-height: 1.35; }
      @media (min-width: 577px) {
        .header__side-menu .js-favorites-counter {
          top: 12px;
          left: 12px; } }
  .header__current-lang {
    font-size: 15px;
    text-transform: uppercase;
    position: relative; }
    .header__current-lang a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .header__current-lang a .feather {
        color: #e7302f;
        margin-left: 5px; }
    .header__current-lang:hover .header__submenu {
      display: block; }
      .header__current-lang:hover .header__submenu a:hover {
        color: #1a1a1a; }
  .header__submenu {
    display: none;
    background: #fff;
    position: absolute;
    top: 100%;
    right: 0;
    width: calc(100% + 15px);
    list-style-type: none;
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    padding: 15px; }
  .header__logo {
    vertical-align: middle; }
    @media (min-width: 577px) {
      .header__logo--mobile {
        display: none; } }
    .header__logo--desktop {
      display: none; }
      @media (min-width: 577px) {
        .header__logo--desktop {
          display: block; } }

/* stylelint-disable selector-max-specificity */
.mainmenu {
  padding: 20px 0; }
  .mainmenu > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0; }
    .mainmenu > ul > li > a svg {
      margin-left: 15px;
      position: relative;
      top: -2px; }
    .mainmenu > ul > .menu-item-has-children {
      position: relative; }
      .mainmenu > ul > .menu-item-has-children:hover > .mainmenu__submenu {
        display: block; }
  .mainmenu a {
    color: #e7302f;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    font-size: 14px; }
  .mainmenu [href="#separator"] {
    cursor: default; }
  .mainmenu__submenu {
    list-style-type: none;
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    /**
         * When the submenu's parent is too much on the right,
         * JS might decide to reverse it
         */ }
    .mainmenu__submenu li {
      display: block;
      line-height: 1.1; }
      .mainmenu__submenu li a {
        padding: 4px 0; }
        .mainmenu__submenu li a:hover {
          border-bottom: 1px solid #454545; }
      .mainmenu__submenu li:first-child a {
        padding-top: 20px; }
    .mainmenu__submenu--lvl2 {
      top: 0;
      left: 100%; }
    .mainmenu__submenu--autowidth {
      width: auto; }
    .mainmenu__submenu--reverse {
      left: auto;
      right: 0;
      text-align: right; }
      .mainmenu__submenu--reverse .mainmenu__submenu--lvl2 {
        left: auto;
        right: 100%; }
      .mainmenu__submenu--reverse a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; }
        .mainmenu__submenu--reverse a svg {
          -webkit-transform: rotate(180deg);
                  transform: rotate(180deg); }
    .mainmenu__submenu a {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-transition: color 0.3s;
      transition: color 0.3s;
      padding: 15px 24px; }
    .mainmenu__submenu .menu-item-has-children:hover > .mainmenu__submenu {
      display: block; }
    .mainmenu__submenu .current-menu-ancestor > a,
    .mainmenu__submenu .current-menu-item > a,
    .mainmenu__submenu a:hover {
      color: #e7302f; }
    .mainmenu__submenu--lang {
      background-color: #e7302f; }
      .mainmenu__submenu--lang a {
        color: #fff; }
        .mainmenu__submenu--lang a:hover {
          color: #1a1a1a; }

/* stylelint-enable */
.scroll-blocker {
  overflow: hidden; }

.popmenu {
  position: fixed;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 60px;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  z-index: 8;
  padding: 0;
  overflow-y: auto;
  height: 100%;
  font-size: 36px;
  line-height: 1.1;
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  transition: opacity 0.6s;
  /**
     * when the menu is too long, we cant center it
     * so we force flex to align on top
     */ }
  @media (min-width: 992px) {
    .popmenu {
      top: 80px; } }
  .popmenu--open {
    opacity: 1; }
  .popmenu__container {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 0;
    width: 100%;
    height: 100%; }
    @media (min-width: 992px) {
      .popmenu__container {
        grid-template-columns: 2fr 1fr; } }
    @media (min-width: 1200px) {
      .popmenu__container {
        grid-template-columns: 3fr 1fr; } }
  .popmenu .mainmenu {
    padding: 60px 15px; }
    @media (min-width: 992px) {
      .popmenu .mainmenu {
        padding: 60px 50px; } }
    @media (min-width: 1600px) {
      .popmenu .mainmenu {
        padding: 60px 100px; } }
    .popmenu .mainmenu .menu {
      display: grid;
      grid-template-columns: 1fr;
      grid-gap: 20px;
      width: 100%;
      height: 100%;
      padding: 0; }
      @media (min-width: 577px) {
        .popmenu .mainmenu .menu {
          grid-template-columns: 1fr 1fr; } }
      @media (min-width: 1200px) {
        .popmenu .mainmenu .menu {
          grid-template-columns: repeat(4, 1fr); } }
      .popmenu .mainmenu .menu li {
        -webkit-box-flex: 0;
            -ms-flex-positive: 0;
                flex-grow: 0;
        padding: 0.15rem; }
    .popmenu .mainmenu .title-menu {
      font-weight: 700;
      letter-spacing: 0.75px;
      color: #1e1e1e;
      padding: 0 0 10px; }
      .popmenu .mainmenu .title-menu > a {
        display: block;
        padding-bottom: 0;
        padding-left: 0;
        font-size: 28px;
        border-bottom: 1.5px solid #1e1e1e; }
    .popmenu .mainmenu a {
      color: #454545;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      border-bottom: 1px solid transparent;
      -webkit-transition: border-color 0.45s cubic-bezier(0.65, 0, 0.08, 1);
      transition: border-color 0.45s cubic-bezier(0.65, 0, 0.08, 1); }
    .popmenu .mainmenu .current-menu-item a {
      background-color: transparent;
      border-color: #1e1e1e; }
  .popmenu__right {
    display: grid; }
    .popmenu__right .teaser {
      padding-top: 0;
      min-height: 200px; }
      .popmenu__right .teaser__image {
        padding-top: 0; }
  .popmenu__bottom {
    background-color: #555; }
    @media (min-width: 992px) {
      .popmenu__bottom {
        grid-column: 1 / 3; } }
    .popmenu__bottom .plan-your-trip {
      padding: 0; }
  .popmenu ul {
    display: block;
    list-style-type: none;
    padding: 0; }
    @media (min-width: 992px) {
      .popmenu ul {
        text-align: initial; } }
  .popmenu li svg {
    margin-left: 10; }
  .popmenu--will-scroll {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .popmenu--will-scroll > ul {
      margin-top: 20; }
  .popmenu__submenu {
    position: fixed;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    top: 60px;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    z-index: 9;
    padding: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
    -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: opacity 0.3s ease, transform 0.3s ease;
    transition: opacity 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
    opacity: 0; }
    @media (min-width: 992px) {
      .popmenu__submenu {
        top: 80px; } }
    .popmenu__submenu.visible {
      opacity: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
    .popmenu__submenu.close {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0) scale(1.3);
              transform: translate3d(0, 0, 0) scale(1.3); }
  .popmenu__close {
    color: #e7302f;
    cursor: pointer;
    font-size: 35px;
    display: none;
    position: fixed;
    top: 3px;
    right: 3px;
    z-index: 100;
    width: 48px;
    height: 48px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .popmenu__close.visible {
      display: none;
      visibility: hidden; }
  .popmenu__go-root {
    color: #e7302f;
    cursor: pointer;
    display: none;
    line-height: 1;
    position: fixed;
    top: 6px;
    left: 8px;
    width: 48px;
    height: 48px;
    z-index: 100;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .popmenu__go-root.visible {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }

.footer {
  background: #3e3f46;
  color: #fff;
  padding: 30px 0; }
  @media (min-width: 577px) {
    .footer {
      padding: 60px 0; } }
  .footer a {
    color: currentColor; }
  .footer__top {
    text-align: center;
    display: grid;
    grid-gap: 40px; }
  .footer__bottom {
    display: grid;
    grid-gap: 40px;
    border-top: 2px solid currentColor;
    padding-top: 30px;
    margin-top: 30px; }
    @media (min-width: 768px) {
      .footer__bottom {
        grid-template-columns: repeat(2, auto); } }
  .footer__address .title-menu {
    letter-spacing: 0.75px;
    color: #fff;
    padding: 0 0 10px;
    font-size: 16px;
    font-weight: 700; }
  .footer__address .btn, .footer__address .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .footer__address .ob-offer__btn,
  .footer__address .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .footer__address .btn-default,
  .footer__address .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .footer__address .ob-offer-search-button.active, .footer__address .expanding-teasers__list button, .expanding-teasers__list .footer__address button {
    margin-top: 10px; }
  .footer__info {
    display: grid;
    grid-gap: 20px;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    @media (min-width: 768px) {
      .footer__info {
        grid-template-columns: 1fr auto; } }
  .footer__menu .menu {
    display: grid;
    grid-gap: 20px;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0; }
    @media (min-width: 425px) {
      .footer__menu .menu {
        grid-template-columns: 1fr 1fr; } }
    .footer__menu .menu li {
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      list-style: none; }
    .footer__menu .menu .sub-menu {
      padding: 0; }
  .footer__menu .title-menu {
    letter-spacing: 0.75px;
    color: #fff;
    padding: 0 0 10px; }
    .footer__menu .title-menu > a {
      display: block;
      padding: 0 0 10px;
      padding-left: 0;
      font-size: 16px;
      font-weight: 700; }
    .footer__menu .title-menu .current-menu-item a {
      border: none; }
  .footer__menu a {
    font-weight: initial;
    color: #fff;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .footer__menu .current-menu-item a {
    background-color: transparent;
    border-bottom: 1px solid #fff; }
  .footer__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (min-width: 768px) {
      .footer__logo {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end; } }
    .footer__logo a {
      width: 70%;
      max-width: 115px;
      height: auto; }
      .footer__logo a img {
        width: 100%;
        height: auto; }

.burger i {
  display: block;
  width: 13px;
  height: 2px;
  background-color: #e7302f;
  border-radius: 2px;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  -webkit-transform-origin: center;
          transform-origin: center; }
  .burger i:nth-child(1) {
    -webkit-transform: translateY(-3px);
            transform: translateY(-3px); }
  .burger i:nth-child(3) {
    -webkit-transform: translateY(3px);
            transform: translateY(3px); }

.is-active > .burger i:nth-child(1) {
  -webkit-transform: rotate(45deg) translate(1px, 100%);
          transform: rotate(45deg) translate(1px, 100%); }

.is-active > .burger i:nth-child(2) {
  -webkit-transform: scaleX(0);
          transform: scaleX(0); }

.is-active > .burger i:nth-child(3) {
  -webkit-transform: rotate(-45deg) translate(1px, -100%);
          transform: rotate(-45deg) translate(1px, -100%); }

.favorite-item {
  display: grid;
  grid-template-columns: 2fr 3fr 1fr;
  gap: 10px;
  height: auto;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  border-style: solid;
  border-color: #999;
  border-width: 1px 1px 0; }
  .favorite-item:last-of-type {
    border-width: 1px; }
  @media (min-width: 577px) {
    .favorite-item {
      grid-gap: 20px; } }
  .favorite-item__image {
    padding-top: 100%;
    background-size: cover;
    background-position: center; }
  .favorite-item__body {
    -ms-flex-item-align: center;
        align-self: center;
    color: #1a1a1a;
    font-size: 10px;
    padding: 20px 0; }
    .favorite-item__body:first-child {
      grid-column: span 2;
      padding: 20px 0 20px 20px; }
    @media (min-width: 577px) {
      .favorite-item__body {
        grid-column: unset; } }
    @media (min-width: 992px) {
      .favorite-item__body {
        font-size: 13px;
        grid-column: unset; } }
    @media (min-width: 1200px) {
      .favorite-item__body {
        font-size: 16px; } }
  .favorite-item__body-link {
    margin-top: 10px;
    padding-left: 4px; }
  .favorite-item__title {
    font-size: 1.5em;
    font-weight: 700; }
  .favorite-item__action {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    color: #e7302f; }
    .favorite-item__action .feather {
      width: 16px;
      height: 16px;
      margin-right: 5px; }
  .favorite-item__icon {
    display: block;
    justify-self: center;
    -ms-flex-item-align: center;
        align-self: center; }

.search-layout {
  opacity: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
  background-color: rgba(62, 63, 70, 0.9);
  -webkit-transition: opacity 1s, -webkit-transform 0.4s;
  transition: opacity 1s, -webkit-transform 0.4s;
  transition: transform 0.4s, opacity 1s;
  transition: transform 0.4s, opacity 1s, -webkit-transform 0.4s; }
  .search-layout.is-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
    .search-layout.is-active .wrapper-search {
      opacity: 1; }
  .search-layout .wrapper-search {
    opacity: 0;
    width: 80%;
    margin: 15% auto 0;
    color: #fff;
    -webkit-transition: opacity 2s;
    transition: opacity 2s; }
  .search-layout form {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .search-layout form .form-search {
      border-bottom-width: 4px; }
    .search-layout form .form-input {
      font-size: 17px;
      font-weight: 700;
      width: 100%; }
      @media (min-width: 768px) {
        .search-layout form .form-input {
          font-size: 48px; } }
      @media (min-width: 992px) {
        .search-layout form .form-input {
          font-size: 68px; } }
    .search-layout form .form-submit {
      width: 68px;
      height: 68px; }
      .search-layout form .form-submit .feather {
        width: 80%;
        height: 80%; }

.listitem {
  display: grid;
  grid-template-columns: 2fr 3fr 1fr;
  grid-gap: 10px;
  height: 100%;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  border: 1px solid #999; }
  @media (min-width: 577px) {
    .listitem {
      grid-gap: 20px; } }
  .listitem__image {
    padding-top: 100%;
    background-size: cover;
    background-position: center; }
  .listitem__body {
    -ms-flex-item-align: center;
        align-self: center;
    color: #1a1a1a;
    grid-column: span 2;
    font-size: 10px; }
    .listitem__body:first-child {
      grid-column: span 2;
      padding: 20px 0 20px 20px; }
    @media (min-width: 577px) {
      .listitem__body {
        grid-column: unset; } }
    @media (min-width: 992px) {
      .listitem__body {
        font-size: 13px;
        grid-column: unset; } }
    @media (min-width: 1200px) {
      .listitem__body {
        font-size: 16px; } }
  .listitem__title {
    font-size: 1.5em;
    font-weight: 700; }
  .listitem__icon {
    display: none; }
    @media (min-width: 577px) {
      .listitem__icon {
        display: block;
        justify-self: center;
        -ms-flex-item-align: center;
            align-self: center; } }

a:hover > .listitem {
  background-color: #f9f9f9; }

dl,
dt,
dd {
  margin: 0; }

.accordion {
  overflow: hidden;
  margin-top: 65px;
  border-top: 1px solid #89898b;
  /* stylelint-disable */
  /* stylelint-enable */ }
  .accordion__trigger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: justify;
        align-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border: 0;
    width: 100%;
    padding: 25px 0;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: left;
    line-height: 1;
    color: #1e1e1e;
    background-color: transparent;
    -webkit-transition: all ease-in-out 0.2s;
    transition: all ease-in-out 0.2s;
    /* stylelint-disable */
    /* stylelint-enable */
    /*Removing "inner outline" for Firefox*/ }
    .accordion__trigger[aria-expanded="true"] .accordion__trigger-icon .icon {
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg); }
    .accordion__trigger:focus, .accordion__trigger:hover {
      cursor: pointer;
      outline: none; }
      .accordion__trigger:focus .accordion__trigger-title,
      .accordion__trigger:focus .accordion__trigger-icon, .accordion__trigger:hover .accordion__trigger-title,
      .accordion__trigger:hover .accordion__trigger-icon {
        opacity: 0.5; }
    .accordion__trigger::-moz-focus-inner {
      border: none; }
    .accordion__trigger-title {
      -webkit-transition: ease-in-out 0.3s;
      transition: ease-in-out 0.3s;
      width: 100%;
      font-size: 16px; }
      .accordion__trigger-title:hover, .accordion__trigger-title:focus {
        opacity: 0.7; }
      @media (min-width: 768px) {
        .accordion__trigger-title {
          font-size: 20px; } }
    .accordion__trigger-icon {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 40px;
      height: 40px;
      margin-left: auto; }
      .accordion__trigger-icon .icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        width: 12px;
        height: 12px;
        border-left: 2px solid #1e1e1e;
        border-bottom: 2px solid #1e1e1e;
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        -webkit-transition: -webkit-transform ease-in-out 0.3s;
        transition: -webkit-transform ease-in-out 0.3s;
        transition: transform ease-in-out 0.3s;
        transition: transform ease-in-out 0.3s, -webkit-transform ease-in-out 0.3s; }
  .accordion__panel {
    position: relative;
    overflow: hidden;
    -webkit-transition: max-height ease-in-out 0.2s;
    transition: max-height ease-in-out 0.2s;
    max-height: 75vh !important; }
    .accordion__panel:not(:last-of-type) {
      border-bottom: 1px solid #89898b; }
    .accordion__panel.-ba-is-hidden {
      max-height: 0 !important; }
  .accordion__panel-inner {
    font-size: 16px;
    padding: 20px 0; }

.announcement {
  width: 100%;
  padding: 15px 0;
  color: #fff; }
  .announcement__container {
    height: auto;
    min-height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    max-width: 1140px;
    margin: auto;
    padding: 0 15px; }
    @media (min-width: 577px) {
      .announcement__container {
        padding: 0 30px; } }
    @media (min-width: 992px) {
      .announcement__container {
        padding: 0 30px; } }
    @media (min-width: 1200px) {
      .announcement__container {
        padding: 0 15px; } }
  .announcement__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (min-width: 577px) {
      .announcement__content {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -ms-flex-pack: distribute;
            justify-content: space-around; } }
  .announcement p {
    margin: 0 0 0.5rem;
    font-weight: 500;
    font-size: 1.2rem; }
    @media (min-width: 577px) {
      .announcement p {
        margin: 0 1.5rem 0 0; } }
  .announcement a {
    color: #fff; }
  .announcement ~ main > .section--first.section--hero,
  .announcement ~ main > .section--first.section--herovideo {
    margin-top: 80px; }

.breadcrumb {
  white-space: nowrap;
  margin-right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  font-size: 13px; }
  @media (min-width: 577px) {
    .breadcrumb {
      font-size: inherit; } }
  .breadcrumb__item {
    color: currentColor;
    opacity: 0.8; }
    .breadcrumb__item--active {
      display: none; }
      @media (min-width: 577px) {
        .breadcrumb__item--active {
          opacity: 1;
          display: block;
          font-weight: 700;
          text-transform: uppercase; } }
      .breadcrumb__item--active:before {
        opacity: 0.8;
        font-weight: 400; }
    .breadcrumb__item:before {
      content: "\203A";
      margin: 0 10px; }
    .breadcrumb__item:first-child:before {
      display: none; }

.teaser {
  -webkit-box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.05);
  background-color: #fff;
  position: relative;
  font-size: 12px;
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s;
  transition: box-shadow 0.3s, -webkit-box-shadow 0.3s; }
  @media (min-width: 992px) {
    .teaser {
      font-size: 16px; } }
  .teaser--is-hidden {
    display: none; }
  .teaser--normal .teaser__ribbon {
    margin: 0 0 0.3em; }
  .teaser--square, .teaser--full-image {
    padding-top: 130%;
    background-color: #000; }
    .teaser--square .teaser__image, .teaser--full-image .teaser__image {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
      .teaser--square .teaser__image:before, .teaser--full-image .teaser__image:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-image: -webkit-gradient(linear, left top, left bottom, color-stop(35%, rgba(255, 255, 255, 0)), color-stop(52%, rgba(255, 255, 255, 0.47)), color-stop(99%, #fff));
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0.47) 52%, #fff 99%); }
    .teaser--square .teaser__ribbon, .teaser--full-image .teaser__ribbon {
      margin: 0 0 0.3em -30px; }
    .teaser--square .teaser__body, .teaser--full-image .teaser__body {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      color: #1a1a1a;
      text-align: left; }
    .teaser--square .teaser__title, .teaser--full-image .teaser__title {
      font-size: 1.6em;
      font-weight: 700;
      line-height: 1.4;
      margin-bottom: 0.6em; }
    .teaser--square .teaser__subtitle, .teaser--full-image .teaser__subtitle {
      text-transform: uppercase;
      margin-bottom: 16px; }
  .teaser--square {
    padding-top: 100%; }
    .teaser--square .teaser__image:before {
      display: none; }
  .teaser--hoverable {
    cursor: pointer; }
    .teaser--hoverable:hover .teaser__hover {
      opacity: 1; }
    .teaser--hoverable:hover a {
      opacity: 1; }
  .teaser--horizontal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 160px; }
    @media (min-width: 992px) {
      .teaser--horizontal {
        min-height: 190px; }
        .teaser--horizontal > a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          width: 100%; }
        .teaser--horizontal.teaser--full-image .teaser__body {
          padding-top: 40px;
          position: relative;
          text-align: left; }
        .teaser--horizontal .teaser__image-wrapper {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 40%;
                  flex: 0 0 40%;
          padding-top: 0; }
        .teaser--horizontal .teaser__image {
          padding-top: 0;
          width: 100%;
          height: 100%; }
        .teaser--horizontal .teaser__body {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 60%;
                  flex: 0 0 60%;
          padding: 30px;
          text-align: left; }
        .teaser--horizontal .teaser__title {
          font-size: 16px;
          font-weight: 700;
          line-height: 1.3;
          margin-bottom: 0.8em; }
        .teaser--horizontal .teaser__subtitle {
          text-transform: uppercase;
          margin-bottom: 16px; } }
  .teaser--horizontal-full-image, .teaser--horizontal-full-image-poi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 579px) {
      .teaser--horizontal-full-image, .teaser--horizontal-full-image-poi {
        width: 100%;
        height: 100%; } }
    .teaser--horizontal-full-image > a, .teaser--horizontal-full-image-poi > a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%; }
    .teaser--horizontal-full-image .teaser__image, .teaser--horizontal-full-image-poi .teaser__image {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      padding: 0; }
      .teaser--horizontal-full-image .teaser__image:before, .teaser--horizontal-full-image-poi .teaser__image:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-image: -webkit-gradient(linear, left top, left bottom, color-stop(35%, rgba(255, 255, 255, 0)), color-stop(52%, rgba(255, 255, 255, 0.47)), color-stop(90%, #fff));
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0.47) 52%, #fff 90%); }
    .teaser--horizontal-full-image .teaser__body, .teaser--horizontal-full-image-poi .teaser__body {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      color: #1a1a1a;
      text-align: left; }
    .teaser--horizontal-full-image .teaser__title, .teaser--horizontal-full-image-poi .teaser__title {
      font-size: 1.6em;
      font-weight: 700;
      line-height: 1.4;
      margin-bottom: 0.6em; }
    .teaser--horizontal-full-image .teaser__subtitle, .teaser--horizontal-full-image-poi .teaser__subtitle {
      text-transform: uppercase;
      margin-bottom: 0.8rem; }
  .teaser__image-wrapper {
    overflow: hidden; }
  .teaser__image {
    padding-top: 70%;
    background-size: cover;
    background-position: 50%; }
  .teaser__body {
    padding: 1.4em;
    color: #1a1a1a;
    text-align: center; }
    .teaser__body > :last-child {
      margin-bottom: 0; }
  .teaser__ribbon {
    background-color: var(--accent-color, #e7302f);
    color: #fff;
    padding: 9px 40px;
    margin: 0 0 0.3em;
    font-weight: 700;
    font-size: 1.6em;
    line-height: 1;
    display: inline-block; }
  .teaser__tag {
    font-size: 0.8em;
    margin: 0 0 0.3em; }
  .teaser__suptitle {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 1.2em; }
    .teaser__suptitle + .teaser__subtitle {
      color: var(--accent-color, currentColor);
      font-size: 1.2em;
      line-height: 1.2;
      font-weight: 500;
      text-transform: none;
      margin-top: -10px;
      margin-bottom: 8px; }
  .teaser__title {
    font-size: 1.6em;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 0.6em; }
  .teaser__subtitle {
    text-transform: uppercase;
    margin-bottom: 16px; }
  .teaser__content {
    color: #1a1a1a; }
  .teaser > a {
    width: 100%; }
  .teaser .teaser__hover {
    opacity: 0;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.4s;
    transition: opacity 0.4s;
    background-color: var(--accent-color, #e7302f);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff; }

.expanding-teaser {
  -webkit-box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.05);
  background-color: #fff;
  position: relative;
  font-size: 12px;
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s;
  transition: box-shadow 0.3s, -webkit-box-shadow 0.3s; }
  @media (min-width: 992px) {
    .expanding-teaser {
      font-size: 16px; } }
  .expanding-teaser--is-hidden {
    display: none; }
  .expanding-teaser--normal .expanding-teaser__ribbon {
    margin: 0 0 0.3em; }
  .expanding-teaser--horizontal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 160px; }
    @media (min-width: 992px) {
      .expanding-teaser--horizontal {
        min-height: 190px; }
        .expanding-teaser--horizontal > a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          width: 100%; }
        .expanding-teaser--horizontal .expanding-teaser__image-wrapper {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 40%;
                  flex: 0 0 40%;
          padding-top: 0; }
        .expanding-teaser--horizontal .expanding-teaser__image {
          padding-top: 0;
          width: 100%;
          height: 100%; }
        .expanding-teaser--horizontal .expanding-teaser__body {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 60%;
                  flex: 0 0 60%;
          padding: 30px;
          text-align: left; }
        .expanding-teaser--horizontal .expanding-teaser__title {
          font-size: 16px;
          font-weight: 700;
          line-height: 1.3;
          margin-bottom: 0.8em; }
        .expanding-teaser--horizontal .expanding-teaser__subtitle {
          text-transform: uppercase;
          margin-bottom: 16px; } }
  .expanding-teaser--hoverable {
    cursor: pointer; }
    .expanding-teaser--hoverable:hover .expanding-teaser__hover {
      opacity: 1; }
    .expanding-teaser--hoverable:hover a {
      opacity: 1; }
  .expanding-teaser__image-wrapper {
    overflow: hidden; }
  .expanding-teaser__image {
    padding-top: 70%;
    background-size: cover;
    background-position: 50%; }
  .expanding-teaser__body {
    padding: 1.4em;
    color: #1a1a1a;
    text-align: center;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    .expanding-teaser__body > :last-child {
      margin-bottom: 0; }
  .expanding-teaser__ribbon {
    background-color: var(--accent-color, #e7302f);
    color: #fff;
    padding: 9px 40px;
    margin: 0 0 0.3em -40px;
    font-weight: 700;
    font-size: 1.6em;
    line-height: 1;
    display: inline-block; }
  .expanding-teaser__tag {
    font-size: 0.8em;
    margin: 0 0 0.3em; }
  .expanding-teaser__suptitle {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 1.2em; }
    .expanding-teaser__suptitle + .expanding-teaser__subtitle {
      color: var(--accent-color, currentColor);
      font-size: 1.2em;
      line-height: 1.2;
      font-weight: 500;
      text-transform: none;
      margin-top: -10px;
      margin-bottom: 8px; }
  .expanding-teaser__title {
    font-size: 1.6em;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 0.6em; }
  .expanding-teaser__subtitle {
    text-transform: uppercase;
    margin-bottom: 16px; }
  .expanding-teaser__content {
    color: #1a1a1a; }
  .expanding-teaser__toggler-wrapper {
    margin-top: auto;
    padding-top: 15px; }
  .expanding-teaser > a {
    width: 100%; }
  .expanding-teaser__hover {
    opacity: 0;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.4s;
    transition: opacity 0.4s;
    background-color: var(--accent-color, #e7302f);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff; }
  .expanding-teaser__plus {
    height: 75px;
    width: 75px;
    border: 4px solid #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .expanding-teaser__plus span {
      background-color: #fff;
      width: 40px;
      height: 4px;
      display: block;
      position: relative; }
      .expanding-teaser__plus span:first-child {
        top: 3px; }
      .expanding-teaser__plus span:last-child {
        top: -1px;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg); }

.expanded-teaser {
  background-color: #efefef;
  padding: 15px;
  position: relative; }
  @media (min-width: 992px) {
    .expanded-teaser {
      padding: 30px; } }
  .expanded-teaser__image-wrapper {
    overflow: hidden;
    height: 300px;
    margin-bottom: 30px; }
    @media (min-width: 992px) {
      .expanded-teaser__image-wrapper {
        margin-bottom: 50px; } }
  .expanded-teaser__close-btn {
    background-color: #e7302f;
    position: absolute;
    opacity: 0;
    top: 0;
    right: 0;
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer;
    /* stylelint-disable */
    /* stylelint-enable */ }
    .section--has-accent-color .expanded-teaser__close-btn {
      background-color: var(--accent-color, #e7302f); }
    @media (min-width: 577px) {
      .expanded-teaser__close-btn {
        top: -10px;
        right: -10px; } }
    @media (min-width: 768px) {
      .expanded-teaser__close-btn {
        top: -15px;
        right: -15px; } }
    @media (min-width: 992px) {
      .expanded-teaser__close-btn {
        height: 55px;
        width: 55px;
        top: -20px;
        right: -20px; } }
    .expanded-teaser__close-btn:hover, .expanded-teaser__close-btn:active, .expanded-teaser__close-btn:focus {
      opacity: 0.8 !important; }
    .expanded-teaser__close-btn span {
      background-color: #fff;
      width: 30px;
      height: 3px;
      display: block;
      position: relative;
      pointer-events: none; }
      @media (min-width: 992px) {
        .expanded-teaser__close-btn span {
          width: 40px; } }
      .expanded-teaser__close-btn span:first-child {
        top: 2px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
      .expanded-teaser__close-btn span:last-child {
        top: -1px;
        -webkit-transform: rotate(135deg);
                transform: rotate(135deg); }
  .expanded-teaser__suptitle {
    font-size: 18px;
    margin-bottom: 15px; }
    @media (min-width: 992px) {
      .expanded-teaser__suptitle {
        font-size: 20px;
        margin-bottom: 30px; } }
  .expanded-teaser__image {
    width: 100%;
    max-width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .expanded-teaser__sub-heading {
    font-size: 110%;
    font-weight: 700;
    margin-bottom: 10px; }
  @media (min-width: 992px) {
    .expanded-teaser__body {
      display: grid;
      grid-gap: 30px;
      grid-template-columns: 1.25fr 0.75fr; } }
  .expanded-teaser__content {
    margin-top: 30px; }
  .expanded-teaser__summary {
    font-weight: 700; }
  .expanded-teaser__description, .expanded-teaser__practical {
    margin-top: 30px; }
  .expanded-teaser__informations {
    margin-top: 30px; }
    .expanded-teaser__informations .btn, .expanded-teaser__informations .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .expanded-teaser__informations .ob-offer__btn,
    .expanded-teaser__informations .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .expanded-teaser__informations .btn-default,
    .expanded-teaser__informations .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .expanded-teaser__informations .ob-offer-search-button.active, .expanded-teaser__informations .expanding-teasers__list button, .expanding-teasers__list .expanded-teaser__informations button {
      max-width: 300px; }
  .expanded-teaser__information + .expanded-teaser__information {
    margin-top: 30px; }
  .expanded-teaser__information p:first-of-type {
    margin-bottom: 16px; }

/**
 * @atom Button
 * @section Navigation > Buttons
 * @modifiers
 *  .btn--inverse an inversed button
 *  .btn--fullwidth a fullwidth button
 *  .btn--big a big button
 *  .btn--small a small button
 *  .btn--loading a loading button
 * @markup
 *  <button class="btn">
 *    A button
 *  </button>
 *  <button class="btn btn--inverse">
 *    An inversed button
 *  </button>
 *  <button class="btn btn--big">
 *    A big button
 *  </button>
 *  <button class="btn btn--small">
 *    A small button
 *  </button>
 *  <button class="btn btn--loading">
 *    A loading button
 *  </button>
 *  <div style="width: 400px; margin: 10px 0 0">
 *      A 400px wide container
 *      <button class="btn btn--fullwidth">
 *        A fullwidth button
 *      </button>
 *  </div>
 */
.btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn,
.openbooking.bootstrap-pxl .ob---result-item .btn-default,
.openbooking.bootstrap-pxl .ob-offer-search-button.active, .expanding-teasers__list button {
  display: inline-block;
  color: currentColor;
  background-color: transparent;
  font-size: 13px;
  text-decoration: none;
  padding: 8px 16px;
  line-height: 1.5;
  letter-spacing: 0.8px;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: calc(100vw - 80px);
  vertical-align: middle;
  cursor: pointer;
  border: 2px solid currentColor;
  outline: 0;
  -webkit-transition: background-color 0.3s ease, color 0.35s ease;
  transition: background-color 0.3s ease, color 0.35s ease; }
  @media screen and (min-width: 768px) {
    .btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn,
    .openbooking.bootstrap-pxl .ob---result-item .btn-default,
    .openbooking.bootstrap-pxl .ob-offer-search-button.active, .expanding-teasers__list button {
      font-size: 14px; } }
  .btn:not(:last-of-type), .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn:not(:last-of-type),
  .openbooking.bootstrap-pxl .ob---result-item .btn-default:not(:last-of-type),
  .openbooking.bootstrap-pxl .ob-offer-search-button.active:not(:last-of-type), .expanding-teasers__list button:not(:last-of-type) {
    margin: 0 0 10px; }
  .btn--fullwidth {
    width: 100%; }
  .btn--dblock,
  .openbooking.bootstrap-pxl .ob-offer-search-button.active {
    display: block; }
  .btn--big,
  .openbooking.bootstrap-pxl .ob-offer-search-button.active, .expanding-teasers__list button {
    font-size: 18px;
    padding: 8px 24px; }
  .btn--small {
    font-size: 11px;
    padding: 3px 6px; }
  .btn--active {
    background-color: #3e3f46;
    border-color: #3e3f46;
    color: #fff;
    pointer-events: none; }
  .btn--inverse, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn,
  .openbooking.bootstrap-pxl .ob---result-item .btn-default,
  .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn:hover,
  .openbooking.bootstrap-pxl .ob---result-item .btn-default:hover,
  .openbooking.bootstrap-pxl .ob-offer-search-button.active:hover {
    background-color: #e7302f;
    border-color: #e7302f;
    color: #fff; }
    .btn--inverse:hover, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn:hover,
    .openbooking.bootstrap-pxl .ob---result-item .btn-default:hover,
    .openbooking.bootstrap-pxl .ob-offer-search-button.active:hover {
      opacity: 0.8; }
  .btn--gold-active, .btn--category {
    background-color: #e7b744;
    border-color: #e7b744;
    color: #fff; }
    .btn--gold-active:hover, .btn--category:hover {
      opacity: 0.8; }
  .btn--loading {
    pointer-events: none; }
    .btn--loading::after {
      content: "";
      display: inline-block;
      width: 0.8em;
      height: 0.8em;
      margin-left: 5px;
      border: 2px solid currentColor;
      border-bottom: 2px solid transparent;
      border-radius: 50%;
      -webkit-animation: fa-spin 1s infinite linear;
              animation: fa-spin 1s infinite linear; }
  .btn--action {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border: 0;
    padding: 0;
    font-size: 1.2rem;
    font-weight: 500;
    min-width: 145px; }
  .btn--arrow {
    -webkit-transform: translateX(25px);
            transform: translateX(25px);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s; }
    .btn--arrow .btn__icon {
      -webkit-transform: translateX(-35px);
              transform: translateX(-35px);
      -webkit-transition: -webkit-transform 0.3s;
      transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
      transition: transform 0.3s, -webkit-transform 0.3s; }
    .btn--arrow:hover {
      opacity: 1;
      -webkit-transform: translateX(5px);
              transform: translateX(5px); }
      .btn--arrow:hover .btn__icon {
        -webkit-transform: translateX(-10px);
                transform: translateX(-10px); }
  .btn__icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .btn__icon .feather {
      margin-left: 10px;
      width: 24px;
      height: 24px; }
  .btn--plain {
    color: var(--primary);
    padding-left: 0;
    padding-right: 0;
    background-color: transparent;
    border: 0; }
    .btn--plain .sc-icon--inverse svg {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      -webkit-transition: -webkit-transform 0.3s;
      transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
      transition: transform 0.3s, -webkit-transform 0.3s; }
    .btn--plain:focus, .btn--plain:hover {
      color: var(--primary);
      background-color: transparent; }
      .btn--plain:focus .sc-icon--inverse svg, .btn--plain:hover .sc-icon--inverse svg {
        -webkit-transform: translateX(7px);
                transform: translateX(7px); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  position: relative;
  margin: 0 auto;
  width: 95%;
  height: auto; }
  @media (min-width: 992px) {
    .modal {
      width: 500px; } }
  @media (min-width: 992px) {
    .modal--favorite {
      width: 700px; } }
  @media print {
    .modal--favorite {
      height: 100%;
      width: 100%;
      position: fixed;
      top: 0;
      left: 0;
      -webkit-print-color-adjust: exact;
      color-adjust: exact;
      /* stylelint-disable */ }
      .modal--favorite #print-favorites,
      .modal--favorite .btn-animated,
      .modal--favorite .favorite-item__body-link,
      .modal--favorite .mfp-close {
        display: none; } }
  .modal--favorite .favorite-modal--actions {
    padding: 20px; }
  .modal h1 {
    text-transform: uppercase; }
  .modal .mfp-close {
    position: absolute;
    right: 0;
    top: 0; }
  .modal__share {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: auto;
    min-height: 350px;
    padding: 1rem 2rem 3rem; }

.event__publication {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden; }
  .event__publication iframe {
    /* stylelint-disable */
    margin: 12px auto !important;
    /* stylelint-enable */ }
    .event__publication iframe:last-of-type {
      margin: 0 auto; }

.visit {
  /*
    * Map section
    */ }
  .visit .capture {
    height: 360px;
    width: 480px;
    overflow: hidden;
    float: left;
    background-color: #ececfb;
    border: thin solid #333;
    border-left: none; }

.testimonies {
  overflow-x: hidden; }
  .testimonies__wrapper {
    /**
        * on mobiles, we always do a horizontal carousel
        */
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 500;
    max-width: 810px;
    margin: 40px auto 0;
    color: currentColor;
    text-align: center; }
    @media (max-width: 577px) {
      .testimonies__wrapper {
        margin: 0 -15px;
        overflow: hidden; } }
    .testimonies__wrapper .slick-slide {
      opacity: 0.3;
      -webkit-transition: opacity 0.5s;
      transition: opacity 0.5s;
      width: 100%; }
      .testimonies__wrapper .slick-slide.slick-active {
        opacity: 1; }
  @media (max-width: 576px) {
    .testimonies__item-wrapper {
      padding: 15px 15px 30px;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 70vw;
              flex: 0 0 70vw; } }
  @media (min-width: 577px) {
    .testimonies__item-wrapper {
      padding: 15px; } }
  .testimonies__dots {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0;
    list-style-type: none;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .testimonies__dots li {
      margin: 0 17px;
      width: 15px;
      height: 15px; }
      .testimonies__dots li button {
        width: 15px;
        height: 15px;
        background-color: transparent;
        border: 2px solid currentColor;
        border-radius: 50%;
        text-indent: 100vw;
        padding: 0; }
        @media (min-width: 577px) {
          .testimonies__dots li button {
            width: 20px;
            height: 20px; } }
        .testimonies__dots li button:focus {
          outline: 0; }
    .testimonies__dots .slick-active button {
      background-color: currentColor;
      border: 2px solid transparent; }

.testimony {
  text-align: center; }
  .testimony__title {
    letter-spacing: 1.06px;
    margin: 0 0 40px;
    text-align: center; }
  .testimony blockquote {
    letter-spacing: 0.5px;
    margin: 0 0 40px;
    font-size: 20px;
    text-align: center;
    line-height: 1.25; }
    @media (min-width: 577px) {
      .testimony blockquote {
        font-size: 26px; } }
    @media (min-width: 768px) {
      .testimony blockquote {
        font-size: 38px; } }
  .testimony .author {
    margin: 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .testimony .author__title {
      letter-spacing: 0.67px; }
      @media (min-width: 577px) {
        .testimony .author__title {
          font-size: 1.4; } }
      @media (min-width: 768px) {
        .testimony .author__title {
          font-size: 1.8rem; } }

.lausanner {
  display: grid;
  grid-gap: 30px;
  width: 100%;
  height: 100%; }
  @media (min-width: 768px) {
    .lausanner {
      grid-template-columns: 2fr 3fr; } }
  .lausanner__avatar {
    max-width: 380px; }
  .lausanner__info .social {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 30px 0; }
  .lausanner__biography {
    margin-bottom: 30px; }
  .lausanner__title {
    letter-spacing: 0.96px;
    color: #1e1e1e;
    margin-top: 0; }
  .lausanner__quote {
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.83px;
    color: currentColor;
    margin: 0; }
    @media (min-width: 768px) {
      .lausanner__quote {
        font-size: 1.7rem; } }

.btn-animated {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-items: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  outline: none;
  border: 0;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
  width: auto;
  max-width: 100%;
  height: auto; }
  .btn-animated .square {
    -webkit-transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
    transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 2.5rem;
    height: 2.5rem;
    background: #282936; }
    @media (min-width: 768px) {
      .btn-animated .square {
        width: 3rem;
        height: 3rem; } }
    .btn-animated .square .icon {
      -webkit-transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
      transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      background: #fff; }
    .btn-animated .square .arrow {
      -webkit-transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
      transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
      left: 0.5rem;
      width: 1.13rem;
      height: 0.13rem;
      background: none; }
      @media (min-width: 768px) {
        .btn-animated .square .arrow {
          left: 0.63rem; } }
      .btn-animated .square .arrow::before {
        position: absolute;
        content: "";
        top: -0.25rem;
        right: 0.06rem;
        width: 0.63rem;
        height: 0.63rem;
        border-top: 0.13rem solid #fff;
        border-right: 0.13rem solid #fff;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
  .btn-animated .button-text {
    -webkit-transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
    transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
    position: absolute;
    top: 0;
    left: 3.5rem;
    right: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-items: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #282936;
    line-height: 1;
    font-size: 1rem;
    font-weight: 500; }
    @media (min-width: 768px) {
      .btn-animated .button-text {
        line-height: 1.3;
        font-size: 1.2rem; } }
  .btn-animated:hover {
    opacity: 1; }
    .btn-animated:hover .square {
      width: 100%; }
    .btn-animated:hover .arrow {
      background: #fff;
      -webkit-transform: translate(0.5rem, 0);
              transform: translate(0.5rem, 0); }
    .btn-animated:hover .button-text {
      color: #fff; }

.btn-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
  min-width: 180px;
  height: auto;
  background-color: rgba(0, 0, 0, 0.75);
  position: relative; }
  .btn-social::before {
    content: "";
    position: absolute;
    display: block;
    background: transparent;
    height: 100%;
    z-index: -1; }
  .btn-social .square {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-items: center;
    width: 3rem;
    height: 3rem;
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff; }
    .btn-social .square .feather {
      margin: auto; }
    .btn-social .square .icon {
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      background: #fff; }
  .btn-social .button-text {
    padding: 0;
    margin: auto 15px;
    color: #fff;
    line-height: 1.3;
    font-size: 1.2rem;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden; }
  .btn-social:hover {
    opacity: 1; }

.btn-submit {
  cursor: pointer;
  outline: none;
  border: 0;
  background: transparent;
  padding: 0; }
  .btn-submit .square {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding: 0;
    width: 6rem;
    height: 6rem;
    background: #e7302f;
    -webkit-transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1);
    transition: all 0.45s cubic-bezier(0.65, 0, 0.08, 1); }
    .btn-submit .square .arrow {
      margin: auto;
      width: 1.5rem;
      height: 1.5rem;
      border-top: 5px solid #fff;
      border-right: 5px solid #fff;
      -webkit-transform: translate(-0.2rem, 0) rotate(45deg);
              transform: translate(-0.2rem, 0) rotate(45deg); }
  .btn-submit:hover .square {
    background: #282936; }

.breakingnews-listing {
  width: 100%;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0; }

.breakingnews {
  width: 100%;
  text-align: center;
  font-size: 14px;
  overflow: hidden;
  -webkit-transition: height 0.3s;
  transition: height 0.3s; }
  @media (min-width: 577px) {
    .breakingnews {
      font-size: 18px; } }
  .breakingnews__container {
    position: relative;
    margin: 10px;
    padding: 40px 0 30px;
    color: #004085;
    background-color: #cce5ff; }
    .breakingnews__container--error {
      color: #721c24;
      background-color: #f8d7da; }
    .breakingnews__container--warning {
      color: #856404;
      background-color: #fff3cd; }
  .breakingnews__close {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-weight: 400;
    font-size: 18px;
    background-color: transparent;
    line-height: 1;
    border: 2px solid currentColor;
    width: 25px;
    height: 25px;
    color: currentColor; }
    @media (min-width: 577px) {
      .breakingnews__close {
        right: 30px; } }
    @media (min-width: 992px) {
      .breakingnews__close {
        top: 35px;
        right: 15px;
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%); } }
  .breakingnews a {
    text-decoration: underline; }
  .breakingnews p {
    margin: 0 0 0.8em; }
    .breakingnews p:last-child {
      margin: 0; }

.social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 20px 0 0; }
  .social__item {
    color: currentColor; }
    .social__item + .social__item {
      margin-left: 15px; }
    .social__item > * {
      display: block; }
  .social--align-left {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .social--align-right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }

.date {
  font-weight: 500;
  margin-bottom: 0.8em; }
  .date__hours {
    white-space: nowrap;
    font-weight: 400; }

.calltoaction-item-wrapper {
  padding: 0 20px; }
  .calltoaction-item-wrapper .calltoaction__image {
    min-height: 200px; }
  .calltoaction-item-wrapper .calltoaction__content {
    min-height: 200px; }

.calltoaction {
  display: grid;
  grid-gap: 0;
  width: 100%;
  background: var(--background-color, #fff); }
  @media (min-width: 768px) {
    .calltoaction {
      grid-template-columns: 1fr 1fr; } }
  @media (min-width: 768px) {
    .calltoaction--image-right .calltoaction__image {
      grid-column: 2 / span 1;
      grid-row: 1 / span 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
    .calltoaction--image-right .calltoaction__ribbon {
      position: relative;
      margin: 40px -40px 0.3em 0; }
    .calltoaction--image-right .calltoaction__tag {
      margin: 0 1em 0 0; } }
  .calltoaction__image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    padding: 10px;
    min-height: 200px; }
    @media (min-width: 768px) {
      .calltoaction__image {
        min-height: initial; } }
  .calltoaction__ribbon {
    background-color: var(--accent-color, #e7302f);
    color: #fff;
    padding: 9px 10px 9px 20px;
    margin: 0 0 0.3em -20px;
    font-weight: 700;
    font-size: 1em;
    line-height: 1;
    display: inline-block;
    -webkit-box-shadow: 40px 25px 40px rgba(0, 0, 0, 0.4);
            box-shadow: 40px 25px 40px rgba(0, 0, 0, 0.4); }
    @media (min-width: 768px) {
      .calltoaction__ribbon {
        font-size: 1.6em;
        padding: 9px 40px;
        margin: 0 0 0.3em -50px; } }
  .calltoaction__tag {
    font-size: 0.8em;
    margin-bottom: 10px;
    color: currentColor; }
  .calltoaction__content {
    padding: 25px 20px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1.2;
    font-size: 14px; }
    @media (min-width: 768px) {
      .calltoaction__content {
        font-size: 22px;
        padding: 45px; } }
    .calltoaction__content .btn, .calltoaction__content .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .calltoaction__content .ob-offer__btn,
    .calltoaction__content .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .calltoaction__content .btn-default,
    .calltoaction__content .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .calltoaction__content .ob-offer-search-button.active, .calltoaction__content .expanding-teasers__list button, .expanding-teasers__list .calltoaction__content button {
      margin: 1em 0 0; }
  .calltoaction__title {
    text-transform: uppercase;
    margin: 0 0 1.5em; }

.calltoaction-variant-item-wrapper {
  padding: 0 20px; }
  .calltoaction-variant-item-wrapper .calltoaction-variant__image {
    min-height: 200px; }
  .calltoaction-variant-item-wrapper .calltoaction-variant__content {
    min-height: 200px; }

.calltoaction-variant {
  display: grid;
  grid-gap: 0;
  width: 100%; }
  @media (min-width: 768px) {
    .calltoaction-variant {
      grid-template-columns: 1fr 1fr; } }
  @media (min-width: 1200px) {
    .calltoaction-variant {
      grid-template-columns: 3fr 2fr; } }
  .calltoaction-variant--centered {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .calltoaction-variant--centered .calltoaction-variant__content {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  @media (min-width: 768px) {
    .calltoaction-variant--no-ribbon .calltoaction-variant__content {
      font-size: 18px;
      padding: 45px; } }

@media (min-width: 768px) and (min-width: 768px) {
  .calltoaction-variant--image-right .calltoaction-variant__content {
    -webkit-transform: translate(40px, 0);
            transform: translate(40px, 0); } }
  @media (min-width: 768px) {
    .calltoaction-variant--image-right .calltoaction-variant__image {
      grid-column: 2 / span 1;
      grid-row: 1 / span 1;
      -webkit-transform: translate(-80px, 0);
              transform: translate(-80px, 0); }
    .calltoaction-variant--image-right .calltoaction-variant__ribbon {
      right: -10px;
      left: auto; } }
  @media (min-width: 1200px) {
    .calltoaction-variant--image-right {
      grid-template-columns: 2fr 3fr; } }
  .calltoaction-variant__image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    min-height: 200px; }
    @media (min-width: 768px) {
      .calltoaction-variant__image {
        -webkit-transform: translate(40px, -40px);
                transform: translate(40px, -40px);
        max-width: 820px;
        height: calc(100% + 80px); } }
  .calltoaction-variant__ribbon {
    position: absolute;
    z-index: 6;
    top: 0;
    right: 0;
    width: 90px;
    height: 90px;
    color: #fff;
    font-weight: 700;
    font-size: 1em;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-transform: translate(30%, -50%);
            transform: translate(30%, -50%); }
    @media (min-width: 768px) {
      .calltoaction-variant__ribbon {
        right: unset;
        left: 0;
        width: 120px;
        height: 120px;
        -webkit-transform: translate(-30px, -85px);
                transform: translate(-30px, -85px); } }
    @media (min-width: 1200px) {
      .calltoaction-variant__ribbon {
        -webkit-transform: translate(-20%, -50%);
                transform: translate(-20%, -50%); } }
    .calltoaction-variant__ribbon-icon {
      display: inline-block;
      position: relative;
      width: 100%;
      height: 100%;
      padding-bottom: 100%;
      vertical-align: middle;
      overflow: hidden; }
    .calltoaction-variant__ribbon svg {
      fill: var(--accent-color, #e7302f);
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      position: absolute;
      top: 0;
      left: 0; }
    .calltoaction-variant__ribbon-text {
      position: absolute;
      z-index: 7;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      font-size: 16px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #fff; }
      .calltoaction-variant__ribbon-text span {
        display: block;
        margin-top: 2px;
        font-size: 10px;
        font-weight: 400; }
      @media (min-width: 768px) {
        .calltoaction-variant__ribbon-text {
          font-size: 24px; }
          .calltoaction-variant__ribbon-text span {
            font-size: 13px; } }
  .calltoaction-variant__content {
    position: relative;
    background: #fff;
    padding: 40px 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% - 54px);
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transform: translate(26px, -24px);
            transform: translate(26px, -24px);
    line-height: 1.2;
    font-size: 16px;
    z-index: 5; }
    @media (min-width: 768px) {
      .calltoaction-variant__content {
        width: 100%;
        max-width: 500px;
        min-height: 400px;
        font-size: 20px;
        padding: 45px 80px;
        -ms-flex-item-align: center;
            align-self: center;
        -webkit-transform: translate(-40px, 0);
                transform: translate(-40px, 0); } }
    .calltoaction-variant__content div + br {
      display: none; }
    .calltoaction-variant__content div .sc-icon:last-of-type {
      margin: 0; }
  .calltoaction-variant__btn {
    margin: 10px 0 0; }
    @media (max-width: 375px) {
      .calltoaction-variant__btn .btn--big,
      .calltoaction-variant__btn .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .calltoaction-variant__btn .ob-offer-search-button.active, .calltoaction-variant__btn .expanding-teasers__list button, .expanding-teasers__list .calltoaction-variant__btn button {
        margin: 10px 0 0;
        padding: 8px 14px;
        font-size: initial; } }
  .calltoaction-variant__title {
    text-transform: uppercase;
    margin: 0 0 1.5em;
    width: 100%; }

.toggle-display {
  display: none; }
  @media (min-width: 577px) {
    .toggle-display {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-left: 10px;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  .toggle-display__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .toggle-display__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: transparent;
    color: #e7b744;
    border: 1px solid #c8c8c8;
    outline: 0;
    padding: 7px;
    width: 40px;
    height: 40px; }
    .toggle-display__btn--list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .toggle-display__btn--blocks {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .toggle-display__btn--active {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      background-color: #e7b744;
      border: 1px solid #e7b744;
      color: #fff; }
    .toggle-display__btn + .toggle-display__btn {
      margin-left: 20px; }

.comparator__wrapper.slick-dotted .slick-list {
  margin-bottom: 50px; }

.comparator__wrapper .slick-slide {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }
  .comparator__wrapper .slick-slide.slick-active {
    opacity: 1; }

.comparator__wrapper .slick-dots {
  position: unset; }
  .comparator__wrapper .slick-dots button {
    border: 2px solid var(--accent-color, #e7302f);
    border-radius: 50%; }
    .comparator__wrapper .slick-dots button:hover {
      background-color: var(--accent-color, #e7302f); }
  .comparator__wrapper .slick-dots .slick-active button {
    background-color: var(--accent-color, #e7302f); }

@media (min-width: 768px) {
  .comparator__item-wrapper {
    padding: 0 0 0 20px;
    min-width: 300px;
    width: auto;
    max-width: 440px; } }

.comparator__header {
  color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f)); }

.comparator__title {
  font-size: 2.5rem;
  font-weight: 500;
  color: currentColor; }

.comparator__body ul {
  list-style: none;
  padding: 0; }

.comparator__body li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 2px 0; }
  .comparator__body li:not(:last-of-type) {
    border-bottom: 1px solid var(--comparator-custom-accent-color, var(--accent-color, #e7302f)); }
  .comparator__body li:last-of-type {
    font-size: 1.5rem; }
  .comparator__body li span {
    margin-left: auto; }
  .comparator__body li a {
    color: #000; }

.comparator__total-price span {
  height: 40px; }

.comparator__has-strike-price .comparator__total-price span {
  position: relative; }
  .comparator__has-strike-price .comparator__total-price span::after {
    content: "";
    width: 90%;
    height: 2px;
    background-color: currentColor;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: rotate(-18deg);
            transform: rotate(-18deg); }

.comparator__footer {
  font-size: 1.5rem;
  text-align: center; }
  .comparator__footer .btn, .comparator__footer .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .comparator__footer .ob-offer__btn,
  .comparator__footer .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .comparator__footer .btn-default,
  .comparator__footer .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .comparator__footer .ob-offer-search-button.active, .comparator__footer .expanding-teasers__list button, .expanding-teasers__list .comparator__footer button {
    margin: 1.5rem 0 0;
    color: #fff;
    background-color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f));
    border-color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f)); }

.comparator__before-price {
  font-weight: 400;
  margin-bottom: 0; }

.comparator__price {
  font-weight: 700;
  font-size: 2.5rem;
  color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f));
  margin: 0; }

.comparator__wrapper-footer {
  margin: 3.5rem 0 0;
  text-align: center; }
  .comparator__wrapper-footer .btn, .comparator__wrapper-footer .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .comparator__wrapper-footer .ob-offer__btn,
  .comparator__wrapper-footer .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .comparator__wrapper-footer .btn-default,
  .comparator__wrapper-footer .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .comparator__wrapper-footer .ob-offer-search-button.active, .comparator__wrapper-footer .expanding-teasers__list button, .expanding-teasers__list .comparator__wrapper-footer button {
    margin: 1.5rem 0 0;
    color: #fff;
    background-color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f));
    border-color: var(--comparator-custom-accent-color, var(--accent-color, #e7302f)); }

.smeetz--center {
  text-align: center; }

.smeetz--right {
  text-align: right; }

/* stylelint-disable */
#smtz-lightbox-iframe {
  max-width: 992px !important;
  min-width: auto; }

/* stylelint-enable */
.herovideo {
  /* stylelint-disable */
  /* stylelint-enable */ }
  .herovideo .hero {
    position: relative;
    overflow: hidden; }
    .herovideo .hero video {
      position: absolute;
      top: 50%;
      left: 50%;
      min-width: 100%;
      min-height: 100%;
      width: auto;
      height: auto;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      opacity: 0;
      -webkit-transition: opacity 0.4s;
      transition: opacity 0.4s; }
    .herovideo .hero__container {
      position: absolute;
      width: 100%;
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }

.list {
  display: grid;
  gap: 20px; }
  @media (min-width: 800px) {
    .list {
      grid-template-columns: 1fr 1fr; } }
  .list--favorites {
    gap: 0;
    grid-template-columns: 1fr; }

.page-template-template-booking .header {
  position: absolute; }

.booking {
  color: #e7302f;
  min-height: 200px;
  -webkit-box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.15);
  background: #fff;
  padding: 1.5rem 0; }
  .booking__title {
    line-height: 1.4;
    margin: 0 0 1.5rem;
    text-transform: uppercase;
    color: currentColor;
    letter-spacing: 1.28px;
    font-weight: 500; }
  .booking__form {
    display: grid;
    grid-gap: 1rem;
    width: 100%; }
    @media (min-width: 577px) {
      .booking__form {
        grid-template-columns: 1fr 1fr 1fr 100px;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    @media (min-width: 992px) {
      .booking__form {
        grid-template-columns: 1fr 1fr 1fr 125px; } }
  .booking label {
    display: block;
    color: currentColor;
    text-transform: uppercase; }
  .booking__submit {
    height: 100%;
    min-height: 70px;
    width: 100%; }
    .booking__submit .square {
      height: 50px;
      width: 100%; }
      @media (min-width: 992px) {
        .booking__submit .square {
          height: 100%;
          width: 100%; } }

/* stylelint-disable */
.openbooking__loader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 50vh; }

.openbooking .WhitelabelModal--click-catcher {
  z-index: 6; }

.openbooking.bootstrap-pxl {
  z-index: 7;
  height: auto !important;
  margin-top: 0 !important; }
  @media (min-width: 992px) {
    .openbooking.bootstrap-pxl {
      margin-top: 0 !important; } }
  .openbooking.bootstrap-pxl .ob-navbar--listview.ob-search,
  .openbooking.bootstrap-pxl .ob-search.navbar-fixed-top {
    z-index: 7; }
  .openbooking.bootstrap-pxl .glyphicon {
    z-index: 7 !important; }
  .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn,
  .openbooking.bootstrap-pxl .ob---result-item .btn-default,
  .openbooking.bootstrap-pxl .ob-offer-search-button.active {
    border-radius: 0; }
  .openbooking.bootstrap-pxl .ob-results .ob-item {
    z-index: 6; }
  .openbooking.bootstrap-pxl .ob-item__stars-container {
    width: 120px; }
  .openbooking.bootstrap-pxl .ob-detail .ob-detail__stars .ob-stars_star,
  .openbooking.bootstrap-pxl .ob-item__stars .ob-stars_star {
    color: #e7302f; }
  .openbooking.bootstrap-pxl .calendar table.month tr .range-end.range .day-content.ob-calendar--arrival,
  .openbooking.bootstrap-pxl .calendar table.month tr .range-start.range .day-content.ob-calendar--arrival,
  .openbooking.bootstrap-pxl .calendar table.month tr :hover.day-content.ob-calendar--arrival {
    background-color: #e7302f; }
  .openbooking.bootstrap-pxl .calendar table.month tr :hover.day-content.ob-calendar--arrival {
    cursor: pointer; }
  .openbooking.bootstrap-pxl .ob-detail__legend .ob-detail__legend-item .ob-detail__legend-color.ob-detail__legend-color--selected {
    background-color: #e7302f; }
  .openbooking.bootstrap-pxl .ob-detail__legend-item {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .openbooking.bootstrap-pxl .ob-detail__legend-label {
    margin-top: 0;
    padding-left: 5px !important;
    padding-top: 0 !important; }
  .openbooking.bootstrap-pxl .ob-item__img--thumb.active,
  .openbooking.bootstrap-pxl .ob-item__img--thumb.active:hover,
  .openbooking.bootstrap-pxl .ob-item__img--thumb:hover {
    -webkit-box-shadow: 0 0 0 2px #fff, 0 0 0 4px #e7302f;
            box-shadow: 0 0 0 2px #fff, 0 0 0 4px #e7302f; }
  .openbooking.bootstrap-pxl .ob-imagebar-load-more-count,
  .openbooking.bootstrap-pxl .ob-imagebar-load-more-txt {
    font-size: 1.2em; }
  .openbooking.bootstrap-pxl .ob-loadmore__text {
    margin-top: 0; }

/* stylelint-enable */
@media (min-width: 992px) {
  .newsletter {
    display: grid;
    grid-template-columns: 1fr 1fr; } }

.newsletter__wrapper-image {
  display: none; }
  @media (min-width: 992px) {
    .newsletter__wrapper-image {
      display: block; } }

.newsletter__image {
  display: none; }
  @media (min-width: 992px) {
    .newsletter__image {
      display: block;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      padding-top: 50%; } }

.newsletter__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 30px 0; }
  @media (min-width: 992px) {
    .newsletter__body {
      padding: 40px; } }

.newsletter__title {
  line-height: 1.4;
  margin: 0 0 2.5rem;
  text-transform: uppercase; }

.newsletter__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%; }

.newsletter__input {
  width: 100%;
  max-width: 555px;
  height: 35px;
  border: 0;
  border-bottom: solid 2px #1e1e1e;
  margin: 3rem 0 3.2rem; }

.plan-your-trip {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  color: #1a1a1a;
  background-size: cover;
  background-position: center; }
  .plan-your-trip--image {
    position: relative;
    min-height: 400px; }
    .plan-your-trip--image:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #fff;
      opacity: 0.5;
      z-index: 1; }
    .plan-your-trip--image .container, .plan-your-trip--image .image, .plan-your-trip--image .image--fluid, .plan-your-trip--image .image--small {
      position: relative;
      z-index: 2; }
  @media (min-width: 992px) {
    .plan-your-trip {
      padding: 100px 45px; } }
  .plan-your-trip__body {
    color: currentColor;
    font-size: 32px;
    margin: 0 0 30px;
    max-width: 525px; }
    @media (min-width: 992px) {
      .plan-your-trip__body {
        font-size: 40px;
        text-align: left; } }
    @media (min-width: 1200px) {
      .plan-your-trip__body {
        font-size: 50px; } }
  .plan-your-trip__title {
    margin: 0 0 0.75rem;
    text-transform: uppercase; }
  .plan-your-trip__subtitle {
    font-size: 0.6em;
    letter-spacing: 0.85px;
    line-height: 2.2rem; }

.tags__item {
  display: inline-block;
  white-space: nowrap;
  margin-right: 20px;
  padding: 5px 0;
  font-size: 13px;
  color: #e7302f; }

.image {
  position: relative;
  z-index: 2;
  margin: 0 auto; }
  .image--large-parallax {
    padding: 0;
    width: 100%;
    max-width: 100%; }
    .image--large-parallax .image__picture {
      width: 100%;
      height: 180px; }
      @media (min-width: 577px) {
        .image--large-parallax .image__picture {
          height: 350px; } }
      @media (min-width: 992px) {
        .image--large-parallax .image__picture {
          background-attachment: fixed; } }
  .image--large {
    padding: 0;
    width: 100%;
    max-width: 100%; }
    .image--large .image__picture {
      width: 100%;
      height: 180px; }
      @media (min-width: 577px) {
        .image--large .image__picture {
          height: 350px; } }
  .image--normal .image__picture {
    max-height: 620px; }
  .image--small .image__picture {
    max-height: 440px; }
  .image__picture {
    background-size: cover;
    background-position: 50%;
    -o-object-fit: cover;
       object-fit: cover; }
    .image__picture--fluid {
      -o-object-fit: unset;
         object-fit: unset; }
    .image__picture--desktop {
      display: none; }
      @media (min-width: 577px) {
        .image__picture--desktop {
          display: block; } }
    @media (min-width: 577px) {
      .image__picture--mobile {
        display: none; } }

/* stylelint-disable */
.teasers__wrapper {
  /**
     * on mobiles, we always do a horizontal carousel
     */ }
  @media (max-width: 576px) {
    .teasers__wrapper {
      margin: 0 -15px;
      overflow-x: auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-overflow-scrolling: touch; } }
  @media (min-width: 577px) {
    .teasers__wrapper--slider .teasers__item-wrapper {
      padding: 15px; } }
  .teasers__wrapper--slider .slick-list {
    overflow: visible; }
  .teasers__wrapper--slider .slick-slide {
    opacity: 0.3;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s; }
    .teasers__wrapper--slider .slick-slide.slick-active {
      opacity: 1; }
  .teasers__wrapper--grid {
    grid-gap: 30px; }
    @media (max-width: 576px) {
      .teasers__wrapper--grid {
        overflow: hidden; }
        .teasers__wrapper--grid .teasers__item-wrapper {
          margin: 0 auto; } }
    .teasers__wrapper--grid .teaser {
      height: 100%; }
  .teasers__wrapper--masonry {
    margin: 0 -15px; }
    @media (max-width: 576px) {
      .teasers__wrapper--masonry {
        overflow-x: hidden;
        display: block; } }
    @media (min-width: 580px) {
      .teasers__wrapper--masonry .teasers__item-wrapper {
        width: 50%;
        padding: 0 15px;
        margin-bottom: 30px; } }
    @media (min-width: 992px) {
      .teasers__wrapper--masonry .teasers__item-wrapper {
        width: calc(100% / 3); } }
    @media (min-width: 577px) {
      .teasers__wrapper--masonry .teaser--normal {
        padding-top: unset !important; } }
    @media (min-width: 577px) {
      .teasers__wrapper--masonry .teaser--normal .teaser__image-wrapper {
        overflow: auto; } }
    @media (min-width: 577px) {
      .teasers__wrapper--masonry .teaser--normal .teaser__image,
      .teasers__wrapper--masonry .teaser--normal .teaser__body {
        position: unset !important; } }
    @media (min-width: 992px) {
      .teasers__wrapper--masonry .teaser {
        height: 100%; }
      .teasers__wrapper--masonry .teaser__body {
        height: auto !important; }
      .teasers__wrapper--masonry > :nth-child(2n + 1) .teaser__image {
        padding-top: 150%; } }
    .teasers__wrapper--masonry .teaser--normal {
      padding-top: 130%;
      background-color: #000; }
      .teasers__wrapper--masonry .teaser--normal .teaser__image {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
      .teasers__wrapper--masonry .teaser--normal .teaser__body {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        color: #1a1a1a;
        text-align: center;
        background-color: #fff; }
      .teasers__wrapper--masonry .teaser--normal .teaser__title {
        font-size: 1.6em;
        font-weight: 700;
        line-height: 1.4;
        margin-bottom: 0.6em; }
      .teasers__wrapper--masonry .teaser--normal .teaser__subtitle {
        text-transform: uppercase;
        margin-bottom: 16px; }
  .teasers__wrapper--gallery .slick-list, .teasers__wrapper--poi-gallery .slick-list {
    overflow: visible; }
  .teasers__wrapper--gallery .slick-slide, .teasers__wrapper--poi-gallery .slick-slide {
    opacity: 0.3;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s; }
    .teasers__wrapper--gallery .slick-slide.slick-active, .teasers__wrapper--poi-gallery .slick-slide.slick-active {
      opacity: 1; }

.teasers {
  /**
     * This is only used when the Gallery mode is selected
     */
  /**
     * This is only used when the gallery-poi mode is selected
     */ }
  @media (max-width: 576px) {
    .teasers__item-wrapper {
      padding: 15px 15px 30px;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 70vw;
              flex: 0 0 70vw; } }
  .teasers__footer {
    margin-top: 30px;
    text-align: center; }
    @media (min-width: 992px) {
      .teasers__footer {
        margin-top: 60px; } }
  .teasers__grid-gallery {
    display: grid;
    grid-template-columns: repeat(3, 90vw);
    grid-template-rows: 40vh; }
    @media (min-width: 577px) {
      .teasers__grid-gallery {
        display: grid !important;
        grid-template-columns: 2fr 3fr;
        grid-template-rows: initial;
        grid-gap: 0px;
        height: 450px; } }
    @media (min-width: 1200px) {
      .teasers__grid-gallery {
        height: 660px; } }
    .teasers__grid-gallery .teasers__item-wrapper {
      width: 90vw; }
      @media (min-width: 577px) {
        .teasers__grid-gallery .teasers__item-wrapper {
          padding: 15px;
          width: auto; }
          .teasers__grid-gallery .teasers__item-wrapper:nth-of-type(1) {
            grid-area: 1 / 1 / 3 / 2; } }
  .teasers__gallery-poi {
    display: grid;
    grid-template-columns: repeat(3, 90vw);
    grid-template-rows: 40vh; }
    @media (min-width: 577px) {
      .teasers__gallery-poi {
        display: grid !important;
        grid-template-columns: 3fr 2fr;
        grid-template-rows: initial;
        grid-gap: 0px;
        height: 450px; } }
    .teasers__gallery-poi .teasers__item-wrapper {
      width: 90vw; }
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(1):nth-of-type(1),
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(1) ~ .teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 3; }
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(2):nth-of-type(1),
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(2) ~ .teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 2; }
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(2):nth-of-type(2),
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(2) ~ .teasers__item-wrapper:nth-of-type(2) {
        grid-area: 1 / 2 / 3 / 2; }
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(3):nth-of-type(1),
      .teasers__gallery-poi .teasers__item-wrapper:first-child:nth-last-child(3) ~ .teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 2; }
      @media (min-width: 577px) {
        .teasers__gallery-poi .teasers__item-wrapper {
          width: auto; }
          .teasers__gallery-poi .teasers__item-wrapper:nth-of-type(1) {
            grid-area: 1 / 1 / 3 / 2; } }
      .teasers__gallery-poi .teasers__item-wrapper .teaser {
        height: 100%; }
        .teasers__gallery-poi .teasers__item-wrapper .teaser__image:before {
          background-image: none;
          background: rgba(0, 0, 0, 0.25); }
        .teasers__gallery-poi .teasers__item-wrapper .teaser__title {
          text-transform: uppercase;
          text-align: center; }
        .teasers__gallery-poi .teasers__item-wrapper .teaser__body {
          top: 0;
          color: white;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -ms-flex-line-pack: center;
              align-content: center; }
          .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .btn, .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .ob-offer__btn,
          .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .btn-default,
          .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .ob-offer-search-button.active, .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore .expanding-teasers__list button, .expanding-teasers__list .teasers__gallery-poi .teasers__item-wrapper .teaser__body:hover .teaser__readmore button {
            background: white;
            color: black;
            border: 2px solid white; }
        .teasers__gallery-poi .teasers__item-wrapper .teaser__readmore {
          text-align: center; }
        .teasers__gallery-poi .teasers__item-wrapper .teaser__content, .teasers__gallery-poi .teasers__item-wrapper .teaser__suptitle, .teasers__gallery-poi .teasers__item-wrapper .teaser__hover {
          display: none; }

/* stylelint-enable */
/* stylelint-disable */
.expanding-teasers__wrapper {
  /**
     * on mobiles, we always do a horizontal carousel
     */ }
  @media (max-width: 576px) {
    .expanding-teasers__wrapper {
      margin: 0 -15px;
      overflow-x: auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-overflow-scrolling: touch; } }
  .expanding-teasers__wrapper--grid {
    display: grid;
    grid-gap: 30px; }
    @media (max-width: 576px) {
      .expanding-teasers__wrapper--grid {
        overflow: hidden; }
        .expanding-teasers__wrapper--grid .expanding-teasers__item-wrapper {
          margin: 0 auto; } }
    .expanding-teasers__wrapper--grid .expanding-teaser {
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }

.expanding-teasers {
  /**
     * This is only used when the Gallery mode is selected
     */
  /**
     * This is only used when the gallery-poi mode is selected
     */ }
  .expanding-teasers__list {
    list-style: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (min-width: 577px) {
      .expanding-teasers__list {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    .expanding-teasers__list li {
      margin: 0 0 10px; }
      .expanding-teasers__list li:last-of-type {
        margin: 0; }
      @media (min-width: 577px) {
        .expanding-teasers__list li {
          margin: 0 10px; } }
    .expanding-teasers__list button:hover {
      opacity: 0.75; }
    .expanding-teasers__list button.btn--inverse, .expanding-teasers__list .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn button.ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .expanding-teasers__list button.ob-offer__btn,
    .expanding-teasers__list .openbooking.bootstrap-pxl .ob---result-item button.btn-default, .openbooking.bootstrap-pxl .ob---result-item .expanding-teasers__list button.btn-default,
    .expanding-teasers__list .openbooking.bootstrap-pxl button.ob-offer-search-button.active, .openbooking.bootstrap-pxl .expanding-teasers__list button.ob-offer-search-button.active {
      background-color: var(--accent-color, #e7302f);
      border-color: var(--accent-color, #e7302f);
      color: #fff; }
  @media (max-width: 576px) {
    .expanding-teasers__item-wrapper {
      padding: 0 15px; } }
  .expanding-teasers__item-wrapper--expanded {
    display: none; }
  .expanding-teasers__footer {
    margin-top: 30px;
    text-align: center; }
    @media (min-width: 992px) {
      .expanding-teasers__footer {
        margin-top: 60px; } }
  .expanding-teasers__grid-gallery {
    display: grid;
    grid-template-columns: repeat(3, 90vw);
    grid-template-rows: 40vh; }
    @media (min-width: 577px) {
      .expanding-teasers__grid-gallery {
        display: grid !important;
        grid-template-columns: 2fr 3fr;
        grid-template-rows: initial;
        grid-gap: 0px;
        height: 450px; } }
    @media (min-width: 1200px) {
      .expanding-teasers__grid-gallery {
        height: 660px; } }
    .expanding-teasers__grid-gallery .expanding-teasers__item-wrapper {
      width: 90vw; }
      @media (min-width: 577px) {
        .expanding-teasers__grid-gallery .expanding-teasers__item-wrapper {
          padding: 15px;
          width: auto; }
          .expanding-teasers__grid-gallery .expanding-teasers__item-wrapper:nth-of-type(1) {
            grid-area: 1 / 1 / 3 / 2; } }
  .expanding-teasers__gallery-poi {
    display: grid;
    grid-template-columns: repeat(3, 90vw);
    grid-template-rows: 40vh; }
    @media (min-width: 577px) {
      .expanding-teasers__gallery-poi {
        display: grid !important;
        grid-template-columns: 3fr 2fr;
        grid-template-rows: initial;
        grid-gap: 0px;
        height: 450px; } }
    .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper {
      width: 90vw; }
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(1):nth-of-type(1),
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(1) ~ .expanding-teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 3; }
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(2):nth-of-type(1),
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(2) ~ .expanding-teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 2; }
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(2):nth-of-type(2),
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(2) ~ .expanding-teasers__item-wrapper:nth-of-type(2) {
        grid-area: 1 / 2 / 3 / 2; }
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(3):nth-of-type(1),
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:first-child:nth-last-child(3) ~ .expanding-teasers__item-wrapper:nth-of-type(1) {
        grid-area: 1 / 1 / 3 / 2; }
      @media (min-width: 577px) {
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper {
          width: auto; }
          .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper:nth-of-type(1) {
            grid-area: 1 / 1 / 3 / 2; } }
      .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser {
        height: 100%; }
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__image:before {
          background-image: none;
          background: rgba(0, 0, 0, 0.25); }
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__title {
          text-transform: uppercase;
          text-align: center; }
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body {
          top: 0;
          color: white;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -ms-flex-line-pack: center;
              align-content: center; }
          .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .btn, .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .ob-offer__btn,
          .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .btn-default,
          .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .ob-offer-search-button.active, .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore .expanding-teasers__list button, .expanding-teasers__list .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__body:hover .teaser__readmore button {
            background: white;
            color: black;
            border: 2px solid white; }
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__readmore {
          text-align: center; }
        .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__content, .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__suptitle, .expanding-teasers__gallery-poi .expanding-teasers__item-wrapper .teaser__hover {
          display: none; }

/* stylelint-enable */
.logogrid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 10px; }
  @media (min-width: 577px) {
    .logogrid {
      grid-gap: 15px;
      grid-template-columns: repeat(5, 1fr); } }
  .logogrid__link {
    -ms-flex-item-align: center;
        align-self: center;
    justify-self: center;
    max-width: 75%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .logogrid__link > .logogrid__logo {
      max-width: 100%; }
  .logogrid__logo {
    display: block;
    -ms-flex-item-align: center;
        align-self: center;
    justify-self: center;
    max-width: 75%;
    width: 100%; }

.herocarousel {
  /* stylelint-disable */
  /* stylelint-enable */ }
  .herocarousel .hero {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    margin-top: 0 !important;
    color: currentColor; }

.hero {
  min-height: 400px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--text-color); }
  .hero:first-child {
    margin-top: -80px; }
  @media (min-width: 577px) {
    .hero {
      min-height: 660px;
      max-height: 100vh; } }
  @media (max-width: 576px) {
    .hero--no-mobile-image {
      color: #1a1a1a;
      min-height: auto;
      max-height: auto;
      padding-top: 120px; }
      .hero--no-mobile-image .hero__image {
        display: none; }
      .hero--no-mobile-image .hero__title {
        text-align: left; }
      .hero--no-mobile-image .hero__content {
        display: none; } }
  .hero--centered {
    text-align: center; }
    .hero--centered .hero__body {
      margin-left: auto;
      margin-right: auto; }
  @media (min-width: 577px) {
    .hero--small {
      min-height: 460px;
      max-height: 460px; } }
  .hero--opacity .hero__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), color-stop(20%, rgba(255, 255, 255, 0)), color-stop(90%, rgba(0, 0, 0, 0.5)));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0) 20%, rgba(0, 0, 0, 0.5) 90%); }
  .hero--variante {
    height: calc(100vh - 80px);
    max-height: 900px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
    .hero--variante .hero__container {
      height: auto;
      margin-top: auto;
      padding-bottom: 65px; }
    .hero--variante .hero__body {
      width: 75%;
      max-width: 650px; }
    .hero--variante .hero__image:before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), color-stop(20%, rgba(255, 255, 255, 0)), color-stop(90%, rgba(0, 0, 0, 0.5)));
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0) 20%, rgba(0, 0, 0, 0.5) 90%); }
  .hero--no-image {
    height: auto;
    max-height: auto;
    min-height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-top: 120px; }
    .hero--no-image .hero__container {
      padding-bottom: 0; }
    .hero--no-image .hero__body {
      width: 100%; }
  .hero__breadcrumb {
    margin-bottom: auto;
    position: absolute;
    top: 0;
    right: 0;
    left: 0; }
  .hero__image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
    background-position: center; }
    .hero__image--desktop {
      display: none; }
      @media (min-width: 577px) {
        .hero__image--desktop {
          display: block; } }
    @media (min-width: 577px) {
      .hero__image--mobile {
        display: none; } }
  .hero__container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%; }
  @media (min-width: 992px) {
    .hero__body {
      width: 60%; } }
  .hero__title {
    margin: 0 0 0.6em;
    text-transform: uppercase;
    color: currentColor; }
  .hero__suptitle {
    text-transform: uppercase;
    color: currentColor;
    margin: 0 0 0.5em; }
  .hero__subtitle {
    color: currentColor;
    font-weight: 500; }
  .hero__buttons {
    margin: 22px -15px 0; }
    .hero__buttons .btn, .hero__buttons .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .ob-offer__btn, .openbooking.bootstrap-pxl .ob-offer .ob-offer__item .ob-offer__group .ob-offer__booking_ratecode__wrapper .ob-offer__book-btn .hero__buttons .ob-offer__btn,
    .hero__buttons .openbooking.bootstrap-pxl .ob---result-item .btn-default, .openbooking.bootstrap-pxl .ob---result-item .hero__buttons .btn-default,
    .hero__buttons .openbooking.bootstrap-pxl .ob-offer-search-button.active, .openbooking.bootstrap-pxl .hero__buttons .ob-offer-search-button.active, .hero__buttons .expanding-teasers__list button, .expanding-teasers__list .hero__buttons button {
      margin: 8px; }
  .hero--text-align-right {
    text-align: right; }
    @media (min-width: 768px) {
      .hero--text-align-right .hero__body {
        width: 100%; } }
  .hero--text-align-center {
    text-align: center; }
    @media (min-width: 992px) {
      .hero--text-align-center .hero__body {
        margin: 0 auto; } }

@media (min-width: 577px) {
  .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .content--inverse {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
    .content--fullpage {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      text-align: justify; }
      .content--fullpage .content__text {
        width: 100%; }
      .content--fullpage .content__image {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        margin-bottom: 30px; } }

@media (min-width: 577px) {
  .content__text {
    width: 48%; } }

@media (min-width: 577px) {
  .content__image {
    width: 48%; } }

.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media (max-width: 576px) {
    .gallery--xs-column {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .gallery--xs-column .gallery__item {
        width: 100%;
        max-width: 380px;
        margin-bottom: 15px; } }
  @supports (display: grid) {
    .gallery {
      display: grid;
      grid-gap: 15px;
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: repeat(2, 1fr); }
      .gallery__item {
        position: relative;
        display: block; }
        .gallery__item:before {
          content: "";
          display: block;
          padding-top: 56.25%; }
        .gallery__item:first-of-type {
          grid-column: 1 / 3;
          grid-row: 1 / 3; }
          @media (min-width: 992px) {
            .gallery__item:first-of-type {
              grid-column: 1 / 2;
              grid-row: 1 / 3; } } }
  .gallery__item {
    position: relative;
    display: block;
    width: 100%;
    height: auto; }
    .gallery__item:before {
      content: "";
      display: block;
      padding-top: 56.25%; }
  .gallery__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: cover;
    background-position: center; }
  .gallery__content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 5px;
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    opacity: 1;
    text-align: center;
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease; }
    .gallery__content:empty {
      display: none; }
    .gallery__content:hover {
      opacity: 0.8; }

.video {
  max-width: 785px;
  margin: auto;
  background-color: #111; }
  .video__poster {
    position: relative;
    z-index: 9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background-position: center;
    background-size: cover;
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
    cursor: pointer;
    color: #fff; }
    .video__poster:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-image: -webkit-gradient(linear, left top, left bottom, color-stop(39%, rgba(0, 0, 0, 0)), color-stop(85%, #000));
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 39%, #000 85%); }
    .video__poster .feather {
      width: 100px;
      height: 100px;
      stroke: currentColor;
      z-index: 2; }
    .video__poster--playing {
      -webkit-transform: translate3d(0, -100%, 0);
              transform: translate3d(0, -100%, 0); }
  .video__info {
    display: none; }
    @media (min-width: 577px) {
      .video__info {
        display: block;
        position: absolute;
        width: 100%;
        height: auto;
        z-index: 10;
        padding: 0 1rem;
        bottom: 30px;
        color: #fff;
        justify-self: flex-start; }
        .video__info--playing {
          -webkit-transform: translate3d(0, -100%, 0);
                  transform: translate3d(0, -100%, 0); } }
  .video--instagram {
    background-color: transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .video .video__title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
    letter-spacing: 0.67px; }
  .video .video__text {
    font-size: 14px; }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.slick-slide > div,
.slick-slide .teasers__item-wrapper,
.slick-slide .teaser,
.slick-slide .teaser__image {
  height: 100%; }

.slick-prev,
.slick-next {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 45px;
  height: 45px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: #e7302f;
  background-color: var(--accent-color, #e7302f);
  border-radius: 100%;
  color: #fff;
  top: 50%;
  bottom: -70px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  border: none;
  outline: none;
  z-index: 2;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }
  @media (min-width: 992px) {
    .slick-prev,
    .slick-next {
      bottom: auto;
      width: 60px;
      height: 60px; } }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    opacity: 0.8; }
  .slick-prev.slick-disabled,
  .slick-next.slick-disabled {
    opacity: 0; }
  .slick-prev .feather,
  .slick-next .feather {
    width: 40px;
    height: 40px; }

.slick-prev {
  left: 0; }
  @media (min-width: 992px) {
    .slick-prev {
      left: -10px; } }

.slick-next {
  right: 0; }
  @media (min-width: 992px) {
    .slick-next {
      right: -10px; } }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0;
      font-size: 0;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }

.slick-slide .card-wrapper {
  width: 100%;
  padding: 0 15px; }

/* stylelint-disable */
li.gfield:after {
  content: "";
  display: table;
  clear: both; }

/* Buttons */
.gform_wrapper {
  /* Form Elements */ }
  .gform_wrapper .button,
  .gform_wrapper .button:visited,
  .gform_wrapper .h nav li.button a,
  .gform_wrapper input[type="button"],
  .gform_wrapper input[type="submit"],
  .gform_wrapper input[type="reset"],
  .gform_wrapper .menu-toggle {
    display: inline-block;
    color: #e7302f;
    background-color: #fff;
    font-size: 13px;
    text-decoration: none;
    padding: 8px 16px;
    line-height: 1.5;
    letter-spacing: 0.8px;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid #e7302f;
    border-radius: 3px;
    outline: 0;
    -webkit-transition: background-color 0.3s ease, color 0.35s ease;
    transition: background-color 0.3s ease, color 0.35s ease; }
    @media screen and (min-width: 768px) {
      .gform_wrapper .button,
      .gform_wrapper .button:visited,
      .gform_wrapper .h nav li.button a,
      .gform_wrapper input[type="button"],
      .gform_wrapper input[type="submit"],
      .gform_wrapper input[type="reset"],
      .gform_wrapper .menu-toggle {
        font-size: 14px; } }
  .gform_wrapper .select2-container .select2-selection,
  .gform_wrapper .select2-container .select2-choice {
    height: auto !important;
    background: #efefef !important;
    border: none !important;
    border-radius: 3px !important; }
  .gform_wrapper .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    list-style: none;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0 5px;
    width: 100%;
    height: auto !important;
    line-height: auto !important;
    text-transform: none !important; }
    @media screen and (max-width: 641px) {
      .gform_wrapper .select2-container--default .select2-selection--multiple .select2-selection__rendered {
        margin-top: 8px; } }
  .gform_wrapper .select2-container--default .select2-selection--multiple {
    background-color: white;
    border: 1px solid #aaa;
    border-radius: 4px;
    cursor: text; }
    .gform_wrapper .select2-container--default .select2-selection--multiple .select2-selection__choice {
      background-color: #e4e4e4;
      border: 1px solid #aaa;
      border-radius: 4px;
      cursor: default;
      float: left;
      margin-right: 5px;
      margin-top: 5px;
      padding: 0 5px; }
      @media screen and (max-width: 641px) {
        .gform_wrapper .select2-container--default .select2-selection--multiple .select2-selection__choice {
          margin-top: 0; } }
    @media screen and (max-width: 641px) {
      .gform_wrapper .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        margin: 0 4px 0 0 !important; } }
  .gform_wrapper .select2-display-none {
    padding-top: 0.5em !important; }
  .gform_wrapper .button.secondary-button,
  .gform_wrapper input[type="reset"] {
    color: black;
    background: lightgrey; }
  .gform_wrapper .button:hover,
  .gform_wrapper input[type="button"]:hover,
  .gform_wrapper input[type="submit"]:hover,
  .gform_wrapper input[type="reset"]:hover,
  .gform_wrapper .menu-toggle:hover,
  .gform_wrapper .h nav li.button a:hover {
    color: #fff;
    background-color: #e7302f;
    text-decoration: none;
    outline: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .gform_wrapper .sidebar .button {
    margin: 1em auto;
    display: block; }
  .gform_wrapper .content form {
    margin: 1em 0; }
  .gform_wrapper fieldset {
    padding: 1em 0; }
  .gform_wrapper fieldset > * {
    padding-left: 1em; }
  .gform_wrapper fieldset legend {
    padding-left: 0; }
  .gform_wrapper label {
    display: block;
    padding: 1em 0 0 0.25em; }
  .gform_wrapper select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0.5em;
    background: #efefef;
    border: none;
    border-radius: 3px;
    padding: 1em;
    font-size: 1em;
    height: auto; }
  .gform_wrapper select::-ms-expand {
    display: none; }
  .gform_wrapper option {
    padding: 0.25em 0.5em; }
  .gform_wrapper textarea,
  .gform_wrapper select[multiple],
  .gform_wrapper input[type="date"],
  .gform_wrapper input[type="datetime"],
  .gform_wrapper input[type="datetime-local"],
  .gform_wrapper input[type="email"],
  .gform_wrapper input[type="month"],
  .gform_wrapper input[type="week"],
  .gform_wrapper input[type="number"],
  .gform_wrapper input[type="password"],
  .gform_wrapper input[type="search"],
  .gform_wrapper input[type="text"],
  .gform_wrapper input[type="time"],
  .gform_wrapper input[type="url"],
  .gform_wrapper input[type="tel"],
  .gform_wrapper input[type="time"] {
    width: 100%;
    max-width: 100%;
    border-radius: 3px;
    border: 0;
    padding: 1em;
    height: auto;
    font-size: 1em;
    outline: none;
    background: #efefef; }
  .gform_wrapper select[multiple] {
    width: auto; }
  .gform_wrapper input[type="week"],
  .gform_wrapper input[type="month"],
  .gform_wrapper input[type="date"],
  .gform_wrapper input[type="datetime"],
  .gform_wrapper input[type="datetime-local"],
  .gform_wrapper input[type="number"],
  .gform_wrapper input[type="time"] {
    width: 5em;
    max-width: 100%; }
  .gform_wrapper input[type="checkbox"],
  .gform_wrapper input[type="radio"] {
    display: inline-block;
    padding-top: 0;
    clear: left;
    margin: 0 6px 0 0 !important; }
  .gform_wrapper input[type="checkbox"] + label,
  .gform_wrapper input[type="radio"] + label {
    display: inline-block;
    max-width: 95%; }
  .gform_wrapper input[type="search"] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none; }
  .gform_wrapper textarea {
    min-height: 200px;
    width: 100%; }
  .gform_wrapper form.simple-search input {
    width: 100%;
    padding-right: 40px; }
  .gform_wrapper .search form.simple-search {
    width: 60%; }
  .gform_wrapper form.simple-search button {
    top: 5px;
    right: 5px;
    border: 0;
    background: none;
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .gform_wrapper form.simple-search button:hover,
  .gform_wrapper form.simple-search button:active {
    -webkit-box-shadow: none;
            box-shadow: none; }
  .gform_wrapper form.simple-search button img {
    width: 2em; }
  .gform_wrapper form.search-form {
    padding: 0;
    overflow: hidden;
    margin-top: 1em;
    max-height: 3.25em;
    position: relative; }
  .gform_wrapper form.search-form input {
    padding: 1em 3em 1em 1em;
    width: 100%; }
  .gform_wrapper .search-form label:before {
    font-size: 2em; }
  .gform_wrapper .search-form * {
    outline: none; }
  .gform_wrapper .search-form button {
    width: 10%;
    height: 5em;
    position: absolute;
    top: 0;
    right: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .gform_wrapper .search-form button:before {
    font-size: 2.5em; }
  .gform_wrapper .search-form button.icon-replacement:before {
    left: 0.35em;
    top: 0.4em; }
  .gform_wrapper .select2-container .select2-choice {
    padding: 1.05em !important; }

/* Gravity Forms Styling, v .1 */
/* Basics */
.gform_wrapper:after,
.gform_wrapper li:after,
.gfield_html_formatted:after,
.clear-multi:after,
.gf_progressbar_wrapper:after,
.gform_page_footer:after,
.gf_page_steps:after {
  content: "";
  display: table;
  clear: both; }

.gform_wrapper ul {
  padding: 0;
  list-style: none; }

.gform_wrapper li {
  padding: 0.5em 0; }
  .gform_wrapper li:before {
    display: none !important; }

.gform_wrapper .small,
.small + .ginput_counter {
  width: 20% !important;
  max-width: 100%; }

@media (min-width: 768px) {
  .gform_wrapper .medium,
  .medium + .ginput_counter {
    max-width: 100%; } }

.gform_wrapper .large,
.large + .ginput_counter {
  width: 100% !important;
  max-width: 100%; }

@media (max-width: 767px) {
  .gform_wrapper,
  .ginput_counter {
    width: 100% !important;
    max-width: 100%; } }

.ginput_counter {
  padding-top: 0.25em; }

.gfield_required {
  padding: 0 0.2em; }

.gfield_description {
  padding: 0.25em 0.25em 0 0.25em;
  clear: both;
  white-space: pre-wrap;
  font-size: 16px; }

.field_description_above .gfield_description {
  padding: 0.75em 0.25em; }

.field_sublabel_above.field_description_above .gfield_description + .clear-multi label {
  padding-top: 0; }

@media (max-width: 767px) {
  li.gfield {
    max-width: 100%; } }

/* Typography */
.gfield_total label {
  font-size: 1.75em; }

.ginput_container_total,
h3.gf_progressbar_title,
.gf_progressbar_title.lausanner__title,
.ginput_container_post_title {
  font-size: 1.5em; }


h3.gf_progressbar_title,
.gf_progressbar_title.lausanner__title {
  font-size: 1em; }

.ginput_counter,
.ginput_complex span label,
.ginput_container_fileupload .screen-reader-text,
.instruction,
.ui-datepicker-title select {
  font-size: 0.9em; }

.gfield_description,
.gfield .instruction {
  font-style: italic; }

.gfield_label,
.gfield_required,
.ginput_product_price_label,
.ginput_product_price,
input:checked + label,
td.ui-datepicker-today a,
.gfield_description.validation_message,
.ginput_shipping_price,
h3.gf_progressbar_title,
.gf_progressbar_title.lausanner__title {
  font-weight: bold; }

.ginput_counter {
  text-align: right; }

.ginput_counter {
  line-height: 1; }

/* Colors */
.gfield_required,
.warningTextareaInfo,
.ginput_container_fileupload span.screen-reader-text + div {
  color: #bf0421; }

/* Maroon */
.ginput_product_price_label,
.ginput_product_price,
.ginput_container_total {
  color: green; }

td.ui-datepicker-current-day a.ui-state-active {
  background: black;
  color: white; }

/* Radio & Checkboxes */
.gfield_checkbox li label,
.gfield_radio li label {
  padding-top: 0;
  position: relative;
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.gfield_radio input[type="radio"] + input[type="text"] {
  display: inline-block;
  width: 10em;
  top: -0.75em;
  margin-left: 0.25em; }

/* Selects */
.ginput_container_select {
  position: relative;
  display: inline; }

.ginput_container_multiselect select {
  height: 8em;
  overflow: scroll; }

.ginput_container_multiselect select.small {
  height: 6.5em; }

.ginput_container_multiselect select.large {
  height: 12em; }

/* HTML Field & Sections */
.gfield_html_formatted {
  margin-bottom: 1em; }

li.gsection {
  margin-top: 2em; }

/* Name Fields */
.ginput_complex span label {
  padding: 0.25em 0 0.75em 0.25em; }

@media (min-width: 768px) {
  span.name_first,
  span.name_last,
  span.name_middle,
  span.name_prefix,
  span.name_suffix {
    width: 50%;
    float: left; }
  span.name_last {
    width: 48%;
    margin-left: 2%; }
  span.name_prefix {
    float: none; } }

.no_prefix.no_middle_name.no_last_name.no_suffix span.name_first label,
.no_prefix.no_middle_name.no_first_name.no_suffix span.name_last label {
  display: none; }

.no_prefix.no_middle_name.no_first_name.no_suffix span.name_last {
  margin-left: 0; }

.no_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_first {
  width: 40%;
  margin-right: 1%; }

.no_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_middle {
  width: 18%; }

.no_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_last {
  width: 40%;
  margin-left: 1%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_prefix {
  width: 10%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_first {
  width: 39%;
  margin-right: 1%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_middle {
  width: 10%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_last {
  width: 39%; }

.no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_first {
  width: 38.5%;
  margin-right: 1%; }

.no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_middle {
  width: 10%;
  margin-right: 1%; }

.no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_last {
  width: 38.5%;
  margin-left: 0; }

.no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_suffix {
  width: 10%;
  margin-left: 1%; }

.has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_prefix {
  width: 10%; }

.has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_first {
  width: 39%;
  margin-right: 1%; }

.has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_last {
  width: 39%;
  margin-left: 0; }

.has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_suffix {
  width: 10%;
  margin-left: 1%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_prefix {
  width: 10%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_first {
  width: 33.5%;
  margin-right: 1%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_middle {
  width: 10%;
  margin-right: 1%; }

.has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_last {
  width: 33.5%;
  margin-left: 0; }

.has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_suffix {
  width: 10%;
  margin-left: 1%; }

@media (max-width: 767px) {
  .has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_prefix {
    width: 20%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_first {
    width: 40%;
    margin-right: 1%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_middle {
    clear: left;
    width: 20%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.no_suffix span.name_last {
    width: 40%; }
  .no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_first {
    width: 40%;
    margin-right: 1%; }
  .no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_middle {
    width: 20%;
    margin-right: 1%; }
  .no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_last {
    clear: left;
    width: 40%;
    margin-left: 0; }
  .no_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_suffix {
    width: 20%;
    margin-left: 1%; }
  .has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_prefix {
    width: 20%; }
  .has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_first {
    width: 40%;
    margin-right: 1%; }
  .has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_last {
    width: 40%;
    clear: left;
    margin-left: 0; }
  .has_prefix.has_first_name.no_middle_name.has_last_name.has_suffix span.name_suffix {
    width: 20%;
    margin-left: 1%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_prefix {
    width: 20%;
    margin-right: 1%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_first {
    width: 40%;
    margin-right: 1%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_middle {
    clear: left;
    width: 20%;
    margin-right: 1%; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_last {
    width: 40%;
    margin-left: 0; }
  .has_prefix.has_first_name.has_middle_name.has_last_name.has_suffix span.name_suffix {
    width: 20%;
    margin-left: 1%; } }

.field_sublabel_above span label {
  padding-bottom: 0; }

/* Calendar */
.ginput_container_date .clear-multi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .ginput_container_date .clear-multi * + * {
    margin-left: 12px; }

.ui-datepicker .ui-icon {
  position: relative; }

a.ui-datepicker-prev,
a.ui-datepicker-next {
  float: left;
  width: 1em;
  height: 1em;
  margin-top: 0.45em; }

a.ui-datepicker-next {
  float: right; }

a.ui-datepicker-prev {
  margin-left: 6px; }

.ui-datepicker-header {
  margin-bottom: 10px; }

.ui-datepicker-title .ui-datepicker-month,
.ui-datepicker-title .ui-datepicker-year {
  padding: 0;
  border: 0;
  background: none;
  margin: 0 3px; }

#ui-datepicker-div {
  background: white;
  padding: 0.5em;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5); }

.ui-icon-circle-triangle-w,
.ui-icon-circle-triangle-e {
  display: block;
  font-size: 0;
  color: transparent;
  width: 10px;
  height: 10px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  cursor: pointer; }

.ui-icon-circle-triangle-w {
  -webkit-transform: rotate(-225deg);
          transform: rotate(-225deg); }

.ui-datepicker {
  width: 250px; }

.ui-datepicker-calendar {
  width: 100%; }

table.ui-datepicker-calendar th,
table.ui-datepicker-calendar td {
  padding: 0.25em; }

a.ui-datepicker-next.ui-corner-all {
  float: right; }

.ui-datepicker-title {
  text-align: center; }

.ui-datepicker-title select {
  padding: 0.5em 1em;
  margin: 0 0.15em; }

td.ui-datepicker-week-end {
  background: #efefef; }

table.ui-datepicker-calendar td {
  padding: 0.25em;
  text-align: center; }

td.ui-datepicker-current-day a.ui-state-active {
  display: block;
  border-radius: 50%;
  width: 1.5em; }

input.datepicker_with_icon + img {
  width: 1.5em;
  position: relative;
  left: 0.5em;
  top: 0.25em; }

/* Time */
.ginput_container_time {
  float: left; }

.ginput_container_time i {
  font-style: normal;
  display: inline-block;
  padding: 0 0.25em 0 0; }

.gfield_time_ampm {
  margin-left: 1%; }

/* Address */
span.address_city,
span.address_state,
span.address_zip {
  float: left;
  width: 32%;
  margin-right: 1%; }

span.address_city {
  width: 34%; }

span.address_zip {
  margin-right: 0; }

.address_state select {
  width: 100%; }

@media (max-width: 767px) {
  span.address_city {
    width: 100%;
    float: none; }
  span.address_city input {
    width: 80%; }
  span.address_state,
  span.address_zip {
    width: 49%; } }

/* Email Address */
.ginput_container_email > span {
  float: left;
  width: 49.5%;
  margin-right: 0.5%; }

.ginput_container_email span.ginput_right {
  margin-left: 0.5%;
  margin-right: 0; }

/* File Upload */
.ginput_container_fileupload {
  background: #efefef;
  padding: 0.75em;
  border-radius: 3px; }

.ginput_container_fileupload .screen-reader-text {
  display: inline; }

.ginput_container_fileupload > div:first-of-type {
  text-align: center;
  padding: 2em 0;
  border: 3px dashed #ddd; }

span.gform_drop_instructions {
  display: block;
  margin: 0 0 1em 0; }

.ginput_container_fileupload > div + span.screen-reader-text {
  display: block;
  text-align: center;
  margin: 1em 0 0 0; }

.ginput_container_fileupload span.screen-reader-text + div li {
  padding: 0.25em 0 0 0; }

@media (max-width: 767px) {
  .ginput_container_fileupload .screen-reader-text {
    display: block;
    font-size: 0.7em;
    padding: 1em 0.75em; }
  span.gform_drop_instructions {
    display: none; } }

/* List */
td.gfield_list_icons img {
  position: relative;
  left: 0.7em;
  opacity: 1 !important; }
  @media (max-width: 641px) {
    td.gfield_list_icons img {
      top: 0.4em; } }

.field_description_above .gfield_description + .ginput_container_list {
  margin-top: -1.5em; }

/* Product Fields */
.ginput_container_singleproduct .ginput_product_price_label {
  padding-left: 1em; }

span.ginput_quantity_label {
  margin-left: 1em; }

.instruction {
  padding: 0.5em 0.35em; }

.ginput_shipping_price {
  padding: 1em;
  display: block; }

.ginput_container_total {
  display: block;
  margin-left: 0.35em; }

/* Error & Validation Messages */
.validation_error,
.gform_validation_error li.gfield_error {
  background: #f7dce0;
  /* Maroon */
  padding: 0 1em 1em 1em;
  margin: 1em 0;
  border-radius: 3px; }

.validation_error {
  padding-top: 1em; }

.gfield_description.validation_message {
  position: absolute;
  top: -1.25em;
  left: 1em;
  background: black;
  color: #ddd;
  border-radius: 3px;
  padding: 0.25em 0.75em; }

.gfield_description.validation_message:before {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  bottom: -5px;
  left: 1em;
  border-top: 5px solid black; }

.gform_wrapper li.gfield_error {
  position: relative;
  margin-top: 3em; }

.gfield_error .ginput_container_select:after {
  display: none; }

.gfield_error .warningTextareaInfo {
  color: white; }

.gfield_error .ginput_container_fileupload {
  color: black; }

.gfield_error img.add_list_item {
  background-color: white;
  border-radius: 50%; }

/* From Heading */
.gform_heading .gform_description {
  padding: 1em 0;
  display: block; }

/* Progress Bars & Paging */
.gf_progressbar {
  position: relative;
  border-top: 5px solid #efefef; }

.gf_progressbar_percentage {
  color: white;
  border-top: 5px solid #4480c3;
  position: relative;
  top: -5px;
  text-align: right; }

.gf_progressbar_percentage span {
  background: black;
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.75;
  border-radius: 3px;
  border-top-right-radius: 0;
  font-size: 0.9em;
  margin-top: 0.25em;
  position: relative;
  text-align: center; }

.gf_progressbar_percentage.percentbar_0 span {
  border-top-right-radius: 3px;
  border-top-left-radius: 0; }

.gf_progressbar_percentage span:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  border-left: 5px solid transparent;
  border-right: 0 solid transparent;
  top: -5px;
  right: 0;
  border-bottom: 5px solid black; }

.gf_progressbar_percentage.percentbar_0 span:after {
  right: auto;
  left: 0;
  border-right: 5px solid transparent;
  border-left: 0; }

.gf_progressbar_percentage.percentbar_red {
  border-color: #bf0421; }

.gf_progressbar_percentage.percentbar_green {
  border-color: green; }

.gf_progressbar_percentage.percentbar_gray {
  border-color: #666; }

.gf_progressbar_percentage.percentbar_orange {
  border-color: #e8641b; }

.gf_progressbar_percentage.percentbar_custom {
  border-color: transparent; }

.gf_progressbar_wrapper + .gform_body .gform_page_footer {
  padding-top: 2em; }

.gform_footer {
  padding-top: 2em; }

.gform_next_button {
  float: right; }

div.gform_confirmation_message {
  background: green;
  color: white;
  padding: 1em;
  margin: 1em 0;
  border-radius: 3px; }

body img.gform_ajax_spinner {
  display: block;
  margin: 1em auto; }

.gf_page_steps {
  display: table;
  width: 100%; }

.gf_page_steps > div {
  padding: 0.25em;
  display: table-cell;
  color: white;
  background: black;
  vertical-align: top;
  font-weight: bold; }

.gf_page_steps > div.gf_step_pending {
  background: #efefef;
  color: #666; }

.gf_step_clear {
  display: none !important; }

span.gf_step_number {
  background: white;
  color: black;
  display: inline-block;
  width: 2em;
  text-align: center;
  border-radius: 50%;
  line-height: 2; }

@media (max-width: 767px) {
  .gf_step {
    text-align: center; }
  .gf_step span {
    clear: both;
    display: block;
    margin: 0 auto; }
  span.gf_step_number {
    margin-top: 0.5em; }
  span.gf_step_label {
    margin-top: -1em; } }

/* Credit Card */
.ginput_container_creditcard {
  background: #efefef;
  padding: 2em;
  border-radius: 5px; }

.ginput_container_creditcard input,
.ginput_container_creditcard select {
  background: white; }

.gform_card_icon_container div {
  font-size: 2em;
  float: left;
  text-indent: -99em;
  position: relative;
  display: block; }

.gform_card_icon_container div:before {
  position: absolute;
  left: 0;
  top: 0;
  text-indent: 0; }

.gform_card_icon_container div {
  font-size: 2em;
  float: left;
  text-indent: -99em;
  position: relative;
  display: block;
  width: 1.5em;
  color: #666; }

.ginput_card_security_code_icon:before {
  content: "\e911"; }

.icon-cc-paypal:before {
  content: "\e913"; }

.gform_card_icon_amex:before {
  content: "\e914"; }

.gform_card_icon_discover:before {
  content: "\e915"; }

.gform_card_icon_mastercard:before {
  content: "\e916"; }

.gform_card_icon_visa:before {
  content: "\e917"; }

.ginput_cardinfo_left,
.ginput_cardinfo_right {
  float: left; }

.ginput_cardinfo_right {
  margin-left: 1em; }

span.ginput_card_security_code_icon {
  font-size: 1.5em;
  float: left;
  color: #666; }

.gfield_creditcard_warning_message {
  background: #bf0421;
  color: white;
  padding: 1em 0.75em;
  border-radius: 3px; }

.gfield_error .ginput_container_creditcard label {
  color: black; }

.ginput_container_creditcard .ginput_full {
  clear: both;
  display: block; }

.field_sublabel_above .ginput_container_creditcard .ginput_full:first-of-type {
  margin-bottom: 2em; }

@media (max-width: 767px) {
  .ginput_container_creditcard {
    padding: 1em; }
  .ginput_cardinfo_right {
    width: 40%; } }

/*
* New GF CSS
*/
@media only screen and (min-width: 641px) {
  .gform_wrapper {
    margin: 40px 0 !important; } }

@media only screen and (min-width: 641px) {
  .gform_wrapper .gform_body {
    min-width: 600px;
    width: 50% !important; } }

.gform_wrapper li.hidden_label .gfield_label {
  display: none !important; }

.gform_wrapper li.hidden_label input {
  margin: 0 5px 0 0 !important; }

.gform_wrapper li.hidden_label .ginput_container_checkbox .gfield_checkbox {
  padding: 0 !important; }

.gpnf-dialog .ui-dialog-titlebar {
  background-color: #e7302f !important; }

.gpnf-dialog .ui-icon::after {
  opacity: 1 !important; }

@media only screen and (max-width: 641px) {
  .gform_wrapper .ginput_container span:not(.ginput_price) {
    margin-bottom: 0;
    display: initial; } }

@media only screen and (max-width: 641px) {
  .gform_wrapper .ginput_container span:not(.ginput_price) {
    margin: 8px 0 !important;
    display: block; } }

/* stylelint-enable */
/* stylelint-disable */
.form-group {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.8em 0;
  text-align: initial; }
  .form-group .form-input,
  .form-group .gfiel {
    width: 100%; }
    .form-group .form-input input,
    .form-group .gfiel input {
      width: 100% !important; }

.gform_wrapper {
  margin: 0 !important;
  width: 100% !important; }
  .gform_wrapper * {
    font-size: 16px !important; }
    @media (min-width: 768px) {
      .gform_wrapper * {
        font-size: 20px !important; } }
  .gform_wrapper .gform_body {
    width: 100% !important; }
  .gform_wrapper .gfield_required {
    color: #e7302f !important;
    margin-left: 4px; }
  .gform_wrapper textarea,
  .gform_wrapper select[multiple],
  .gform_wrapper input[type="date"],
  .gform_wrapper input[type="datetime"],
  .gform_wrapper input[type="datetime-local"],
  .gform_wrapper input[type="email"],
  .gform_wrapper input[type="month"],
  .gform_wrapper input[type="week"],
  .gform_wrapper input[type="number"],
  .gform_wrapper input[type="password"],
  .gform_wrapper input[type="search"],
  .gform_wrapper input[type="text"],
  .gform_wrapper input[type="time"],
  .gform_wrapper input[type="url"],
  .gform_wrapper input[type="tel"],
  .gform_wrapper input[type="time"] {
    width: 100% !important;
    border-radius: 0;
    border-bottom: 2px solid #1e1e1e;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    color: #89898b;
    background-color: transparent !important; }
    .gform_wrapper textarea:focus,
    .gform_wrapper select[multiple]:focus,
    .gform_wrapper input[type="date"]:focus,
    .gform_wrapper input[type="datetime"]:focus,
    .gform_wrapper input[type="datetime-local"]:focus,
    .gform_wrapper input[type="email"]:focus,
    .gform_wrapper input[type="month"]:focus,
    .gform_wrapper input[type="week"]:focus,
    .gform_wrapper input[type="number"]:focus,
    .gform_wrapper input[type="password"]:focus,
    .gform_wrapper input[type="search"]:focus,
    .gform_wrapper input[type="text"]:focus,
    .gform_wrapper input[type="time"]:focus,
    .gform_wrapper input[type="url"]:focus,
    .gform_wrapper input[type="tel"]:focus,
    .gform_wrapper input[type="time"]:focus {
      border-color: #89898b; }
  .gform_wrapper .gfield_label,
  .gform_wrapper .gfield_radio,
  .gform_wrapper .gfield_checkbox {
    padding: 0;
    display: block !important;
    font-weight: 500 !important;
    letter-spacing: 0.67px;
    color: #1e1e1e !important; }
  .gform_wrapper .gfield_radio label,
  .gform_wrapper .gfield_checkbox label {
    font-weight: initial;
    margin-top: 0 !important; }
  .gform_wrapper .gfield_select,
  .gform_wrapper select {
    margin-top: 8px;
    padding: 14px 10px !important;
    border-radius: 0;
    background: #fff;
    border-bottom: 2px solid #1e1e1e;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    color: #89898b; }
    .gform_wrapper .gfield_select:focus,
    .gform_wrapper select:focus {
      border-color: #89898b; }
  .gform_wrapper .gsection {
    padding: 16px 0 !important;
    margin-bottom: 35px !important; }
  .gform_wrapper .ginput_container_textarea {
    margin-top: 50px !important; }
    .gform_wrapper .ginput_container_textarea textarea {
      border: 2px solid #1e1e1e; }
  .gform_wrapper .gform_footer:not(.top_label),
  .gform_wrapper .gform_footer.left_label {
    padding: 0 !important;
    width: auto !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 20px 0 0 !important; }

/* stylelint-enable */
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }

.mfp-preloader a {
  color: #CCC; }

.mfp-preloader a:hover {
  color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
          box-shadow: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }

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

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1; }

.mfp-close:active {
  top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }

.mfp-arrow:active {
  margin-top: -54px; }

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1; }

.mfp-arrow:before,
.mfp-arrow:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent; }

.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px; }

.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }

.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px; }

.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }

.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px; }

.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px; }

.mfp-iframe-holder .mfp-close {
  top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444; }

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px; }

.mfp-figure figure {
  margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/*
  All a user has to do to change the calendar size is
  change the font-size on the container and everything
  magically resizes accordingly. Relative units ftw!
*/
.qs-datepicker-container {
  font-size: 1rem;
  font-family: sans-serif;
  color: black;
  position: absolute;
  width: 15.625em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 9001;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 1px solid gray;
  border-radius: 0.26392em;
  overflow: hidden;
  background: white;
  -webkit-box-shadow: 0 1.25em 1.25em -0.9375em rgba(0, 0, 0, 0.3);
          box-shadow: 0 1.25em 1.25em -0.9375em rgba(0, 0, 0, 0.3); }
  .qs-datepicker-container * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

.qs-centered {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.qs-hidden {
  display: none; }

.qs-overlay {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.75);
  color: white;
  width: 100%;
  height: 100%;
  padding: .5em;
  z-index: 1;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .qs-overlay.qs-hidden {
    opacity: 0;
    z-index: -1; }
  .qs-overlay .qs-overlay-year {
    border: none;
    background: transparent;
    border-bottom: 1px solid white;
    border-radius: 0;
    color: white;
    font-size: 0.875em;
    padding: .25em 0;
    width: 80%;
    text-align: center;
    margin: 0 auto;
    display: block; }
    .qs-overlay .qs-overlay-year::-webkit-inner-spin-button {
      -webkit-appearance: none; }
  .qs-overlay .qs-close {
    padding: .5em;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0; }
  .qs-overlay .qs-submit {
    border: 1px solid white;
    border-radius: 0.26392em;
    padding: .5em;
    margin: 0 auto auto;
    cursor: pointer;
    background: rgba(128, 128, 128, 0.4); }
    .qs-overlay .qs-submit.qs-disabled {
      color: gray;
      border-color: gray;
      cursor: not-allowed; }
  .qs-overlay .qs-overlay-month-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .qs-overlay .qs-overlay-month {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: calc(100% / 3);
    cursor: pointer;
    opacity: .5;
    -webkit-transition: opacity 0.15s;
    transition: opacity 0.15s; }
    .qs-overlay .qs-overlay-month.active, .qs-overlay .qs-overlay-month:hover {
      opacity: 1; }

.qs-controls {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: lightgray;
  -webkit-filter: blur(0px);
          filter: blur(0px);
  -webkit-transition: -webkit-filter 0.3s;
  transition: -webkit-filter 0.3s;
  transition: filter 0.3s;
  transition: filter 0.3s, -webkit-filter 0.3s; }
  .qs-controls.qs-blur {
    -webkit-filter: blur(5px);
            filter: blur(5px); }

.qs-arrow {
  height: 1.5625em;
  width: 1.5625em;
  position: relative;
  cursor: pointer;
  border-radius: 0.26392em;
  -webkit-transition: background .15s;
  transition: background .15s; }
  .qs-arrow:hover {
    background: rgba(0, 0, 0, 0.1); }
    .qs-arrow:hover.qs-left:after {
      border-right-color: black; }
    .qs-arrow:hover.qs-right:after {
      border-left-color: black; }
  .qs-arrow:after {
    content: '';
    border: 0.39062em solid transparent;
    position: absolute;
    top: 50%;
    -webkit-transition: border .2s;
    transition: border .2s; }
  .qs-arrow.qs-left:after {
    border-right-color: gray;
    right: 50%;
    -webkit-transform: translate(25%, -50%);
            transform: translate(25%, -50%); }
  .qs-arrow.qs-right:after {
    border-left-color: gray;
    left: 50%;
    -webkit-transform: translate(-25%, -50%);
            transform: translate(-25%, -50%); }

.qs-month-year {
  font-weight: bold;
  -webkit-transition: border .2s;
  transition: border .2s;
  border-bottom: 1px solid transparent;
  cursor: pointer; }
  .qs-month-year:hover {
    border-bottom: 1px solid gray; }
  .qs-month-year:focus, .qs-month-year:active:focus {
    outline: none; }

.qs-month {
  padding-right: .5ex; }

.qs-year {
  padding-left: .5ex; }

.qs-squares {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0.3125em;
  -webkit-filter: blur(0px);
          filter: blur(0px);
  -webkit-transition: -webkit-filter 0.3s;
  transition: -webkit-filter 0.3s;
  transition: filter 0.3s;
  transition: filter 0.3s, -webkit-filter 0.3s; }
  .qs-squares.qs-blur {
    -webkit-filter: blur(5px);
            filter: blur(5px); }

.qs-square {
  width: calc(100% / 7);
  height: 1.5625em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  -webkit-transition: background .1s;
  transition: background .1s;
  border-radius: 0.26392em; }
  .qs-square:not(.qs-empty):not(.qs-disabled):not(.qs-day):not(.qs-active):hover {
    background: orange; }

.qs-current {
  font-weight: bold;
  text-decoration: underline; }

/*
  3 possibilities:
    1. Single, active date.
    2. Daterange start selection.
    3. Daterange end selection.
*/
.qs-active,
.qs-range-start,
.qs-range-end {
  background: lightblue; }

.qs-range-start:not(.qs-range-6) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.qs-range-middle {
  background: #d4ebf2; }
  .qs-range-middle:not(.qs-range-0):not(.qs-range-6) {
    border-radius: 0; }
  .qs-range-middle.qs-range-0 {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .qs-range-middle.qs-range-6 {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }

.qs-range-end:not(.qs-range-0) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.qs-disabled,
.qs-outside-current-month {
  opacity: .2; }

.qs-disabled {
  cursor: not-allowed; }

.qs-empty {
  cursor: default; }

.qs-day {
  cursor: default;
  font-weight: bold;
  color: gray; }

.qs-event {
  position: relative; }
  .qs-event:after {
    content: '';
    position: absolute;
    width: 0.46875em;
    height: 0.46875em;
    border-radius: 50%;
    background: #07f;
    bottom: 0;
    right: 0; }

@media (max-width: 576px) {
  .hidden-mobile {
    display: none !important; } }

@media (min-width: 577px) and (max-width: 991px) {
  .hidden-tablet {
    display: none !important; } }

@media (min-width: 992px) {
  .hidden-desktop {
    display: none !important; } }

