html {
	background-color: #ffffff;
	padding: 0;
	margin: 0 auto;
	height: 100%;
	max-width: 100%;
}

body {	
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	font-family: /*'Open Sans'*/ 'Arial', sans-serif;
	font-family: sans-serif;
	color: #5b5b5b;
	font-size: 13pt;
    -webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadein 1s; /* Firefox < 16 */
    -ms-animation: fadein 1s; /* Internet Explorer */
    -o-animation: fadein 1s; /* Opera < 12.1 */
    animation: fadein 1s;
	animation-fill-mode: forwards;
}img {	max-width: 100%;}

.container {
	width: 100%;
	float: left;
	background: url('images/wasserhahn.jpg') no-repeat center center fixed;
	background-size: cover;
}
.portfolio .container {
	background-image: url('images/heating.jpg');
}
.contact .container {
	background-image: url('images/haus.jpg');
}
.imprint .container{
	background-image: url('images/heizung.jpg');
}

.header {
	color: #fff;
	text-shadow: 1px 1px 1px #000, -1px -1px 1px #aaa;
	margin: 0 auto;
	position: relative;
	width: 100%;
}

.logo {
	float: left;
	position: absolute;
	max-width:250px;
}
.logo img {
	max-width: 100%;
}

.welcome {
	float: left;
	width: 100%;
	text-align: center;
	margin-bottom: 50px;
	text-shadow: 1px 1px 1px #555, -1px -1px 1px #ddd, 0 0 20px #fff;
}
.welcome h1 {
	font-family: /*'Mansalva'*/ 'Arial';
	font-size: 4.5em;
	margin: 20px 0;		padding: 0 8px;
	font-weight: normal;
	color: #d4091c;
}
.welcome h2 {
	font-weight: normal;
	font-size: 1.8em;
	color: #003a81;		padding: 0 8px;
}

.menu {
	float: left;
	width: 100%;
	overflow: hidden;
	margin-bottom: 50px;
} 

	.iconlist {
		margin: 0;
		padding: 0;
		list-style: none;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		left: 50%;
		position: relative;
		float: left;
		clear: left;
	}
	.iconlist a {
		text-decoration: none;
		color: #fff;
	}
	.iconlist li {
		position: relative;
		margin: 15px;
		width: 150px;
		cursor: pointer;
		display: block;
		float: left;
		right: 50%;
		/*
		background: url('images/menu-border.png') no-repeat -5px 0px;
		background-size: 190px;
		*/
	}
	.iconlist li .icon-holder {
		position: relative;
		text-align: center;
		border-radius: 3px;
		overflow: hidden;
		padding-bottom: 5px;
		background:  rgba(0, 58, 129, 0.35);
		border: 3px solid #fff;
		border-radius: 50%;
		transition: all 0.2s linear 0s;
	}
	.iconlist li .icon-holder:hover {
		color: #d4091c;
		background:  rgba(255, 255, 255, 0.7);
		text-shadow: none;
		font-weight: bold;
	}
	/*.iconlist li .icon-holder:hover .icon i {
		color: #ffffff;
	}*/
	.iconlist li .icon-holder .icon {
		padding: 20px;
		text-align: center;
	}
	.iconlist li .icon-holder .icon i {
		font-size: 3em;
		color: #ffffff;
	}
	.iconlist li .icon-holder:hover .icon i {
		color: #d4091c;
		text-shadow: none;
	}
	.iconlist li .icon-holder span {
		font-size: 28px;
		display: block;
		margin: -10px 0 20px 0;
		font-family: /*'Mansalva'*/ 'Arial', cursive;
		/*color: #444444;
		text-shadow: none;*/
	}
			
			
.content-wrapper {
	width: 100%;
	float: left;
}
.content {
	width: 80%;
	margin: 50px auto;
	text-align: center;
}
.content a {
	color: #d4091c;
}
.content a:hover {
	text-decoration: none;
}

.content .portrait {
	width: 550px;
}

.footer {
	width: 100%;
	float: left;
	margin: 10px 0;
	font-size: 14px;
}
.footer span {
	margin-left: 20px;
}
.footer a {
	color: #5b5b5b;
}
.footer a:hover {
	color: #d4091c;
	text-decoration: none;
}


@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}


/* Responsive */

 /* Extra small devices (phones, 600px and down) */
@media (max-width: 600px) {
	.logo {
		left: 50%;
		margin: 0 0 0 -125px;
	}
	
	.welcome h1 {
		margin-top: 200px;
		font-size: 4em;
	}
	.welcome h2 {
		margin-bottom: 0;
		font-size: 1.6em;
	}
	
	.iconlist {
		width: 360px;
	}
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media (min-width: 601px) and (max-width: 767px) {
	.logo {
		max-width: 200px;
		margin: 0;
	}
	
	.welcome h1 {
		margin-top: 45px;
		margin-left: 180px;
		font-size: 3.5em;
	}
	.welcome h2 {
		margin-top: 40px;
		margin-bottom: 0;
		font-size: 1.6em;
	}
	
	.iconlist li {
		width: 135px;
		margin: 5px;
	}
	.iconlist li .icon-holder .icon {
		padding: 15px;
	}
	.iconlist li .icon-holder span {
		margin: -10px 0 13px 0;
	}
}

/* Medium devices (landscape tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991px) {
	.welcome h1 {
		margin-top: 55px;
		margin-left: 230px;
	}
	.welcome h2 {
		margin-top: 40px;
		margin-bottom: 0;
	}
}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
}