/* Fonts
 * ************************/
/* roboto-100 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('/assets/fonts/roboto/roboto-v20-latin-100.eot'); /* IE9 Compat Modes */
  src: local('Roboto Thin'), local('Roboto-Thin'),
       url('/assets/fonts/roboto/roboto-v20-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-100.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-100.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* roboto-100italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100;
  src: url('/assets/fonts/roboto/roboto-v20-latin-100italic.eot'); /* IE9 Compat Modes */
  src: local('Roboto Thin Italic'), local('Roboto-ThinItalic'),
       url('/assets/fonts/roboto/roboto-v20-latin-100italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-100italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-100italic.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-100italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-100italic.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('/assets/fonts/roboto/roboto-v20-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Roboto Light'), local('Roboto-Light'),
       url('/assets/fonts/roboto/roboto-v20-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-300.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* roboto-300italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: url('/assets/fonts/roboto/roboto-v20-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local('Roboto Light Italic'), local('Roboto-LightItalic'),
       url('/assets/fonts/roboto/roboto-v20-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-300italic.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/fonts/roboto/roboto-v20-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Roboto Bold'), local('Roboto-Bold'),
       url('/assets/fonts/roboto/roboto-v20-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* roboto-700italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: url('/assets/fonts/roboto/roboto-v20-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'),
       url('/assets/fonts/roboto/roboto-v20-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/roboto/roboto-v20-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/roboto/roboto-v20-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/roboto/roboto-v20-latin-700italic.svg#Roboto') format('svg'); /* Legacy iOS */
  font-display: swap;
}

/* noto-serif-regular - latin */
@font-face {
  font-family: 'Noto Serif';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Noto Serif'), local('NotoSerif'),
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-regular.svg#NotoSerif') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* noto-serif-italic - latin */
@font-face {
  font-family: 'Noto Serif';
  font-style: italic;
  font-weight: 400;
  src: url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Noto Serif Italic'), local('NotoSerif-Italic'),
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-italic.svg#NotoSerif') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* noto-serif-700 - latin */
@font-face {
  font-family: 'Noto Serif';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Noto Serif Bold'), local('NotoSerif-Bold'),
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700.svg#NotoSerif') format('svg'); /* Legacy iOS */
  font-display: swap;
}
/* noto-serif-700italic - latin */
@font-face {
  font-family: 'Noto Serif';
  font-style: italic;
  font-weight: 700;
  src: url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Noto Serif Bold Italic'), local('NotoSerif-BoldItalic'),
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/assets/fonts/noto-serif/noto-serif-v9-latin-700italic.svg#NotoSerif') format('svg'); /* Legacy iOS */
  font-display: swap;
}

/* Font:Laurichhof, Icons
 * ******************************/
@font-face {
  font-family: 'laurichhof';
  src:  url('/assets/fonts/laurichhof/laurichhof.eot?ckxuit');
  src:  url('/assets/fonts/laurichhof/laurichhof.eot?ckxuit#iefix') format('embedded-opentype'),
    url('/assets/fonts/laurichhof/laurichhof.ttf?ckxuit') format('truetype'),
    url('/assets/fonts/laurichhof/laurichhof.woff?ckxuit') format('woff'),
    url('/assets/fonts/laurichhof/laurichhof.svg?ckxuit#laurichhof') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'laurichhof' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-child1:before {
  content: "\e900";
}
.icon-child2:before {
  content: "\e901";
}
.icon-child3:before {
  content: "\e902";
}
.icon-adults:before {
  content: "\e903";
}
.icon-address:before {
  content: "\e904";
}
.icon-checkout:before {
  content: "\e905";
}
.icon-extras:before {
  content: "\e906";
}
.icon-price:before {
  content: "\e907";
}
.icon-suites:before {
  content: "\e908";
}
.icon-date:before {
  content: "\e909";
}


/* General
 * ***************************/
*,*:before,*:after {
  box-sizing:border-box;
}
:root {
  --gray-darker:#363b39;
  --gray-dark:#4c5351;
  --gray-medium:#9b9e9d;
  --gray-light:#f0f1f1;
  --gray-lighter:#f9fafa;
  --pink:#e81f75;
  --pink-dark:#b5155b;
  --pink-darker:#9c134e;
  --gutter: 30px;
}
html {
  scroll-behavior: smooth;
}
html,body {
  min-height:100%;
}
body {
  margin:0;
  padding:0;
  background:#fff;
}
body,table,input,textarea,button,select {
  font-family:'Roboto',arial,sans-serif;
  font-size:1em;
  line-height:1.5;
  font-weight:300;
  color:var(--gray-dark);
}
h1,h2,h3,h4,h5,h6,p,ol,ul,dl,table,form,fieldset,object {
  margin:0 0 1.3rem 0;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {
  display: block;
}
h1,.h1 {
  font-family:'Roboto',arial,sans-serif;
  font-size:2.375rem;
  /*font-size:2.8125rem;*/
  line-height:1.3;
  line-height:1.1555;
  font-weight:100;
  font-style:normal;
  text-transform:uppercase;
  margin-bottom:2rem;
  color:var(--pink);
}
h2,.h2 {
  font-family:'Noto Serif',serif;
  font-size:1.25rem;
  line-height:1.3;
  font-weight:400;
  font-style:italic;
  color:var(--pink);
  margin:0 0 .75rem 0;
}
h3,.h3 {
  font-size:1.3rem;
  line-height:1.3em;
  font-weight:normal;
  color:#6A6F74;
}
h4,.h4,
h5,.h5,
h6,.h6 {
  font-size:1rem;
  line-height:1.3em;
  font-weight:400;
  margin:0;
}
@media only screen and (min-width : 992px) {
  h1,.h1 {
    font-size:2.8125rem;
  }
}
.subheadline {
  font-family:'Roboto',arial,sans-serif;
  color:var(--gray-dark);
  margin:0;
  font-size:1.5rem;
  line-height:1.3;
  font-weight:300;
  font-style: normal;
}

a:link {
  text-decoration:none;
  color:var(--pink);
  transition:color .2s ease;
}
a:visited {
  color:var(--pink);
}
a:hover {
  text-decoration:underline;
}
a:active {
  color:var(--pink);
}

:focus {
  /*outline:var(--pink) auto 5px;*/
}

[data-link]:not([data-link=""]) {
  cursor: pointer;
}

b,strong {
  font-weight:700;
}

hr {
  margin:1.5rem 0;
  height:0;
  border:0;
  border-bottom:solid #949498 1px;
}

img {
  border:0;
  max-width:100%;
  /*height:auto;*/
}
svg{
  max-width:100%;
  height:auto;
}
/* not for IE11 */
@supports (display: grid) {
  img {
    height:auto;
  }
}


table {
  border-spacing:1px;
}
table th,
table td {
  padding:.375rem 1rem .375rem 0;
  text-align:left;
  vertical-align:top;
}
table th:last-child,
table td:last-child {
  padding-right:0;
}
table th {
  font-weight:700;
  vertical-align:bottom;
  border-bottom:solid var(--gray-light) 1px;
}
table td {
  border-bottom:solid var(--gray-light) 1px;
}

figure {
  margin:0 0 1.3em 0;
  padding:0;
}
figure img {
  display:block;
}
figure figcaption {
  background:#fff;
  margin:0;
  padding:.5em;
  font-style:italic;
  font-size:.8em;
}
figure figcaption:empty {
  display:none;
}

blockquote {
  margin:0 0 1.3rem 0;
  padding:0;
  font-family:'Noto Serif',serif;
  font-size:1.3125rem;
  line-height:1.3;
  font-weight:400;
  font-style:italic;

  max-width:38rem;
}
cite {
  font-family:'Roboto',arial,sans-serif;
  /*font-size:1rem;*/
  line-height:1.625em;
  font-weight:300;
  font-style:italic;
}

main ul,
footer ul {
  list-style:none;
  margin-left:0;
  padding:0;
}
main ul li,
footer ul li {
  margin:0;
  padding:0 0 0 .875rem;
  position:relative;
}
main ul li::before,
footer ul li::before {
  content:'';
  display:block;
  width:.375em;
  height:.375em;
  background:var(--pink);
  /*border-radius:100%;*/
  position:absolute;
  left:0;
  top:.52em;
}
footer ul li::before {
  top:.5em;
}

.video-container {
  position: relative;
	padding-bottom: 56.25%; /* 16:9 */
  height:0;
}
.video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.sep {
  margin:0 .3em;
}
.pink {
  color:var(--pink);
}
.gray {
  color:var(--gray-dark);
}

dialog {
  background:#fff;
  color:var(--gray-dark);
  padding:2rem;
  border:0;
  border-radius:3px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  margin:auto !important;
  position: fixed;
}
dialog::backdrop,
dialog + .backdrop {
  background: rgba(60,69,67,.2);
}
.dialog-close {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 2rem;
  position: absolute;
  right: .5rem;
  top: 0.5rem;
  width: 2rem;
  height: 2rem;
  line-height: 1;
  text-align: center;
  background-color: transparent;
  color: var(--gray-dark);
  transition: color .2s ease;
}
.dialog-close:hover {
  background-color: transparent;
  color:#000;
}


object {
  max-height:100vh;
  max-width:100vw;
  height:auto;
  width:auto;
  margin:0;
}
object:focus {
  outline:0;
}
iframe:focus {
  outline:0;
}

details {}
details summary {
  font-weight:bold;
  padding-left:1.2rem;
  position: relative;
  cursor:pointer;
}
details summary::before {
  content:'+';
  color:var(--pink);
  position: absolute;
  left:0;
}
details[open] summary::before {
  content:'\2013';
}
details .details-inner {
  padding-left:1.2rem;
}
main details ul li::before {
  background:var(--gray-medium);
}

/* Animation
 * ***************************/
.pulsate {
  animation-name: pulsate;
  animation-duration: 1.5s;
  animation-direction: alternate;
  animation-iteration-count: infinite;
}
@keyframes pulsate {
  from {background-color: var(--pink-dark); }
  to {background-color: var(--pink);}
}
.shake {
  animation-name: shake;
  animation-duration: 1s;
  animation-direction: linear;
  animation-iteration-count: 1;
}
@keyframes shake {
  0% {
    transform: translate(.5rem, 0);
  }
  50% {
    transform: translate(-.5rem, 0);
  }
  100% {
    transform: translate(.5rem, 0);
  }
}


/* clearfix
********************************/
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1; /* ie 6/7 */
}

/* Grid
********************************/
@media only screen and (min-width : 1600px) {
  html {
    font-size:18px;
  }
  .container {
    max-width: 1530px;
  }
  .container-fluid {
    padding-left:2rem;
    padding-right:2rem;
  }

  .gutter-large {
    margin-left:-3.5rem;
    margin-right:-3.5rem;
  }
  .gutter-large > .col,
  .gutter-large > [class^=col] {
    padding-left:3.5rem;
    padding-right:3.5rem;
  }
}


/* Seitenelemente (Master)
********************************/
@supports (display: grid) {
  /* not for IE11 */
  body{
    display:flex;
    flex-direction: column;
    min-height:100vh;
  }
}
body {
  position:relative;
}
.site-header {
  background:#fff;
  position: sticky;
  position: -webkit-sticky;
  top:0;
  z-index: 1090;
  z-index: 990;
  z-index: 1010;
}
.site-header .header-top {
  border-bottom:solid var(--pink) 1px;
  background:#fff;
}
/*.site-header .header-top  > .container {
  display:flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap:wrap;
  padding-top:1rem;
  padding-bottom:1rem;
}*/
.site-header .header-top  > .container,
.site-header .header-top  > .container-fluid {
  display:flex;
  flex-wrap:wrap;
  justify-content: space-between;
  align-items: flex-end;
  padding-top:calc(1rem + .125rem);
  padding-bottom:1rem;
  transition:padding .2s ease;
}
.site-logo {
  max-width:13rem;
  transition:height .2s ease;
}
.site-logo a {
  display:block;
  height:0;
  padding:0 0 20% 0;
  overflow:hidden;
  transition:padding .2s ease;
}
.site-logo img {
  display:block;
  width:100%;
  /*height:auto;*/
}
/* not for IE11 */
@supports (display: grid) {
  .site-logo img {
    height:auto;
  }
}


.site-nv-toggle {
  display:flex;
  align-items: center;
}
.site-nv-toggle button {
  position:relative;
  background:transparent;
  padding:.25rem;
  border-color:transparent;
  color:var(--gray-dark);
  font-size:1.5rem;
  line-height:1;
  width:2.5rem;
  height:2.5rem;
  text-align:center;
  transition:background .2s ease, color .2s ease;
}
.site-nv-toggle button img,
.site-nv-toggle button svg {
  display:block;
  margin:0 auto;
  background:transparent;
}
.site-nv-toggle button:hover {
  /*color:var(--pink);*/
  border-color:transparent;
  background: transparent;
}
.site-nv-toggle button:focus {
  outline:0;
}
.user-is-tabbing .site-nv-toggle button:focus {
  color:var(--pink);
  background: transparent;
}
.user-is-tabbing .site-nv-toggle button:focus rect {
  fill:var(--pink);
}
.bookingbar-toggle {
  display:none;
}
.id-41 .bookingbar-toggle {
  display:inline;
}
.bookingbar-toggle.hasItems {
  display:inline-block;
}
.bookingbar-toggle.hasItems::after {
  content:'';
  display:block;
  position:absolute;
  right:.25rem;
  top:.25rem;
  background:var(--pink);
  width:.5rem;
  height:.5rem;
  border-radius: 100%;
}
.bookingbar-toggle[aria-expanded=true] {
  color:var(--pink);
}

/* Menu icon animated */
svg.icon-menu rect {
  transition: .25s ease-in-out;
  transform-origin: 50% 50%;
}
[aria-expanded=true] svg.icon-menu rect:nth-child(1) {
  transform:translate(0, 9px) scale(0,1);
  /*width:0;*/
}
[aria-expanded=true] svg.icon-menu rect:nth-child(2) {
  transform: rotate(45deg);
}
[aria-expanded=true] svg.icon-menu rect:nth-child(3) {
  transform: rotate(-45deg);
}
[aria-expanded=true] svg.icon-menu rect:nth-child(4) {
  transform:translate(0, -9px) scale(0,1);
  /*width:0;*/
}

.site-nv {
  display:none;
  text-transform:uppercase;
  text-decoration:none;
  padding-top:1rem;
}
.site-nv ul {
  margin:0;
  padding:0;
  list-style:none;
}
.site-nv ul li {
  margin:0;
  padding:0;
}
.site-nv ul li a {
  display:block;
  color:var(--gray-dark);
  text-decoration: none;
  transition:color .2s ease;
}
.site-nv ul li a:hover {
  color:var(--pink);
}

.site-nv ul li.a1 > a,
.site-nv ul li.s1 > a {
  color:var(--pink);
}

.id-41 .site-nv .btn-booking,
.id-133 .site-nv .btn-booking,
.id-65 .site-nv .btn-booking,
.id-59 .site-nv .btn-booking,
.id-60 .site-nv .btn-booking,
.id-80 .site-nv .btn-booking,
.id-85 .site-nv .btn-booking,
.id-170 .site-nv .btn-booking {
  display:none;
}
.site-nv .nv-meta {
  font-size:.875rem;
  margin:.75rem 0;
}
.site-nv .nv-meta ul {
  display:flex;
  justify-content: center;
  flex-wrap: nowrap;
}
.site-nv .nv-meta li {
  border-right:solid var(--gray-light) 1px;
  margin:0;
  padding:0 .375rem;
}
.site-nv .nv-meta li:last-child {
  border:0;
  padding-right:0;
}
.site-nv .nv-meta a {
  border:0;
  color:var(--gray-medium);
}

[lang=de] .site-nv .nv-meta a[lang=de] {
  color:var(--pink);
}
[lang=en] .site-nv .nv-meta a[lang=en] {
  color:var(--pink);
}

.header-banner {
  background:var(--gray-lighter);
  border:solid var(--pink);
  border-width:0;
  position:relative;
  display: grid;
  grid-template-areas: 'banner'
                       'cta';
}
.header-banner .header-banner-image {
  background:var(--gray-medium);
  grid-area: banner;
}
.header-banner .header-banner-image img {
  width:100%;
  height:auto;
  display:block;
  aspect-ratio: 2560/814;
  object-fit: cover;
  object-position: 50% 50%;
}
.header-banner .header-banner-gallery {
  grid-area: banner;
  max-width: 100vw;
}
.header-banner-gallery .splide__slide img {
  width: 100%;
  height: auto;
  display: block;
}
.header-banner-gallery .splide__pagination {
  position:absolute;
  bottom:1rem;
  left:50%;
  transform:translate(-50%, 0);
  display:flex;
  padding:0 1rem;
}
.header-banner-gallery .splide__pagination li {
  margin:.375rem;
}
.header-banner-gallery .splide__pagination__page {
  background:transparent;
  color:transparent;
  overflow:hidden;
  width:.75rem;
  height:.75rem;
  margin: 0;
  padding:0;
  border:solid #fff 1px;
  border-radius:100%;
  opacity: 1;
  transition:background .2s ease, border .2s ease;
}
.header-banner-gallery .splide__pagination__page:hover {
  background:#fff;
}
.header-banner-gallery .splide__pagination__page:focus {
  border-color:var(--pink);
  outline:0;
}
.header-banner-gallery .splide__pagination__page.is-active {
  background:var(--pink);
  border-color:var(--pink);
  transform: none;
}

.header-banner .header-banner-video {
  height:0;
  padding-bottom:31.7968%;
  padding-bottom:31.9%;
  background-color: var(--gray-light);
  position: relative;
  overflow:hidden;
  grid-area: banner;
  z-index: 2;
  display: none;
}
.header-banner .header-banner-video video {
  width:100%;
  height:auto;
  display:block;
  position: absolute;
  z-index:1;
  left:0;
  top:50%;
  transform: translate(0,-50%);
}
@media only screen and (min-width : 992px) {
  .header-banner .header-banner-video {
    display: block;
  }
}
.header-banner-video-fullscreen {
  position: absolute;
  z-index:2;
  right:1rem;
  bottom:1rem;
  padding:.5rem;
  background:transparent;
}
.header-banner-video-fullscreen:hover {
  color:var(--pink);
  background:transparent;
}

/* Hinweis Eroeffnung
 * *********************************/
.header-banner .container-opening {
  /*display:none;*/
  text-transform:uppercase;
  font-size:1em;
  font-weight:100;
  line-height:1.3;
  text-align:center;
  padding:.5rem 1rem;
  background:var(--pink);
  color:#fff;
  grid-area: cta;
}
.id-2 .header-banner .container-opening,
.id-74 .header-banner .container-opening,
.id-117 .header-banner .container-opening{
  display:block;
}
.header-banner .container-opening div {
  display:inline;
}
.header-banner .container-opening span {
  white-space:nowrap;
}
.header-banner .container-opening a {
  color:#fff;
  font-weight:bold;
  margin-left:1rem;
}
@media only screen and (max-width : 991px) {
  .header-banner .container-opening {
    width:100%;
    max-width:none;
  }
}
@media only screen and (min-width : 992px) {
  .header-banner {
    grid-template-areas: 'banner';
  }
  .header-banner .container-opening {
    font-size:2.375rem;
    background:transparent;
    text-align:right;
    display:block;
    grid-area: banner;
    align-self: end;
    z-index: 10;
    margin-bottom: 3.5vw;
    /*
    position: absolute;
    z-index:2;
    left: 0;
    right: 0;
    bottom: 5rem;
    */
    
  }
  .header-banner .container-opening div {
    display:block;
  }
  .header-banner .container-opening span {
    display:inline-block;
    margin-bottom:.1875rem;
    background:var(--pink);
    padding:0 .5rem;
  }
  .header-banner .container-opening .opening-title {
    font-size:1.25rem;
    font-size:2.8125rem;
    font-size:2rem;
    /*font-weight:700;*/
  }
  .header-banner .container-opening .opening-title span {
    padding-top:.3125rem;
    padding-bottom:.3125rem;
  }
  .header-banner .container-opening a {
    font-weight:100;
    margin-left:0;
  }
  .header-banner .container-opening a span {
    transition:background .2s ease, color .2s ease;
  }
  .header-banner .container-opening a:hover span {
    background:#fff;
    color:var(--pink);
  }
}
/*
.header-banner .container-opening {
  text-transform:uppercase;
  font-size:2.375rem;
  font-weight:100;
  line-height:1.3;
  text-align:right;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5rem;
}
.header-banner .container-opening span {
  display:inline-block;
  margin-bottom:.1875rem;
  background:var(--pink);
  color:#fff;
  padding:0 .3125rem;
}
*/

.header-banner .container-gda {
  position: absolute;
  z-index: 2;
  left:0;
  top:0;
  right:0;
  display:flex;
  justify-content: flex-end;
  align-items: flex-start;
  display:none;
}
.id-200 .header-banner .container-gda,
.id-117 .header-banner .container-gda {
  display:flex;
}
.header-banner .container-gda .gda-logo {
  display:flex;
  justify-content: flex-end;
  align-items: flex-start;
}
.header-banner .container-gda .gda-logo img {
  display:block;
  width:53px;
  height:auto;
}
@media only screen and (min-width : 992px) {
  .header-banner .container-gda .gda-logo img {
    width:75px;
    height:auto;
  }
}
@media only screen and (min-width : 1200px) {
  .header-banner .container-gda .gda-logo img {
    width:107px;
    height:auto;
  }
}

.booking-bar {
  display:none;
}

.site-main {
  background:#fff;
  min-height:20rem;
  flex: 1;
}

.site-footer {
  border-top:solid var(--pink) 1px;
  padding:2rem 0;
  color:rgba(255,255,255,.4);
  color:var(--gray-medium);
  background:var(--gray-dark);
  font-size:.75rem;
  line-height:1.4;
  position:relative;
  flex-shrink: 0;
}
.site-footer a {
  color:var(--gray-medium);
  text-decoration: none;
}
.site-footer a:hover {
  color:#fff;
}

/* Lilli-Widget
 * ****************************/
@keyframes lilli-bubble-bak {
  0%   { opacity:0; }
  79%  { opacity:0; }
  80%  { opacity:1; }
  100% { opacity:1; }
}
@keyframes lilli-bubble {
  0%   { opacity:0; }
  9%   { opacity:0; }
  10%  { opacity:1; }
  40%  { opacity:1; }
  41%  { opacity:0; }
  100% { opacity:0; }
}

.lilli-widget {
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1080;
  z-index:990;
  height:1rem;
  background:var(--gray-dark);
  border-top:solid var(--pink) 1px;
  display:none;
}
.lilli-widget .inner {
  position:absolute;
  right:3rem;
  bottom:-10px;
  width:160px;
}
.lilli-widget .lilli-full {
  position:relative;
}
.lilli-widget .lilli-full svg {
  width:100%;
  /*height:auto;*/
}
/* not for IE11 */
@supports (display: grid) {
  .lilli-widget .lilli-full svg {
    height:auto;
  }
}

.lilli-widget .lilli-bubble {
  opacity:0;
  position:absolute;
  left:-111px;
  top:-69px;
  left:-49.3%;
  top:-23.23%;
  width:194px;
  transition:opacity .2s ease;
  animation-name: lilli-bubble;
  animation-duration: 20s;
  animation-iteration-count: infinite;
}
.lilli-widget .lilli-bubble img {
  width:100%;
  height:auto;
}
.lilli-widget .lilli-minimized {
  display:none;
  margin-bottom: 13px;
}
.lilli-widget .lilli-signet {
  display:none;
  width:10rem;
  position:absolute;
  left:50%;
  bottom:-3rem;
  transform:translate(-50%, 0);
}

.lilli-widget.sticky {
  position:absolute;
  bottom:auto;
  top:-1px;
}
.lilli-widget a {
  display:block;
}
.lilli-widget button {
  position:absolute;
  right:0;
  top:0;
  border-color:transparent !important;
  background-color:transparent !important;
  padding:.5rem;
  color:var(--gray-dark) !important;
  opacity:1;
  transition:opacity .2s ease, color .2s ease;
}
.lilli-widget button:focus {
  color:var(--pink);
  outline:0;
}
.lilli-widget button.open {
  display:none;
}
.lilli-widget button:hover {
  color:var(--pink) !important;
  background:transparent;
  border-color:transparent;
}
.lilli-widget:hover button.close {
  opacity:1;
}
.lilli-widget.minimized .lilli-full {
  display:none;
}
.lilli-widget.minimized .lilli-minimized {
  display:block;
}
.lilli-widget.minimized button.close {
  opacity:0;
  display:none;
}
.lilli-widget.minimized button.open {
  opacity:1;
  display:block;
}

@media only screen and (min-width : 1200px) {
  .lilli-widget .inner {
    width:225px;
  }
  .lilli-widget .lilli-bubble {
    width:273px;
  }
}
@media only screen and (min-width : 1200px) {
  .lilli-widget button {
    opacity:0;
  }
}
@media only screen and (min-width : 1850px) {
  .lilli-widget .lilli-signet {
    display:block;
  }
}

@media only screen and (max-width : 1199px) {
  .site-nv {
    flex:0 0 100%;
    max-width:100%;
    text-align:center;
  }
  .site-nv a {
    padding:.75rem 1rem;
    border-top:solid var(--gray-light) 1px;
  }
  .site-nv .btn-booking {
    width:100%;
    padding:.75rem 1rem;
  }
}
@media only screen and (min-width : 992px) {
  .site-header.sticky {
    position:sticky;
    top:0;
    z-index:1090;
    z-index:990;
  }
  .site-header.sticky .header-top > .container,
  .site-header.sticky .header-top > .container-fluid {
    padding-top:1rem;
    padding-bottom: 1rem;
  }
  .site-header.sticky .header-top {
    /*position: fixed;
    top: 0;
    left:0;
    right:0;
    z-index: 1090;*/

  }
  .site-header.sticky .site-logo {}
  .site-header.sticky .site-logo a {
    padding:0 0 20% 0;
  }
  .site-header.sticky .site-nv {
    /*flex:auto;*/
  }
  .site-header.sticky .site-nv .nv-meta {
    display:none;
  }

}

@media only screen and (max-width : 1199px) and (orientation: landscape) {
  .site-nv ul {
    display:flex;
    flex-wrap: wrap;
  }
  .site-nv ul li {
    flex:0 0 50%;
    max-width: 50%;
  }
}

@media only screen and (min-width : 1200px) {
  .site-header .header-top > .container,
  .site-header .header-top > .container-fluid {
    position:relative;
    padding-top:calc(2rem + .125rem);
    padding-bottom:2rem;
  }
  .site-logo {
    margin-right:2rem;
    margin-bottom:.3rem; /* line-height .site-nv (1.6em)  */
  }
  .site-logo a {
    padding:0 0 31% 0;
  }
  .site-nv-toggle {
    display:none;
  }
  .site-nv {
    padding:0;
    flex:auto;
    display:flex !important;
    align-items: flex-end;
  }
  .site-nv ul {
    display:flex;
  }
  .site-nv ul li {
    margin-right:1rem;
  }
  .site-nv ul li a {}
  .site-nv .btn-booking {
    align-self: flex-end;
    margin-left:auto;
  }
  .site-nv .nv-meta {
    position:absolute;
    right:15px;
    top:1rem;
  }
  .booking-bar {
    display:block !important;
  }
}
