/* HTML5 Elemente */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center, hr
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	text-decoration: none;
	list-style: none;
	}


/* Responsive Images */

img {
max-width: 100%;
/* Part 1: Set a maxium relative to the parent */
width: auto\9;
/* IE7-8 need help adjusting responsive images */
height:auto;
	/* Part 2: Scale the height according to the width, otherwise you get stretching */
vertical-align: middle;
border: 0;
-ms-interpolation-mode: bicubic;
	
}


/* BASE
============================================= */

body {
margin: 0;
font-family: Arial, sans-serif;
font-weight: bold;
font-size: 1em;
color: #000;
background: #fff;
}


/* Links */

a {
text-decoration: none;
-webkit-transition: all 0.2s ease-in;
   -moz-transition: all 0.2s ease-in;
     -o-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
        transition: all 0.2s ease-in;
	color: #000;
	outline: none;
}

a:focus, 
a:active, 
a:hover {
	border-bottom: none;
	outline: 0 none;
}



*{
	margin:0;
	box-sizing: border-box;
}

.container{
	max-width: 1400px;
	margin:auto;
	position: relative;
}

.row{
	display: flex;
	flex-wrap: wrap;
}



/* Typo
============================================= */

h1 {
	font-size: 2.5em;
	font-weight: bold;
	text-align: center;
}

h2 {
	font-size: 1.4em;
	font-weight: bold;
	text-align: left;
}

h3 {
	font-weight: bold;
	line-height: 1.5em;
}

p4 {
	font-style: italic;
font-size: 1.4em;
	line-height: 1.5em;
	font-weight: normal;
}

p3 {
	font-weight: normal;
}

p3 b {
	font-weight: bold;
}

/* Header
============================================= */

header {
	margin:auto;
	position: fixed;
	padding: 25px;
	width: 100%;
	background-color: #ffffff;
	z-index: 100;
}

#socialbar {
	width: 110px;
	height: 70px;
	background-color: #000000;
	position: absolute;
	float: right;
	margin-top: -30px;
	right: 0;
}

.icon {
	width: 50px;
	height: 50px;
	float: right;
	padding-top: 20px;
	padding-right: 10px;
}

#nameundnav {
	height: 112px;
}

#name {
	font-size: 1.4em;
	padding-top: 40px;
	line-height: 1.4em;
	float: left;
	position: absolute;
	bottom: 0;
}

#name u {
	border-bottom: 3px solid #000000;
}


/*.Navigation*/

#nav {
	float: right;
	font-size: 1.2em;
	position: absolute;
	bottom:3px;
	right:0;
}

#nav li {
    display: inline; /* li nebeneinander anzeigen */
    list-style-type: none; /* ohne Aufzählungspunkte */
	text-align: center;
	margin-left: 20px;	
	float: right;
}

#nav a:focus, 
#nav a:active, 
#nav a:hover {
	border-bottom: 2.5px solid #000000;
}


/* WELCOME
============================================== */

.welcome{
	width: 150%;
	display: block;
	height: 800px;
	padding: 165px 0;
}



/* GALLERY
============================================== */

.gallery{
	width: 100%;
	display: block;
	min-height: 100vh;
	padding: 280px 15px 0 15px;
}
.gallery .gallery-filter{
	padding: 0 15px;
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}
.gallery .gallery-filter .filter-item{
	display: inline-block;
	margin:0 10px;
	cursor: pointer;
	transition: all 0.3s ease;
	padding: 10px;
}
.gallery .gallery-filter .filter-item.active{
	color: #ffffff;
	background-color: #000000;
}
.gallery .gallery-item{
	width: calc(100% / 4);
}

.gallery .gallery-item-inner a:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.gallery .gallery-item-inner img{
	width: 100%;
}
.gallery .gallery-item.show{
	animation: fadeIn 0.5s ease;
}

@keyframes fadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}

.gallery .gallery-item.hide{
	display: none;
}



/* ABOUT
============================================== */
.about{
	display: flex;
	padding-top: 280px;
}


#abouttextbox1 {
	width: 50%;
	padding: 50px 25px 50px 200px;
	float: left;
}


#abouttextbox2 {
	width: 50%;
	padding: 220px 200px 100px 25px;
	float: right;
	}

/* OFFER
============================================== */
.offer{
	width: 100%;
}

#fourcategoriesbox {
	width: 100%;
	float: left;
}

.fourcategories {
	width: 25%;
	float: left;
	padding: 25px;
}

.fourcategoriestextbox {
	font-weight: normal;
	text-align: center;
	border-top: 3px solid #000000;
	padding-top: 50px;
}

.fourcategories h2 {
	text-align: center;
}

.categoryicon {
	width: 80px;
	padding: 30px 0px 50px 0px;
	margin: auto;}


/*CONTACT
============================================== */
.contact{
	padding: 280px 15px 300px 15px;
	text-align: center;
	font-weight: normal;
	display: flex;
	width: 100%;
}

.contact a,
.contact a:focus, 
.contact a:active, 
.contact a:hover {
	border-bottom: 2.5px solid #000000;
	font-weight: bold;
}

#aboutanibox {
	width: 50%;
margin: auto;
padding-top: 50px;}

#aboutani {
	
}

/* IMPRESSUM
============================================== */

.impressum{
	display: block;
	padding: 280px 15px 50px 15px;
	text-align: left;
	margin: 0 auto;
	font-size: 0.8em;
	font-weight: normal;
}


.impressum h1 {
	text-align: left;
	font-size: 2.5em;
	
}

/* WORK
============================================== */
.workpage {
	padding: 280px 15px 0px 15px;
	margin-bottom: 200px;
}


#textbox {
	width: 50%;
}


#zurueck {
	font-size: 0.8em;
	margin-top: 20px;
}

#zurueck a,
#zurueck a:focus,
#zureuck a:active,
#zurueck a:hover {
	border-bottom: 2.3px solid #000000;}

.workpage-img_4er {
	width: calc(100% / 4);
}

.workpage-img_2er {
	width: calc(100% / 2);
}

.workpage-img_1er {
	width: 100%;
}

/* FOOTER
============================================= */

footer {
	margin:auto;
	padding: 15px 15px 35px 15px;
	width: 100%;
	font-size: 0.8em;
	position: fixed;
	bottom: 0;
}

footer a:focus, 
footer a:active, 
footer a:hover {
	border-bottom: 2.3px solid #000000;
}





/* RESPONSIVE
============================================= */



@media(max-width: 767px){
	
	body {font-size: 0.8em;}
		
	header {padding: 25px 15px 25px 15px; height: 160px;}
	
	#nameundnav {height: 90px;}
	
	#nav {position: relative; top: 100px; float: left;}
	#nav li {margin-left: 0px; margin-right: 25px;}

	.welcome {height: 500px; width: 100%;padding: 280px 0px 0px 0px; }
	
    .gallery .gallery-item {width: 50%;}	
	.gallery .gallery-filter .filter-item {margin-bottom: 10px;}
	
	
	#abouttextbox1 {width: 100%;padding: 50px 25px 0px 25px;}
	#abouttextbox2 {width: 100%; padding: 25px 25px 100px 25px;}
	
	.fourcategories {width: 50%; height: 400px;margin-bottom: 100px; }
	
	.contact a,
.contact a:focus, 
.contact a:active, 
.contact a:hover {
	border-bottom: 2px solid #000000;
	font-weight: bold;
}
	
	.workpage {
	padding: 230px 15px 0px 15px;
}
	
	.workpage-img_4er {width: 50%;}	
	.workpage-img_2er {width: 50%;}		
	
	.about {width: 100%; }
	#textbox {width: 100%;}
	#aboutanibox {width: 100%;}
	#aboutbox {width: 100%; top: 100px; padding-right: 0px;}
	#aboutani {padding-right: 0px;position: relative;}
	
	.impressum {padding: 230px 15px 50px 15px;}


}


