@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* Custom Reset */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  border: 0; }

svg {
  width: 100%; }

button {
  border: none;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;
  /* inherit font & color from ancestor */
  color: inherit;
  font: inherit;
  /* Normalize `line-height`. Cannot be changed from `normal` in Firefox 4+. */
  line-height: normal;
  /* Corrects font smoothing for webkit */
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  /* Corrects inability to style clickable `input` types in iOS */
  -webkit-appearance: none;
  cursor: pointer;
  outline: none; }

@font-face {
  font-family: 'Chiswick Deck Web';
  src: url("../assets/webfonts/ChiswickDeck-Regular-Web.woff2") format("woff2"), url("../assets/webfonts/ChiswickDeck-Regular-Web.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-stretch: normal; }

@font-face {
  font-family: 'Chiswick Deck Web';
  src: url("../assets/webfonts/ChiswickDeck-LightItalic-Web.woff2") format("woff2"), url("../assets/webfonts/ChiswickDeck-LightItalic-Web.woff") format("woff");
  font-weight: 300;
  font-style: italic;
  font-stretch: normal; }

@font-face {
  font-family: 'Chiswick Deck Web';
  src: url("../assets/webfonts/ChiswickDeck-Light-Web.woff2") format("woff2"), url("../assets/webfonts/ChiswickDeck-Light-Web.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-stretch: normal; }

/*
* global variables
*/
/**
 * Breakpoints
 */
.debug body {
  position: relative; }
  .debug body:after {
    display: block;
    position: fixed;
    content: 'After Desktop';
    right: 0;
    left: 0;
    bottom: 0;
    background-color: yellow;
    padding: 20px;
    text-align: center;
    color: #000;
    text-transform: uppercase;
    font-family: Arial;
    z-index: 9999; }
    @media all and (max-width: 1250px) {
      .debug body:after {
        content: 'Desktop'; } }
    @media all and (max-width: 1024px) {
      .debug body:after {
        content: 'Tablet Landscape'; } }
    @media all and (max-width: 768px) {
      .debug body:after {
        content: 'Tablet Portrait'; } }
    @media all and (max-width: 640px) {
      .debug body:after {
        content: 'Phablet'; } }
    @media all and (max-width: 420px) {
      .debug body:after {
        content: 'Mobile'; } }

/* Pass pixel to get them as em returned */
/* Pass pixel to get them as rem returned */
/**

Parameter: $size
-------------------------

Return the size according to the $base--spacer map within `variables.scss`.

Example:

space(1) -> 12
space(2) -> 24
space(3) -> 42

..

Parameter: $half
-------------------------

If $half is true half of the spacer size is used. This is needed when a space via padding
between to elements with a specific size is needed. For example:

ul li a {
	padding: space(1, true);
}

Parameter: $cosmetics
-------------------------

Pass some additional pixel. Currently used to vertically position the text within mod button.

*/
/**
* Icons
*/
@font-face {
  font-family: 'icons';
  src: url("../assets/iconfont/icomoon.eot?3");
  src: url("../assets/iconfont/icomoon.eot?#iefix-3") format("embedded-opentype"), url("../assets/iconfont/icomoon.woff?3") format("woff"), url("../assets/iconfont/icomoon.ttf?3") format("truetype"), url("../assets/fon-font/icomoon.svg?3") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon--icon--close:before, .icon--icon--hamburger:before, .icon--icon--star:before, .icon--icon--arrow-drop-down:before, .icon--icon--arrow-drop-up:before, .icon--icon--arrow-backward:before, .icon--icon--arrow-forward:before, .icon--icon--backtotop:before, .icon--icon--close--after:after, .icon--icon--hamburger--after:after, .icon--icon--star--after:after, .icon--icon--arrow-drop-down--after:after, .icon--icon--arrow-drop-up--after:after, .icon--icon--arrow-backward--after:after, .icon--icon--arrow-forward--after:after, .icon--icon--backtotop--after:after, .m-select__current:after, .mod_slider__prev:after, .mod_slider__next:after {
  font-family: 'icons';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/**
* Set an icon to the current elements pseudo element
*
* Example usage:
*
* @include icon(arrow--left, before, em(15));
*
* This adds an icon "arrow--left" as an :before element
* with a font size of 15 on the target element.
*
* @param {string} $iconname Key within the icon map
* @param {string} $target Which pseudo element should the icon sit on
* @param {string} $font-size Font size the icon should have
*/
/**
 * Create icon classes that create an icon before the lement
 */
.icon--icon--close:before {
  content: ""; }

.icon--icon--hamburger:before {
  content: ""; }

.icon--icon--star:before {
  content: ""; }

.icon--icon--arrow-drop-down:before {
  content: ""; }

.icon--icon--arrow-drop-up:before {
  content: ""; }

.icon--icon--arrow-backward:before {
  content: ""; }

.icon--icon--arrow-forward:before {
  content: ""; }

.icon--icon--backtotop:before {
  content: ""; }

/**
 * Create icon classes that create an icon after the element
 */
.icon--icon--close--after:after {
  content: ""; }

.icon--icon--hamburger--after:after {
  content: ""; }

.icon--icon--star--after:after {
  content: ""; }

.icon--icon--arrow-drop-down--after:after {
  content: ""; }

.icon--icon--arrow-drop-up--after:after {
  content: ""; }

.icon--icon--arrow-backward--after:after {
  content: ""; }

.icon--icon--arrow-forward--after:after {
  content: ""; }

.icon--icon--backtotop--after:after {
  content: ""; }

/**
 * Leave some space to the right if an icon is used beside text
 */
.icon--space-right:before {
  margin-right: 0.375rem; }

/**
 * Adjust icon spacing to text when and icon--ICON-NAME--after class is used.
 *
 * For example:
 *
 * <a class="icon--user--after" href="#">Account</a>
 *
 */
[class*='--after']:after {
  margin-left: 0.375rem; }

/**
 * Spinner
 */
@-webkit-keyframes spinner-scaleout {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@keyframes spinner-scaleout {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/**
 * Image Hover Effekt
 */
/**
 * Clearfix
 */
/**
* Disable text selection
*/
/**
* Make container scrollable
*/
html {
  font-size: 16px;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  -webkit-font-smoothing: antialiased;
  line-height: 1.375;
  color: #000; }

.typo--h1 {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 64px;
  line-height: 72px;
  letter-spacing: 0.5px;
  margin-bottom: 2rem; }
  @media all and (max-width: 640px) {
    .typo--h1 {
      font-size: 44px;
      line-height: 48px;
      letter-spacing: 0.5px;
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }

.typo--h2, .m-text-media__intro .m-text-media__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 52px;
  line-height: 56px;
  letter-spacing: 0.25px;
  margin-bottom: 2rem; }
  @media all and (max-width: 640px) {
    .typo--h2, .m-text-media__intro .m-text-media__headline {
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }
  @media all and (max-width: 420px) {
    .typo--h2, .m-text-media__intro .m-text-media__headline {
      font-size: 36px;
      line-height: 40px;
      letter-spacing: 0.25px; } }

.typo--h3 {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .typo--h3 {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.typo--h4, .m-job__title, .m-job__notification-title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .typo--h4, .m-job__title, .m-job__notification-title {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.typo--h5 {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .typo--h5 {
      font-size: 22px;
      line-height: 30px;
      letter-spacing: 0.25px; } }

.typo--intro {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 28px;
  line-height: 40px; }
  @media all and (max-width: 420px) {
    .typo--intro {
      font-size: 22px;
      line-height: 32px; } }

.typo--copy {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .typo--copy {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.typo--copy--medium {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px; }

.typo--copy--small, .m-job__hotel, .m-job__info {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px; }

.typo--cite {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 30px;
  line-height: 40px;
  letter-spacing: 0.5px;
  color: #314e57; }
  @media all and (max-width: 420px) {
    .typo--cite {
      font-size: 22px;
      line-height: 32px; } }

.typo--caption {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.25px;
  color: #314e57; }

p {
  margin-bottom: 2rem; }
  p:last-child {
    margin-bottom: 0; }
  p a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button) {
    color: #8699a0;
    text-decoration: none; }
    p a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover {
      text-decoration: underline; }

b, strong {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal; }

i, em {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal; }

a {
  text-decoration: none;
  color: inherit; }

a[href^="tel:"] {
  text-decoration: none;
  border: none !important; }

/**
 * z-index
 *
 * This file contains all z-indexes of the whole project
 *
 */
.m-header {
  z-index: 10; }

.m-header__nav-trigger {
  z-index: 200; }

.m-select {
  z-index: 250; }

.m-cookie-warning {
  z-index: 275; }

.m-nav {
  z-index: 300; }

.m-nav__close-btn {
  z-index: 400; }

/* Styles only applied to the `index.html` for testing purpose */
.m-module-header {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  background-color: #f4f4f4;
  padding: 0.5rem;
  color: #000;
  margin-bottom: 1rem;
  display: none; }
  @media all and (max-width: 420px) {
    .m-module-header {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.base--color--main--1 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #000; }
  .base--color--main--1:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--main--1'; }

.base--color--main--2 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #fff; }
  .base--color--main--2:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--main--2'; }

.base--color--main--3 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #151515; }
  .base--color--main--3:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--main--3'; }

.base--color--accent--1 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #e1b0a9; }
  .base--color--accent--1:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--accent--1'; }

.base--color--accent--2 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #6e7775; }
  .base--color--accent--2:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--accent--2'; }

.base--color--accent--3 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #dc673a; }
  .base--color--accent--3:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--accent--3'; }

.base--color--gray--1 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #d6d6d6; }
  .base--color--gray--1:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--gray--1'; }

.base--color--gray--2 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #919191; }
  .base--color--gray--2:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--gray--2'; }

.base--color--gray--3 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #bfbfbf; }
  .base--color--gray--3:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--gray--3'; }

.base--color--gray--3 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #f5f5f5; }
  .base--color--gray--3:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--gray--3'; }

.base--color--gray--3 {
  width: 500px;
  height: 100px;
  margin-bottom: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #464646; }
  .base--color--gray--3:after {
    display: inline-block;
    background-color: #fff;
    padding: 10px;
    color: #000;
    content: 'base--color--gray--3'; }

.m-button-dark-bg {
  background-color: #314e57;
  padding: 4rem 0; }

/*! Flickity v2.1.2
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333; }

.flickity-button:hover {
  background: white;
  cursor: pointer; }

.flickity-button:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 5px #19F;
          box-shadow: 0 0 0 5px #19F; }

.flickity-button:active {
  opacity: 0.6; }

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none; }

.flickity-button-icon {
  fill: #333; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

/* v1.0.5 */
/* Core RS CSS file. 95% of time you shouldn't change anything here. */
.royalSlider {
  width: 600px;
  height: 400px;
  position: relative;
  direction: ltr; }

.royalSlider > * {
  float: left; }

.rsWebkit3d .rsSlide {
  -webkit-transform: translateZ(0); }

.rsWebkit3d .rsSlide,
.rsWebkit3d .rsContainer,
.rsWebkit3d .rsThumbs,
.rsWebkit3d .rsPreloader,
.rsWebkit3d img,
.rsWebkit3d .rsOverflow,
.rsWebkit3d .rsBtnCenterer,
.rsWebkit3d .rsAbsoluteEl,
.rsWebkit3d .rsABlock,
.rsWebkit3d .rsLink {
  -webkit-backface-visibility: hidden; }

.rsFade.rsWebkit3d .rsSlide,
.rsFade.rsWebkit3d img,
.rsFade.rsWebkit3d .rsContainer {
  -webkit-transform: none; }

.rsOverflow {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  float: left;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVisibleNearbyWrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  left: 0;
  top: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVisibleNearbyWrap .rsOverflow {
  position: absolute;
  left: 0;
  top: 0; }

.rsContainer {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsArrow,
.rsThumbsArrow {
  cursor: pointer; }

.rsThumb {
  float: left;
  position: relative; }

.rsArrow,
.rsNav,
.rsThumbsArrow {
  opacity: 1;
  -webkit-transition: opacity 0.3s linear;
  -o-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear; }

.rsHidden {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  -o-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  transition: visibility 0s linear 0.3s,opacity 0.3s linear; }

.rsGCaption {
  width: 100%;
  float: left;
  text-align: center; }

/* Fullscreen options, very important ^^ */
.royalSlider.rsFullscreen {
  position: fixed !important;
  height: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2147483647 !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  right: 0 !important; }

.royalSlider .rsSlide.rsFakePreloader {
  opacity: 1 !important;
  -webkit-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
  display: none; }

.rsSlide {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  overflow: hidden;
  height: 100%;
  width: 100%; }

.royalSlider.rsAutoHeight,
.rsAutoHeight .rsSlide {
  height: auto; }

.rsContent {
  width: 100%;
  height: 100%;
  position: relative; }

.rsPreloader {
  position: absolute;
  z-index: 0; }

.rsNav {
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.rsNavItem {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.25); }

.rsThumbs {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  z-index: 22; }

.rsTabs {
  float: left;
  background: none !important; }

.rsTabs,
.rsThumbs {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.rsVideoContainer {
  width: auto;
  height: auto;
  line-height: 0;
  position: relative; }

.rsVideoFrameHolder {
  position: absolute;
  left: 0;
  top: 0;
  background: #141414;
  opacity: 0;
  -webkit-transition: .3s; }

.rsVideoFrameHolder.rsVideoActive {
  opacity: 1; }

.rsVideoContainer iframe,
.rsVideoContainer video,
.rsVideoContainer embed,
.rsVideoContainer .rsVideoObj {
  position: absolute;
  z-index: 50;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

/* ios controls over video bug, shifting video */
.rsVideoContainer.rsIOSVideo iframe,
.rsVideoContainer.rsIOSVideo video,
.rsVideoContainer.rsIOSVideo embed {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 44px; }

.rsABlock {
  left: 0;
  top: 0;
  position: absolute;
  z-index: 15; }

img.rsImg {
  max-width: none; }

.grab-cursor {
  cursor: url(grab.png) 8 8, move; }

.grabbing-cursor {
  cursor: url(grabbing.png) 8 8, move; }

.rsNoDrag {
  cursor: auto; }

.rsLink {
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 20;
  background: url(blank.gif); }

.daterangepicker {
  position: absolute;
  color: inherit;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #ddd;
  width: 278px;
  max-width: none;
  padding: 0;
  margin-top: 7px;
  top: 100px;
  left: 20px;
  z-index: 3001;
  display: none;
  font-family: arial;
  font-size: 15px;
  line-height: 1em; }

.daterangepicker:before, .daterangepicker:after {
  position: absolute;
  display: inline-block;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  content: ''; }

.daterangepicker:before {
  top: -7px;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #ccc; }

.daterangepicker:after {
  top: -6px;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-left: 6px solid transparent; }

.daterangepicker.opensleft:before {
  right: 9px; }

.daterangepicker.opensleft:after {
  right: 10px; }

.daterangepicker.openscenter:before {
  left: 0;
  right: 0;
  width: 0;
  margin-left: auto;
  margin-right: auto; }

.daterangepicker.openscenter:after {
  left: 0;
  right: 0;
  width: 0;
  margin-left: auto;
  margin-right: auto; }

.daterangepicker.opensright:before {
  left: 9px; }

.daterangepicker.opensright:after {
  left: 10px; }

.daterangepicker.drop-up {
  margin-top: -7px; }

.daterangepicker.drop-up:before {
  top: initial;
  bottom: -7px;
  border-bottom: initial;
  border-top: 7px solid #ccc; }

.daterangepicker.drop-up:after {
  top: initial;
  bottom: -6px;
  border-bottom: initial;
  border-top: 6px solid #fff; }

.daterangepicker.single .daterangepicker .ranges, .daterangepicker.single .drp-calendar {
  float: none; }

.daterangepicker.single .drp-selected {
  display: none; }

.daterangepicker.show-calendar .drp-calendar {
  display: block; }

.daterangepicker.show-calendar .drp-buttons {
  display: block; }

.daterangepicker.auto-apply .drp-buttons {
  display: none; }

.daterangepicker .drp-calendar {
  display: none;
  max-width: 270px; }

.daterangepicker .drp-calendar.left {
  padding: 8px 0 8px 8px; }

.daterangepicker .drp-calendar.right {
  padding: 8px; }

.daterangepicker .drp-calendar.single .calendar-table {
  border: none; }

.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span {
  color: #fff;
  border: solid black;
  border-width: 0 2px 2px 0;
  border-radius: 0;
  display: inline-block;
  padding: 3px; }

.daterangepicker .calendar-table .next span {
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg); }

.daterangepicker .calendar-table .prev span {
  -ms-transform: rotate(135deg);
      transform: rotate(135deg);
  -webkit-transform: rotate(135deg); }

.daterangepicker .calendar-table th, .daterangepicker .calendar-table td {
  white-space: nowrap;
  text-align: center;
  vertical-align: middle;
  min-width: 32px;
  width: 32px;
  height: 24px;
  line-height: 24px;
  font-size: 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  white-space: nowrap;
  cursor: pointer; }

.daterangepicker .calendar-table {
  border: 1px solid #fff;
  border-radius: 4px;
  background-color: #fff; }

.daterangepicker .calendar-table table {
  width: 100%;
  margin: 0;
  border-spacing: 0;
  border-collapse: collapse; }

.daterangepicker td.available:hover, .daterangepicker th.available:hover {
  background-color: #eee;
  border-color: transparent;
  color: inherit; }

.daterangepicker td.week, .daterangepicker th.week {
  font-size: 80%;
  color: #ccc; }

.daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
  background-color: #fff;
  border-color: transparent;
  color: #999; }

.daterangepicker td.in-range {
  background-color: #ebf4f8;
  border-color: transparent;
  color: #000;
  border-radius: 0; }

.daterangepicker td.start-date {
  border-radius: 4px 0 0 4px; }

.daterangepicker td.end-date {
  border-radius: 0 4px 4px 0; }

.daterangepicker td.start-date.end-date {
  border-radius: 4px; }

.daterangepicker td.active, .daterangepicker td.active:hover {
  background-color: #357ebd;
  border-color: transparent;
  color: #fff; }

.daterangepicker th.month {
  width: auto; }

.daterangepicker td.disabled, .daterangepicker option.disabled {
  color: #999;
  cursor: not-allowed;
  text-decoration: line-through; }

.daterangepicker select.monthselect, .daterangepicker select.yearselect {
  font-size: 12px;
  padding: 1px;
  height: auto;
  margin: 0;
  cursor: default; }

.daterangepicker select.monthselect {
  margin-right: 2%;
  width: 56%; }

.daterangepicker select.yearselect {
  width: 40%; }

.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
  width: 50px;
  margin: 0 auto;
  background: #eee;
  border: 1px solid #eee;
  padding: 2px;
  outline: 0;
  font-size: 12px; }

.daterangepicker .calendar-time {
  text-align: center;
  margin: 4px auto 0 auto;
  line-height: 30px;
  position: relative; }

.daterangepicker .calendar-time select.disabled {
  color: #ccc;
  cursor: not-allowed; }

.daterangepicker .drp-buttons {
  clear: both;
  text-align: right;
  padding: 8px;
  border-top: 1px solid #ddd;
  display: none;
  line-height: 12px;
  vertical-align: middle; }

.daterangepicker .drp-selected {
  display: inline-block;
  font-size: 12px;
  padding-right: 8px; }

.daterangepicker .drp-buttons .btn {
  margin-left: 8px;
  font-size: 12px;
  font-weight: bold;
  padding: 4px 8px; }

.daterangepicker.show-ranges .drp-calendar.left {
  border-left: 1px solid #ddd; }

.daterangepicker .ranges {
  float: none;
  text-align: left;
  margin: 0; }

.daterangepicker.show-calendar .ranges {
  margin-top: 8px; }

.daterangepicker .ranges ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 100%; }

.daterangepicker .ranges li {
  font-size: 12px;
  padding: 8px 12px;
  cursor: pointer; }

.daterangepicker .ranges li:hover {
  background-color: #eee; }

.daterangepicker .ranges li.active {
  background-color: #08c;
  color: #fff; }

/*  Larger Screen Styling */
@media (min-width: 564px) {
  .daterangepicker {
    width: auto; }
  .daterangepicker .ranges ul {
    width: 140px; }
  .daterangepicker.single .ranges ul {
    width: 100%; }
  .daterangepicker.single .drp-calendar.left {
    clear: none; }
  .daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .drp-calendar {
    float: left; }
  .daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .drp-calendar {
    float: right; }
  .daterangepicker.ltr {
    direction: ltr;
    text-align: left; }
  .daterangepicker.ltr .drp-calendar.left {
    clear: left;
    margin-right: 0; }
  .daterangepicker.ltr .drp-calendar.left .calendar-table {
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .daterangepicker.ltr .drp-calendar.right {
    margin-left: 0; }
  .daterangepicker.ltr .drp-calendar.right .calendar-table {
    border-left: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .daterangepicker.ltr .drp-calendar.left .calendar-table {
    padding-right: 8px; }
  .daterangepicker.ltr .ranges, .daterangepicker.ltr .drp-calendar {
    float: left; }
  .daterangepicker.rtl {
    direction: rtl;
    text-align: right; }
  .daterangepicker.rtl .drp-calendar.left {
    clear: right;
    margin-left: 0; }
  .daterangepicker.rtl .drp-calendar.left .calendar-table {
    border-left: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .daterangepicker.rtl .drp-calendar.right {
    margin-right: 0; }
  .daterangepicker.rtl .drp-calendar.right .calendar-table {
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .daterangepicker.rtl .drp-calendar.left .calendar-table {
    padding-left: 12px; }
  .daterangepicker.rtl .ranges, .daterangepicker.rtl .drp-calendar {
    text-align: right;
    float: right; } }

@media (min-width: 730px) {
  .daterangepicker .ranges {
    width: auto; }
  .daterangepicker.ltr .ranges {
    float: left; }
  .daterangepicker.rtl .ranges {
    float: right; }
  .daterangepicker .drp-calendar.left {
    clear: none !important; } }

.si-float-wrapper {
  position: absolute;
  width: 100%; }
  .si-float-wrapper,
  .si-float-wrapper * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

[class*='si-wrapper'] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  cursor: default; }

.si-wrapper-top {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: -40px;
  margin-left: 0px;
  -webkit-transform: translate(-50%, -100%);
      -ms-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%); }

.si-wrapper-bottom {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  margin-top: 0px;
  margin-left: 0px;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }

.si-wrapper-left {
  margin-top: -20px;
  margin-left: -11px;
  -webkit-transform: translate(-100%, -50%);
      -ms-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%); }

.si-wrapper-right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: -20px;
  margin-left: 11px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }

[class*='si-shadow-wrapper'] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0.29804;
  z-index: 1; }

.si-shadow-wrapper-top,
.si-shadow-wrapper-bottom {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.si-shadow-pointer-bottom,
.si-shadow-pointer-right {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1; }

.si-shadow-frame {
  -webkit-box-shadow: 0 1px 3px 0 #000;
          box-shadow: 0 1px 3px 0 #000; }

[class*='si-shadow-pointer'] {
  position: relative;
  width: 15px;
  height: 15px;
  margin: auto; }

[class*='si-shadow-inner-pointer'] {
  position: absolute;
  width: 141%;
  height: 141%;
  -webkit-box-shadow: -0.70711px 0.70711px 3px 0 #000;
          box-shadow: -0.70711px 0.70711px 3px 0 #000; }

.si-shadow-inner-pointer-top {
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg); }

.si-shadow-inner-pointer-bottom {
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 50%) rotate(-45deg);
      -ms-transform: translate(-50%, 50%) rotate(-45deg);
          transform: translate(-50%, 50%) rotate(-45deg); }

.si-shadow-inner-pointer-left {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg); }

.si-shadow-inner-pointer-right {
  top: 50%;
  right: 0;
  -webkit-transform: translate(50%, -50%) rotate(-45deg);
      -ms-transform: translate(50%, -50%) rotate(-45deg);
          transform: translate(50%, -50%) rotate(-45deg); }

.si-frame {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  border-radius: 3px;
  overflow: hidden;
  z-index: 2; }

.si-content-wrapper {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: 30px;
  background-color: #fff; }
  .si-has-border .si-content-wrapper {
    border: 1px solid #bbb; }

.si-content {
  overflow: auto; }

.si-close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  outline: none;
  background-color: transparent;
  color: inherit;
  font-family: Arial, Baskerville, monospace;
  font-size: 24px;
  cursor: pointer;
  opacity: 0.5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .si-close-button:hover, .si-close-button:focus {
    opacity: 0.7; }

[class*='si-pointer-border'] {
  position: absolute;
  border: 15px solid transparent;
  z-index: 3; }

[class*='si-pointer-bg'] {
  position: relative;
  border: 15px solid transparent;
  z-index: 4; }
  .si-has-border [class*='si-pointer-bg'] {
    border-width: 15px; }

.si-pointer-border-top,
.si-pointer-border-bottom {
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }

.si-pointer-border-left,
.si-pointer-border-right {
  top: 50%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }

.si-pointer-top {
  border-bottom: 0; }

.si-pointer-border-top {
  bottom: 0;
  border-top-color: #bbb; }

.si-pointer-bg-top {
  border-top-color: #fff; }
  .si-has-border .si-pointer-bg-top {
    top: -1px;
    margin-bottom: 0px; }

.si-pointer-bottom {
  border-top: 0; }

.si-pointer-border-bottom {
  top: 0;
  border-bottom-color: #bbb; }

.si-pointer-bg-bottom {
  border-bottom-color: #fff; }
  .si-has-border .si-pointer-bg-bottom {
    bottom: -1px;
    margin-top: 0px; }

.si-pointer-left {
  border-right: 0; }

.si-pointer-border-left {
  right: 0;
  border-left-color: #bbb; }

.si-pointer-bg-left {
  border-left-color: #fff; }
  .si-has-border .si-pointer-bg-left {
    left: -1px;
    margin-right: 0px; }

.si-pointer-right {
  border-left: 0; }

.si-pointer-border-right {
  left: 0;
  border-right-color: #bbb; }

.si-pointer-bg-right {
  border-right-color: #fff; }
  .si-has-border .si-pointer-bg-right {
    right: -1px;
    margin-left: 0px; }

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none; }
  .pswp * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .pswp img {
    max-width: none; }

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing; }

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1), -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden; }

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden; }

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0; }

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden; }

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*
	
	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .pswp__button:focus, .pswp__button:hover {
    opacity: 1; }
  .pswp__button:active {
    outline: none;
    opacity: 0.9; }
  .pswp__button::-moz-focus-inner {
    padding: 0;
    border: 0; }

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1; }

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(../assets/vendor-scripts/photoswipe/dist/default-skin/default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px; }

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (-o-min-device-pixel-ratio: 35/32), (min-resolution: 105dpi), (-o-min-device-pixel-ratio: 11/10), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url(../assets/vendor-scripts/photoswipe/dist/default-skin/default-skin.svg); }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none; } }

.pswp__button--close {
  background-position: 0 -44px; }

.pswp__button--share {
  background-position: -44px -44px; }

.pswp__button--fs {
  display: none; }

.pswp--supports-fs .pswp__button--fs {
  display: block; }

.pswp--fs .pswp__button--fs {
  background-position: -44px 0; }

.pswp__button--zoom {
  display: none;
  background-position: -88px 0; }

.pswp--zoom-allowed .pswp__button--zoom {
  display: block; }

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0; }

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden; }

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute; }

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

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

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute; }

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px; }

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px; }

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__share-modal--hidden {
  display: none; }

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
      -ms-transform: translateY(6px);
          transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  -o-transition: transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform; }
  .pswp__share-tooltip a {
    display: block;
    padding: 8px 12px;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    line-height: 18px; }
    .pswp__share-tooltip a:hover {
      text-decoration: none;
      color: #000; }
    .pswp__share-tooltip a:first-child {
      /* round corners on the first/last list item */
      border-radius: 2px 2px 0 0; }
    .pswp__share-tooltip a:last-child {
      border-radius: 0 0 2px 2px; }

.pswp__share-modal--fade-in {
  opacity: 1; }
  .pswp__share-modal--fade-in .pswp__share-tooltip {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px; }

a.pswp__share--facebook:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid rgba(0, 0, 0, 0);
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none; }

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF; }
  a.pswp__share--facebook:hover:before {
    border-bottom-color: #3E5C9A; }

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF; }

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D; }

a.pswp__share--download:hover {
  background: #DDD; }

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px; }

/*
	
	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px; }
  .pswp__caption small {
    font-size: 11px;
    color: #BBB; }

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC; }

.pswp__caption--empty {
  display: none; }

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden; }

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  -o-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr; }

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px; }

.pswp__preloader--active {
  opacity: 1; }
  .pswp__preloader--active .pswp__preloader__icn {
    /* We use .gif in browsers that don't support CSS animation */
    background: url(../assets/vendor-scripts/photoswipe/dist/default-skin/preloader.gif) 0 0 no-repeat; }

.pswp--css_animation .pswp__preloader--active {
  opacity: 1; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
    -webkit-animation: clockwise 500ms linear infinite;
            animation: clockwise 500ms linear infinite; }
  .pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
    -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
            animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0; }

.pswp--css_animation .pswp__preloader__cut {
  /* 
			The idea of animating inner circle is based on Polymer ("material") loading indicator 
			 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
		*/
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden; }

.pswp--css_animation .pswp__preloader__donut {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0; }

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right; } }

@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
            transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
            transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

/*
	
	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550; }

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%; }

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  -o-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible; }

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5); }

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3); }

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0; }

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0; }

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001; }

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none; }

.pswp__element--disabled {
  display: none !important; }

.pswp--minimal--dark .pswp__top-bar {
  background: none; }

.m-more-link, .m-bestprice-popup__popup p a {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  line-height: 1.5;
  letter-spacing: 0.8px;
  color: #314e57; }
  .m-more-link:after, .m-bestprice-popup__popup p a:after {
    display: block;
    content: '';
    position: absolute;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    right: 0;
    left: 0;
    height: 1px;
    background-color: #8699a0; }
  .m-more-link:hover, .m-bestprice-popup__popup p a:hover {
    text-decoration: none; }
    .m-more-link:hover:after, .m-bestprice-popup__popup p a:hover:after {
      margin-top: 0.25rem;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }

.m-back-link {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  padding-left: 1.875rem;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  margin-top: 2rem; }
  .m-back-link:before {
    display: block;
    content: '';
    position: absolute;
    background-image: url("../assets/images/icon--arrow-left.svg");
    background-size: contain;
    width: 1rem;
    height: 0.625rem;
    top: 50%;
    left: 0;
    margin-top: -1px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
  .m-back-link:hover:before {
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    -webkit-transform: translateX(-5px) translateY(-50%);
        -ms-transform: translateX(-5px) translateY(-50%);
            transform: translateX(-5px) translateY(-50%); }

/*

Grid:

There are no grid classes. The grid is always coupled to the modules markup.

Example:

To get a 50/50 grid:

<div class="mod_module__grid-container">
    <div class="mod_module__grid-element">
        <div class="mod_module__element"></div>
    </div>
    <div class="mod_module__grid-element">
        <div class="mod_module__element"></div>
    </div>
</div>

.mod_module__grid-container {
    @include grid-container;   
}

.mod_module__grid-element {
    @include grid-col(6);
}

/*

$double: if true, the grid gutter gets doubled

*/
/*

$cols: Number of cols to span width
$double: if true, the grid gutter gets doubled

*/
/* Sets a max with for an element with the size of the named cols */
/* Sets a with for an element with the size of the named cols */
/* Returns the width of a col in percentage based on the passed amount of cols */
/* Return the gutter. Pass a $count value to get the gutter multiplied */
/**

Example:

<div class="mod_module__ratio-image">
    <img src="..">
<div>

.mod_module__ratio-image {
    @include ratio-image(7/5)
}

Parameter: $hoverEffect
--------------------------

Currently in work ... Applied currently only to CE Teaser Mittel to have the arrow animated

**/
.m-ratio-image {
  position: relative;
  overflow: hidden;
  display: block;
  background-color: #f4f4f4; }
  .m-ratio-image iframe,
  .m-ratio-image img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    .m-ratio-image iframe.lazyloaded,
    .m-ratio-image img.lazyloaded {
      opacity: 1; }
  .m-ratio-image.loaded img {
    opacity: 1; }

/**

Generell:

Jedes Content Element umfasst immer einen Container und bekommt einen modifier für die Breite, sowie für den Abstand nach unten

	<div class="m-container m-container--small m-container-mb" data-ce="name">
		<div class="m-module-name">
		 ...
		</div>
	</div>

Ein Modul wird dann in einen Container eingebunden. Die Breite des Module bestimmt also der Container.

Weiterhin bekommt ein Container immer einen fest definierten Abstand nach unten. Dieser kann sein:

.m-container--mb - Default Abstand
.m-container--mb--small - Kleiner Abstand

/*

Parameter: $size
--------------------

Those sizes are defined by the design. If you need more or less talk to the design

*/
/**

Klassen

**/
.m-container {
  margin-left: auto;
  margin-right: auto; }

/* Spezial Klasse für CE Text, welches man optional nach links ausrichten kann */
.m-container--left {
  margin-left: 0 !important; }
  .m-container--left .m-container__headline {
    text-align: left; }

/* Standart Headline eines CE's */
.m-container__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 52px;
  line-height: 56px;
  letter-spacing: 0.25px;
  margin-bottom: 2rem;
  text-align: center; }
  @media all and (max-width: 640px) {
    .m-container__headline {
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }
  @media all and (max-width: 420px) {
    .m-container__headline {
      font-size: 36px;
      line-height: 40px;
      letter-spacing: 0.25px; } }

/** Ausnahme Headline für CE Ansprechpartner, wenn nur ein Ansprechpartner gepflegt ist */
.m-container__headline--small {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem;
  text-align: left; }
  @media all and (max-width: 420px) {
    .m-container__headline--small {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-container--large {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem; }
  @media all and (max-width: 768px) {
    .m-container--large {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-container--large {
      padding-left: 1rem;
      padding-right: 1rem; } }

.m-container--medium {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 65.625rem; }
  @media all and (max-width: 768px) {
    .m-container--medium {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-container--medium {
      padding-left: 1rem;
      padding-right: 1rem; } }

.m-container--small {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 51.04167rem; }
  @media all and (max-width: 768px) {
    .m-container--small {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-container--small {
      padding-left: 1rem;
      padding-right: 1rem; } }

.m-container--10 {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 72.91667rem; }
  @media all and (max-width: 768px) {
    .m-container--10 {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-container--10 {
      padding-left: 1rem;
      padding-right: 1rem; } }

.m-container--mb {
  margin-bottom: 15rem; }
  @media all and (max-width: 1024px) {
    .m-container--mb {
      margin-bottom: 8rem; } }

.m-container--mb--small {
  margin-bottom: 4rem; }
  @media all and (max-width: 640px) {
    .m-container--mb--small {
      margin-bottom: 2rem; } }

.m-container--mb--image-group {
  margin-bottom: 2.625rem; }
  @media all and (max-width: 420px) {
    .m-container--mb--image-group {
      margin-bottom: 1.5rem; } }

.m-text, .m-text-media__intro {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-text, .m-text-media__intro {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-text h2, .m-text-media__intro h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 64px;
    line-height: 72px;
    letter-spacing: 0.5px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-text h2, .m-text-media__intro h2 {
        font-size: 44px;
        line-height: 48px;
        letter-spacing: 0.5px;
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
  .m-text h2, .m-text-media__intro h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 52px;
    line-height: 56px;
    letter-spacing: 0.25px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-text h2, .m-text-media__intro h2 {
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
    @media all and (max-width: 420px) {
      .m-text h2, .m-text-media__intro h2 {
        font-size: 36px;
        line-height: 40px;
        letter-spacing: 0.25px; } }
  .m-text h3, .m-text-media__intro h3 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text h3, .m-text-media__intro h3 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-text h4, .m-text-media__intro h4 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 34px;
    line-height: 40px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text h4, .m-text-media__intro h4 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-text h5, .m-text-media__intro h5 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 24px;
    line-height: 30px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text h5, .m-text-media__intro h5 {
        font-size: 22px;
        line-height: 30px;
        letter-spacing: 0.25px; } }
  .m-text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button), .m-text-media__intro a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button) {
    color: #8699a0;
    text-decoration: none; }
    .m-text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover, .m-text-media__intro a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover {
      text-decoration: underline; }
  .m-text h2:not(:first-child), .m-text-media__intro h2:not(:first-child), .m-text h3:not(:first-child), .m-text-media__intro h3:not(:first-child), .m-text h4:not(:first-child), .m-text-media__intro h4:not(:first-child), .m-text h5:not(:first-child), .m-text-media__intro h5:not(:first-child), .m-text h6:not(:first-child), .m-text-media__intro h6:not(:first-child) {
    padding-top: 1rem; }
  .m-text ul, .m-text-media__intro ul {
    margin-bottom: 2rem; }
    .m-text ul:last-child, .m-text-media__intro ul:last-child {
      margin-bottom: 0; }
    .m-text ul li, .m-text-media__intro ul li {
      position: relative;
      padding-left: 1rem;
      list-style: none;
      display: list-item; }
      .m-text ul li:before, .m-text-media__intro ul li:before {
        content: '•';
        position: absolute;
        top: 0em;
        left: 0;
        color: #000; }
  .m-text ol, .m-text-media__intro ol {
    padding-left: 1.875rem;
    margin-bottom: 2rem; }
    .m-text ol li, .m-text-media__intro ol li {
      position: relative;
      list-style: decimal;
      display: list-item; }
  .m-text .is-centered, .m-text-media__intro .is-centered {
    text-align: center; }

.m-text--medium {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px; }

.m-text--small, .m-bestprice-popup__popup {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px; }

.cke_editable {
  padding: 1rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .cke_editable {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .cke_editable h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 64px;
    line-height: 72px;
    letter-spacing: 0.5px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .cke_editable h2 {
        font-size: 44px;
        line-height: 48px;
        letter-spacing: 0.5px;
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
  .cke_editable h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 52px;
    line-height: 56px;
    letter-spacing: 0.25px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .cke_editable h2 {
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
    @media all and (max-width: 420px) {
      .cke_editable h2 {
        font-size: 36px;
        line-height: 40px;
        letter-spacing: 0.25px; } }
  .cke_editable h3 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .cke_editable h3 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .cke_editable h4 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 34px;
    line-height: 40px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .cke_editable h4 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .cke_editable h5 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 24px;
    line-height: 30px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .cke_editable h5 {
        font-size: 22px;
        line-height: 30px;
        letter-spacing: 0.25px; } }
  .cke_editable a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button) {
    color: #8699a0;
    text-decoration: none; }
    .cke_editable a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover {
      text-decoration: underline; }
  .cke_editable h2:not(:first-child), .cke_editable h3:not(:first-child), .cke_editable h4:not(:first-child), .cke_editable h5:not(:first-child), .cke_editable h6:not(:first-child) {
    padding-top: 1rem; }
  .cke_editable ul {
    margin-bottom: 2rem; }
    .cke_editable ul:last-child {
      margin-bottom: 0; }
    .cke_editable ul li {
      position: relative;
      padding-left: 1rem;
      list-style: none;
      display: list-item; }
      .cke_editable ul li:before {
        content: '•';
        position: absolute;
        top: 0em;
        left: 0;
        color: #000; }
  .cke_editable ol {
    padding-left: 1.875rem;
    margin-bottom: 2rem; }
    .cke_editable ol li {
      position: relative;
      list-style: decimal;
      display: list-item; }
  .cke_editable .is-centered {
    text-align: center; }

.m-tags {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .m-tags li {
    margin-right: 0.5rem; }
  .m-tags a {
    border-bottom: 1px solid; }

.m-button__center-container {
  text-align: center; }

.m-button, .m-header__alternative-book-button, .m-intro-image__booking-button__button, form.mod_form .submit button.btn {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  text-align: center;
  -webkit-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out; }
  .m-button:hover, .m-header__alternative-book-button:hover, .m-intro-image__booking-button__button:hover, form.mod_form .submit button.btn:hover {
    text-decoration: none; }
  .m-button.is-external:after, .is-external.m-header__alternative-book-button:after, .is-external.m-intro-image__booking-button__button:after, form.mod_form .submit button.is-external.btn:after {
    display: inline-block;
    margin-left: 0.5rem;
    content: '';
    width: 0.75rem;
    height: 0.75rem;
    background-size: contain;
    background-image: url("../assets/images/icon--external-link--white.svg"); }

.m-button--primary, form.mod_form .submit button.btn {
  background-color: #314e57;
  color: #fff; }
  .m-button--primary:hover, form.mod_form .submit button.btn:hover {
    text-decoration: none;
    background-color: #8699a0; }

.m-button--secondary, .m-header__container--hovered .m-header__alternative-book-button, .html--relative-navigation.html--secondary-booking-cta .m-header__alternative-book-button, .m-intro-image__booking-button__button {
  background-color: transparent;
  color: #314e57;
  border: 1px solid #8699a0; }
  .m-button--secondary:hover, .m-header__container--hovered .m-header__alternative-book-button:hover, .html--relative-navigation.html--secondary-booking-cta .m-header__alternative-book-button:hover, .m-intro-image__booking-button__button:hover {
    color: #8699a0; }
  .m-button--secondary.is-external:after, .m-header__container--hovered .is-external.m-header__alternative-book-button:after, .html--relative-navigation.html--secondary-booking-cta .is-external.m-header__alternative-book-button:after, .is-external.m-intro-image__booking-button__button:after {
    background-image: url("../assets/images/icon--external-link--dark.svg"); }

.m-button--primary-on-dark {
  background: #fff;
  color: #314e57; }
  .m-button--primary-on-dark:hover {
    background-color: #8699a0;
    color: #314e57; }

.m-button--secondary-on-dark, .m-header__alternative-book-button {
  border: 1px solid #fff;
  color: #fff; }
  .m-button--secondary-on-dark:hover, .m-header__alternative-book-button:hover {
    border: 1px solid #8699a0;
    color: #8699a0; }

.m-button--s {
  font-size: 0.875rem;
  letter-spacing: 0.66px;
  padding: 0.4375rem 0.5rem;
  line-height: initial; }

.m-button--m, .m-header__alternative-book-button {
  font-size: 1rem;
  letter-spacing: 0.5px;
  padding: 0.75rem 0.75rem;
  line-height: initial; }

.m-button--l, .m-intro-image__booking-button__button, form.mod_form .submit button.btn {
  font-size: 1.125rem;
  letter-spacing: 0.5px;
  padding: 0.9375rem 1rem;
  line-height: initial; }

.m-button--xl {
  font-size: 1.125rem;
  letter-spacing: 0.5px;
  padding: 1.4375rem 1.5rem;
  line-height: initial; }

p .m-button, p .m-header__alternative-book-button, p .m-intro-image__booking-button__button, p form.mod_form .submit button.btn, form.mod_form .submit p button.btn {
  margin-right: 1rem;
  margin-bottom: 1rem; }
  p .m-button:last-child, p .m-header__alternative-book-button:last-child, p .m-intro-image__booking-button__button:last-child, p form.mod_form .submit button.btn:last-child, form.mod_form .submit p button.btn:last-child {
    margin-bottom: 0;
    margin-right: 0; }

.m-nav {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  pointer-events: none;
  -webkit-transition: background-color 0.75s ease-in;
  -o-transition: background-color 0.75s ease-in;
  transition: background-color 0.75s ease-in; }
  .m-nav.is-in {
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: background-color 0.6s ease-in;
    -o-transition: background-color 0.6s ease-in;
    transition: background-color 0.6s ease-in; }

.m-nav__background-container {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: #314e57;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  pointer-events: auto;
  -webkit-transition: -webkit-transform 0.6s ease-in-out;
  transition: -webkit-transform 0.6s ease-in-out;
  -o-transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; }
  .is-in .m-nav__background-container {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: -webkit-transform 0.75s ease-in-out;
    transition: -webkit-transform 0.75s ease-in-out;
    -o-transition: transform 0.75s ease-in-out;
    transition: transform 0.75s ease-in-out;
    transition: transform 0.75s ease-in-out, -webkit-transform 0.75s ease-in-out; }

.m-nav__container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.4s ease-in-out;
  -o-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
  opacity: 0; }
  .is-in .m-nav__container {
    opacity: 1;
    -webkit-transition: opacity 0.5s ease-in-out;
    -o-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out; }
  @media all and (max-width: 1024px) {
    .m-nav__container {
      display: block;
      overflow: auto;
      -webkit-overflow-scrolling: touch; } }

.m-nav__sidebar {
  min-width: 25rem;
  width: 30vw;
  border-right: 1px solid #8699a0;
  padding: 8rem 4rem 2rem;
  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-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }
  @media all and (max-width: 1250px) {
    .m-nav__sidebar {
      padding: 5rem 2rem 4rem; } }
  @media all and (max-width: 1024px) {
    .m-nav__sidebar {
      width: 100%;
      min-width: auto;
      padding: 0 4rem;
      margin-bottom: 4rem;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      border-right: none; } }
  @media all and (max-width: 768px) {
    .m-nav__sidebar {
      display: block;
      padding: 0;
      margin-bottom: 0; } }

.m-nav__main {
  padding: 8rem 4rem 4rem 8rem;
  overflow-y: scroll;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 100%; }
  @media all and (max-width: 1250px) {
    .m-nav__main {
      padding: 5rem 2rem 2rem 4rem; } }
  @media all and (max-width: 1024px) {
    .m-nav__main {
      overflow-y: initial;
      padding: 5rem 4rem 0;
      padding-bottom: 4rem;
      border-bottom: 1px solid #8699a0;
      margin-bottom: 4rem; } }
  @media all and (max-width: 640px) {
    .m-nav__main {
      padding: 3.125rem 1rem 4rem; } }

.m-nav__links {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-nav__links {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }
  @media all and (max-width: 1250px) {
    .m-nav__links {
      font-size: 34px; } }
  @media all and (max-width: 640px) {
    .m-nav__links {
      font-size: 28px; } }
  .m-nav__links li:last-child {
    margin-bottom: 0; }
  .m-nav__links li:first-child a {
    padding-top: 0; }
  .m-nav__links a {
    display: block;
    text-decoration: none;
    color: #fff;
    padding: 1rem 0;
    -webkit-transition: color 0.1s ease-in-out;
    -o-transition: color 0.1s ease-in-out;
    transition: color 0.1s ease-in-out; }
    @media all and (max-width: 640px) {
      .m-nav__links a {
        padding: 0.5rem 0; } }
    .m-nav__links a.is-active, .m-nav__links a:hover {
      -webkit-transition: color 0.1s ease-in-out;
      -o-transition: color 0.1s ease-in-out;
      transition: color 0.1s ease-in-out;
      color: #8699a0; }

.m-nav__sidebar-links {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 4rem;
  margin-top: -1.375rem; }
  @media all and (max-width: 420px) {
    .m-nav__sidebar-links {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-nav__sidebar-links a {
    display: block;
    text-decoration: none;
    color: #fff;
    -webkit-transition: color 0.1s ease-in-out;
    -o-transition: color 0.1s ease-in-out;
    transition: color 0.1s ease-in-out;
    padding-top: 1.375rem;
    padding-bottom: 1.375rem; }
    .m-nav__sidebar-links a.is-active, .m-nav__sidebar-links a:hover {
      -webkit-transition: color 0.1s ease-in-out;
      -o-transition: color 0.1s ease-in-out;
      transition: color 0.1s ease-in-out;
      color: #8699a0; }
  @media all and (max-width: 1250px) {
    .m-nav__sidebar-links {
      margin-top: -1rem; }
      .m-nav__sidebar-links a {
        padding-top: 1rem;
        padding-bottom: 1.0625rem; } }
  @media all and (max-width: 1024px) {
    .m-nav__sidebar-links {
      margin-bottom: 0; } }
  @media all and (max-width: 768px) {
    .m-nav__sidebar-links {
      padding: 0 4rem 4rem;
      margin-bottom: 0; } }
  @media all and (max-width: 640px) {
    .m-nav__sidebar-links {
      padding: 0 1rem 4rem; } }

.m-nav__link-icon {
  display: block;
  position: relative;
  padding-left: 2.5rem; }
  .m-nav__link-icon:before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center; }

.m-nav__link-icon--offers:before {
  background-image: url("../assets/images/icon--angebote.svg");
  width: 1.5rem;
  height: 1.1875rem;
  margin-top: -0.125rem; }

.m-nav__link-icon--dates:before {
  background-image: url("../assets/images/icon--termine.svg");
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.125rem; }

.m-nav__link-icon--vouchers:before {
  background-image: url("../assets/images/icon--gutscheine.svg");
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.125rem; }

.m-nav__teaser {
  display: block;
  border: 1px solid #8699a0;
  padding: 2rem;
  color: #fff;
  text-align: center;
  text-decoration: none; }
  .m-nav__teaser:hover {
    text-decoration: none;
    cursor: pointer; }
    .m-nav__teaser:hover .m-more-link, .m-nav__teaser:hover .m-bestprice-popup__popup p a, .m-bestprice-popup__popup p .m-nav__teaser:hover a {
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
      .m-nav__teaser:hover .m-more-link:after, .m-nav__teaser:hover .m-bestprice-popup__popup p a:after, .m-bestprice-popup__popup p .m-nav__teaser:hover a:after {
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        margin-top: 0.25rem; }
  @media all and (max-width: 768px) {
    .m-nav__teaser {
      border: 0;
      padding: 4rem 0.5rem;
      border-top: 1px solid #8699a0; } }

.nav__teaser-headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  margin-bottom: 1rem; }

.nav__teaser-title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .nav__teaser-title {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.nav__teaser-link {
  color: #fff; }

.m-nav__close-btn {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  font-size: 1.125rem;
  position: absolute;
  top: 2rem;
  right: 2.5rem;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  color: #fff;
  -webkit-transition: color 0.1s ease-in-out;
  -o-transition: color 0.1s ease-in-out;
  transition: color 0.1s ease-in-out; }
  .m-nav__close-btn:hover {
    -webkit-transition: color 0.1s ease-in-out;
    -o-transition: color 0.1s ease-in-out;
    transition: color 0.1s ease-in-out;
    color: #8699a0; }
  .m-nav__close-btn:after {
    display: inline-block;
    top: 0;
    right: 0rem;
    content: '';
    background-image: url("../assets/images/icon--close--white.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 1.0625rem;
    height: 1.0625rem;
    position: relative;
    top: 0.125rem;
    margin-left: 0.625rem; }
  .m-nav__close-btn:before {
    position: absolute;
    display: block;
    content: '';
    z-index: -1;
    top: -0.625rem;
    right: -0.625rem;
    left: -0.625rem;
    bottom: -0.625rem; }
  @media all and (max-width: 768px) {
    .m-nav__close-btn {
      position: relative;
      top: auto;
      text-align: right;
      margin-top: 1.25rem; } }
  @media all and (max-width: 420px) {
    .m-nav__close-btn {
      right: 1rem; } }

.m-space-bottom--1 {
  margin-bottom: 0.5rem; }

.m-space-bottom--2 {
  margin-bottom: 1rem; }

.m-space-bottom--3 {
  margin-bottom: 2rem; }

.m-space-bottom--4 {
  margin-bottom: 4rem; }

.m-space-bottom--5 {
  margin-bottom: 8rem; }

.m-space-bottom--6 {
  margin-bottom: 15rem; }

.m-spacer-s {
  margin-bottom: 2rem; }

.m-spacer-m {
  margin-bottom: 4rem; }

.m-spacer-l {
  margin-bottom: 8rem; }
  @media all and (max-width: 640px) {
    .m-spacer-l {
      margin-bottom: 4rem; } }

.m-spacer-xl {
  margin-bottom: 15rem; }

.m-section-headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 52px;
  line-height: 56px;
  letter-spacing: 0.25px;
  display: block;
  margin-bottom: 4rem; }
  @media all and (max-width: 640px) {
    .m-section-headline {
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }
  @media all and (max-width: 420px) {
    .m-section-headline {
      font-size: 36px;
      line-height: 40px;
      letter-spacing: 0.25px; } }
  @media all and (max-width: 1024px) {
    .m-section-headline {
      margin-bottom: 2rem; } }

.m-section-headline--centered {
  text-align: center; }

.m-header__container {
  position: relative; }
  .html--relative-navigation .m-header__container {
    border-top: 1px solid #fff; }

.m-header__shadow {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 6.25rem;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.35)), to(rgba(0, 0, 0, 0)));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0));
  z-index: 1; }
  .html--relative-navigation .m-header__shadow {
    display: none; }

.m-header__container--hovered .m-header__logo-container {
  background-color: #fff;
  -webkit-transition: background-color 0.3s ease-in-out;
  -o-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out; }

.m-header__container--hovered .m-header__logo.m-header__logo--white {
  display: none; }

.m-header__container--hovered .m-header__logo.m-header__logo--black {
  display: block; }

.m-header__container--hovered .m-select__current {
  color: #000; }

.m-header__container--hovered .m-header__nav-trigger {
  color: #000; }
  .m-header__container--hovered .m-header__nav-trigger:after {
    background-image: url("../assets/images/icon--hamburger--dark.svg"); }

.m-header {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  background-color: transparent;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transition: background-color 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  padding-bottom: 1.25rem; }
  @media all and (min-width: 769px) {
    .m-header {
      position: fixed; } }
  .is-compact-nav .m-header {
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    height: 5rem;
    position: fixed; }

.m-header__top {
  position: relative;
  height: 5rem;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.25px;
  color: #314e57;
  padding: 0 2rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color: transparent;
  -webkit-box-shadow: 1px 1px 0px transparent;
          box-shadow: 1px 1px 0px transparent; }
  .is-compact-nav .m-header__top {
    background-color: #fff;
    -webkit-box-shadow: 1px 1px 0px #d9d9d9;
            box-shadow: 1px 1px 0px #d9d9d9;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  @media all and (max-width: 768px) {
    .m-header__top {
      height: 4.0625rem; } }
  @media all and (max-width: 420px) {
    .m-header__top {
      padding: 0 0.5rem; } }

.m-header__alternative-book-button {
  display: none;
  position: absolute;
  left: 2rem;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  .is-compact-nav .m-header__alternative-book-button {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  .html--secondary-booking-cta .m-header__alternative-book-button {
    display: block; }
  @media all and (max-width: 768px) {
    .m-header__alternative-book-button {
      display: none !important; } }

.m-header__fixed-header-book-button {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  text-align: center;
  -webkit-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  font-size: 1rem;
  letter-spacing: 0.5px;
  padding: 0.75rem 0.75rem;
  line-height: initial;
  background-color: transparent;
  color: #314e57;
  border: 1px solid #8699a0;
  background-color: #fff;
  position: absolute;
  top: 2.5rem;
  left: 2rem;
  opacity: 0;
  -webkit-transform: translateX(-150%) translateY(-50%);
      -ms-transform: translateX(-150%) translateY(-50%);
          transform: translateX(-150%) translateY(-50%);
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
  .m-header__fixed-header-book-button:hover {
    text-decoration: none; }
  .m-header__fixed-header-book-button.is-external:after {
    display: inline-block;
    margin-left: 0.5rem;
    content: '';
    width: 0.75rem;
    height: 0.75rem;
    background-size: contain;
    background-image: url("../assets/images/icon--external-link--white.svg"); }
  .m-header__fixed-header-book-button:hover {
    color: #8699a0; }
  .m-header__fixed-header-book-button.is-external:after {
    background-image: url("../assets/images/icon--external-link--dark.svg"); }
  .html--booking-button-is-in .m-header__fixed-header-book-button {
    -webkit-transform: translateX(0) translateY(-50%);
        -ms-transform: translateX(0) translateY(-50%);
            transform: translateX(0) translateY(-50%);
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
  @media all and (max-width: 768px) {
    .m-header__fixed-header-book-button {
      font-size: 0.875rem;
      letter-spacing: 0.66px;
      padding: 0.4375rem 0.5rem;
      line-height: initial;
      top: 2.03125rem;
      left: 1rem; }
      .is-compact-nav .m-header__fixed-header-book-button {
        -webkit-transform: translateX(0) translateY(-50%);
            -ms-transform: translateX(0) translateY(-50%);
                transform: translateX(0) translateY(-50%);
        opacity: 1; } }

.m-header__selects .m-select {
  float: left;
  font-size: 1.125rem;
  color: #fff;
  -webkit-transition: color 0.3s ease-in-out;
  -o-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out; }
  .is-compact-nav .m-header__selects .m-select {
    pointer-events: none;
    display: none; }
  .m-header__selects .m-select:last-of-type {
    margin-left: 2rem; }
    @media all and (max-width: 420px) {
      .m-header__selects .m-select:last-of-type {
        margin-left: 1rem; } }
  @media all and (max-width: 420px) {
    .m-header__selects .m-select {
      font-size: 1rem; } }

.html--relative-navigation .m-header__selects .m-select__current {
  color: #000; }

.m-header__fixed-header-logo {
  position: absolute;
  display: block;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  .is-compact-nav .m-header__fixed-header-logo {
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  .m-header__fixed-header-logo img {
    height: 2.5rem;
    width: auto; }
  @media all and (max-width: 768px) {
    .m-header__fixed-header-logo {
      display: none; } }

.m-header__nav-trigger {
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 1.375rem;
  margin-left: 0.5rem;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  color: #fff; }
  .is-compact-nav .m-header__nav-trigger {
    color: #314e57; }
  .html--relative-navigation .m-header__nav-trigger {
    color: #000; }
  .m-header__nav-trigger:after {
    display: inline-block;
    top: 0;
    right: 0rem;
    content: '';
    background-image: url("../assets/images/icon--hamburger--white.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 2rem;
    height: 0.9375rem;
    position: relative;
    top: 0rem;
    margin-left: 0.5rem; }
    .is-compact-nav .m-header__nav-trigger:after {
      background-image: url("../assets/images/icon--hamburger--black.svg"); }
    .html--relative-navigation .m-header__nav-trigger:after {
      background-image: url("../assets/images/icon--hamburger--black.svg"); }
  @media all and (max-width: 420px) {
    .m-header__nav-trigger span {
      display: none; }
      .is-compact-nav .m-header__nav-trigger span {
        display: inline-block; } }

.m-header__logo-container {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  background-color: transparent;
  -webkit-transition: background-color 0.3s ease-in-out;
  -o-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
  padding-bottom: 2rem; }

.m-header__logo {
  display: block;
  padding-top: 6rem;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  .m-header__logo.m-header__logo--white {
    display: block; }
  .m-header__logo.m-header__logo--black {
    display: none; }
  .html--relative-navigation .m-header__logo.m-header__logo--white {
    display: none; }
  .html--relative-navigation .m-header__logo.m-header__logo--black {
    display: block; }
  .html--hide-logo .m-header__logo.m-header__logo--white {
    opacity: 0; }
  .m-header__logo img {
    width: auto;
    height: 100%;
    max-height: 9.375rem;
    margin-left: auto;
    margin-right: auto; }
  .is-compact-nav .m-header__logo {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
    pointer-events: none; }
  @media all and (max-width: 768px) {
    .m-header__logo {
      padding-top: 9rem; } }
  @media all and (max-width: 420px) {
    .m-header__logo {
      padding-top: 5.5rem; } }

.m-main {
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  overflow-x: hidden;
  min-height: 0; }
  .html--relative-navigation .m-main {
    margin-top: 21.1875rem; }
    @media all and (max-width: 768px) {
      .html--relative-navigation .m-main {
        margin-top: 21.875rem; } }
    @media all and (max-width: 420px) {
      .html--relative-navigation .m-main {
        margin-top: 15.625rem; } }

.m-main--old {
  display: none; }

.m-intro-image .m-intro-image__container {
  position: relative;
  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;
  text-align: center;
  height: calc(100vh - 5.375rem); }
  @media all and (max-width: 420px) {
    .m-intro-image .m-intro-image__container {
      height: calc(100vh); } }

.m-intro-image .m-intro-image__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: none; }
  .m-intro-image .m-intro-image__video.is-visible {
    display: block; }

.m-intro-image .m-intro-image__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 5; }

.m-intro-image .m-intro-image__darken-layer {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #17282F;
  opacity: 0.62;
  z-index: 10; }

.m-intro-image .m-intro-image__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 64px;
  line-height: 72px;
  letter-spacing: 0.5px;
  margin-bottom: 2rem;
  z-index: 20;
  margin-bottom: 0;
  color: #fff;
  position: absolute;
  top: 15.625rem;
  right: 1rem;
  bottom: 18%;
  left: 1rem;
  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;
  -webkit-hyphens: none !important;
      -ms-hyphens: none !important;
          hyphens: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  @media all and (max-width: 640px) {
    .m-intro-image .m-intro-image__text {
      font-size: 44px;
      line-height: 48px;
      letter-spacing: 0.5px;
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }
  .m-intro-image .m-intro-image__text.is-in {
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out; }
  @media all and (max-width: 768px) {
    .m-intro-image .m-intro-image__text {
      top: 16.875rem;
      bottom: 5%; } }
  @media all and (max-width: 420px) {
    .m-intro-image .m-intro-image__text {
      font-size: 2.25rem;
      bottom: 2rem; } }

.m-intro-image__booking-button {
  height: 5.375rem;
  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;
  border-bottom: 1px solid #d9d9d9; }
  @media all and (max-width: 420px) {
    .m-intro-image__booking-button {
      display: none; } }

.m-intro-image__booking-button__button-wrapper {
  position: relative; }

.html--secondary-booking-cta .m-intro-image__booking-button {
  display: none; }

.html--secondary-booking-cta .m-intro-image__container {
  height: calc(100vh); }

.m-intro-image--small .m-intro-image__container {
  height: 70vh;
  min-height: 31.25rem;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative; }
  .m-intro-image--small .m-intro-image__container:before {
    display: none; }
  .m-intro-image--small .m-intro-image__container__copyright {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: italic;
    font-stretch: normal;
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.25px;
    color: #314e57;
    position: absolute;
    padding-top: 15rem;
    margin-left: 0.5rem; }
  @media all and (max-width: 768px) {
    .m-intro-image--small .m-intro-image__container {
      height: 60vh; } }
  @media all and (max-width: 640px) {
    .m-intro-image--small .m-intro-image__container {
      position: relative;
      overflow: hidden;
      display: block;
      background-color: #f4f4f4;
      min-height: 0; }
      .m-intro-image--small .m-intro-image__container:after {
        display: block;
        content: '';
        padding-top: 50%; }
      .m-intro-image--small .m-intro-image__container iframe,
      .m-intro-image--small .m-intro-image__container img {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 1;
        -webkit-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s; }
        .m-intro-image--small .m-intro-image__container iframe.lazyloaded,
        .m-intro-image--small .m-intro-image__container img.lazyloaded {
          opacity: 1; }
      .m-intro-image--small .m-intro-image__container.loaded img {
        opacity: 1; } }

.m-intro-image--has-video {
  padding-top: 0; }
  @media all and (min-width: 769px) {
    .m-intro-image--has-video {
      height: calc(100vh - 5.375rem); }
      .m-intro-image--has-video .m-intro-image__image {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
        .m-intro-image--has-video .m-intro-image__image .m-hero__video {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: 2;
          display: none; }
          .m-intro-image--has-video .m-intro-image__image .m-hero__video.is-visible {
            display: block; } }
  @media all and (max-width: 768px) {
    .m-intro-image--has-video .m-hero__video {
      display: none; } }

.m-intro-image__image--mobile {
  display: none; }

@media all and (max-width: 768px) {
  .m-intro-image__container--has-mobile-image .m-intro-image__image--desktop {
    display: none; }
  .m-intro-image__container--has-mobile-image .m-intro-image__image--mobile {
    display: block; } }

.m-intro {
  text-align: center; }

.m-intro__category {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  margin-bottom: 0.5rem; }

.m-intro__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 64px;
  line-height: 72px;
  letter-spacing: 0.5px;
  margin-bottom: 1rem; }
  @media all and (max-width: 640px) {
    .m-intro__headline {
      font-size: 44px;
      line-height: 48px;
      letter-spacing: 0.5px;
      -webkit-hyphens: auto;
          -ms-hyphens: auto;
              hyphens: auto; } }

.m-intro__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 28px;
  line-height: 40px;
  /* @todo Remove after Edior Config adjustment */ }
  @media all and (max-width: 420px) {
    .m-intro__text {
      font-size: 22px;
      line-height: 32px; } }
  .m-intro__text p {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 28px;
    line-height: 40px; }
    @media all and (max-width: 420px) {
      .m-intro__text p {
        font-size: 22px;
        line-height: 32px; } }
    .m-intro__text p a {
      color: #8699a0;
      text-decoration: none; }
      .m-intro__text p a:hover {
        text-decoration: underline; }

@media all and (min-width: 769px) {
  .m-columns__grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -1.3125rem;
    margin-right: -1.3125rem; } }
  @media all and (min-width: 769px) and (max-width: 420px) {
    .m-columns__grid {
      padding-left: 0.65625rem;
      padding-right: 0.65625rem; } }

.m-columns__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-columns__headline {
      font-size: 22px;
      line-height: 30px;
      letter-spacing: 0.25px; } }

.m-columns__left {
  margin-bottom: 4rem; }
  @media all and (min-width: 769px) {
    .m-columns__left {
      padding-left: 1.3125rem;
      padding-right: 1.3125rem;
      width: 50%;
      margin-bottom: 0; } }
  @media all and (min-width: 769px) and (max-width: 420px) {
    .m-columns__left {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }

@media all and (min-width: 769px) {
  .m-columns__right {
    padding-left: 1.3125rem;
    padding-right: 1.3125rem;
    width: 50%; } }
  @media all and (min-width: 769px) and (max-width: 420px) {
    .m-columns__right {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }

.m-image {
  position: relative; }
  .m-image .m-image__container {
    position: relative; }
  .m-image .m-image__image {
    padding-top: calc(100% / (16/9));
    background-size: cover;
    background-position: center center; }
  .m-image__copyright {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.75px;
    margin-top: 0.5rem;
    color: #314e57; }
    @media all and (min-width: 421px) {
      .m-image__copyright {
        position: absolute;
        top: 100%;
        left: 100%;
        width: 100%;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        -webkit-transform-origin: 0 0;
            -ms-transform-origin: 0 0;
                transform-origin: 0 0;
        margin-left: 0.125rem;
        margin-top: 0; } }
  .m-image__caption {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: italic;
    font-stretch: normal;
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.25px;
    color: #314e57;
    margin-top: 0.5rem; }
  .m-image__container {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }

.m-image--large {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem; }
  @media all and (max-width: 768px) {
    .m-image--large {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-image--large {
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media all and (min-width: 1025px) {
    .m-image--large .m-image__caption {
      max-width: 50%; } }

.m-image--small {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 51.04167rem; }
  @media all and (max-width: 768px) {
    .m-image--small {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-image--small {
      padding-left: 1rem;
      padding-right: 1rem; } }
  .m-image--small .m-image__image {
    padding-top: calc(100% / (1/1)); }

.m-image__group {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem; }
  @media all and (max-width: 768px) {
    .m-image__group {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-image__group {
      padding-left: 1rem;
      padding-right: 1rem; } }
  .m-image__group .m-image {
    max-width: 18.75rem;
    margin: 0 auto;
    margin-bottom: 8rem; }
    .m-image__group .m-image .m-image__image {
      padding-top: calc(100% / (1/1.25)); }
  @media all and (min-width: 769px) {
    .m-image__group {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .m-image__group .m-image {
        padding-right: 1.3125rem;
        max-width: 100%;
        width: 100%; }
        .m-image__group .m-image:last-child {
          padding-left: 1.3125rem;
          padding-right: 0; } }

.m-select {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative; }
  .m-select__current {
    cursor: pointer; }
    .m-select__current:after {
      content: "";
      font-size: 0.25rem;
      margin-left: 0.375rem; }
    .m-select__current:after {
      display: inline-block;
      position: relative;
      top: -0.25rem;
      -webkit-transition: translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      transition: translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      -o-transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
    .is-in .m-select__current:after {
      -webkit-transform: scaleY(-1);
          -ms-transform: scaleY(-1);
              transform: scaleY(-1);
      -webkit-transform-origin: 50% 50%;
          -ms-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      -webkit-transition: translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      transition: translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      -o-transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, translate 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }
  .m-select__menue {
    position: absolute;
    left: 0;
    top: 100%;
    border: 1px solid #f4f4f4;
    margin-top: 0.5rem;
    background-color: #fff;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
            transform: translateY(-8px); }
    .is-in .m-select__menue {
      pointer-events: auto;
      opacity: 1;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out;
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0); }
    .m-select__menue li {
      cursor: pointer;
      display: block;
      white-space: nowrap; }
      .m-select__menue li:first-child {
        margin-top: 0.5rem; }
      .m-select__menue li:last-child {
        margin-bottom: 0.5rem; }
      .m-select__menue li.is-active, .m-select__menue li:hover {
        background-color: #f4f4f4; }
      .m-select__menue li a {
        display: block;
        padding: 0.25rem 1rem;
        color: #000; }
        .m-select__menue li a:hover {
          text-decoration: none; }

.m-select--center {
  display: inline-block; }
  .m-select--center .m-select__menue {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.m-select--big-typo {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 28px;
  line-height: 40px; }
  @media all and (max-width: 420px) {
    .m-select--big-typo {
      font-size: 22px;
      line-height: 32px; } }

.m-accordion__element:first-child .m-accordion__headline {
  border-top: 1px solid #8699a0; }

.m-accordion__element.is-active .m-accordion__headline {
  padding: 2rem 0 0;
  border-bottom: 0; }
  .m-accordion__element.is-active .m-accordion__headline:after {
    background-image: url("../assets/images/icon--minus.svg?v=2");
    -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
            transform: translateY(0%); }

.m-accordion__element.is-active .m-accordion__content {
  height: auto;
  overflow: visible;
  opacity: 1;
  padding: 1rem 0 2rem;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  border-bottom: 1px solid #8699a0; }

.m-accordion__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: 0.25px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  padding: 2rem 0;
  border-bottom: 1px solid #8699a0;
  cursor: pointer;
  padding-right: 2rem; }
  @media all and (max-width: 420px) {
    .m-accordion__headline {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-accordion__headline:after {
    display: block;
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1.25rem;
    height: 1.25rem;
    background-image: url("../assets/images/icon--plus.svg?v=2");
    background-size: contain; }

.m-accordion__content {
  height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  .m-accordion__content [class^="m-spacer-"]:last-child {
    margin-bottom: 1rem; }
  .m-accordion__content .m-image {
    padding: 0; }
  .m-accordion__content .m-container {
    padding-left: 0;
    padding-right: 0; }
    .m-accordion__content .m-container:last-child {
      margin-bottom: 0; }

.mod_slider__container {
  max-width: 58.33333rem;
  margin: 0 auto; }

.mod_slider_padding-wrap {
  position: relative; }

.mod_slider__wrap {
  position: relative;
  padding-top: 56.25%;
  background-color: #f4f4f4; }

.mod_slider__wrap--has-caption {
  margin-bottom: 6.25em; }
  @media all and (max-width: 640px) {
    .mod_slider__wrap--has-caption {
      margin-bottom: 8.75em; } }

.mod_slider {
  position: absolute;
  display: none;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  .mod_slider .rsContent {
    -webkit-transition-duration: 0.3s;
         -o-transition-duration: 0.3s;
            transition-duration: 0.3s; }

.mod_slider__slide {
  position: relative; }
  .mod_slider__slide .mod_slider__image__wrapper {
    position: relative;
    padding-top: 56.25%; }
  .mod_slider__slide .mod_slider__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .mod_slider__slide .mod_slider__image picture,
    .mod_slider__slide .mod_slider__image img {
      width: inherit;
      max-height: 100%;
      max-width: 100%;
      margin: 0 auto; }

/**
 * Caption
 */
.mod_slider__counter {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.25px;
  color: #314e57;
  position: absolute;
  top: 100%;
  right: 0;
  color: #000;
  margin-top: 15rem;
  display: none; }

.mod_slider__copyright {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  position: absolute;
  top: 0;
  left: 100%;
  top: 100%;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  text-align: left;
  padding-left: 6.25em; }
  @media all and (max-width: 640px) {
    .mod_slider__copyright {
      padding-left: 3.125em; } }

.rsGCaption {
  left: 100%;
  bottom: 0; }

.mod_slider__caption-text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.25px;
  color: #314e57;
  position: absolute;
  margin-top: 1rem;
  text-align: left;
  padding-right: 6.25rem;
  width: 100%; }

/**
 * Arrow styles
 */
.mod_slider__prev,
.mod_slider__next {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: absolute;
  top: 100%;
  cursor: pointer;
  margin-top: 1rem;
  width: 2rem;
  height: 2rem;
  z-index: 100; }
  .mod_slider__prev.is-disabled,
  .mod_slider__next.is-disabled {
    opacity: 0.3; }
  @media all and (max-width: 640px) {
    .mod_slider__prev,
    .mod_slider__next {
      display: none; } }

.mod_slider__prev {
  right: 3.125rem; }
  .mod_slider__prev:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 2rem;
    height: 1.3125rem;
    background-image: url("../assets/images/icon--arrow-left.svg");
    background-size: container;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

.mod_slider__next {
  right: 0; }
  .mod_slider__next:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 2rem;
    height: 1.3125rem;
    background-image: url("../assets/images/icon--arrow-right.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

.m-cookie-warning {
  position: fixed;
  right: 0;
  bottom: 0;
  background-color: #21353D;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  -o-transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  height: 5.375rem; }
  .m-cookie-warning.is-in {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: -webkit-transform 0.4s ease-in-out;
    transition: -webkit-transform 0.4s ease-in-out;
    -o-transition: transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out; }
  @media all and (max-width: 640px) {
    .m-cookie-warning {
      left: 0;
      display: block;
      text-align: center;
      height: auto; } }

.m-cookie-warning__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  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;
  padding: 0 2rem; }
  @media all and (max-width: 420px) {
    .m-cookie-warning__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  @media all and (max-width: 640px) {
    .m-cookie-warning__text {
      padding: 2rem; } }
  .m-cookie-warning__text a {
    color: #8699a0;
    text-decoration: none;
    border: none; }
    .m-cookie-warning__text a:hover {
      text-decoration: underline; }
    .m-cookie-warning__text a:hover {
      text-decoration: none !important;
      border-bottom: 1px solid; }
    @media all and (max-width: 640px) {
      .m-cookie-warning__text a:before {
        display: block;
        content: '\A'; } }

.m-cookie-warning__button {
  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;
  cursor: pointer;
  margin-left: auto;
  padding: 0 2rem;
  background-color: #314e57;
  -webkit-transition: background-color 0.3s ease-in-out;
  -o-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out; }
  .m-cookie-warning__button:hover {
    background-color: #8699a0;
    -webkit-transition: background-color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out; }
  @media all and (max-width: 640px) {
    .m-cookie-warning__button {
      padding: 1rem; } }

.m-features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media all and (max-width: 420px) {
    .m-features {
      padding-left: 0.65625rem;
      padding-right: 0.65625rem; } }
  .m-features__item {
    padding-left: 1.3125rem;
    padding-right: 1.3125rem;
    width: 20%;
    text-align: center;
    margin-bottom: 2rem; }
    @media all and (max-width: 420px) {
      .m-features__item {
        padding-left: 0.75rem;
        padding-right: 0.75rem; } }
    @media all and (max-width: 1024px) {
      .m-features__item {
        padding-left: 1.3125rem;
        padding-right: 1.3125rem;
        width: 33.33333%; } }
  @media all and (max-width: 1024px) and (max-width: 420px) {
    .m-features__item {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
    @media all and (max-width: 640px) {
      .m-features__item {
        padding-left: 1.3125rem;
        padding-right: 1.3125rem;
        width: 50%; } }
  @media all and (max-width: 640px) and (max-width: 420px) {
    .m-features__item {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
  .m-features__image-wrap {
    width: 2.5rem;
    margin: 0 auto; }
  .m-features__image {
    padding-top: calc(100% / (1/1));
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-bottom: 0.5rem; }
  .m-features__title {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.75px;
    text-transform: uppercase;
    color: #17282f;
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto; }
  .m-features__notes {
    text-align: center; }

.m-teaser-wide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .m-teaser-wide:hover {
    cursor: pointer; }
    .m-teaser-wide:hover .m-more-link, .m-teaser-wide:hover .m-bestprice-popup__popup p a, .m-bestprice-popup__popup p .m-teaser-wide:hover a {
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
      .m-teaser-wide:hover .m-more-link:after, .m-teaser-wide:hover .m-bestprice-popup__popup p a:after, .m-bestprice-popup__popup p .m-teaser-wide:hover a:after {
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        margin-top: 0.25rem; }
  @media all and (max-width: 768px) {
    .m-teaser-wide {
      display: block; } }

.m-teaser-wide__image {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  width: 50%; }
  @media all and (max-width: 768px) {
    .m-teaser-wide__image {
      width: 100%; }
      .m-teaser-wide__image:after {
        display: block;
        content: '';
        padding-top: calc(100% / (624/453)); } }

.m-teaser-wide__content {
  min-height: 18.75rem;
  padding: 8rem 4rem;
  text-align: center;
  width: 50%;
  border-top: 1px solid #efefef;
  border-right: 1px solid #efefef;
  border-bottom: 1px solid #efefef; }
  .m-bg-container .m-teaser-wide__content {
    background-color: #fff; }
  @media all and (max-width: 768px) {
    .m-teaser-wide__content {
      width: 100%;
      border-top: none;
      border-right: 1px solid #efefef;
      border-bottom: 1px solid #efefef;
      border-left: 1px solid #efefef;
      padding: 2rem;
      min-height: 0; } }
  .m-bg-container .m-teaser-wide__content {
    border: none; }

.m-teaser-wide__title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-teaser-wide__title {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-teaser-wide__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  margin-bottom: 2rem; }
  @media all and (max-width: 420px) {
    .m-teaser-wide__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-teaser__group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem;
  margin-bottom: calc(4rem * -1); }
  .m-teaser__group .m-teaser__group-element {
    width: 50%;
    padding: 0 1.3125rem;
    margin-bottom: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media all and (max-width: 1024px) {
      .m-teaser__group .m-teaser__group-element {
        width: 50%; } }
    @media all and (max-width: 768px) {
      .m-teaser__group .m-teaser__group-element {
        width: 100%; } }

.m-teaser__group-three {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem;
  margin-bottom: calc(4rem * -1); }
  @media all and (max-width: 640px) {
    .m-teaser__group-three {
      margin-bottom: 4rem;
      margin-left: 0;
      margin-right: 0; } }
  .m-teaser__group-three .m-teaser__group-three-element {
    width: 33.33%;
    padding: 0 1.3125rem;
    margin-bottom: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media all and (max-width: 1024px) {
      .m-teaser__group-three .m-teaser__group-three-element {
        width: 50%; } }
    @media all and (max-width: 640px) {
      .m-teaser__group-three .m-teaser__group-three-element {
        width: 100%;
        padding: 0;
        margin: 0 1.3125rem; }
        .js-teaser-slider .m-teaser__group-three .m-teaser__group-three-element {
          margin-bottom: 0; } }
  .m-teaser__group-three.flickity-enabled {
    display: block; }
  .m-teaser__group-three .flickity-button {
    top: 100%;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    border-radius: 0;
    background-image: url("../assets/images/icon--arrow-left.svg");
    background-size: container;
    background-repeat: no-repeat;
    background-position: center center;
    width: 2rem;
    width: 2rem; }
    .m-teaser__group-three .flickity-button svg {
      display: none; }
    .m-teaser__group-three .flickity-button.previous {
      background-image: url("../assets/images/icon--arrow-left.svg");
      left: 0; }
    .m-teaser__group-three .flickity-button.next {
      background-image: url("../assets/images/icon--arrow-right.svg");
      right: 0; }
  .m-teaser__group-three .flickity-viewport {
    -webkit-transition: height 0.2s;
    -o-transition: height 0.2s;
    transition: height 0.2s; }

.m-teaser {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .m-bg-container .m-teaser {
    background-color: #fff; }

a.m-teaser:hover {
  cursor: pointer; }
  a.m-teaser:hover .m-more-link, a.m-teaser:hover .m-bestprice-popup__popup p a, .m-bestprice-popup__popup p a.m-teaser:hover a {
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    a.m-teaser:hover .m-more-link:after, a.m-teaser:hover .m-bestprice-popup__popup p a:after, .m-bestprice-popup__popup p a.m-teaser:hover a:after {
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out;
      margin-top: 0.25rem; }

.m-teaser__image {
  position: relative;
  overflow: hidden;
  display: block;
  background-color: #f4f4f4;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  .m-teaser__image:after {
    display: block;
    content: '';
    padding-top: 66.66667%; }
  .m-teaser__image iframe,
  .m-teaser__image img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    .m-teaser__image iframe.lazyloaded,
    .m-teaser__image img.lazyloaded {
      opacity: 1; }
  .m-teaser__image.loaded img {
    opacity: 1; }

.m-teaser__label {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  background-color: #8699a0;
  padding: 0.25rem 0.5rem;
  color: #fff;
  display: inline-block;
  position: absolute;
  top: 1rem;
  right: 1rem;
  text-transform: uppercase; }

.m-teaser__content {
  border-right: 1px solid #efefef;
  border-bottom: 1px solid #efefef;
  border-left: 1px solid #efefef;
  padding: 2rem;
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media all and (max-width: 1024px) {
    .m-teaser__content {
      padding: 2rem; } }
  @media all and (max-width: 420px) {
    .m-teaser__content {
      padding: 2rem 1rem; } }
  .m-bg-container .m-teaser__content {
    border: none; }

.m-teaser__tag {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  color: #8699a0;
  text-transform: uppercase;
  margin-bottom: 0.5rem; }

.m-teaser__title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-teaser__title {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-teaser__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  margin-bottom: 2rem;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto; }
  @media all and (max-width: 420px) {
    .m-teaser__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-teaser__link {
  margin: auto; }

.m-teaser__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: calc(2rem * -1); }
  .m-teaser__buttons .m-button, .m-teaser__buttons .m-header__alternative-book-button, .m-teaser__buttons .m-intro-image__booking-button__button, .m-teaser__buttons form.mod_form .submit button.btn, form.mod_form .submit .m-teaser__buttons button.btn {
    margin: 0 1rem;
    margin-bottom: 2rem; }

.m-teaser--small .m-teaser__content {
  padding: 2rem 1rem; }

.m-teaser--small .m-teaser__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px; }

@media all and (max-width: 1100px) {
  .m-teaser--small .m-teaser__title {
    font-size: 1.875rem; }
  .m-teaser--small .m-teaser__text {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.75px; } }

.m-teaser__group-button {
  text-align: center;
  margin-top: 8rem; }
  @media all and (max-width: 768px) {
    .m-teaser__group-button {
      margin-top: 4rem; } }

.m-teaser__group-button--reduced-margin-top {
  margin-top: 4rem; }

.m-bg-container {
  background-color: #f4f4f4;
  padding: 8rem 0; }
  @media all and (max-width: 768px) {
    .m-bg-container {
      padding: 8rem 0 4rem; } }
  @media all and (max-width: 420px) {
    .m-bg-container {
      padding: 4rem 0 4rem; } }

.m-teaser-cluster .m-section-headline {
  margin-bottom: 8rem; }
  @media all and (max-width: 1024px) {
    .m-teaser-cluster .m-section-headline {
      margin-bottom: 4rem; } }

.m-teaser-cluster .m-teaser-wide,
.m-teaser-cluster .m-teaser__group {
  padding-bottom: 8rem; }
  @media all and (max-width: 768px) {
    .m-teaser-cluster .m-teaser-wide,
    .m-teaser-cluster .m-teaser__group {
      padding-bottom: 4rem; } }

.m-teaser-cluster > div:last-child {
  padding-bottom: 0; }

.m-tabs__nav {
  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-bottom: 2rem;
  padding: 0 1rem; }

.m-tabs__link {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0 4rem;
  position: relative;
  cursor: pointer;
  color: #8699a0;
  padding: 0 3.125rem;
  padding-bottom: 1rem;
  -webkit-transition: color 0.3s ease-in-out;
  -o-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out; }
  @media all and (max-width: 420px) {
    .m-tabs__link {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }
  @media all and (max-width: 640px) {
    .m-tabs__link {
      margin: 0 0.5rem;
      padding: 0 0.625rem;
      padding-bottom: 0.5rem; } }
  .m-tabs__link:after {
    display: block;
    content: '';
    height: 2px;
    -webkit-transition: background-color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
    background-color: #8699a0;
    left: 0;
    right: 0;
    position: absolute;
    bottom: 0; }
  .m-tabs__link:hover, .m-tabs__link.is-active {
    color: #000;
    -webkit-transition: color 0.3s ease-in-out;
    -o-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out; }
    .m-tabs__link:hover:after, .m-tabs__link.is-active:after {
      -webkit-transition: background-color 0.3s ease-in-out;
      -o-transition: background-color 0.3s ease-in-out;
      transition: background-color 0.3s ease-in-out;
      background-color: #000; }

.m-tabs__content {
  display: none; }
  .m-tabs__content.is-visible {
    display: block; }

.m-newsletter-signup {
  position: relative;
  background-color: #21353D; }

.m-newsletter-signup__container {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem;
  padding-top: 2rem;
  padding-bottom: 2rem; }
  @media all and (max-width: 768px) {
    .m-newsletter-signup__container {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-newsletter-signup__container {
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media all and (min-width: 769px) {
    .m-newsletter-signup__container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }

.m-newsletter-signup__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  color: #fff; }
  @media all and (max-width: 420px) {
    .m-newsletter-signup__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  @media all and (min-width: 769px) {
    .m-newsletter-signup__text {
      padding-right: 15rem; } }

.m-newsletter-signup__text--desktop {
  display: block; }
  @media all and (max-width: 768px) {
    .m-newsletter-signup__text--desktop {
      display: none; } }

.m-newsletter-signup__text--mobile {
  display: none; }
  @media all and (max-width: 768px) {
    .m-newsletter-signup__text--mobile {
      display: block;
      margin-bottom: 2rem; } }

.m-newsletter-signup__button {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  color: #fff;
  text-transform: uppercase;
  background-color: #314e57;
  -webkit-transition: background-color 0.3s ease-in-out;
  -o-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out; }
  .m-newsletter-signup__button:hover {
    background-color: #8699a0;
    -webkit-transition: background-color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out; }
  @media all and (min-width: 769px) {
    .m-newsletter-signup__button {
      margin-left: auto;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      padding: 0 2rem;
      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; } }
  @media all and (max-width: 768px) {
    .m-newsletter-signup__button {
      display: inline-block;
      background-color: #314e57;
      padding: 2rem; } }

.m-footer {
  background-color: #17282f;
  color: #fff;
  padding-top: 2rem; }

.m-footer__container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem; }
  @media all and (max-width: 768px) {
    .m-footer__container {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-footer__container {
      padding-left: 1rem;
      padding-right: 1rem; } }

.m-footer__back-to-top {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  text-align: right;
  margin-bottom: 4rem; }
  @media all and (max-width: 768px) {
    .m-footer__back-to-top {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-footer__back-to-top {
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media all and (max-width: 1024px) {
    .m-footer__back-to-top {
      margin-bottom: 1rem; } }

.m-footer__back-to-top__icon {
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  background-size: contain;
  background-image: url("../assets/images/icon--backtotop.svg");
  margin-left: auto; }

.m-footer__blocks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.m-footer__block {
  display: block;
  width: calc(25% - 42px);
  margin-bottom: 2.5rem; }
  @media all and (max-width: 1200px) {
    .m-footer__block {
      width: calc(33.33% - 42px); } }
  @media all and (max-width: 1024px) {
    .m-footer__block {
      width: calc(50% - 42px); } }
  @media all and (max-width: 640px) {
    .m-footer__block {
      width: 100%; } }

.m-footer__block--subblock {
  width: calc(50% - 42px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media all and (max-width: 1200px) {
    .m-footer__block--subblock {
      width: calc(33.33% - 42px); } }
  @media all and (max-width: 1024px) {
    .m-footer__block--subblock {
      width: 100%; } }

.m-footer__subblock {
  width: calc(50% - 42px); }
  @media all and (max-width: 1200px) {
    .m-footer__subblock {
      width: 100%; } }
  @media all and (max-width: 1024px) {
    .m-footer__subblock {
      width: calc(50% - 42px); } }
  @media all and (max-width: 640px) {
    .m-footer__subblock {
      width: 100%;
      margin-bottom: 2.5rem; }
      .m-footer__subblock:last-of-type {
        margin-bottom: 0; } }

.m-footer__block-headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-footer__block-headline {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-footer__block-text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-footer__block-text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-footer__block-text h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 64px;
    line-height: 72px;
    letter-spacing: 0.5px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-footer__block-text h2 {
        font-size: 44px;
        line-height: 48px;
        letter-spacing: 0.5px;
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
  .m-footer__block-text h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 52px;
    line-height: 56px;
    letter-spacing: 0.25px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-footer__block-text h2 {
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
    @media all and (max-width: 420px) {
      .m-footer__block-text h2 {
        font-size: 36px;
        line-height: 40px;
        letter-spacing: 0.25px; } }
  .m-footer__block-text h3 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-footer__block-text h3 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-footer__block-text h4 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 34px;
    line-height: 40px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-footer__block-text h4 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-footer__block-text h5 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 24px;
    line-height: 30px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-footer__block-text h5 {
        font-size: 22px;
        line-height: 30px;
        letter-spacing: 0.25px; } }
  .m-footer__block-text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button) {
    color: #8699a0;
    text-decoration: none; }
    .m-footer__block-text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover {
      text-decoration: underline; }
  .m-footer__block-text h2:not(:first-child), .m-footer__block-text h3:not(:first-child), .m-footer__block-text h4:not(:first-child), .m-footer__block-text h5:not(:first-child), .m-footer__block-text h6:not(:first-child) {
    padding-top: 1rem; }
  .m-footer__block-text ul {
    margin-bottom: 2rem; }
    .m-footer__block-text ul:last-child {
      margin-bottom: 0; }
    .m-footer__block-text ul li {
      position: relative;
      padding-left: 1rem;
      list-style: none;
      display: list-item; }
      .m-footer__block-text ul li:before {
        content: '•';
        position: absolute;
        top: 0em;
        left: 0;
        color: #000; }
  .m-footer__block-text ol {
    padding-left: 1.875rem;
    margin-bottom: 2rem; }
    .m-footer__block-text ol li {
      position: relative;
      list-style: decimal;
      display: list-item; }
  .m-footer__block-text .is-centered {
    text-align: center; }
  .m-footer__block-text p {
    margin-bottom: 1.3125rem; }

.m-footer__icon {
  position: relative;
  display: block;
  color: inherit !important;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis; }
  .m-footer__icon:hover {
    cursor: pointer; }
  .m-footer__icon:before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0; }

.m-footer__icon-links li {
  margin-bottom: 1rem; }
  .m-footer__icon-links li a {
    display: block; }
    .m-footer__icon-links li a.is-active, .m-footer__icon-links li a:hover {
      -webkit-transition: color 0.1s ease-in-out;
      -o-transition: color 0.1s ease-in-out;
      transition: color 0.1s ease-in-out;
      color: #8699a0; }

.m-footer__link-icon {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  display: block;
  position: relative;
  padding-left: 2.5rem; }
  @media all and (max-width: 420px) {
    .m-footer__link-icon {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-footer__link-icon:before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center; }

.m-footer__link-icon--offers:before {
  background-image: url("../assets/images/icon--angebote.svg");
  width: 1.5rem;
  height: 1.1875rem;
  margin-top: -0.125rem; }

.m-footer__link-icon--dates:before {
  background-image: url("../assets/images/icon--termine.svg");
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.125rem; }

.m-footer__link-icon--vouchers:before {
  background-image: url("../assets/images/icon--gutscheine.svg");
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.125rem; }

.m-footer__icon--phone {
  padding-left: 1.375rem; }
  .m-footer__icon--phone:before {
    content: '';
    background-image: url("../assets/images/icon--phone--white.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 1.25rem;
    height: 1.25rem; }

.m-footer__icon--mail {
  padding-left: 1.5rem; }
  .m-footer__icon--mail:before {
    content: '';
    background-image: url("../assets/images/icon--mail--white.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 1.0625rem;
    height: 1.0625rem; }

.m-footer__main-links {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-footer__main-links {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-footer__main-links li a {
    display: block;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem; }
    .m-footer__main-links li a.is-active, .m-footer__main-links li a:hover {
      -webkit-transition: color 0.1s ease-in-out;
      -o-transition: color 0.1s ease-in-out;
      transition: color 0.1s ease-in-out;
      color: #8699a0; }
  .m-footer__main-links li:first-child a {
    padding-top: 0; }
  .m-footer__main-links li:last-child a {
    padding-bottom: 1rem; }

.m-footer__social {
  margin-top: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.m-footer__social-icon {
  position: relative;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-right: 0.5rem;
  border-radius: 100%;
  text-indent: -9999px; }

.m-footer__social-icon--facebook {
  background-image: url("../assets/images/icon--facebook.svg"); }

.m-footer__social-icon--twitter {
  background-image: url("../assets/images/icon--twitter.svg"); }

.m-footer__social-icon--instagram {
  background-image: url("../assets/images/icon--instagram.svg"); }

.m-footer__social-icon--tripadvisor {
  background-image: url("../assets/images/icon--tripadvisor.svg"); }

.m-footer__social-icon--linkedin {
  background-image: url("../assets/images/icon--linkedin.svg"); }

.m-footer__hr {
  height: 1px;
  background-color: #8699a0;
  margin-bottom: 1.875rem; }

.m-footer__bottom {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: hidden;
  padding-left: 4rem;
  padding-right: 4rem;
  max-width: 80.20833rem;
  text-align: center; }
  @media all and (max-width: 768px) {
    .m-footer__bottom {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (max-width: 420px) {
    .m-footer__bottom {
      padding-left: 1rem;
      padding-right: 1rem; } }
  .m-footer__bottom:before, .m-footer__bottom:after {
    content: ' ';
    display: table;
    clear: both; }

.m-footer__image {
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 4rem; }
  .m-footer__image img {
    margin: 0 auto; }

.m-footer__bottom-list {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  display: inline-block;
  margin-bottom: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .cookie-warning-is-visible .m-footer__bottom-list {
    margin-bottom: 7.5rem; }
    @media all and (max-width: 640px) {
      .cookie-warning-is-visible .m-footer__bottom-list {
        margin-bottom: 11.875rem; } }
  .m-footer__bottom-list a {
    color: #fff; }
  .m-footer__bottom-list li {
    margin-right: 1rem; }
    .m-footer__bottom-list li:first-child {
      color: #8699a0; }
    @media all and (max-width: 640px) {
      .m-footer__bottom-list li:first-child {
        width: 100%;
        text-align: center; } }

.m-footer__stj-logos-wrapper {
  margin-bottom: 2rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 50rem; }
  @media all and (max-width: 950px) {
    .m-footer__stj-logos-wrapper {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.m-footer__stj-logos {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .m-footer__stj-logos img {
    margin-left: auto;
    margin-right: auto; }
  @media all and (max-width: 950px) {
    .m-footer__stj-logos {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1rem; } }

.m-footer__stj-special-logo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  margin-top: 0;
  margin-top: 2rem;
  margin-bottom: 2rem; }
  @media all and (max-width: 950px) {
    .m-footer__stj-special-logo {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 80%;
              flex: 0 0 80%;
      max-width: 11.25rem;
      margin: 0 auto; } }

.m-footer__stj-logo__frame-container {
  position: relative;
  padding-bottom: 76.9%;
  height: auto;
  overflow: hidden; }
  .m-footer__stj-logo__frame-container iframe {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    border: 0px;
    margin: 0px;
    padding: 0px;
    background-color: transparent; }

.m-footer__stj-logos {
  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-right: 1.25rem; }
  @media all and (max-width: 950px) {
    .m-footer__stj-logos {
      margin-right: 0; } }
  @media all and (max-width: 600px) {
    .m-footer__stj-logos {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.m-footer__stj-logos__logo {
  margin: 0 2rem; }
  @media all and (max-width: 950px) {
    .m-footer__stj-logos__logo {
      margin: 0 1rem;
      margin-bottom: 2rem; } }

.m-footer__stj-logos__logo--one {
  width: 13.125rem; }

.m-footer__stj-logos__logo--two {
  width: 6.25rem; }

.m-footer__stj-logos__logo--three {
  width: 8.75rem; }

.m-icon {
  position: relative;
  padding-left: 2.375rem; }
  .m-icon:before {
    display: block;
    content: '';
    position: absolute;
    left: 0; }
  .m-icon a {
    text-decoration: none;
    color: inherit; }
    .m-icon a:hover {
      text-decoration: underline; }

.m-icon--location:before {
  content: '';
  background-image: url("../assets/images/icon--location--black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.5rem;
  height: 1.5rem; }

.m-icon--mail:before {
  content: '';
  background-image: url("../assets/images/icon--mail--black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.5rem;
  height: 1.5rem; }

.m-icon--phone:before {
  content: '';
  background-image: url("../assets/images/icon--phone--black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.5rem;
  height: 1.5rem; }

.m-vip {
  max-width: 80.20833rem;
  margin: 0 auto;
  color: #314e57;
  background-position: -9999px -9999px; }
  @media all and (min-width: 1001px) {
    .m-vip {
      background-size: cover;
      background-position: left top;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .m-vip:after {
        display: block;
        content: '';
        padding-top: 56.25%; } }

.m-vip__image {
  display: none; }
  @media all and (max-width: 1000px) {
    .m-vip__image {
      display: block; } }

@media all and (min-width: 1001px) {
  .m-vip__box {
    padding: 4rem 4rem 4rem 0;
    margin-left: auto;
    width: 50%;
    max-width: 37.5rem;
    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; } }

.m-vip__box-inner {
  display: block;
  background-color: #fff;
  padding: 4rem; }
  @media all and (max-width: 1000px) {
    .m-vip__box-inner {
      padding: 2rem; } }
  @media all and (max-width: 420px) {
    .m-vip__box-inner {
      padding: 2rem 1rem; } }

.m-vip__name {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  text-align: center; }
  @media all and (max-width: 420px) {
    .m-vip__name {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-vip__position {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  text-align: center; }
  @media all and (max-width: 420px) {
    .m-vip__position {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-vip__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  margin-top: 2rem; }
  @media all and (max-width: 420px) {
    .m-vip__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-vip__text--cite {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 30px;
  line-height: 40px;
  letter-spacing: 0.5px;
  color: #314e57; }
  @media all and (max-width: 420px) {
    .m-vip__text--cite {
      font-size: 22px;
      line-height: 32px; } }

.m-vip__link {
  text-align: center;
  margin-top: 2rem; }

@media all and (min-width: 1001px) {
  .m-vip--text-left .m-vip__box {
    padding: 4rem 0 4rem 4rem;
    margin-right: auto;
    margin-left: 0;
    width: 50%; } }

.m-opening-hours__grid-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem; }
  @media all and (max-width: 420px) {
    .m-opening-hours__grid-container {
      padding-left: 0.65625rem;
      padding-right: 0.65625rem; } }

.m-opening-hours__col {
  padding-left: 1.3125rem;
  padding-right: 1.3125rem;
  width: 50%; }
  @media all and (max-width: 420px) {
    .m-opening-hours__col {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
  @media all and (max-width: 768px) {
    .m-opening-hours__col {
      padding-left: 1.3125rem;
      padding-right: 1.3125rem;
      width: 100%;
      margin-bottom: 4rem; } }
  @media all and (max-width: 768px) and (max-width: 420px) {
    .m-opening-hours__col {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
  @media all and (max-width: 768px) {
      .m-opening-hours__col:last-child {
        margin-bottom: 0; } }

.m-opening-hours__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-opening-hours__headline {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-opening-hours__headline {
  margin-bottom: 2rem; }

.m-opening-hours__elem {
  margin-bottom: 2rem; }

.m-opening-hours__elem-headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: 0.25px;
  margin-bottom: 0.25rem; }
  @media all and (max-width: 420px) {
    .m-opening-hours__elem-headline {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-opening-hours__elem-row {
  max-width: 21.875rem;
  display: block;
  padding: 1rem 0;
  border-bottom: 1px solid #d9d9d9;
  -webkit-text-decoration: uppercase;
          text-decoration: uppercase; }
  .m-opening-hours__elem-row:last-child {
    border-bottom: 0; }

.m-opening-hours__note {
  max-width: 29.16667rem;
  margin-top: 2rem;
  margin-bottom: 1rem; }

.m-contact p {
  margin-bottom: 0.5rem; }
  .m-contact p a {
    color: inherit !important; }

.m-opening-hours__button {
  margin-top: 2rem; }

.m-menue {
  text-align: center; }

.m-menue__item:after {
  display: inline-block;
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  background-color: #8699a0;
  margin: 4rem 0;
  border-radius: 100%; }

.m-menue__item--or:after {
  display: none; }

.m-menue__or {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  font-family: 'Chiswick Deck Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  display: none;
  padding: 2rem 0;
  text-transform: uppercase; }
  .m-menue__item--or .m-menue__or {
    display: block; }

.m-menue__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-menue__headline {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-menue__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-menue__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-menue__price-item {
  margin-bottom: 4rem; }
  .m-menue__price-item:last-child {
    margin-bottom: 0; }

.m-menue__price-title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  margin-bottom: 0.5rem; }
  @media all and (max-width: 420px) {
    .m-menue__price-title {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-menue__price {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px; }
  @media all and (max-width: 420px) {
    .m-menue__price {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-book-cta {
  background-color: #314e57; }
  @media all and (min-width: 1025px) {
    .m-book-cta {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }

.m-book-cta__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0.25px;
  padding: 2rem;
  color: #fff; }
  @media all and (max-width: 420px) {
    .m-book-cta__text {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.25px; } }

.m-book-cta__button {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  color: #fff;
  -webkit-transition: background-color 0.3s ease-in-out;
  -o-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
  background-color: #8699a0;
  margin-left: auto;
  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;
  padding: 0 2rem;
  cursor: pointer; }
  @media all and (max-width: 420px) {
    .m-book-cta__button {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-book-cta__button:hover {
    -webkit-transition: background-color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
    background-color: #314e57; }
    .m-book-cta__button:hover span:after {
      -webkit-transition: -webkit-transform 0.3s ease-in-out;
      transition: -webkit-transform 0.3s ease-in-out;
      -o-transition: transform 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      -webkit-transform: translateX(3px);
          -ms-transform: translateX(3px);
              transform: translateX(3px); }
  @media all and (max-width: 1024px) {
    .m-book-cta__button {
      padding: 2rem;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  .m-book-cta__button span {
    position: relative;
    padding-right: 3.125rem; }
    .m-book-cta__button span:after {
      display: inline-block;
      content: '';
      background-image: url("../assets/images/icon--arrow-right--white.svg");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center center;
      position: absolute;
      width: 2rem;
      height: 2.375rem;
      top: -0.125rem;
      right: 0;
      -webkit-transition: -webkit-transform 0.3s ease-in-out;
      transition: -webkit-transform 0.3s ease-in-out;
      -o-transition: transform 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out;
      transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }

.m-team__grid-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: -8rem; }
  @media all and (max-width: 420px) {
    .m-team__grid-container {
      padding-left: 0.65625rem;
      padding-right: 0.65625rem; } }
  @media all and (max-width: 768px) {
    .m-team__grid-container {
      margin-bottom: -4rem; } }

.m-team__grid-elem {
  padding-left: 1.3125rem;
  padding-right: 1.3125rem;
  width: 33.33333%;
  margin-bottom: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media all and (max-width: 420px) {
    .m-team__grid-elem {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
  @media all and (max-width: 1024px) and (min-width: 769px) {
    .m-team__grid-elem {
      padding-left: 1.3125rem;
      padding-right: 1.3125rem;
      width: 50%; } }
  @media all and (max-width: 1024px) and (min-width: 769px) and (max-width: 420px) {
    .m-team__grid-elem {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }
  @media all and (max-width: 768px) {
    .m-team__grid-elem {
      padding-left: 1.3125rem;
      padding-right: 1.3125rem;
      width: 100%;
      margin-bottom: 4rem; } }
  @media all and (max-width: 768px) and (max-width: 420px) {
    .m-team__grid-elem {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }

.m-team__member {
  max-width: 29.16667rem;
  margin: 0 auto;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.m-team__image {
  position: relative;
  overflow: hidden;
  display: block;
  background-color: #f4f4f4; }
  .m-team__image:after {
    display: block;
    content: '';
    padding-top: 66.66667%; }
  .m-team__image iframe,
  .m-team__image img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    .m-team__image iframe.lazyloaded,
    .m-team__image img.lazyloaded {
      opacity: 1; }
  .m-team__image.loaded img {
    opacity: 1; }

.m-team__content {
  background-color: #fff;
  padding: 2rem;
  border-right: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
  border-left: 1px solid #d9d9d9;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto; }
  .m-bg-container .m-team__content {
    border: none; }

.m-team__title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0.25px; }
  @media all and (max-width: 420px) {
    .m-team__title {
      font-size: 22px;
      line-height: 30px;
      letter-spacing: 0.25px; } }

.m-team__position {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  margin-bottom: 1rem; }

.m-team__contact {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5rem; }
  .m-team__contact:last-of-type {
    margin-bottom: 0; }

.m-team__contact-type {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.875rem;
          flex: 0 0 1.875rem; }

.m-team__contact-value {
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis; }
  .m-team__contact-value a {
    color: #8699a0;
    text-decoration: none;
    color: inherit;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis; }
    .m-team__contact-value a:hover {
      text-decoration: underline; }

.m-team__contact-value--mail {
  color: #314e57; }

.m-big-menue__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 1.1875rem; }
  @media all and (max-width: 768px) {
    .m-big-menue__item {
      display: block; } }

.m-big-menue__item--has-border {
  border-bottom: 1px solid #f4f4f4;
  padding-bottom: 1.1875rem;
  margin-bottom: 1rem; }

.m-big-menue__content-box {
  padding-right: 2rem; }

.m_big-menue__title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m_big-menue__title {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.m-big-menue__notes {
  font-size: 0.75rem;
  position: relative;
  top: -0.875rem;
  margin-left: 0.125rem;
  color: #d9d9d9; }

.m_big-menue__description {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px; }

.m-big-menue__price-box {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  padding-top: 0.1875rem;
  padding-bottom: 0.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .m-big-menue__item--has-description .m-big-menue__price-box {
    padding-bottom: 0.0625rem; }
  @media all and (max-width: 1024px) {
    .m-big-menue__price-box {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      padding-top: 1rem; } }

.m-big-menue__price-box-inner {
  margin-top: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.m-big-menue__price-desc:after {
  display: inline;
  content: '|';
  color: #505055;
  margin-left: 1rem; }

.m-big-menue__price-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.m-big-menue__price {
  min-width: 3.4375rem;
  text-align: right; }

.m-foot-note {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-foot-note {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-foot-note li {
    position: relative;
    margin-bottom: 0.5rem;
    padding-left: 1rem; }
  .m-foot-note p {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.75px;
    margin-bottom: 0.5rem; }
  .m-foot-note__prefix {
    font-size: 0.75rem;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 1; }

.m-text-image__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1.3125rem;
  margin-right: -1.3125rem;
  margin-bottom: -4rem; }

.m-text-image__grid-elem {
  padding: 0 1.3125rem;
  width: 100%;
  margin-bottom: 4rem; }

@media all and (max-width: 768px) {
  .m-text-image {
    max-width: 29.16667rem;
    margin: 0 auto; } }

.m-text-image__image {
  position: relative;
  overflow: hidden;
  display: block;
  background-color: #f4f4f4;
  margin-bottom: 1rem;
  -ms-flex-item-align: start;
      align-self: flex-start; }
  .m-text-image__image:after {
    display: block;
    content: '';
    padding-top: 66.66667%; }
  .m-text-image__image iframe,
  .m-text-image__image img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    .m-text-image__image iframe.lazyloaded,
    .m-text-image__image img.lazyloaded {
      opacity: 1; }
  .m-text-image__image.loaded img {
    opacity: 1; }

.m-text-image__text {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px; }
  @media all and (max-width: 420px) {
    .m-text-image__text {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  .m-text-image__text h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 64px;
    line-height: 72px;
    letter-spacing: 0.5px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-text-image__text h2 {
        font-size: 44px;
        line-height: 48px;
        letter-spacing: 0.5px;
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
  .m-text-image__text h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 52px;
    line-height: 56px;
    letter-spacing: 0.25px;
    margin-bottom: 2rem; }
    @media all and (max-width: 640px) {
      .m-text-image__text h2 {
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; } }
    @media all and (max-width: 420px) {
      .m-text-image__text h2 {
        font-size: 36px;
        line-height: 40px;
        letter-spacing: 0.25px; } }
  .m-text-image__text h3 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text-image__text h3 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-text-image__text h4 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 34px;
    line-height: 40px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text-image__text h4 {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }
  .m-text-image__text h5 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 24px;
    line-height: 30px;
    letter-spacing: 0.25px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      .m-text-image__text h5 {
        font-size: 22px;
        line-height: 30px;
        letter-spacing: 0.25px; } }
  .m-text-image__text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button) {
    color: #8699a0;
    text-decoration: none; }
    .m-text-image__text a:not(.m-button):not(.m-header__alternative-book-button):not(.m-intro-image__booking-button__button):hover {
      text-decoration: underline; }
  .m-text-image__text h2:not(:first-child), .m-text-image__text h3:not(:first-child), .m-text-image__text h4:not(:first-child), .m-text-image__text h5:not(:first-child), .m-text-image__text h6:not(:first-child) {
    padding-top: 1rem; }
  .m-text-image__text ul {
    margin-bottom: 2rem; }
    .m-text-image__text ul:last-child {
      margin-bottom: 0; }
    .m-text-image__text ul li {
      position: relative;
      padding-left: 1rem;
      list-style: none;
      display: list-item; }
      .m-text-image__text ul li:before {
        content: '•';
        position: absolute;
        top: 0em;
        left: 0;
        color: #000; }
  .m-text-image__text ol {
    padding-left: 1.875rem;
    margin-bottom: 2rem; }
    .m-text-image__text ol li {
      position: relative;
      list-style: decimal;
      display: list-item; }
  .m-text-image__text .is-centered {
    text-align: center; }

@media all and (min-width: 769px) {
  .m-text-image--single {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 100%; }
    .m-text-image--single .m-text-image__image {
      width: 50%;
      margin-right: 1.3125rem; }
    .m-text-image--single .m-text-image__text {
      width: 50%;
      margin-left: 1.3125rem; } }

@media all and (min-width: 769px) {
  .m-text-image--image-right .m-text-image__image {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-right: 0;
    margin-left: 1.3125rem; }
  .m-text-image--image-right .m-text-image__text {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-left: 0;
    margin-right: 1.3125rem; } }

@media all and (min-width: 769px) {
  .m-text-image__grid--has-two .m-text-image__grid-elem {
    width: 50%; } }

@media all and (min-width: 769px) {
  .m-text-image__grid--has-three .m-text-image__grid-elem {
    width: 33.33%; } }

@media all and (min-width: 769px) {
  .m-text-image__grid--has-four .m-text-image__grid-elem {
    width: 50%; } }

@media all and (min-width: 1025px) {
  .m-text-image__grid--has-four .m-text-image__grid-elem {
    width: 25%; } }

.m-map {
  position: relative;
  max-width: 80.20833rem;
  margin: 0 auto; }

.m-map__map-container {
  position: relative; }
  .m-map__map-container:after {
    display: block;
    content: '';
    padding-top: 50%; }
  @media all and (max-width: 1024px) {
    .m-map__map-container:after {
      padding-top: 100%; } }
  @media all and (max-width: 420px) {
    .m-map__map-container:after {
      padding-top: 100%; } }

.m-map__map {
  position: absolute !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%; }
  .m-map__map .si-close-button {
    width: 2rem;
    height: 2rem; }

.m-map__popup__container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 4rem;
  pointer-events: none; }
  @media all and (max-width: 1024px) {
    .m-map__popup__container {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
      margin-right: 0;
      margin-bottom: 4rem; } }
  @media all and (max-width: 640px) {
    .m-map__popup__container {
      display: block;
      position: relative;
      margin-bottom: 0; } }

.m-map__popup {
  position: relative;
  background-color: #fff;
  padding: 4rem;
  text-align: center;
  pointer-events: initial;
  z-index: 1; }
  @media all and (max-width: 640px) {
    .m-map__popup {
      display: block;
      position: relative;
      padding: 4rem 1rem; } }

.m-map__headline {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  color: #8699a0;
  margin-bottom: 1rem; }

.m-map__title {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0.25px;
  margin-bottom: 0.5rem; }
  @media all and (max-width: 420px) {
    .m-map__title {
      font-size: 22px;
      line-height: 30px;
      letter-spacing: 0.25px; } }

.m-map__address {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  margin-bottom: 2rem; }
  @media all and (max-width: 420px) {
    .m-map__address {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 2.5rem + 2px);
  padding: 1.25rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0;
  -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  -o-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .form-control {
      -webkit-transition: none;
      -o-transition: none;
      transition: none; } }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057; }
  .form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #404040;
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }
  .form-control::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::-ms-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1; }

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.form-control-file,
.form-control-range {
  display: block;
  width: 100%; }

.col-form-label {
  padding-top: calc(1.25rem + 1px);
  padding-bottom: calc(1.25rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5; }

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5; }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 1.25rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0; }
  .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0; }

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

select.form-control[size], select.form-control[multiple] {
  height: auto; }

textarea.form-control {
  height: auto; }

.form-group {
  margin-bottom: 1rem; }

.form-text {
  display: block;
  margin-top: 0.25rem; }

.form-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }
  .form-row > .col,
  .form-row > [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px; }

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem; }

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem; }
  .form-check-input[disabled] ~ .form-check-label,
  .form-check-input:disabled ~ .form-check-label {
    color: #6c757d; }

.form-check-label {
  margin-bottom: 0; }

.form-check-inline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0;
  margin-right: 0.75rem; }
  .form-check-inline .form-check-input {
    position: static;
    margin-top: 0;
    margin-right: 0.3125rem;
    margin-left: 0; }

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #000; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.9);
  border-radius: 0; }

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #000;
  padding-right: calc(1.5em + 2.5rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23000' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.625rem) center;
  background-size: calc(0.75em + 1.25rem) calc(0.75em + 1.25rem); }
  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
    border-color: #000;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 2.5rem);
  background-position: top calc(0.375em + 0.625rem) right calc(0.375em + 0.625rem); }

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #000;
  padding-right: calc(0.75em + 3.875rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 1rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23000' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 2rem/calc(0.75em + 1.25rem) calc(0.75em + 1.25rem); }
  .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
    border-color: #000;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #000; }

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #000; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #000; }

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #1a1a1a;
  background-color: #1a1a1a; }

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #000; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #000; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #000;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #000; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.9);
  border-radius: 0; }

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #000;
  padding-right: calc(1.5em + 2.5rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23000' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23000' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.625rem) center;
  background-size: calc(0.75em + 1.25rem) calc(0.75em + 1.25rem); }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
    border-color: #000;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 2.5rem);
  background-position: top calc(0.375em + 0.625rem) right calc(0.375em + 0.625rem); }

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #000;
  padding-right: calc(0.75em + 3.875rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 1rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23000' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23000' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 2rem/calc(0.75em + 1.25rem) calc(0.75em + 1.25rem); }
  .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
    border-color: #000;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #000; }

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #000; }
  .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #000; }

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #1a1a1a;
  background-color: #1a1a1a; }

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #000; }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #000; }

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #000;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }

.form-inline {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 576px) {
    .form-inline label {
      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-bottom: 0; }
    .form-inline .form-group {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group,
    .form-inline .custom-select {
      width: auto; }
    .form-inline .form-check {
      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: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      margin-top: 0;
      margin-right: 0.25rem;
      margin-left: 0; }
    .form-inline .custom-control {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 1.25rem 1rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  -o-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .btn {
      -webkit-transition: none;
      -o-transition: none;
      transition: none; } }
  .btn:hover {
    color: #212529;
    text-decoration: none; }
  .btn:focus, .btn.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }
  .btn.disabled, .btn:disabled {
    opacity: 0.65; }

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none; }

.btn-primary {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-primary:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
  .show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-primary.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-secondary {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-secondary:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-secondary:focus, .btn-secondary.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-secondary.disabled, .btn-secondary:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
  .show > .btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-secondary.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-success {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-success:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-success.disabled, .btn-success:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
  .show > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
    .show > .btn-success.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-info {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-info:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-info.disabled, .btn-info:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
  .show > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
    .show > .btn-info.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-warning {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-warning:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-warning.disabled, .btn-warning:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
  .show > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
    .show > .btn-warning.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-danger {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-danger:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-danger.disabled, .btn-danger:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
  .show > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
    .show > .btn-danger.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-light {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-light:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-light:focus, .btn-light.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-light.disabled, .btn-light:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
  .show > .btn-light.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
    .show > .btn-light.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-dark {
  color: #fff;
  background-color: #000;
  border-color: #000; }
  .btn-dark:hover {
    color: #fff;
    background-color: black;
    border-color: black; }
  .btn-dark:focus, .btn-dark.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }
  .btn-dark.disabled, .btn-dark:disabled {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
  .show > .btn-dark.dropdown-toggle {
    color: #fff;
    background-color: black;
    border-color: black; }
    .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-dark.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(38, 38, 38, 0.5); }

.btn-outline-primary {
  color: #000;
  border-color: #000; }
  .btn-outline-primary:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-primary:focus, .btn-outline-primary.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-primary.disabled, .btn-outline-primary:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
  .show > .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-primary.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-secondary {
  color: #000;
  border-color: #000; }
  .btn-outline-secondary:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-secondary:focus, .btn-outline-secondary.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
  .show > .btn-outline-secondary.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-secondary.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-success {
  color: #000;
  border-color: #000; }
  .btn-outline-success:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-success:focus, .btn-outline-success.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-success.disabled, .btn-outline-success:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
  .show > .btn-outline-success.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-success.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-info {
  color: #000;
  border-color: #000; }
  .btn-outline-info:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-info:focus, .btn-outline-info.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-info.disabled, .btn-outline-info:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
  .show > .btn-outline-info.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-info.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-warning {
  color: #000;
  border-color: #000; }
  .btn-outline-warning:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-warning:focus, .btn-outline-warning.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-warning.disabled, .btn-outline-warning:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
  .show > .btn-outline-warning.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-warning.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-danger {
  color: #000;
  border-color: #000; }
  .btn-outline-danger:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-danger:focus, .btn-outline-danger.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-danger.disabled, .btn-outline-danger:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
  .show > .btn-outline-danger.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-danger.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-light {
  color: #000;
  border-color: #000; }
  .btn-outline-light:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-light:focus, .btn-outline-light.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-light.disabled, .btn-outline-light:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
  .show > .btn-outline-light.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-light.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-outline-dark {
  color: #000;
  border-color: #000; }
  .btn-outline-dark:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; }
  .btn-outline-dark:focus, .btn-outline-dark.focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
  .btn-outline-dark.disabled, .btn-outline-dark:disabled {
    color: #000;
    background-color: transparent; }
  .btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
  .show > .btn-outline-dark.dropdown-toggle {
    color: #fff;
    background-color: #000;
    border-color: #000; }
    .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
    .show > .btn-outline-dark.dropdown-toggle:focus {
      -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-link {
  font-weight: 400;
  color: #000;
  text-decoration: none; }
  .btn-link:hover {
    color: black;
    text-decoration: underline; }
  .btn-link:focus, .btn-link.focus {
    text-decoration: underline;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .btn-link:disabled, .btn-link.disabled {
    color: #6c757d;
    pointer-events: none; }

.btn-lg {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.btn-sm {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.btn-block {
  display: block;
  width: 100%; }
  .btn-block + .btn-block {
    margin-top: 0.5rem; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

/* Boostrap Forms Overwrites */
form.mod_form {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.5px;
  /* class applies to select element itself, not a wrapper element */
  /* Hide arrow icon in IE browsers */
  /* Hover style */
  /* Focus style */
  /* Set options to normal weight */
  /* Support for rtl text, explicit support for Arabic and Hebrew */
  /* Disabled styles */ }
  form.mod_form fieldset {
    margin-bottom: 8rem !important; }
    form.mod_form fieldset legend {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 34px;
      line-height: 40px;
      letter-spacing: 0.25px;
      margin-bottom: 1rem; }
      @media all and (max-width: 420px) {
        form.mod_form fieldset legend {
          font-size: 30px;
          line-height: 36px;
          letter-spacing: 0.25px; } }
    form.mod_form fieldset label {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 22px;
      line-height: 32px;
      letter-spacing: 0.5px;
      margin-bottom: 1rem; }
      @media all and (max-width: 420px) {
        form.mod_form fieldset label {
          font-size: 20px;
          line-height: 30px;
          letter-spacing: 0.5px; } }
    @media all and (max-width: 640px) {
      form.mod_form fieldset {
        margin-bottom: 2rem !important; } }
  form.mod_form > fieldset:last-of-type {
    margin-bottom: 0 !important; }
  form.mod_form h2 {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 28px;
    line-height: 40px;
    margin-bottom: 1rem; }
    @media all and (max-width: 420px) {
      form.mod_form h2 {
        font-size: 22px;
        line-height: 32px; } }
  form.mod_form p {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.5px;
    margin-bottom: 2rem; }
    @media all and (max-width: 420px) {
      form.mod_form p {
        font-size: 20px;
        line-height: 30px;
        letter-spacing: 0.5px; } }
    form.mod_form p:last-child {
      margin-bottom: 2rem; }
  form.mod_form .form-group {
    margin-bottom: 2rem; }
    form.mod_form .form-group + .clearfix {
      margin-top: 4rem; }
  form.mod_form ::-webkit-input-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #505055;
    opacity: 1;
    /* Firefox */ }
  form.mod_form ::-moz-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #505055;
    opacity: 1;
    /* Firefox */ }
  form.mod_form :-ms-input-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #505055;
    opacity: 1;
    /* Firefox */ }
  form.mod_form ::-ms-input-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #505055;
    opacity: 1;
    /* Firefox */ }
  form.mod_form ::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #505055;
    opacity: 1;
    /* Firefox */ }
  form.mod_form :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #505055; }
  form.mod_form ::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #505055; }
  form.mod_form .control-label {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0.5px;
    display: block;
    margin-bottom: 0.5rem; }
  form.mod_form .form-control {
    font-family: 'Chiswick Deck Web';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.75px;
    color: #000;
    border: 1px solid #d9d9d9;
    margin-bottom: 0.5rem; }
  form.mod_form .form-control:hover {
    border: 1px solid #8699a0 !important;
    -webkit-box-shadow: none;
            box-shadow: none; }
  form.mod_form .form-control:focus {
    border: 1px solid #314e57 !important;
    -webkit-box-shadow: none;
            box-shadow: none;
    color: #000; }
  form.mod_form .help-block {
    font-size: 12px; }
  form.mod_form .form-group.has-danger .form-control {
    border: 1px solid #ff0000 !important; }
  form.mod_form .form-group.has-danger .parsley-required {
    color: #ff0000; }
  form.mod_form .radio {
    margin-left: 20px; }
    form.mod_form .radio span {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 22px;
      line-height: 32px;
      letter-spacing: 0.5px; }
      @media all and (max-width: 420px) {
        form.mod_form .radio span {
          font-size: 20px;
          line-height: 30px;
          letter-spacing: 0.5px; } }
    form.mod_form .radio .form-check-input {
      margin-top: 9px; }
  form.mod_form .form-check {
    padding-left: 0; }
    form.mod_form .form-check .add-on {
      position: relative;
      top: -4px;
      margin-right: 10px; }
  form.mod_form select {
    display: block;
    padding: 10px;
    width: 100%;
    max-width: 100%;
    /* useful when width is set to anything other than 100% */
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    border: 1px solid #d9d9d9;
    border-radius: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. 
            for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
            
        */
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAOCAYAAAArMezNAAAAAXNSR0IArs4c6QAAAIlJREFUOBG90gsKgCAQBFAP0eeOBd01iq5TO+DIshn5Q0FMat8OqXMdxiI9poo+g9Suth7oLfOUWYID3b2xyRoGMKAluEYvMeag+geLj/aDyP4XZU0OnowSR1L9W2LJs9EUvBjV+CEbHiiSV6NfOK9U9PRZlLoiKZMjfROUzYk3RTX+uvx82W19AJRaMsDYR0RcAAAAAElFTkSuQmCC");
    background-repeat: no-repeat, repeat;
    /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
    background-position: right .7em top 50%, 0 0;
    /* icon size, then gradient */
    background-size: .65em auto, 100%; }
  form.mod_form select::-ms-expand {
    display: none; }
  form.mod_form select:hover {
    border-color: #888; }
  form.mod_form select:focus {
    border-color: #aaa;
    /* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
    -webkit-box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
            box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #222;
    outline: none; }
  form.mod_form select option {
    font-weight: normal; }
  form.mod_form *[dir="rtl"] select, form.mod_form :root:lang(ar) select, form.mod_form :root:lang(iw) select {
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em; }
  form.mod_form select:disabled, form.mod_form select[aria-disabled=true] {
    color: graytext;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e5e5e5));
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), -o-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%); }
  form.mod_form select:disabled:hover, form.mod_form select[aria-disabled=true] {
    border-color: #aaa; }
  form.mod_form .submit button.btn {
    border: none;
    margin-bottom: 0.5rem; }
  form.mod_form .submit button.btn:focus {
    border: none;
    -webkit-box-shadow: 0 0 0 0.2rem #8699a0;
            box-shadow: 0 0 0 0.2rem #8699a0; }
  form.mod_form .submit button.btn:active {
    border: none;
    background-color: #314e57 !important; }
  form.mod_form fieldset:first-of-type .form-group {
    margin-bottom: 2rem; }
  form.mod_form .form-select-wrapper {
    position: relative; }
    form.mod_form .form-select-wrapper:after {
      content: '';
      display: block;
      position: absolute;
      right: 15px;
      top: 20px;
      width: 5px;
      height: 5px;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      border-right: 1px solid #000;
      border-bottom: 1px solid #000; }
  form.mod_form .form-select-wrapper--multiple {
    opacity: 0;
    height: 0; }
    form.mod_form .form-select-wrapper--multiple.is-in {
      opacity: 1;
      height: auto; }
    form.mod_form .form-select-wrapper--multiple .ms-options-wrap button {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 18px;
      line-height: 24px;
      letter-spacing: 0.5px;
      position: relative;
      width: 100%;
      text-align: left;
      white-space: nowrap;
      font-size: 19px;
      padding: 0 1rem;
      height: 50px;
      line-height: 1;
      border: 1px solid #d9d9d9;
      color: #000;
      max-width: 100% !important; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap button span {
        position: relative; }
    form.mod_form .form-select-wrapper--multiple .ms-options-wrap:after {
      position: absolute;
      content: '';
      display: block;
      top: 2px;
      right: 1px;
      bottom: 1px;
      width: 30px;
      background-color: #fff; }
    form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options {
      position: absolute;
      left: 0;
      width: 100%;
      margin-top: 10px;
      margin-bottom: 20px;
      z-index: 2000;
      background-color: #fff;
      padding: 13px;
      overflow: auto;
      visibility: hidden;
      border: 1px solid #aaa;
      -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.09);
              box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.09);
      max-height: none !important; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options li {
        margin-bottom: 10px; }
        form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options li:last-child {
          margin-bottom: 0; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options label {
        font-family: 'Chiswick Deck Web';
        font-weight: 300;
        font-style: normal;
        font-stretch: normal;
        font-size: 18px;
        line-height: 24px;
        letter-spacing: 0.5px;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        position: relative;
        line-height: 1;
        padding-left: 25px;
        margin-bottom: 0; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options input[type="checkbox"] {
        display: none; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options label::before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 1px;
        width: 16px;
        height: 16px;
        border: 1px solid #000;
        margin-right: 5px; }
      form.mod_form .form-select-wrapper--multiple .ms-options-wrap .ms-options .selected label::before {
        background-image: url("../assets/images/icon--checkmark.svg");
        background-size: contain;
        background-size: 10px auto;
        background-position: center center;
        background-repeat: no-repeat; }
    form.mod_form .form-select-wrapper--multiple .ms-options-wrap.ms-active > .ms-options {
      visibility: visible; }

.mod_form--jobs .form-control {
  height: 50px;
  padding: 0 1rem 0 1rem; }

.mod_form--jobs select {
  background-image: none; }

@media all and (min-width: 1024px) {
  .m-job__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .m-job__left {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 18.75rem;
            flex: 0 0 18.75rem;
    max-width: 18.75rem;
    padding-right: 2rem;
    margin-top: 0.625rem; }
  .m-job__main {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    width: 100%; }
    .m-job__main .m-job__jobs-container {
      margin-top: 2.375rem; } }

.m-job {
  display: block;
  background-color: #f4f4f4;
  margin-bottom: 2rem;
  padding: 2rem; }
  .m-job:hover {
    color: #000; }
  @media all and (max-width: 640px) {
    .m-job {
      padding: 1rem; } }

.m-job__hotel {
  text-transform: uppercase;
  margin-bottom: 1rem; }

.m-job__title {
  margin-bottom: 2rem; }

.m-job__infos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  @media all and (max-width: 640px) {
    .m-job__infos {
      display: block; } }

.m-job__info {
  font-size: 16px;
  text-transform: uppercase;
  padding-left: 1rem; }
  .m-job__info:first-child {
    padding-left: 0; }
  @media all and (max-width: 640px) {
    .m-job__info {
      padding-left: 0;
      margin-bottom: 0.5rem; }
      .m-job__info:last-child {
        margin-bottom: 0; } }

@-webkit-keyframes glow {
  0% {
    background-color: #f4f4f4; }
  50% {
    background-color: #d9d9d9; }
  100% {
    background-color: #f4f4f4; } }

@keyframes glow {
  0% {
    background-color: #f4f4f4; }
  50% {
    background-color: #d9d9d9; }
  100% {
    background-color: #f4f4f4; } }

.m-job__notification {
  background-color: #f4f4f4;
  margin-bottom: 2rem;
  padding: 2rem;
  text-align: center; }
  .m-job__notification.add-glow {
    -webkit-animation-name: glow;
            animation-name: glow;
    -webkit-animation-duration: 1s;
            animation-duration: 1s; }

.m-job__notification-title {
  margin-bottom: 0; }

.m-job__notification--no-result {
  display: none; }

.m-job__job-count-container {
  font-family: 'Chiswick Deck Web';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.5px;
  text-align: left;
  display: none;
  position: relative;
  margin-bottom: 1rem; }
  @media all and (max-width: 420px) {
    .m-job__job-count-container {
      font-size: 20px;
      line-height: 30px;
      letter-spacing: 0.5px; } }
  @media all and (min-width: 1024px) {
    .m-job__job-count-container {
      position: absolute;
      top: 0;
      left: 0; } }

.m-video {
  position: relative; }
  .m-video iframe {
    width: 100%; }

.m-text-media__intro {
  margin-bottom: 2rem;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }

.m-text-media__intro--below {
  margin-bottom: 0;
  margin-top: 2rem; }
  @media all and (min-width: 1025px) {
    .m-text-media__intro--below {
      margin-left: auto; } }

.m-text-media.m-text-media--intext.m-text-media--left .m-text-media__intro {
  margin-left: 0;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

@media all and (min-width: 1025px) {
  .m-text-media.m-text-media--intext.m-text-media--left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .m-text-media.m-text-media--intext.m-text-media--left .m-video {
      width: 72.91667rem;
      margin-right: 1.3125rem;
      -ms-flex-item-align: start;
          align-self: flex-start; }
    .m-text-media.m-text-media--intext.m-text-media--left .m-text-media__headline {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 40px;
      line-height: 48px;
      letter-spacing: 0.25px;
      margin-bottom: 1rem; } }
    @media all and (min-width: 1025px) and (max-width: 420px) {
      .m-text-media.m-text-media--intext.m-text-media--left .m-text-media__headline {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }

@media all and (max-width: 1024px) {
  .m-text-media.m-text-media--intext.m-text-media--left .m-video {
    margin-bottom: 2rem; } }

.m-text-media.m-text-media--intext.m-text-media--right .m-text-media__intro {
  margin-left: 0;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

@media all and (min-width: 1025px) {
  .m-text-media.m-text-media--intext.m-text-media--right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .m-text-media.m-text-media--intext.m-text-media--right .m-video {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      width: 72.91667rem;
      margin-left: 1.3125rem;
      -ms-flex-item-align: start;
          align-self: flex-start; }
    .m-text-media.m-text-media--intext.m-text-media--right .m-text-media__intro {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
    .m-text-media.m-text-media--intext.m-text-media--right .m-text-media__headline {
      font-family: 'Chiswick Deck Web';
      font-weight: 300;
      font-style: normal;
      font-stretch: normal;
      font-size: 40px;
      line-height: 48px;
      letter-spacing: 0.25px;
      margin-bottom: 1rem; } }
    @media all and (min-width: 1025px) and (max-width: 420px) {
      .m-text-media.m-text-media--intext.m-text-media--right .m-text-media__headline {
        font-size: 30px;
        line-height: 36px;
        letter-spacing: 0.25px; } }

@media all and (max-width: 1024px) {
  .m-text-media.m-text-media--intext.m-text-media--right .m-video {
    margin-bottom: 2rem; } }

.m-video__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  cursor: pointer; }

.m-video__overlay-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 3.75rem;
  height: 3.75rem;
  background-image: url("../assets/images/icon--play.svg");
  background-size: cover; }

.m-bestprice-popup {
  position: absolute;
  left: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  margin-left: 1.25rem; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup {
      top: auto;
      bottom: 1rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: 100;
      margin-left: 0; } }

.m-bestprice-popup__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem; }
  .m-bestprice-popup__link.is-active, .m-bestprice-popup__link:hover {
    cursor: pointer; }
    .m-bestprice-popup__link.is-active .m-more-link, .m-bestprice-popup__link.is-active .m-bestprice-popup__popup p a, .m-bestprice-popup__popup p .m-bestprice-popup__link.is-active a, .m-bestprice-popup__link:hover .m-more-link, .m-bestprice-popup__link:hover .m-bestprice-popup__popup p a, .m-bestprice-popup__popup p .m-bestprice-popup__link:hover a {
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
      .m-bestprice-popup__link.is-active .m-more-link:after, .m-bestprice-popup__link.is-active .m-bestprice-popup__popup p a:after, .m-bestprice-popup__popup p .m-bestprice-popup__link.is-active a:after, .m-bestprice-popup__link:hover .m-more-link:after, .m-bestprice-popup__link:hover .m-bestprice-popup__popup p a:after, .m-bestprice-popup__popup p .m-bestprice-popup__link:hover a:after {
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        margin-top: 0.25rem; }

.m-bestprice-popup__link-text {
  position: relative;
  font-size: 0.875rem;
  white-space: nowrap; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup__link-text {
      font-size: 1rem;
      color: #fff; }
      .m-bestprice-popup__link-text:after {
        background-color: #fff; } }

.m-bestprice-popup__link-icon {
  position: relative;
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../assets/images/icon--info-green.svg");
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 0.625rem;
  top: 0.1875rem; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup__link-icon {
      background-image: url("../assets/images/icon--info-white.svg");
      top: 0.25rem; } }

.m-bestprice-popup__popup {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  max-width: 21.875rem;
  padding: 1.5rem 1rem;
  background-color: #fff;
  text-align: center;
  opacity: 0;
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  pointer-events: none; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup__popup {
      padding-top: 1rem; } }
  .m-bestprice-popup__popup ul, .m-bestprice-popup__popup ol {
    text-align: left;
    margin-bottom: 1rem; }
  .m-bestprice-popup__popup li {
    margin-bottom: 0.5rem; }
    .m-bestprice-popup__popup li:last-child {
      margin-bottom: 0; }
  .m-bestprice-popup__popup p a {
    text-decoration: none;
    font-size: 0.875rem;
    color: #314e57 !important; }
    .m-bestprice-popup__popup p a:hover {
      text-decoration: none !important; }
  @media all and (max-width: 420px) {
    .m-bestprice-popup__popup li {
      line-height: 1.2; } }
  .m-bestprice-popup__popup:after {
    content: '';
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 0.625rem solid transparent;
    border-right: 0.625rem solid transparent;
    border-top: 0.625rem solid #fff; }
  .m-bestprice-popup__popup:before {
    content: '';
    display: block;
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: 3.4375rem; }
    @media all and (max-width: 1024px) {
      .m-bestprice-popup__popup:before {
        height: 0.9375rem; } }
  .m-bestprice-popup__popup.is-in {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    pointer-events: initial; }

.m-bestprice-popup__close {
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url("../assets/images/icon--close.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: auto;
  margin-bottom: 0.5rem;
  cursor: pointer;
  display: none; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup__close {
      display: block; } }
  @media all and (max-width: 420px) {
    .m-bestprice-popup__close {
      width: 0.8125rem;
      height: 0.8125rem; } }

.m-bestprice-popup--desktop {
  display: block; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup--desktop {
      display: none; } }

.m-bestprice-popup--mobile {
  display: none; }
  @media all and (max-width: 1024px) {
    .m-bestprice-popup--mobile {
      display: block; } }

/*
@import 'modules/mod_cta-teaser';
@import 'modules/mod_teaser-big';
@import 'modules/mod_teaser-room';
@import 'modules/mod_teaser-small';
@import 'modules/mod_arrow-link';
@import 'modules/mod_hero';
@import 'modules/mod_list';
@import 'modules/mod_downloads';
@import 'modules/mod_slider';
@import 'modules/mod_testimonials';
@import 'modules/mod_cite';
@import 'modules/mod_booking-load-layer';
@import 'modules/mod_teaser-wall';
@import 'modules/mod_not-found';
@import 'modules/mod_count-down';
*/
.test {
  overflow: hidden; }
  .test img {
    width: 50%;
    float: left; }
  @media all and (max-width: 640px) {
    .test img {
      width: 100%; }
      .test img:last-child {
        display: none; } }

.preload * {
  -webkit-transition: none !important;
  -o-transition: none !important;
  transition: none !important; }

* {
  -webkit-tap-highlight-color: transparent; }

/**
 * We need this class for iOS. Since iOS load with the browser bar on bottom
 * we need the actual height of the visible vieport to calculate the height of
 * Intro slide.
 */
.js-initial-viewvport-height {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

/*# sourceMappingURL=main.css.map */
