@charset "utf-8";

@font-face {
	font-family: 'Kalam'; font-style: normal; font-weight: 300;
	src: url('../font/kalam/light.ttf') format('truetype')
}
@font-face {
	font-family: 'Kalam'; font-style: normal; font-weight: 400;
	src: url('../font/kalam/regular.ttf') format('truetype')
}
@font-face {
	font-family: 'Kalam'; font-style: normal; font-weight: 700;
	src: url('../font/kalam/bold.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 200;
	src: url('../font/source_sans_pro/extralight.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 200;
	src: url('../font/source_sans_pro/extralightitalic.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 300;
	src: url('../font/source_sans_pro/light.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 300;
	src: url('../font/source_sans_pro/lightitalic.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 400;
	src: url('../font/source_sans_pro/regular.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 400;
	src: url('../font/source_sans_pro/italic.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 600;
	src: url('../font/source_sans_pro/semibold.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 600;
	src: url('../font/source_sans_pro/semibolditalic.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 700;
	src: url('../font/source_sans_pro/bold.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 700;
	src: url('../font/source_sans_pro/bolditalic.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: normal; font-weight: 900;
	src: url('../font/source_sans_pro/black.ttf') format('truetype')
}
@font-face {
	font-family: 'Source Sans Pro'; font-style: italic; font-weight: 900;
	src: url('../font/source_sans_pro/blackitalic.ttf') format('truetype')
}

/* HTML5 display definitions */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; height: 0; }
[hidden] { display: none; }

/* Base */
html, body { margin:0; padding: 0; }
html, button, input, select, textarea {
	font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 300;
	color: #48571c;
}
html {
    font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;
    height: 100%;
}
body { font-size: 1.125em; line-height: 1.231; }

::selection {
	background: #8c796a; background: rgba(140,121,106, 0.85);
	color: white; text-shadow: none;
}

/* Links */
a { color: #48571c; }
a:hover { color: #4e5a2a; }
a:focus { outline: none; }
a:active, a:hover { outline: 0; }

h2 a, h3 a { color: #48571c; text-decoration: none; }

/* Typography */
h1, h2, h3 { font-weight: normal; text-align: left; }
h1 { font-size: 2em; margin: 0.67em 0; }
h2 { font-size: 1.5em; margin: 0.83em 0; }
h3 { font-size: 1.25em; margin: 1em 0; }
h4 { font-size: 1em; margin: 1.33em 0; }
h5 { font-size: 0.83em; margin: 1.67em 0; }
h6 { font-size: 0.67em; margin: 2.33em 0; }

abbr[title] { border-bottom: 1px dotted; }
strong { font-weight: bold; }
blockquote { margin: 1em 2.5em; }
dfn { font-style: italic; }
hr {
	border: none;
	-moz-box-sizing: content-box; box-sizing: content-box; display: block;
	height: 1px;
	margin: 1em 0; padding: 0;
}
mark { background: #ff0; color: #000; }
p, pre { margin: 1em 0; }
code, kbd, pre, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ''; content: none; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

/* Lists */

dl, menu, ol, ul { margin: 1em 0; }
dd { margin: 0 0 0 2.5em; }
menu, ol, ul { padding: 0 0 0 2.5em; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

/* Embedded content */

img { border: 0; -ms-interpolation-mode: bicubic; width: 100%; height: auto; }
svg:not(:root) { overflow: hidden; }

/* Figures */

figure { margin: 0; }

/* Forms */

form { margin: 0; }
fieldset { border: 0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { border: 0; padding: 0; white-space: normal; *margin-left: -7px; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
input { border: 1px solid #fff; padding: 0.2em; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; *overflow: visible; }
button[disabled], html input[disabled] { cursor: default; background: #838383;}
button[disabled]:hover, html input[disabled]:hover { background: #838383;}
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *height: 14px; *width: 14px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; }

/* Tables */
table { border-collapse: collapse; border-spacing: 0; }
th { vertical-align: top; text-align: left; }

/* CUSTOM CLASSES */

#video-viewport {
	overflow: hidden;
	position: relative;
	height: 100vh;
}
#video-viewport video {
	height: 100%;
	width: 177.77777778vh;
	min-width: 100%;
	min-height: 56.25vw;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

/* clearfix */
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after { clear: both; }
/* For IE 6/7 (triggers hasLayout) */
.cf { *zoom: 1; }

.s { font-size: 0.786em; }
.xs { font-size: 0.714em; }
.alignright { text-align: right; }
.alignleft { text-align: left; }
.aligncenter { text-align: center; }
.alignjustify { text-align: justify; }
.margintop { margin-top: 1em; }
.marginright { margin-right: 1em; }
.marginbottom { margin-bottom: 1em; }
.marginleft { margin-left: 1em; }
.right { float: right; }
.left { float: left; }

/* msg */
.msg, .msgerror { margin-bottom: 15px; padding: 4px; }
.msg h2, .msgerror h2 { margin: 0 0 10px 0; }
.msg ul, .msgerror ul { margin-top: 0; }
.msg { background-color: white; border: 1px solid #ddd; }
.msg h2 { color: #444; }
.msgerror { background-color: white; border: 1px solid #c00; }
.msgerror, .msgerror h2 { color: #c00; }

/* pagenav */
.pagenav { text-align: center; }
.pagenav span a {
	font-size: 1.214em; vertical-align: bottom;
	padding: 0 2px;
}
.pagenav a, .pagenav strong { margin: 2px; padding: 2px; }
.pagenav a:hover, .pagenav strong {
	border: 1px solid;
	margin: 1px;
}
.pagenav a, .pagenav a:hover { text-decoration: none; }
.pagenav a:hover { border-style: dotted; }

/* BUTTON */
a.button, button, input[type="submit"], input[type="button"] {
	background: #48571c;
	border: 0;
	color: white; line-height: 140%; text-decoration: none; text-transform: uppercase;
	display: inline-block;
	margin: 0.5em 0;
	padding: 0.5em;
	color:#FFF;
	border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px;
	font-family: 'Kalam', Arial, cursive;
}
a.button:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
	background: #657241;
	color: #fff;
}
a.button.next:after, button.next:after { content: ' ›'; }
a.button.prev:before, button.prev:before { content: '‹ '; }

/* LANG SELECT */
.langselect {
	position: absolute;
	text-transform: uppercase;
	top: 5px;
	font-size: 0.75em;
	right: 0;
	display: table;
}
.langselect, .langselect a { text-decoration: none; }
.langselect a {
	display: table-cell;
	padding: 0.2em;
	color: #48571c;
	background-color: #fff; background-color: rgba(255,255,255,0.1);
	width: 1em;
	text-align: center;
	border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px;
} 
.langselect a:hover {
	color: #57642F;
	background-color: #fff;
}
.langselect span { padding: 0 1px; color: #48571c; }

/* LAYOUT */
.wrapper {
	max-width: 1040px;
	margin: 0 auto;
}
body > .wrapper { position: relative; z-index: 1; }

.maximage { overflow: hidden; }
.maximage, .maximage0 { position: fixed!important; top: 120px; right: 0; bottom: 0; left: 0; z-index: 1; }
.maximage .img, .maximage0 {
	background-repeat: no-repeat; background-position: center center;
	background-size: cover; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover;
	height: calc(100vh - 120px); width: 100%;
	z-index: 1!important;
}

#cycle-prev, #cycle-next { 
	color: #FFF;
	position: absolute; z-index: 2; top: 50%; 
	transform: translateY(-50%);
	text-decoration: none;
}
#cycle-prev:hover, #cycle-next:hover { color: #E9E9E9; }
#cycle-prev span, #cycle-next span { font-size: 5em; }
#cycle-prev { left: 0.5em; }
#cycle-next { right: 0.5em; }

/* HEADER */
#header {
	height: 120px;
	position: fixed;
	left: 0; top: 0; right: 0;
	background-color: #fff;
	color: #48571c;
	z-index: 1000;
	box-shadow: 0px 1px 1px 0px rgba(50, 50, 50, 0.05); -moz-box-shadow: 0px 1px 1px 0px rgba(50, 50, 50, 0.05); -webkit-box-shadow: 0px 1px 1px 0px rgba(50, 50, 50, 0.05);
}
#header .wrapper {
	width: 100%; height: 100%;
	display: table;
	position: relative; z-index: 2;
}
#logo, #nav_main { display: table-cell; }
#logo {
	width: 220px; height: 110px;
	vertical-align: bottom;
}
#logo img { width: 100%; height: auto; }
#nav_main ul { float: right; }

/* NAV */
#nav_main {
	padding-top: 40px;
	vertical-align: middle;
}
#nav_main li { display: table-cell; }
#nav_main li a {
	color: #48571c;
	padding: 0.75em;
	text-decoration: none;
	font-size: 0.9em;
	font-weight: 300;
}
#nav_main li.active a {
	background-color: #48571c; /*#eee*/
	color: #fff;
}
#nav_main li a:hover, #nav_main ul li:hover a, #nav_main ul li.active:hover a {
	background-color: #48571c;
	color: #fff;
}

#nav_main li:hover ul { display: block; }
#nav_main li ul { 
	display: none; 
	opacity: 1;
	position: absolute;
	z-index: 4;
	margin-top: 10px;
}
#nav_main ul li.active ul li, #nav_main li ul li {
	display: block;
	border-top: 1px solid #57642f;
}
/*#nav_main li ul li:first-child { border-top: none; }*/
#nav_main li ul li a { 
	color: #fff;
	display: block;
	line-height: 1.231;
}
#nav_main li ul li a:hover, #nav_main li.active ul a:hover {
	background-color: #657241;
	color: #fff;
}
#nav_main ul li ul li ul {
	position: static;
	margin-top: 0;
}
#nav_main ul li ul li ul li {
	text-indent: 1em;
	font-size: 80%;
}

#cam { 
	background: #fff;
	background: rgba(255, 255, 255, 0.5);
	color: #48571c;
	font-size: 130%;
	line-height: 100%;
	padding: 0.5em 1em;
	position: absolute; right: 25px; bottom: -62px; z-index: 2;
}
#cam:hover {
	background: #48571c;
	color: #fff;
}
header.hidecam #cam { opacity: 0; } 

/* Sticker */
#sticker {
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; 
	position: absolute; right: 50px; top: 190px; z-index: 1;
	max-width: 230px;
	text-decoration: none;
	opacity: 0.8;
}
#sticker > div {
	background: #fdfcfc;
	border-radius: 50%;
	box-shadow: 1px 1px 16px 0px rgba(0,0,0,0.4); -webkit-box-shadow: 1px 1px 16px 0px rgba(0,0,0,0.4); -moz-box-shadow: 1px 1px 16px 0px rgba(0,0,0,0.4);
	color: #444;
	font-weight: 300;
	padding: 4px;
	display: table;
	width: 100%;
	transition: background 0.3s linear; -webkit-transition: background 0.3s linear; -moz-transition: background 0.3s linear; -o-transition: background 0.3s linear;
}
#sticker > div:hover { background: #FFF; }
#sticker > div > div {
	border: 2px solid #48571c; border-radius: 50%;
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; 
	display: table-cell;
	padding: 2rem;
	text-align: center;
	vertical-align: middle;
	width: 100%; height: 100%;
}
#sticker-headline { 
	color: #48571c;
	font-family: 'Kalam', Arial, cursive; font-size: 1.3em;
}
#sticker > div > div p { margin-bottom: 0; }
#header.hidesticker #sticker { opacity: 0; }

/* GALLERY */
#imageselector {
	background: #fff;
	background: rgba(221,221,221, 0.7);
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	height: 150px;
	padding: 5px;
	position: absolute; z-index: 100; bottom: 10px; left: 10px; right: 10px;
}
#imageselector.hideimages { background: none; }
#imageselector .thumbnails {
	display: table;
	width: 100%;
}
#imageselector .thumbnails > div { display: table-cell; }
#imageselector .controls {
	font-size: 250%; font-weight: 500;
	text-align: center;
	vertical-align: middle;
	width: 40px; height: 100%;
}
#imageselector.hideimages .controls div {
	background-color: #48571c;
	border-radius: 50%;
	color: #fff;
	height: 40px;
	line-height: 73%;
}
#imageselector .controls:hover {
	background-color: #657241;
	color: #fff;
	cursor: pointer;
}
#imageselector.hideimages .controls:hover { 
	background: none;
	cursor: default;
}
#imageselector.hideimages .controls:hover div {
	background-color: #657241;
	cursor: pointer;
}
#imageselector .inner-container {
	height: 140px;
	overflow: hidden;
	position: relative;
	max-width: 10px;
}
#imageselector .inner-container .images {
	clear: left;
	height: 140px;
	position: absolute; left: 0; bottom: 0;
	width: 10000px;
}
#imageselector .inner-container .images .imgcontainer { 
	border: 3px solid transparent;
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	display: inline-block;
	float: left;
	margin-left: 5px;
	width: 195px;
	z-index: 10;
} 
#imageselector.hideimages .inner-container { visibility: hidden; }
#imageselector img {
	vertical-align: middle;
	width: 100%; height: auto;
}
#imageselector .inner-container .images .imgcontainer.active { border-color: #657241; }
#imageselector .inner-container img:hover { cursor: pointer; } 


/* ARTICLE */
#main {
	background-color: #fff; background-color: rgba(255,255,255,0.90);
	display: table;
	width: 100%;
	margin-top: 5em;
	margin-top: 80%;
	z-index: 3;
	border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px;
	box-shadow: 0px -2px 2px 0px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0px -2px 2px 0px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 0px -2px 2px 0px rgba(0, 0, 0, 0.1);
}
#main {
	-webkit-transition: background-color 0.35s linear;
	-moz-transition: background-color 0.35s linear;
	-o-transition: background-color 0.35s linear;
	transition: background-color 0.35s linear;   
	position: relative;
}
#main.ontop {
	box-shadow: none;
	background-color: transparent;
}
#main.ontop #article { padding-left: calc(2.5em - 8.1px); padding-right: calc(2.5em - 8.1px); }
#main.ontop h1 {
	display: block;
	background-color: rgba(255,255,255,0.8);
	padding: 0.2em;
	margin-bottom: 1.5em;
}
#main.ontop #aside dl { display: none; }
#main.ontop #aside { display: table-cell; vertical-align: top; }
#main.ontop a.arrowup {
	width: 2em;
	height: 2em;
	display: block;
	background-color: #48571c;
	color: #fff;
	padding: 0.75em;
	text-align: center; text-decoration: none; text-shadow: none;
	transition: all linear 250ms;
	position: absolute; top: 0; right: 0;
	margin-top: 44px; margin-right: 45px;
}
#main.ontop a.arrowup:hover, #main.ontop #aside a:hover { background-color: #657241; }
#main .arrowup { display: none; }
#main.ontop a.arrowup span {
	font-size: 1.5em;
	line-height: 1.3;
}


#article {
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	padding: 2.5em;
	display: table-cell;
	line-height: 1.65em;
	width: 70%;
	font-weight: 300;
	color: #444;
}
#article.maxwidth {
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	display: block;
	width: 100%;
}
#article h1, #article h2, #article h3 {
	text-align: left;
	font-weight: 300;
	line-height: 100%;
	font-family: 'Kalam', Arial, cursive;
}
#article h1, #article h2 { color: #48571c; }
#article h1 {
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; 
	font-size: 2.25em;
	margin: 0 0 1.5em 0;
	text-transform: normal;
}
#article h1 .cite { font-size: 50%; font-style: italic; }
#article h2 { font-size: 1.5em; }
#article h3 { font-size: 1.25em; }
#article ul { list-style-type: square; }

/* ASIDE */
#aside {
	box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	display: table-cell;
	width: 30%;
	padding-right: 2.5em;
}
#aside .asidecontainer { width: 100%; }
#aside .asidecontainer.fixed {
	position: fixed;
	margin-top: 0;
}
#aside dl {
	background-color: #EEE;
	font-style: normal;
	padding: 1em;
	border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px;
}
#aside dt, #aside dd {
	margin: 0;
	padding: 0;
}
#aside dt {
	font-family: 'Kalam', Arial, cursive;
	font-weight: 500;
	font-size: 120%;
}
#aside dd { padding-top: 0.5em; }
#aside dl dt a { font-size: 1.3em; }
#aside dl dt a, #aside h3 a { 
	color: #333;
	text-decoration: none;
}
#aside .asidecontainer dl { margin: 1em 0; }
#aside .asidecontainer > div:first-child dl, #aside .asidecontainer dl:first-child { margin-top: 0; }

/* CTA */
#aside  a.button { 
	display: block;
	text-transform: none;
}
#aside .cta dd { padding-top: 0; }
#aside .cta a.button, #footer_cta a, #footer button {
	text-align: left;
	font-weight: bolder;
	vertical-align: middle;
	background-color: #A5977E;
	display: block;
	font-family: 'Kalam', Arial, cursive;
}
#aside .cta a.phone span {
	transform: rotate(-270deg); -webkit-transform: rotate(-270deg); moz-transform: rotate(-270deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2)
}
#aside .cta a span {
	float: right;
	vertical-align: middle!important;
	font-size: 1em;
	display: block;
}
#aside a.request { background-color: #48571c!important; }

#aside a.button:hover, #footer_cta a:hover { background-color: #766548; }
#aside a.request:hover { background-color: #657241!important; }

/* NEWS */
#aside dl dd h3 {
	padding: 0; margin: 0;
	font-size: 1em;
	font-weight: bold;
}
#aside dl dd p { margin: 0.5em 0 1em 0; }
#aside dl dd .button {	display: inline-block; }
body.it #aside dl dd .button { font-size: 92%; letter-spacing: -1px; }
#aside dl.wetter dd .button { display: block; }

/* Newsletter */
#aside form { margin: 0; padding: 0; }
#aside fieldset { margin: 0; padding: 0; }
#aside form input[type="email"] {
	border: 1px solid #fff;
	padding: 0.2em;
	margin: 0 0 0.5em 0;
	width: 230px;
}
#aside form input[type="submit"] { background-color: #A5977E; text-transform: none; }

/* Angebot */
#aside .offer figure { margin-bottom: 0.5em; }

/* WETTERBOX */
@font-face {
	font-family: 'MeteoconsRegular';
	src: url('../../template/tools/font/meteocons-webfont.eot');
	src: url('../../template/tools/font/meteocons-webfont.eot?#iefix') format('embedded-opentype'),
		 url('../../template/tools/font/meteocons-webfont.woff') format('woff'),
		 url('../../template/tools/font/meteocons-webfont.ttf') format('truetype'),
		 url('../../template/tools/font/meteocons-webfont.svg#MeteoconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}
.wetter .icon {
	font-family: 'MeteoconsRegular';
	font-size: 5em;
	vertical-align: middle;
	padding-right: 0.25em;
}
.wetter .icon, .wetter .temperature { display: table-cell; }
.wetter .temperature { vertical-align: middle; }
.wetter .max .value {
	font-size: 2.2em;
	line-height: 100%;
}
.wetter .min .value { font-size: 1.3em; }
.wetter .small {
	font-size: 14px!important;
	text-transform: uppercase;
}


/* FOOTER */
#footer {
	margin-top: 8em;
	background-color: #48571c;
	color: #fff;
	position: relative; z-index: 1;
}
#footer a { color: white; text-decoration: none;}
#footer a.active { color: #98755e; }
#footer a:hover { color: #c5bcb4; }
#footer span { margin: 0 3px; color: #98755e; }

#footer > .wrapper { padding: 1em 0 0 0; }
#footer .wrapper .box {
	display: table-cell;
	vertical-align: top;
	min-height: 8em;
	width: 25%;
	padding-right: 1em;
}
#footer .box:last-child { padding-right: 0; }
#footer h3 {
	font-size: 1em;
	margin: 0 0 0.5em 0;
	padding: 0;
	font-weight: bold;
}
#footer p { margin: 0.5em 0 0 0; padding: 0; } 
#footer address { font-style: normal; }
#footer a.button, #footer .newsletter input[type=submit], #footer button  {
	text-transform: none;
	padding-right: 1em;
	background-color: #4e5a2a;
	color: #fff;
}
#footer a.button span, #footer button  span { 
	color: #fff;
	line-height: 140%;
}
#footer a.button:hover, #footer input[type=submit]:hover, #footer button:hover { background-color: #766548; }
#footer .socialmedia a, #footer .socialmedia li span { color: #fff; }
#footer .newsletter form, .newsletter fieldset {
	padding: 0;
	margin: 0;
}
#footer .newsletter p { margin: 0 0 0.5em 0; }
#footer .newsletter input[type=email] {
	width: auto;
	margin: 0 0 0.8em 0;
}
#footer .newsletter input[type=submit] { 
	padding-left: 1em;
	padding-top: 0.57em; padding-bottom: 0.57em;
	text-transform: none;
}
#footer .box.newsletter input[type="email"] {
	border: none;
	background-color: #fff;
	color: #444;
	padding-left: 0.5em;
}

/* Footer Images */
#footer div.footerimgs {
	display: table;
	width: 100%;
}
#footer div.footerimgs > *  {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 56%;
}
#footer div.footerimgs > *.suedtirol img { max-width: 100px; }
#footer div.footerimgs a:first-child { width: 39%; padding-right: 5%; }
#footer div.footerimgs img {
	height: auto;
	width: 90%; 
}

/* SOCIAL MEDIA */
#footer .socialmedia { margin-top: 25px; }
#footer .socialmedia h3 { display: none; }
#footer .socialmedia a {
	display: table;
	margin-top: 0.3em;
	padding: 0.2em 0.3em;
	width: 100%;
}
#footer .socialmedia a:first-child { margin-top: 0; }
#footer .socialmedia a > * { 
	display: table-cell;
	color: #fff;
	font-size: 1.125em;
	margin: 0;
	text-align: left; text-decoration: none;
	vertical-align: middle;
	width: 50%;
}
#footer .socialmedia a, #footer .wrapper .box .socialmedia a span.icon { 
	border-radius: 2px; -moz-border-radius: 2px; -webkit-border-radius: 2px; 
	text-align: right;
}
#footer .socialmedia .icon { font-size: 25px; }
#footer .socialmedia a:hover { background-color: #fff; }
#footer .socialmedia a.facebook:hover { background: #3b5998!important; }
#footer .socialmedia a.instagram:hover { background: #d7276a!important; }

/* CTA Footer */
#footer_cta { 
	background: #48571c;
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 100;
}
body.it #footer_cta { font-size: 0.95em; }
#footer_cta a {
	display: inline-block;
	margin-left: 1%;
}
#footer_cta a:first-child, #footer_cta a:last-child { margin-left: 0; }

#footer_cta .quickrequest { float: right; }
#footer_cta .quickrequest > * { vertical-align: middle; }
#footer_cta .quickrequest label { margin-right: 6px; }
#footer_cta .quickrequest input[name="arrival"] { width: 90px; }
#footer_cta .quickrequest input[name="arrival"], #footer_cta .quickrequest select { margin-right: 15px; }
#footer_cta .quickrequest select  { padding: 0.2em; }
#footer_cta .quickrequest button { display: inline-block; }

#footer .docked { position: relative!important; }
@media screen and (max-width: 800px) {
	#footer_cta .text { display: none; }
	#footer_cta a, #footer_cta button.request, #footer_cta button.book {
		border-radius: 50%;
		padding-right: 0.5em!important;
	}
}

/* COPYRIGHT */
#nav_copyright {
	padding: 2em 0 0.5em 0;
	font-size: 70%;
}
#nav_copyright span { color: #983638; color: rgba(255,255,255,0.25);}

/* Tabelle */
.table { width: 100%; }
.table th { text-align: left; font-weight: bolder; }
.table th, .table td { padding: 0.2em 0.5em; }
.table tr td { border-top: 1px solid #ddd; }


/* Custom (kann je nach Template variieren) */
#rooms hr {
	border-top: 1px solid #48571c;
	margin: 3em 0 1em;
}
#rooms .room {
	margin-top: 6em;
	overflow-x: hidden;
	overflow-y: auto;
}
#rooms .room:first-child { margin-top: 0; }
#rooms .room.afterhr { margin-top: 2em; }
#rooms .room .roomimgs {
	display: inline-block;
	float: left;
	margin: 0 2em 0 0;
	overflow: auto;
	text-align: center;
	width: 50%; max-width: 250px;
}
#rooms .room .roomimgs a {
	display: block!important;
	float: none!important;
	margin: 0 auto!important;
}
#rooms .room a, .room a:hover { 
	border-bottom: none!important;
	text-decoration: none;
}
#rooms .room h3 { margin-top: 0; }
#rooms .lower { text-transform: lowercase }

/* Preisliste */
.price { border-bottom: 1px solid #ddd; }
.price tr td:first-child {
	text-align: left;
	border-left: 1px solid #ddd;
}
.price tr td:first-child, .price tr td { border-right: 1px solid #ddd; }
.price tr td { text-align: center; }
.price td.room { font-weight: bolder; }
.price th {
	background-color: #EEE;
	border: 1px solid #ddd;
	border-bottom: none;	
}
.price td.room { 
	line-height: 130%;
	width: 120px;
	position: relative;
	white-space: normal;
}
.price td.room a { text-decoration: none; }
.price th, .price td {
	padding: .25em;
	font-weight: 400;
	text-align: center;
	min-width: 0;
	white-space: nowrap;
}
.price tr:first-child th { vertical-align: top; }
.price tr:first-child th strong { font-weight: 600; }
.price tr.even td { background: #EEE; } 
.price tr.even td table * { background-color: #FFF; } 

 /* Zimmervorschau */ 
.price .detailbox {
	background: #fff;
	border: 1px solid #ddd;
	display: none;
	padding: 1em;
	position: absolute; top: -233px; left: 0; z-index: 10;
	width: 650px;
}
.price .detailbox.show { display: block; }
.price .detailbox * { font-size: 0.94em!important; }
.price .detailbox h2 { font-weight: 600; font-size: 1.25em!important; }
.price .detailbox table {
	table-layout: fixed;
	width: 100%;
}
.price .detailbox table td {
	border: none;
	text-align: left;
	white-space: normal!important;
}
.price .detailbox table td.text { width: 50%; }
.price .detailbox table td.paddingright { padding-right: 0.5em; }
.price .detailbox table td.center { text-align: center; }
.price .detailbox table img { max-width: 200px; }


/* MEDIAQUERIES */
@media screen and (max-width: 1100px){
	#header, #footer { padding-left: 1em; padding-right: 1em; }
	#aside .button { font-size: 90%; }
}

@media screen and (min-width: 1051px) {
	#header { top: 0!important; }
	#main { display: table!important; }
	#footer { display: block!important; }
	#showhide, #nav_mobile { display: none; }
}

/* kleiner als 900 */
@media screen and (max-width: 1050px) {
	body.mainlayout .maximage, .maximage0 { top: 80px; }
	.maximage .img, .maximage0 { height: calc(100vh - 80px); }
	#header, #header.wrapper { height: 80px; }
	#header.wrapper { display: block; }
	#logo {
		display: block;
		margin: 0 auto;
		padding: 0!important;
		vertical-align: middle;
		width: 150px; height: 75px;
	}
	#nav_main { display: none; }
	#showhide {
		position: absolute; top: 20px;
		width: 40px; height: 40px;
		margin: 0;
		padding: 0;
		overflow: hidden;
		vertical-align: middle;
	}
	#showhide a {
		display: block!important;
		width: 40px; height: 40px;
		background: #48571c url('/grafik/template/nav_icon.svg') no-repeat center center;
		text-indent: 99em;
		max-width: 60px;
	}
	#showhide a:hover { background-color: #657241; }
	#nav_mobile {
		display: block;
		position: fixed;
		top: 80px; left: -1100px; bottom: 0;
		padding: 0;
		overflow: auto;
		background-color: #48571c;
		width: 100%;
	}
	#nav_mobile > ul { padding-top: 0.7em; }
	#nav_mobile li a {
		color: #fff;
		padding: 0.5em 1.5em;
		text-decoration: none;
		font-size: 1.1em;
		font-weight: 500;
		display: block;
	}
	#nav_mobile li a:hover { color: #c5bcb4; }
	#nav_mobile ul li.active > a { color: #c5bcb4!important; }
	
	#nav_mobile li { position: relative; }
	#nav_mobile li .icon {
		background: #FFF;
		color: #48571c;
		line-height: 30px;
		font-size: 1em; font-weight: bold;
		position: absolute; top: 8px; right: 20px; 
		text-align: center;
		width: 30px; height: 30px;
	}
	#nav_mobile li .icon:before { vertical-align: -1px; }
	#nav_mobile li .icon:hover { 
		background: #c5bcb4;
		color: #FFF;
		cursor: pointer;
	}
	
	#nav_mobile ul ul { display: none; }
	#nav_mobile ul li.active > ul { display: block; }
	#nav_mobile ul li.active ul li a, #nav_mobile li ul li {
		background-color: #fff;
		display: block;
		border-bottom: thin solid #fff;
	}	
	#nav_mobile li ul li a { 
		color: #57642F;
		display: block;
		line-height: 1.231;
	}
	#nav_mobile ul li ul li ul { position: static; margin-top: 0; }
	#nav_mobile ul li ul li ul li {
		text-indent: 2em;
		font-size: 80%;
	}
	#cam {
		background: #fff;
		bottom: 0; right: 20px;
		font-size: 100%;
	}
	#sticker { top: 100px; right: 40px; }
	#header.hide #sticker { top: 125px; }
}

@media screen and (max-width: 1100px) {	
	#footer_cta { text-align: center; }
	#footer_cta .quickrequest {
		display: inline-block;
		float: none;
		margin-left: 1%;
	}
	#footer_cta .quickrequest label, #footer_cta .quickrequest input, #footer_cta .quickrequest select { display: none; }	
}

@media screen and (max-width: 1000px) {	
	#nav_main ul li a { padding: 0.75em 1em!important;}
	#aside .button { font-size: 100%; }
	#article, #aside {
		display: block;
		width: auto;
		padding: 1.5em;
	}
	#main.ontop a.arrowup { margin-top: 1.5em; }
	#main.ontop #article { width: 85%; }
	#main #aside dl.offer dd div.cycle_offer { min-height: 0; }
	
	#footer { position: relative; }
	#footer .wrapper { overflow: auto; padding: 1em; }
	#footer_cta .wrapper { padding: 0 1em; }
	#footer .docked .wrapper { padding: 0!important; }
	#footer .wrapper .box {
		display: inline-block;
		box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
		float: left;
		min-height: 200px;
		width: 50%;
	}
	
	#footer .box.double div.hc { display: none; }
	#footer .footerimgs { display: none!important; }
	#footer .socialmedia { margin-top: 0; }
	#footer .socialmedia h3 { display: block; }
	#footer .socialmedia a { position: relative; left: -0.2em; right: -0.2em; }
}

@media screen and (max-width: 800px) {
	body.mainlayout .maximage { 
		margin-top: 80px;
		position: relative!important; top: auto; left: auto; right: auto; bottom: auto;
		width: 100%;
		max-height: 51vw;
	}
	body.mainlayout .maximage .img { height: 51vw; min-height: 200px; }
	body.mainlayout.infopage .maximage { display: none!important; }
	#cycle-next { right: -16px; }
	#cycle-prev { left: -16px; }
	
	body.mainlayout #header { box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.8); -webkit-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.8); -moz-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.8); }
	body.mainlayout #main { 
		background: #FFF;
		box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
		margin-top: 0!important;
	}
	body.mainlayout.infopage #main { margin-top: 80px!important; }
	body.mainlayout #article { margin-top: 1em; }

	#video-viewport video {
		width: 100%;
		height: auto;
		transform: none;
		position: static;
	}
}

@media screen and (max-width: 650px) {
	#main { display: block; }
	#main.ontop a.arrowup { display: none; }
	#main.ontop #article { width: 100%!important; }
	#article h1 {
		font-size: 1.5em;
		margin: 0 0 2.2em 0!important;
		text-transform: uppercase;
	}
	#article h2 { font-size: 1.25em; }
	#article h3 { font-size: 1em; }
	
	#rooms .room .roomimgs {
		display: block;
		float: none;
		margin: 0 auto!important;
		width: 100%; max-width: none;
	}
	#rooms .room h3 { margin-top: 1em; }
	.price { background-color: #eee; }
}


@media screen and (max-width: 600px) {
	#articleimage > * { width: 49%; }
	#articleimage > *:nth-child(4n) { margin-left: 1%; }
	#articleimage > *:nth-child(3n) { margin-left: 0; }
}

/* kleiner als 580 */
@media screen and (max-width: 580px) {
	#footer .wrapper .box {
		display: block;
		margin-top: 2em;
		min-height: initial!important;
		width: 100%;
	}
	#footer .wrapper .box:first-child { margin-top: 0; }
	#main #aside dl.offer dd div.cycle_offer {
		min-height: auto!important;
		height: auto!important;
	}
	#footer .newsletter form input[type=email] { width: 100%; }
	#footer .box.double div.hc { display: block; }
}

@media screen and (max-width: 800px), (max-height: 640px) {
	#sticker { display: none; }
}

@media screen and (max-width: 390px) {
	#footer .socialmedia { bottom: 2.5em; }
}

/* PRINT STYLES */

@media print {
	* { background: transparent!important; color: black!important; text-shadow: none!important; filter:none!important; -ms-filter: none!important; }
	a, a:visited { text-decoration: underline; }
	a[href]:after { content: " [" attr(href) "]"; }
	abbr[title]:after { content: " [" attr(title) "]"; }
	.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
	tr, img { page-break-inside: avoid; }
	img { max-width: 100%!important; }
	@page { margin: 1.5cm; }
	p, h2, h3 { orphans: 3; widows: 3; }
	h2, h3 { page-break-after: avoid; }
	/* custom print styles */
	#aside { display: none!important;}
	#header, #aside, #footer, #copyright { display: none; }
	#main { box-shadow: none; margin: 0!important; padding-top: 1em; }
	#article  { display: block; font-size: 16pt; padding: 0; width: 100%!important; }
	.slidebox dd { display: block!important; }
}