@charset "utf-8";
@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600|Lato:400,700);


/*
--------------------
Fonts
--------------------
*/

.font_fix{}

/*@font-face {
    font-family: 'Source Sans Pro';
	src: url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Regular.eot');
	src: url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Regular.eot?#iefix') format('embedded-opentype'),
		 url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Regular.woff') format('woff'),
		 url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Source Sans Pro Semibold';
	src: url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Semibold.eot');
	src: url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Semibold.eot?#iefix') format('embedded-opentype'),
		 url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Semibold.woff') format('woff'),
		 url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Semibold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lato';
	src: url('/assets/fonts/Lato/Lato-Regular.eot');
	src: url('/assets/fonts/Lato/Lato-Regular.eot?#iefix') format('embedded-opentype'),
		 url('/assets/fonts/Lato/Lato-Regular.woff') format('woff'),
		 url('/assets/fonts/Lato/Lato-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lato Bold';
	src: url('/assets/fonts/Lato/Lato-Bold.eot');
	src: url('/assets/fonts/Lato/Lato-Bold.eot?#iefix') format('embedded-opentype'),
		 url('/assets/fonts/Lato/Lato-Bold.woff') format('woff'),
		 url('/assets/fonts/Lato/Lato-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}*/

/*
@font-face {
    font-family: 'Source Sans Pro Semibold';
    src: url('/assets/fonts/Source_Sans_Pro/SourceSansPro-Semibold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lato';
    src: url('/assets/fonts/Lato/Lato-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lato Bold';
    src: url('/assets/fonts/Lato/Lato-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
*/





/*
--------------------
General CSS
--------------------
*/

/*---Reset Stylesheet---*/

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

	
/*---HTML5 Definitions---*/

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{ 
	display:block;
}
	

/*---General CSS---*/
html{ height:100%; }
body{
	width:100%; height:100%;
	font:13px/18px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	color:#000;
	background:#fff;
	letter-spacing:1px;
	text-rendering: optimizeLegibility;
	overflow-y:scroll;
	}	

h1, h2, h3, .large{
	font:12px/14px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	color:#000;
	margin:0px 0px 10px 0px;
	}
	h2, h3{ 
	font:12px/14px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	margin:30px 0px 10px 0px;
	letter-spacing:1px;
	}
	.top{
	margin-top:0px;
	}
	.tinline{
	margin-top:30px;
	}

p{
	font:13px/18px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	margin-bottom:10px;	
	}

a, a:active{
	color:#000;
	text-decoration:none;
	}
	a:hover, a.selected{
	color:#000;
	}
	a img{
	border:0;
	}


em{
	color:;
	font:;
	}
	em a{
	color:;
	}
	em a:hover{
	color:#929292;
	}
	strong{
	color:#929292;
	font:13px/18px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	}
	.error{
	color:#fff;
	}

.clear, .clear_left{
	clear:both;
	font-size:0px;
	line-height:0px!important;
	height:0px!important;
	margin:0px!important;
	padding:0px!important;
	}
	.clear_left{
	clear:left;
	}
	
/*ul, ol{
	margin-left:20px;
	}	
	li{
	margin-bottom:10px
	}*/
	
table{
	border-collapse:collapse;
	border-spacing:0;
	table-layout:fixed;
	margin-bottom:10px;
	}
	td, th{
	padding:0px 0px 5px 0px;
	text-align:left;
	}
	
	input, select{ vertical-align:middle; }


/*
--------------------
Cols
--------------------
*/

.col_0-5, .col_1-5, .col_2-5, .col_3-5, .col_4-5, 
.col_1, .col_2, .col_3, .col_4, .col_5, 	
.colp_0-5, .colp_1-5, .colp_2-5, .colp_3-5, .colp_4-5, 
.colp_1, .colp_2, .colp_3, .colp_4, .colp_5, 
.cont_0-5, .cont_1-5, .cont_2-5, .cont_3-5, .cont_4-5, 
.cont_1, .cont_2, .cont_3, .cont_4, .cont_5{
	display:inline;
	float:left;
	overflow:hidden;
}


.col_0-5, .col_1-5, .col_2-5, .col_3-5, .col_4-5, 
.col_1, .col_2, .col_3, .col_4, .col_5, 	
.colp_0-5, .colp_1-5, .colp_2-5, .colp_3-5, .colp_4-5, 
.colp_1, .colp_2, .colp_3, .colp_4, .colp_5{
	margin-right:20px;
}


.colh_0-5, .colh_1-5, .colh_2-5, .colh_3-5, .colh_4-5, 
.colh_1, .colh_2, .colh_3, .colh_4, .colh_5, 	
.colph_0-5, .colph_1-5, .colph_2-5, .colph_3-5, .colph_4-5, 
.colph_1, .colph_2, .colph_3, .colph_4, .colph_5{
	margin-bottom:20px;
}


.colp_0-5, .colp_1-5, .colp_2-5, .colp_3-5, .colp_4-5, 
.colp_1, .colp_2, .colp_3, .colp_4, .colp_5, 
.colph_0-5, .colph_1-5, .colph_2-5, .colph_3-5, .colph_4-5, 
.colph_1, .colph_2, .colph_3, .colph_4, .colph_5{
	padding:18px 18px 18px 9px;
}


.col_0-5	{ width:100px; }
.col_1		{ width:220px; }
.col_1-5	{ width:340px; }
.col_2		{ width:460px; }
.col_2-5	{ width:580px; }
.col_3		{ width:700px; }
.col_3-5	{ width:820px; }
.col_4		{ width:940px; }
.col_4-5	{ width:1060px; }
.col_5		{ width:1180px; }

.colh_0-5	{ height:100px; }
.colh_1		{ height:220px; }
.colh_1-5	{ height:340px; }
.colh_2		{ height:460px; }
.colh_2-5	{ height:580px; }
.colh_3		{ height:700px; }
.colh_3-5	{ height:820px; }
.colh_4		{ height:940px; }
.colh_4-5	{ height:1060px; }
.colh_5		{ height:1180px; }

.cont_0-5	{ width:120px; }
.cont_1		{ width:240px; }
.cont_1-5	{ width:360px; }
.cont_2		{ width:480px; }
.cont_2-5	{ width:600px; }
.cont_3		{ width:720px; }
.cont_3-5	{ width:840px; }
.cont_4		{ width:960px; }
.cont_4-5	{ width:1080px; }
.cont_5		{ width:1200px; }

.conth_0-5 	{ height:120px; }
.conth_1	{ height:240px; }
.conth_1-5 	{ height:360px; }
.conth_2	{ height:480px; }
.conth_2-5 	{ height:600px; }
.conth_3	{ height:720px; }
.conth_3-5 	{ height:840px; }
.conth_4	{ height:960px; }
.conth_4-5 	{ height:1080px; }
.conth_5	{ height:1200px; }

.colp_0-5	{ width:73px; }
.colp_1		{ width:193px; }
.colp_1-5	{ width:313px; }
.colp_2		{ width:433px; }
.colp_2-5	{ width:553px; }
.colp_3		{ width:673px; }
.colp_3-5	{ width:793px; }
.colp_4		{ width:913px; }
.colp_4-5	{ width:1033px; }
.colp_5		{ width:1153px; }

.colph_0-5	{ height:64px; }
.colph_1	{ height:184px; }
.colph_1-5	{ height:304px; }
.colph_2	{ height:424px; }
.colph_2-5	{ height:544px; }
.colph_3	{ height:664px; }
.colph_3-5	{ height:784px; }
.colph_4	{ height:904px; }
.colph_4-5	{ height:1024px; }
.colph_5	{ height:1144px; }


/*
--------------------
Layout
--------------------
*/
	
/*---Vertical Centering---*/
.valign_outer{
	display:table;
	position:absolute;
	top:0; left:0;
	height:100%; width:100%;
	overflow:visible;
	}	
	.ie6 .valign_outer,
	.ie7 .valign_outer{
		display: inline-block;
		overflow:hidden;
	}
.valign_wrapper{
	display:table-cell;
	vertical-align:middle;
	width:100%;	
	overflow:hidden;
	margin: 0 auto;
	}
	.ie6 .valign_wrapper, 
	.ie7 .valign_wrapper{
		display: inline-block;
		top: 50%;
		position: relative;
		overflow:visible;
	}
.valign_inner{
	margin:0 auto 0px;
	width: auto;
	overflow:visible;
	position:relative;
	}
	.ie6 .valign_inner,
	.ie7 .valign_inner{
		display: inline-block;
		top: -50%;
		position: relative;
	}
	
	
/*---Page wrapper---*/
.wrapper{
	position:relative;
	width:100%;
	height:100%;
	margin:0 auto;
	}

	/*---Header---*/
	.fixed_header{ 
		position:fixed;
		top:0; left:0;
		width:100%;
		z-index:1;
		background:#fff;
		}
		.header_outer{
			max-width:1210px;
			min-width:982px;
			margin:0 auto;
		}
		.header{
			height:55px;	
			margin:0 20px;
			background:#fff;
			padding:48px 0px 0px;
			border-bottom:1px solid #868686;
			}
		
			/*---Logo---*/
			.logo{
				float:left;
				width:296px; height:28px;
				margin-top:4px;
				}
				.logo img{
					display:inline;
					float:left;
					width:100%;	
				}
			
			/*---Menu---*/
			.main_menu{
				float:right;
				padding-top:19px;
				}
				.main_menu ul{
					margin:0px;
					}
					.main_menu li{
						list-style:none;
						display:inline;
						float:left;
						margin:0px 0px 0px 5px;
						font:700 12px/8px 		"Lato", Georgia, "Times New Roman", Times, serif;
						color:#000;
						background:url('/images/menu_spacer.gif') right 0px no-repeat;
						padding-right:12px;
						}
						.main_menu li.last{
							background:none;
							padding-right:0px;
						}
						.main_menu li a, 
						.main_menu li a:active{
							display:inline;
							float:left;
							font:700 12px/8px 		"Lato", Georgia, "Times New Roman", Times, serif;
							color:#000;
							letter-spacing:1px;
							text-transform:uppercase;
							text-decoration:none;
							}
							.main_menu li a:hover, 
							.main_menu li a.selected{
								color:#929292;
								}
	
	/*---Content---*/	
	.clickable{
		cursor:pointer;
	}
	.content{
		position:relative;
		top:130px;
		max-width:1210px;
		min-width:982px;
		margin:0 auto;
		padding-bottom:30px;
		box-sizing:border-box;
		}
		.full-height .content{
		height:calc(100% - 130px);
		}
		
		.padding_top .content{
			top:152px;	
		}
		.outline img{
			outline:1px solid #E6E6E6;	
		}		
		.home .content{
			top:0px;
			height:100%;
			padding-bottom:0px;
		}
		.home .valign_inner{
			padding-top:110px;
			padding-bottom:30px;	
		}		


/*
--------------------
Pages
--------------------
*/


/*---Homepage---*/
.cover{
	margin:0px auto;
	padding:0px 20px;
	width:940px;
	overflow:hidden;
	}
	.cover a{
		display:block;
		}
		.cover img{
			margin:0 auto;
			height:auto;
			width:100%;	
		}
		.js .cover{
			position:relative;
		}
		.js .slide{
			position:absolute;
		}

/*---Section---*/
.items{
	margin: 0 auto;
	padding-left:20px;	
	}
	.section .items{ 	 width:960px; }
	.project .items{ 	 width:960px; } 
	/*.project.all .items{ width:830px; }*/
	
	.section .item{
		display:inline;
		float:left;	
		margin-right:20px;
		background:#fff;
		/* JAMES */
		display:block;
		float:none;	
		margin:0 auto 90px auto;
		}
		.section .item:after{
		content:"";
		display:table;
		}
		.section .item:after{
		clear:both;
		}
		.section .item{
		zoom:1; /* For IE 6/7 (trigger hasLayout) */
		}
		.section .portrait{ width:440px; }
		
		.section .landscape{ width:630px; }
		
		.section .item a{
			display:block;
			float:left;	
			width:100%; height:100%;
			letter-spacing:1px;
			}
			.section .item img{
				display:inline;
				float:left;	
			}
		.section .item h2{
			width:250px;
			display:inline;
			float:left; clear:both;
			margin:18px 0px 0px; padding:0px;
			text-transform:uppercase;
		}


/*---Project---*/
.project .project_title_wrapper{
	position:absolute;
	left:20px;
	}
	.project .project_title{
		position:fixed;
		width:210px; height:200px;
		padding-top:0px;
		top:148px;
		}
		.project .project_title h1{
			margin:0px 0px 5px;
			font:14px/14px 			"Lato", Georgia, "Times New Roman", Times, serif;
			text-transform:uppercase;
			letter-spacing:1px;	
		}
		.project .project_title a{
			font:13px/13px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
			color:#929292;
			text-decoration:none;	
			letter-spacing:1px;
			}
			.project .project_title a:hover{
				color:#000;
			}
		.project .align_left{
			float:right;
			width:770px;
			}
			.project.all .align_left{
				width:830px;
				margin-right:10px;
			}
			
		.project .item{
			/*display:inline;
			float:left;	*/
			margin:0 0 20px 0;
			max-width:570px;
			padding-right:75px;
			/*background:#ccc;*/
			}
			.project.all .item{
			display:inline;
			float:left;
			}
			
			.project .portrait{ width:365px; }
			.project .landscape{ width:750px; }
	
			.project.all .portrait{ width:156px; }
			.project.all .landscape{ width:322px; }
			
			.project.all .item{
				margin-right:10px;	
				margin-bottom:10px;	
			}
			.project .item a{
				display:block;
				float:left;	
				width:100%; height:100%;
				}
				.project .item img{
				/*	display:inline;
					float:left;	*/
					width:100%;
					height:auto;
					cursor:pointer;
				}
				.project.all .item img{
					display:inline;
					float:left;
				}
				.project .item img.down-cursor{
					cursor:url("/images/down_cursor_v.cur?4"), pointer;					
					cursor:url("/images/down_cursor_v.cur?4") 16 16, pointer;
				}
				.project .item img.bottom-row{
					cursor:default;	
				}				
		
		@media only screen 
		and (max-width: 1024px){
			/*.content{
				padding-left:0px;
				padding-right:0px;	
				margin:0px 20px;
			}*/
			/*.section .items,
			.project .items{
				width:100%;
				padding-left:0px;	
			}
			/*.section .portrait{
				width:306px;	
			}
			.project .portrait{
				width:370px;	
			}
			.project.all .portrait{
				width:136px;	
			}
			.project .project_title{
				padding-top:0px;	
			}
			.project .project_title_wrapper{
				left:0px;	
			}
		
			/*.last{
				margin-right:0px!important;	
			}*/
			
		}
		
		@media only screen
		and (max-device-width: 1024px)
		and (orientation: portrait) {
			.home .valign_wrapper{
				  display: block;
				  vertical-align:top;
				  width: 100%;
				  overflow: hidden;
				  margin: 0 auto;
				  padding-top:25px;
			}
		}

	@media only screen and (max-width: 1200px){
		.all .project_title{ width:170px; }
	}
	@media only screen and (max-width: 1100px){
		.all .project_title{ width:125px; }
	}
	@media only screen and (max-width: 1000px){
		.all .project_title{ width:118px; }
	}
		

/*---Contact---*/
.contact .contact_details{
	display: block;
    text-align: center;
	max-width:400px;
	margin:0 auto 0 auto;
	padding:50px;
	/*margin-left:40px;*/
	/*padding-right:20px;*/
	}
	.contact .contact_details div{
		display:inline;
		float:left;
		margin-right:20px;
		width:150px;
		font:13px/14px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
		}
		.contact .contact_details h2{
			margin:0px 0px 15px; padding:0px;
			font:12px/14px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
			text-transform:uppercase;
		}


/*---About---*/
.contact .about{
	padding-left:20px;
	width:42%;
	}
	.contact .about h2{
		margin:0px 0px 15px; padding:0px;
		font:12px/14px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
		text-transform:uppercase;
	}


/*
--------------------
Footer
--------------------
*/

.footer{
	font:13px/13px 			"Source Sans Pro", Georgia, "Times New Roman", Times, serif;
	}


@media only screen 
and (max-width: 1016px){
	
	.fixed_header{
		position:absolute;
		}
	.project .project_title{
		position:absolute;
		top:0px;
	}

	
}
@media only screen and (max-width: 480px), only screen and (max-device-width: 480px) {
	.outline img{
		outline:1px solid #ECECEC;	
	}

}



/*
--------------------
SHOWREEL
--------------------
*/
.showreel .content-align{
	display: flex;
	flex-direction: column;
	justify-content: center;
	height:100%;
}
.showreel .video-wrapper{
	margin:0 auto;
	max-width:100%;
	position:relative;
}
.showreel .video{
	position:relative;
	margin:0 auto 20px;
}
.showreel .video:before{
	content: "";
	display:block;
}
.showreel .video[data-ratio="16/9"]:before{ padding-top:56.25%; }
.showreel .video[data-ratio="17/9"]:before{ padding-top:52.94%; }
.showreel .video[data-ratio="4/3"]:before{ padding-top:75%; }
.showreel .video[data-ratio="2/1"]:before{ padding-top:100%; }

.showreel iframe{
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.showreel .credit{
	margin:0;
}
