h1, h2, h3, h4, h5 {
	margin: 0px 0px 0px 0px;
	padding: 0;
}

p {
	margin: 0;
	padding: 0;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.group:after {
	content: "";
	display: table;
	clear: both;
}

.left-column, .right-column {
	box-sizing: border-box;
	width: 47.5%;
}

.left-column {
	float: left;
}

.right-column {
	float: right;
}

.green {
	background-color: #85b200;
}

.yellow {
	background-color: #FAF070;
}

.orange {
	background-color: #F77F7F;
}

.gray {
	background-color: gray;
}

.circle {
	display: inline-block;
	vertical-align: top;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin-right:10px;
}

.zimmer-typen .circle {
	margin-top: 5px;
}

.down-arrow {
	position: relative;
	float: right !important;
	margin-left: 15px;
	width: 36px;
	height: 22px;
	background-image: url(/images/icons/sprite-arrow-all.svg);
	background-position: -24px -22px;
	background-repeat: no-repeat;
}

.down-arrow:hover {
	background-position: -24px -68px;
}

.up-arrow {
	background-position: -24px 0;
}

.up-arrow:hover {
	background-position: -24px -46px;
}

span.down-arrow {
	position: relative;
	top: 12px;
  margin-left: 0;
	/*margin-right: 10px;*/
	/*width: 16px;
	height: 16px;*/
}

span.up-arrow {
}

.medium {
	/*width: 20px;
	height: 20px;*/
	transform: scale(0.75, 0.75);
	
}

.small {
	/*width: 16px;
	height: 16px;*/
	transform: scale(0.5, 0.5);
}

.toggle-arrow{
	    position: relative;
    float: right !important;
    margin-left: 15px;
    width: 36px;
    height: 22px;
    background-position: -24px -22px;
    background-repeat: no-repeat;
    font-size: 3em;
    top: -12px;
    color:#0e412b;
}
.inner-arrow {
    top: 4px;
}
.room-arrow {
    top: -8px;
}
/***************************************************************************************/
/*	Allgemein */
/***************************************************************************************/

body {
	width: 875px;
	margin: 0 auto;
	padding-top: 20px;
	padding-bottom: 50px;
	color: #333333;
	font-size: 14px;
	font-family: 'Roboto', Calibri, Tahoma;
	line-height:22px;
}

fieldset {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
}

fieldset > header {
	padding-top: 15px;
	padding-bottom: 15px;
}


fieldset > section {
	padding: 20px 50px;
	background-color: transparent;
}

fieldset > header {
	border-top: solid thin;
	background-color: transparent;
	cursor: pointer;
}
#selectedRooms header {
	/* border-top: solid thin #93a1af; */
	background-color: transparent;
	cursor: pointer;
}

fieldset > header > h2 {
	display: inline-block;
}

fieldset > header div, .zimmer > header:first-child > div {
	float: right;
}

fieldset > header p, #selectedRooms header p {
	margin-left: 15px;
	display: inline-block;
}

.button {
	padding: 15px 40px;
	background: #1e5e42;
	border-radius: 22px;
	color: #ffffff;
	font-size: 10px;
	letter-spacing: 2px;
	cursor: pointer;
    text-transform: uppercase;	
	transition: 0.1s ease-out;
}

.button:hover {
	background: #96b4af;
}


/***************************************************************************************/
/*	Überschriften */
/***************************************************************************************/

h2 {
	color: #0e412b;
	font-size: 18px;
	font-weight:normal;
}

h3 {
	font-size: 18px;
	font-weight:normal;
}

h2#date-help {
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: normal;
}


h4.zimmer-bezeichnung {
	display: inline-block;
	font-weight: 300;
}

/*.zimmer-bezeichnung.selected + .down-arrow:before {
	position: absolute;
	margin-left: 10px;
	top: 0;
	left: -40px;
	color: #8AB72F;
	font-family: entypoj, sans-serif;
	font-size: 2em;
	content: "\2713";
}*/

header.selected {
	background-color: #A3D900 !important;
}

header.selectedgreen {
	background-color: #D6FF59 !important;
}

header.selectedred {
	background-color: #FCCFCF !important;
}

header.selectedyellow {
	background-color: #FEFCE2 !important;
}


.season-info h2 {
	margin-bottom: 20px;
}

.season-info p {
	line-height: 24px;
	/* font-family: WaldhausSils1; */
}

.season-info {
	margin-bottom: 20px;
}

/***************************************************************************************/
/*	Navigation */
/***************************************************************************************/

a {
	color: #749c96;
	text-decoration:none;
}

.tabs {
	border-bottom: thin solid #D7D7D7;
}

.tabs > button {
	padding: .5em 2em;
	border: thin solid #D7D7D7;
	border-bottom: none;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	background-color: white;
}

.tabs > button.active {
	background-color: #D7D7D7;
}


/***************************************************************************************/
/*	Formulare */
/***************************************************************************************/

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea,
select {
	box-sizing: border-box;
	width: 100%;
	padding: 7px 9px 7px 9px;
	background: transparent;
	border: 1px solid #93a1af;
	border-radius: 0;
	line-height: 1.5;
}

input:focus,
textarea:focus,
select:focus {
/*	background: rgba(172, 126, 73, 0.10); */
}





/***************************************************************************************/
/*	Fehlerbehandlung */
/***************************************************************************************/

label.error {
	width: auto !important;
  margin: 0;
  margin-top: 5px;
	/*margin-left: 153px;*/
	color: red;
}


/***************************************************************************************/
/*	Reisedatum */
/***************************************************************************************/

.legende {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-around;
	margin-top: 10px;
	color: #2E2E2E;
	font-size: 12px;
	text-transform: uppercase;
}

.legende > * {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.legende td:not(.square) {
	padding: 2px 10px;
}

.square {
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	width: 15px;
	height: 15px;
	margin-right: 10px;
  border: 1px solid #979797;
}

.legende span {
	position: relative;
	top: 1px;
}


/***************************************************************************************/
/*	Zimmer */
/***************************************************************************************/

.zimmer {
	/* font-family: WaldhausSils1; */
}

#angeboteZimmer {
	margin-top: 20px;
}

#angeboteZimmer h3 {
	display: inline-block;
}

#selectedRooms header {
	background-color: #CBE1D8;
	border-radius: 3px;
}

#selectedRooms section header {
	position: relative;
	background-color: #CBE1D8;
	border-radius: 3px;
}

#selectedRooms section header .down-arrow {
	position: absolute;
	top: 8px;
	right: 10px;
}

div.erwachsenen-auswahl {
	display: inline-block;
}

div.kinder-auswahl {
	display: inline-block;
	margin-left: 20px;
}

.erwachsenen-auswahl .select-wrapper,
.kinder-auswahl .select-wrapper {
	display: inline-block;
	width: 55px;
}

li.zimmer {
	/*border: thin solid #D7D7D7;*/
}

li.zimmer > section {
	background-color: white;
}

li.zimmer > header {
	padding: 10px;
}

li.zimmer > header > div {
	line-height: 1.75em;
}

#selectedRooms > li + li {
	margin-top: 5px;
}

#selectedRooms > li > header {
}

#selectedRooms > li > section {
	padding: 20px;
	border-radius:3px;
}


ul.alter {
	margin-top: 15px;
}

ul.alter li + li {
	margin-top: 5px;
}

ul.alter li > * {
	display: inline-block;
}

ul.alter li .select-wrapper {
	width: 55px;
}


ul.zimmer-typen {
	margin-top: 15px;
}

ul.zimmer-typen > li {
	background-color: white;
}

ul.zimmer-typen li > header {
	padding: 10px;
}

ul.zimmer-typen > li + li {
	margin-top: 10px;
}

ul.zimmer-typen div.left-column,
ul.zimmer-typen div.right-column
{
	padding: 10px;
}

ul.preis-liste > li {
	padding-left: 10px;
	border-radius: 3px;
	background-color: #CBE1D8;
	overflow: hidden;
}

ul.preis-liste > li:nth-child(even) {
	/* background-color: #ebebeb; */
}

ul.preis-liste > li > label {
	display: inline-block;
	width: 100%;
	height: 45px;
	margin: 0;
	padding: 0;
	line-height: 45px;
	cursor: pointer;
}

ul.preis-liste > li > label > input {
	margin-right: 10px;
	vertical-align: middle;
}

ul.preis-liste > li + li {
	margin-top: 10px;
}

span.preis {
	float: right;
	padding: 0 0.5em;
	width: 70px;
	text-align: right;
	background-color: #1e5e42;
	color: white;
}

p.beschreibung {
	padding: .5em;
	font-size:12px;
	line-height: 20px;
}

span.rate-bezeichnung {
	display: inline-block;
	max-width: 167px;
	max-height: 100%;
	padding: 2px 0;
	overflow: hidden;
	vertical-align: middle;
	line-height: normal;
}

.preis-liste .aussichts-preis {
	margin-top: 50px !important;
}


/* Slider */
.flexslider {
	margin: 0 auto;
	margin-bottom: 60px;
	/*width: 300px;*/
}

.flex-direction-nav a:before {
	font-size: 20px;
}

.flex-control-nav li {
	bottom: -30px;
	margin: 0 8px;
}

a.delete-room-button {
	display: none;
	position: absolute;
	top: 10px;
	right: -25px;
	color: #969696;
}


/***************************************************************************************/
/*	Zusatzleistungen */
/***************************************************************************************/

fieldset#zusatz > section {
	background-color: white;
}

#zusatzListe {
	width: 75%;
}

#zusatzListe .select-wrapper {
	display: inline-block;
	width: 55px;
}

#zusatzListe select {
	vertical-align: middle;
}

.zusatz-titel {
	font-weight: 300;
	display: inline-block;
	vertical-align: middle;
	/* max-width: 170px; */
	line-height: 1.5;
}

.zusatz-beschreibung {
	padding: 10px;
	font-size: 12px;
	line-height: 20px;
}

/***************************************************************************************/
/*	Persönliche Angaben	*/
/***************************************************************************************/

/*fieldset#gast-daten input[type=text],
fieldset#gast-daten input[type=email],
fieldset#gast-daten input[type=password],
fieldset#gast-daten input[type=tel] {
	width: 100%;
}*/

div.gast-login {
	width: 50%;
	margin-bottom: 30px;
	padding: 1em;
	border: solid thin #d7d7d7;
	background-color: #e3dfd8;
}

div.gast-login > div + div {
	margin-top: 10px;
}

section.personal > p {
	margin-bottom: 10px;
}

section.personal label,
.zimmer label {
	display: block;
	margin-bottom: 10px;
	color: #373737;
	/* font-family: WaldhausSils2; */
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.zimmer label {
	display: inline-block;
}

section.personal p + p {
	margin-top: 30px;
}

#gast-daten textarea {
	box-sizing: border-box;
	width: 100%;
}


/***************************************************************************************/
/*	Buchungsübersicht */
/***************************************************************************************/

#summary {
	/* font-family: WaldhausSils1; */
}

#summary h3 {
	color: inherit;
}

div#rechnung p > span,
div#rechnung li > span {
	float: right;
}

div#rechnung > div + div {
	margin-top: 20px;
}

p.zusammenfassung {
	margin-top: 10px;
	margin-bottom: 20px;
}

p.zusammenfassung > span {
	display: inline-block;
	width: 100px;
}

p.summe {
	margin-bottom: 10px;
}

p.total {
	margin-top: 15px;
	font-size: 1.4em;
	margin-bottom: 10px;
}

p.indent {
	margin-left: 25px;
}

p.rechnung > span,
p.summe > span,
p.total > span {
	/*margin-right: 20px;*/
	float: right;
}

input[type=submit] {
/*	background-color: #AC7E49;
	color: white;
	font-size: 1.4em;
	border: none;
	float: right;  */
}

input[type=submit]:hover {
	/* background-color: #7C5E3C; */
}


/* Tablet */
@media only screen and ( min-width: 660px ) and ( max-width: 972px ) {
	/* Allgemein */
	body {
		width: 620px;
	}

	fieldset > section {
		padding: 15px 25px;
	}

	fieldset > header div,
	.zimmer header:first-child > div {
		float: none;
	}

	fieldset > header p,
	#selectedRooms header p {
		margin: 0;
	}

	.left-column,
	.right-column {
		width: 48%;
	}

	span.down-arrow {
		margin-left: 5px;
		margin-right: 2px;
	}


	/* Zimmer */
	.flexslider {
		/*width: 225px;*/
	}

	span.rate-bezeichnung {
		max-width: 84px;
		font-size: 13px;
	}

	a.delete-room-button {
		right: -15px;
	}


	/* Zusatzleistungen */
	#zusatzListe {
		width: 75%;
	}


	/* Persönliche Angaben */
	section.personal label {
		display: block;
	}

	fieldset#gast-daten input[type=text],
	fieldset#gast-daten input[type=email],
	fieldset#gast-daten input[type=password],
	fieldset#gast-daten input[type=tel]  {
		width: 245px;
	}

	label.error {
		margin-left: 0;
	}


	/* Buchungsübersicht */
	label#agb {
		display: inline-block;
		max-width: 300px;
	}
}


/* Smartphone */
@media only screen and (max-width: 659px) {
	/* Allgemein */
	body {
		width: 320px;
	}

	h2 {
		font-size: 1.4em;
	}

	fieldset > section {
		padding: 10px 0px;
	}

	fieldset > header div,
	.zimmer header:first-child > div {
		float: none;
	}

	fieldset > header p,
	#selectedRooms header p {
		display: block;
		margin: 0;
	}

	.left-column,
	.right-column {
		width: 100%;
		float: none;
	}

	.left-column {
		margin-bottom: 30px;
	}

	.legende {
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.legende > *:not(last-child) {
		width: 100%;
		max-width: 275px;
		margin-bottom: 5px;
	}

	.down-arrow {
		margin-left: 0;
	}


	/* Zimmer */
	#selectedRooms > li > header {
		margin: 10px;
	}

	#selectedRooms > li > section {
		margin: 10px;
		padding: 10px;
	}

	div.erwachsenen-auswahl {
		display: block;
	}

	div.kinder-auswahl {
		display: block;
		margin-top: 10px;
		margin-left: 0;
	}

	div.erwachsenen-auswahl label,
	div.kinder-auswahl label {
		display: inline-block;
		width: 100px;
	}

	h4.zimmer-bezeichnung {
		max-width: 150px;
		font-size: 0.9em;
	}

	.flexslider {
		/*width: 250px;*/
	}

	span.rate-bezeichnung {
		max-width: 90px;
	}

	a.delete-room-button {
		right: -10px;
	}


	/* Zusatzleistungen */
	#zusatzListe {
		width: 100%;
	}

	.zusatz-titel {
		max-width: 100px;
	}


	/* Persönliche Angaben */
	section.personal label {
		display: block;
	}

	fieldset#gast-daten input[type=text],
	fieldset#gast-daten input[type=email],
	fieldset#gast-daten input[type=password],
	fieldset#gast-daten input[type=tel]  {
		width: 100%;
	}

	label.error {
		margin-left: 0;
	}


	/*Buchungsübersicht */
	input[type=submit] {
		margin-top: 25px;
	}
}
