/* ==========================================================================
   Layout (the site structure)
   ========================================================================== */

/*
 * Basic
 */

::-moz-selection {
    background-color: #D7C7C9;
    color: #ffffff;
}
::selection {
    background-color: #D7C7C9;
    color: #ffffff;
}
html,
body {
	width: 100%;
}
table {
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
}
th,
td {
    padding: 0;
}
img {
	height: auto;
	width: 100%;
}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: pointer;
}
.mfp-zoom-out-cur .mfp-title {
    display: none !important
}
.mfp-bottom-bar .mfp-counter {
    display: none !important;
}

/*
 * Typography
 */

body {
	color: #5e484a;
	font-family: 'Oxygen', sans-serif;
    /* reob 170602   font-size: 62.5%;   */
    font-weight: 300;
    line-height: 1.5;
}
b,
strong,
th {
	font-weight: 700;
}
h1 {
	font-family: 'Alegreya', serif;
	font-size: 3.1em;   /* reob 170602 Original: font-size: 5.0em; */
	font-weight: 400;
	margin: 0;
	padding: 0 0 25px 0;
}
h2 {
	color: #4d591f;
	font-size: 1.6em;   /* reob 170602 Original: font-size: 2.5em; */
	font-weight: 400;
	margin: 0;
	padding: 0 0 25px 0;
}
h3 {
	color: #ffffff;
	font-size: 1.25em;   /* reob 170602 Original: font-size: 2.0em; */
	font-weight: 400;
	margin: 0;
}
p {
	font-size: 1.1em;   /* reob 170602 Original: font-size: 1.8em; */
	font-weight: 300;
	margin: 0;
	padding: 25px 0 25px 0;
}
ul,
ol {
	list-style-position: inside;
}
ul {	
	list-style-type: square;
}
a {
	color: #aa977a;
	text-decoration: none;
	transition: color 0.5s;
    -webkit-transition: color 0.5s;
}
a:visited {
	color: #aa977a;
}
a:hover {
	color: #F19D10;
}

/*
 * Backbone
 */

.content_push {
	width: 100%;
}
.row {
	padding: 0 25px 0 25px;
}
.ma_center {
	margin: 0 auto;
	max-width: 1250px;
	position: relative;
}
.header {
	position: relative;
	width: 100%;
}
	.header .row_1 {
		background-color: #5E484A;
		left: 0;
		position: absolute;
		top: 50px;
		width: 100%;
		z-index: 5;
	}
	.alt_nav .header .row_1 {
		top: 0;
	}
		.header .row_1 .ma_center {
			height: 15px;
		}
	.header .row_2 {
		background-color: #7E6C6E;
		padding-left: 0;
		padding-right: 0;
	}
		.header .row_2 .ma_center {
			background-color: #000000;
			max-width: 1300px;
			position: relative;
			width: 100%;
		}
			.header .row_2 .ma_center .waypoint_1 {
				left: 0;
				margin: -65px 0 0 0;
				position: absolute;
				top: 100%;
			}
	.header .row_3 {
		bottom: 60px;
		left: 0;
		position: absolute;
		width: 100%;
		z-index: 10;
	}
	.alt_nav .header .row_3 {
		bottom: 100px;
	}
	.header .row_4 {
		background-color: #ffffff;
		border-bottom: 5px solid #5E484A;
		left: 0;
		padding-left: 0;
		padding-right: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 15;
	}
	.darker_tone .header .row_4 {
		background-color: #5E484A;
		border-color: #ffffff;
		box-shadow: 0 2px 2px 2px rgba(0, 0, 0, 0.05);
		-webkit-box-shadow: 0 2px 2px 2px rgba(0, 0, 0, 0.05);
	}
	.alt_nav .header .row_4 {
		background-color: rgba(255, 255, 255, 0.75);
		bottom: 0;
		position: absolute;
		top: auto;
		box-shadow: 0 -2px 2px 2px rgba(0, 0, 0, 0.05);
		-webkit-box-shadow: 0 -2px 2px 2px rgba(0, 0, 0, 0.05);
		transition: background-color 0.5s;
    	-webkit-transition: background-color 0.5s;
	}
	.alt_nav.darker_tone .header .row_4 {
		background-color: rgba(94, 72, 74, 0.75);
	}
	.alt_nav .header.transform .row_4 {
		background-color: #ffffff;
		bottom: auto;
		position: fixed;
		top: 0;
		box-shadow: none;
		-webkit-box-shadow: none
	}
	.alt_nav.darker_tone .header.transform .row_4 {
		background-color: #5E484A;
	}
		.header .row_4 .ma_center {
			max-width: 1300px;
		}
.main {
	padding: 20px 0 0 0;
}
.footer {
	padding: 20px 0 90px 0;
}
	.footer .row_1 {
		background-color: #5E484A;
		bottom: -90px;
		border-top: 5px solid #ffffff;
		height: 85px;
		left: 0;
		position: fixed;
		width: 100%;
		z-index: 20;
		transition: bottom 0.5s;
    	-webkit-transition: bottom 0.5s;
	}
	.footer .row_1.open {
		bottom: 0;
		box-shadow: 0 -2px 2px 2px rgba(0, 0, 0, 0.05);
		-webkit-box-shadow: 0 -2px 2px 2px rgba(0, 0, 0, 0.05);
	} 
	.footer .row_2 {
		background-color: #E6E0D0;
		background-image: url("../img/template/DECO_grass-right_200x235.png");
        background-position: right bottom;
        background-repeat: no-repeat;
		margin: 0 0 30px 0;
	}
	.footer .row_3 {
		margin: 0 0 30px 0;
	}
	.footer .row_4 {
		background-color: #5E484A;
		margin: 0 0 30px 0;
	}
	.footer .row_5 {
		margin: 0 0 30px 0;
	}
	
/* reob 160811 */	
.info_button {
	background-color: #49393c;
	cursor: pointer;
	display: block;
	padding: 5px 0 5px 5px;
	position: fixed;
	right: -130px;
	top: 40%;
	width: 150px;
	z-index: 50;
	-webkit-transition: right 0.5s ease;
	-moz-transition: right 0.5s ease;
	-ms-transition: right 0.5s ease;
	-o-transition: right 0.5s ease;
	transition: right 0.5s ease;
}
.info_button.open,
.info_button:hover {
	right: 0;
}
	.info_button:before {
		background-image: url("../img/template/DECO_laerchwiese_100x50.png");
        background-repeat: repeat;
		content: '';
		display: block;
		height: 80px;
		position: absolute;
		right: 0;
		top: -80px;
		width: 100px;
	}
	.info_button > div {
		background-color: #dbcfb0;
		color: #ed1b24;
		font-size: 1.6em;   /* reob 170602 Original: font-size: 2.5em; */
		line-height: 1.2;
		padding: 10px 10px 10px 15px;
		text-align: right;
		text-transform: uppercase;
	}
		.info_button > div b {
			color: #49393c;
		}
	.info_button .icon {
		color: #ed1b24;
		font-size: 20px;
		height: 20px;
		left: 7px;
		line-height: 20px;
		margin: -10px 0 0 0;
		position: absolute;
		top: 50%;
		-moz-transition: all 1s ease-in-out;
		-webkit-transition: all 1s ease-in-out;
		-o-transition: all 1s ease-in-out;
		-ms-transition: all 1s ease-in-out;
		transition: all 1s ease-in-out;
		-moz-animation: blink normal 2s infinite ease-in-out;
		-webkit-animation: blink normal 2s infinite ease-in-out;
		-ms-animation: blink normal 2s infinite ease-in-out;
		animation: blink normal 2s infinite ease-in-out;
	}
	.info_button.open .icon,
	.info_button:hover .icon {
		display: none;
	}	
	

/*
 * Header
 */	

.h_contact {
	background-color: #463A3B;
	left: 0;
	padding: 10px 10px 10px 10px;
	position: absolute;
	top: 15px;
	width: 200px;
	box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
	-webkit-box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
}
	.h_contact a {
		color: #ffffff;
		display: block;
		height: 30px;
		line-height: 30px;
	}
	.h_contact a:visited {
		color: #ffffff;
	}
	.h_contact a:hover {
		color: #F19D10;
	}
		.h_contact a div {
			float: left;
			font-size: 0.9em;   /* reob 170602 Original: font-size: 1.4em; */
		}
		.h_contact a div:first-child {
			text-align: center;
			width: 30px;
		}
.lang_nav {
	position: absolute;
	right: 0;
	text-transform: uppercase;
	top: 15px;
}
	.lang_nav .main_nav_trigger {
		display: none;
	}
	.lang_nav .lang {
		display: inline-block;
		line-height: 30px;
		margin: 0 0 0 5px;
		text-align: center;
		box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
		-webkit-box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
	}
	.lang_nav .lang.lang_1 {
		margin-left: 0;
	}
		.lang_nav .lang a {
			background-color: rgba(255, 255, 255, 0.75);
			color: #5e484a;
			display: block;
			font-size: 0.75em;   /* reob 170602 Original: font-size: 1.2em; */
			font-weight: 400;
			height: 30px;
			padding: 0 5px 0 5px;
			width: 30px;
			transition: background-color 0.5s, color 0.5s;
    		-webkit-transition: background-color 0.5s, color 0.5s;
		}
		.lang_nav .lang a:visited {
			color: #5e484a;
		}
		.lang_nav .lang a:hover,
		.lang_nav .lang.act a {
			background-color: rgba(255,255,255,1);
			color: #5e484a;
		}
.main_logo {
	/* reob 150810 Original:
	background-color: #ffffff;
	*/
	display: block;
	left: 50%;
	margin: 0 0 0 -120px;
	position: absolute;
	top: 15px;
	width: 240px;
	/* reob 150810 Original:
	box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
	-webkit-box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
	*/
}
	.main_logo .frame .image {
		padding: 10px 20px 0 20px;   /* reob 150727 Original: padding: 20px 20px 20px 20px; */
		text-align: center;
		vertical-align: middle;
	}
		.main_logo .frame .image img {
			display: inline-block;
		}
.vista {
	height: 0;
	overflow: hidden;
	padding: 0 0 56.25% 0;
	position: relative;
}
.slogan,
.reviews {
	height: 100px;
	line-height: 100px;
}
.slogan {
	color: #ffffff;
	font-family: 'Alegreya', serif;
	font-size: 5.0em;   /* reob 170602 Original: font-size: 8.0em; */
	font-weight: 700;
	float: left;
	text-shadow: 0 0 10px #b2b2b2;
	width: 70%;
}
.reviews {
	float: right;
	text-align: right;
	width: 20%;   /* reob 150924 Original: width: 30%; */
}
	.reviews a {
		display: inline-block;
		margin: 0 0 0 10px;
	}
	.reviews a:first-child {
		margin-left: 0;
	}
		.reviews a img {
			max-height: 80px;
			width: auto;
		}
.main_nav > ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
	.main_nav > ul > li {
		float: left;
		height: 60px;
		position: relative;
		text-align: center;
		width: 25%;
	}
	.main_nav > ul > li.item_1 {
		text-align: left;
	}
	.main_nav > ul > li.item_4 {
		text-align: right;
	}
		.main_nav > ul > li > a {
			color: #5e484a;
			display: block;
			line-height: 60px;
			font-size: 1.25em;   /* reob 170602 Original: font-size: 2.0em; */
			font-weight: 400;
			transition: background-color 0.5s, color 0.5s;
    		-webkit-transition: background-color 0.5s, color 0.5s;
		}
		.darker_tone .main_nav > ul > li > a {
			color: #ffffff;
		}
		.main_nav > ul > li.item_1 > a {
			padding-left: 25px;
		}
		.main_nav > ul > li.item_4 > a {
			padding-right: 25px;
		}
		.main_nav > ul > li > a:visited {
			color: #5e484a;
		}
		.darker_tone .main_nav > ul > li > a:visited {
			color: #ffffff;
		}
		.main_nav > ul > li > a:hover,
		.main_nav > ul > li > a.act {
			background-color: #ffffff;
			color: #F19D10;
		}
		.darker_tone .main_nav > ul > li > a:hover,
		.darker_tone .main_nav > ul > li > a.act {
			background-color: #463A3B;
			color: #ffffff;
		}
		.main_nav > ul > li .sub_nav {
			background-color: #ffffff;
			left: 0;
			max-height: 0;
			overflow: hidden;
			position: absolute;
			top: 60px;
			width: 100%;
			box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
			-webkit-box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
			transition: max-height 0.5s;
    		-webkit-transition: max-height 0.5s;
		}		
		.alt_nav .main_nav > ul > li .sub_nav {
			background-color: rgba(255, 255, 255, 0.75);
			bottom: 60px;
			top: auto;
			box-shadow: 0 -4px 2px 2px rgba(0, 0, 0, 0.05);
			-webkit-box-shadow: 0 -4px 2px 2px rgba(0, 0, 0, 0.05);
		}
		.alt_nav .header.transform .main_nav > ul > li .sub_nav {
			bottom: auto;
			background-color: #ffffff;
			top: 60px;
			box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
			-webkit-box-shadow: 0 4px 2px 2px rgba(0, 0, 0, 0.05);
		}
		.main_nav > ul > li:hover .sub_nav {
			/* reob NEU 150727 */
				text-align: center;
			max-height: 500px;
		}
			.main_nav > ul > li .sub_nav ul {
				/* reob NEU 150727 */
					text-align: center;
				list-style-type: none;
				margin: 0;
				padding: 0;
			}
			.alt_nav .main_nav > ul > li .sub_nav ul {
				border-bottom: 5px solid #5E484A;
			}
			.alt_nav.darker_tone .main_nav > ul > li .sub_nav ul {
				border-color: #ffffff;
			}
			.alt_nav .header.transform .main_nav > ul > li .sub_nav ul,
			.alt_nav.darker_tone .header.transform .main_nav > ul > li .sub_nav ul {
				border-bottom: 0;
			}
				.main_nav > ul > li .sub_nav ul li a {
					color: #5e484a;
					display: block;
					font-size: 1.0em;   /* reob 170602 Original: font-size: 1.6em; */
					line-height: 40px;
				}
				.main_nav > ul > li .sub_nav ul li a:visited {
					color: #5e484a;
				}
				.main_nav > ul > li .sub_nav ul li a:hover,
				.main_nav > ul > li .sub_nav ul li a.act {
					color: #F19D10;
				}

/*
 * Main
 */

.content {
	text-align: center;
}
	.content .bc {
		font-size: 0.75em;   /* reob 170602 Original: font-size: 1.2em; */
		padding: 0 0 25px 0;
	}
		.content .bc a {
			color: #5e484a;
		}
		.content .bc a:visited {
			color: #5e484a;
		}
		.content .bc a:hover {
			color: #F19D10;
		}
	.content ul,
	.content ol {
		font-size: 1.1em;   /* reob 170602 Original: font-size: 1.8em; */
		list-style-position: inside;
		margin: 0;
		padding:  25px 0 25px 0;
	}
	.content .responsive_table {
	    overflow: hidden;
	    padding: 25px 0 25px 0;
	}
	    .content .responsive_table table {
	    	border: 1px solid #7E6C6E;
	        color: #666666;
	        font-size: 1.25em;   /* reob 170602 Original: font-size: 2.0em; */
	    }
	        .content .responsive_table table tr th,
	        .content .responsive_table table tr td {
	            text-align: left;
	        }
	        .content .responsive_table table tr th {
	            background-color: #5E484A;
	            color: #ffffff;
	            font-weight: 400;
	            padding: 10px 20px 10px 20px;
	        }
	        .content .responsive_table table tr td {
	            border-top: 1px solid #5E484A;
	            padding: 5px 20px 5px 20px;
	            transition: background-color 0.5s;
	            -webkit-transition: background-color 0.5s;
	        }
	        .content .responsive_table table tr:first-child td {
	        	border-top: 0;
	        }
	        .content .responsive_table table tr:hover td {
	            background-color: #EBE1E3;
        	}

/*
 * Footer
 */

.request .title {
	color: #ffffff;
	float: left;
	font-family: 'Alegreya', serif;
	font-size: 1.25em;   /* reob 170602 Original: font-size: 2.0em; */
	margin: 12px 0 0 0;
	width: 12.8%;
}
/* reob NEU 150727 */
.request .title-form {
	color: #ffffff;
	float: left;
	font-family: 'verdana';
	font-size: 1.0em;   /* reob 170602 Original: font-size: 1.6em; */
	margin: 27px 0 28px 0;
	width: 20%;
}

.request .form {
	color: #ffffff;
	float: right;
	margin: 12px 0 0 0;
	width: 84%;
}
.f_contact .address {
	float: left;
	font-style: normal;
	height: 0;
	overflow: hidden;
	padding: 0 0 24% 0;
	position: relative;
	text-align: center;
	width: 27.6%;
}
	.f_contact .address .frame {
		left: 0;
		position: absolute;
		top: 0;
	}
		.f_contact .address .frame .text {
			padding: 0 20px 0 20px;
			vertical-align: middle;
		}
			.f_contact .address .frame .text .title {
				display: block;
				font-family: 'Alegreya', serif;
				font-size: 1.6em;   /* reob 170602 Original: font-size: 2.5em; */
				margin: 0 0 25px 0;
			}
			.f_contact .address .frame .text p {
				font-size: 1.0em;   /* reob 170602 Original: font-size: 1.6em; */
				padding-bottom: 0;
				padding-top: 0;
			}
			.f_contact .address .frame .text .social {
				font-size: 1.25em;   /* reob 170602 Original: font-size: 2.0em; */
				margin: 25px 0 0 0;
			}
				.f_contact .address .frame .text .social a {
					color: #5e484a;
					margin: 0 0 0 5px;
				}
				.f_contact .address .frame .text .social a:first-child {
					margin-left: 0;
				}
				.f_contact .address .frame .text .social a:visited {
					color: #5e484a;
				}
				.f_contact .address .frame .text .social a:hover {
					color: #F19D10;
				}
.f_contact .weather {
	float: right;
	height: 0;
	overflow: hidden;
	padding: 0 0 24% 0;
	position: relative;
	text-align: center;
	width: 27.6%;
}
	.f_contact .weather .frame {
		left: 0;
		position: absolute;
		top: 0;
	}
		.f_contact .weather .frame .text {
			padding: 0 20px 0 20px;
			vertical-align: middle;
		}
			.f_contact .weather .frame .text #meteoprovbz_widget a {
				color: #5e484a;
			}
			.f_contact .weather .frame .text #meteoprovbz_widget a:visited {
				color: #5e484a;
			}
			.f_contact .weather .frame .text #meteoprovbz_widget a:hover {
				color: #F19D10;
			}
.f_contact .image {
	float: right;
	width: 44.8%;
}
.maps {
	text-align: center;
}
	.maps a {
		color: #5e484a;
		font-size: 1.1em;   /* reob 170602 Original: font-size: 1.8em; */
		font-weight: 700;
	}
	.maps a:visited {
		color: #5e484a;
	}
	.maps a:hover {
		color: #F19D10;
	}
.legal {
	color: #ffffff;
	font-size: 0.75em;   /* reob 170602 Original: font-size: 1.2em; */
	height: 30px;
	line-height: 30px;
}
	.legal .left {
		float: left;
		width: 35%;
	}
	.legal .right {
		float: left;
		text-align: right;
		width: 65%;
	}
		.legal .left a,
		.legal .right a {
			color: #ffffff;
		}
		.legal .left a:visited,
		.legal .right a:visited {
			color: #ffffff;
		}
		.legal .left a:hover,
		.legal .right a:hover {
			color: #F19D10;
		}
		.legal .right .break {
			display: none;
		}
.partner {
	text-align: center;
}
	.partner .frame .item {
		display: inline-block;
		padding: 0 20px 0 20px;
		vertical-align: middle;
	}
		.partner .frame .item img {
			max-height: 60px;
			width: auto;
		}