html, body, div, p, a, ul, li, span, h1, h2, h3, h4, h5, h6 {
	font-family: 'Roboto';
	color: #808080;
	border-bottom: 0px;
	text-decoration: none;
	font-weight: 300;
	font-size: 18px;
}
body {
	width: 100%;
	max-width: 100%;
	padding: 0 0 0 0;
	background: #FFF;
}
h2 {
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.5px;
}
h3 {
	font-size: 19px;
	font-weight: 500;
	letter-spacing: 0.5px;
	margin: 10px 0;
}
h4 {
	font-size: 17px;
	font-weight: 500;
	letter-spacing: 0.5px;
}
.section {
	padding: 40px 0;
	border-bottom: 3px dotted #808080;
}
img.mobil {
	width: 300px;
	display: none;
	margin: 0 0 20px auto;
}
#cad.section {
	border: 0px;
}
header {
	background: #FFF;
	width: 100%;
	max-width: calc(100% - 100px);
	padding: 50px 50px 0 50px;
	margin: 0 auto;
	position: relative;
	border-bottom: 0px;
}
header h1 {
	display: none;
}
.home main {
	position: relative;
	background: url(/wp-content/uploads/zirkel3.gif) left top no-repeat;
	background-size: 530px;
	padding-top: 20px;
}
.home main section {
	max-width: 700px;
	padding: 0 0 30px 260px;
}
.home main section:after {
	display: block;
	content: none;
	clear: both;
	position: relative;
}
.home main img {
	position: absolute;
	width: 500px;
	height: 500px;
	top: 100px;
	left: -50px;
	display: none;
}
.logo {
	margin: 0 auto;
	width: calc(100vw - 100px);
	max-width: 1000px;
}

nav {
	margin: 0 auto;
	width: calc(100vw - 140px);
	max-width: 960px;
	padding: 20px 20px;
	background: #808080;
}

nav a {
	font-family: 'Roboto';
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin: 5px 10px;
	padding: 5px 0 1px 0;
	color: #FFF;
	font-weight: 400;
	line-height: 35px;
}
nav [aria-current] {
	border-bottom: 2px solid #FFF;
}
nav a:hover {
	color: #DDD;
}
main {
	width: calc(100% - 180px);
	padding: 60px 40px 50px 40px;
	max-width: 920px;
	margin: 0 auto;
	min-height: calc(100vh - 467px);
}
.home main > h2 {
	display: none;
}
main > h2:first-of-type {
	font-size: 28px;
	margin-bottom: 30px;
}
a.leistung {
	margin: 0 30px 0 0;
	padding: 0 0 10px 0;
	font-weight: 500;
	font-size: 20px;
	white-space: nowrap;
}
a.leistung:hover {
	color: #555;
	/* border-bottom: 2px solid #555; */
}


.page-id-7 h3 {
	padding-top: 60px;
	margin: 60px 0 30px 0;
	border-top: 1px solid #808080;
}

footer {
	background: #EEE;
	padding: 40px;
	border-top: 4px solid #808080;
	border-bottom: 0px solid #808080;
}
footer a {
	text-transform: uppercase;
	padding: 10px;
	letter-spacing: 0.5px;
	font-size: 16px;
}
footer a:hover {
	color: #555;
}



@media screen and (max-width: 1100px) {
	.home main {
		background: url(/wp-content/uploads/zirkel3.gif) left top no-repeat;
		background-size: 60vw;
	}
	.home main section {
		padding-left: 28vw;
	}
}






@media screen and (max-width: 767px) {
	.home main {
		background: none;
	}
	.home main section {
		padding-left: 0px;
	}
	.logo img.mobil {
		display: block;
	}
	.logo img.desktop {
		display: none;
	}
	.logo {
		position: relative;
	}
	.logo:after {
		display: block;
		content: " ";
		position: absolute;
		width: 100%;
		height: 4px;
		top: 71px;
		background: #808080;
	}
}




@media screen and (max-width: 540px) {
	a.leistung {
		display: block;
		float: none;	
	}
}


@media screen and (max-width: 480px) {
	header {
		width: calc(100% - 60px);
		max-width: calc(100% - 60px);
    	padding: 50px 30px 20px 30px;
	}
	.logo {
    	width: calc(100vw - 60px);
	}
	nav {
		width: calc(100% - 40px);
		max-width: calc(100% - 40px);
	}
	main {
    	width: calc(100% - 60px);
    	padding: 10px 30px 50px 30px;
	}
}