/* ************** GENERAL STYLES + RESETS ******************* */

* {
	margin: 0px;
	padding: 0px;
	border: 0px;
	outline: 0px;
}

.mobileOnly {
	display: none !important;
}

.desktopOnly {
	display: block !important;
}

@font-face {
    font-family: 'barrio_santoregular';
    src: url('fonts/barrio_santo-webfont.woff2') format('woff2'),
         url('fonts/barrio_santo-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'black_castle_mf_regular';
    src: url('fonts/blackcastlemf-webfont.woff2') format('woff2'),
         url('fonts/blackcastlemf-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'alright_sanslight_italic';
    src: url('fonts/alrightsans-lightitalic-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-lightitalic-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'alright_sanslight';
    src: url('fonts/alrightsans-light-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-light-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'alright_sansmedium_italic';
    src: url('fonts/alrightsans-mediumitalic-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-mediumitalic-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'alright_sansmedium';
    src: url('fonts/alrightsans-medium-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-medium-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'alright_sansregular_italic';
    src: url('fonts/alrightsans-regularitalic-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-regularitalic-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'alright_sansregular';
    src: url('fonts/alrightsans-regular-v3-webfont.woff2') format('woff2'),
         url('fonts/alrightsans-regular-v3-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
  font-family: 'Sentinel-Book';
  src: url('fonts/Sentinel-Book.eot?#iefix') format('embedded-opentype'), url('fonts/Sentinel-Book.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Sentinel-Medium';
  src: url('fonts/Sentinel-Medium.eot?#iefix') format('opentype'),
	     url('fonts/Sentinel-Medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'MaisonNeue-Medium';
  src: url('fonts/MaisonNeue-Medium.eot?#iefix') format('embedded-opentype'),  url('fonts/MaisonNeue-Medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'KaushanScript-Regular';
  src: url('fonts/KaushanScript-Regular.eot?#iefix') format('embedded-opentype'),
	     url('fonts/KaushanScript-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
    font-family: 'maison_neuebold';
    src: url('fonts/maisonneue-bold-webfont.woff2') format('woff2'),
         url('fonts/maisonneue-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'maison_neuebook';
    src: url('fonts/maisonneue-book-webfont.woff2') format('woff2'),
         url('fonts/maisonneue-book-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'maison_neuelight';
    src: url('fonts/maisonneue-light-webfont.woff2') format('woff2'),
         url('fonts/maisonneue-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

.KaushanScript-Regular {
	font-family: 'KaushanScript-Regular';
}

body, html {
	width: 100%;
	min-height: 100%;
}

.wf-loading .tk-fade, .wf-loading h1, .wf-loading h2, .wf-loading h3, .wf-loading p, .wf-loading a {
	opacity: 0;
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
}

.wf-active .tk-fade, .wf-active h1, .wf-active h2, .wf-active h3, .wf-active p, .wf-active a {
	opacity: 1;
}	

body {
	width: 100%;
	/* height: 100% !important; */ /* for skrollr */
	font-family: 'alright_sanslight', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 100%;
	background-color: #f5f5f5;
	color: #000;
	overflow-x: hidden;
	overflow-y: scroll;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;

	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

body.masonry {
	overflow-y: scroll;
}

body.home {
	overflow-y: hidden;
}

.upcase {
	text-transform: uppercase;
}

a {
	color: inherit;
	text-decoration: none;
}

a.nolink {
	pointer-events: none;
	cursor: default;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	letter-spacing: .03em;
}

h1 {
	font-family: 'alright_sansmedium', sans-serif;
	font-size: 40px;
	margin-bottom: .6em;
}

h2 {
	font-family: 'alright_sanslight', sans-serif;
	font-size: 27px;
	margin-bottom: .7em;
}


h3 {
	font-family: 'alright_sanslight', sans-serif;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 1em;
}

strong {
	font-family: 'alright_sansmedium', sans-serif;
	font-weight: 400;
}

p {
	line-height: 1.4;
	padding-bottom: 1em;
}

em, i {
	font-style: italic;
}

label, input, textarea, select {
	font-size: 16px;
	display: block;
}

input[type="checkbox"],
input[type="radio"] {
	display: inline-block;
}

input, textarea {
	background-color: transparent;
	padding: 0px 10px;
	height: 34px;
	color: #000;
	border: 1px solid #000;

	border-radius: 0px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;

	-moz-appearance: none;

	     appearance: none;
	-webkit-appearance: none;
}

input[type="submit"] {
	padding: 0px 10px;
	border: 0px;
	cursor: pointer;

	border-radius: 0px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;

	-moz-appearance: none;

	     appearance: none;
	-webkit-appearance: none;
}

label {
	padding-bottom: 5px;
}

.clear {
	clear: both;
}

.req {
	color: #c1cd23;
}

.left { float: left; }
.right { float: right; }
.clear { clear: both; }

.addb4:before {
	content: '';
	display: inline-block;
	height: 100%;
	width: 0px;
	margin-right: -4px;
	vertical-align: middle;
}

.ib {
	display: inline-block;
	margin-right: -4px;
}

.v-top { vertical-align: top; }
.v-middle { vertical-align: middle; }
.v-bottom { vertical-align: bottom; }
.v-baseline { vertical-align: baseline; }

.centerXY {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.centerY {
	/*position: absolute;*/
	top: 50%;
	left: 0%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.centerX {
	/*position: absolute;*/
	top: 0%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}

.cover {
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	opacity: 0;
}

ul.threecol, ul.twocol, ul.fourcol {
	list-style-type: none;
	margin-bottom: 50px;
	margin-left: 0px;
}

ul.fourcol {
	font-size: 0px;
}

ul.fourcol li {
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: top;
	width: 22%;
	margin-right: 3%;
	text-align: left;
}

ul.threecol li {
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: top;
	width: 30%;
	margin-right: -4px;
	margin-left: 5%;
}

ul.threecol li:first-child {
	margin-left: 0px;
}

ul.twocol li {
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: top;
	width: 48%;
	margin-right: -4px;
	margin-left: 4%;
}

ul.twocol li:first-child {
	margin-left: 0px;
}

.typed-cursor{
	opacity: 1;
	-webkit-animation: blink 0.7s infinite;
	-moz-animation: blink 0.7s infinite;
	animation: blink 0.7s infinite;
}
@keyframes blink{
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}
@-webkit-keyframes blink{
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}
@-moz-keyframes blink{
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}

.typed-fade-out{
    opacity: 0;
    animation: 0;
    transition: opacity .25s;
}

/* ************** LOADING ******************* */

.loading header {
	height: 100vh;
	position: fixed;
	z-index: 10;
	top: 0px;
	left: 0px;
	background-color: #f5f5f5;
}

.loading header .inner .thetext {
	opacity: 0;
}

.loading header .inner .menuBtn {
	opacity: 0;
}

.loading header .inner .topMenu {
	opacity: 0;
}

/* ************** SITE STRUCTURE ******************* */

main {
	margin: 0px auto;
	position: relative;
	z-index: 9;
}

/* add "stickyFooter" class to body if sticky footer is needed: */

body.stickyFooter main {
	margin: 0 auto -200px; /* 200px = height of footer */
}

	body.stickyFooter main:after {
		content: '';
		display: block;
		height: 200px; /* 200px = height of footer */
	}

body.stickyFooter footer {
	height: 200px;
}


main #content {
	width: 100%;
	min-height: 100%;
	height: auto;
	opacity: 0;
	
	background: #eaeaea;
	background: -webkit-gradient(linear, left top, left bottom, from(#eaeaea),to(#f5f5f5));
	background: linear-gradient(to bottom, #eaeaea 0%,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eaeaea', endColorstr='#f5f5f5',GradientType=0 );
}

/* ************** HEADER ******************* */
header {
	z-index: 500;
	opacity: 1;
	width: 100%;
	height: 70px;
	position: relative;
	background-color: #f5f5f5;
	
	-webkit-transition: height .6s, background-color 0s .7s;
	
	transition: height .6s, background-color 0s .7s;
}

.home header {
	position: fixed;
}

header .menuBtn {
	display: none;
}

	header .inner {
		position: relative;
		width: 100%;
		height: 100%;
	}
	
		header .inner .logo {
			position: absolute;
			top: 0%;
			left: 50%;
			height: 100%;
			width: auto;
			display: block;
			z-index: 15;
			
			-webkit-transform: translateX(-50%);
			
			        transform: translateX(-50%);
		}
		
		header .inner .logo img {
			height: auto;
			width: 50px;
			position: absolute;
			top: 50%;
			left: 50%;
			
			transition: width .6s .2s;
			
			-webkit-transform: translate(-50%, -50%);
			        transform: translate(-50%, -50%);
		}
		
		.loading header .inner .logo img {
			width: 70px;
		}
		
		header .inner .logo svg {
			height: auto;
			width: 95px;
			position: absolute;
			top: 50%;
			left: 50%;
			
			-webkit-transform: translate(-50%, -50%);
			
			        transform: translate(-50%, -50%);
		}
		
		header .inner .logo svg * {
			fill: #000;
			stroke: none;
		}
		
		header .inner .topMenu {	
			position: absolute;
			top: 50%;
			right: 3%;
			z-index: 10;
			opacity: 1;
			
			-webkit-transform: translateY(-50%);
			
			        transform: translateY(-50%);
			-webkit-transition: opacity .3s .3s;
			transition: opacity .3s .3s;
		}
		
			header .inner .topMenu ul {
				
			}
			
			header .inner .topMenu ul li {
				font-family: 'alright_sansregular', sans-serif;
				font-size: 14px;
				letter-spacing: .02em;
				margin-right: 14px;
			}
			
			header .inner .topMenu ul li:last-child {
				margin-right: 0px;
			}
			
			header .inner .topMenu ul li a {
				-webkit-transition: color .2s;
				transition: color .2s;
			}
			
			header .inner .topMenu ul li a.pageOn, header .inner .topMenu ul li a:hover {
				color: #ff4910;
			}
	
		header .inner .menuBtn {	
			position: absolute;
			top: 50%;
			right: 4%;
			cursor: pointer;
			z-index: 10;
			opacity: 1;
			
			-webkit-transform: translateY(-50%);
			
			        transform: translateY(-50%);
			-webkit-transition: opacity .3s .3s;
			transition: opacity .3s .3s;
		}
		
			header .inner .menuBtn svg {
				height: auto;
				width: 25px;
			}
			
			header .inner .menuBtn svg * {
				fill: none;
				stroke: #000;
				stroke-width: 3.5;
			}
			
		header .inner .thetext {
			position: absolute;
			top: 50%;
			left: 3%;
			opacity: 1;
			z-index: 20;
			
			-webkit-transform: translateY(-50%);
			
			        transform: translateY(-50%);
			-webkit-transition: opacity .3s .3s;
			transition: opacity .3s .3s;
		}
		
			header .inner .thetext span {
				font-family: 'alright_sansregular', sans-serif;
				font-size: 14px;
				letter-spacing: .02em;
				display: inline-block;
				*display: inline;
				zoom: 1;
			}
			
			header .inner .thetext span p {
				line-height: 1;
				padding-bottom: 0em;
			}
			
			.typed-fade-out {
			  opacity: 0;
			  animation: 0;
			  transition: opacity .25s;
			}

	header nav {
		position: fixed;
		z-index: 1;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		-webkit-transform: translate(-100%,0%);
		        transform: translate(-100%,0%);
		opacity: 0;
		text-align: center;
		-webkit-transition: opacity .5s 1s, -webkit-transform 0s 1.5s;
		transition: opacity .5s 1s, -webkit-transform 0s 1.5s;
		transition: opacity .5s 1s, transform 0s 1.5s;
		transition: opacity .5s 1s, transform 0s 1.5s, -webkit-transform 0s 1.5s;
	}

	.menuOn header nav {
		-webkit-transform: translate(0%,0%);
		        transform: translate(0%,0%);
		opacity: 1;	
		-webkit-transition: opacity .5s 0s, -webkit-transform 0s 0s;	
		transition: opacity .5s 0s, -webkit-transform 0s 0s;	
		transition: opacity .5s 0s, transform 0s 0s;	
		transition: opacity .5s 0s, transform 0s 0s, -webkit-transform 0s 0s;
	}
	
		header nav > ul {
			list-style-type: none;
			position: absolute;
			z-index: 5;
			top: 15%;
			left: 50%;
			-webkit-transform: translateX(-50%);
			        transform: translateX(-50%);
		}

			header nav > ul > li {
				text-transform: uppercase;
				font-weight: 300;
				font-size: 40px;
				/*letter-spacing: .08em;*/
				line-height: 1;
				padding-bottom: 0.28em;
				opacity: 0;
			}
			
			header nav ul li {
				font-family: 'Sentinel-Book';
				font-size: 4vw;
			}

			header nav li.social {
				font-size: 0px;
				padding-top: 24px;
				opacity: 1;
			}

				header nav .social ul {
					list-style-type: none;
				}

					header nav .social li {
						display: inline-block;
						vertical-align: middle;
						margin: 0 7px;
					}

						header nav .social a {
							display: block;
						}

							header nav .social svg {
								width: 24px;
								height: auto;
							}

								header nav .social svg * {
									fill: #ffffff;
								}
								
	header #filter {
		position: relative;
		width: 100%;
		text-align: center;
		height: 60px;
		opacity: 1;
		-webkit-transition: opacity .3s 1s, height .3s 0s;
		transition: opacity .3s 1s, height .3s 0s;
	}
	
	.search header #filter {
		height: 90px;
	}
	
	header #filter.hide {
		opacity: 0;
		
		-webkit-transition: opacity .3s 0s;
		
		transition: opacity .3s 0s;
	}
	
		header #filter ul {
			margin: auto;
		}
		
		header #filter ul.themenu {
			opacity: 1;
			
			transition: opacity .3s;
		}
		
		.search header #filter ul.themenu {
			opacity: 0;
		}
		
		header #filter form[name="searchform"] {
			display: none;
			position: absolute;
			top: 50%;
			left: 5%;
			
			transform: translateY(-50%);
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
		}
		
			header #filter form[name="searchform"] input {
				border: 0px;
				font-family: 'Sentinel-Medium';
				font-weight: 400;
				font-size: 24px;
			}
		
		.search header #filter form[name="searchform"] {
			display: block;
		}
		
		header #filter .searchTrigger {
			position: absolute;
			top: 50%;
			left: 2%;
			
			transform: translateY(-50%);
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
		}
		
			header #filter .searchTrigger svg {
				width: 15px;
				height: auto;
			}
			
		header #filter .closeSearch {
			opacity: 0;
			pointer-events: none;
			position: absolute;
			top: 50%;
			right: 2%;
			cursor: pointer;
			
			transform: translateY(-50%);
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			
			transition: opacity;
		}
		
			.search header #filter .closeSearch {
				opacity: 1;
				pointer-events: auto;
			}
		
			header #filter .closeSearch svg {
				width: 15px;
				height: auto;
			}
			
			header #filter .closeSearch svg * {
				fill:none;stroke:#000;stroke-linecap:round;stroke-miterlimit:10;stroke-width:10px;
			}
		
		header #filter ul li {
			margin-right: 10vw;
		}
		
		header #filter ul li:last-child {
			margin-right: 0px;
		}
		
		header #filter ul li a {
			/* font-family: 'Sentinel-Medium'; */
			font-family: 'alright_sansregular', sans-serif;
			-webkit-transition: color .2s;
			transition: color .2s;
		}
		
		header #filter ul li a.pageOn, header #filter ul li a:hover {
			color: #ff4910;
		}
		
/* START FONT SPECIFIC STYLES FOR HEADER */

/*
		
header nav ul li {
	font-family: 'Sentinel-Book';
	font-size: 4vw;
}

header nav ul li:hover {
	color: #65a810;
	font-family: 'KaushanScript-Regular';
	text-transform: Capitalize;
}
*/
	

/* ************** FOOTER ******************* */

footer {
	position: relative;
	z-index: 5;
	text-align: center;
	color: #000;
	font-family: 'MaisonNeue-Medium';
	opacity: 0;
	
	-webkit-transition: opacity .3s .3s;
	
	transition: opacity .3s .3s;
}

.loading footer {
	opacity: 0;
}

.home footer {
	color: #fff;
}

footer .fontloader {
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
	height: 0px;
}

.home footer {
	position: fixed;
	width: 100%;
	left: 0px;
	bottom: 20px;
	text-align: center;
	z-index: 501;
}

	footer .inner {
		margin: auto;
		text-align: center;
	}
	
	footer p {
		padding-bottom: 0em;
		font-size: 10px;
		letter-spacing: .17em;
	}
	
	footer .inner ul {
		list-style-type: none;
	}
	
	footer .inner .social {
		margin-top: 5px;
	}
	
		footer .inner .social li {
			margin-right: 0px;
			display: inline-block;
			*display: inline;
			zoom: 1;
		}
		
			footer .inner .social li svg {
				height: auto;
				width: 17px;
			}
			
				footer .inner .social li svg circle {
					stroke: #000;
					fill: none;
				}
		
				footer .inner .social li svg path {
					stroke: none;
					fill: #000;
				}
				
				.home footer .inner .social li svg circle {
					stroke: #fff;
					fill: none;
				}
		
				.home footer .inner .social li svg path {
					stroke: none;
					fill: #fff;
				}
		
	footer .inner .credit p {

	}
	
/* ************** SITE SPECIFIC ******************* */


/* *************** HOMEPAGE *********************** */

.inner.home {
	width: 100%;
	overflow: hidden;
	position: fixed;
	top: 70px;
	z-index: 5;
}

	.inner.home .wrap {
		width: 100%;
		height: 100%;
	}
	
	.inner.home .wrap video {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
	}
	
/* *************** WORK GRID *********************** */

.inner.gridpage {
	padding-top: 60px;
	transition: padding-top .3s;
}

.search .inner.gridpage {
	padding-top: 90px;
}
	

.inner.gridpage .masongrid {
	margin-bottom: 75px;
	width: 96%;
	margin: auto;
}

.workgrid .cell {
	position: relative;
}

	.workgrid .cell .info {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0)),to(rgba(0,0,0,0.65)));
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
	}
	
	.workgrid .cell .info .thetext {
		position: absolute;
		left: 0px;
		bottom: 3%;
		text-align: center;
		width: 100%;
		line-height: 1;
		
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
	
	.workgrid .cell .info .thetext h1 {
		/* font-size: 1.7vw; */
		font-size: 16px;
		margin-bottom: 0em;
		color: inherit;
		font-family: 'maison_neuebold', sans-serif;
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}
	
	.workgrid .cell .info .thetext h2 {
		/* font-size: 1.7vw; */
		font-size: 16px;
		font-family: 'maison_neuebook', sans-serif;
		color: inherit;
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		margin-bottom: 0em;
	}
	
	@media all AND (max-width: 768px) {
		
		.workgrid .cell .info .thetext h1, .workgrid .cell .info .thetext h2 {
			font-size: 14px;
		}
		
	}
	
	.workgrid .cell .info .thetext .linewrap, .masongrid .linewrap {
		width: 150px;
		overflow: hidden;
		margin: auto;
	}
	
		.workgrid .cell .info .thetext .linewrap svg, .masongrid .linewrap svg {
			width: 800px;
			-webkit-transform: translateX(0px);
			        transform: translateX(0px);
		}
	
		.workgrid .cell .info .thetext svg *, .masongrid .linewrap svg {
			fill: none;
			stroke-width: 3px;
		}
		
		.no-touchevents figure.cell:hover .linewrap svg {
		  -webkit-animation: waves 1s linear infinite;
		  animation:         waves 1s linear infinite;
		}
				
		@-webkit-keyframes waves {
		  0%	{ -webkit-transform: translateX(0px); }
		  100%	{ -webkit-transform: translateX(-50px); }
		}
		@keyframes waves {
		  0%   { -webkit-transform: translateX(0px); transform: translateX(0px); }
		  100% { -webkit-transform: translateX(-50px); transform: translateX(-50px); }
		}

/* *************** PROJECT DETAIL *********************** */

.inner.detailpage {
	width: 94%;
	margin: auto;
	padding-top: 65px;
	
	transition: padding-top .3s;
}

.search .inner.detailpage {
	padding-top: 95px;
}

	.inner.detailpage .hero {
		position: relative;
		width: 100%;
	}
	
	.arrows .nextArrow {
		position: absolute;
		top: 50%;
		right: 50px;
		z-index: 600;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		cursor: pointer;
	}
	
	.arrows .prevArrow {
		position: absolute;
		top: 50%;
		left: 50px;
		z-index: 601;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		cursor: pointer;
	}
	
	.arrows .prevArrow svg {
		transform: rotate(-180deg);
	}
	
	.inner.detailpage .hero .arrows svg, .arrows svg {
		width: 40px;
		height: 40px;
		opacity: 0;
		
		transition: opacity .3s;
	}
	
	.slickslideshow:hover .arrows svg {
		opacity: 1 !important;
	}
	
	.arrows svg * {
		fill: none;
		stroke: #fff;
	}
	
	.inner.detailpage .hero .centerme {
		position: absolute;
		top: 55%;
		left: 0%;
		text-align: center;
		width: 100%;
		z-index: 20;
		
		-webkit-transform: translateY(-50%);
		
		        transform: translateY(-50%);
	}
	
		.inner.detailpage .hero .centerme h1 {
			color: #fff;
			font-family: 'alright_sansregular', sans-serif;
			margin-bottom: 0em;
			font-size: 18px;
			font-weight: 400;
		}
		
		.inner.detailpage .hero .centerme h2 {
			color: #fff;
			font-family: 'maison_neuelight';
			margin-bottom: 0em;
			font-size: 25px;
		}
	
	.inner.detailpage .hero svg, .detailpage .masongrid .cell .centerme svg {
		cursor: pointer;
		z-index: 10;
		
		width: 130px;
		height: 130px;
	}
	
		.detailpage .masongrid .cell .centerme svg {
			 width: 80px;
			 height: 80px;
			 
			 position: absolute;
			 top: 50%;
			 left: 50%;
			 transform: translate(-50%,-50%);
			 -moz-transform: translate(-50%,-50%);
			 
		}
		 
		.detailpage .masongrid .cell.video {
			 cursor: pointer;
		}
	
		.inner.detailpage .hero .titles {
			margin-top: 40px;
		}
	
		.inner.detailpage .hero .titles .svgmask {
			width: 50%;
			max-width: 440px;
			height: 15px;
			margin: auto;
			overflow: hidden;
			text-align: center;
			position: relative;
			padding: 8px 0px 6px 0px;
		}
		
		.inner.detailpage .hero .titles .svgmask svg {
			width: 250%;
			height: auto;
			position: absolute;
			left: -50%;
		}
		
			.inner.detailpage .hero .titles .svgmask svg * {
				stroke-width: 3px;
			}
	
		.inner.detailpage .hero svg *, .detailpage .masongrid .cell svg * {
			fill: none;
			stroke: #fff;
		}
		
	.inner.detailpage .hero .imgwrap {
		width: 100%;
		overflow: hidden;
	}
	
	.inner.detailpage .hero img {
		width: 100%;
	}
	
	.inner.detailpage .hero iframe {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0px;
		z-index: 10;
		opacity: 0;
	}
	
	.inner.detailpage .intro {
		position: relative;
		width: 70%;
		max-width: 1200px;
		margin: 50px auto;
		text-align: justify;
	}
	
		.inner.detailpage .intro h1.introTitle {
			color: #000 !important;
			margin-bottom: 0em;
			text-align: center;
			font-size: 30px;
		}
		
		.inner.detailpage .intro h2.introCaption {
			text-align: center;
			font-size: 20px;
			margin-top: 9px;
		}
		
		.inner.detailpage p, .inner.detailpage li {
			font-size: 14px;
			line-height: 1.7;
			margin-bottom: 1em;
		}
		
	.inner.detailpage .credits {
		position: relative;
		width: 75%;
		max-width: 1200px;
		margin: 50px auto;
		background-color: #e4e4e4;
		text-align: center;
		cursor: pointer;
	}
	
		.inner.detailpage .credits .reveal {
			display: none;
		}
		
		.inner.detailpage .credits ul {
			padding-bottom: 25px;
		}
		
		.inner.detailpage .credits li {
			width: 46%;
		}
	
		.inner.detailpage .credits h2 {
			font-family: 'alright_sansmedium', sans-serif;
			font-size: 17px;
			margin: 0px auto;
			padding: 20px 0px;
		}
		
		.inner.detailpage .credits p, .inner.detailpage .credits li {
			font-size: 14px;
		}
		
	.inner.detailpage .related {
		text-align: center;
	}
	
		.inner.detailpage .related svg {
			width: 100px;
			height: auto;
		}
		
		.inner.detailpage .related svg * {
			fill: none;
			stroke: #000;
			stroke-width: 4px;
		}
		
		.inner.detailpage .related h2.title {
			font-size: 20px;
			margin: 25px auto;
			font-family: 'MaisonNeue-Medium';
		}
		
		.inner.detailpage .masongrid {
			margin: 25px auto;
			min-height: auto !important;
		}
		
		.inner.detailpage .grid-sizer, .inner.detailpage .masongrid .cell {
			width: 33.33%;
			height: auto;
		}
	
		.inner.detailpage .gutter-sizer {
			width: 0%;
		}
		
	.inner.detailpage .pager {
		width: 95%;
		margin: auto;
	}
	
		.inner.detailpage .pager ul {
			padding: 30px 0px;
			font-size: 0px;
		}
		
		.inner.detailpage .pager ul li {
			text-align: center;
			font-family: 'MaisonNeue-Medium';
			width: 33.33%;
			position: relative;
		}
		
		.inner.detailpage .pager ul li a {
			font-size: 18px;
		}
		
		.inner.detailpage .pager ul li.backtop svg {
			width: 22px;
			position: absolute;
			top: -15px;
			left: 50%;
			
			-webkit-transform: translateX(-50%);
			
			        transform: translateX(-50%);
		}
		
	/* BEGIN MODS */
	
	.inner.detailpage .mods {
		width: 100%;
	}
	
		.inner.detailpage .mods .mod {
			position: relative;
			width: 100%;
			margin: 40px auto 30px auto;
		}
		
		.inner.detailpage .mods .mod .titlewrap {
			width: 100%;
			text-align: center;
		}
		
		.inner.detailpage .mods .mod .titlewrap svg {
			width: 100px;
			height: auto;
		}
		
		.inner.detailpage .mods .mod .titlewrap svg * {
			fill: none;
			stroke: #000;
			stroke-width: 4px;
		}
		
		.inner.detailpage .mods .mod h2.title {
			font-family: 'alright_sansmedium', sans-serif;
			font-size: 30px;
			padding-top: 16px;
		}
		
		.inner.detailpage .mods .mod.textblock {
			width: 67%;
			max-width: 700px;
			text-align: justify;
		}
		
		.inner.detailpage .mods .mod.textblock h1 {
			
		}
		
		.inner.detailpage .mods .mod.textblock h2 {
			
		}
		
		.inner.detailpage .mods .mod.textblock h3 {
			
		}
		
		.inner.detailpage .mods .mod.textblock p {
			
		}
		
		.inner.detailpage .mods .mod.threecol .cell.large {
			width: 100%;
		}
		
		.inner.detailpage .mods .mod.twocol .cell, .inner.detailpage .mods .mod.twocol .grid-sizer {
			width: 49.9%;
		}
		
		.inner.detailpage .mods .mod.onecol .cell, .inner.detailpage .mods .mod.onecol .grid-sizer {
			width: 100%;
		}
		
		.inner.detailpage .mods .mod.twocol .gutter-sizer, .inner.detailpage .mods .mod.onecol .gutter-sizer {
			width: 0%;
		}
		
		/*
		.inner.detailpage .mods .mod.twocol {
			margin: 40px auto -30px auto;
		}
		*/
	
/* *************** ABOUT PAGE *********************** */

.inner.aboutpage {
	text-align: center;
	color: #000;
}

	.inner.aboutpage .textwrap {
		width: 64%;
		margin: 0px auto 60px auto;
		text-align: left;
		max-width: 1230px;
		padding-top: 90px;
	}
	
	@media ALL and (max-width: 768px) {
		.inner.aboutpage .textwrap {
			width: 90%;
		}
	}
	
	.inner.aboutpage .textwrap h3 {
		font-size: 18px;
	}
	
	.inner.aboutpage .textwrap p, .inner.aboutpage li {
		font-size: 14px;
		line-height: 1.7;
		margin-bottom: 1em;
	}
	
	.inner.aboutpage ul.twocol {
		width: 68%;
		margin: 0px auto 37px auto;
	}
	
	.inner.aboutpage li {
		line-height: 1.5;
	}
	
	.inner.aboutpage .sub {
		margin-bottom: 100px;
	}
	
	.inner.aboutpage .sub:last-child {
		margin-bottom: 0px;
	}
	
	.inner.aboutpage .sub.textblock h3 {
		font-size: 18px;
	}
	
	.inner.aboutpage .sub.textblock.centered {
		width: 90%;
		margin: 0px auto 75px auto;
		max-width: 900px;
	}
	
	.inner.aboutpage .sub.textblock.full {
		width: 90%;
		margin: 0px auto 75px auto;
	}
	
	.inner.aboutpage .sub.textblock.full p {
		max-width: 50%;
		margin: auto;
	}


/* ************** FULLPAGE JS ******************* */

#fp-nav {
	position: fixed;
	left: 4.4%;
	bottom: 5%;
	z-index: 200;
	margin: auto !important;
}

	#fp-nav ul {
		list-style-type: none;
	}
	
	#fp-nav ul li {
		display: inline-block;
		*display: inline;
		zoom: 1;
		margin-right: 22px;
	}
	
	#fp-nav ul li a {
		display: block;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		border: 1px solid transparent;
	}
	
	#fp-nav ul li a.active {
		border: 1px solid #fff;
	}
	
	#fp-nav ul li a span {
		display: block;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background-color: #fff;
	}
	
	#fp-nav ul li a.active span {
		background-color: transparent;
	}

/* ************** SLIDESHOW - SLICK CAROUSEL ***************** */

.slidewrap {
	width: 100%;
	height: 85vh;
	overflow: hidden;
}

.slickslideshow {
	width: 100%;
	height: 75vh;
}

.hero .slickslideshow {
	height: auto;
	overflow: hidden;
}

.ui {
    width: 18px;
    position: absolute;
    z-index: 20;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    cursor: pointer;
}

	.ui line {
	    stroke: #000000;
	    stroke-width: 4;
	}

.ui.prev {
	left: 0px;
	padding: 23px;
}
.ui.next {
	right: 0;
	padding: 23px;
}

.ui.close {
	width: 20px;
	height: 20px;
	padding: 20px 22px;
	top: 0;
	left: 0;
	-webkit-transform: none;
	        transform: none;
}

.slickslideshow .cell {
	text-align: center;
	position: relative;
	opacity: 1;
	-webkit-transition: opacity .6s .2s;
	transition: opacity .6s .2s;
}

	.slickslideshow .cell .imgwrap {
		width: 100%;
		height: 100%;
	}

	.slickslideshow .cell iframe {
		position: absolute;
		top: 0;left: 0;
		width: 100%;
		height: 100%;
	}


/* ************** GRIDS, GRIDS AND MORE GRIDS ******************* */

/* PARENT GRID CLASSES

.justified - row based, AR ROWS
.masongrid - masonry style
.animategrid - triggers animate on scroll

*/

.masongrid .cell .info {
	position: absolute;
	top: 0px;
	left: 0px;
    z-index: 10;
    color: #fff;
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
    -webkit-transition: opacity .2s 0s, -webkit-transform 0s .2s;
    transition: opacity .2s 0s, -webkit-transform 0s .2s;
    transition: opacity .2s 0s, transform 0s .2s;
    transition: opacity .2s 0s, transform 0s .2s, -webkit-transform 0s .2s;
}

	.no-touchevents .masongrid .cell:hover .info, .touchevents .masongrid .cell .info {
		opacity: 1;
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
		-webkit-transition: opacity .3s 0s, -webkit-transform .3s 0s;
		transition: opacity .3s 0s, -webkit-transform .3s 0s;
		transition: opacity .3s 0s, transform .3s 0s;
		transition: opacity .3s 0s, transform .3s 0s, -webkit-transform .3s 0s;
	}
	
.masongrid .cell .imgwrap video {
	width: 100%;
	height: 100%;
	opacity: 0;
	-o-object-fit: cover;
	   object-fit: cover;
}

.gridpage .cell .photo {
	position: relative;
	z-index: 1;
}

.gridpage .cell .color {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5;
    opacity: 0;
    -webkit-transition: opacity .3s 0s;
    transition: opacity .3s 0s;
}

.no-touchevents .masongrid .cell:hover .color {
	opacity: .83;
}



/* row-based, justified */
.justified .row {
	position: relative;
	text-align: center;
}

.justified .row:after {
    content: '';
    display: block;
    clear: both;
}

.justified .full-width-hovers figure {
	position: relative;
	cursor: pointer;
}

	.justified .full-width-hovers a.row {
		display: block;
	}

		.justified .row .cell {
			float: left;
			opacity: 1;
			position: relative;
			overflow: hidden;
		}
		
		.justified .row .cell .caption {
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0px;
			left: 0px;
			opacity: 0;
			color: #fff;
			z-index: 10;
			text-align: center;
			background-color: rgba(0,0,0,.3);
			
			-webkit-transition: opacity .3s;
			
			transition: opacity .3s;
		}
		
		.justified .row .cell .caption .infowrap {
			opacity: 0;
			transform: translateY(25px);
			-webkit-transform: translateY(25px);
			-ms-transform: translateY(-5px);
			
			transition: all .3s .3s;
			-webkit-transition: all .3s .3s;
			-ms-transition: all .3s .3s;
		}
		
		.justified .row .cell:hover .caption .infowrap {
			opacity: 1;
			transform: translateY(0px);
			-webkit-transform: translateY(0px);
			-ms-transform: translateY(0px);
		}
		
			.justified .row .cell .caption h1 {
				font-size: 24px;
				letter-spacing: .36em;
				font-weight: 700;
				margin-bottom: 8px;
			}
			
			.justified .row .cell .caption h2 {
				font-size: 18px;
				letter-spacing: .06em;
				font-style: italic;
				font-weight: 400;
			}
		
		.justified .row .cell:hover .caption {
			opacity: 1;
		}
		
		.justified .row .cell .slice {
			position: absolute;
			left: -20%;
			bottom: -50%;
			width: 200%;
			height: 50%;
			background-color: rgba(240,38,16,.5);
			z-index: 10;
			-webkit-transform-origin: bottom left;
			        transform-origin: bottom left;
			transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			
			-webkit-transition: all .6s;
			
			transition: all .6s;
		}
		
		.justified .row .cell:hover .slice {
			bottom: 0%;
			transform: rotate(13deg);
			-webkit-transform: rotate(13deg);
			-ms-transform: rotate(13deg);
		}

			.justified .photo {
				position: relative;
				z-index: 1;
				display: block;
				width: 100%;
				height: auto;
			}

			.justified .cell figcaption {
			    letter-spacing: .05em;
			    line-height: 1;
			    padding-top: 1.5em;
			}

				.justified .thumbs figcaption h2 {
					font-size: 1.9rem;
				    font-size: 2.35vw;
				}

.masongrid {
	width: 100%;
	list-style-type: none;
	min-height: 100%;
}

.masongrid .cell {
	display: block;
	float: left;
	opacity: 0;
	overflow: hidden;
	text-align: left;
}

	.grid-sizer, .masongrid .cell {
		width: 33%;
		height: auto;
	}
	
	.masongrid .cell.large {
		width: 66.5%;
	}

	.gutter-sizer {
		width: .5%;
	}
	
	.masongrid .cell .imgwrap {
		width: 100%;
		height: 100%;
		opacity: 0;
	}

	.masongrid .shown,
	.no-js .masongrid figure,
	.no-cssanimations .masongrid figure {
		opacity: 1;
	}

	.masongrid figure a,
	.masongrid figure img {
		outline: none;
		border: none;
		width: 100%;
		display: block;
		text-decoration: none;
	}
	
	.masongrid figure a {
		height: 100%;
	}
	
/* Effect 1: opacity */

.masongrid.effect-1 figure.animate {
	animation: fadeIn 0.65s ease forwards;
	-webkit-animation: fadeIn 0.65s ease forwards;
	-moz-animation: fadeIn 0.65s ease forwards;
	-o-animation: fadeIn 0.65s ease forwards;
}

/* Effect 2: Move Up */
.masongrid.effect-2 figure.animate {
	opacity: 1;
	-webkit-transform: translateY(200px);
	transform: translateY(200px);
	-webkit-animation: moveUp 0.65s ease forwards;
	animation: moveUp 0.65s ease forwards;
}

@-webkit-keyframes moveUp {
	0% { opacity: 0; }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}

@keyframes moveUp {
	0% { opacity: 0; }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}

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

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




/* ************** OVERLAYS ******************* */

#videoPlayer {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.9);
	text-align: center;
	opacity: 0;
	
	z-index: -1;
	-webkit-transform: translateY(0%);
	        transform: translateY(0%);
	
	-webkit-transition: z-index 0s 1.5s, -webkit-transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, -webkit-transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, transform .7s ease-in .5s, -webkit-transform .7s ease-in .5s;
	
}

.videoOn #videoPlayer {
	z-index: 300;
	opacity: 1;
	-webkit-transform: translateY(0%);
	        transform: translateY(0%);
	
	-webkit-transition: opacity .5s 0s, z-index 0s 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: opacity .5s 0s, z-index 0s 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: opacity .5s 0s, z-index 0s 0s, transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: opacity .5s 0s,  z-index 0s 0s, transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
}

	#videoPlayer .closeX svg {
		position: absolute;
		top: 25px;
		right: 25px;
		width: 30px;
		height: 30px;
		z-index: 20;
		cursor: pointer;
	}
	
	#videoPlayer .closeX svg * {
		fill: #fff;
		stroke: none;
	}
	
	#videoPlayer .closer {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		z-index: 1;
	}

	#videoPlayer .inner {
		width: 80%;
		height: 80%;
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: 10;
		opacity: 0;
		font-size: 0px;
		text-align: center;
		
		transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
	}	
	
	#videoPlayer .inner iframe {
		width: 100%;
		height: auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
	}

#overlay {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: #fe9196;
	text-align: center;
	opacity: 0;
	
	z-index: -1;
	-webkit-transform: translateY(-100%);
	        transform: translateY(-100%);
	
	-webkit-transition: z-index 0s 1.5s, -webkit-transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, -webkit-transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, transform .7s ease-in .5s;
	
	transition: z-index 0s 1.5s, transform .7s ease-in .5s, -webkit-transform .7s ease-in .5s;
	
}

.menuOn #overlay {
	z-index: 300;
	-webkit-transform: translateY(0%);
	        transform: translateY(0%);
	
	-webkit-transition: z-index 0s 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: z-index 0s 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: z-index 0s 0s, transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
	
	transition: z-index 0s 0s, transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s, -webkit-transform 1s cubic-bezier(0.15, 0.43, 0.01, 1.03) 0s;
}

#overlay .inner img {
	position: absolute;
	bottom: 55px;
	left: 50%;
	max-width: 50%;
	max-height: 58%;
	
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	
	-webkit-transform: translate(-50%, -300px);
	
	        transform: translate(-50%, -300px);
	opacity: .5;
	-webkit-transition: opacity 1s 1s, -webkit-transform 1s 1s;
	transition: opacity 1s 1s, -webkit-transform 1s 1s;
	transition: transform 1s 1s, opacity 1s 1s;
	transition: transform 1s 1s, opacity 1s 1s, -webkit-transform 1s 1s;
}

#overlay .inner img.landscape {
	max-height: 47%;
}

.menuOn #overlay .inner img {
	opacity: 1;
	-webkit-transform: translate(-50%, 0px);
	        transform: translate(-50%, 0px);

	-webkit-transition: opacity .5s .3s, -webkit-transform .6s;

	transition: opacity .5s .3s, -webkit-transform .6s;

	transition: transform .6s, opacity .5s .3s;

	transition: transform .6s, opacity .5s .3s, -webkit-transform .6s;
}

#overlay .closer {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 1;
}