html { -webkit-text-size-adjust: 100%; }

#mobileNavItem { top: 15px; padding: 10px; width: 20px; text-align: center; cursor: pointer; color: #ffec00; background: #005222; clear: both; font-size: 130%; line-height: initial; }
#mobileNavItem span,
	#mobileSubNavItem span { text-indent: -9999px; display: block; height: 0; }
#mobileSubNavItem { cursor: pointer; font-size: 110%; text-align: center; color: #004B92; background: #ffec00; display: inline-block; width: 20px; padding: 10px; margin-top: 1%; z-index: 2; }


@media only screen and (max-width: 1400px) {
	#headline h1 .title { font-size: 200%; }
	#headline h1 .subtitle { font-size: 120%; }
}

@media only screen and (max-width: 1140px) {
	.wrap  { width: 96%; margin: 0 2%; }
	#sliderFrame.wrap { width: 96%; margin: -150px 2% 0; }
	
	#horizontalNavi > li { font-size: 120%; }
	
	#headline h1 { padding: 1.5% 200px 0.5%; }
	#headline h1 .title { font-size: 150%; margin-left: -40%; }
	#headline h1 .subtitle { font-size: 100%; margin-right: -30%; }
}

@media only screen and (max-width: 1024px) {
	
	#mobileNavItem.mobileonly { display: inline-block; left: inherit; right: 20px; }

	nav#topNavigation { z-index: 10; }
	
	nav#topNavigation .wrap { width: 100%; margin: 40px 0 0; }
	
	#horizontalNavi { width: 100%; height: 0; overflow: hidden; background: #fff; display: block; float: none; position: relative; left: auto; bottom: auto; } 
	#horizontalNavi > li { width: 100%; display: block; line-height: initial; border-top: solid 1px #005222; border-bottom: none; position: relative; }
	#horizontalNavi > li > a,
		#horizontalNavi > li.active > a { color: #005222; line-height: initial; padding: 10px; border-bottom: none; }
	#horizontalNavi > li.active { color: #fff; background: #005222; line-height: initial; border-bottom: none; }
	#horizontalNavi > li.active a { color: #fff; }
	#horizontalNavi > li.active a:hover { color: #fff; background: #005222; }
		
	#horizontalNavi > li:hover { border-top: solid 1px #005222; border-bottom: none; background: transparent; }
	#horizontalNavi > li:hover > a { color: #005222; text-decoration: none; border-bottom: none; background: transparent; }
		
	#horizontalNavi > li:hover ul, 
		#horizontalNavi > li > a:hover ul { height: 0; }
		
	#horizontalNavi ul { position: relative; }
	#horizontalNavi ul.simpleDropDown.level-1 { width: 90%; margin: 0 5%; }
	#horizontalNavi ul li + li { border-top: 1px dotted #fff; }
	#horizontalNavi ul li a { padding: 10px; }
	
	#horizontalNavi ul li:hover { background: #005222; }
	#horizontalNavi ul li:hover a { background: transparent; color: #fff; }
	
	#horizontalNavi .fa-caret-down { display: none; }
	.horizontalNavi > span { display: block; width: 100%; }
	.horizontalNavi > span > i { display: none; }
	#horizontalNavi > li.active span.mobileSubItem { color: #005222; }
	#horizontalNavi span.mobileSubItem { left: inherit; position: absolute; right: 0px; top: 0; width: 5%; padding: 10px; text-align: center; color: #005222; font-size: 170%; cursor: pointer; z-index: 2;}
	
	#horizontalNavi .simpleDropDown.level-2 { display: none; }
	
	.sliderItemImage { height: 300px; }
	
	#calendarListing li { width: 50%; }
	.bookingreqmodule .defaultField { padding-bottom: 2%; }
	.bookingreqmodule .defaultField input, .bookingreqmodule .defaultField select, .bookingreqmodule .defaultField textarea { padding: 2%; font-size: 110%; }
}

@media only screen and (max-width: 850px) {
	nav#topNavigation { position: fixed; background: #fff; border-bottom: solid 1px #005222; z-index: 100; }
	nav#topNavigation .wrap { height: 70px; margin-top: 0; }
	nav#topNavigation #horizontalNavi > li { font-size: 110%; }
	nav#topNavigation #horizontalNavi > li > a { line-height: 30px; }
	nav#topNavigation #horizontalNavi ul li { font-size: 90%; }
	nav#topNavigation #header-logo img { height: 60px; margin: 5px 20px 0; }
	
	.home header { height: 40vh; min-height: 380px; }
	#headerFilter > div#headline { margin-top: 80px; }
	.sliderItemImage { height: 250px; }
	
	#headline h1 { padding: 1.5% 180px 0.5%; }
	#headline h1 .title { font-size: 130%; }
	#headline h1 .subtitle { font-size: 80%; }
	
	footer { text-align: center; }
	#footerNavi { padding: 15px 0 5px; }
	footer .copyright { display: block; float: none; text-align: center; }
	
	#bookingInfo { width: 100%; }
	.calendar.colLeft, .requestForm.colRight,
		.apartment.colRight, .apartment.colLeft { width: 100%; margin: 0; floating: none; }
	.defaultField.apartmentSelectBox { position: absolute; left: 0; top: 0; width: 96%; padding: 2%; }
	.requestForm.colRight, .apartment.colRight { margin: 5% 0; }
	#bookingInfo .mobile { position: relative; left: inherit; }
	#bookingInfo .normal { position: absolute; left: -9999px; }
	/*#moduleContent.bookingreqmodule { padding-top: 80px; position: relative; }*/
}

@media only screen and (max-width: 800px) {
	section#contentPages ul.widgetlist-pages  li { width: 48%; margin-bottom: 15px; }
	section#contentPages ul.widgetlist-pages  li:nth-child(2n+1) { margin-left: 0; }
	section#contentPages ul.widgetlist-pages  li:nth-child(2n+2) { margin-right: 0; }
}

@media only screen and (max-width: 750px) {
	#headline h1 { padding: 1.5% 150px 0.5%; }
	
	aside#subNavi { margin-left: -300px; margin-right: 0; padding: 50px 0 0 0; }
	section#contentsection.colRight { width: 100%; margin-left: 0; }
	
	#mobileSubNavItem { left: 0; }
	.default h1,
		.backLinkTop { margin-left: 50px; z-index: 1; position: relative; }
		
	#contentStartNews { width: 45%; }
	#contentStartAdds { width: 49%; }
	#contentStartLogos { clear: both; float: none; width: 100%; margin: 10px 0; }
	#contentStartLogos li { width: 25%; }
}

@media only screen and (max-width: 700px) {
	.sliderItemImage { height: 200px; }
}

@media only screen and (max-width: 650px) {
	#headline h1 { padding: 1.5% 0px 0.5%; }
	#headline h1 .title { margin-left: 0; }
	#headline h1 .subtitle { margin-right: 0; }	
	
	/*#contentStartNews,
		#contentStartLogos { width: 100%; margin: 0; float: none; }
	#contentStartNews { width: 96%; }*/
}

@media only screen and (max-width: 550px) {
	.home header { height: 30vh; min-height: 300px; }
	#sliderFrame.wrap { margin: -85px 2% 0; }
	.sliderItemImage { height: 150px; }
	
	#headline h1 .title { font-size: 110%; }
	#headline h1 .subtitle { font-size: 50%; }
	
	.articleImage.col-w40,
		.articleImage.col-w33,
		.articleImage.col-w30 { width: 50%; }
		
	.kontakt#text, 
		.kontakt #moduleContent,
		.kontakt #contentBlank #text, 
		.kontakt #contentBlank #moduleContent { width: 100%; margin: 0 0 2% 0; float: none; clear: both; overflow: hidden; }
		
	#cookieInfo .col-w75 { width: 64%; }
	#cookieInfo .col-w25 { width: 34%; }
	
	.calLegend li { float: none; padding: 1% 0;  }
	#calendarListing li { width: 100%; }
	.calLegend li span { vertical-align: text-bottom; }
	
	.requestForm .col-w50 { float: none; margin: 0; width: 100%; }
	
	.PluginContainer.TColCon > div { width: 100%; float: none; margin: 0 0 1% 0; }
}

@media only screen and (max-width: 500px) {
	#contentStartNews { width: 96%; }
	#contentStartAdds { width: 100%; margin-top: 10px; }
}
	
@media only screen and (max-width: 450px) {
	section#contentPages ul.widgetlist-pages  li { width: 100%; float: none; margin: 0 0 15px 0; }
}

@media only screen and (max-width: 400px) {
	.sliderItemImage { height: 100px; }
	
	#contentStartLogos li { width: 50%; }
	
	.articleImage.col-w40,
		.articleImage.col-w33,
		.articleImage.col-w30 { width: 100%; float: none; margin: 1% 0; }
		
	.PGalConItem { width: 32%; }
	.PGalConItem:nth-child(5n+1),
		.PGalConItem:nth-child(5n+5) { clear: none; margin: 1%; }
	.PGalConItem:nth-child(3n+1) { clear: left; margin-left: 0; }
	.PGalConItem:nth-child(3n+3) { margin-right: 0; }
}

@media only screen and (max-width: 360px) {
	#cookieInfo .col-w75, 
		#cookieInfo .col-w25 { width: 100%; margin: 1% 0; float: none; }
}