@charset "utf-8";


/*
font-family: 'Roboto', sans-serif;
font-family: 'Bitter', serif;
*/

/****************** General ******************/
	html { font-size:62.5% !important; font-family:'Roboto', sans-serif; font-weight:400; color:#000; word-break:word-break; -webkit-hyphens:auto; -moz-hyphens:auto; -ms-hyphens:auto; -o-hyphens:auto; hyphens:auto; }
	body { width:auto !important; font-family:inherit !important; margin:0; }
	b, strong { font-weight:600; }
	ul { padding:0; }
	a { color:#001489; }
	a:hover { text-decoration:none; color:#000; }
	img { max-width:100%; }
	h1,
	h2,
	h3 { margin:0; padding:0; }


	/*audio download*/
	audio, object {width:100%}

	/*Placeholder*/
		.placeholder { position:absolute; top:0; bottom: 0; right: 0; left: 0; background-image:url('../svg/logo.svg'); background-size:50%; background-repeat:no-repeat; background-position:center; background-color:#fff;  }

	/*Leve up*/
		.lefel-up { position:absolute; top:10px; right:420px; width:80px; z-index:99; position: absolute; }
		.scrolled .lefel-up { display:none; }

	/*Button*/
		.btn { background-color:#001489; color:#fff; border-radius:0 !important}
		.btn:hover{background-color:#000}

		#yt-button { opacity:.8; position:absolute; z-index:10; top:250px; left:0; width:200px; padding:30px 20px; box-sizing:border-box; background-color:#001489; color:#fff; text-transform:uppercase; font-size:23px; line-height:1.5; font-weight:700; text-align:center; transform:translateX(-100%); }

	/* Mouse selections */
		::selection { background:#666; color:#fff; }
		::-moz-selection { background:#666; color:#fff; }


	.hidden { display:none; }
	.clearfix { display:block; clear:both; }
	.absolute { position:absolute; top:0; right:0; bottom:0; left:0; }


	/* Grundlayout */
		#dsmain { padding-top:182px; padding-bottom:50px; max-width:1300px; margin-right:auto; margin-left:auto; transition:padding .4s; }
		#submenu,
		#sitefooter { max-width:1300px; margin-right:auto; margin-left:auto; }

		#wrapline { position:absolute; z-index:200; top:0; right:0; left:0; width:100%; height:0; height:1px; background:red; }


		/* Header */
			#dssiteheader { position:absolute; top:0; right:0; left:0; z-index:5; background:#fff; }
			#dssiteheader.hover { border-bottom:50px #fff solid; }
			#siteheader { padding-top:60px; padding-bottom:10px; border-bottom:1px #001489 solid; transition:padding .4s; }
			#siteheader:after { display:block; content:""; clear:both; }

			/* Logo */
				#logo { float:left; width:400px; max-width:400px; height:104px; margin-left:calc((100vw - 1300px) / 2); line-height:0; transition:height .4s; }
				#logo a { display:block; height:100%; background:url('../svg/logo.svg') no-repeat top left; background-size:contain; }

			/* Navigation */
				#nav { float:right; margin-right:calc((100vw - 1300px) / 2); padding-top:85px; transition:padding .4s; }
				#dsmenus:after { display:block; content:""; clear:both; }
				#dsmenus a { font-size:20px; font-size:2rem; line-height:25px; line-height:2.5rem; color:#001489; text-transform:uppercase; font-weight:200; }
				#dsmenus a:not(.dsbutton):before { display:block; content:attr(title); font-weight:700; height:1px; color:transparent; overflow:hidden; visibility:hidden; }
				#dsmenus > li { float:left; }
				#dsmenus > li.dsmenu_active > a { font-weight:700; }
				#dsmenus > li + li { padding-left:30px; }
				#dsmenus > li.fixwidth.dsmenu_active:after {
					content:""; display:block; position:absolute; top:92px; right:0; left:0; height:50px; background-color:rgba(255,255,255,.9);
					opacity:0; filter:alpha(opacity=0); visibility:hidden; transition:opacity .4s, visibility .4s;
				}

				/* Subnavi */
					#dsmenus > li > ul { display:none; position:absolute; z-index:5; top:182px; right:calc((100vw - 1300px) / 2); /*left:calc((100vw - 1300px) / 2);*/ color:#001489; transition:top .4s; }
					#dsmenus > li.dsmenu_active > ul { display:block; }
					#dsmenus > li > ul > li { position:relative; z-index:2; float:left; padding-top:12px; }
					#dsmenus > li > ul > li > a { font-size:16px; font-size:1.6rem; }
					#dsmenus > li > ul > li.dsmenu_active > a { font-weight:700; }
					#dsmenus > li > ul > li + li { padding-left:15px; }

			/* Scrolled Navigation */
				.scrolled #dssiteheader { position:fixed; }
				.scrolled #siteheader { padding-top:10px; }
				.scrolled #dsmenus > li > ul { top:92px; }
				.scrolled #dsmenus > li.fixwidth.dsmenu_active:after { opacity:1; filter:alpha(opacity=100); visibility:visible; }
				.scrolled #logo { height:65px; }
				.scrolled #nav { padding-top:45px }
				.scrolled #dsmain { padding-top:42px; }

		/* Footer */

			#dssitefooter { padding:30px 0; background:#001489; }
			#sitefooter span,
			#sitefooter a { font-size:15px; font-size:1.5rem; line-height:20px; line-height:2rem; color:#fff; font-weight:300; text-transform:uppercase; }
			#sitefooter span + span:before { content:"|"; display:inline-block; padding:0 10px; }

			#sitefooter:after { display:block; content:""; clear:both; }
			#sitefooter .left { float:left; }
			#sitefooter .right { float:right; }


	/* Articledesign */
		.dscolumn:after { content:""; display:block; clear:both; }
		#dscolumn1_1 > div:first-of-type { padding-top:50px; }

		/* Default */
			.dsarticle { padding-top:91px; }
			.dsarticle h1,
			.dsarticle h2 { padding-bottom:5px; font-size:35px; line-height:45px; font-family:"Bitter", serif; font-weight:200; font-style:italic; text-align:center; color:#001489; }

			.dsarticle h1 + h2,
			.dsarticle h2 + h2 { font-size:25px; line-height:30px; font-family:"Roboto", sans-serif; font-weight:300; font-style:normal; }

			div[class^="dsbody"] { font-size:15px; font-size:1.5rem; line-height:25px; line-height:2.5rem; font-weight:300; }
			div[class^="dsbody"] > ul > li { position:relative; padding-left:20px; }
			div[class^="dsbody"] > ul > li:before { content:""; position:absolute; top:10px; left:3px; width:4px; height:4px; border-radius:50%; background:#001489; }

		/* Article 1*/
			.dsbody_1 { padding-top:20px; column-count:2; column-gap:60px; text-align:justify; }

			/* Image */
				.dsimage_1 { padding:20px 0; text-align:center; }
				.dsimage_1 img { padding-top:0; }

		/* List in Article */
			ul[class^="dslinklist_"] > li > a:not(.dsbutton) { color:#001489; border-bottom:none; }
			ul[class^="dslinklist_"] > li > a:not(.dsbutton):before { color:#001489; font-size:20px; font-size:2rem; }

		/* Article 2 */
			/* Image */
				.dsimage_2 { padding:20px 0; text-align:center; }
				.dsimage_2 img { padding-top:0; }

		/* Article 4 */
			.dsarticle_4 { padding-top:0; float:left; width:500px; margin-left:120px; }
			.dsarticle_4 + .dsarticle_4 { margin-left:0; padding-left:40px; box-sizing:border-box; }

		/* Article 5 */
			.dsarticle_5 { clear:both; margin-right:calc(((100vw - 1300px) / 2 ) * (-1) + (9px)); margin-left:calc(((100vw - 1300px) / 2) * (-1) + (8px)); }


	/* Modules */

		/* Isotop */

		/*Item*/
			.items {margin-left: -40px; padding-top:20px}
			.item {margin-bottom:40px; width: 33.333%; }
			.item.nodata {width:100%; float:none}
			.item .box {  color:#001489; margin-left:40px}
			.item .content {height:100%; overflow:hidden}
			.item .content .text { position:relative; height:270px; padding:5px 10px; border-top:5px solid #001489; z-index:2; color:#000; overflow:auto; transition:transform .5s .7s; }
			.item .content .text h3{ color:#001489; }
			.item .content .text a { color:#001489; margin:5px 4px}
			.item .content .text a:hover {color:#B7CFDD}
			.item .content .text .icons{position:absolute; right:10px; top:140px; font-size:20px; font-size:2.0rem; line-height:25px; line-height:2.5rem}
			.item .content .text .icons a {padding:5px 6px; background-color:#001489; color:#fff; text-align:center; width:30px; height:30px; line-height:30px; }
			.item .content .text .icons a:hover{background-color:#ABABAB; color:#001489}
			.item .content .text .ortschaft{padding-bottom:3px}


		/*Paging*/
			.paging {margin-bottom:20px; font-size:15px; font-size:1.5rem; line-height:22px; line-height:2.2rem; margin-left:-40px; }
			.paging a { height:40px;  background-color:#001489; color:#fff; }
			.paging a:hover {background-color:#ABABAc; }
			.paging > div { width:33.333%; padding-left:40px; }
			.paging > div a.btn { padding-top:5px; padding-bottom:5px; }
			.paging .paging_content a { width:40px; line-height:40px; font-size:25px;}
			.paging .paging_content .ajaxpaging_text { line-height:40px; padding:0 40px; }
			.paging a.ajaxpaging_back:before,
			.paging a.ajaxpaging_go:before { font-family:FontAwesome; }
			.paging a.ajaxpaging_back:before { content:"\f100"; }
			.paging a.ajaxpaging_go:before { content:"\f101"; }


		/*Searchpanel Filter*/
			.searchpanel .filter { display:none; margin:0 0px 10px 0;}
			.searchpanel .filter  a{display:block; width:100%; padding:8px 0px; box-sizing:border-box; box-shadow:2px 2px 4px #999 !important; }
			.searchpanel .filter a.btn.show{display:none}
			.searchpanel .filter  a:hover{color:#fff}

			.searchpanel > form { padding-bottom:0px; margin-left: -40px; }
			.searchpanel > form > div { padding-left: 40px; }
			.searchpanel > form > div.input {width:33.333%; }
			.searchpanel > form > div > button { max-width:none; float:left}
			.searchpanel > form > div {width: 33.333%; }

		/* Flickity */
			.flickity-gallery { height:500px; }
			.flickity-wrapper .flickity-viewport { z-index:1; height:100% !important; }
			.flickity-slider { left:0 !important; transform:none !important; }
			.flickity-slider > div { left:0 !important; right:0 !important; opacity:0; filter:alpha(opacity=0); transition:2s opacity; }
			.flickity-slider > div.is-selected { opacity:1; filter:alpha(opacity=100); width:100%; height:100%; background-repeat:no-repeat; background-size:cover; background-position:center center; }



		/* Maps */
			#maps-wrapper { position:relative; height:500px; margin-top:40px; }
			#maps { position:absolute; top:0; right:0; bottom:0; left:0; }


		/* Formular */

			.col.plz,
			.col.anrede { width:25%; }
			.col.ort { width:75%; }

			.col.vorname { width:30%; }
			.col.nachname { width:70%; }

			.f1_row { padding-bottom:10px; }
			.f1_row.cb { padding-bottom:0; }

			.f1_row > input.spamfilter { float:left; width:200px; }
			.f1_row > label.spamfilter { float:left; box-sizing:border-box; padding:0 0 0 10px; line-height:30px; }
			.f1_row > label.spamfilter:before { content:""; display:none; }
			.f1_row button { width:100%;}

			.f1_col1of2 { width:calc(100% - 100px); }
			.f1_col2of2 { width:100px; }


			input[type=text],
			input[type=number],
			input[type=email],
			input[type=password],
			textarea { border:none; background:#fff; box-shadow:1px 1px 3px 2px #e3e3e3; }
			textarea { padding:10px; resize:vertical; }

			.cis-select { border:none; }
			.cis-select:after { color:#001489; }
			.cis-select > div { border:none; box-shadow:1px 1px 3px 2px #e3e3e3; }

			input[type=text],
			input[type=number],
			input[type=email],
			input[type=password],
			textarea,
			.cis-select,
			button { font-family:"Roboto", sans-serif; font-weight:200; }

			button {max-width:340px; float:right; background-color:#001489; color:#fff; border:1px solid #001489; text-align:center; transition:all .4s; }
			button:hover{background-color:#000;  color:#fff; }

			/* Hinweis */
				.cform.view .hinweis { font-size:12px; font-size:1.2rem; line-height:15px; line-height:1.5rem; }

		/* Referenzen*/

		.creferenzen.viewdet .flickity-gallery {
			width: 100%;
		  }

		/*   .flickity-slider { left:0 !important; transform:none !important; }
			.flickity-slider > div { left:0 !important; right:0 !important; opacity:0; filter:alpha(opacity=0); transition:2s opacity; }
			.flickity-slider > div.is-selected { opacity:1; filter:alpha(opacity=100); width:100%; height:100%; background-repeat:no-repeat; background-size:cover; background-position:center center; }
		  .creferenzen.viewdet .carousel-cell {
			width: 25%;
			height: 300px;
			background-size: cover;
			background-position: center;
		  } */



/* Scrolltop */
	#scrolltop { width:40px; height:40px; background:#fff; border:1px #001489 solid; overflow:hidden; }
	#scrolltop:before { content:""; }
	#scrolltop i { display:block; line-height:40px; font-size:30px; color:#001489; }
	#scrolltop.fancy i { animation-name:scrolltop; animation-duration:.7s; }

	@keyframes scrolltop {
		0% { transform:translate(); }
		49% { transform:translate(0, -40px); }
		50% { transform:translate(40px, -40px); }
		51% { transform:translate(40px, 40px); }
		52% { transform:translate(0, 40px); }
		53% { transform:translate(); }
	}

/* Mouse selections */
	::selection { background:#babfc2; color:#fff; }
	::-moz-selection { background:#babfc2; color:#fff; }


/*Cookies Info*/
.cookie-notification-inner a { color:#fff; text-decoration:underline; }
.cookie-notification-inner a:hover { color:#fff; }
