@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700|Roboto:100,300,400,500,700');

/*---------------------------------------------------*/
/* MAIN */
/*---------------------------------------------------*/
html, body {
	height: 100%;
}

body {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 300;
	font-size: 18px;
	color: #555555;
	text-align: center;
}

.wrapper {
	width: 1000px;
	margin: 0 auto;
	text-align: left;
}

.contentwrapper {
	width: 1000px;
	padding: 100px 0px;
	margin: 0 auto;
	text-align: left;
}

.clearer {
	clear: both;
}

/*---------------------------------------------------*/
/* HEADERNAV */
/*---------------------------------------------------*/
#headerframe {
	width: 100%;
	height: 80px;
	background-color: #fff;
	position: fixed;
	-webkit-box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.60);
	-moz-box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.60);
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.60);	
	z-index: 1;
}

#logoframe {
	width: 252px;
	float: left;
}

#navframeTop {
	float: right;
	padding-top: 30px;
}

#naviTop li {
	float: left;
}

#naviTop a {
	text-decoration: none;
	color: #555;
	font-weight: 300;
	font-size: 18px;
	display: inline-block;
	padding: 8px 14px 10px 14px;	
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition-timing-function: ease-out;
	-webkit-transition-property: background-color, color;
	-webkit-transition-duration: 0.1s;	
	transition-timing-function: ease-out;
	transition-property: background-color, color;
	transition-duration: 0.1s;
}

#naviTop a:hover {
	background-color: #fe7d09;
	color: #fff;	
}

#naviTopMobile, #mobilenav {
	display: none;
}

#mobilenav {
	font-size: 28px;
	cursor: pointer;
}

#naviTopMobile {
	position: absolute;
	top: 80px;
	margin-left: -150px;
	background-color: #fff;	
	-webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.60);
	-moz-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.60);
	box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.60);
}

#naviTopMobile li a {
	display: block;
	width: 155px;
	background-color: #fff;
	color: #555;
	border-top: 1px solid #ccc;
	padding: 10px;
	text-decoration: none;
}

#naviTopMobile li a:hover {
	background-color: #fe7d09;
	color: #fff;
}

/*---------------------------------------------------*/
/* HOME IMAGEVIEWPOINT */
/*---------------------------------------------------*/
#imgviewpoint {
	width: 100%;
	height: 100%;
	background-color: #ddd;
	background-image: url(../images/viewpointbig.jpg);
	background-size: auto 100%;
}

#homeSlogan {
	position: absolute;
	top: 50%;
	color: #fff;
	text-align: right;
	margin: 0 auto;
	width: 1000px;
	font-size: 58px;
	text-shadow: 2px 2px 1px rgba(0, 0, 0, 0.80);
	margin-top: -40px;
}

#homeSlogan p {
	line-height: normal;	
}

#homeSlogan strong {
	font-weight: 700;
	font-style: italic;
}

#scrollbtn {
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	position: absolute;
	width: 50px;
	height: 50px;
	background-color: #fe7d09;
	color: #fff;
	bottom: 40px;
	left: 50%;
	margin-left: -25px;	
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
	text-align: center;
	font-size: 24px;
	cursor: pointer;
	-webkit-transition-timing-function: ease-out;
	-webkit-transition-property: border-color;
	-webkit-transition-duration: 0.3s;	
	transition-timing-function: ease-out;
	transition-property: border-color;
	transition-duration: 0.3s;
	border: 4px solid transparent;
}

#scrollbtn:hover {
	border-color: #fff;
}

#scrollbtn i {
	margin-top: 9px;
}

/*---------------------------------------------------*/
/* CONTENT */
/*---------------------------------------------------*/
h1, h3 {
	color: #fe7d09;
	font-size: 36px;
	font-weight: 100;
	text-transform: uppercase;
	margin-bottom: 40px;
}

strong {
	font-weight: 400;
}

#kontaktformular p {
	margin-bottom: 8px;	
}

#kontaktformular label {
	display: inline-block;
	width: 140px;
    vertical-align: top;
}

#kontaktformular input[type="text"], #kontaktformular textarea, #kontaktformular select {
	width: 400px;
	border: 1px solid #ccc;
	background-color: #fff;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 300;
	font-size: 14px;
	color: #555555;
	padding: 6px;	
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}

#kontaktformular input[type="text"]:focus, #kontaktformular textarea:focus, #kontaktformular select:focus {
	border-color: #fe7d09;
}

#anrede {
	width: 200px !important;
}

#nachricht {
	height: 100px;
}

#regbtn {
	background-color: #fe7d09;
	color: #fff;	
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	padding: 10px;	
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 400;
	cursor: pointer;
	font-size: 14px;
	border: 0px;
	margin-left: 144px;
}

#meldung {
	margin-bottom: 20px;
	padding: 10px;
	display: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}

.fehlermeldung {
	border: 1px solid red;
	color: red;
}

.okmeldung {
	border: 1px solid green;
	color: green;
}

h2 {
	color: #fe7d09;
	font-size: 24px;
	font-weight: 100;
	margin-bottom: 10px;
	margin-top: 10px;
}

#siteframe ul {
	margin-bottom: 40px;
	margin-left: 20px;
	list-style: disc;
}

#siteframe li {
	line-height: 24px;
}

#siteframe a {
	color: #fe7d09;
	text-decoration: underline;
}

#siteframe a:hover {
	text-decoration: none;	
}

p {
	line-height: 24px;
	margin-bottom: 15px;
}

#siteframe {
	padding-top: 200px;
}

/*---------------------------------------------------*/
/* HOME - TEAM */
/*---------------------------------------------------*/
#teamframe {
	background-color: #fe7d09;
	color: #fff;
	padding: 25px 0px;
}

#teamframe img {
	width: 100%;
}

#teamwrapper {
	width: 1000px;
	margin: 0 auto;
	padding-top: 10px;
	text-align: left;
}

#teamwrapper h2 {
	color: #fff;
	font-size: 36px;
	font-weight: 100;
	text-transform: uppercase;
	margin-bottom: 30px;
}

/*---------------------------------------------------*/
/* ANFAHRT / MAPS */
/*---------------------------------------------------*/
#anfahrtsframe {
	padding: 0px;	
}

#mapsframe {
	width: 100%;
	height: 400px;
	background-color: #ccc;
	margin-bottom: 10px;
}

/*---------------------------------------------------*/
/* FOOTER */
/*---------------------------------------------------*/
#footerframe {
	width: 100%;	
	background-color: #fe7d09;
	color: #fff;
	padding: 80px 0px;
	font-weight: 400 !important;
}

#footerframe h4 {
	color: #fff;
	font-size: 30px;
	font-weight: 100;
	text-transform: uppercase;
	margin-bottom: 30px;
}

#footerframe .footermenu a {
	color: #fff;
	text-decoration: none;
	line-height: 24px;
	font-weight: 400 !important;
}

#footerframe .footermenu a:hover {
	color: #964200;	
}

#footerLeft, #footerMiddle, #footerRight {
	float: left;
}

#footerLeft, #footerMiddle {
	width: 270px;
}

#subfooter {
	background-color: #cccccc;
	color: #555555;
	font-weight: 400 !important;
	padding: 30px 0px;
	margin-top: 10px;
}

#sfLeft {
	float: left;
}

#sfRight {
	float: right;
	text-align: right;
}
	
@media only screen and (max-width: 1100px) { 
	.wrapper {
		width: 900px;
	}
	
	.contentwrapper {
		width: 900px;
	}
	
	#homeSlogan {
		width: 900px;
	}
	
	#teamwrapper {
		width: 900px;
	}
	
	#footerMiddle {
		width: 250px;
	}
	
	#footerLeft {
		width: 210px;
	}
}

@media only screen and (max-width: 768px) { 
	#mobilenav {
		display: block;
	}
	
	#naviTop {
		display: none;
	}
	
	.wrapper {
		width: 90%;
	}
	
	.contentwrapper {
		width: 90%;
	}
	
	#homeSlogan {
		width: 90%;
	}
	
	#teamwrapper {
		width: 90%;
	}
	
	#homeSlogan {
		font-size: 24px;
	}
	
	#subfooter {
		font-size: 14px;
	}
	
	#sfLeft {
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}
	
	#sfRight {
		float: none;
		width: 100%;
		text-align: left;
		font-size: 18px;
	}
}

@media only screen and (max-width: 480px) { 
	#mobilenav {
		display: block;
	}
	
	#naviTop {
		display: none;
	}
	
	.wrapper {
		width: 90%;
	}
	
	.contentwrapper {
		width: 90%;
	}
	
	#homeSlogan {
		width: 90%;
	}
	
	#teamwrapper {
		width: 90%;
	}
	
	#footerMiddle {
		float: none;
		width: 90%;
		margin-bottom: 30px;
	}
	
	#footerLeft {
		float: none;
		width: 90%;
		margin-bottom: 30px;
	}
	
	#homeSlogan {
		font-size: 24px;
	}
	
	#subfooter {
		font-size: 14px;
	}
	
	#sfLeft {
		float: none;
		width: 90%;
		margin-bottom: 20px;
	}
	
	#sfRight {
		float: none;
		width: 90%;
		text-align: left;
		font-size: 18px;
	}
}









/* Demo migration: adapt the existing layout to narrow browser windows. */
.contentwrapper img { max-width: 100%; height: auto; }
.contentwrapper iframe { max-width: 100%; }
@media (max-width: 1000px) {
 .wrapper, .contentwrapper, #teamwrapper { width: 90%; }
 #naviTop { display: none; }
 #mobilenav { display: block; }
 #naviTopMobile { right: 5%; margin-left: 0; }
 #homeSlogan { max-width: 90%; font-size: clamp(24px, 4vw, 44px); }
}
@media (max-width: 600px) {
 #footerLeft, #footerMiddle, #footerRight { float: none; width: 100%; margin: 0 0 25px; }
 .contentwrapper h1 { overflow-wrap: anywhere; }
 #homeSlogan { font-size: 24px; }
}
