/*! afontgarde - v0.1.4 - 2014-08-04
 * https://github.com/filamentgroup/a-font-garde
 * Copyright (c) 2014 Filament Group c/o Zach Leatherman
 * MIT License */

.icon-fallback-text .icon {
	display: none;
}
/*
ADDED BY afontgarde.js:
Note: sure .FONT_NAME comes first for adjoining classes bug in IE7.

.FONT_NAME.supports-generatedcontent .icon-fallback-text .icon {
	display: inline-block;
}*/

.icon-fallback-img .text,
.icon-fallback-glyph .text/*,
ADDED BY afontgarde.js:
Note: sure .FONT_NAME comes first for adjoining classes bug in IE7.

.FONT_NAME.supports-generatedcontent .icon-fallback-text .text*/ {
	/* visually hide but accessible (h5bp.com) */
	clip: rect(0 0 0 0);
	overflow: hidden;
	position: absolute;
	height: 1px;
	width: 1px;
}

/* Careful, don’t use adjoining classes here (IE7) */
.supports-no-generatedcontent .icon-fallback-glyph .text {
	clip: auto;
	overflow: visible;
	position: static;
	height: auto;
	width: auto;
}
/*
ADDED BY afontgarde.js:
.FONT_NAME .icon-fallback-glyph .icon:before {
	// inherit for font-size, line-height was not working on IE8
	font-size: 1em;
	font-size: inherit;
	line-height: 1;
	line-height: inherit;
}*/
.icon-fallback-img .icon {
	display: inline-block;
}
.icon-fallback-img .icon:before {
	content: "";
}
/* The img fallback version is not as reliable since it does not check to make sure the fontloaded font has loaded. If we did add the .fontloaded class, it would unnecessarily request the fallback image. */
.supports-fontface.supports-generatedcontent .icon-fallback-img .icon {
	background-image: none;
}







/*
 * Swiper 2.7.0
 * Mobile touch slider and framework with hardware accelerated transitions
 *
 * http://www.idangero.us/sliders/swiper/
 *
 * Copyright 2010-2014, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 *
 * Licensed under GPL & MIT
 *
 * Released on: August 30, 2014
*/
/* ===============================================================
Basic Swiper Styles 
================================================================*/
.swiper-container {
  margin:0 auto;
  position:relative;
  overflow:hidden;
  -webkit-backface-visibility:hidden;
  -moz-backface-visibility:hidden;
  -ms-backface-visibility:hidden;
  -o-backface-visibility:hidden;
  backface-visibility:hidden;
  /* Fix of Webkit flickering */
  z-index:1;
}
.swiper-wrapper {
  position:relative;
  width:100%;
  -webkit-transition-property:-webkit-transform, left, top;
  -webkit-transition-duration:0s;
  -webkit-transform:translate3d(0px,0,0);
  -webkit-transition-timing-function:ease;
  
  -moz-transition-property:-moz-transform, left, top;
  -moz-transition-duration:0s;
  -moz-transform:translate3d(0px,0,0);
  -moz-transition-timing-function:ease;
  
  -o-transition-property:-o-transform, left, top;
  -o-transition-duration:0s;
  -o-transform:translate3d(0px,0,0);
  -o-transition-timing-function:ease;
  -o-transform:translate(0px,0px);
  
  -ms-transition-property:-ms-transform, left, top;
  -ms-transition-duration:0s;
  -ms-transform:translate3d(0px,0,0);
  -ms-transition-timing-function:ease;
  
  transition-property:transform, left, top;
  transition-duration:0s;
  transform:translate3d(0px,0,0);
  transition-timing-function:ease;

  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.swiper-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -moz-transition-timing-function: ease-out;
  -ms-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  float: left;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
}
.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
}

/* ===============================================================
Your custom styles, here you need to specify container's and slide's
sizes, pagination, etc.
================================================================*/
.swiper-container {
  /* Specify Swiper's Size: */

  /*width:200px;
  height: 100px;*/
}
.swiper-slide {
  /* Specify Slides's Size: */
  
  /*width: 100%;
  height: 100%;*/
}
.swiper-slide-active {
  /* Specific active slide styling: */
  
}
.swiper-slide-visible {
  /* Specific visible slide styling: */ 

}
/* ===============================================================
Pagination Styles
================================================================*/
.swiper-pagination-switch {
  /* Stylize pagination button: */  

}
.swiper-active-switch {
  /* Specific active button style: */ 
  
}
.swiper-visible-switch {
  /* Specific visible button style: */  
  
}








/*
 * Fluid grid, based on responsivegrid by Graham Miller 
 */


/* Easy without margins but ... */

.grid { clear:both; padding:0; margin:0;  }

.grid:after,
.group:before,
.group:after { content:""; display:table; }
.grid:after,
.group:after { clear:both; }
.group { zoom:1;  }

.grid > * { display: block; float:left; margin:0 0 1em 0; }
.grid > .full { width:100%; }

/* 12 columns */

.g12c > * { width: 33.33%; }
.g12c > .c1  { width:  8.33%; }
.g12c > .c2  { width: 16.66%; }
.g12c > .c3  { width: 25.00%; }
.g12c > .c4  { width: 33.33%; }
.g12c > .c5  { width: 41.66%; }
.g12c > .c6  { width: 50.00%; }
.g12c > .c7  { width: 58.33%; }
.g12c > .c8  { width: 66.66%; }
.g12c > .c9  { width: 75.00%; }
.g12c > .c10 { width: 83.33%; }
.g12c > .c11 { width: 91.66%; }
.g12c > .c12 { width: 100%;   }

/* 6 columns */

.g6c > * { width: 16.66%; }
.g6c > .c2 { width: 33.33%; }
.g6c > .c3 { width: 49.99%; }
.g6c > .c4 { width: 66.66%; }
.g6c > .c5 { width: 83.33%; }

/* 3 columns */

.g3c > * { width: 33.33%; }
.g3c > .c2 { width: 66.66%; }

/* 2 columns */

.g2c > * { width: 50%; }
.g2c > .c2 { width: 100%; }


/* Example breakpoint for linearizazion */

@media only screen and (max-width: 480px) {
  .grid > * {  margin:1% 0 1% 0%; }
  .grid > *, .grid > .c1, .grid > .c2, .grid > .c3, .grid > .c4, .grid > .c5 { width:100%; }
}





/* FLOAT CLEANING */

.filters ul li a:before,
.filters ul li a:after,
footer div.partners ul:before,
footer div.partners ul:after,
footer nav ul:before,
footer nav ul:after,
.hits + .pages:before,
.hits + .pages:after,
body > header > header:before,
body > header > header:after,
nav.main:before,
nav.main:after,
.intro:before,
.intro:after,
.links:before,  
.links:after,
main > section:before,  
main > section:after,
main:before,
main:after {  
    content: " ";  
    display: table; 
    clear:both; 
}  


footer div.partners ul:after,
footer div.nav ul:after,
.hits + .pages:after,
body > header > header:after,
nav.main:after,
.intro:after,
.links:after,
main:after {  
    clear: both;  
}  








/* TRANSITIONS  ( still more to add here ) */

a:hover {
-webkit-transition: color .05s ease, background-color .05s linear, border-color .2s ease-out, padding .1s ease;
  -moz-transition: color .05s ease, background-color .05s linear, border-color .2s ease-out, padding .1s ease;
  -ms-transition: color .05s ease, background-color .05s linear, border-color .2s ease-out, padding .1s ease;
  -o-transition: color .05s ease, background-color .05s linear, border-color .2s ease-out, padding .1s ease;
  transition: color .05s ease, background-color .05s linear, border-color .2s ease-out, padding .1s ease;  
}

a {
-webkit-transition: color .1s ease-out, background-color .3s ease-out, border-color .6s ease-out, padding .1s ease;
  -moz-transition: color .1s ease-out, background-color .3s ease-out, border-color .6s ease-out, padding .1s ease;
  -ms-transition: color .1s ease-out, background-color .3s ease-out, border-color .6s ease-out, padding .1s ease;
  -o-transition: color .1s ease-out, background-color .3s ease-out, border-color .6s ease-out, padding .1s ease;
  transition: color .1s ease-out, background-color .3s ease-out, border-color .6s ease-out, padding .1s ease;  
}








/* WEB FONTS */ 

@font-face {
    font-family: 'manus';
    src: url('../fonts/manus.otf');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'supermolotbold';
    src: url('../fonts/ttsupermolot-bold.otf');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'supermolotlight';
    src: url('../fonts/ttsupermolot-light.otf');
    font-weight: normal;
    font-style: normal;
}







/* GENERAL */

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

html, body { margin:0; }
body { font-size:.89em; font-family:helvetica,arial,sans-serif !important; color:#333; background:#fff;  }
a img { border:0; }

.contentframe,
header > div,
nav.main > ul,
.ibe form,
.formtabs,
body > footer ul,
main > nav > ol,
main > section,
main > .csc-default { max-width:80em; margin:0 auto; }

main { text-align:center; }

.grid { text-align:left; }
main > .grid { margin:0 auto; }


/* PAGE HEADER */

body > header { position:absolute; left:0; right:0; top:0; z-index:100; background:rgba(0,0,0,.2); }


/* PAGE HEADER -- TITLE */

header > div { position:relative; z-index:30; }
header h1 { position:relative; left:0; top:.75em; margin-bottom:-8.75em; top:2.25em; max-width:17.25em; font-size:1em; margin-right:20%; }
header h1 { position:relative; left:0; top:0.75em; margin-bottom:-8.75em; max-width:17.25em; font-size:1em; margin-right:20%;}
header h1 a { display:block; padding:2em 1em; background:#fff; border-radius:.33em; color:#e52713; text-decoration:none; text-transform:uppercase; letter-spacing:.05em; min-height:8em; }
header h1 a:hover { color:#421; }
header h1 img { max-width:15em; border:0; }

header h1 a { 
  -webkit-box-shadow: .2em .5em 1em 0 rgba(0, 0, 0, 0.33);
  -moz-box-shadow:    .2em .5em 1em 0 rgba(0, 0, 0, 0.33);
  box-shadow:         .2em .5em 1em 0 rgba(0, 0, 0, 0.33);
}

header h1 a:hover { 
  -webkit-box-shadow: .2em .5em 1.5em 0 rgba(0, 0, 0, .75);
  -moz-box-shadow:    .2em .5em 1.5em 0 rgba(0, 0, 0, .75);
  box-shadow:         .2em .5em 1.5em 0 rgba(0, 0, 0, .75);
}

header h1 a,
header h1 a:hover { transition:all .2s ease; -webkit-transition:all .2s ease; }



/* PAGE HEADER -- LANGUAGE SELECTION */

.lang li { list-style:none; margin:0; padding:0; display:inline-block; }
.lang li a ,
.lang li span { display:inline-block; padding:.5em; text-transform:uppercase; color:#fff; text-decoration:none; }
.lang li a { color:#fff; }
.lang li a:hover { color:#fff; }

.lang li a,
.lang li span { overflow:hidden; }


/* PAGE HEADER -- META NAVIGATION */

.meta ul { font-size:1em; display:block; float:right; clear:both; width:80%; position:relative; text-align:right; vertical-align:middle; margin:.8em 0 .25em 0; padding:0; }
.meta li { list-style:none; margin:0; padding:0; display:inline-block; text-transform:uppercase; color:#ddd; }
.meta li.act { padding:.5em; display:none; }
.meta li a ,
.meta li span { display:inline-block; padding:.5em 1em; text-transform:uppercase; color:#fff; text-decoration:none; }
.meta li a { color:#fff; border-radius:.25em; }
.meta li a:hover { color:#fff; background:rgba(255,255,255,.5); color:#000; }
.meta:after { content:""; display:table; clear:both; }

.meta li.searchtrigger { margin-right:2em; }
.meta li.searchtrigger:last-of-type { margin-right:-.4em; }

/* PAGE HEADER -- SEARCH */

.search { font-size:1em; display:block; float:right; width:33%; position:relative; text-align:right; vertical-align:middle; min-height:2em; margin:0 0 .25em 0;}
.search input { margin:0; width:100%; text-transform:uppercase; padding:.25em; }

/* PAGE HEADER -- LINDNER NIGHTS */


/* PAGE HEADER -- NAVIGATION */

nav.main { clear:both; margin:0 0 0 0; background:#e52713; height:4.2em;}
nav.main > ul,
nav.main > ol { position:relative; margin:0 auto; padding:0; text-align:right; background:transparent url(../images/signet.gif) 2em center no-repeat; background-size:2.5em; }
nav.main > ul > li { display:inline-block; list-style:none; margin:0; padding:0; font:normal 1.25em helvetica,arial,sans-serif; text-transform:uppercase; margin:0 ; }
nav.main ul li a { display:inline-block; line-height:3em; text-decoration:none; padding:.1em .75em; color:#fff; }
nav.main ul li a { display:inline-block; line-height:3.2em; text-decoration:none; padding:.1em .75em; color:#fff; }
nav.main ul li.act a { color:#7ab51d;  }
nav.main ul li a:hover,
nav.main ul li a.open{ color:#e52713; background:#fff none center bottom no-repeat; }


nav.main > ul > li > a { background-position:center bottom; transition:all .3s ease; }
nav.main > ul > li > a:hover { background-image:url(../images/icons/nav-arrow.png); }
nav.main > ul > li > a.open{  background-position:center 4em; }

nav.main {   
  -webkit-user-select: none;  /* Chrome all / Safari all */
  -moz-user-select: none;     /* Firefox all */
  -ms-user-select: none;      /* IE 10+ */

  /* No support for these yet, use at own risk */
  -o-user-select: none;
  user-select: none; 
}

/* PAGE HEADER -- NAVIGATION -- DROPDOWN */

nav.main div { position:absolute; top:3.33em; right:0; width:100%; background:#e52713; font-size:1em; z-index:100; }
nav.main div ul { position:relative; margin:2em auto 0 auto; padding:0; text-align:right;  }
nav.main div ul li { display:inline-block; list-style:none; margin:0; padding:0; font:normal 1em helvetica,arial,sans-serif; text-transform:uppercase; }

/* Dropdown in 3 Spalten mit Text */

nav.main div { width:auto; left:17em; background:#fff; padding:0 1em; background:rgba(255,255,255,.72); box-shadow:0 2em 3em #fff inset; border-bottom:solid 1em #e52713; border-color:#e52713; border-width:0; }
nav.main ul li div ul { margin:0 0 0 0; text-align:left; }
nav.main ul li div ul li { padding:0; margin:0; display:block; width:90%; width:calc(100% - 1em); text-align:left; border:.1em solid rgba(0,0,0,.25); border-width:.1em 0 0 0; }
nav.main ul li div ul li:last-of-type { border-width:.1em 0 .1em 0; }
nav.main ul li div a { padding:.26em .25em .26em .25em!important; width:100%; width:calc(100% + .5em); margin:0; color:#b81f10; line-height:1.5em; position:relative; left:-.25em; border-radius:.25em; }

nav.main ul li div > * { margin:1em 0 2em 0; }

nav.main ul li div > figure + .c12,
nav.main ul li div > figure + .full { margin-top:-4em; }
nav.main ul li div > *.c12 ~ * { margin-top:-2em; }
nav.main ul li div > *.full ~ * { margin-top:-2em; }

nav.main ul li div > section { text-transform:none; line-height:1.33em; }
nav.main ul li div > section p:first-child { margin-top:3.4em; }

nav.main ul li div > section.img { text-align:center; }
nav.main ul li div > section img { max-width:100%; }
nav.main ul li div > section img:only-child { display:block; margin:2em auto 0 auto; }
nav.main ul li div > section a img:first-of-type { margin:0; width:2em !important; height:auto !important; }
nav.main ul li div > section p a { display:inline-block; line-height:inherit; width:auto; padding:0 !important; margin:.25em 0 0 0; left:0; }

nav.main ul li div.service > section img { max-width:2em; margin:-.5em .5em 0 .1em; }

nav.main ul li div > figure  > ul:first-child { margin-top:2em; }
nav.main ul li div > section > ul:first-child { margin-top:3em; }

nav.main .open + div { border-width:0 0 1em 0; }
nav.main .open + div:empty { border-width:0; }


nav.main div figure { margin:0; padding:1em 0 0 0; }
nav.main div figcaption { display:block; font-weight:normal; text-align:left; margin:.6em 0 .45em 0; font-size:.8em; line-height:1.45em; }
nav.main div figcaption p { text-transform:none; font-size:1.2em; color:#222; }

/* Special case: HOTEL PICS */

nav.main ul li div > section.hotelpics p:first-child { margin-top:0; }
nav.main ul li div > section.hotelpics img { margin:.5em 1em 1em 1em; width:75%; width:calc(100% - 2em) !important; height:auto !important; border-radius:.25em; }
nav.main ul li div > section.hotelpics img + img { display:none; }

/* */ 

nav.main div { max-height:0px; min-height:0; overflow:hidden; transition:all .25s ease; }
nav.main .open + div { z-index:101; max-height:22em; min-height:none; transition-duration:.2s; }


#searchform { display:none; }


/* BREADCRUMPS */

nav.bread    { border:none; padding:0; margin:-1em 0 2em 0; color:#666; text-align:left; }
nav.bread ol { padding:0; margin:0 auto; }
nav.bread li { list-style:none; display:inline-block; margin:0; font-size:1.2em; }
nav.bread a  { display:inline-block; padding:1em 1em 1em .75em; color:#666; text-decoration:none; }
nav.bread a:hover { text-decoration:underline; color:#3276AB; }
nav.bread li:after { display:inline-block; content:'/'; }
nav.bread li:last-child { margin-left:.5em; }
nav.bread li:last-child:after { content:''; display:none; }
nav.bread li:first-child a { margin-left:-1em; }


/* PAGE HEADER -- BOOKING ENGINE FORM */

.ibe { width:84em; margin-left:auto; margin-right:auto; position:absolute; left:0; right:0; bottom:3em; padding-bottom:.75em; background:rgba(255,255,255,.66); transition:background .3s ease; cursor:default; }

.ibe form { text-align:justify; }
.ibe fieldset,
.ibe fieldset > div { display:inline-block; padding:0; margin:0 auto; border:0; font-size:1em; vertical-align:top; }
.ibe fieldset + fieldset { padding-left:1em; }
.ibe fieldset:last-child { float:right; }
.ibe h3,
.ibe label { display:block; color:#000; margin-top:1em; margin-bottom:.25em; margin-left:.2em; text-shadow:0 .1em 1em rgba(255,255,255,1); }

.ibe h3 { font-size:1em; font-weight:normal; letter-spacing:.1em; margin:1em 0 .25em .2em; }

/* remove standard-styles */
.ibe select { -webkit-appearance:none; -moz-appearance:none; appearance:none; border:none; border-radius:0; font-size:1em; width:100% } 

/* styling */
.ibe select {
  font-size:1.2em;
  width:22em;
  height:2.66em;
  border:.15em solid rgba(0,0,0,.75); 
  margin:0;
  text-transform:uppercase;
  padding:.25em .75em .25em .75em;
  box-shadow: 0 2px 1px 0 rgba(0,0,0,0.2);
  background:#fff url(../images/icons/select-arrow.png) right center no-repeat;
  background-color:rgba(255,255,255,.8);
  transition:all .2s ease; 
}

.ibe input { color:#000; margin:0 0 1em 0; padding:.5em; min-height:2.5em; font-size:1.2em; border:0; text-align:left; text-transform:uppercase; background:#fff; background:rgba(255,255,255,.66); transition:all .2s ease; border:.15em solid rgba(0,0,0,.75); }

.ibe .dates input { background:rgba(255,255,255,.66) url(../images/icons/date.png) right center no-repeat; background-size:2em; padding-right:3em; }

.ibe input,
.ibe select { box-shadow:0 .25em .5em rgba(0,0,0,.4) inset; }

.ibe .rooms select { width:5em; }

.ibe select:hover {
  box-shadow: 0 1px 1px 0 rgba(0,0,0,0.1),0 .25em .5em rgba(0,0,0,.4) inset;
}

.ibe input,
.ibe select { border-color: rgba(0,0,0,.6); }

.ibe:hover input,
.ibe:hover select { border-color: rgba(0,0,0,.8); }

.ibe:hover input,
.ibe:hover select { background-color:rgba(255,255,255,1); }


.ibe input:hover, .ibe input:focus,
.ibe select:hover, .ibe select:focus { border-color:#e52713; }


.ibe input + label + input { margin-left:1em; }

.ibe input[type=date], .ibe input[type=text] { width:8.5em; padding:.65em .75em; }
.ibe input[type=submit] { margin-top:1.95em; width:15.66em; color:#e52713; color:#008800; font-weight:bold; text-align:center; box-shadow:0 -.1em .25em rgba(0,0,0,.4) inset; min-height:2.7em; min-width:18.9em; }

.ibe option { padding:.5em 0; height:2em; margin:1em; line-height:5em; }

.ibe ::-webkit-input-placeholder {
   color: #666;
}

.ibe :-moz-placeholder { /* Firefox 18- */
   color: #666;  
}

.ibe ::-moz-placeholder {  /* Firefox 19+ */
   color: #666;  
}

.ibe :-ms-input-placeholder {  
   color: #666;  
}


.ibe fieldset.info { margin-left:-2em; padding-left:2em; width:28.66em; min-height:7.45em; margin-bottom:-2.5em; transition:background .5s ease-out; transition:background .5s ease-out; }
.info p { display:block; max-width:100%; margin:0 auto 0 0; width:auto; color:#666; color:rgba(0,0,0,.75); padding:0; float:left; clear:left; }
.info a { display:inline-block; max-width:100%; margin-right:auto; width:auto; text-decoration:none; color:#666; color:rgba(0,0,0,.75); padding:.15em 0; }
.info a + a { margin-left:.5em; }
.info a + a:before { display:inline-block; content:'–'; margin:0 .75em 0 0; }
.info h2 { margin:1em 0 0 0; text-transform:uppercase; }
.info h2 a { padding:0; color:#999; color:rgba(0,0,0,.5); transition:color .3s ease; -webkit-transition:color .3s ease; }
.ibe:hover .info  { background:#eee; background:rgba(255,255,255,.8); }
.ibe:hover .info h2 a { color:#e52713; }
.info a:hover { color:#0EAD31; }
.info > a:hover { text-decoration:underline; }


.formtabs { width:100%; min-height:1em; display:none; }
.formtabs ul { float:right; margin:0; padding:0; font-size:1.2em; }
.formtabs ul li { list-style:none; display:inline-block; }
.formtabs ul li a { display:inline-block; padding:.25em 0 .25em 1em; color:#fff; text-decoration:none; text-transform:uppercase; color:#666; }
.formtabs:after {
    content: " ";  
    display: table; 
    clear:both;   
}

/* PAGE HEADER -- BOOKING ENGINE FORM -- DISCOUNT BADGE */

.discount { background:transparent url(../images/discount2.png) no-repeat left center; color:#fff; text-transform:uppercase; font-size:.9em; min-width:8em; max-width:14em; padding:.75em .75em .25em 3em; position:absolute; right:-3em; top:-1.05em; text-align:center; border-radius:3em 1em 1em 3em; font-weight:bold; border:.2em solid #fff; }
.discount h4 { font:normal 1.2em / 1em arial,helvetica,sans-serif; margin:0; padding:0; font-weight:inherit; }
.discount span { font:bold 1.75em / 1.5em arial,helvetica,sans-serif; display:inline-block; margin:-.1em 0 0 0; padding:0; }

.discount { transform-origin:20px center; -webkit-transform-origin:20px center; transform:translateZ(0) rotate(10deg); -webkit-transform:translateZ(0) rotate(10deg); transition:transform .2s ease; -webkit-transition:transform .2s ease; }
.ibe:hover .discount { transform:translateZ(0) rotate(0); -webkit-transform:translateZ(0) rotate(0); }


/* PAGE CONTENT -- SPACERS*/

main { padding-top:2em; }

main .spacer { width:100%; white-space:nowrap; margin:3em 0 2em 0; }
main .spacer img { width:100% !important; height:auto !important; }
main .spacer { max-height:24em; overflow:hidden; }

main .spacer { background-size:cover; background-position:center center; }



/* PAGE CONTENT -- BREAKING HEADLINE */

main h1 { font-size:4em; font-weight:normal; margin-top:.25em !important; margin-bottom:.5em; color:#999; font-family:helvetica,arial,sans-serif; }

main h2 { font-size:4em; font-weight:normal; font-family:'manus',arial,sans-serif; color:#666; line-height:1.1em; margin-bottom:1.75em; }
main .red h2 { color:#e52713; }

.bread + section h2:first-child { margin-top:.5em; }


main .csc-header h1 + h2 { margin-top:-.33em; color:#e52713; }
main .csc-header h1:last-child { margin-bottom:1.5em; }

main .cscwrap-header + section { margin-top:-3em; }
main .cscwrap-header + a + section { margin-top:-3em; }

main .puregallery > h2 + h3,
main section.cscwrap-header .csc-header > h2 + h3 { font-size:1.5em; margin-top:-3.66em; margin-bottom:3.66em;  color:#999; color:#e52713; font-family:helvetica,arial,sans-serif;  letter-spacing:.05em; }


main .cscwrap-header + section .csc-header h2,
main .cscwrap-header + section .csc-header h3,
main .cscwrap-header + section > h2:first-child,
main .cscwrap-header + section > h3:first-child { margin-top:0; }

/* PAGE CONTENT */

.twocols {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;

  -webkit-column-gap: 1.5em;
     -moz-column-gap: 1.5em;
          column-gap: 1.5em;


}

.grid img { max-width:100%; }
main .grid { margin:1em -3em 2em -3em; }
main .grid > * { padding:0 3em 0 3em; }
main .grid.content > * { padding:0; }

/* 2 COLUMNS OF CONTENT */

.cscwrap-shortcut.cscwrap-csc-layout-22 .grid .grid { margin:0 0 1em 0; } 
.cscwrap-shortcut.cscwrap-csc-layout-22 .grid .grid > * { width:100%; float:none; margin:0 0 1em 0; } 

.cscwrap-shortcut.cscwrap-csc-layout-22 .grid  > a { display:none; }


main p { line-height:1.5em; font-size:1.2em; padding-right:1em; }
main p:first-child { margin-top:0; }


/* CONTENT */


.csc-default img { max-width:100%; margin:0;}
.cscwrap-menu ul,
.cscwrap-text ul,
.csc-textpic-text ul,
.cscwrap-text ol,
.csc-textpic-text ol { line-height:1.5em; font-size:1.2em; }
.cscwrap-text li,
.csc-textpic-text li { margin:.25em 0; }

.csc-default ol ol,
.csc-default ul ul { font-size:1em; margin-top:0; margin-bottom:0; }


.csc-default h3 { margin:1em 0; padding:.5em 0; }
.csc-default h3.redbar { background:#e52713; color:#fff; margin:1em 0; padding:.5em; }

.csc-default h4 { font-size:1.2em; color:#888; } 

main > .cscwrap-text { text-align:left; margin:1em auto; }

.csc-textpic { margin:1em -3em 2em -3em; }

.cscwrap-menu ul,
.csc-textpic-text { text-align:left; }

.csc-textpic-intext-left-nowrap .csc-textpic-imagewrap { width:50%; padding:0 3em 0 3em; float:left; }
.csc-textpic-intext-left-nowrap .csc-textpic-text { width:50%; padding:0 3em 0 3em; float:right; margin:0 0 1em 0 !important; }


.csc-textpic-text > *:first-child,
.csc-textpicHeader > *:first-child { margin-top:0; }

figure { margin:0; padding:0; border:0; }
.csc-default img { max-width:100%; height:auto !important; }
.csc-default .bodytext img { max-width:calc(100% + 1em); }
 
.sign { font-size:2em; font-weight:normal; font-family:'manus',arial,sans-serif; color:#666; display:inline-block; line-height:1.5em; transform:rotate(-3deg); -webkit-transform(-3deg); }

.csc-default .centered { text-align:center; padding:0 .5em; }
.csc-default .right { text-align:right; padding:0 0 0 1em; }

/* CONTENT -- TABLES */

.csc-default table { font-size:1.2em; border:0; padding:0; margin:.5em 0 1.5em 0; line-height:1.25em; border-spacing:0; border-collapse:collapse; }
.csc-default th { font-weight:bold; color:#e52713; text-align:left; vertical-align:top; padding-right:0; }
.csc-default td { margin:0; vertical-align:top; }
.csc-default td,
.csc-default th { padding:.95em 0; border:.2em solid #ddd; border-width:.2em 0; line-height:1.5em; }

.csc-default tr { margin-top:.05em; }
.csc-default td + td,
.csc-default th + td,
.csc-default th + th { padding-left:2em; } 

.csc-default tfoot tr { background:transparent; font-weight:bold; color:#666; }

.csc-default thead td,
.csc-default thead th { padding-top:1em; }

.csc-default tbody tr:last-of-type td,
.csc-default tbody tr:last-of-type th { padding-bottom:1em; }

.csc-default table p,
.csc-default table ul,
.csc-default table ol { font-size:1em; }

.csc-default a.button { display:block; font-size:1.1em; padding:.4em .9em; margin:.4em auto 0 0; background:#0B9229; color:#fff; text-decoration:none; min-width:75%; max-width:30em; }
.csc-default a.button:after { content:"\00BB"; padding-left:.5em; }
.csc-default a.button:hover { background:#0EAD31; padding:.4em .4em .4em 1.5em; }



/* CONTENT ELEMENT COMBOS -- VERTICAL MARGINS */

.cscwrap-list + .cscwrap-text { margin-top:2em; }

/* CONTENT -- FORMS */

main form.nolabel > h3:first-of-type { display:none; }

main legend { display:none; }
main fieldset { width:50%; float:left; margin:0; border:none; text-align:left; }

main label { display:block; padding:0 0 .2em .86em; }
main textarea,
main select,
main input { width:100%; font-size:1.4em; margin:0 0 1em 0; padding:.5em; font-family:inherit; }

main textarea { -moz-box-sizing: border-box; box-sizing: border-box; resize: none; padding-bottom:1em; overflow:hidden;
            transition:min-height .5s ease-out; -webkit-transition:min-height .5s ease-out; }

main input[type=text],
main input[type=date],
main input[type=number],
main input[type=tel],
main input[type=email],
main select,
main textarea { border-color:#e52713; border-width:.1em; border-style:solid; outline:none !important; }


main input[type=text]:hover,
main input[type=email]:hover,
main input[type=number]:hover,
main input[type=tel]:hover,
main input[type=date]:hover,
main select:hover,
main textarea:hover { background:#f4f4f4; }

main input[type=text]:focus,
main input[type=email]:focus,
main input[type=number]:focus,
main input[type=tel]:focus,
main input[type=date]:focus,
main select:focus,
main textarea:focus { outline-style: solid; outline-width: 2px; /* For Safari performance */ background:#eee; }

main form input[type=submit] { border:0; background:#e52713; color:#fff; letter-spacing:.1em; text-transform:uppercase; box-shadow:none; -webkit-box-shadow:none; cursor:pointer; transition:all .2s ease; -webkit-transition:all .2s ease;}
main form input[type=submit]:hover { background:#BF1503; }
/* Form validation messages */

main .tx-powermail input + ul { margin:0 0 1.5em 0; padding:0; }
main .tx-powermail input + ul li { margin:0 0 .5em 0; padding:0 0 .5em 0; list-style:none; }
main .tx-powermail input + ul li:before { content:"►"; content:"\25B2"; color:#fff; margin:0 .5em 0 .89em; }
main .tx-powermail .parsley-error { border-bottom-width:.4em; margin-bottom:0; }

main .tx-powermail input + ul { background:#e52713; color:#fff; }

/* Forms, second step */

.powermail_confirmation form { display: block; float:left; margin:0 0 1em 0; width:50%; padding:0 1.5em 0 0; }
.powermail_confirmation form + form { padding:0 0 0 1.5em; }

.powermail_confirmation dl { width:100%; margin:0 0 4em 0; padding:0; text-align:left;
    -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;

  -webkit-column-gap: 3em;
     -moz-column-gap: 3em;
          column-gap: 3em;
}

.powermail_confirmation dt { display:block; padding:0 0 .2em .86em; break-inside:avoid; break-after:avoid;  -webkit-column-break-after:avoid; -webkit-column-break-inside:avoid; }
.powermail_confirmation dd { width:100%; font-size:1.4em; margin:0 0 1em 0; padding:.5em; font-family:inherit; background:#eee; break-inside:avoid; break-before:avoid; -webkit-column-break-before:avoid;  -webkit-column-break-inside:avoid; }

main form input[type=submit].powermail_submit,
.powermail_confirmation form .powermail_confirmation_submit { background:#0B9229; }
main form input[type=submit].powermail_submit:hover,
.powermail_confirmation form .powermail_confirmation_submit:hover { background:#0EAD31; }


/* CONTENT --- VIDEO */

 .cscwrap-media > object { max-width:100%; }


/* CONTENT --- IMAGE GALLERIES */

.puregallery { margin:1em 0; }
.puregallery .gallery { width:100%; margin:0; padding:0; list-style:none; width:calc(100% + 3em); }
.puregallery ul.gallery li { display:inline-block; margin:0; padding:0 3em 3em 0; width:33%; vertical-align:top; list-style:none; background:transparent;  }
.puregallery ul.gallery li a { cursor:zoom-in; }
.puregallery ul.gallery li a img { transition:all .1s ease-out;  -webkit-transition:all .1s ease-out; }
.gitem { display:inline-block; vertical-align:top; display:table; width:100%; }
.gitem img { margin:0; display:block; width:100%; transition:all 1s ease-out; -webkit-transition:all 1s ease-out; }
.gitem img:hover { opacity:.9; }
.gitem figcaption { max-width:100%; display: table-caption; caption-side: bottom; line-height:1.5em; font-size:1.2em; padding-top:.45em; }

/* CONTENT --- IFRAMES */

/* iFrames in general  */

.iframe-container { position:relative; width:100%; height:auto; overflow:hidden; padding-bottom: 56.25%; /* ratio 16x9 */}
.iframe-container iframe { position:absolute; top:0; left:0; width:100%; height:100%; max-width:100%; }

.iframe-container.noscroll iframe { overflow:hidden; }

/* External image instead of iFrame */

.iframe-container.externalimage { padding-bottom:0; }
.iframe-container.externalimage img { min-width:100%; width:100%; }

/* iFrames: predefined rations */

.iframe-container.ratio5x2 { padding-bottom: 20%; }
.iframe-container.ratio3x1 { padding-bottom: 33%; }
.iframe-container.ratio2x1 { padding-bottom: 50%; }
.iframe-container.ratio3x2 { padding-bottom: 66%; }
.iframe-container.ratio4x3 { padding-bottom: 75%; }
.iframe-container.ratio1x1 { padding-bottom: 100%; }
.iframe-container.ratio2x3 { padding-bottom: 150%; }
.iframe-container.ratio1x2 { padding-bottom: 200%; }
.iframe-container.ratio1x3 { padding-bottom: 300%; }
.iframe-container.ratio1x4 { padding-bottom: 400%; }
.iframe-container.ratio1x5 { padding-bottom: 500%; }


/* TrustYou iFrame MetaReview */

.iframe-container.trustyou { border:.18em solid #e52713; padding-bottom:250%; padding-bottom:0; height:auto; margin:0 0 0 -.5em; width:calc(100% + .5em); }
.iframe-container.trustyou iframe { position:static; height:auto; min-height:80em; overflow:hidden; }

/* iFrames: Guidle events */

.iframe-container.guidle { text-align:center; }
.iframe-container.guidle iframe { display:inline-block; position:static; width:720px; height:2500px; overflow:auto; margin:auto; transform:scale(1.5); transform-origin:left top; -webkit-transform:scale(1.5); -webkit-transform-origin:center top; }

/* iFrames: Metioblue weather */

.iframe-container.meteoblue { padding-bottom:60%; }


/* TEASERS */

.teasers { margin:1em -3em 2em -3em; }
main > *:first-child .teasers { margin-top:2em; }
.teaser > * { padding:0 3em 0 3em; margin:0 0 2em 0; position:relative; list-style:none; min-width:25em; }
.teaser > * p:after { content:" "; display:table; clear:both; }
.teaser > * > iframe,
.teaser > * form,
.teaser > * > a { text-decoration:none; display:block; padding:1em 0 .5em 0; color:#666; height:24em; position:relative; overflow:hidden; text-align:left; }

.teaser > * img { width:100% !important; z-index:1; height:19em!important; max-height:19em; margin:0 0 .5em 0; background:#e0e4f3; }

.teaser h3,
.teaser h4,
.teaser p { font-size:1.2em; margin:.25em 0; padding:0; }

.teaser p { line-height:1.5em; }
.teaser h3,
.teaser h4 { text-transform:uppercase; }

.teaser h3,
.teaser h4 { min-height:1em; }

.teaser h3:empty,
.teaser h4:empty { min-height:0 !important; margin:0 !important; line-height:0 !important; padding:0 !important; }

.teaser h4 + p { margin-top:0; }

.teaser > * form .tcontent,
.teaser > * > a .tcontent { padding-top:.5em; position:absolute; top:auto; bottom:-.5em; max-height:5.25em; background:#fff; border-top:1em solid #e52713; width:100%; }

.teaser > * form.focussed .tcontent,
.teaser > * form.changed .tcontent,
.teaser > * form:hover .tcontent,
.teaser > * > a:hover .tcontent { position:absolute; bottom:-.5em; max-height:16em; }

.teaser > * form.focussed h4,
.teaser > * form.changed h4,
.teaser > * form:hover h4,
.teaser > * > a:hover h4 { min-height:0; }

.teaser > * h4:empty + p { margin-top:-.25em; }

.teaser > * .tcontent { transition:all .4s ease; -webkit-transition:all .4s ease; } 

.teaser > * > h3 { transition:all .6s ease; }
.teaser > * > form:hover h3,
.teaser > * > a:hover h3 { color:#e52713; }

/* TEASERS -- IFRAME */

.teaser > *.foriframe { text-align:center; }
.teaser > *.foriframe > div { text-decoration:none; display:block; padding:1em 0 .5em 0; color:#666; height:24em; position:relative; overflow:hidden; text-align:left; }
.teaser > *.foriframe iframe { position:absolute; top:12%; right:105%; width:170px; height:160px; }
.teaser > *.foriframe img { width:100% !important; z-index:1; height:19em!important; max-height:19em; margin:0 0 .5em 0; background:#e0e4f3;  }


/* TEASERS -- LOGIN FORM */

.teaser > * form fieldset { font-size:1.2em; position:absolute; top:2em; padding:0 2em; left:0; right:0; margin:0; width:100%; }
.teaser form input { font-size:1em; width:100%; margin:1em 0 0 0; padding:.75em .5em; border:0; background:#fff; background:rgba(255,255,255,.8); transition:all .3s ease; box-shadow:0 .15em .15em rgba(0,0,0,.33) inset; }
.teaser form.focussed input,
.teaser form.changed input,
.teaser form:hover input { background:rgba(255,255,255,.95); }


.teaser form input[type=submit] { margin-top:6em; border:0; background:#e52713; color:#fff; letter-spacing:.1em; font-weight:bold; text-transform:uppercase; box-shadow:none; -webkit-box-shadow:none; cursor:pointer; transition:all .2s ease; -webkit-transition:all .2s ease; opacity:0; }

.teaser form.focussed input[type=submit],
.teaser form.changed input[type=submit],
.teaser form:hover input[type=submit] { margin-top:1em; opacity:1; }

/* BROAD TEASERS */

main .bigteaser { margin:3em -3em 0 -3em; }
.bigteaser > * { padding:0 3em 0 3em; margin:0 0 1em 0; position:relative; list-style:none; }
.bigteaser > * p:after { content:" "; display:table; clear:both; }
.bigteaser > * a { text-decoration:none; display:block; padding:1em 0 .5em 0; color:#666; position:relative; text-align:left; }

.bigteaser > * img { width:100%; z-index:1; max-height:19em; margin:0 0 .5em 0; background:#e0e4f3; }

.bigteaser h3,
.bigteaser h4,
.bigteaser p { font-size:1.2em; margin:.25em 0; padding:0;  }

.bigteaser p { line-height:1.5em; }
.bigteaser p + p { margin-top:1em; }

.bigteaser h3 { font-size:3em; font-weight:normal; font-family:'manus',arial,sans-serif; color:#666; }
 }

.bigteaser > * a .tcontent { padding-top:.5em; background:#fff;  }

.bigteaser > * a:hover h3 { color:#e52713; } 



/* HOTEL LIST  */

.hotel { margin:0 -3em 0 -3em; }
.hotel > * { padding:0 3em 0 3em; margin:0 0 3.5em 0; position:relative; list-style:none; min-height:11.7em; }
.hotel > *:nth-of-type(2n+1) { clear: left; }
.hotel > * a:after { content:" "; display:table; clear:both; }
.hotel > * a { text-decoration:none; display:block; padding:0; color:#666; position:relative; border-top:1em solid #e52713; text-align:left; }

.hotel > * img { width:33%; float:right; position:relative; border-radius:0; }

.hotel h3,
.hotel h4,
.hotel p { font-size:1.2em; margin:.25em 0; }

.hotel p { line-height:1.5em; }
.hotel h3,
.hotel h4 { text-transform:uppercase; }

.hotel > * a .tcontent { padding:.5em 1em 0 0; float:left; width:66% ;}

.hotel > *:nth-child(2n+1) a .tcontent { text-align:right; }

.hotel > *:nth-child(2n+2) img { float:left; }
.hotel > *:nth-child(2n+2) a .tcontent { float:right; padding:.5em 0 0 1em; }

.hotel > * a img { transition:all .2s ease-out; -webkit-transition:all .2s ease-out; }

.hotel > * a:hover { background:#e52713; color:#fff; }
.hotel > * a:hover img { z-index:20; }
.hotel > * a:hover img { transform:scale(2.5); -webkit-transform:scale(2.5); }
.hotel > * a img { transform-origin:left top; -webkit-transform-origin:left top; }
.hotel > *:nth-child(2) a img { transform-origin:right top; -webkit-transform-origin:right top; }
.hotel:not(.t2) > *:nth-last-child(2) a img { transform-origin:left bottom; -webkit-transform-origin:left bottom; }
.hotel:not(.t2) > *:nth-last-child(1) a img { transform-origin:right bottom; -webkit-transform-origin:right bottom; }

.spacer.call2action { margin-top:2em; }
.call2actionbutton { display:inline-block; padding:.5em 1em; border:.5em solid #e52713; background:#e52713; color:#fff; text-transform:uppercase; text-decoration:none; }
.call2actionbutton:hover { background:#fff; color:#666; }


/* FACEBOOK TESTS */

img.facebook { margin-top:2em; height:auto; max-height:none; border-top:1em solid #e52713; border-bottom:1em solid #e52713; }

.fb img { max-width:50%; height:auto; margin:0 0 0 0; float:left; position:relative; transition:all .1s ease; }
.fb a:only-of-type img { max-width:100%; }
.fb a { display:inline !important; }

.fb img:hover { z-index:5; box-shadow:0 .5em 1em rgba(0,0,0,.5); transform:scale(1.05);}

/* PAGE FOOTER */

body > footer { clear: both; width:100%; margin:10em auto 0 auto; padding-top:13%; background:#fff; background-image:url(../images/footer-bike.png); background-size:cover; background-position:center center; }
body > footer nav { background:#e52713; }
body > footer ul { margin:0 auto; padding:0; position:relative; left:-1em; }
body > footer ul li { display:inline-block; list-style:none; margin:0; padding:0; width:auto; }
body > footer ul li a { display:inline-block; color:#fff; padding:2em 1em;}

body > footer nav > ul > li:last-of-type { display:block; float:right; margin-right:0; }
body > footer ul.certs li a { position:relative; padding:.25em; margin:0 0 0 1em; overflow:hidden; line-height:4.66em; }
body > footer ul.certs li a span { position:absolute; left:0; top:-600%; }
body > footer ul.certs li a img { vertical-align:middle; opacity:.5; transition:all .3s linear; -webkit-transition:all .3s linear;}
body > footer ul.certs li a:hover img { opacity:.8; transition:all .15s ease; -webkit-transition:all .15s ease;  }



body > footer a { text-decoration:none; text-transform:uppercase; color:#fff; }
body > footer a:hover { text-decoration:underline; }
 

/* SOCIAL LINKS */ 

#sociallinks { display:block; z-index:100; position:fixed; top:30%; left:0; width:2em; height:auto; overflow:visible; }

#sociallinks ul { display:block; padding:0; margin:0; font-size:1em;}
#sociallinks ul li { display:block; padding:0; margin:.5em 0; list-style-type:none;  min-height:2em; position:relative; white-space:nowrap; text-align:right; }
#sociallinks ul li a { position:relative; left:-21em; display:block; padding:0; background:#eee url(../../images/icons/twitter.gif) right center no-repeat; background-size:contain; background-color:rgba(200,200,200,.25); line-height:1.2em; color:#000; font-size:1.2em; text-transform:uppercase; letter-spacing:.05em; padding:.5em; text-decoration:none !important; width:23em; text-align:right; padding-right:3em; transition:all .3s ease; -webkit-transition:all .3s ease; box-shadow:0 .2em .4em .1em rgba(0, 0, 0, 0.25);}
#sociallinks ul li .facebook { background-image:url(../images/icons/social/facebook.png); }
#sociallinks ul li .youtube { background-image:url(../images/icons/social/youtube.png); }


#sociallinks ul li .book { margin-top:0em; height:8.5em;}
#sociallinks ul li .book { background-image:url(../images/icons/booking_de.png); }
html[lang|="en" ] #sociallinks ul li .book { background-image:url(../images/icons/booking_en.png); }
html[lang|="fr" ] #sociallinks ul li .book { background-image:url(../images/icons/booking_fr.png); }


#sociallinks ul li .book { left:-24em; }
.ibeabove #sociallinks ul li .book { left:-21em; }
.ibeabove #sociallinks ul li .book:hover { left:-19em; }


#sociallinks ul li .totop { background-image:url(../images/icons/totop.png); }
#sociallinks ul li.totop { margin-top:16em; }
#sociallinks ul li.book + li.totop { margin-top:4em; }
#sociallinks ul li .totop { left:-24em; }
.totop #sociallinks ul li .totop { left:-21em; }
.totop #sociallinks ul li .totop:hover { left:-8em; }
#sociallinks ul li.totop a:hover { left:-8em;}

#sociallinks ul li.trustyouwidget { margin-top:1em; }
#sociallinks ul li.trustyouwidget iframe { overflow:hidden; }

.admin-bar .page_margins { margin-top:234px; }
.admin-bar #sociallinks  { top:333px; }


#sociallinks ul li a:hover { left:0; background-color:rgba(200,200,200,.75);}

.date-picker-wrapper { transform:translateZ(0) scale(1.175); will-change:transform; z-index:400; }
.date-picker-wrapper { margin-top:-330px; }
.ibedown .date-picker-wrapper { margin-top:0; }

.date-picker-wrapper .drp_top-bar .apply-btn { 
  border-radius:0;
  cursor:pointer;
  padding:.5em 1em;
  text-transform:uppercase;
  color: #fff;
  border: none;
  background: #379E1B;
}

.date-picker-wrapper .drp_top-bar .apply-btn.disabled {
  background: #e52713;
  color:#fff;
  box-shadow:none;
  border:0;
}

.date-picker-wrapper .month-wrapper table .day.checked:first-of-type,
.date-picker-wrapper .month-wrapper table .day.checked:last-of-type
{
  background-color: rgba(156, 219, 247, 0.85);
}

.date-picker-wrapper .month-wrapper table th { color:#e52713; }

.date-picker-wrapper table .caption th { color:#222; }

.date-picker-wrapper .month-wrapper table .day.real-today { background-color:#e52713; color:#fff !important; }
.date-picker-wrapper .month-wrapper table .day.real-today.checked { background-color:rgba(74, 158, 195, 0.85); }

.date-picker-wrapper .gap { background-color:transparent; left:48%; }

/*

COLOR DEFINITIONS 

CD colors______________

MVH Rot:          #e52713


Additional colors__________

Blue (call to action):  #3276AB;


*/



nav.main { transition:box-shadow .3s ease-out; }
body.navfixed nav.main { position:fixed; top:0; left:0; width:100%; -webkit-transform: translateZ(0); }
body.navfixed nav.main { box-shadow:0 0 .5em .5em rgba(0,0,0,.5);}

body.navfixed nav.main a.open + div { background:rgba(255,255,255,1); box-shadow:0 2em 3em #fff inset,0 .35em .5em .1em rgba(0,0,0,.33); }

.navtrigger, .mobilefooter,
body > .ibe { display:none; }


/* splash banner */

#splash { position:fixed; top:50%; left:50%; bottom:auto; width:32em; min-height:32em; height:auto; margin:-16em auto auto -16em; padding-bottom:.5em; z-index:-1; background:#fff; border:.75em solid #e52713; border-width:.33em .33em 1.5em .33em; overflow:hidden; opacity:0;
            -moz-box-shadow:0px 12px 50px rgba(0,0,0,1); -webkit-box-shadow:0 20px 50px rgba(0,0,0,1), 0 0 0 2000em rgba(0,0,0,.2); box-shadow:0px 20px 50px rgba(0,0,0,1), 0 0 0 2000em rgba(0,0,0,.2);
            -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;
        }

#splash img { width:100%; height:auto; max-height:22em; }
#splash a { color:#000; text-decoration:none; }
#closesplash { position:absolute; top:.5em; right:.5em; font-family:arial, helvetica, sans-serif; font-size:1em; font-weight:bold; color:#000; padding:2%; cursor:pointer; background:none; background:rgba(255,255,255,.25); border-radius:.33em; }
#splash:hover #closesplash { background:#d3d3d3; background:rgba(255,255,255,.66); }
#splash > #closesplash:hover { background:#fff; background:rgba(255,255,255,1); }

#splash strong, #splash p { display:block; margin:.5em .5em 0 .5em; font-size:1.2em; }
#splash strong { color:#e52713; text-align:center; font-family:manus,sans-serif; font-weight:normal; font-size:2.75em; margin:.5em 0 .45em 0; line-height:1em; }

body.splashactive #splash { z-index:500; opacity:1; }


/* LiveRate Widget */
.forliverate { display:block!important; top:0; position:absolute; width:100%; height:0; padding-bottom:33%; z-index:4; pointer-events:none; }
#flr2 > iframe { position:absolute; left:0; top:25%; top:calc(30% - 3em); width:200px; z-index:200; margin:0; }


@media only screen and (min-width:130em) {
  body { font-size:1em; }
  #splash { font-size:1.2em; }
  .iframe-container.guidle iframe { transform:scale(1.2); -webkit-transform:scale(1.2); }
}

@media only screen and (min-width:150em) {
  body { font-size:1.2em; }
}


@media only screen and (max-width:90em) {
  #sociallinks ul li.trustyouwidget { margin-top:2em; }
  #sociallinks ul li.trustyouwidget iframe { position:relative; transition:all .3s ease; -webkit-transition:all .3s ease; left:-6.66em; left:-92px; transform:rotate(90deg); -webkit-transform:rotate(90deg); }
  #sociallinks ul li.trustyouwidget:hover iframe { left:0; transform:none; -webkit-transform:none; }
}  


@media only screen and (max-width:86em) {

  body { font-size:1em; }  
  #splash { font-size:.9em; }

  .contentframe,
  header > div,
  nav.main > ul,
  .formtabs,
  body > footer ul,
  main > nav > ol,
  main > section { max-width:none; width:100%; padding-left:2em; padding-right:2em; }

  .ibe form { padding:0; }
  .ibe input[type=submit] { min-width:15.9em; }
  nav.bread ol { padding-left:2em; }

  .iframe-container.guidle iframe { transform:scale(1.2); -webkit-transform:scale(1.2); }

  body > footer ul { padding-right:0; }

  /* Teasers flexible */

  .teaser > * > iframe,
  .teaser > * form,
  .teaser > * > a { max-height:24em; height:auto; }
  .teaser > * img { height:auto!important; max-height:19em; }

  .discount { right:-3em; top:-1.05em; }

}




@media only screen and (max-width:82em) {
  body { font-size:.7em; }
  #splash { font-size:1.33em; }
  .iframe-container.guidle iframe { transform:scale(.8); -webkit-transform:scale(.8); }
}



@media only screen and (max-width:60em) {

  body > header { background:transparent; }

  .navtrigger { display:block; line-height:3em; text-decoration:none; padding:.1em .75em; color:#fff; font-size:1.25em; float:right; clear:right; text-transform:uppercase; margin:0 1.6em .15em 0;}

  h1.sitetitle .booking { position:relative; margin:.2em 0 0 0; min-width:100%; max-width:100%; text-align:center; min-height:0; display:block; overflow:hidden; }
  h1.sitetitle .booking span { font-size:1.25em; font-weight:normal; }
  nav.meta { position:absolute; top:0; right:0; left:auto; width:75%; width:calc(100% - 16em); }
  nav.main { position:absolute; top:5em; }


  h1.sitetitle .booking:after {
    content: "";
    position: absolute;
    display:block !important;
    clear:none !important;
    top: -700%;
    left: -410%;
    width: 400%;
    height: 800%;
    opacity: 1;
    transform: rotate(30deg);
    -webkit-transform: rotate(30deg);
    
    background: rgba(255, 255, 255, 0.13);
    background: linear-gradient(
      to right, 
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0) 60%,
      rgba(255, 255, 255, 0.13) 77%,
      rgba(255, 255, 255, 0.5) 92%,
      rgba(255, 255, 255, 0.0) 100%
    );
  }

  /* Hover state - trigger effect */

  h1.sitetitle .booking.shine:after {
    opacity: 1;
    top: -510%;
    left: -130%;
    transition-property: left, top, opacity;
    transition-duration: 1.2s, 1.2s, 0.15s;
    transition-timing-function: ease;
    -webkit-transition-property: left, top, opacity;
    -webkit-transition-duration: 1.2s, 1.2s, 0.15s;
    -webkit-transition-timing-function: ease;
  }

  /* Active state */

  h1.sitetitle .booking:active:after,
  h1.sitetitle .booking:hover:after {
    opacity: 0;
  }



  nav.main > ul { max-height:0; clear:right; overflow:hidden; opacity:0; transition:max-height .4s ease, opacity .15s ease; -webkit-transition:max-height .4s ease, opacity .15s ease; }
  .menuopen nav.main > ul { max-height:84em; opacity:1; }
  body.navfixed nav.main { box-shadow:none; }

  nav.main > ul:before,
  nav.main > ul:after,
  .navtrigger:after { content: " "; display: table; clear:both; }  
  
  nav.main { height:0; }
  nav.main, nav.main > ul { background:transparent; }
  nav.main > ul > li { display:block; margin-left:auto; margin-bottom:.15em;  }
  nav.main > ul > li > a,
  .navtrigger { background:#fff; background:rgba(255,255,255,.75); background:#e52713; color:#fff; border-radius:.25em; cursor:pointer; }
  nav.main > ul > li > a:hover { background:#e52713; color:#fff; } 
  nav.main > ul > li > a.open { background:#e52713; color:#fff; border-radius:.25em .25em 0 0; } 
  nav.main a + div { background:#fff; background:rgba(255,255,255,.0); box-shadow:none; border-radius:.25em 0 .25em .25em; overflow:hidden; }
  
  
  nav.main a.open + div,
  body.navfixed nav.main a.open + div { background:#e52713; box-shadow:none; max-width:100%; }

  nav.main .open + div { max-height:70em; }
  nav.main div { position:static; }

  nav.main ul li div > section img:only-child { margin:0 auto; }

  nav.main ul li div > section.hotelpics img { display:inline-block !important; width:20% !important; margin:0 3.3% 0 3.3%; }
  nav.main ul li div > section.hotelpics img:first-of-type { margin-left:0; }
  nav.main ul li div > section.hotelpics img:last-of-type { margin-right:0; }

  nav.main ul li div a { color:#fff; }

  body.navfixed nav.main { position:absolute; }


  ul.swiper-wrapper > li { min-height:20em; text-align:center; }
  ul.swiper-wrapper > li figure, ul.swiper-wrapper > li img { height:100% !important; width:auto !important; }


  body > footer { padding-top:0; margin-top:0; }

  /* Booking form to bottom */

  .swiper-container .ibe { display:none; }

  .mobilefooter,
  footer .ibe,
  body > .ibe { display:block; position:relative; left:0; top:0; padding:0 1em; width:100%; }
  
  #footibe { margin-top:-3em; margin-bottom:8em; }

  .ibe > form { text-align:center; width:100%; }
  .ibe fieldset { padding:0 !important; }
  .ibe fieldset.rooms { padding-left:1.1em !important; }
  .ibe fieldset.info { margin:0; width:100%; }
  .ibe fieldset.submit { width:100%; }
  .ibe input { margin:0; }
  .ibe input[type=submit] { width:23.3em; margin-top:.5em; }
  .ibe select { width:23.3em; }

  .ibe fieldset.info h2 a { width:100%; float:none; }
  .info a + a:before { display:none; }
  .ibe fieldset.info p { width:100%; margin:.5em 0 2em 0; }
  .ibe fieldset.info p > a { display:block; background:#eee; padding:1em; border-radius:.25em; margin:1em auto; width:18em; max-width:100%; float:none; }
  .date-picker-wrapper { transform:none; }

  .ibe fieldset.hotelselect { display:block; }

  .discount { left:50%; margin-left:-7.5em; top:-4.2em; transform:none; webkit-transform:none; }

  #sociallinks { position:static; width:100%; text-align:center; padding:0 2em; margin:3em 0 4em 0; }
  #sociallinks ul li { text-align:center; margin:1.5em; white-space:normal; }
  #sociallinks ul li a,
  #sociallinks ul li a.totop { display:inline-block; position:relative; left:0 !important; width:27em; max-width:100%; padding-right:3.5em; overflow:hidden; }
  #sociallinks ul li.book + li.totop { margin-top:.5em; }
  #sociallinks ul li.book { display:none; }

  #sociallinks ul li.trustyouwidget iframe { left:12px; transform:none; -webkit-transform:none; }

  footer { background-image:none !important; }
  footer nav li a img { height:3em !important; width:auto !important; }


  /* TrustYou iFrame MetaReview */

  .iframe-container.trustyou { padding-bottom:350%; }

  /* iFrames: Guidle events */

  .iframe-container.guidle iframe { height:2500px;  }

  /* iFrames: Metioblue weather */

  .iframe-container.meteoblue { padding-bottom:80%; }


  /* LiveRate Widget */

  #flr2 > iframe { position:static!important; margin:0 auto 2em auto!important; width:23.3em!important; max-width:100%!important; font-size:1.2em;}


}

@media only screen and (max-width:48em) {

  /* Smaller logo */
  header h1 { max-width:40%; margin-right:0; }
  header h1 a { min-height:0; }
  header h1 img { max-width:100%; }

  /* Linearize meta */
  header > div { display:table; }
  header > div .meta { display:table-caption; caption-side:top;  }
  nav.main { z-index:33; top:8em; }

  /* No more partner links */

  footer ul { text-align:center; }
  footer ul ul { display:none; }

  /* iFrames: Metioblue weather */

  .iframe-container.meteoblue { padding-bottom:100%; }


}


@media only screen and (max-width:42em) {

  #splash { font-size:1em; }

  /* Linearize menu */
  nav.main .grid > * { width:100% !important; }
  nav.main ul li div ul li { width:100%; }
  nav.main ul li div > * { margin:0 0 1em 0;}
  nav.main ul li div > section p:first-child { margin-top:1em; }
}

@media only screen and (max-width:42em) {

  /* Linearize grids */
  .grid > * {  margin:0 0 0 0; }
  .grid > *, .grid > .c1, .grid > .c2, .grid > .c3, .grid > .c4, .grid > .c5 { width:100% !important; }

  .teaser > * > iframe,
  .teaser > * form,
  .teaser > * > a { max-height:34em; height:auto; margin-bottom:2em; }

  .teaser > * img { max-height:36em; }

  .hotel > * a:hover img { transform:none; -webkit-transform:none; }


  /* TYPO3 content */
  .csc-textpic > * { width:100% !important; }
  .csc-textpic-imagewrap img { margin-top:1em; margin-bottom:1em; }

  /* Menu adjustment */
  nav.main ul li div > figure + .c12, nav.main ul li div > figure + .full { margin-top:0; }

  nav.meta { width:60%; }
  nav.main { top:8em; }


}



@media only screen and (max-width:32em) {

  h1.sitetitle .booking span { font-size:1.15em; }
  nav.main { top:8em; }

}  


@media only screen and (max-width:25em) {
  
  h1.sitetitle .booking span { font-size:1em; }

  /* Very small footer */
  .ibe fieldset.rooms { padding:0 !important; }
  
  .ibe input,
  .ibe input[type=submit],
  .ibe select { width:90%; width:calc(100% - 2em); margin:0 1em; }

  .ibe input[type=submit] { margin:1.5em 1em 1em 1em; min-width:0; }

  #sociallinks ul li a,
  #sociallinks ul li a.totop { padding-right:5.5em; min-height:3.5em; }

  #splash { max-width:100%; max-width:calc(100% - 2em); margin-left:-50%; margin-left:calc(.75em - 50%); }

}



@media only screen and (max-height:36em) {
  #splash { height:auto; min-height:0; bottom:auto; margin-top:-5em; padding-bottom:1.5em; padding-top:1.5em; }
  #splash img { display:none; }
  #closesplash { background:#eee; background:rgba(0,0,0,.1);  }
  #splash:hover #closesplash { background:#ddd; background:rgba(0,0,0,.2); }
  #splash > #closesplash:hover { background:#e52713; color:#fff;}
}  

@media only screen and (max-height:25em) {
  #splash { padding-bottom:.5em; padding-top:0; }
}  

@media only screen and (max-height:20em) {
  #splash { top:5.5em; }
}  

/* ennit webcam */
div.eia-webcam {
    border: 1px solid #e1dada;
    padding: 6px;
    width: 350px;
    margin: auto;
}

div.eia-webcam div{
    border-top: 1em solid #e52713;
    margin-top: -4px;
}

div.eia-webcam a {
    text-decoration: none;
}

div.eia-webcam > a:hover h3 {
    color:#e52713;
}

div.eia-webcam h3{
    text-transform: uppercase;
    color: #666;
    text-align: left;
}

li.eia-webcam {
    margin: 10px 0;
}

li.eia-webcam a {
    border: 1px solid #e1dada;
    padding: 6px;
    margin: 2px;
}

li.eia-webcam a img {
    margin: 0;
}

li.eia-webcam div {
    /*padding: 6px;*/
    border-top: 1em solid #e52713;
    margin-top: -4px;
}