html {
	font: normal 16px/1.7143em Helvetica Neue, Helvetica, Arial, sans-serif;
	font-size: 0.875em;
	-webkit-text-size-adjust: 0.875em;
	-moz-text-size-adjust: 0.875em;
	-ms-text-size-adjust: 0.875em;

	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	color: #7d7d7d;
	width: 100%;
	overflow-x: hidden !important;
}

a {
	-webkit-transition: .2s all ease-out;
	-moz-transition: 0.2s all ease-out;
	-ms-transition: 0.2s all ease-out;
	-o-transition: 0.2s all ease-out;
    transition: .2s all ease-out;	
}

nav {
	margin: 0;	
}

.wrap {
	max-width: 990px;
	margin: 0 auto;
	padding: 0 1em;
}

#header {
	position: relative;
	margin-top: 2em;
	margin-bottom: 0.5em;
}

.lang {
	display: block;
	float: right;
	text-decoration: none;
	color: #656565;
	font-size: 13px;
	line-height: 2em;
	padding: 0 36px 0 8px;
	text-align: right;
	background: no-repeat right center;
}

.lang:hover {
	color: #acacac;
}
	


#main-nav {
	position: absolute;
	right: 1em;
	top: 50px;
}

#main-nav a {
   outline: 0;
}

#main-nav > a {
	display: none;	
}

.main-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: right;
}

.main-menu > li {
	display: inline-block;
	position: relative;
}

.main-menu > li:before {
	content: '\2022';
	color: #393939;
	font-size: 1.4em;
	padding: 0;
	vertical-align: middle;
}

.main-menu > li:first-child:before {
	display: none;
}

.main-menu > li > a {
	color: #393939;
	text-decoration: none;
	text-transform: uppercase;
	padding: 0.5em 0.5em 1em 0.7em;
}

.main-menu > li:last-child > a {
	padding-right: 0;
}

.main-menu > li > a:hover, 
.main-menu > li.expanded > a {
	color: #898989;
}

.sub-menu {
	max-height: 0;
	visibility: hidden;
	overflow: hidden;
	list-style: none;
	padding: 0;
	margin: 9px 0 0 0;
	position: absolute;
	left: 0.7em;
	z-index: 100;
	text-align: left;
	background-color: rgba(255, 255, 255, 0.7);
	padding-top: 11px;
	padding-bottom: 4px;
	
	border: 1px solid #a3a3a3;
	
	-webkit-transition: .4s all ease-out;
	-moz-transition: 0.4s all ease-out;
	-ms-transition: 0.4s all ease-out;
	-o-transition: 0.4s all ease-out;
    transition: .4s all ease-out;	
}

.lt-ie9 .sub-menu {
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQIW2P8////ZgAJtAOyBNnLRAAAAABJRU5ErkJggg==');
}

.sub-menu > li {
	display: block;
	font-size: 1.14em;
	line-height: 1em;
}

.sub-menu > li > a {
	text-decoration: none;
	color: #494949;
	white-space: nowrap;
	padding: 0.5em 32px 0.5em 13px;
	display: block;
}

.sub-menu > li > a:hover {
	color: #999999;
}

.main-menu > li:hover > .sub-menu,
.main-menu > li.expanded > .sub-menu {
	visibility: visible;
	max-height: 500px;
}

#slideshow {
	position: relative;
	border-bottom: solid #009a00;
	border-bottom-width: 12px; /* oldies */
	border-bottom-width: 2.3vw;
	border-top: solid #009a00;
	border-top-width: 4px; /* oldies */
	border-top-width: 0.4vw;
	
}

#slideshow > img {
	width: 100%;
	display: block;
}

#headlines {
	position: absolute;
	bottom: 9%;
	width: 100%;
}

#headlines p {
	background: rgba(0, 128, 0, 0.7);
	padding: 11px 34px;
	color: #fff;
	font-size: 1.8vw;
	line-height: 1.5em;
	text-align: right;
	float: right;
	width: 45%;
	content: 'viewport-units-buggyfill; font-size: 2.3vw;';
	margin: 0;
}

.lt-ie9 #headlines p  {
	font-size: 42px;
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b2008000', endColorstr='#b2008000');
}

h1 {
	color: #009A00;
	font-size: 2.15em;
	line-height: 2em;
	text-transform: uppercase;
	font-weight: normal;
	text-align: center;
	background: url(../images/dots.png) left center repeat-x;
	margin: 1.8em 0;
	margin-bottom: 0.3em;
}

h1 > span {
	padding: 0 0.4em;
	background: #fff;
	display: inline-block;
	margin: 0 0.6em;
	letter-spacing: 0.1em;
}

h2 {
	color: #454545;
	font-size: 1.57em;
	line-height: 2.0em;
	text-transform: uppercase;
	font-weight: normal;
	text-align: center;
	background: url(../images/dots.png) left center repeat-x;
	margin-bottom: 2.5em;
}

h2 > span {
	padding: 0 1em;
	background: #fff;
	display: inline-block;
	margin: 0 0.6em;
}

h2 > span.icon {
	padding: 1em 1em 1em 98px;
	background: #fff url(../images/icon.png) no-repeat 22px center;
}

h3 {
	color: #009A00;
	font-size: 1.57em;
	text-transform: uppercase;
	font-weight: normal;
	margin: 1.8em 0 0.8em 0;
}

h4 {
	font-size: 1.3em;
	color:#555;
	font-weight:300;
	letter-spacing: 0.2em;
	margin-bottom: -8px;
}

.uc {
	text-transform: uppercase;
}

address, address > a {
	font-style: normal;
	color: #7d7c7c;
}

.col30 {
	width: 35%;
	float: left;
	padding-left: 5%;
}


.col30:first-child {
	margin-left: -5%;
}

.col50 {
	width: 47%;
	float: left;
}

.col50:first-child {
	margin-right: 6%;
}

section {
	clear: both;
	padding: 0.1em 0;
}

.more {
	color: #008000;
}

a {
	color: #009a00;
}


.more:before {
	content: '» » ';
}

.person > img {
	float: left; 
	margin-right: 70px;
	margin-bottom: 2em;
	border: 10px solid #008000;
	
}

footer {
	background-color: #4e4e4e;	
	border-top: 6px solid #008000;
	text-align: center;
	padding-bottom: 1em;
	margin-top: 4em;
}

footer > p {
	margin: 1em 0 0 0; 
	font-size: 12px;
}

footer * {
	color: #aaa;
}

/* ==========================================================================
	Helper classes
	========================================================================== */
.clearfix:before,
.clearfix:after {
	content: ' ';
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}


/* ==========================================================================
   Devices styles
   ========================================================================== */
@media only screen and (max-width: 885px){
	#main-nav {
		position: fixed;
		right: 0;
		top: 65px;
		z-index: 100;
	}

	#main-nav > a {
		display: block;
		width: 80px;
		height: 40px;
		position: absolute;
		right: 0;
	}
	
	#main-nav span, #main-nav span:before, #main-nav span:after {
		display: block;
		position: absolute;
		width: 27px;
		height: 4px;
		background: #fff;
		content: '';

		-webkit-box-shadow: 0px 0px 2px 0px rgba(50, 50, 50, 0.75);
		-moz-box-shadow:    0px 0px 2px 0px rgba(50, 50, 50, 0.75);
		box-shadow:         0px 0px 2px 0px rgba(50, 50, 50, 0.75);

		-webkit-transition: .2s all ease-out;
		-moz-transition: 0.2s all ease-out;
		-ms-transition: 0.2s all ease-out;
		-o-transition: 0.2s all ease-out;
		transition: .2s all ease-out;
	}

	#main-nav span {
		right: 15px;
		top: 18px;
	}

	#main-nav span:before {
		top: -8px;
	}

	#main-nav span:after {
		top: 8px;
	}

	#main-nav > a:hover span:before {
		-webkit-will-change: -webkit-transform;
		-moz-will-change: -moz-transform;
		will-change: transform;
		-webkit-transform: translate3d(0, -2px, 0);
		-moz-transform: translate3d(0, -2px, 0);
		-ms-transform: translate3d(0, -2px, 0);
		-o-transform: translate3d(0, -2px, 0);
		transform: translate3d(0, -2px, 0);
	}

	#main-nav > a:hover span:after {
		-webkit-will-change: -webkit-transform;
		-moz-will-change: -moz-transform;
		will-change: transform;
		-webkit-transform: translate3d(0, 2px, 0);
		-moz-transform: translate3d(0, 2px, 0);
		-ms-transform: translate3d(0, 2px, 0);
		-o-transform: translate3d(0, 2px, 0);
		transform: translate3d(0, 2px, 0);
	}
	
	.main-menu {
		visibility: hidden;
		max-height: 0;
		background-color: #4e4e4e;
		border: 1px solid #a3a3a3;
		border-right-width: 0;
		margin-top: 47px;
		overflow: hidden;
		
		-webkit-transition: .4s all ease-out;
		-moz-transition: 0.4s all ease-out;
		-ms-transition: 0.4s all ease-out;
		-o-transition: 0.4s all ease-out;
		transition: .4s all ease-out;	
	}
	
	#main-nav.expanded .main-menu {
		visibility: visible;
		max-height: 500px;
		overflow: visible;
	}
	
	.main-menu > li, .sub-menu > li {
		display: block;	
		text-align: right;
	}
	
	.main-menu > li > a {
		display: block;
		padding: 0.5em 1em !important;
		color: #fff;
	}
	
	.main-menu > li.expanded > a,
	.main-menu > li > a:hover,
	.sub-menu > li > a:hover {
		background-color: #008000;
		color: #fff;
	}
	
	.main-menu > li:before {
		display: none;	
	}

	.sub-menu {
		position: static;
		background: #fff;
		display: block;
		margin: 0;
		padding: 0;
		border: 0 none;
	}
	
	.sub-menu > li {
		width: 100%;	
	}
	
	.sub-menu > li > a {
		white-space: normal;	
	}
	
	.main-menu > li.expanded > .sub-menu {
		visibility: visible !important;
		max-height: 500px !important;
	}
	
	.main-menu > li:hover > .sub-menu {
		visibility: hidden;
		max-height: 0;
	}
	
	.col30 {
       width: 100%;
       float: none;
       padding-left: 0;
       margin-top: 3em;
       margin-left: 0 !important;
   }
}

@media only screen and (max-width: 600px){
	.col50 {
		width: 100%;
		float: none;
		margin-top: 3em;
		margin-left: 0;
	}
}

@media only screen and (max-width: 480px){
	.lang {
		position: absolute;
		right: 1em;
		top: 0;
	}
	
	h1 {
		font-size: 1.72em;
	}

	h2, h3 {
		font-size: 1.256em;
	}
	
	h2 > span.icon {
		padding-left: 42px;
		background-size: 28px;
		background-position: 10px center;
	}

	h4 {
		font-size: 1.3em;
		color:#009a00;
	}
	
	#slideshow > img {
		height: 160px;
	}
	
	#headlines p {
		font-size: 14px;
		width: 80%;
		content: '';
	}

	.col30 {
		width: 100%;
		float: none;
		padding-left: 0;
		margin-top: 3em;
		margin-left: 0 !important;	
	}

	.col50 {
		width: 100%;
		float: none;
		margin-top: 3em;
		margin-right: 0 !important;
	}
}

@media only screen and (max-width: 320px){
	#logo {
		width:250px;	
	}
	
	#headlines p {
		font-size: 13px;
		width: 100%;
	}
	
	#main-nav {
		top: 60px;	
	}
	
	.person > img {
		width: 100%;	
	}
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: none;
    }
	
	p > a[href^=http]:after {
        content: " (" attr(href) ")";
		font-size: 12px;
		display: block;
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
	page-break-after: avoid;
    }
	
	nav, .lang, .more {
		display: none;
	}
	
	section > hr {
		display: none;
	}
	
	section > h1:before, section > h1:after {
		content: '';
		display: none;
	}
	
	#header {
		text-align: center;
	}
	
	#slideshow {
		border-bottom: 0 none;
	}
	
	#headlines {
		position: static;
	}
	
	#headlines p {
		font-size: 14px !important;
		text-align: left;
		padding: 0;
		float: none;
		width: 100%;
	}
	
	#kontakt {
		page-break-inside: avoid;
	}
}
