






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,
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;
}

html,body {
	position:relative;
	width:100%;
	height:100%;
/*overflow-x: hidden;*/
	
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

a, a:visited, a:hover, a:link, a:active{
	text-decoration: none;
	color:#fff;

}

ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
:focus{
	outline:none;
}


/*---------RESET END------------*/

/*---------general------------*/

body {

	
	background-color: #121112;
	color:#ccc;
	/*overflow-x: hidden;*/

	font-family: "mr-eaves-modern",sans-serif;
	font-weight: 200;
	font-variant: normal;
	letter-spacing: 0.04em;
	font-size: 19px;
	
}



@-ms-viewport{
    width: extend-to-zoom;
    zoom: 1.0;
}

.noscroll{
	overflow:hidden;
}

.pointer{

	cursor: pointer;
}

.subheader{
	font-family: "mr-eaves-modern",sans-serif;
	font-weight: 200;
	font-variant: small-caps;
	letter-spacing: 0.08em;
	font-size: 20px;
	display: block;

}

.header_small{
	font-family: 'Playfair Display', serif;
	font-weight: 400;
	font-size: 26px;
	letter-spacing: 0.04em;
}

.header{
	display:block;
	font-family: 'Playfair Display', serif;
	font-weight: 400;
	font-size: 36px;
	letter-spacing: 0.04em;
	color:#ebebeb;
	line-height: 1em;
}

.body_text{

	font-family: "mr-eaves-modern",sans-serif;
	font-weight: 200;
	font-variant: normal;
	letter-spacing: 0.04em;
	font-size: 19px;
	line-height: 1.3em;

}



.c_direction { unicode-bidi:bidi-override; direction: rtl; }

.footer_text{
	letter-spacing: 0.08em;
	font-size: 15px;

}



.line{
	position: relative;
	left:50%;
	margin-left:-120px;
	border-bottom: 2px solid #cdcdcd;
	width:240px;
	height:0;
	display: inline-block;

}



.no-margin{

	margin:0 !important;
}

/*---------Topshot section------------*/


#bg-image-top{
	position:relative;
	top:0;
	left:0;
	

	height: 100%;
	width:100%;
	
	border:0px solid white;
	background-image: url('media/topshot.jpg');
	background-repeat:no-repeat;
	background-position: bottom center;
	background-attachment: scroll;
	background-size: cover;
	
	border-bottom: 2px solid #cdcdcd;
	z-index:2;
}



#logo_wrapper{
	width:100%;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	cursor: pointer;
	text-align: center;
}

#logo_top{
	

	
	width:350px;
	
}

#triangle_wrapper{
	position:absolute;
	left:50%;
	
	margin-top: 60px;
	transform: translate(-50%,0);
	cursor: pointer;
}



.triangle_top{
	width:20px;
	
}

#hint{ 
	opacity:0;
	background-color:rgba(0,0,0,0.5);
	padding: 3px 8px 3px 8px;
	margin-top:20px;
	border:1px solid #ccc;
	color:white;

}

.triangle_top_black{
	width:40px;
	position:absolute;
	bottom:0;
	left:50%;
	transform: translate(-50%,70%);

}



/*---------Content BG------------*/


#bottom-wrapper{
	position:relative;
	width:100%;
	left:0;
	right:0
}

#bg-image-bottom{
	position:absolute;
	bottom:0;
	left:0;
	margin-left: 0;

	min-height: 100%;
	
	width:100%;
	
	border:0px solid white;
	background-image: url('media/bg.jpg');
	background-repeat:no-repeat;
	background-position: bottom center;
	background-attachment: scroll;
	background-size: 1600px auto;
	z-index:0;
	
}

#content{
	position:relative;
	margin:0 auto;
	width:100%;
	
	padding-bottom:850px;
	
	border:0px solid white;
	/*text-align: center;*/
}


/*---------skills section------------*/


#skills{
	position:relative;
	padding-top:120px;
	display: block;
margin-bottom:70px;
	text-align: center;

}

#skills svg{
	width:160px;
	
}

.skill{
	position:relative;
	display:inline-block;
	margin-right:60px;
}

.skill .text{

	position:absolute;
	display:inline-block;
	top:50%;
	left:50%;
	transform: translate(-50%,-50%);
	width:80%;
	margin-left:1px;
	opacity: 0;
}


#skills .cls-1{
	fill:none;
	stroke:#cdcdcd;
	stroke-miterlimit:10;
	stroke-width:3px;

	stroke-dasharray:1000;
	stroke-dashoffset: 1000;
	

}



/*---------grid section------------*/


#arbeitsproben{
	position: relative;
	display:block;
	border:0px solid white;
	margin-top:200px;
	max-width:800px;
	left:50%;
	transform: translate(-50%,0);
}

.grid_item{
	position: relative;
	display: inline-block;	
	margin-right:0px;
	margin-bottom:80px;

}

.grid_item.right{
	display: inline-block;	
	margin-right:0px;
	float: right;
	

}

.grid_item img{

width :350px;
display:block;
}

.mo_title{
	position: absolute;
	width:100%;
	text-align: center;
	top:50%;
	transform: translate(0,-50%);

}
.mo_title .header{

	font-size: 24px;
}

.mo_title .subheader{

	font-size: 16px;
	margin-top:5px;
}

.grid_item_mo{
	position:absolute;
	border:0px solid white;
	width:100%;
	height:100%;
	top:0;
	left:0;
	box-sizing: border-box;
	outline: 1px solid #b7b7b7;
	background-color: rgba(0,0,0,0.7);
	display:none;
}


/*---------portfolio detail page------------*/

.portfolio_page_wrap{
	position: relative;
	overflow:auto;
	width:100%;


}

.portfolio_page{

	
	position:relative;
	max-width:900px;
	margin-left:auto;
	margin-right:auto;
	padding-top:50px;
	padding-bottom:100px;
	/*z-index:4;*/
}

.portfolio_page_bg{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;

	/*background-image: url(media/detail_bg.jpg);
	background-repeat:no-repeat;
	background-position: top center;
	background-attachment: scroll;
	background-size: cover;*/
	/*z-index:3;*/
}

.portfolio_page_bg img{
	width:100%;

	
}

.portfolio_page .header{
margin-left:-30px;
margin-bottom:7px;

}

.portfolio_page .subheader{

margin-bottom:50px;

}

.portfolio_page .body_text{

margin-bottom:40px;

}

 .triangle_left{

	transform: rotate(90deg);
	vertical-align: middle;
	width:17px;
}

.uebersicht{
	width:21px;
	vertical-align: middle;
	margin-left:40px;
	margin-right:40px;
}

.navigation{
	display: inline-block;
	position:relative;
	left:50%;
	transform: translate(-50%,0);
	margin-bottom: 50px;
	margin-top:50px;
}

 .triangle_right{

	transform: rotate(-90deg);
	vertical-align: middle;
	width:17px;

}

.portfolio_image, .portfolio_video{
	width:100%;

}

.project_link{
	display: block;
	text-align: center;
	margin-top:10px !important;
	margin-bottom:10px !important;

}


.section {
	clear: both;
	padding: 0px;
	margin: 0px;
	margin-bottom:30px;
}


.col {
	display: block;
	float:left;
	margin: 1% 0 1% 8%;
}
.col:first-child { margin-left: 30px; }


.group:before,
.group:after { content:""; display:table; }
.group:after { clear:both;}
.group { zoom:1; /* For IE 6/7 */ }



.span_2_of_2 {
	width: 57%;
}
.span_1_of_2 {
	width: 30%;
	min-width: 200px;

}

/*---------Kunden section------------*/

#kunden{
position: relative;
left:50%;
top:0;
transform: translate(-50%,0);
max-width: 800px;
width:90%;
text-align: center;
margin-top: 20px;
line-height:30px;

}

#kunden span{
margin-left:20px;
white-space: nowrap;
}

#kunden .ellipsis{

	font-size:30px;

}

/*---------Contact section------------*/


#hallo{
	position:absolute;
	bottom:150px;
	right:50%;
	text-align:left;
	margin-right:12%;
	width:300px;
}

#hallo .header_small, #mail .header_small{
	
	margin-left:-30px;

}

#hallo .body_text, #mail .body_text{
	
	margin-top:18px;

}

#mail{
	position:absolute;
	bottom:150px;
	left:50%;
	text-align:left;
	margin-left:250px;
	

}


/*---------footer section------------*/

#footer_hoch{
	cursor: pointer;
	position: absolute;
	bottom:15px;
	left: 50%;
	transform: translate(-50%, 0);
text-align: center;
}
#footer_hoch img{

	transform: rotate(180deg);
	margin-bottom:5px;
	margin-left:-1px;
}

#impressum{
	position: absolute;
	
	bottom:15px;
	right:20px;
}






.impressum{
	max-width:600px;
	margin-left:auto;
	margin-right: auto;
	padding-top:100px;

}

.impressum .header{
	
	text-align: center;
}

.impressum .subheader{
	margin-top:10px;
	margin-bottom:120px;
	text-align: center;
}

.impressum .navigation{
position:relative;
left:20px;
top:20px;

}

/*---------media queries------------*/







@media only screen and (max-width: 850px) {

	#bg-image-top{ 
		background-image: url('media/topshot_low.jpg');
		
	}

	#bg-image-bottom{ 
		background-image: url('media/bg_low.jpg');
		
	}


	.skill{ 
		margin-right:0;
		padding:10px;

	 }


	 .grid_item{
		text-align: center;
		margin-right: 0;
		display:inline-block;
		margin-bottom:40px;
		padding:00px;
	}


	

	#hallo{
		position:relative;
		top:0;
		left:50%;
		transform: translate(-50%,0);
		display:inline-block;
		margin-right:0;
		margin-top:100px;

	}


	#mail{
		position:absolute;
		bottom:150px;
		left:50%;
		text-align:left;
		transform: translate(-50%,0);
		margin:0;
	}




}


@media only screen and (max-width: 690px) {

	.col { 
			margin: 1% 0 1% 0%;
			float: none;
			text-align: left;
		}

	.group{

		text-align: center;
	}

	.span_2_of_2, .span_1_of_2 {
		 width:100%;
		 max-width:400px;
		 display: inline-block;
	}

	.portfolio_image, .portfolio_video{
		margin-left:15px;
	}


}


@media only screen and (max-width: 740px) {

	#skills{
		left:50%;
		transform: translate(-50%,0);
		text-align: left;
		display:inline-block;

	}

	
	#skills svg{
		position: relative;
		top:-5px;
		width:30px;
		display: inline;
		
		float: right;

	}

	.skill{
		display: block;
		margin-right:0;
		margin-bottom: 30px; 
	}

	#skills .cls-1{
		stroke-width:6px !important; 
	}

	.skill .text{
		position: relative;
		/*float: left;*/
		display: inline;
		top:0;
		left:0;
		transform: none;
		margin-right:20px;

	}


	#arbeitsproben{

		text-align: center;

	}

	.grid_item.right{
		float:none;

	}

}

@media only screen and (max-width: 480px) {

	.grid_item{
		text-align: center;
		margin-right: 0;
		display:inline-block;
		margin-bottom:40px;
		line-height:0;
	}

	.grid_item img{
		display: inline;
		width:90%;
	}


	


	#hallo{
		position:relative;
		top:0;
		
		display:inline-block;
		margin-right:0;
		margin-top:100px;
		width:80%;
		padding-left:30px;

	}

	.portfolio_page .header{
		margin-left:0;

	}
	.col:first-child{
		margin-left:0;
	}

	.portfolio_image, .portfolio_video{
		margin-left:0px;
	}

	#footer_hoch{
		display: none;
	}

}


@media only screen and (orientation: portrait) {

	#bg-image-top{ 
		background-image: url('media/topshot_port.jpg');
		
	}


	#logo_top{

	width:80%;
	max-width:350px;
	}

	#logo_wrapper{

	top:42%;
	
	}
	

	
}


@media only screen and (orientation: portrait) and (max-width: 850px) {

	#bg-image-top{ 
		background-image: url('media/topshot_port_low.jpg');
		
	}


	
}


@media only screen and (orientation: landscape) and (max-height: 480px) {

	#logo_top{

	width:35%;
	
	}

	#logo_wrapper{

	top:42%;
	
	}


	
}
