@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Light.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'copyfont';
  src: url('../fonts/Roboto/Roboto-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
}

/**
:root {
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
/**/

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
/*  -ms-overflow-style: -ms-autohiding-scrollbar;*/
}

*, *:before, *:after {
  border: 0;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

*:focus {
  outline: none;
}

/* {
  outline: 1px dotted rgba( 0, 0, 0, .1 );
}
/**/

.ui-datepicker-header,
.noselect {
  -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

body {
  background-color: #fff;
  color: #333;
  font-family: 'copyfont';
  font-size: 16px;
  font-weight: 200;
  
  overflow-x: hidden;
  overflow-y: auto;
  
  -webkit-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: subpixel-antialiased !important;
  text-rendering: optimizeLegibility;
/*  -webkit-text-stroke: 1px transparent;*/
}

body.body--carroussell--open {
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'copyfont';
  font-weight: 500;
  margin-bottom: 1rem;
}

h2 {
  font-size: 1.3125rem;
}

h3 {
  color: #0070be;
}

ul {
  list-style: none inside;
}

p {
  margin: 0 0 15px 0;
  white-space: normal;
}

a {
  color: #fa8708;
  text-decoration: none;
}

html.no-touchevents a:hover {
  text-decoration: underline;
}

a h3 {
  color: #fa8708;
}

strong,
b {
  font-weight: 500;
}

label {
  cursor: pointer;
}

header,
main,
footer {
  margin: 0 auto;
  max-width: 1080px;
}

header {
  border-bottom: 1px solid #fff;
  min-height: 80px;
  padding: 5px 0;
  position: relative;
}

#meta {
  font-size: 14px;
  font-size: 13px;
  font-weight: 200;
/*  outline: 1px dotted green;*/
  position: absolute;
  right: 15px;
/*  text-transform: uppercase;*/
  top: 25px;
  top: 5vw;
  width: 168px;
}

@media ( min-width: 640px ) {
  #meta {
    font-size: 16px;
    top: 50px;
    width: auto;
  }
}

#meta a {
  color: #333;
  display: inline-block;
  margin-bottom: 4px;
  width: 82px;
}

@media ( min-width: 640px ) {
  #meta a {
/*    display: inline-block;*/
    margin-left: 10px;
    width: auto;
  }
}

#meta a i {
  color: #fa8708;
}

section {
  margin-bottom: 30px;
}

section.nocols {
  padding-left: 15px;
  padding-right: 15px;
}

section.first {
  margin-bottom: 0;
}

section > h2 {
  padding: 0 15px;
}

#logo {
  background: url(/csd/img/feriwa-logo.svg) no-repeat center center;
  background-size: contain;
  display: block;
  font-size: 11px;
  height: 60px;
/*  outline: 1px dotted green;*/
  margin: 5px 0 0 15px;
  padding: 0 0 0 15px;
  position: relative;
  width: 210px;
}

@media ( max-width: 639px ) {
  #logo {
    margin-top: 0;
    width: 27.34vw;
  }
}

@media ( max-width: 414px ) {
  #logo {
    margin-top: 0;
    width: 33vw;
  }
}

#hero {
  margin-bottom: 0;
  padding: 5px 15px;
  padding-bottom: 0;
}

#hero > div {
  background-image: url(/csd/img/hero.jpg);
/*  background-position: center 33%;*/
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 1px solid rgba( 0, 0, 0, .2 );
  height: 50vw;
  max-height: 360px;
  overflow: hidden;
  position: relative;
}

@media ( min-width: 1080px ) {
  #hero > div {
    left: calc( -1 * ( 100vw - 1050px) / 2 );
    width: 100vw;
  }
}

#hero > div > div {
  margin: 0 auto;
  max-width: 1080px;
}

#instagram {
  background-color: rgba( 255, 255, 255, .6 );
  border-radius: 5px;
  box-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  color: #333;
  display: inline-block;
  margin: 15px;
  padding: 4px;
}

@supports ( ( -webkit-backdrop-filter: blur(10px) ) or ( backdrop-filter: blur(10px) ) ) {
  #instagram {
    backdrop-filter: saturate(180%) blur(10px);
    -webkit-backdrop-filter: saturate(180%) blur(10px);
  }
}

#instagram i {
  color: #fa8708;
}

#slogan {
  margin-top: -6px;
  margin-top: 50px;
  padding: 0 10px 0 50%;
}

#slogan h2 {
  color: #fa8708;
  color: #0070be;
  font-size: 52px;
  margin-left: -2px;
  margin-bottom: 0;
  text-shadow: 0 0 5px rgba( 255, 255, 255, .8 );
}

#slogan h3 {
  display: none;
  margin: 0 auto;
  text-align: center;
  text-shadow: 0 0 5px rgba( 255, 255, 255, .8 );
}

#slogan h1 {
  color: #fa8708;
  color: #fff;
  font-size: 26px;
  text-shadow: 0 2px 5px rgba( 0, 0, 0, .8 );
}

@media ( max-width: 765px ) {
  #slogan {
    padding-left: 15px;
  }
}

@media ( max-width: 439px ) {
  #slogan h2 {
    font-size: 26px;
  }
  #slogan h1 {
    font-size: 21px;
  }
}

@media ( max-width: 374px ) {
  #slogan h2 {
    font-size: 26px;
  }
  #slogan h1 {
    font-size: 17px;
  }
  
}

.colgrp {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.col .colgrp {
  margin-left: -15px;
  width: calc( 100% + 30px );
}

.gallery {
  position: relative;
}

.gallery--nav {
  background-color: rgba( 255, 255, 255, .25 );
  border-radius: 50%;
  color: #333;
  cursor: pointer;
  display: block;
  height: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  position: absolute;
  text-align: center;
/*  top: 13rem;*/
  top: calc( 33.33vw - 30px );
  width: 2rem;
  z-index: 10;
}

@media ( min-width: 620px ) {
  .gallery--nav {
    top: 14vw;
  }
}

@media ( min-width: 960px ) {
  .gallery--nav {
    top: 9vw;
  }
}

@media ( min-width: 1060px ) {
  .gallery--nav {
    top: 6.5rem;
  }
}

.gallery--prev {
  left: 2rem;
}

.gallery--next {
  right: 2rem;
}

/*@media ( min-width: 1080px ) {*/
@media ( min-width: 1144px ) {
  .gallery--prev {
    left: -2rem;
  }

  .gallery--next {
    right: -2rem;
  }
  
}

.gallery--nav.inactive {
  cursor: default;
  opacity: .01;
}

.gallery--nav:before {
  content: '\f104';
  display: inline-block;
  font-family: 'FontAwesome';
  height: 2rem;
  width: 2rem;
}

.gallery--next:before {
  content: '\f105';
}

.gallery--viewport {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.gallery--track {
  width: 100000px;
}

.colgrp.gallery--container {
  float: left;
  list-style: none inside;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out, -o-transform 0.3s ease-out;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  white-space: nowrap;
}

.gallery--image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: calc( 66.66vw - 30px );
  overflow: hidden;
  width: 100%;
}

@media ( min-width: 620px ) {
  .gallery--image {
    height: calc( 33.33vw - 30px );
  }
}

@media ( min-width: 960px ) {
  .gallery--image {
    height: calc( 22.22vw - 30px );
  }
}

@media ( min-width: 1060px ) {
  .gallery--image {
    height: 220px;
  }
}

.gallery--image img {
  max-width: 100%;
  opacity: 0;
/*  visibility: hidden;*/
}

.colgrp.gallery--container {
  justify-content: flex-start;
}

.colgrp.gallery--container > .col {
  float: left;
  width: 100vw;
}

@media ( min-width: 620px ) {
  .colgrp.gallery--container > .col {
    width: 50vw;
  }
}

@media ( min-width: 960px ) {
  .colgrp.gallery--container > .col {
    width: 33.33vw;
  }
}

@media ( min-width: 1080px ) {
  .colgrp.gallery--container > .col {
    width: 360px;
  }
}

.colgrp.gallery--container > .col * {
  white-space: normal;
}




.belegungsplan {
  position: relative;
}

.belegungsplan--nav {
  background-color: rgba( 255, 255, 255, .25 );
  border-radius: 50%;
  color: #333;
  cursor: pointer;
  display: block;
  height: 2rem;
  font-size: 2rem;
  line-height: 2rem;
/*  outline: 1px dotted brown;*/
  position: absolute;
  text-align: center;
  top: -.5rem;
  width: 2rem;
  z-index: 10;
}

.belegungsplan--prev {
  left: 1rem;
}

.belegungsplan--next {
  right: 1rem;
}

@media ( min-width: 620px ) {
}

@media ( min-width: 1080px ) {
  .belegungsplan--prev {
    left: -2rem;
  }

  .belegungsplan--next {
    right: -2rem;
  }
  
}

.belegungsplan--nav.inactive {
  cursor: default;
  opacity: .01;
}

.belegungsplan--nav:before {
  content: '\f104';
  display: inline-block;
  font-family: 'FontAwesome';
  height: 2rem;
  width: 2rem;
}

.belegungsplan--next:before {
  content: '\f105';
}

.belegungsplan--viewport {
/*  outline: 1px dotted red;*/
  overflow: hidden;
  position: relative;
  width: 100%;
}

.belegungsplan--track {
/*  outline: 1px dotted green;*/
  width: 100000px;
}

.colgrp.belegungsplan--container {
  display: block;
  float: left;
  list-style: none inside;
  margin-left: 0;
/*  outline: 1px dotted blue;*/
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out, -o-transform 0.3s ease-out;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
  width: auto;
}

.colgrp.belegungsplan--container > .belegungsplan-monat {
/*  outline: 1px dotted orange;*/
  float: left;
  width: calc( 100vw - 30px );
}

@media ( min-width: 480px ) {
  .colgrp.belegungsplan--container > .belegungsplan-monat {
    width: calc( 50vw - 15px );
  }
}

@media ( min-width: 720px ) {
  .colgrp.belegungsplan--container > .belegungsplan-monat {
    width: calc( 33.33vw - 15px );
  }
}

@media ( min-width: 1080px ) {
  .colgrp.belegungsplan--container > .belegungsplan-monat {
    width: 360px;
    width: 230px;
  }
}

.colgrp.belegungsplan--container > .belegungsplan-monat * {
  white-space: normal;
}

.colgrp.belegungsplan--container > .belegungsplan-monat table {
  margin: 0 auto;
}

.belegungsplan-monat,
.col {
  padding: 5px 15px;
  position: relative;
  width: 100%;
}


@media ( max-width: 959px ) {
  .col.tablet-first {
    order: -1;
    width: 100%;
  }
}

@media ( max-width: 619px ) {
  .col.mobile-first {
    order: -1;
  }
}


/*.col > p,*/


.info-content,
.hyphenate {
  -ms-word-break: break-all;
      word-break: break-all;

     // Non standard for webkit
     word-break: break-word;

  -webkit-hyphens: auto;
     -moz-hyphens: auto;
          hyphens: auto;
  text-align: justify;
}

.col.col-span-2,
.col.col-span-3 {
  width: 100%;
}

@media ( min-width: 620px ) {
  .col-span-2 + .col {
    width: 100%;
  }
  .col {
    width: 50%;
  }
  .col--2 > .col.col-span-2 {
    width: 100%;
  }
}

@media ( min-width: 960px ) {
  .col {
    width: 33.33%;
  }
  .col-span-2 + .col {
    width: 33.33%;
  }
  .col.col-span-2 {
    width: 66.66%;
  }
  .col--2 > .col.col-span-2 {
    width: 100%;
  }
  
}

.col > a > img,
.col > img {
  height: auto;
  width: 100%;
}

.gallery .colgrp .col a {
  color: #333;
  display: block;
/*  outline: 1px dotted blue;*/
  width: 100%;
}

.gallery .colgrp .col a.region {
  display: inline;
}

.gallery .colgrp .col h3 {
  color: #333;
  display: block;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 0;
  padding: 8px 0 0 0;
  text-transform: uppercase;
}

#querybar {
  z-index: 99;
}

/*
@media ( max-width: 619px ) {
  #querybar .col {
    font-size: .75rem;
  }
}
*/

@media ( min-width: 960px ) {
  #querybar {
    top: 0;
  }
}

#querybar.page--search {
  margin-bottom: 0;
}

#querybar .colgrp {
  padding: 0 15px;
}

#querybar .col {
  background-color: #f9f9f9;
  background-color: #eee;
  background-color: #e5f0f8;
  background-color: #dee;
  background-color: rgba( 0, 112, 190, .2 );
  background-color: #cce2f2;
  background-color: #e5f0f8;
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #fff;
  padding-bottom: 15px;
  padding-top: 15px;
  width: 33.33%;
}
@media ( max-width: 619px ) {
  #querybar .col {
    padding-left: 5px;
    padding-right: 5px;
  }
}

#querybar .fa {
  color: #fa8708;
}

#querybar #reiseziel {
  width: calc( 100% - 40px );
/*  width: calc( 100% - 140px );*/
}

#querybar .col > label {
/*  padding-left: 1.5rem;*/
/*  position: relative;*/
  width: 100%;
}

#querybar .col > label i {
  /*
  left: 0;
  position: absolute;
  text-align: center;
  */
  top: .125rem;
}

#querybar .col label > input[type="text"] {
  background-color: rgba( 255, 255, 255, .5 );
  font-size: 1rem;
  padding: .25rem;
/*  width: 100%;*/
}

.friendly-input-display > span {
  background-color: rgba( 255, 255, 255, .5 );
  display: inline-block;
  font-size: 1rem;
  padding-left: .25rem;
  padding-right: .25rem;
  min-width: calc( 100% - 40px );
}

#guests .friendly-input-display > span {
  min-width: calc( 100% - 130px );
}

#querybar .col > label > input[type="text"].datum {
  width: 100px;
}
@media ( min-width: 620px ) and ( max-width: 870px ) {
  #querybar .col > label > input[type="text"] {
    width: 100px;
  }
  #querybar .col > label > input[type="text"].datum {
    width: 50px;
  }
}

#querybar .col label > input[type="text"]:focus {
  background-color: rgba( 255, 255, 255, .5 );
}

#querybar .col > button {
  background-color: transparent;
  cursor: pointer;
  padding: 10px;
  position: absolute;
  right: .25rem;
  top: .5rem;
}

@media ( max-width: 619px ) {
  #querybar button {
    right: 0rem;
    top: .25rem;
  }
}

#querybar .col > button .btn {
  margin-top: -.25rem;
  padding: .5rem 1rem;
}

.body-friendly-input-open #querybar .col:not(:last-of-type) button {
  display: none;
}

#querybarsubmit .btn i {
  color: #fff;
}

.friendly-input-overlay {
  background-color: rgba( 0, 0, 0, .1 );
/*  bottom: 0;*/
  display: none;
/*  height: 101vh;*/
  height: 100vh;
  left: 0;
  overflow: hidden;
  position: fixed;
/*  right: 0;*/
  top: 0;
/*  width: 100vw;*/
  width: 100%;
  z-index: 180;
}

.friendly-input-wrapper.friendly-input-open ~ .friendly-input-overlay {
  display: block;
}

body.body-friendly-input-open {
  height: 100%;
/*  overflow: auto;*/
/*  overflow: hidden;*/
/*  outline: 1px dotted red;*/
/*  margin-right: 16px;*/
}

.friendly-input-wrapper {
  position: relative;
}

.friendly-input-link {
  cursor: pointer;
}

#reiseziel_wrapper .friendly-input-form {
  background-color: #e7ebef;
  margin-left: 2rem;
  margin-top: -.3125rem;
  padding: 0;
  width: calc( 100% - 40px );
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

#reiseziel_wrapper .friendly-input-link {
  color: #333;
  cursor: pointer;
  line-height: 1.75rem;
  padding: 0 .5rem;
}

.selected-link {
  background-color: #fff;
}

.friendly-input-wrapper#reiseziel_wrapper > .friendly-input-form a {
  display: block;
}

.friendly-input-display {
  cursor: pointer;
}

#querybar .friendly-input-display {
  height: 1.75rem;
  line-height: 1.75rem;
}

@media ( min-width: 620px ) and ( max-width: 767px ) {
  #querybar .col label > input[type="text"][name="u"],
  #querybar .col .friendly-input-display > span {
    font-size: .75rem;
  }
}

.friendly-input-form {
  background-color: #e5f0f8;
  box-shadow: 0 0 5px rgba( 0, 0, 0, .25 );
  display: none;
  padding: .5rem;
  position: absolute;
  top: 2rem;
  width: 100%;
  z-index: 200;
}

#zeitraum .friendly-input-form {
  top: 0;
}

#reiseziel_wrapper .friendly-input-form {
  max-height: calc( 100vh - 130px );
  overflow-y: auto;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

@media ( max-height: 319px ) and ( min-width: 621px ){
  #reiseziel_wrapper .friendly-input-form {
    height: 4.625rem;
/*    overflow: scroll;*/
    left: 30vw;
    width: 60vw;
    top: 0.0625rem;
  }
}

@media ( min-width: 1024px ) and ( min-height: 580px ) {
  #hero ~ #querybar #reiseziel_wrapper .friendly-input-form {
    max-height: calc( 100vh - 520px );
  }
}

#reiseziel_wrapper .friendly-input-form span.btn {
  display: none;
}

.friendly-input-form .btn {
  background-color: #0070be;
  padding: .25rem .5rem;
  position: relative;
  top: -2px;
}

.friendly-input-form .ok {
  position: absolute;
  right: .625rem;
  top: -1.75rem;
}

#guests .friendly-input-form .ok {
  bottom: calc( 1rem + 2px );
  top: auto;
}

.friendly-input-form input[type="text"] {
  font-size: 1rem;
  padding: .25rem;
}


.friendly-input-form-row {
  margin-bottom: .5rem;
  
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#zeitraum .friendly-input-form-row {
  display: inline-block;
}

#zeitraum .friendly-input-form input[type="text"] {
  width: 90px;
}

@media ( max-width: 374px ) {
  #zeitraum .friendly-input-form input[type="text"] {
    width: 83px;
  }
}

.friendly-input-form-label {
  display: inline-block;
  width: 4rem;
}

#zeitraum .friendly-input-form-label {
  text-align: center;
  width: 2rem;
}

#clear-timerange {
  color: #0070be !important;
  cursor: pointer;
  margin-left: .25rem;
}

/*#clear-timerange-button,*/
.clear-button {
/*  color: #0070be !important;*/
  cursor: pointer;
  display: block;
  margin-left: 0rem;
  position: absolute;
  padding: .25rem;
  right: .75rem;
  top: .08rem;
  z-index: 195;
}

@media( min-width: 620px ) and ( max-width: 849px ) {
/*  #clear-timerange-button,*/
  .clear-button {
    right: -.5rem;
  }
}

.body-friendly-input-open .clear-button,
#reiseziel_wrapper.friendly-input-open #clear-reiseziel-button,
#zeitraum.friendly-input-open #clear-timerange-button {
  display: none;
}

#guests .friendly-input-form-label {
  width: 8rem;
}

@media( min-width: 620px ) and ( max-width: 849px ) {
  #guests .friendly-input-form-label {
    width: 100%;
  }
}

.friendly-input-wrapper.friendly-input-open {
  z-index: 190;
}

.friendly-input-wrapper.friendly-input-open .friendly-input-form {
  display: block;
}

.friendly-input-wrapper#zeitraum.friendly-input-open {}

.friendly-input-wrapper#zeitraum.friendly-input-open .friendly-input-form {
  visibility: hidden;
/*  opacity: .001;*/
}


/*@media ( max-width: 414px ) {*/
@media ( max-width: 619px ) {
  #querybar .col {
    width: 100%;
  }
}

@media ( min-width: 375px ) {
  #filterbar .col--4 > .col {
    width: 50%;
  }
}

@media ( min-width: 620px ) {
  .col--2 > .col {
    width: 50%;
  }
}

@media ( min-width: 620px ) {
  .col--4 > .col {
    width: 50%;
  }
  #filterbar .col--4 > .col {
    width: 25%;
  }
}

@media ( min-width: 960px ) {
  .col--4 > .col {
    width: 25%;
  }
}

input[type="checkbox"].click-toggle-checkbox {
  display: none;
}

#maps .col > label > h3 {
  border-bottom: 1px solid #eee;
  cursor: pointer;
  padding-bottom: 2px;
  position: relative;
}

#maps .col > label > h3:after {
  color: #333;
  content: '\f107';
/*  content: '\f0c9';*/
  display: inline-block;
  font-family: 'FontAwesome';
  position: absolute;
  right: 0;
}

#maps .col > input[type="checkbox"] ~ ul {
  background-color: rgba( 255, 255, 255, .95 );
  border-radius: 4px;
  box-shadow: 0 0 5px rgba( 0, 0, 0, .2 );
  display: none;
  left: 12px;
  list-style: none inside;
  margin-top: 32px;
  padding: .5rem 1rem;
  position: absolute;
  top: 0;
  width: calc( 100% - 24px );
  z-index: 100;
}

/**/
#maps .col > label > h3 + ul li:before {
  content: '– ';
}
/**/

#maps .col input[type="checkbox"].click-toggle-checkbox:checked > label > h3 {
  border: 0;
}

#maps .col > input[type="checkbox"].click-toggle-checkbox:checked ~ label > h3:after {
  content: '\f106';
/*  content: '\f00d';*/
}

#maps .col input[type="checkbox"].click-toggle-checkbox:checked ~ ul {
  display: block;
}

.click-toggle-overlay {
  background-color: rgba( 0, 0, 0, .05 );
  bottom: 0;
  display: none;
/*  height: 100vh;*/
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
/*  width: 100vw;*/
  z-index: 90;
}

input[type="checkbox"].click-toggle-checkbox:checked ~ .click-toggle-overlay {
  display: block;
}


#maps .col svg,
#maps .col img {
  display: block;
  max-height: 145px;
  margin: 0 auto;
  max-width: 100%;
  width: auto;
}

@media ( min-width: 360px ) {
  #maps .col img {
    max-height: 165px;
  }
}

#maps .col > p {
  text-align: center;
}

.line-toggle-wrapper {
  position: relative;
}

.colgrp.line-toggle {
  height: 1.5rem;
  overflow: hidden;
}

.colgrp.line-toggle a {
  font-size: .875rem;
  margin: 0 .125rem;
}

#line-toggle-all:checked ~ .colgrp.line-toggle {
  height: auto;
  overflow: visible;
}

.line-toggle-switch {
  position: absolute;
  right: .33rem;
  top: .33rem;
  z-index: 1;
}

.line-toggle-switch i:last-of-type {
  display: none;
}

#line-toggle-all:checked ~ .line-toggle-switch i:first-of-type {
  display: none;
}

#line-toggle-all:checked ~ .line-toggle-switch i:last-of-type {
  display: block;
}

.social-links {
  margin-bottom: 2rem;
}

footer .social-links {
  text-align: center;
}

.social-links a i {
  color: #fff;
}

.social-links.dark {
  border-top: 1px solid #ccc;
  margin-top: .5rem;
  padding-top: 1rem;
}

.social-links.dark a i {
  color: #333;
}

.social-links p > span {
  display: none;
}

@media ( min-width: 620px ) {
  .social-links p > span {
    display: inline-block;
  }
}

.social-links a {
  margin-left: .5rem;
}

footer {
  color: #000;
/*  margin-top: 4rem;*/
  padding-bottom: 4rem;
  padding-top: 2rem;
}

footer ul {
  list-style: none inside;
  margin-bottom: 1rem;
}

footer li {
/*  padding: 0 1rem;*/
  padding: 0;
}

/**/
footer li:before {
  content: '– ';
  color: #fff;
}
/**/

.area-wrapper {
  width: 100%;
}

.footer-wrapper {
  background-color: #0070be;
}

.footer-wrapper h3 {
  border-bottom: 1px solid rgba( 255, 255, 255, .33 );
  color: #fff;
  padding-bottom: 8px;
}

.footer-wrapper a {
  color: #333;
  color: #000;
}

/* ERGEBNISSEITE */

.nocols h2 {
  padding: 0;
}

#breadcrumbs {
  margin: 1rem 0 0 0;
}

#breadcrumbs p {
  font-size: .875rem;
}

.breadcrumbs {
  /*
  left: 1rem;
  position: absolute;
  */
  padding: 0 1rem;
}

.breadcrumbs p {
  font-size: .75rem;
  margin-bottom: 0;
}

.items {}

.item {
  box-shadow: 0 0 5px rgba( 0, 0, 0, .25 );
  margin-bottom: 2rem;
  position: relative;
}

.item:not(.aus-der-umgebung) + .item.aus-der-umgebung:before {
  background-color: #0070be;
  color: #fff;
  content: 'Ähnliches Ergebnis aus der Umgebung';
  display: block;
  font-size: .625rem;
/*  font-weight: bold;*/
  letter-spacing: 2px;
  padding: 2px 0;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: -1.5rem;
  width: 100%;
}

.aus-der-umgebung-trenner {
  background-color: #0070be;
  color: #fff;
  display: block;
  font-size: .625rem;
  letter-spacing: 2px;
  padding: 2px 0;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  top: -1rem;
  width: 100%;
}

.item-info {
  cursor: pointer;
  padding: 1rem;
}

.col.item-info {
  padding: 5px 15px;
}

html.no-touchevents .item-info a:hover {
  text-decoration: none;
}

.item > h3 {
  margin-bottom: 0;
}

.item-id {
  font-size: .75rem;
  font-weight: 500;
  position: relative;
}

.item-remember {
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 1.5rem;
  padding: .5rem;
  position: absolute;
  right: .5rem;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  top: 0rem;
  z-index: 10;
}

.item-number {
  background-color: rgba( 0, 0, 0, .1 );
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 1rem;
  height: 2rem;
  left: .5rem;
  line-height: 2rem;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  top: .5rem;
  width: 2rem;
  z-index: 10;
}

.item-number:before {
/*  background-color: rgba( 204, 0, 0, .25 );*/
  border-radius: 50%;
  content: '';
  display: block;
  height: 3rem;
  left: -.5rem;
/*  outline: 1px dotted red;*/
  position: absolute;
  top: -.5rem;
  width: 3rem;
}

.diashow-container {
  height: 75vw;
  margin-bottom: .5rem;
  margin-left: -15px;
  overflow: hidden;
  position: relative;
  width: 100vw;
}

@media ( min-width: 620px ) {
  .diashow-container {
    height: calc( ( 100vw - 60px ) * .33 );
    margin-left: 0;
    width: 100%;
  }
}

@media ( min-width: 1080px ) {
  .diashow-container {
    height: 340px;
  }
}

.diashow {
  background-color: #333;
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 1rem;
  overflow-x: hidden;
  position: relative;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  width: 100%;
  z-index: 5;
}

.diashow > a,
.diashow > span,
.diashow > div {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-size: cover;
  display: block;
  height: 75vw;
  flex: 0 0 100%;
  width: 100vw;
}

@media ( min-width: 620px ) {
  .diashow > a,
  .diashow > span,
  .diashow > div {
    height: calc( ( 100vw - 60px ) * .33 );
    width: 100%;
  }
}

@media ( min-width: 1080px ) {
  .diashow > a,
  .diashow > span,
  .diashow > div {
    height: 340px;
  }
}


.diashow > a > img,
.diashow > span > img,
.diashow > div > img {
  display: none;
  visibility: hidden;
}


.diashow--prev,
.diashow--next {
  color: #fff;
  cursor: pointer;
  display: block;
  height: 2rem;
  font-size: 2rem;
  line-height: 32px;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  top: 10rem;
  width: 2rem;
  z-index: 10;
  
}

.diashow--prev {
  left: .5rem;
}
  
.diashow--next {
  right: .5rem;
}

.diashow--prev.inactive,
.diashow--next.inactive {
  cursor: default;
  opacity: .01;
}

.diashow--prev:before,
.diashow--next:before {
  color: #fff;
  content: '';
  cursor: pointer;
  content: '\f104';
  display: inline-block;
  height: 2rem;
  font-family: 'FontAwesome';
  font-size: 2rem;
  line-height: 32px;
  text-align: center;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  width: 2rem;
  z-index: 10;
}

.diashow--next:before {
  content: '\f105';
}

.noshow-container {
  height: 75vw;
  margin-bottom: .5rem;
  margin-left: -15px;
  overflow: hidden;
  position: relative;
  width: 100vw;
}

@media ( min-width: 620px ) {
  .noshow-container {
    height: calc( ( 100vw - 60px ) * .33 );
    margin-left: 0;
    width: 100%;
  }
}

@media ( min-width: 1080px ) {
  .noshow-container {
    height: 340px;
  }
}

.noshow {
  background-color: #333;
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 1rem;
  overflow-x: hidden;
  position: relative;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  width: 100%;
  z-index: 5;
}

.noshow > a,
.noshow > div {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-size: cover;
  display: block;
  height: 75vw;
  flex: 0 0 100%;
  width: 100vw;
}

@media ( min-width: 620px ) {
  .noshow > a,
  .noshow > div {
    height: calc( ( 100vw - 60px ) * .33 );
    width: 100%;
  }
}

@media ( min-width: 1080px ) {
  .noshow > a,
  .noshow > div {
    height: 340px;
  }
}


.noshow > a > img,
.noshow > div > img {
  display: none;
  visibility: hidden;
}

#merkzettel-liste .diashow--prev,
#merkzettel-liste .diashow--next {
  display: none;
}

@media ( max-width: 619px ) {
  #merkzettel--counter {
    position: absolute;
  }
}

#map_canvas {
  min-height: 339px;
  width: 100%;
}

/*@media ( min-width: 1080px ) {*/
@media ( min-width: 620px ) {
  #map_canvas.suchergebnisseite {
/*    height: calc( 100vh - 470px ) !important;*/
    height: calc( 100vh - 175px ) !important;
    width: calc( 50vw - 30px) !important;
  }
}

#floatmap {
  top: 10rem;
}

@media ( min-width: 620px ) and ( max-width: 768px ) {
  #floatmap {
    top: 1rem;
  }
  #map_canvas.suchergebnisseite {
    height: calc( 100vh - 2rem ) !important;
  }
}

#floatbox {
  padding-top: 82px;
  padding-top: 42px;
  top: 56px;
}

#floatbox .item-remember {
  color: #fa8708;
  right: 0;
  top: 2.5rem;
}

a.neutral,
p.neutral > a {
  color: #333;
}

.flag {
  background-repeat: no-repeat;
}

#filter--overlay {
  background-color: rgba( 0, 0, 0, .1 );
  bottom: 0;
  display: none;
/*  height: 100vh;*/
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
/*  width: 100vw;*/
  z-index: 185;
}

@media ( min-width: 1024px) {
  body.filterbar--open {
    height: 100%;
/*    overflow: hidden;*/
/*    overflow: auto;*/
    max-width: 100%;
/*    margin-left: 16px;*/
  }
  html.no-touchevents body.filterbar--open {
    overflow-y: scroll;
  }
}

body.filterbar--open #filter--overlay {
  display: block;
}


#filterbar {
/*  position: relative;*/
/*  opacity: .25;*/
  z-index: 90;
}

@media ( max-width: 1049px) {
  #filterbar {
    max-width: 100vw;
  }
}

@media ( max-width: 768px) {
  #filterbar {
    overflow-x: hidden;
  }
}

body.filterbar--open #filterbar {
  z-index: 190;
}

#filterbar p,
#filterbar li {
  font-size: .75rem;
  line-height: 1rem;
}

@media ( min-width: 768px ) {
  #filterbar {
    top: 51px;
  }
}

@media ( min-width: 960px ) {
  #filterbar {
    height: 84px;
  }
  #filterbar.objekt {
    height: 32px;
    margin-bottom: 10px;
  }
  #filterbar p,
  #filterbar li {
    font-size: .875rem;
    line-height: 1rem;
  }
}

#filter-wrapper {
  background-color: #fff;
  height: 104px;
  overflow: hidden;
  padding-bottom: 10px;
  padding-top: 30px;
  width: 100%;
  z-index: 20;
}

@media ( min-width: 620px ) {
  #filter-wrapper {
    padding-top: 10px;
  }
}

@media ( min-width: 960px ) {
  #filter-wrapper {
    height: 94px;
    position: absolute;
    width: calc( 100% - 30px );
  }
  #filterbar.objekt #filter-wrapper {
    height: 42px;
  }
}

#filter-wrapper:after {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  bottom: 0;
  content: '';
  display: block;
  height: 10px;
  position: absolute;
  width: calc( 100% - 30px );
}

@media ( min-width: 960px ) {
  #filter-wrapper:after {
    width: 100%;
  }
}

#filter--toggle {
  cursor: pointer;
  display: block;
  height: 100%;
  line-height: .75rem;
/*  outline: 1px dotted red;*/
  position: absolute;
  right: 1.5rem;
  right: 0;
  text-align: right;
  top: 5px;
  width: 100%;
  z-index: 21;
}

#filter--toggle--plus {
  display: none;
}

@media ( min-width: 620px ) {
  #filter--toggle--plus {
    cursor: pointer;
    display: block;
    height: 1rem;
/*    outline: 1px dotted red;*/
    margin-left: 12%;
    position: absolute;
    left: 1rem;
    text-align: right;
    top: 0px;
    width: 15%;
    z-index: 21;
  }
}

#filter--toggle--plus span,
#filter--toggle span {
  display: inline-block;
  font-size: .75rem;
  position: relative;
  top: -.25rem;
}

#filter--toggle span.more {}

#filter--toggle span.more { display: none; }
#filter--toggle span.less { display: none; }
#filter--toggle--plus span.less { display: none; }
body.filterbar--open #filter--toggle span.less { display: inline-block; }
body.filterbar--open #filter--toggle--plus span.less { display: inline-block; }

@media ( min-width: 620px ) {
  #filter--toggle span.more { display: inline-block; }
  #filter--toggle span.less { display: none; }
  body.filterbar--open #filter--toggle span.more { display: none; }
  body.filterbar--open #filter--toggle--plus span.more { display: none; }
}

#filter--toggle span.modify-filter {}

body.filterbar--open #filter--toggle {
  height: 1.5rem;
  width: 6rem;
}

body.filterbar--open #filter--toggle span.modify-filter {
  display: none;
}

#filter--toggle--plus:after,
#filter--toggle:after {
  color: #fa8708;
  content: '\f107';
  display: inline-block;
  font-family: 'FontAwesome';
  font-size: 1.5rem;
  height: 1.5rem;
/*  margin-left: .25rem;*/
  margin-right: 1.5rem;
  width: 1.5rem;
}

body.filterbar--open #filter-wrapper {
  box-shadow: 0 3px 5px rgba( 0, 0, 0, .25 );
  height: auto;
}

body.filterbar--open #filterbar p,
body.filterbar--open #filterbar li {
  line-height: 1.5rem;
}


@media ( min-width: 960px ) {
  body.filterbar--open #filterbar p,
  body.filterbar--open #filterbar li {
    line-height: 1rem;
  }
}

@media ( min-width: 620px ) {
  #filter--toggle span.modify-filter {
    display: none;
  }
}

body.filterbar--open #filter--toggle--plus:after,
body.filterbar--open #filter--toggle:after {
  content: '\f106';
}
/*
@media (min-width: 960px) {
  html.no-touchevents #filterbar:hover #filter-wrapper {
    height: auto;
    box-shadow: 0 3px 5px rgba( 0, 0, 0, .25 );
  }
  
  html.no-touchevents #filterbar:hover #filter--toggle:after {
    content: '\f106';
  }
}
*/
@media ( max-width: 619px ) {
  #filter-wrapper {
    height: 32px;
  }
  body.filterbar--open #filter-wrapper {
    height: auto;
  }
  #filter-wrapper > .colgrp {
    display: none;
  }
  body.filterbar--open #filter-wrapper > .colgrp {
    display: flex;
  }
  #filter--toggle {
    width: 100%;
  }
}

/*@media ( max-width: 619px ) {*/
@media ( max-width: 768px ) {
  #querybar,
  #filterbar {
    position: relative;
  }
}


#filter-wrapper > .colgrp > .col {
/*  background-color: rgb(254, 254, 239);*/
  position: relative;
}

#filter-wrapper > .colgrp > .col:not(:first-of-type) h4 span {
  display: block;
  white-space: nowrap;
}

@media (min-width: 960px) {
  #filter-wrapper > .colgrp > .col:not(:first-of-type) h4 span {
    display: inline-block;
  }
}

#filter-wrapper > .colgrp > .col:not(:first-of-type) h4 span.hl {
  color: #0070be;
  font-weight: 500;
}

.filter-subgroup {
  display: none;
}

body.filterbar--open .filter-subgroup {
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-size: .75rem;
  font-weight: 500;
/*  margin-left: 1.25rem;*/
  margin-top: 1rem;
  text-transform: uppercase;
  
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#filter-wrapper > .colgrp > .col:not(:last-of-type):after {
  border-left: 1px solid #ccc;
  content: '';
  height: 100%;
  position: absolute;
  right: -7px;
  top: 0;
  width: 1px;
}

.white-cover {
  position: relative;
}

.white-cover:before {
  background-color: #fff;
  content: '';
  display: block;
  height: 51px;
  position: absolute;
  z-index: -1;
  width: 100%;
}

.page--search.white-cover:before {
/*  height: 93px;*/
}

@media ( min-width: 1080px ) {
  .white-cover:before {
    margin-left: calc( ( 100vw - 1080px ) / 2 * -1 );
    width: 100vw;
  }
}


.white-cover-big:before {
/*  height: 145px;*/
  height: 60px;
}

.white-cover-filter-big:before {
  height: 94px;
  margin-left: calc( ( 100vw - 1050px ) / 2 * -1 );
  z-index: -1;
}

body.filterbar--open .white-cover-big:before,
body.filterbar--open .white-cover-filter-big:before {
  display: none !important;
}

@media ( max-width: 1079px ) {
  .white-cover:before {
    display: none;
  }
}

#umgebung {
  font-size: .875rem;
}

#umgebung p {
  margin-bottom: 0;
}

#umgebung .ueberkategorie {
  font-size: .75rem;
  margin-bottom: 1px;
  margin-left: -7px;
  text-transform: uppercase;
}

@media ( min-width: 960px ) {
  #umgebung .ueberkategorie {
    margin-bottom: 5px;
  }
}

#umgebung ul {
/*  padding-left: 10px;*/
}

#weitere-filter,
#preiskategorien,
#unterkunftsarten {
  font-size: .875rem;
}

#weitere-filter h4,
#preiskategorien h4,
#unterkunftsarten h4 {
  font-size: .75rem;
  margin-bottom: 5px;
  text-transform: uppercase;
}

#weitere-filter ul li,
#preiskategorien ul li,
#unterkunftsarten ul li {
/*  display: inline-block;*/
}

#weitere-filter ul li:not(:nth-of-type(-n+6)),
#unterkunftsarten ul li:not(:nth-of-type(-n+6)) {
/*  display: none;*/
}

#weitere-filter ul li:not(:first-of-type) label,
#preiskategorien ul li:not(:first-of-type) label,
#unterkunftsarten ul li:not(:first-of-type) label {
/*  margin-left: 8px;*/
}

#weitere-filter ul li input,
#preiskategorien ul li input,
#unterkunftsarten ul li input {
  margin-right: 4px;
}

#preiskategorien label {
  font-weight: 500;
}

li label {}

#filterbar label input[type="checkbox"] {
  display: none;
}

#filterbar label input[type="checkbox"] + span {
  color: #333;
}

#filterbar label input[type="checkbox"]:checked + span {
/*  color: #0070be;*/
}

#filterbar label input[type="checkbox"] + span:before {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  content: '';
  display: inline-block;
  height: 13px;
  margin-right: 6px;
  margin-top: 1px;
  padding: 0;
  width: 13px;
}

#filterbar label input[type="checkbox"]:checked + span:before {
  background-color: #0070be;
  border: 1px solid #0070be;
}

#filterbar #unterkunftsarten span.filter-subgroup:before {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  content: '';
  display: inline-block;
  height: 13px;
  margin-right: 10px;
  margin-top: 1px;
  padding: 0;
  width: 13px;
}

#filterbar #unterkunftsarten span.filter-subgroup.check--all:before {
  background-color: #0070be;
  border: 1px solid #0070be;
}

#filterbar #unterkunftsarten span.filter-subgroup.check--some:before {
  background-color: #ccc;
}

#filterbar #unterkunftsarten span a {
  color: #333;
  cursor: default;
}

#filterbar #unterkunftsarten span a:hover {
  text-decoration: none;
}

.banner-container {
  min-height: 180px;
  position: relative;
}

.banner {
  background-color: #fff;
  display: none;
  left: 0;
  position: absolute;
  top: 0;
  z-index: 0;
}

.banner:first-child {
  display: block;
}

.banner.next {
  z-index: 5;
}

.banner.selected {
  z-index: 10;
}

.banner > img {
  width: 100%;
}

.grey-cover .banner {
  background-color: #e5f0f8;
  background-color: #f0f0f0;
  background-color: #e5f0f8;
}

.grey-cover {
  background-color: #e5f0f8;
  background-color: #f0f0f0;
  background-color: #e5f0f8;
  margin-bottom: 0;
  padding-top: 1rem;
  position: relative;
}

.grey-cover.objekt {
  margin-top: 2rem;
  padding-top: 0;
}

.grey-cover:before {
  background-color: #e5f0f8;
  background-color: #f0f0f0;
  background-color: #e5f0f8;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -1;
  width: 100%;
}

@media ( min-width: 1080px ) {
  .grey-cover:before {
    margin-left: calc( ( 100vw - 1080px ) / 2 * -1 );
    width: 100vw;
  }
}

.objekte-des-tages {
  padding-top: 2rem;
}

.back-link {
  display: inline-block;
  font-size: 1rem;
  margin-left: 1rem;
  text-align: right;
  float: right;
  font-weight: bold;
}

.carroussell {
/*  -webkit-backdrop-filter: grayscale() blur(4px); /* Safari 9+ */*/
/*  backdrop-filter: grayscale() blur(4px); /* Chrome and Opera */*/
  display: block;
  position: relative;
/*  transition: height .3s ease-in-out, width .3s ease-in-out;*/

}

.carroussell.carroussell--open {
  background-color: rgba( 0, 0, 0, .9 );
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 99;
}

.carroussell--toggle {
  color: #fff;
  display: block;
  position: absolute;
}

.carroussell:not(.carroussell--open) .carroussell--toggle {
  cursor: zoom-in;
  height: 100%;
  width: 100%;
  z-index: 1;
}

.carroussell:not(.carroussell--open) .carroussell--toggle span {
  background-color: rgba( 255, 255, 255, .95 );
  bottom: .5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-size: .75rem;
  font-weight: 500;
  line-height: 1rem;
  left: .5rem;
  padding: .5rem 1rem;
  position: absolute;
  text-align: left;
  z-index: 1;
}

.carroussell.carroussell--open .carroussell--toggle {}

.carroussell.carroussell--open .carroussell--toggle i {
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  height: 2rem;
  line-height: 2rem;
  position: fixed;
  right: 1rem;
  text-align: center;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  top: .5rem;
  width: 2rem;
  z-index: 101;
}

.carroussell--toggle i {
  display: none;
}

.carroussell--open .carroussell--toggle i {
  display: block;
}

.carroussell--open .carroussell--toggle span {
  display: none;
}

.info_box > img,
.carroussell-image {
/*  background-color: #e5f0f8;*/
  background-color: transparent;
  background-color: #e5f0f8;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  background-size: cover;
/*  box-shadow: 0 0 5px rgba( 0, 0, 0, .25 );*/
/*  border-bottom: 1px solid #fff;*/
  margin: 0 auto;
  height: calc( ( 100vw - 30px ) * 2 / 3 );
  max-height: calc( 100vh - 160px );
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
/*  transition: height .3s ease-in-out, width .3s ease-in-out;*/
  width: calc( 100vw - 30px );
}


/*
@media ( min-width: 960px ) {
  .carroussell-image {
    height: calc( ( 100vw - 390px ) * 2 / 3 );
    width: calc( 100vw - 390px );
  }
}
*/

@media ( min-width: 1080px ) {
  .info_box > img,
  .carroussell-image {
    height: 700px;
    width: 100%;
  }
}


.carroussell--open .carroussell-image {
  background-color: transparent;
  background-size: contain;
  cursor: pointer;
  height: 90vh;
  margin-top: 3rem;
  width: 90%;
  max-width: 1920px;
}

@media ( orientation: landscape ) and ( max-height: 414px ) {
  .carroussell-image {
    max-height: calc( 100vh - 40px );
  }
  .carroussell--open .carroussell-image {
    height: 65vh;
  }
}

h1#image-title {
  color: #fff;
  display: none;
  font-size: 1rem;
  text-align: center;
  top: -2rem;
  position: absolute;
  width: 100vw;
}

.carroussell--open h1#image-title {
  display: block;
}

.carroussell-thumbs {
/*  box-shadow: 0 0 5px rgba( 0, 0, 0, .25 );*/
  display: none;
  position: fixed;
}

.carroussell--open .carroussell-thumbs {
/*  background-color: #fff;*/
  bottom: 1rem;
  display: block;
  left: 0;
  margin: 0;
  width: 10000px;
}

@media ( orientation: landscape ) and ( max-height: 414px ) {
  .carroussell--open .carroussell-thumbs {
    bottom: -1rem;
  }
}

.carroussell-thumb-list {
  display: block;
  height: 75px;
  float: left;
  left: 0;
/*  overflow-x: scroll;*/
  overflow-y: hidden;
  position: relative;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out, -moz-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -moz-transform 0.3s ease-out, -o-transform 0.3s ease-out;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  white-space: nowrap;
}

@media ( min-width: 960px ) {
  .carroussell-thumb-list {
    overflow-x: hide;
  }
}

.carroussell-thumb-list li {
  display: list-item;
  float: left;
  opacity: .5;
}

.carroussell-thumb-list li.active {
  opacity: 1;
}

html.no-touchevents .carroussell-thumb-list li:hover {
  opacity: 1;
} 

.carroussell-thumb-list li a {
  display: block;
  height: 75px;
}

.carroussell-thumb-list li a img {
  height: 75px;
  margin: 0 .125rem;
}

.carroussell--prev,
.carroussell--next {
  color: #fff;
  cursor: pointer;
  display: none;
  height: 100%;
  font-size: 4rem;
  position: absolute;
  text-align: center;
  top: 0;
  width: 4rem;
  z-index: 10;
}

.carroussell--open .carroussell--prev,
.carroussell--open .carroussell--next {
  display: block;
}

.carroussell--prev {
  left: 0rem;
}

.carroussell--next {
  right: 0rem;
  width: calc( 100% - 3rem );
}

.carroussell--prev.inactive,
.carroussell--next.inactive {
  cursor: default;
  opacity: .01;
}

.carroussell--prev i,
.carroussell--next i  {
  display: inline-block;
  font-family: 'FontAwesome';
  font-size: 4rem;
  height: 4rem;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 5px rgba( 0, 0, 0, .25 );
  top: 33vh;
  width: 4rem;
}

.carroussell--prev i {
  left: 0rem;
}
.carroussell--next i {
  right: 0rem;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.sticky:before,
.sticky:after {
  content: '';
  display: table;
}

#objektinformationen {
/*  outline: 1px dotted green;*/
  margin-top: 92px;
  margin-top: 70px;
  margin-top: 30px;
  position: relative;
}


section.einzelbox {
  position: relative;
  margin-bottom: 0;
}

section.einzelbox .col {}

/*
section.einzelbox:last-of-type {
  min-height: 70vh;
}
*/
  
.named-anchor {
  display: block;
}

@media ( min-width: 960px ) {
  .named-anchor {
    height: 51px;
    height: 80px;
    height: 12px;
  }
  
  .named-anchor.first {
    height: auto;
  }

  .named-anchor.second {
/*    height: auto;*/
  }
}

.menue_box {
  border-bottom: 1px solid #cce2f2;
  
}

@media ( min-width: 960px ) {
  .menue_box {
    top: 60px;
    z-index: 11;
  }
  .menue_box.first {
    width: calc( 66.66% - 10px );
  }
}

section.einzelbox:not(.nocols) .menue_box {
  /*
  margin-left: 15px;
  margin-right: 15px;
  */
}

.menue_box > ol.menue {
  background-color: #e5f0f8;
  display: flex;
  flex-wrap: nowrap;
  font-size: .875rem;
  justify-content: space-around;
  list-style: none inside;
/*  overflow-x: scroll;*/
  white-space: nowrap;
  width: 100%;
}

.menue_box > ol.menue li strong,
.menue_box > ol.menue li a {
  display: block;
  padding: .5rem;
}

.menue_box > ol.menue li a {
  color: #333;
}

.menue_box > ol.menue li.active a {
  color: #0070be;
  font-weight: 500;
}

.menue_box:not(.sticky) {
  display: none;
}

@media ( max-width: 620px ) {
  .menue_box.sticky > ol.menue li {
    display: none;
  }
  
  .menue_box.sticky > ol.menue li:last-of-type,
  .menue_box.sticky > ol.menue li.active,
  .menue_box.sticky > ol.menue li.active + li {
    display: block;
  }
  
  .menue_box.sticky > ol.menue li.active + li:not(:last-of-type) a:after {
    content: '\f105';
    font-family: 'FontAwesome';
    margin-left: .25rem;
  }
  .menue_box:not(.sticky) {
    border-bottom: 0;
    display: block;
  }
  .menue_box:not(.sticky) > ol.menue {
    background-color: transparent;
    display: block;
  }
  .menue_box:not(.sticky) > ol.menue li a {
    display: inline-block;
    padding: .25rem;
  }
  
  .menue_box:not(.sticky) > ol.menue li:before {
    color: #0070be;
    content: '– ';
    display: inline-block;
    font-weight: 500;
  }

}

.info_box {
  margin-top: 2rem;
/*  overflow: hidden;*/
}

.info_box h1 {
  color: #0070be;
  margin-bottom: .5rem;
}

.info_box .col > h2 {
  color: #0070be;
}

.info_box h4 {
  margin-bottom: .5rem;
  text-transform: uppercase;
}

.info_box h4 span {
  color: #999;
}

.info_box .col > h3 {
  color: #333;
/*  text-transform: uppercase;*/
}

/* BEGIN BELEGUNGSPLAN */

td.mod10_yearname {
  display:none;
}

table.mod10_month {
  margin-bottom: 5px;
  margin-right: 5px;
  width: 45%;
}

td.mod10_monthname {
  border-bottom: 1px solid #ccc;
  font-size: .875rem;
  font-weight: 500;
  margin: 1px;
  padding: 3px;
  text-align: center;
  text-transform: uppercase;
}

td.mod10_weeknumtitle {
  color: #999;
  font-size: .75rem;
  font-weight: 500;
  margin: 1px;
  padding: 3px;
  text-align: right;
}

td.mod10_weeknum {
  font-size: .75rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.mod10_dayname {
  font-size: .75rem;
  font-weight: 500;
  margin: 0px;
  padding: 3px;
  text-align: center;
  text-transform: uppercase;
}

td.mod10_dayname:last-of-type {
  color: #c00;
}

td.mod10_sunday {
  background-color: #a4e444;
  border: 1px solid #fff;
  color: rgb(0,0,0);
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.mod10_saturday {
  background-color: #a4e444;
  border: 1px solid #fff;
  color:rgb(0,0,0);
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.mod10_nomonthday {
  border: 1px solid #fff;
  background-color: #fff;
  color: #fff;
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.mod10_monthday {
  background-color: #a4e444;
  border:1px solid #fff;
  color: rgb(0,0,0);
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.b {
  background-color: #c00;
  border: 1px solid #fff;
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.a {
  background-color: #fa8708;
  border: 1px solid #fff;
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
}

td.c {
  background:url('../img/bkal_anreise.jpg') no-repeat center center;
  border: 1px solid #fff;
  font-size: .875rem;
  margin: 0px;
  padding: 3px;
  text-align: right;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

td.d {
  font-size: .875rem;
  margin:0px;
  border:1px solid #fff;
  padding:3px;
  background:url('../img/bkal_abreise.jpg') no-repeat center center;
  text-align: right;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

td.mod10_todayc {
  background:url('../img/bkal_anreise.jpg') no-repeat center center;
  border: 1px solid #fff;
  font-size: .875rem;
  font-weight: 500;
  margin: 0px;
  padding: 3px;

  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
td.mod10_todayd {
  font-weight: 500;
  font-size: .875rem;
  margin: 0px;
  border: 1px solid #fff;
  padding: 3px;
  background:url('../img/bkal_abreise.jpg') no-repeat center center;

  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

td.mod10_today {
  background-color: #a4e444;
  font-size: .875rem;
  font-weight: 500;
  text-align:center;
}

td.mod10_todaya {
  background-color: #fa8708;
  border: 1px solid #fff;
  font-size: .875rem;
  font-weight: 500;
  padding: 3px;
  text-align:right;
}
td.mod10_todayb {
  background-color: #c00;
  font-size: .875rem;
  font-weight: 500;
  text-align: center;
}

/* END BELEGUNGSPLAN */


/* BEGIN KONTAKT */

td textarea,
td input {
  background-color: #e5f0f8;
  padding: 6px 3px;
}

/* END KONTAKT */


#infolist {
  margin-bottom: 1rem;
}

#infolist li {
  font-size: 1rem;
  line-height: 1.5rem;
  padding-left: 1rem;
  position: relative;
}

#infolist li span {
  display: inline-block;
  width: 6.25rem;
}

#infolist li:before {
  color: #0070be;
  content: '– ';
  display: inline-block;
  font-weight: 500;
  left: 0;
  position: absolute;
}

button,
.btn {
  background-color: #fa8708;
  border-radius: .25rem;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: .75rem;
  font-weight: 500;
  padding: .5rem;
  -webkit-appearance: none;
}

.btn--email {
  background-color: #c00;
}

.togglebox--toggle {
  display: none;
}

.togglebox--btn span:last-of-type {
  display: none;
}

.togglebox--toggle:checked ~ .togglebox--btn span:last-of-type {
  display: inline-block;
}

.togglebox--toggle:checked ~ .togglebox--btn span:first-of-type {
  display: none;
}

.togglebox--hidden {
  display: none;
  margin-top: 2rem;
}

.togglebox--toggle:checked ~ .togglebox--hidden {
  display: block;
}

#box_preise .togglebox--btn {
  margin-left: .5rem;
}


.preisinfo {
  margin-top: 1rem;
}

.infotable td .btn {
  max-width: 200px;
  white-space: nowrap;
  width: 100%;
}

td p {
/*  font-size: .875rem;*/
  font-size: 1rem;
}

ul.wide-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1rem;
  width: 100%;
}

ul.wide-list li {
  flex: 0 0 33.33%;
  width: 33.33%;
}

ul.wide-list li:before {
  color: #0070be;
  content: '– ';
}

.contentblock {
  margin-bottom: 2rem;
}

table {
  border-collapse: collapse;
}

table.infotable {
/*  outline: 1px dotted green;*/
}

table.infotable td {
  padding-right: .5rem;
}

table.infotable td ul {
  margin: 0 0 15px 0;
}

ul.comma-list li {
  display: inline-block;
}

ul.comma-list li:not(:last-of-type):after {
  content: ', ';
}


table.datatable tr:nth-child(odd) {
  background-color: #e5f0f8;
}

table.datatable td {
  border-top: 1px solid #ccc;
}

table.datatable td p {
  margin: .5rem .25rem;
}

table.datatable td p.data {
  font-weight: 500;
  text-align: right;
}

table.pricetable {
  border-bottom: 1px solid #ccc;
  margin-bottom: 2rem;
  width: 100%;
}

table.pricetable th,
table.pricetable td {
  border-top: 1px solid #ccc;
}

table.pricetable th p,
table.pricetable td p {
  font-size: .875rem;
  margin: .5rem .25rem;
  text-align: center;
}

table.pricetable td p.first {
  text-align: right;
}

table.pricetable p.nowrap {
  white-space: nowrap;
}

table.pricetable td p span.zusatz {
  font-size: .6875rem;
}

table.pricetable tr:nth-child(even) {
  background-color: #e5f0f8;
}

.featurebox {
/*  display: none;*/
}


/** /
.objekt-info > h4:first-of-type {
  float: right;
}
/**/


.miniblocks {
  display: flex;
  flex-wrap: wrap;
  margin-left: -.5rem;
  width: calc( 100% + 1rem );
}

.miniblock {
  border: 1px solid #ccc;
  border: 1px solid #cce2f2;
  background-color: #e5f0f8;
  flex: 0 0 calc( 100% - 1rem );
  margin: 0 .5rem 1rem .5rem;
  padding: .5rem .5rem 1rem .5rem;
}

@media ( min-width: 414px ) {
  .miniblock {
    flex: 0 0 calc( 50% - 1rem );
  }
}

@media ( min-width: 960px ) {
  .miniblock {
    flex: 0 0 calc( 33.33% - 1rem );
  }
}

.miniblock h3 {
  font-size: 1rem;
  margin-bottom: .5rem;
}

.miniblock li {
  font-size: .875rem;
  padding-left: 1rem;
  position: relative;
}

.miniblock li:before {
  color: #0070be;
  content: '– ';
  display: inline-block;
  left: 0;
  position: absolute;
}

.miniblock ul.miniblock--limit li {
  display: none;
}

.miniblock ul.miniblock--limit li:nth-child(1),
.miniblock ul.miniblock--limit li:nth-child(2),
.miniblock ul.miniblock--limit li:nth-child(3),
.miniblock ul.miniblock--limit li:nth-child(4),
.miniblock ul.miniblock--limit li:nth-child(5) {
  display: block;
}

.miniblock span.miniblock--more {
  color: #0070be;
  cursor: pointer;
  font-size: .875rem;
  font-weight: 400;
  padding-left: 1rem;
  position: relative;
}

#item-nav {
  margin-top: -20px;
  margin-bottom: 0;
}

.item-nav {
  background-color: #fa8708;
  border-radius: 4px;
  color: #333;
  padding: .25rem;
  text-align: center;
}

.item-nav span {
  font-size: .75rem;
  padding: .5rem;
}

@media ( max-width: 767px ) {
  .item-nav .not-mobile {
    display: none;
  }
}

.item-nav span a {
  color: #fff;
}

.item-nav .btn {
  background-color: #fff;
  color: #fa8708;
}

.ui-dialog {
  background-color: #e5f0f8;
  border: 1rem solid #e5f0f8;
  border-radius: 2px;
  overflow: scroll;
}

.ui-dialog > * {
  padding: 1rem;
}

#anfrage {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}

.ui-dialog-titlebar {}

.ui-dialog input {
  background-color: #fff;
}

.ui-dialog textarea {
  background-color: #fff;
  min-height: 8rem;
  width: 100%;
}

.ui-datepicker {
  background-color: #fff;
  box-shadow: 0 0 5px rgba( 0, 0, 0, .5 );
  padding: 1rem;
}

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

.ui-datepicker-month:before {
  content: 'Anreise';
  display: block;
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 2px;
  margin-top: -9px;
  text-transform: uppercase;
}

#ui-datepicker-div.zeitraum-bis .ui-datepicker-month:before {
  content: 'Abreise';
}

.ui-datepicker-headline {
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 2px;
  margin-top: -9px;
  text-transform: uppercase;
}

.ui-datepicker-next,
.ui-datepicker-prev {
  background-color: #fa8708;
  border-radius: 50%;
  color: #fff;
  height: 1rem;
  line-height: 1rem;
  position: absolute;
  text-align: center;
  width: 1rem;
}

.ui-datepicker-next {
  right: 0;
}

.ui-datepicker th {
  font-size: .75rem;
  font-weight: 500;
  padding-top: .5rem;
  text-transform: uppercase;
}

.ui-datepicker td {
  padding: .25rem;
  text-align: right;
}

.ui-dialog-titlebar-close {
  float: right;
}

.ui-datepicker-prev {
  cursor: pointer;
  float: left;
  font-size: .75rem;
  font-weight: 500;
}

.ui-datepicker-next {
  cursor: pointer;
  float: right;
  font-size: .75rem;
  font-weight: 500;
}

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

.ui-widget-overlay {
  background-color: rgba( 0, 0, 0, .9 );
  left: 0;
  position: absolute;
  top: 0;
}

.ui-icon-closethick:after {
  content: '\f00d';
  font-family: 'FontAwesome';
  margin-left: .5rem;
}

#ui-datepicker-div {
  display: none;
  z-index: 999 !important;
}

.ui-datepicker-today {
  background-color: #fa8708;
  border-radius: 5px;
}

.ui-datepicker-today a {
  color: #fff;
  font-weight: 500;
}

#anfrage_schliessen {
  float: right;
/*  margin-right: 2rem;*/
}

.page--faq {}

p.to-top small {
  display: block;
  text-align: right;
}

.textpage {
  margin-bottom: 2rem;
  margin-top: 2rem;
}

.textpage table tr td p {
  padding-right: 1rem;
  padding-bottom: .5rem;
}

.textpage .col ul {
  margin-bottom: 2rem;
}

.textpage .col li {
  margin-left: 1rem;
  position: relative;
}

.textpage .col li > h3 {
  margin-bottom: .25rem;
}

.textpage .col li span {
  display: inline-block;
  font-weight: 500;
  width: 4rem;
}


.textpage .col li:before {
  content: '–';
  font-weight: 500;
  left: -1rem;
  position: absolute;
}

.textpage.page--faq .col li:before,
.textpage.page--leistungen-und-preise .col li:before,
.textpage.page--ueber-uns .col li:before,
.textpage.page--anmelden .col li:before {
  top: .125rem;
}


.input-item {
  margin-bottom: .5rem;
  min-height: 1.25rem;
  position: relative;
}

.input-item .label,
.input-item label {
  display: block;
  font-size: .75rem;
  font-weight: 500;
  margin-bottom: .25rem;
}


.input-item .content {
  display: block;
}

.input-item input[type="text"],
.input-item input[type="password"],
.input-item input[type="tel"],
.input-item input[type="email"],
.input-item input[type="number"],
select {
  border: 1px solid #d4e0e7;
  padding: .5rem;
  width: 100%;
}

.input-item input[type="text"].input_error,
.input-item input[type="password"].input_error,
.input-item input[type="tel"].input_error,
.input-item input[type="email"].input_error,
.input-item input[type="number"].input_error {
  border: 1px solid #c00;
  background-color: #fee;
}

.input-item input.small[type="text"],
.input-item input.small[type="password"],
.input-item input.small[type="tel"],
.input-item input.small[type="email"],
.input-item input.small[type="number"],
select {
  width: 50%;
  width: 25%;
}

.input-item textarea {
  border: 1px solid #d4e0e7;
  min-height: 8rem;
  padding: .25rem;
  width: 100%;
}

.page--login .content,
.page--anmelden .content,
.page--leistungen-und-preise .content,
.page--vermieten .content {
  margin-bottom: 1rem;
}

.box {
  background-color: #e5f0f8;
  margin-bottom: 1rem;
  padding: 1rem;
}

.box table {
  margin-bottom: 1rem;
}

.required {
  color: #c00;
}

.hidden {
  display: none !important;
}

div.form-div {
  border-bottom: 1px solid #f0f0f0;
  margin-bottom: 2rem;
/*  outline: 1px dotted green;*/
  padding-bottom: 2rem;
}

div.form-div table {
  margin-bottom: 1rem;
}

div.form-div td {
  padding-right: 1rem;
}

@media( max-width: 374px ) {
  div.form-div td {
    font-size: .75rem;
  }
}

div.form-div td input[type="text"],
div.form-div td input[type="password"],
div.form-div td input[type="tel"],
div.form-div td input[type="email"],
div.form-div td input[type="number"],
select {
  margin-bottom: .5rem;
  width: 180px;
}


.products_listpoint .weiterlesen {
  color: #fa8708;
  cursor: pointer;
}



.highlight_box_links {min-width:700px; margin:15px;margin-top:0px;padding:15px;background-image:url(../img/neu/trans.png);border:2px solid #ffffff;border-radius:15px}

.highlight_box2 {margin-bottom:15px;margin-top:0px;padding:15px;background-image:url(../img/neu/trans.png);border:2px solid #ffffff;border-radius:15px}
.border_white {border-bottom:2px solid #ffffff;margin-bottom:15px;padding-bottom:30px;}

.stop {clear:both;}



/*h2.products  {margin-top:10px;font-size:12pt;background-color:#fafafa;border-bottom:1px solid #228630;border-top:1px solid #228630;}*/
.list_top {font-weight:bold;}
div.list_top {}
/*h3.list_top,h2.list_top {padding:3px;font-size:10pt;background-color:#cccccc;border-bottom:1px solid #505050;border-top:1px solid #505050;margin-bottom:5px;}*/
.list_elements {margin-bottom:5px;clear:both;padding-left:5px;padding-bottom:5px;border-bottom:1px solid #909090;}
.list_elements_end {margin-bottom:5px;clear:both;padding-left:5px;padding-bottom:5px;}
.list_elements_title {width:50%;padding-right:5px;float:left;font-weight:normal;}
.list_elements_info {text-align:center;width:25%;padding-right:5px;float:left;font-weight:normal;}

ul.products_listpoint  {list-style:disc;padding-left:15px;}
li.products_listpoint  {margin-top:5px;line-height:1.3;}

li.products_listpoint > strong, p.list_elements_info > strong {color:#ca1600;}

@media( max-width: 415px ) {
  .list_elements_info,
  .list_elements_title {
    font-size: .75rem;
    width: 33.33%;
  }
}

.block-toggle {
  cursor: pointer;
  display: inline-block;
  margin-bottom: 1rem;
  padding-left: .75rem;
  position: relative;
}

.block-toggle:before {
  color: #fa8708;
  content: '\f105';
  display: inline-block;
  font-family: 'FontAwesome';
  font-size: 1rem;
  left: 0;
  line-height: 1rem;
  margin-right: .25rem;
  position: absolute;
}

.block-toggle.block-toggle-on:before {
  content: '\f107';
  left: -.125rem;
}

.block-toggle-content {
  display: none;
}

.block-toggle.block-toggle-on ~ .block-toggle-content {
  display: block;
}

.col > ul {
  margin-bottom: 2rem;
}

.col > ul > li {
  margin-left: 1rem;
  position: relative;
}

.col > ul > li:before {
  content: '–';
  font-weight: 500;
  left: -1rem;
  position: absolute;
}

#filterbar .col:not(:first-of-type) > ul > li {
  margin-left: 0;
}

#filterbar .col:not(:first-of-type) > ul > li:before {
  content: '';
  left: 0;
}

.optioncontainer {
/*  height: 100%;*/
  overflow: hidden;
}

body.filterbar--open #filterbar .col > .optioncontainer {
  margin-bottom: 0;
  max-height: calc( 100vh - 220px );
  overflow-y: auto;
  overflow-x: hidden;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.info-grp {
  margin-bottom: .5rem;
  position: relative;
}

.info-label {
  font-weight: 500;
  display: block;
}

.info-content {
  display: block;
}

@media ( min-width: 415px ) {
  .info-grp {
    display: flex;
  }
  .info-label {
    flex: 0 0 120px;
  }
}

.overlay {
  background-color: rgba( 0, 0, 0, .5 );
  height: 100vh;
  left: 0;
  overflow: hidden;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 1000;
}

.overlay .message {
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 0 5px rgba( 0, 0, 0, . 5 );
  max-width: 280px;
  margin: 40vh auto;
  padding: 20px 20px 10px 20px;
}

.overlay .message .message--close {
  float: right;
}

.flag_clear {
  background-color: transparent;
  background-image: url(/csd/img/marker.png);
  background-size: 25px 40px;
  background-repeat: no-repeat;
}

.btn_disabled {
  background: #ddd;
  border: 1px solid #ccc;
  color: #888;
  cursor: not-allowed;
  text-align: center;
  
  -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

.cc_banner-wrapper {
  opacity: 0.65;
  margin-bottom: 10px;
}