@charset "ISO-8859-1";
/* CSS Document */

/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v29-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v29-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

* {
	margin: 0;
	padding: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	}
	
html, body {
	font-family: 'Open Sans', sans-serif;
	font-weight:300;
	font-size:15px;
	line-height:140%;
	color:#3c3c3c;
	background-color:#EAEAEA;
	-webkit-text-size-adjust: 100%;
	}

#wrap {
	max-width:1300px;
	margin: 0 auto;
	background-color:#fff;
	min-height:750px;
	}
	
#header {
	border-bottom: 20px solid #1d70b8;
/*	overflow:hidden;*/
	}


.clear-left {clear:left;}
.clear-right {clear:right;}
.clear-both {clear:both;}


.logo-div {
	max-width:300px;
	height:auto;
	float:left;
	margin: 15px 10px 15px 3%;
	}
	.logo-div img {
		width:100%;
		height:auto;
		}
/*
.tel-header-div {
	float:right;
	position: relative;
	top: 12px;
	right:-300px;
	z-index:2;
	width: auto;
	transition-property:all;
	transition-duration: 0.3s, 0.3s, 500ms ;
	transition-timing-function: linear;
	transition-delay: 0s, 2500ms, 0s;
	}
	.tel-header-div:hover,
	.tel-header-div:active {
		position:relative;
		top:12px;
		right:0px;
		transition-property: all;
		transition-duration: 0.3s, 0.3s, 500ms ;
		transition-timing-function: linear, ease-in, ease;
		transition-delay: 0s, 2500ms, 0s;
		}
		.tel-header-div a,
		.tel-header-div a:active,
		.tel-header-div a:hover,
		.tel-header.div a:visited {
			color:#fff;
			font-size:2.0em;
			text-decoration:none;
			}
		.tel-header-text {
			color:#1d70b8;
			display:inline-block;
			float:left;
			font-size:1.3em;
			padding-top:5px;
			margin-right:15px;
			}
		.tel-header-tel {
			background: url(../images/template/telefon.png) 20px 12px no-repeat #1d70b8;
			color: #fff;
			border-radius:10px 0 0 10px;
			padding: 0 20px 0 70px;
			text-align:left;
			line-height: 55px;
			display:inline-block;
			}
*/			

/* ############################## N A V I G A T I O N ########################### */

.mobile-nav-button {display:none;}

.menu {
	float:right;
	margin-right:3%;
	margin-top: 50px;/*mit Telefoneinblendung 25px*/
	position:relative;
	z-index:9999;
	}
	.menu ul li {
		list-style-type: none;
		float:left;
		margin-right:10px;
		border-bottom:1px solid #fff;
		}
		.menu ul li.aktiv {
			border-bottom:1px solid #1d70b8;
			}
		.menu ul li:last-child {
			margin-right:0px;
			}
			.menu a {
				display:block;
				background-color:#575756;
				line-height:55px;
				padding: 0 10px 0 10px;
				min-width:100px;
				text-align:center;
				border-radius:10px 10px 0 0;
				text-decoration:none;
				color:#fff;
				}
				.menu a.start {
					min-width:60px;
					}
				.menu a:hover, .menu a.aktiv {
					color:#fff;
					background-color:#1d70b8;
					}

.menu li a:hover, .menu ul li:hover a{
	background-color:#1d70b8;
	}

/* ########################### U N T E R M E N Ü ############################## */

.menu li:hover li {
    height:50px;
  }
.menu li ul {
	padding: 0;
    position: absolute;
	text-align:left;
	}

.menu li ul li {
	height: 0px;
	-moz-transition-property: height;
	-o-transition-property: height;
	-webkit-transition-property: height;
	transition-property: height;
	-moz-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-webkit-transition-duration: 0.5s;
	transition-duration: 0.5s;
	overflow: hidden;
	margin-bottom: 0;
	margin-right:0;
    float: none;
    border: none;
	}

.menu li ul li a {
	background-color: #1d70b8;
	border-radius:0;
	line-height: 50px;
	border-top:1px solid #2882d0;
	text-align:left;
	padding-left: 5px;
	margin-top: 0px;
  	color:#fff;
	min-width:205px;
	}
	
.menu li ul li a:hover {
  background-color: #175890;
  color:#fff;
}

/* ############################## ENDE DER NAVIGATION ########################### */

#slider {
	width:100%;
	border-bottom:1px solid #b7b7b7;
	margin-bottom: 2%;
	}
	#slider img {
		width:100%;
		height:auto;
		}
		
#bereiche {
	width:100%;
	padding: 0 0 0 3%;
	}
#portfolio {
	width: 100%;
	padding: 0;
	}
	.bereiche-div,
	.portfolio-div {
		width:30.3%;
		margin-right:3%;
		margin-bottom: 3%;
		float:left;
		border:1px solid #b7b7b7;
		padding:10px;
		}
		.bereiche-div h2,
		#content .portfolio-div h2,
		#content .infobox h2 {
			background-color: #1d70b8;
			color:#fff;
			padding:5px 0;
			text-align:center;
			font-weight:300;
			font-size:1.0em;
			margin:0;
			}
		.bereiche-div img,
		.portfolio-div img {
			width:100%;
			height:auto;
			-webkit-filter: grayscale(100%);
			filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 3.5+ */
			-moz-filter: grayscale(100%);
			-ms-filter: grayscale(100%);
			-o-filter: grayscale(100%);
			filter: grayscale(100%);
			border:1px solid #ececec;
			}
			.bereiche-div img:hover,
			.portfolio-div img:hover {
				-webkit-filter: grayscale(0%);
				filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0\'/></filter></svg>#grayscale");
				-moz-filter: grayscale(0%);
				-ms-filter: grayscale(0%);
				-o-filter: grayscale(0%);
				filter: grayscale(0%);
				}

.portfolio-div table {margin-bottom:15px;}

#content {
	padding-top: 0px;
	padding-right: 3%;
	padding-bottom: 3%;
	padding-left: 3%;
	/* hyphens */
   -moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto;
	}
	
.spalte-li {
	width:65.5%;
	float:left;
	}
		
.spalte-re {
	width:31.2%;
	margin-left:68.8%;
	}
	
#googlemap{
	width: 100%;
	height:auto;
	border-bottom:1px solid #b7b7b7;
	margin-bottom: 2%;
	}
	#googlemap img {
		width:100%;
		height:auto;
		}
	
/* ##################### Infoboxen / Rueckruf-Service ################# */
	
.infobox {
	border:1px solid #b7b7b7;
	padding:10px;
	background-color:#fafafa;
	}
	
#content .infobox h2 {
	margin-bottom: 10px;
	}
			
/*	#content .infobox a.telefon {
		color:#000;
		text-decoration:none;
		}
		#content .infobox a.telefon:hover {
			text-decoration:underline;
			color:#48bbe9;
			}
	*/
	.required {
		text-align:right;
		font-size:0.8em;
		color:#999;
		}
		
	.infobox input::-moz-focus-inner, input::-moz-focus-inner {   
        border : 0px;
	    } 
		/*for IE8 */
		.infobox input[type="submit"]:focus, input[type="button"]:focus {     
        	outline : none; 
		    }
		
	.infobox input[type=text] {
		border:1px solid #cdcdcd;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		margin-bottom:10px;
		line-height:35px;
		height:35px;
		width:100%;
		padding-left:5px;
		}

		.infobox input[type=text]:focus {
			outline: none;
			border: 1px solid #208ab4;
			/* Styles f&uuml;r Schattierung */
			-moz-box-shadow: 0px 0px 3px #2b2b2b;
			-webkit-box-shadow: 0px 0px 3px #2b2b2b;
			box-shadow: 0px 0px 3px #2b2b2b;
			/* For IE 8 */
			-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#2b2b2b')";
			/* For IE 5.5 - 7 */
			filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#2b2b2b')";
			/* Ende Schattierung */
			}
			.infobox input[type=text]::-moz-focus-outline {border:0;}
		
	.infobox input[type=checkbox] {
		width:20px;
		display:block;
		border:1px solid #ff0000/*cdcdcd*/;
		float:left;
		}
		.schnellstens {
			color:#999;
			margin-left:20px;
			display:block;
			}
			
	.buttonsend_rueck {
		margin-top:10px;
		margin-right:7px;
		display:inline-block;
		font-weight:400;
		border: none;
	padding:0 15px;
   	line-height:50px;
	height:50px;
	color:#fff;
	text-transform:uppercase;
	background-color: #1d70b8;
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	behavior:url('border-radius.htc'); 
	border:none;
		cursor:pointer;
		text-align:center;
		}
	.buttonsend_rueck:hover {
    	background-color:#60a8e6;
		text-shadow: 0.2em 0.2em #333
		}

	.buttondelete_rueck {
		margin-top:10px;
		display:inline-block;
		color:#fff;
		font-weight:400;
		line-height:50px;
			padding:0 15px;
			height:50px;
			color:#fff;
			text-transform:uppercase;
			background-color: #ccc;
			-webkit-border-radius: 5px 5px 5px 5px;
			-moz-border-radius: 5px 5px 5px 5px;
			border-radius: 5px 5px 5px 5px;
			behavior:url('border-radius.htc'); 
			border:none;
		cursor:pointer;
		text-align:center;
		}
	.buttondelete_rueck:hover {
		background-color: #999;
				text-shadow: 2px 2px 0px #000;
		}
		
	#content p.hinweis {
		margin-top:10px;
		margin-bottom:0px;
		text-align:center;
		font-size:0.8em;
		line-height:18px;
		}

/* ############################# */
	
.spalte-100proz {
	width:100%;
/*	padding-top:35px;*/
	}	

#content h1, #content h2,
#content h3, #content h4,
#content h5 {
	color: #1d70b8;
	line-height:125%;
	}

#content h1 {
	font-weight:300;
	margin-top:0px;
	}
	
#content h2 {
	font-weight:300;
	margin-top:20px;
	margin-bottom: 10px;
	}
	
#content h3 {
	font-weight:300;
	margin-top:20px;
	margin-bottom: 10px;
	}
	

#content p {
	margin: 0 0 15px 0; 
	}
#content ul {
	margin:0 0 15px 20px;
	}
	
#content ol {
	margin:0 0 15px 20px;
	}
	#content ol li {margin-bottom:10px;}

#content a, #content a:link, #content a:active {
	color: #1d70b8;
	}
	#content a:visited {
		color:#1d70b8;
		}
	#content a:hover {
		color:#60a8e6;
		}
#content a[href^="tel:"] {
	text-decoration:none;
	cursor:text;
	color:#000;
	}
	
a.weiter {font-size:0.8em;}

#content a.button {
	display:block;
	background-color: #1d70b8;
	text-decoration:none;
	text-align:center;
	padding:10px;
	color:#fff;
	font-size:1.25em;
	}
	#content a.button:hover {
		background-color:#60a8e6;
		}
		
.rechts {text-align:right;}	

.bild-re {
	width:100%;
	text-align:center;
	}
	.bild-re img {
		width:100%;
		max-width:500px;
		height:auto;
		}

.prod-div,
.akt-box,
.erfinder-box {
	width:100%;
	padding:10px;
	margin-bottom:25px;
	border: 1px solid #dadada;
	}
	.prod-div img,
	.akt-box img,
	.erfinder-box img {
		float:left;
		width:35%;
		max-width:500px;
		height:auto;
		}
	#content .prod-div h3,
	#content .akt-box h3,
	#content .erfinder-box h3 {
		font-weight:400;
		margin: 0 0 8px 37.5%;
		}
	#content .prod-div p,
	#content .akt-box p,
	#content .erfinder-box p {
		margin-left:37.5%;
		}
	#content .prod-div ul {
		margin-left:41%;
		}
		
.schnupper-box {
	width:100%;
	padding:10px;
	margin-bottom:25px;
	border: 2px solid #9bb404;
	}
	.schnupper-box img {
		float:left;
		width:35%;
		max-width:500px;
		height:auto;
		}
	#content .schnupper-box h3 {
		font-weight:400;
		margin: 0 0 8px 0%;
		}
	#content .schnupper-box p {
		margin-left:37.5%;
		}
	#content .schnupper-box ul {
		margin-left:41%;
		}
		
.mitrand {border: 1px solid #dadada;}

/* #################################### Formular-Felder ##################################*/
/*
.formular-div {
	max-width:750px;
	}

select {
	width:100px;
	line-height:36px;
	height:36px;
	padding:0 0 0 8px;
	margin-bottom:7px;
	border:1px solid #d5d5d5;
	}
.select-div {width:100%;text-align:left;}

input[type=text] {
	width:100%;
	line-height:36px;
	height:36px;
	padding:0 0 0 8px;
	margin-bottom:7px;
	border:1px solid #d5d5d5;
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	behavior:url('border-radius.htc'); 
	}
	
textarea {
	width:100%;
	line-height:120%;
	height:200px;
	padding:8px;
	margin-bottom:20px;
	border:1px solid #d5d5d5;
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	behavior:url('border-radius.htc'); 
	}
		
input[type="submit"].buttonsend {
	width:35%;
	line-height:50px;
	height:50px;
	color:#fff;
	text-transform:uppercase;
	background-color: #1d70b8;
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	behavior:url('border-radius.htc'); 
	border:none;
	margin-right:25px;
	}
		input[type="submit"]:hover {
		background-color:#60a8e6;
		text-shadow: 2px 2px 0px #000;
		}
		
		input[type="reset"].buttondelete {
			width:35%;
			line-height:50px;
			height:50px;
			color:#fff;
			text-transform:uppercase;
			background-color: #ccc;
			-webkit-border-radius: 5px 5px 5px 5px;
			-moz-border-radius: 5px 5px 5px 5px;
			border-radius: 5px 5px 5px 5px;
			behavior:url('border-radius.htc'); 
			border:none;
			}
			input[type="reset"]:hover {
				background-color: #999;
				text-shadow: 2px 2px 0px #000;
				}
		
	
		
input.zurueck {
	width:auto;
	padding: 0 20px 0 20px;
	line-height:50px;
	height:50px;
	color:#fff;
	text-transform:uppercase;
	background-color: #9bb404;
	-webkit-border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	behavior:url('border-radius.htc'); 
	border:none;
	}
	input.zurueck:hover,
	input.zurueck:active {
		background-color:#1d70b8;
		text-shadow: 2px 2px 0px #000;
		}
		
.required {font-size:0.8em;width:100%;}
*/
/* ##############################   E N D E    F O R M U L A R   ########################### */

		
#footer1 {
	background-color:#1d70b8;
	color:#fff;
	font-size:0.9em;
	line-height:175%;
	padding-top: 0px;
	padding-right: 3%;
	padding-bottom: 35px;
	padding-left: 3%;
	}
	
	#footer1 .spalte-li, #footer1 .spalte-re {
		padding-top:35px;
		}
		#footer1 .spalte-re a {
			font-size:0.8em;
			line-height:100%;
			}
	
	#footer1 ul li {
		list-style-type:none;
		display:inline-block;
		border-right:1px solid #fff;
		line-height:100%;
		padding-right:10px;
		padding-left: 10px;
		}
		#footer1 ul li:last-child {
			border-right:none;
			padding-right:0px;
			}
		#footer1 a {
			color:#fff;
			text-decoration:none;
			}
			#footer1 a[href^="tel:"] {
				color: fff;
				text-decoration:none;
				}
			#footer1 a:hover, #footer1 a.aktiv {
				text-decoration:underline;
				color:rgba(255,255,255,0.7);
				}
			#footer1 a[href^="tel:"]:hover {
				text-decoration:none;
				cursor:text;
				color:#fff;
				}
		
#footer2 {
	background-color:#144e80;
	min-height:25px;
	color:rgba(255,255,255,0.35);
	font-size:0.8em;
	padding-top: 0px;
	padding-right: 3%;
	padding-bottom: 10px;
	padding-left: 3%;
	}
	#footer2 a {color:rgba(255,255,255,0.35);text-decoration:none;font-size:1em;}
	#footer2 a:hover {color:rgba(255,255,255,0.7);text-decoration:underline;}
	#footer2 .spalte-li, #footer2 .spalte-re {padding-top:10px;}
	
	
	
@media screen and (max-width: 1024px) {
	
.social-tel, .menu {margin-right:25px;}
	
.logo-div {
	margin: 0px 0px 10px 0px;
	padding-top:20px;
	max-width:1000px;
	float:none;
	text-align:center;
	}
	.logo-div img {
		max-width:450px;
		height:auto;
		}
		
.menu {
	float:none;
	margin-right:0px;
	margin-top: 25px;
	margin-bottom:0px;
	text-align:center;
	}
	.menu ul li {
		list-style-type: none;
		float:none;
		display:inline-block;
		margin-right:10px;
		}
	
}

@media screen and (max-width: 900px) {

.bereiche-div h2, #content .infobox h2,
#content .portfolio-div h2 {font-size:0.9em;}

#content, #footer1, #footer2 {
	padding-right: 2.5%;
	padding-left: 2.5%;
	}
#footer1 .spalte-li,
#footer1 .spalte-re {padding-top:25px;text-align:center;}
#footer2 .spalte-li, #footer2 .spalte-re {text-align:center;}

.rechts {text-align:left;}	

#footer1 ul li:first-child {padding-left: 0px;}

}

@media screen and (max-width: 768px) {

.spalte-li {
	width:100%;
	float:none;
	}
		
.spalte-re {
	width:100%;
	margin-top:35px;
	margin-left:0%;
	text-align:center;
	}
	
.links {text-align:left;}
	
.prod-div, .akt-box, .erfinder-box, .schnupper-box {width:97.5%;}
	
}

@media screen and (max-width: 730px) {

.bereiche-div,
.portfolio-div {
		width:45%;
		margin-right:3%;
		margin-bottom: 3%;
		float:left;
		border:1px solid #b7b7b7;
		padding:10px;
		}

}

@media screen and (max-width: 680px) {

.menu ul li {
	margin-right:5px;
	}
	.menu ul li a {
		font-size:0.8em;
		}

.tel-header-div {display:none;}

.ausblenden {display:none;}

/*#header {border-bottom:2px solid #1d70b8;}*/

#content {
	margin-top: 3%;
	}

.logo-div {
	margin: 0px 0px 10px 0px;
	padding-top:10px;
	padding-left:10px;
	padding-right:10px;
	}

.bereiche-div,
.portfolio-div {
		width:97%;
		margin-right:0%;
		margin-bottom: 3%;
		float:left;
		}
		
.menu {display:none;}

.mobile-nav-button {
	display:block;
	width:100%;
	height:25px;
	text-align:center;
	margin: 15px 0 15px 0;
	}
	.mobile-nav-button a {
		display:block;
		line-height:20px;
		}

#slider {display:none;}

.prod-div, .akt-box, .erfinder-box, .schnupper-box {width:92.5%;}

.prod-div img, .akt-box img, .erfinder-box img, .schnupper-box img {
	float:none;
	margin-bottom:10px;
	width:100%;
	max-width:500px;
	height:auto;
	}

#content .prod-div h3, #content .akt-box h3, #content .erfinder-box h3 {
	margin: 0 0 8px 0%;
	}
#content .prod-div p, #content .akt-box p, #content .erfinder-box p, #content .schnupper-box p {
	margin-left:0%;
	}
#content .prod-div ul, #content .akt-box ul, #content .erfinder-box ul {
	margin-left:10%;
	}

}

@media screen and (max-width: 320px) {

.prod-div, .akt-box {width:90%;}

}