@font-face {
	font-family: "schnebel-sans-pro";
	src: url("/webfonts/schnebel-sans-pro-light.woff2") format("woff2"), url("/webfonts/schnebel-sans-pro-light.woff") format("woff"), url("/webfonts/schnebel-sans-pro-light.otf") format("opentype");
	font-display: auto;
	font-style: normal;
	font-weight: 300;
	font-stretch: normal;
}
@font-face {
	font-family: "schnebel-sans-pro";
	src: url("/webfonts/schnebel-sans-pro-italic.woff2") format("woff2"), url("/webfonts/schnebel-sans-pro-italic.woff") format("woff"), url("/webfonts/schnebel-sans-pro-italic.otf") format("opentype");
	font-display: auto;
	font-style: italic;
	font-weight: 400;
	font-stretch: normal;
}
@font-face {
	font-family: "schnebel-sans-pro";
	src: url("/webfonts/schnebel-sans-pro-regular.woff2") format("woff2"), url("/webfonts/schnebel-sans-pro-regular.woff") format("woff"), url("/webfonts/schnebel-sans-pro-regular.otf") format("opentype");
	font-display: auto;
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
}
@font-face {
	font-family: "schnebel-sans-pro";
	src: url("/webfonts/schnebel-sans-pro-medium.woff2") format("woff2"), url("/webfonts/schnebel-sans-pro-medium.woff") format("woff"), url("/webfonts/schnebel-sans-pro-medium.otf") format("opentype");
	font-display: auto;
	font-style: normal;
	font-weight: 500;
	font-stretch: normal;
}
@font-face {
	font-family: "schnebel-sans-pro";
	src: url("/webfonts/schnebel-sans-pro-bold.woff2") format("woff2"), url("/webfonts/schnebel-sans-pro-bold.woff") format("woff"), url("/webfonts/schnebel-sans-pro-bold.otf") format("opentype");
	font-display: auto;
	font-style: normal;
	font-weight: 700;
	font-stretch: normal;
}
*{
	margin: 0;
	padding: 0;
	border: 0 none;
	outline: 0 none;
}
body{
	color: #4b4b4b;
	font-size: 16px;
	font-family: "schnebel-sans-pro", sans-serif;
	font-weight: 300;
	line-height: 1.5;
	word-break: break-word;
	-webkit-hyphens: auto;
	hyphens: auto;
	background-color: white;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
}
	div#wrapper_partner{
		position: fixed;
		z-index: 100;
		top: 0;
		left: 0;
		width: 100%;
		height: 36px;
		text-align: center;
		background-color: #f0f0f0;
		opacity: 0;
		transition: opacity .46s linear 0s;
	}
		div.partner{
			display: inline-block;
			height: 50px;
			margin: 0 60px;
		}
			div.partner a{
				display: inline-block;
				height: 50px;
			}
				div.partner a img{
					height: 50px;
				}
		div#partner_close{
			position: fixed;
			z-index: 110;
			top: 10px;
			right: 10px;
			width: 20px;
			height: 20px;
			cursor: pointer
		}
			div#partner_close svg{
				width: 20px;
				height: 20px;
			}
			div#partner_close:hover svg line{
				stroke: #008600;
			}

	div#stage{
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		width: 100%;
		transition: top .46s ease-in-out 0s, filter .5s ease-in-out 0s;
	}
		div#stage.blur,
		div#header.blur{
			filter: blur(4px);
		}

		a{
			color: #4b4b4b;
			text-decoration: none;
			transition: color .4s linear 0s;
		}
			a:hover{
				color: #008600;
			}
		.clear{
			clear: both;
		}
		svg line{
			transition: stroke .4s linear 0s;
		}
		.cover{
			background-repeat: no-repeat;
			background-position: center center;
			background-size: cover;
		}
		div.outer{
			margin: 0 auto;
			position: relative;
		}
		.bg_lightgrey{
			background-color: #f0f0f0;
		}

		div#header_spacer{
			position: relative;
			z-index: 200;
			background-color: white;
		}
		div#header{
			position: fixed;
			z-index: 1000;
			top: 0;
			background-color: #ffffff;
			border-bottom: 1px solid #e0e0e0;
			transition: top .46s ease-in-out 0s, background-color .46s linear 0s, filter .5s ease-in-out 0s;
		}
			div#header.home{
				background-color: rgba(224, 224, 224, .9);
				border-bottom: 1px solid transparent;
			}
			div#logo{
				position: absolute;
				z-index: 1100;
			}
				div#logo a{
					display: block;
					text-indent: -99999px;
					background: url(/images/logo_h1.svg) no-repeat center center / 100%;
				}
			ul#menu,
			ul#menu2{
				position: absolute;
				z-index: 1100;
			}
			ul#menu{
				bottom: 30px;
			}
			ul#menu2{
				top: 30px;
			}
				ul#menu li,
				ul#menu2 li{
					margin-left: 48px;
					float: left;
					list-style: none;
				}
					ul#menu li a,
					ul#menu2 li a{
						display: block;
						padding: 4px 0;
						font-size: 18px;
						line-height: 1;
					}

					ul#menu2 li a{
						font-size: 13px;
					}
				ul#menu2 ul,
				ul#menu ul{
					display: none;
					position: absolute;
					z-index: 1200;
					border: 1px solid #f2ebeb;
					background-color: white;
				}
					ul#menu ul li,
					ul#menu2 ul li{
						float: none;
						margin-left: 0;
						padding: 8px 20px;
					}
						ul#menu ul li:hover,
						ul#menu2 ul li:hover{
							background-color: #f7f7f7;
						}
						ul#menu2 ul li a,
						ul#menu ul li a{
							padding: 5px 0;
						}
				li#nav_lng ul{
					width: 90px;
					right: -20px;
				}


			div#bt_menu{
				display: none;
				position: absolute;
				z-index: 1100;
				top: 33px;
				width: 30px;
				height: 30px;
				cursor: pointer;
			}
				div#bt_menu svg{
					width: 30px;
					margin-top: 4px;
					vertical-align: top;
				}
					div#bt_menu svg line{
						transition: all .35s ease-in-out .3s;
					}
					div#bt_menu svg line#line1{
						transform: translate(0, 10px);
					}
					div#bt_menu svg line#line3{
						transform: translate(0, -10px);
					}
						div#bt_menu.out svg line#line1{
							transform-origin: center center;
							transform: rotate(45deg) translate(0, 24.5px) scale(.85);
						}
						div#bt_menu.out svg line#line2{
							opacity: 0;
						}
						div#bt_menu.out svg line#line3{
							transform-origin: center center;
							transform: rotate(-45deg) translate(0, -24.5px) scale(.85);
						}

			div#wrapper_menu_mob{
				position: fixed;
				z-index: 990;
				top: -1000px;
				left: 0;
				width: 100%;
				background-color: #e0e0e0;
				box-shadow: 0 0 8px rgba(0,0,0,.25);
				transition: top .95s ease-in-out 0s;
			}
				ul#menu_mob{
					width: 300px;
					margin: 0 auto;
				}
					ul#menu_mob li{
						padding: 5px 10px;
						list-style: none;
					}
						ul#menu_mob li a{
							display: block;
						}
					ul#menu_mob ul{
						display: none;
						margin-left: 23px;
					}
						ul#menu_mob ul li a{
							font-size: .8em;
						}
					li#n_m_groener_sites,
					li#nav_lng_mob{
						text-align: center;
					}
						li#n_m_groener_sites ul{
							margin-left: 0;
						}
							li#n_m_groener_sites ul li div.partner{
								margin: 0 !important;
								padding-top: 10px;
							}
					li.nav_legal a{
						font-size: .7em;
						color: #76797a;
					}
					ul#menu_mob hr{
						height: 1px;
						margin: .7em 0;
						background-color: #4b4b4b;
					}



/* FORM ELEMS */

		form{
			display: inline-block;
		}
			input, textarea, select{
				appearance: none;
				-moz-appearance: none;
				-webkit-appearance: none;
			}
			input[type="text"], input[type="password"], input[type=number], textarea, select{
				margin-bottom: 15px;
				padding: 5px 10px;
				color: #4b4b4b;
				font-family: "schnebel-sans-pro", sans-serif;
				font-size: 16px;
				line-height: 1;
				background-color: #f0f0f0;
				border: 0 none;
				border-radius: 0 !important;
			}
		input[type="text"], textarea{
				width: 90%;
			}
			textarea{
				height: 155px;
				padding: 10px;
				text-transform: none;
			}
			input[type="button"], input[type="submit"], a.button{
				display: inline-block;
				margin-bottom: 15px;
				padding: 12px 18px;
				color: white;
				font-family: "schnebel-sans-pro", sans-serif;
				font-size: 14px;
				line-height: 1;
				text-transform: uppercase;
				border: 0 none;
				background-color: #008600;
				transition: color .35s linear 0s, background-color .35s linear 0s;
				cursor: pointer;
			}
				input[type="button"]:hover, input[type="submit"]:hover, a.button:hover{
					background-color: #4b4b4b;
				}
			@-moz-document url-prefix(){
				input[type="text"], textarea, select{
				}
				input[type="button"], input[type="submit"], a.button{
				}
				select{
				}
			}
			input[type="checkbox"], input[type="radio"]{
				display:none;
				}
				label{
					float: left;
					margin-right: 15px;
					font-family: "schnebel-sans-pro", sans-serif;
					font-weight: 300;
				}
					form#form_email_footer label{
						font-size: .6em;
					line-height: 1.75;
					}
					form#form_email_footer label{
						font-size: .8em;
						line-height: 1.75;
					}
				input[type="checkbox"]+label::before, input[type="radio"]+label::before{
					float: left;
					width: 20px;
					height: 20px;
					margin: 2px 14px 0 0;
					border-radius: 20px;
					background-color: white;
					content: "";
					cursor: pointer;
					box-shadow: inset 2px 2px 5px rgba(0,0,0,.35);
					}
					input[type="checkbox"]:checked+label::before, input[type="radio"]:checked+label::before{
						box-shadow: inset 2px 2px 5px rgba(0,0,0,.35);
						background-color: #008600;
						}
			::placeholder{
				color: #4b4b4b;
				opacity: 1;
				}
			:-ms-input-placeholder{
				color: #4b4b4b;
				opacity: 1;
				}
			::-ms-input-placeholder{
				color: #4b4b4b;
				opacity: 1;
				}
			div.feedback_field{
				display: inline-block;
				margin-left: 20px;
				padding: 10px 0;
				color: #e20721;
				font-size: .75em;
			}


/* CONTENT */

	div#content_main{
		min-height: 600px;
	}

		div#header_pic{
			width: 100%;
		}

		div#slider{
			position: relative;
			width: 100%;
			overflow: hidden;
		}
			div.slider_pic{
				position: absolute;
				z-index: 10;
				top: 0;
				left: 0;
				width: 100%;
				opacity: 0;
				transition: opacity .7s linear 0s, transform 5s ease-in-out 0s;
			}
				div.slider_pic.active{
					opacity: 1;
				}
				div.slider_pic.growing{
					transform: scale(105%);
				}

		div#content_background{
			position: relative;
			z-index: 1;
			background-color: white;
		}
		div#content_main p,
		div.footer_col p{
			margin-bottom: 2rem;
		}
			div#content_main a{
				font-weight: 400;
			}

			h1, h2{
				color: #008600;
				font-size: 2em;
				font-weight: 400;
				line-height: 1;
			}
				h1.hidden{
					display: none;
				}
			h3,
			h2.like_h3{
				margin-bottom: 1em;
				color: #4b4b4b;
				font-size: 1.4em;
				font-weight: 400;
				line-height: 1;
			}
			div#wrapper_home_projects h2{
				text-transform: uppercase;
			}
			div#content_main ul li{
				font-size: 1.5rem;
				line-height: 1.5em;
				font-weight: 300;
				margin-bottom: 1.5rem;
				list-style-type: none;
				padding-left: 1.5rem;
				background-image: url(/images/listensymbol.svg);
				background-repeat: no-repeat;
				background-position: left 0.8rem;
				background-size: 0.5rem;
			}
			div.wrapper_cols2 div.col_l{
				float: left;
			}
			div.wrapper_cols2 div.col_r,
			div.wrapper_cols_3_1 div.col_3_1{
				float: right;
			}
			div.wrapper_cols3 div.col_1,
			div.wrapper_cols3 div.col_2,
			div.wrapper_cols3 div.col_3,
			div.wrapper_cols_3_1 div.col_3_4{
				float: left;
			}
				div.col_l img,
				div.wrapper_cols2 img,
				div.wrapper_cols3 img{
					width: 100%;
				}
			.teaser{
				color: #008600;
				font-size: 2.25rem;
				text-align: center;
				}
			a.more,
			a.vita,
			a.back{
				color: #008600 !important;
				font-size: 0.75rem !important;
				font-weight: 300 !important;
				letter-spacing: 1px;
				display: block;
				text-transform: uppercase;
			}
				a.more::after{
					content: '';
					display: inline-block;
					width: 1rem;
					height: 0.62rem;
					margin-left: 5px;
					background: url(/images/icon_arrow_more.svg) no-repeat center;
				}
				a.more:hover{
					color: #4b4b4b !important;
				}
					a.more:hover,
					a.vita:hover,
					a.back:hover{
						color: #4b4b4b !important;
					}
					a.back::before{
						content: '';
						display: inline-block;
						width: 1rem;
						height: 0.62rem;
						margin-right: 5px;
						transform: scale(-1);
						background: url(/images/icon_arrow_back.svg) no-repeat center;
					}
		div.hspacer_20{
			display: inline-block;
			width: 20px;
			height: 1em;
		}
		div.hspacer_40{
			float: left;
			width: 40px;
			height: 1em;
		}

		div#header_home div.outer{
			display: table;
		}
			div#wrapper_text_on_pic{
				display: table-cell;
				vertical-align: middle;
			}
				div#text_on_pic{
					max-width: 500px;
					color: #008600;
					background-color: rgba(224, 224, 224, 0.85);
				}
					div#text_on_pic_inner{
						padding: 2rem 1.5rem;
					}
						div#text_on_pic_inner h1{
							margin-top: 0 !important;
							padding-bottom: 0 !important;
							font-weight: 300;
						}
						div#home_teaser{
							padding-top: 1em;
						}
			div.team_member{
				float: left;
				padding-top: 2em;
				font-size: .65em;
			}
				div.team_member_pic{
					width: 100%;
				}
				div.team_member h5{
					font-size: 1em;
					font-weight: 400;
				}
				div.team_position{
					min-height: 10em;
				}
				div.team_portrait{
					display: none;
					padding-top: 1em;
				}



/* KARRIERE */

	div.job_label{
		padding: 1em 0;
		border-top: 1px solid #d5d5d5;
		cursor: pointer;
	}
		div.job_label h4{
			float: left;
			font-size: 1em !important;
			font-weight: 300 !important;
		}
			div.bt_show_job{
				float: right;
				width: 22px;
			}
				div.bt_show_job svg{
					transition: transform .4s ease-in-out 0s;
				}
				div.bt_show_job.show svg{
					transform: rotateX(180deg);
				}

	div.job_description{
		display: none;
	}
		div.job_description li{
			font-size: .8em !important;
		}

/*
	div.bg_jobs_contact{
		background-color: #F0F0F0;
	}
		div.bg_jobs_contact_inner{
			font-size: .7em;
		}
			div.bg_jobs_contact_inner h4{
				font-size: 1.5rem;
				font-weight: 300;
			}
			div.bg_jobs_contact_inner a{
				font-weight: 300 !important;
			}
	div.wrapper_job{
		padding-top: 1em;
		border-top: 1px solid #e2e8f0;
	}
		div.wrapper_job h4{
			margin-bottom: 1em;
			font-weight: 300;
		}
			a.block.jobs{
				display: block;
				padding: 8px 10px;
				font-size: .8em;
				font-weight: 300 !important;
				background-color: #F0F0F0;
				transition: color .4s linear 0s, background-color .4s linear 0s;
			}
				a.block.jobs:hover{
					color: white;
					background-color: #882345;
				}
		div#wrapper_stellenbeschreibung h1{
			-webkit-hyphens: none;
			hyphens: none;
		}
		div#wrapper_stellenbeschreibung h4{
			margin: 1em 0;
		}
		div#wrapper_stellenbeschreibung h5{
			font-size: 1em;
			font-weight: 300;
		}
		div#wrapper_stellenbeschreibung h4.weight300{
			margin-top: 0 !important;
			font-weight: 300;
		}
		div#wrapper_stellenbeschreibung li{
			margin-bottom: .5em !important;
		}
*/


/* KONTAKT */

	label#for_check_nl{
		font-size: 16px !important;
	}


/* FOOTER */

	div#footer{
		background-color: #d5d5d5;
	}
		div#footer_logo{
			text-align: center;
		}
			div#logo_footer{
				display: inline-block;
			}
				div#logo_footer a{
					display: inline-block;
					text-indent: -99999px;
					background: url(/images/logo_h1.svg) no-repeat center center / 100%;
				}
			div.footer_col{
				font-size: .75em;
				border-top: 1px solid #4b4b4b;
			}
				div.footer_col h5{
					font-size: 1.25em;
					font-weight: 300;
				}
		div#menu_footer a{
			display: block;
			padding-bottom: .75em;
		}



	/* COOKIES */

		div#cookiebanner_bg{
			display: none;
			position: fixed;
			z-index: 10000;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background-color: rgba(255, 255, 255, 0.85);
		}
			div#wrapper_cookiebanner{
				display: none;
				position: fixed;
				z-index: 10100;
				bottom: 100px;
				left: 10%;
				width: 80%;
				padding: 15px;
				font-size: .75em;
				text-align: center;
				background-color: white;
				box-shadow: 2px 2px 10px rgba(0,0,0,.15);
				transition: bottom .75s ease-in-out 0s;
			}
				div#wrapper_cookiebanner h4{
					font-size: 1.25em;
					font-weight: 300;
				}
				div#cookies_txt{
					margin: 0 auto;
					max-width: 800px;
				}
				div#wrapper_cookiebanner input{
					margin: 10px;
				}
		div#wrapper_cookies_checkboxes{
			text-align: center;
		}
			div#cookies_checkboxes{
				display: inline-block;
			}

	#status{ position: fixed; bottom: 10px; left: 10px; z-index: 99999; padding: 3px 5px; font-size: 14px; font-family: monospace; color: rgb(196, 12, 198); background: rgba(211, 211, 211, 0.8); }
