@charset "utf-8";

@media (max-width:2000px){
		/* Flickity-Gallery */
			.flickity-viewport { position:absolute; top:0; right:0; bottom:0; left:0; }
			.flickity-gallery { position:relative; height:0; padding-bottom:28%; }


		/* Maps */
			#maps-wrapper { height:0; padding-bottom:28%; }
}

@media (max-width:1340px){
	/* Grundlayout */

	/* Header */
		#logo { margin-left:20px; }
		#nav { margin-right:20px; }

		/* Navigation */
			#dsmenus > li > ul { max-width:calc(100vw - 40px); right:20px; /*left:20px;*/ }
			#dsmenus > li > ul > li + li { padding-left:25px; }

	/* Footer */
		#sitefooter { padding:0 20px; box-sizing:border-box; }

	/* Articledesign */
		.dsarticle_content { padding:0 20px; box-sizing:border-box; }

		/* Article 1 */
			.dsbody_1 { column-gap:30px; }

		/* Article 4 */
			.dsarticle_4 .dsarticle_content { padding:0; }

		/* Article 5 */
			.dsarticle_5 { margin-left:0; margin-right:0; }
			.dsarticle_5 .dsarticle_content { padding:0; }

}

@media (min-width:1231px){
	#dsmenus { display:block !important; }
}

@media (max-width:1230px){
	
	/* Header */
		.scrolled #dssiteheader,
		#dssiteheader { position:fixed; z-index:5; top:0; right:0; left:0; }

		.scrolled #siteheader,
		#siteheader { padding-top:10px; }

		/* Logo */
			#logo,
			.scrolled #logo { max-width:250px; height:65px; }

		/* Navigation */
			#nav { margin-top:0; }

			.scrolled #dssiteheader { top:0; transform:none; }
			.scrolled #nav { padding-top:0; }

			#nav { margin-right:0; padding-top:0; float:none; clear:both; }
			#dsmenus { display:none; max-height:calc(100vh - 75px); padding:20px; box-sizing:border-box; overflow:auto; -webkit-overflow-scrolling:touch; }
			#dsmenus > li { position:relative; float:none; width:100%; }
			#dsmenus > li.fixwidth:before { content:"\f107"; visibility:visible; position:absolute; z-index:1; top:0; right:0; width:40px; height:40px; color:#001489; font-family:"FontAwesome"; font-size:30px; line-height:40px; text-align:center; overflow:visible; transition:.4s transform; }
			#dsmenus > li.fixwidth.dsmenu_active:before { content:"\f105"; }
			#dsmenus > li + li { padding-left:0; }
			#dsmenus > li > a { position:relative; z-index:2; padding:10px 0; line-height:20px; display:block; }

			.scrolled #dsmenus > li > ul,
			#dsmenus > li > ul { display:none; position:relative; top:auto; right:auto; left:auto; padding:10px 20px; background:#001489; }
			#dsmenus > li.dsmenu_active > ul { display:block !important; }
			#dsmenus > li > ul:before { display:none; right:auto; left:auto; height:auto; margin-top:0; background:transparent; }
			#dsmenus > li > ul:after { display:block; content:""; clear:both; }
			#dsmenus > li > ul > li { padding:5px 30px 5px 0; }
			#dsmenus > li > ul > li + li { padding-left:0; }
			#dsmenus > li > ul > li > a { display:block; color:#fff; }

				/* Menutrigger */
					#menutrigger { display:block; float:right; margin:20px 20px 0 0; }
					.scrolled #menutrigger { margin-top:20px; }
					#menutrigger span { background:#001489; border-radius:0; }

				/*Scrolled*/
					.scrolled #dsmenus > li.fixwidth.dsmenu_active:after { display:none; }

/* Content */
		.scrolled #dsmain,
		#dsmain { padding-top:0; }

	/* Articledesign */
		.dsarticle,
		#dscolumn1_1 > div:first-of-type { padding-top:90px; }
		.dsarticle:not(.dsarticle_5) { padding-top:50px; }

		/* Article 4 */
			.dsarticle_4 { width:50%; margin-left:0; padding-left:100px; }
			.dsarticle_4 + .dsarticle_4 { width:calc(50% - 100px); }

}

@media (max-width:1023px){
	html { font-size:65% !important; -webkit-text-size-adjust:100%; /* Prevent font scaling in landscape*/ }

	/* Article */

		/* Article 4 */
			.dsarticle_4 + .dsarticle_4,
			.dsarticle_4 { width:auto; float:none; padding:0 20px; margin:0; }


}

@media (max-width:893px){

	/* Flickity-Gallery */
			.flickity-gallery { position:relative; padding-bottom:44%; }
			.flickity-slider > div { background-position:left center !important; }

}


@media (max-width:767px){
	html { font-size:75% !important; -webkit-text-size-adjust:100%; /* Prevent font scaling in landscape*/ }

	#logo { margin-left:10px; }
	#menutrigger { margin-right:10px; }

		/* Navigation */
			#dsmenus > li > ul > li { float:none; width:auto; padding:5px 0; }
			#dsmenus > li > ul > li > a { line-height:30px; }

	/* Footer */
		#dssitefooter #sitefooter > div { float:none; text-align:center; }
		#sitefooter { padding:0 10px; }
		#sitefooter .mobile { display:block; }

		#sitefooter .buttons { margin-left:-10px; padding:20px 0; }
		#sitefooter .buttons:after { display:block; content:""; clear:both; }
		#sitefooter .buttons > div { float:left; width:50%; padding-left:10px; box-sizing:border-box; }
		#sitefooter .buttons > div > a { display:block; border:1px #fff solid; text-align:center; }
		#sitefooter .buttons > div > a:before { content:""; display:block; padding:10px 0; font-size:20px; line-height:20px; font-family:"FontAwesome"; }
		#sitefooter .buttons > .tel > a:before { content:"\f095"; }
		#sitefooter .buttons > .mail > a:before { content:"\f0e0"; }

	/* Articledesign */
		.dsarticle { padding-top:90px; }
		.dsarticle_content { padding:0 10px; }

		/* Article 1 */
			.dsbody_1 { column-gap:0; column-count:1; text-align:left; }

		/* Article 4 */
			.dsarticle_4 + .dsarticle_4, .dsarticle_4 { padding:0 10px; }

	/* Maps */
		#maps-wrapper { height:260px; padding-bottom:0; }

	/* Formular */
		.f1_row .col { float:none; width:100% !important; padding:0 !important; }
		.f1_row .col.plz:not(.anrede),
		.f1_row .col.vorname { padding-bottom:10px !important; }


			input[type=text],
			input[type=number],
			input[type=email],
			input[type=password],
			button { height:40px; line-height:40px; }

			.cis-select { height:auto; }
			.cis-select:after { width:40px; height:40px; line-height:40px; }
			.cis-select > div { height:28px; line-height:28px; }
			.cis-select > ul { top:41px; }

			.f1_row > label.spamfilter { line-height:40px; }




}

@media (max-width:666px){

	/* Footer */
		#sitefooter span { display:block; }
		#sitefooter .firma { font-weight:700; }
		#sitefooter span + span { padding-left:0; }
		#sitefooter span + span:before { display:none; }
}

@media (max-width:479px){

	/* Header */
		.scrolled #menutrigger,
		#menutrigger { margin-top:0; }
		#logo,
		.scrolled #logo { max-width:200px; height:52px; }

	/*Content*/
		#dscolumn1_1 > div:first-of-type,
		.dsarticle { padding-top:72px; }

	/*Formular*/
		.f1_col1of2,
		.f1_col2of2 { float:none; width:auto; padding:0; }

}

@media (max-width:374px){

	/*Überschrift*/
		.dsarticle h1,
		.dsarticle h2 { font-size:30px; }
}