/* v.1.0.0 PRE */
/* CSS RESET */
html, body, h1,h2,h3,p,a,ul,li,strong {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	font:inherit;
}

/* GENERAL DEFINITIONS */

body {
	background-color: lightgray;
	font-family:'Raleway';
	overflow:hidden;
	}

a	{
	color:#000;		
	text-decoration:none;
	border-bottom:1px dotted #000;
	transition:border-bottom 0.5s ease-in-ease-out;
	}
a:hover {
	border-bottom:1px solid #000;
}
	
.main .section {
	width:100%;
}

/* BRANDING AND NAVIGATION */
header {
	background:#fff;
	width:100%;
	height:auto;
	padding:0.3em; 		/* Abstand anlog .onepage-pagination setzen*/
	box-shadow:0em 0.1em 0.5em gray;
	position:fixed;
	top:0;
	left:0;
	z-index:400;
	border-radius:0 0 1.5em 1.5em;
}

header h1, header h2 {
	padding-left:1.5em; /* analog zu .onepage-pagination li setzen */
	}

.onepage-pagination {
	height:auto;
	padding:0.3em; 		/*analog header*/
	position:fixed;
	top:0;
	right:0;
	z-index:500;
	text-align:right;
}

.onepage-pagination li {
	display:inline-block;
	list-style-type:none;
	padding-right:1.5em; 		/*anlog zu header h1*/
}
.onepage-pagination li a {
	font-weight:normal;
	transition:all 0.75s ease;
	border-bottom:0;
}
.onepage-pagination li a:hover {
	border-bottom:1px solid black;
}	
.onepage-pagination li a.active  {
	font-weight:bold;
	border-bottom:1px solid black;
}
.onepage-pagination li:nth-child(1) a:before{
  content: 'intro';     
  }
.onepage-pagination li:nth-child(2) a:before{
  content: 'portfolio';
  }
.onepage-pagination li:nth-child(3) a:before{
  content: 'gemeinwohl';
  }
 .onepage-pagination li:nth-child(4) a:before{
	 content: 'kontakt';
  }
footer {
	width:100%;
	height:auto;
	padding:0.2em;
	font-size:90%;
	background-color:#fff;
	transition:all 1s ease-in-out;
	position: fixed;
	bottom:0;
	box-shadow: 0 0 0.5em gray;
	text-align:center;
	z-index:500;
	border-radius:1.5em 1.5em 0 0;
}
footer:hover {
	background-color:#fff;
	box-shadow:0em -0.1em 0.1em #999;
}

/* WRAPPER DEFINITIONS */
.onepage-wrapper {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  padding: 0;
  -webkit-transform-style: preserve-3d;
}

.onepage-wrapper .section {
  width: 100%;
  height:100%;
}

/* GENERAL PAGE CONTAINER DEFINITIONS */
.page_container {
		width:50%;
		max-height:80%;
		overflow-x:hidden;
		overflow-y:auto;
		position:relative;
		top:50%;
		left:50%;
		transform:translate(-50%,-50%);
		padding:1em;
		background-color:#fff;
		box-shadow:0.2em 0.2em 0.5em #777;
	}
	
.page_container h1 {
	font-size:180%;
	margin: 0.2em 0;
	border-bottom:1px solid gray;
	}
.page_container h2 {
	font-size:140%;
	margin: 0.5em 0;
}
.page_container h3 {
	font-size:120%;
	margin: 0.5em 0;
}
.page_container p {
	font-size:84%;
	margin:0.5em 0;

}
.left {
	text-align:left;
}
.center {
	text-align:center;
}
strong {
	font-weight:bold;
}

/* SECTION COLOR DEFINITIONS */

.page1 {
	background-color:#D61A72;
}
.page2 {
	background-color:#117191;
}

.page3 {
	background-color:#D61A72;
}
.page4 {
	background-color:#117191;
}
.page_imprint {
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100% !important;
	background:white;
}
.page_imprint .page_container {
	width:80%;
}
.page-imprint h4 {
	font-weight:bold;
}
.visible {
	display:block;
}
.right {
	text-align:right;
}
.brand-mobile {
		display:none;
		}
		
/*----- MOBILE OPTIMIERUNGEN ------*/

@media screen and (max-width: 640px) {
	.page_container {
		width:80%;
		padding:0.5em;
		max-height:60%;
		}
	header {
		display:none;
		}
	footer {
		border-radius:0;
		line-height:1.5;
		padding:0.3em;
	}
	.brand-mobile {
		display:inline;
		}
	.onepage-pagination {
		width:100%;
		background-color: white;
		box-shadow:0 0 0.3em gray;
		text-align:center;
		line-height:1.5;
		padding:0.3em;
	}
	.onepage-pagination li {
		padding:0 0.5em;
	}
	.page_container h2 {
		font-size:120%;
		margin: 0.2em 0;
}
}

@media screen and (max-width: 480px) {
	.page_container {
		width:80%;
		max-height:80%;
		padding:0.5em;
		}
	header {
		display:none;
		}
	footer {
		border-radius:0;
		line-height:1.5;
		padding:0.3em;
	}
	.brand-mobile {
		display:inline;
		}
	.onepage-pagination {
		width:100%;
		background-color: white;
		box-shadow:0 0 0.3em gray;
		text-align:center;
		line-height:1.5;
		padding:0.3em;
	}
	.onepage-pagination li {
		padding:0 0.5em;
	}
	.page_container h2 {
	font-size:120%;
	margin: 0.2em 0;
}
}
@media screen and (max-width: 321px) {
	.page_imprint .page_container {
		width:90%;
		text-align:left;
	}
}