@charset "utf-8";


@keyframes showmenu {
	0% { opacity:0; }
	75% { opacity:0; }
	100% { oapcity:1; }
}

@media screen and (max-width:2110px) {

	#dsmenucontainer, .logo-container, #dssitefooter, nav { padding-left:60px; padding-right:60px; }

	/* sprachen */
		#sprachen { left:60px; }

}

@media screen and (max-width:2000px) {

	#dsmenucontainer, .logo-container, #dssitefooter, nav { padding-left:60px; padding-right:60px; }

}

@media (max-width:1920px){
	html { font-size:57% !important; -webkit-text-size-adjust:100%; /* Prevent font scaling in landscape */ }
}

@media (max-width:1799px){
	html { font-size:62.5% !important; -webkit-text-size-adjust:100%; /* Prevent font scaling in landscape */ }
}


@media screen and (max-width:1870px) {

	#dsmenucontainer, #dscontent, .logo-container, #dssitefooter, nav { padding-left:40px; padding-right:40px; }
	#sprachen { left:40px; }

	/* Menü */
	#menutrigger { right:40px; }
	#dsmenus > li > a { font-size:1.8rem; padding:10px; }

}


@media screen and (max-width:1600px) {

	#dsbody { margin:0; transition:margin 1s; }
	#scrolltop { right:50px; }

	/*** Menutrigger ***/
		#menutrigger { display:block; position:absolute; z-index:104; top:60px; width:50px; height:50px; margin:5px 0; line-height:50px; transition:background-color 0.4s; overflow:hidden; transition:transform 1s; }
		#menutrigger { position:fixed; }
		#menutrigger span { position:absolute; left:0; width:50px; height:4px; background-color:#646463; border-radius:0; transition:all 0.4s ; }
		body.dynasite.openmenu #menutrigger span { background-color:#fff; }
		#menutrigger span.line1 { top:8px; }
		#menutrigger span.line2 { top:22px; }
		#menutrigger span.line3 { top:22px; }
		#menutrigger span.line4 { top:36px; }
		#dsbody #menutrigger2 span.line2 { transform:rotate(-45deg); }
		#dsbody #menutrigger2 span.line3 { transform:rotate(45deg); }

	/* menuopen */
		#dsbody.openmenu #nav-wrapper { opacity:1; filter:alpha(opacity=100); visibility:visible; }

	#nav-wrapper { position:fixed; z-index:103; top:0; right:0; bottom:0; left:0; opacity:0; filter:alpha(opacity=0); visibility:hidden; transition:all .8s; background-color:rgba(0,0,0,.8); }
	nav { position:absolute; top:50%; left:50%; float:none; width:400px; height:auto; max-height:calc(100vh - 80px); overflow:auto; transform:scale(0.8) translate(-50%,-50%); background-color:transparent; transition:transform .8s; }
	body.dynasite.openmenu nav { transform:translate(-50%,-50%); }
	#dsmenus { display:block; padding-top:0; border-bottom:none; }
	#dsmenus > li { padding:20px 0; white-space:nowrap; text-align:center; float:none; }
	#dsmenus > li > a { display:block; padding:0; color:#fff; font-size:40px; font-size:4rem; line-height:1.5; }
	#dsmenus > li.has_subnav { padding-bottom:0; }
	#dsmenus > li > ul { display:block !important; position:relative; top:auto; left:auto; min-width:0; height:100% !important; width:100%; background-color:transparent; transform:none; }
	#dsmenus > li > ul > li { text-align:center; background-color:transparent; }
	#dsmenus > li > ul > li:last-of-type > a { padding-bottom:0; }
	#dsmenus > li > ul > li > a { padding:5px 10px; color:#fff; }
	#dsmenus > li > ul > li + li { border-top:none; }
	#dsmenus > li:not(:last-of-type) { margin-right:0; }

	#dsmenucontainer { padding-bottom:30px; }

	.logo-container,
	#dscontent,
	#dsmenucontainer,
	#dssitefooter { width:100%; }

	#dsmain { display:flex; flex-wrap:wrap; height:auto; padding-bottom:0; }
	#dsmain > #dsmenucontainer { order:10; box-sizing:border-box; background-color:transparent; padding-top:0; }
	#dsmain > #dsmenucontainer #dsmenuarticle { margin:0; box-sizing:border-box; width:auto; padding-bottom:30px; }
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle { background-color:#f5f5f5; margin-bottom:0; }
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle > .dsarticle_content > div { float:none; width:100%; box-sizing:border-box; }
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle > .dsarticle_content > .dsbodydesign_content_1 { width:100%; padding:0 30px; }

	#dscolumn1_3, #dscolumn2_3, #dscolumn3_3 { padding-bottom:60px; }

	#dssitefooter { position:relative; bottom:auto; right:auto; text-align:center; }

	.ctestimonials.view { padding-top:0px; }
	.ctestimonials.view .testimonial { padding:0 }
	.ctestimonials.view .testimonial-wrapper .testimonial { max-width:600px; margin:0 auto; }
	.ctestimonials.view .testimonial .person { padding-bottom:20px; }

}

@media screen and (max-width:1100px) {

	.cteam .items .item { width:100%; }

}

@media screen and (max-width:1024px) {
	html { font-size:69% !important; -webkit-text-size-adjust:100%; /* Prevent font scaling in landscape */ }

	#menutrigger, #scrolltop { right:40px; }
	#dsmenucontainer, #dscontent, .logo-container, #dssitefooter, nav { padding-left:40px; padding-right:40px; }

	#dscolumns { flex-direction:column; }
	#dscolumns > div[id$="_3"] .dsarticle_content:after { content:""; display:block; clear:both;}
	#dscolumns > div[id$="_3"] div[class^="dstitledesign_"] { float:left; width:200px; }
	#dscolumns > div[id$="_3"] div[class^="dsbodydesign_"] { float:right; width:calc(100% - 200px); box-sizing:border-box; }
	#dscolumns div[class*='dsimage_'] { width:100%;  box-sizing:border-box; }
	
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle > .dsarticle_content > div { width:100%; }
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle > .dsarticle_content > div:first-child { width:100%; }

	/*2-Spalten*/
		#dscolumn1_2 { min-width:100%; flex-basis:100%; }
		#dscolumn2_2 { min-width:100%; flex-basis:100%; }

	/*3-Spalten*/
		#dscolumn1_3,
		#dscolumn2_3,
		#dscolumn3_3 { flex-basis:50%; min-width:100%; padding-bottom:30px; }
		

	/* Items */
		.items { margin-left:-40px; }
		.items .item { width:50%; padding:0 0 40px 40px; }

	/* sprachen */
		#sprachen { left:40px; }
}


@media only screen and (max-width:1023px) {

	img { max-width:100%; height:auto !important; }

}


@media only screen and (max-width:768px) {

	html { font-size:67% !important; -webkit-text-size-adjust:100%; } /* Prevent font scaling in landscape */

		#dscontent #dsarticleheader .dsarticle_content { width:100%; }

	.logo-container { height:auto; }
	#logo { background-size:400px; background-position:-10px 10px; height:0; padding-bottom:0; height:100px; }
	#menutrigger, #scrolltop { right:30px; }
	#dsmenucontainer, #dscontent, .logo-container, #dssitefooter, nav { padding-right:30px; padding-left:30px; }
	.quick-tel { border-top:80px solid #ccc; border-left:80px solid transparent; }
	.quick-tel > .fas { top:-70px; right:10px; }

	#dscolumns > div[id$="_3"] div[class^="dsbodydesign_"],
	#dscolumns > div[id$="_3"] div[class^="dstitledesign_"] { float:none; width:100%; text-align:center; }
	#dscolumns > div[id$="_3"] div[class^="dstitledesign_"] img { max-height:140px; padding-right:0; }

	#dsmain { padding-bottom:30px; }
	#dsmain > #dsmenucontainer { padding-bottom:0; }
	#dsmain > #dsmenucontainer #dsmenuarticle { padding-bottom:0; }


	/* Articledesign */
		.dsarticle { margin-bottom:30px; }

	/* Slide & Map */
		.cimagepool.slide, .cmaps.view .maps-wrapper { padding-bottom:0; height:350px; }

	/* Items */
		.items { margin-left:-30px; }
		.items .item { padding:0 0 30px 30px; }

	/* sprachen */
		#sprachen { left:30px; }

	/* Menü */
		#menutrigger { right:30px; }	
}


@media only screen and (max-width:666px) {

	#dscontent #dsarticleheader .dsarticle_content { padding-top:0; }

	.quick-tel > .fas { font-size:15px; top:-50px; right:10px; }
	.quick-tel { border-top:60px solid #ccc; border-left:60px solid transparent; }

	/* Navigation */
		nav { width:auto; }
		#dsmenus > li { padding:10px 0; }
		#dsmenus > li > a { font-size:30px; font-size:3rem; }

	/**/
	#dscolumns .dscolum .dsarticle_2 { padding:20px; }
	#dsmain > #dsmenucontainer #dsmenuarticle > .dsarticle > .dsarticle_content > .dsbodydesign_content_1 { padding:15px; }
	#dscolumns h1[class^="dstitle_"], #dscolumns h2[class^="dstitle_"] { bottom:-30px; left:0; }
	#dscolumns div[class*='dsimage_'] { width:100%; padding-bottom:25px; }
	div[class*='dsimage_'] img { display:block; width:45%; padding:0; margin:0 auto; }
	#menutrigger1 { top:15px; right:47px; }

	#menutrigger, #scrolltop { right:20px; }
	#dsmenucontainer, #dscontent, .logo-container, #dssitefooter, nav { padding-left:20px; padding-right:20px; }

	/* Items */
		.items { margin-left:-20px; }
		.items .item { padding:0 0 20px 20px; }

	/* sprachen */
		#sprachen { left:20px; }

	/* Team */
		.cteam .items .item .box .placeholder { width:100%; height:300px; padding-bottom:0; position:relative; background-color:#ededed; }
		.cteam .items .item .box .placeholder > div { max-width:250px; margin:0 auto; }
		.cteam .items .item .box { padding-left:0; }
		.cteam .items .item .box .content .fx { height:auto; }
}


@media only screen and (max-width:567px) {

	html { font-size:65% !important; -webkit-text-size-adjust:100%; } /* Prevent font scaling in landscape */

	#menutrigger, #scrolltop { right:15px; }
	#dsmenucontainer, #dscontent, .logo-container, #dssitefooter, nav { padding-left:15px; padding-right:15px; }
	#dssitefooter { padding-left:0px; padding-right:0px; }
	#dscontent { padding-top:30px; }

	#sitefooter .footer { display:none; }
	#sitefooter .footer-mobile { display:block; }
	#sitefooter .footer-mobile .adresse-mobile { padding-bottom:15px; }
	#sitefooter .footer-mobile > a > i { display:inline-block; padding:11px; font-size:25px; }
	#sitefooter > a > { display:none; }
	#sitefooter .footer-mobile .mobilelink { width:33.333%; float:left; background-color:#666; color:#fff; height:45px; }


	/*h1*/
		h1[class^="dstitle_"] { font-size:25px; font-size:2.5rem; line-height:40px; }
		h1[class^='dstitle_'] + h2 { font-size:20px; font-size:2.0rem; }

	/*h2*/
		h2[class^="dstitle_"] { font-size:24px; font-size:2.4rem; }
		h2[class^='dstitle_'] + h2 { font-size:19px; font-size:1.9rem;  }

	/* Slide & Map */
		.cimagepool.slide, .cmaps.view .maps-wrapper { padding-bottom:0; height:300px; }

	/* Items */
		.items .item { width:100%; }

	/* sprachen */
		#sprachen { left:10px; top:5px; }

}


@media only screen and (max-width:500px) {

	/*#logo { background-size:250px; height:80px; background-position:-5px 30px; }
	#menutrigger { top:32px; }*/

	#logo { background-size:250px; height:55px; background-position:-5px 0px; }
	#menutrigger { top:23px; }

	.logo-container { padding:30px 10px 10px 10px; }
	.quick-tel { display:none; }
	


	/* Formular */
	.f1_col1of2, .f1_col2of2 { width:100%; }

}


@media only screen and (max-width:374px) {}


@media (max-width:320px) {}