@CHARSET "UTF-8";

* {
	margin: 0px;
	padding: 0px;
} 
	
html {
	font-size: 100%;
}
	
body {
	background-color: #fff;
	font-family: 'Work Sans', sans-serif;
	font-weight: 200;
	width: 100%;
	overflow: scroll;
}

strong {
	font-weight: 600;
}

.clearfix:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}

header {
	position: relative;
	background-color: white;
	height: 80px;
}
#logo {
	background-image: url("../img/a2bh_logo.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 200px 226px;
	width: 200px;
	height: 226px;
	position: absolute;
	right: 150px;
	top: 0px;
	z-index: 1000;
	box-shadow: 0 0 5px 1px #888888;
}
#menu {
	background-image: url("../img/menu_icon.png");
	background-repeat: no-repeat;
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 50px;
	top: 25px;
	z-index: 1000;
	cursor: pointer;
	display: none;
}
nav {
	list-style: none;
	margin-left: 150px;
	padding-top: 26px;
	transition: all 1s ease-in-out;
}
nav ul {
	
}
nav li {
	float: left;
	list-style-type: none;
	font-weight: 500;
	font-size: 1.2rem;
	color: #6b3939;
	margin-right: 8px;
	text-transform: uppercase;
}

nav a {
	text-decoration: none;
	color: #6b3939;
	display: block;
	padding-bottom: 3px;
	margin-bottom: 1px;
}
nav li:hover {
	border-bottom: solid 3px #f29400;
}

nav li:hover a {
	border-bottom: solid 3px #e2001a;
}

#content {
	position: absolute;
	left: 0px;
	top: 80px;
	right: 0px;
	bottom: 120px;
}

.content {
	padding-left: 150px;
	padding-right: 380px;
	padding-bottom: 20px;
	padding-top: 20px;
	background-color: #6b3939;
	color: white;
	min-height: 55%;
}

#content a {
	color: white;
}

#content h2 {
	color: white;
}

#content ul {
	margin-left: 20px;
	line-height: 22px;
	margin-bottom: 20px;
}


#booking {
	position: fixed;
	left: 0px;
	right: 0px;
	bottom: 0px;
	background-color: white;
	padding-left: 150px;
	padding-right: 150px;
	padding-top: 20px;
	padding-bottom: 5px;
	border-top: solid 7px #f29400;
	min-height: 88px;
}

#booking h3 {
	font-size: 1.5rem;
	color: #6b3939;
	text-transform: uppercase;
}

hr {
	max-width: 800px;
    height: 4px; 
    background: #f29400;
    color: #f29400;
}

h1 {
	font-weight: 500;
	font-size: 1.8rem;
	color: #f29400;
	margin-bottom: 20px;
}

h2 {
	font-weight: 500;
	font-size: 1.2rem;
	color: #6b3939;
}

h3 {
	margin-top: 20px;
	margin-bottom: 20px;
	font-weight: 500;
}

.gallery_image {
	margin-right: 5px;
}

h4 {
	font-weight: 200;
	font-size: 0.9rem;
	color: #6b3939;
	text-transform: uppercase;
	margin-bottom: 20px;
}

p {
	text-align: justify;
	font-weight: 200;
	font-size: 0.9rem;
	margin-bottom: 20px;
	max-width: 800px;
	line-height: 22px;
}

div.pricetable_table { 
	display: table; 
	border-collapse: collapse;
	margin-bottom: 20px;
	width: 1000px;
	height: 200px;
}

div.pricetable_tr { 
	display: table-row;
	background-color: white;
}

div.pricetable_th {
	font-weight: 500;
	font-size: 1rem;
	display: table-cell;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #f29400;
	color: white;
}

div.pricetable_td { 
	display: table-cell; 
	font-size: 0.9rem;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #6b3939;
}

span.pricetable_nights {
	display: none;
}

.selector {
	display: inline-block;
	background-repeat: repeat-x;
	overflow: hidden;
	text-align: center;
	width: 300px;
	height: 45px;
	background-color: #6b3939;
	color: white;
	margin-top: 10px;
}

footer {
	background-color: #6b3939;
	height: 485px;
	padding-left: 150px;
	padding-top: 20px;
	color: white;
	font-weight: 400;
	font-size: 0.8rem;
	padding-bottom: 240px;
}

footer.invert {
	background-color: white;
	color: #6b3939
}

footer ul {
	margin-left: 0px !important;
}

footer li {
	float: left;
	list-style-type: none;
	font-weight: 500;
	font-size: 0.9rem;
	margin-right: 8px;
	text-transform: uppercase;
}
footer a {
	text-decoration: none;
	color: white;
}

footer.invert a {
	text-decoration: none;
	color: #6b3939;
}

/******************** FORM *******************/


.form {
	max-width: 800px;
}

select, textarea, input.text {
	background-color: white;
	font-size: 12pt;
	border: solid 1px #999;
	font-family: 'Open Sans', sans-serif;
	width: 96%;
}

select {
	width: auto;
}

div.form_row select, div.form_row textarea, div.form_row input.text {
	margin: 1%;
	padding: 2px;
}

input.checkbox {
	margin-right: 5px;
}


textarea.textarea {
	min-height: 100px;
}

td.labels input, td.labels textarea, td.labels select {
	margin-bottom: 10px;
}

a.greybutton {
	display: block;
	height: 30px;
	background-color: #cecece;
	border: solid 1px #aaa;
	color: black;
	text-shadow: 1px 1px 1px #ccc;
	font-size: 15px;
	padding-left: 5px;
	padding-right: 5px;
	font-family: 'OpenSansBold', Helvetica, sans-serif;
	font-weight: normal;
	margin-top: 5px;
	padding-top: 0px;
	cursor: pointer;
	line-height: 28px;	
	text-align: center;
}

a.greybutton:hover {
	text-decoration: none;
}

label {
	font-size: 12pt;
}

label.required {
	font-weight: bold;
}

.labels label {
	font-family: 'OpenSansBold', Helvetica, sans-serif;
	font-weight: normal;
}

.form_field label {
	font-size: 0.9em;
}

table.form {
	width: 100%;
	border-collapse: collapse;
}

table.form tr.separator_before, table.form tr.separator_after {
	display: none;
}

table.form tr.tr1, table.form tr.tr2 {
	height: 40px;
}

table.form tr.tr1 {
}

table.form tr.tr2 {
}

table.form td.labels {
}

table.form th {
	text-align: left;
	height: 30px;
	padding-top: 20px;
	border-bottom: dotted 1px black;
}

table.form_errordata {
	margin-bottom: 15px;
}

table.form_errordata th {
	text-align: left;
	font-size: 1.2em;
	color: #AE0000 !important;
}

ul.form_errors {
	padding: 5px;
	padding-left: 30px;
	border: solid 2px #ae0000;
	margin-top: 5px;
}

ul.form_errors li {
	color: #AE0000 !important;
	font-size: 1.0em !important;
	line-height: 25px !important;
	list-style-image: none !important;
}

td.labels {
	width: 160px;
}

td.fields {
	font-size: 1.0em !important;
}

div.form_row {
	position: relative;
	overflow: hidden;
	display: table;
	width: 100%;
}

div.form_row div {
	display: table-cell;
	vertical-align: middle;
}

div.form_displaygroup {
	font-weight: 500;
	font-size: 1.2rem;
	margin-top: 20px;
}

div.form_row1, div.form_row2 {
	min-height: 40px;
}

div.form_label {
	width: 300px;
}

div.form_submitbutton {
	padding-left: 160px;
	margin-left: 1%;
}

div.form_success {
	background-color: #009e00; 
	color: white; 
	padding: 10px;
}


@media only screen and (min-width: 0px) and (max-width: 650px) {
	div.form_row1, div.form_row2 {
		min-height: 50px;
		margin-bottom: 10px;
	}
	div.form_row div {
		display: block;
	}
	
	div.form_label {
		width: 100%;
	}
	
	div.form_submitbutton {
		padding: 0px;
	}
	
	select, textarea, input.text {
		margin: 0px;
	}
	
	input.formbutton, input.actionbutton, a.actionbutton_big {
		font-size: 14px;
		width: 220px
	}
	
	a.greybutton {
		width: 208px;
	}
}

div.filter {
	margin-top: 10px;
	margin-bottom: 20px;
	position: relative;
	height: 75px;
	border-top: solid 1px black;
	border-bottom: solid 1px black;	
}

table.data {
	width: 100%;
	margin-bottom: 10px;
}

table.data thead tr th {
	color: #f29400;
	font-size: 1.2rem;
	font-weight: 500;
	padding-bottom: 20px;
}

table.data tbody tr {
	border-top: solid 1px #cccccc;
	border-bottom: solid 1px #cccccc;
}

table.data tbody tr td {
	line-height: 28px;
	padding: 4px;
}

table.data tr.trbeschriftungback {

}

table.data tr.tr2 {

}

div.center, div.center > * {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.image {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
	height: 100%;
	position: relative;
}

.home_imagecontainer {
	position: relative;
	height: 100%;
}

/*
.textlayer {
	position: absolute;
	bottom: 40px;
	right: 150px;
	background-image: url(../img/layer_bg.png);
	max-width: 600px;
	max-height: 300px;
	padding: 20px;
	color: white;
}
*/
.textlayer h1 {
	margin: 0px !important;
}

.textlayer p {
	text-align: left !important;
}

#bookingprogress {
	clear: both;
	display: none;
}

#bookingprogress li {
	float: left;
	width: 16.6%;
	text-align: center;
	padding-top: 100px;
	background-size: 120px 80px;
	background-position: center top;
	background-repeat: no-repeat;
	list-style-type: none;
	color: #6b3939;
	padding-bottom: 20px;
}

#bookingprogress span.title {
	text-transform: uppercase;
	font-weight: 600;
}

.piktogramme {
	width: 100%;
	margin-bottom: 40px;
	height: 150px;
}

.piktogramme > img {
	float: left;
}

.piktogramme > span {
	margin-left: 20px;
	line-height: 150px;
}

p.marquee {
    left: 0%;
    right: 0%;
    position: absolute;
    bottom: 10%;
    margin: 0 auto;
    overflow: hidden;
    white-space: nowrap;
    box-sizing: border-box;
    animation: marquee 25s linear infinite;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 10px;
    max-width: 1500px;
    text-align: center;
    color: #e2001a;
    font-weight: bold;
}

p.marquee:hover {
    animation-play-state: paused;
}

@keyframes marquee {
    0%   { text-indent: 105% }
    100% { text-indent: -150% }
}