@charset "utf-8";
/* CSS Document */
/* Baukontor Buelow */
/* Copyright 2020 Hoppe Websolutions */
.clearfix { zoom:1; }
.clearfix:before, .clearfix:after {
	content:"\0020";
	display:block;
	height:0;
	overflow:hidden;
}
.clearfix:after { clear:both; }
* {
	box-sizing: border-box;
}
html {
	height: 100vh !important;
	min-height: 100%;
	overflow-y: scroll;
	/*scroll-behavior: smooth;*/
}
body {
	position: relative;
	font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
	font-size: 100%;
	line-height: 1.4;
	color: #333;
	background-color: #FFF;
	font-weight: normal;
	-webkit-background-size: cover;
	overflow-wrap: break-word;
}
span.not-mobile, .not-mobile {
	display: none;
}
p, ul, ol ,dl, h1, h2, h3, h4, h5, h6 {
	padding: 0;
	margin: 0 0 3vmin 0;
}
p, ul, ol ,dl {
	font-size: 4vmin;
}
p span.slogan {
	font-size: 5vmin;
	text-shadow: 0px 0.03em 0.08em rgba(0,0,0,0.25);
}
p.last-paragraph {
	padding-bottom: 5em;
}
ul {
	list-style-type: square;
	margin-left: 4vmin;
	padding-left: 4vmin;
}
ol {
	margin-left: 4vmin;
	padding-left: 4vmin;	
}
ul li, ol li {
	padding-bottom: 0.4em;
}
h1, h2, h3, h4 {
	font-weight: bold;
	line-height: 1.2;
	color: #333;
}
h1 {
	font-size: 10vmin;
	padding: 0;
	margin: 1vmin 0;
	margin-top: 20vmax;
	text-shadow: 0px 0.03em 0.08em rgba(0,0,0,0.25);
}
h2 {
	font-size: 5.5vmin;
	padding: 0;
	margin: 0 0 2.5vmin 0;
	text-shadow: 0px 0.03em 0.08em rgba(0,0,0,0.25);
}
h3 {
	font-size: 1.5em;
	font-weight: normal;
	padding: 0;
	margin: 0 0 0.5em 0;
	text-shadow: 0px 0.03em 0.08em rgba(0,0,0,0.25);	
}
h4 {
	font-size: 1.25em;
	font-weight: normal;
	padding: 0;
	margin: 0 0 0.5em 0;
	text-shadow: 0px 0.03em 0.08em rgba(0,0,0,0.25);	
}

/* Links im Content */
a:link {
	color: #403a3b;
	text-decoration: underline;
}
a:visited {
	color: #403a3b;
	text-decoration: underline;	
}  
a:hover {
	color: #403a3b;
	text-decoration: none;	
}  
a:focus, a:active {
	color: #403a3b;
	text-decoration: underline;	
}
/* Links im start-bottom Bereich und im Footer */
#start-bottom a:link, #copyright a:link {
	color: #FFF;
	text-decoration: underline;
}
#start-bottom a:visited, #copyright a:visited {
	color: #FFF;
	text-decoration: underline;	
}  
#start-bottom a:hover, #copyright a:hover {
	color: #FFF;
	text-decoration: none;	
}  
#start-bottom a:focus, #start-bottom a:active, #copyright a:focus, #copyright a:active {
	color: #FFF;
	text-decoration: underline;	
}

.wrapper {
	margin: 0 auto;
	padding-top: 8vh;
	width: 90%;
	max-width: 1400px;
	text-align: center;
}
#start-bottom .wrapper {
	padding-top: 10vmin;
	text-align: left;
}
#start-bottom p {
	font-size: 6vmin;
	line-height: 1.2;
}
.wrapper2 {
	position: relative;
	padding-top: 3vmin;
	margin: 0 auto;
	width: 90%;
	max-width: 1100px;
	text-align: left;
}
.wrapper2 p, .wrapper2 ul {
	margin: 0 0 2vmin 0;
	font-size: 3vmin;
	margin: 0 0 1em 0;
	font-size: 1em;
}
.wrapper2 h2 {
	font-size: 2em;
	font-weight: normal;
}
#logo {
	position: relative;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	text-align: right;
}
#logo img {
	width: 45vmin;
	height: auto;
}
#_text {
	position: absolute;
	bottom: 2vh;
	left: 0;
	width: 100%;
}

section {
	min-height: 100vh;
	height: 100%;
	width: 100%;
	margin: 0;
}
section#start-top {
	position: relative;
	min-height: 55vh;
	height: 55%;
	background-color: #FFF;
	background: #FFF url(../img/background-6-min.jpg) bottom right no-repeat;
	background-size: 100% auto;
}
section#start-bottom {
	min-height: 45vh;
	height: 45%;
	background-color: #999;
	color: #FFF;
}
section#datenschutz {
	background-color: #f0f0f0;
}

#foot {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: auto;
	background-color: #da0b15;
}

#copyright {
	padding: 2vmin 0;
}
#copyright p {
	text-align: center;
	color: #FFF;
	font-weight: 400;
	font-size: 87.5%;
	line-height: 1.6;
	margin: 0;
}

/* Mobile Links Phone, Mail and Fax */
p.phone a, p.smartphone a, p.mail a, p.fax {
	display: block;
	margin: 0 auto;
	padding: 2vmin 0 2vmin 5vmin;
	color: #FFF;
	text-align: center;
	text-decoration: none !important;
	background: #333 url(../img/phone-white.png) left 1em center no-repeat;
	background-size: auto 6vmin;
	border-radius: 5px;
	transition: all 0.3s;
	width: 80vmin;
	max-width: 20em;
}
p.smartphone a {
	background: #333 url(../img/mobile-white.png) left 0.9em center no-repeat;
	background-size: auto 7vmin;
}
p.mail {
	padding-bottom: 3em;
}
p.mail a {
	background-image: url(../img/mail-white.png);
}
p.fax {
	background-image: url(../img/fax-white.png);
	margin-bottom: 3vmin;
}
p.phone a:hover, p.smartphone a:hover, p.mail a:hover, p.fax:hover {
	background-color: #da0b15;
}

/* Fixed Contact Icons */
#contact-data {
	position: fixed;
	display: block;
	bottom: 8vmin;
	width: 330px;
	right: -285px;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;	
}
.home-icon, .phone-icon, .mail-icon, .location-icon, .imprint-icon {
	height: 48px;
	line-height: 50px;
	padding: 0 0 0 52px;
	margin: 0.5em 0;
	overflow: hidden;
	background-color: #FFF;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	font-size: 15px;
	font-weight: 400;
	color: #333;
	border: 1px solid #333;
}
.home-icon {
	background: #FFF url(../img/icon-home.png) left 0.5em center no-repeat;
	background-size: 30px;
}
.phone-icon {
	background: #FFF url(../img/icon-phone.png) left 0.5em center no-repeat;
	background-size: 30px;
}
.mail-icon {
	background: #FFF url(../img/icon-mail.png) left 0.5em center no-repeat;
	background-size: 30px;
}
.location-icon {
	background: #FC0 url(../img/icon-location.png) left center no-repeat;
	background-size: 50px;		
}
.imprint-icon {
	/*margin-top: 3em;*/
	background: #FFF url(../img/icon-imprint.png) left 0.5em center no-repeat;
	background-size: 30px;		
}
.phone-icon:hover, .phone-icon:focus, .mail-icon:hover, .mail-icon:focus, .home-icon:hover, .home-icon:focus, .imprint-icon:hover, .imprint-icon:focus {
	opacity: 1 !important;
	cursor: pointer;
	margin-left: -285px;
}
.home-icon:hover, .home-icon:focus {
	margin-left: -55px;
}
.phone-icon:hover, .phone-icon:focus {
	margin-left: -150px;
}
.mail-icon:hover, .mail-icon:focus {
	margin-left: -225px;
}
.imprint-icon:hover, .imprint-icon:focus {
	margin-left: -220px;
}
.phone-icon a:link, .phone-icon a:visited, .phone-icon a:hover, .phone-icon a:focus, .phone-icon a:active, .mail-icon a:link, .mail-icon a:visited, .mail-icon a:hover, .mail-icon a:focus, .mail-icon a:active, .home-icon a:link, .home-icon a:visited, .home-icon a:hover, .home-icon a:focus, .home-icon a:active, .imprint-icon a:link, .imprint-icon a:visited, .imprint-icon a:hover, .imprint-icon a:focus, .imprint-icon a:active {
	text-decoration: none;
	color: #333132;
	line-height: 50px;
}
.home-icon a:hover, .home-icon a:focus, .imprint-icon a:hover, .imprint-icon a:focus {
	text-decoration: underline;
}

@media only screen and (min-width: 40em) {
	.wrapper {
		width: 80%;
		padding-top: 3vh;
		padding-top: 6vh;
		text-align: right;
	}	
	p, ul, ol ,dl {
		font-size: 3vmin;
	}
	#start-bottom p {
		font-size: 5vmin;
		font-weight: normal;
	}			
	p span.slogan {
		font-size: 3.5vmin;
	}
	h1 {
		font-size: 6vmin;
		margin: 2vmin 0;
		margin-top: 18vmin;
	}
	h2 {
		font-size: 4vmin;
		margin: 0 0 1.5vmin 0;
	}
	#logo img {
		width: 24vmin;
		width: 28vmin;
		height: auto;
	}	
	#copyright p {
		font-size: 100%;
	}	
}
	
@media only screen and (min-width: 61.25em) {
	html {
		font-size: 100%;		
	}
	
	section#start-top {
		min-height: 60vh;
		height: 60%;
	}
	section#start-bottom {
		min-height: 40vh;
		height: 40%;
	}	
	#start-bottom .wrapper {
		padding-top: 6vmin;
	}	
	h1 {
		font-size: 7vmin;
		margin-top: 18vmin;
	}	
	#logo img {
		width: 30vmin;
		height: auto;
	}	
	
	#contact-data {
		bottom: 4vmin;
	}	
	
	.only-mobile {
		display: none !important;
	}
	span.not-mobile, .not-mobile {
		display: inline-block;
	}
	
	a[href^="tel"]:link,
	a[href^="tel"]:visited,
	a[href^="tel"]:hover {
	text-decoration: none !important;
	}
	#foot {
		background-color: #333;
	}	
}