	
	#app {
		top: 0;
		left: 0;
		position: fixed;
		width: 100%;
		height: 100vh;
		overflow: hidden;
		pointer-events: none;
		opacity:0;
		-webkit-transition: all 0.1s ease-in-out 0.3s;
		transition: all 0.1s ease-in-out 0.3s;
	}
	
	.load-project-thumb #app, .load-project-thumb-with-title #app, .load-project-thumb-with-title-and-scale #app {
		opacity:1;
	}
	
	.grid__item-img--large {
		pointer-events: none;
		position: absolute ;
		opacity: 0;
	}
	
	.grid__item-hidden {
		pointer-events: none;
		position: fixed;
		opacity: 0;
	}
	
	#project-holder {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index:100;
		pointer-events:none;
	}
	
	#project-holder.open {
		pointer-events:initial;
	}
	
	#showcase-height {
		position:relative;
		width:100vw;
		height:0;
	}
	
	#project-holder #main, #project-holder #main-page-content {
		opacity:1;
	}
	
	.clone-wrapper {
		overflow:hidden;
		height:100vh;
		width: 100%;
		left:0px;
		position: fixed;
		top:0;
		z-index:100;
		opacity:1;	
	}
	
	.clone-container {
		overflow:hidden;
		height:100%;
		width: 100%;
		left:0px;
		position: absolute;
		top:0;
		opacity:1;	
	}
	
	.thumb-wrapper {
		visibility: hidden;
		overflow:hidden;
		height:100vh;
		width: 100%;
		left:0px;
		position: fixed;
		top:0;
		z-index:100;
		opacity:1;	
	}
	
	.thumb-container {
		visibility: hidden;
		height:100vh;
		width: 100%;
		left:0px;
		position: fixed;
		top:0;
		z-index:100;
		opacity:1;		
		background-color:#161717;		
	}
	
	.thumb-page {
		cursor: pointer;
		position: absolute;
		height:100vh;
		width:100%;
		top:0;
		left:0px;
		position: fixed;
		visibility:hidden;
		background-position:center center;
		background-size:cover;
		background-repeat:no-repeat;
	}
	
	
	
/*--------------------------------------------------
	02. Filters
---------------------------------------------------*/		
	
		
	#show-filters {
		font-size: 12px;
		color:#000;
		opacity: 0;
		display: block;
		cursor: pointer;
		position: fixed;
		left: 63px;
		bottom: 30px;
		height: 80px;
		width: 80px;
		background: none;
		transform-origin: 0 0;
		z-index:100;
		pointer-events:none;
	}
	
	.light-content #show-filters {
		color:#fff;
	}
	
	#show-filters.enabled {
		pointer-events:initial;
	}
	
	.show-filters-wrap {
		width: 80px;
		height: 80px;
		float: right;
		top: 0px;
		display: flex;
		position: relative;
		justify-content: center;
		align-items: center;
		cursor: pointer;
	}
	
	.open-filters {
		height: 46px;		
		width: 46px;
		text-align:center;
		line-height:46px;
		font-size:14px;
		cursor: pointer;
		position: relative;
		background: #2b2a35;
		color: #fff;
		border-radius: 50px;		
	}
	
	.light-content .open-filters {
		background: #fff;
		color: #000;	
	}
	
	#filters-overlay {
		position:fixed;
		z-index:15;
		height:100vh;
		width:100%;
		top:0;
		left:0;
		right:0;
		bottom:0;
		opacity:0;
		visibility:hidden;
	    box-sizing: border-box;
		-webkit-transition: all 0.1s ease-in-out 0.6s;
		transition: all 0.1s ease-in-out 0.6s;
	}
	
	#filters-overlay.active {
		opacity:1;
		visibility:visible;
		-webkit-transition: all 0.3s ease-in-out 0.2s;
		transition: all 0.3s ease-in-out 0.2s;
	}
	
	#close-filters {
		position: fixed !important;
		height:100vh;
		width:100vw;
		top:0;
		left:0;
		right:0;
		bottom:0;
	}
	
	#filters-overlay .outer {
		width: 100%;
		margin: 0 auto;
		padding: 80px;
		padding-top:160px;
		box-sizing: border-box;
	}
	
	#filters-overlay .inner {
		vertical-align: middle;
		position: relative;
		pointer-events: none;
		text-align: center;
	}
	
	.filters-wrap {
		position: relative;
		width: 100%;
		max-height: 0px;
		opacity:0;
		margin-top: 100px;
		transition: all 0.6s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.2s;
		-webkit-transition: all 0.6s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.2s;
	}
	
	.filters-wrap.active {
		opacity: 1;
		max-height: 100px;
		transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
		-webkit-transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	}
	
	#filters {
		height: auto;
		z-index: 15;
		position: relative;
		width: auto;
		display: inline-block;
		padding: 0;
		pointer-events: initial;
		margin: 0;
	}
	
	#filters li {
		display: block;
		opacity: 1;
		position: relative;
		padding: 5px 0;
		margin: 0;
		opacity: 0;
		text-align: center;
	}
	
	#filters li a {
		display: block;
		color: #000;
		font-weight: 500;
		font-size:36px;
		line-height: 52px;
		z-index: 15;
		position: relative;
		overflow:hidden;
		-webkit-transition: opacity 0.15s ease-in-out;
		transition: opacity 0.15s ease-in-out;
	}
	
	.light-content #filters li a {
		color: #fff;
	}
	
	#filters:hover li a {
		opacity:0.4;
	}
	
	#filters li a:hover, #filters li a.active {
		opacity:1;		
	}
	
	#filters li a span {
		position: relative;
		display: block;
		-webkit-transition: -webkit-transform 0.2s;
		transition: transform 0.2s;
		transform-origin: 100% 0%;
	}
	
	#filters li a span::before {
		position: absolute;
		top: 100%;
		width:100%;
		left:0;
		content: attr(data-hover);
		font-family: "Canela-Regular";
		font-size:37px;		
		font-weight:500;
	}
	
	#filters li a:hover span {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
		transform-origin: 0% 0%;
	}
	
	
/*--------------------------------------------------
	09. Portfolio Isotope Transitions
---------------------------------------------------*/

	.isotope, .isotope .isotope-item {
		-webkit-transition-duration: 1.8s;
		-moz-transition-duration: 1.8s;
		-ms-transition-duration: 1.8s;
		-o-transition-duration: 1.8s;
		transition-duration: 1.8s;
	}
	
	.isotope {
		-webkit-transition-property: height, width;
		-moz-transition-property: height, width;
		-ms-transition-property: height, width;
		-o-transition-property: height, width;
		transition-property: height, width;
	}
	
	.isotope .isotope-item {
		-webkit-transition-property: -webkit-transform, opacity;
		-moz-transition-property: -moz-transform, opacity;
		-ms-transition-property: -ms-transform, opacity;
		-o-transition-property: -o-transform, opacity;
		transition-property: transform, opacity;
	}
	
/*--------------------------------------------------
	03. Portfolio Layout
---------------------------------------------------*/	
	
		
	.portfolio-wrap {		
		position:relative;
		margin:0 auto;
		width: 100%;
		max-width: 1320px;
		padding:0;
		box-sizing:border-box;
		min-height:50vh;
	}
	
	.portfolio-wrap.spaced-grid {
		max-width: 1460px;
	}
	
	.portfolio {
		position: relative;
		margin: 0 auto;
		box-sizing: border-box;
		-webkit-transition: height 0.5s ease-out;
		transition: height 0.5s ease-out;
	}
	
	.portfolio:after {
		content:""; 
		display:table; 
		clear:both;
	}		
	
	.item {
		display: block;
		position: relative;
		box-sizing: border-box;
		z-index: 0;
		margin:0px;
		width: 50%;
		height: 44vw;
	}
	
	.item.wide {
		width: 100%;
		height: 42vw;
		transform: translateY(0px);
		-webkit-transform: translateY(0px);
	}
	
	.spaced-grid .item {
		width:calc(50% - 140px);
		height: 39vw;
		margin:70px;		
	}
	
	.spaced-grid .item.wide {
		width:calc(100% - 140px);
		height: 35vw;
	}
	
	.item-parallax {
		height: 100%;
		width: 100%;
		position: absolute;
	}
	
	.item-appear {
		display: block;
		position: relative;
		box-sizing: border-box;
		z-index: 0;
		width: 100%;
		height: 100%;
		overflow:hidden;					
	}
	
	.item-image::after {
		content: "";
		opacity:0;
		width: 100%;
		height: 60%;
		position: absolute;
		bottom: 0;
		left: 0;
		pointer-events: none;
		background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
		background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
		-webkit-transition: all 0.6s ease-in-out;
		transition: all 0.6s ease-in-out;
	}
	
	.load-project-thumb .item-image::after {
		content: "";
		opacity:1;
		width: 100%;
		height: 60%;
		position: absolute;
		bottom: 0;
		left: 0;
		pointer-events: none;
		background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
		background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
		-webkit-transition: all 0.6s ease-in-out;
		transition: all 0.6s ease-in-out;
	}

	.item-content {
		width: 100%;
		height: 100%;
		position:relative;
		opacity:1; 
	}
	
	.fade-scalein-effect .item-content {
		opacity:0; 
		-webkit-transform:scale(0.8);
		transform: scale(0.8);
		-webkit-transition: all 1s cubic-bezier(.165,.84,.44,1) 0.2s;	
		transition: all 1s cubic-bezier(.165,.84,.44,1) 0.2s;	
	}
	
	.fade-scalein-effect .item.active .item-content {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
		position:absolute;
		right:0;	
	}
	
	.fade-scaleout-effect .item-content {
		opacity:0; 
		-webkit-transform:scale(1.2);
		transform: scale(1.2);
		-webkit-transition: all 1s cubic-bezier(.165,.84,.44,1) 0.2s;	
		transition: all 1s cubic-bezier(.165,.84,.44,1) 0.2s;	
	}
	
	.fade-scaleout-effect .item.active .item-content {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
		position:absolute;
		right:0;	
	}
	
	.width-scale-effect .item-content {
		-webkit-transform:scale(1.2);
		transform: scale(1.2);
		-webkit-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		-o-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);	
	}
	
	.width-scale-effect .item.active .item-content {
		-webkit-transform: scale(1);
		transform: scale(1);	
	}
	
	.width-scale-effect .item-content:after {
		content: "";
		width: 100%;
		height: 100%;
		background-color:#141414;
		position:absolute;
		top:0;
		right:0;
		-webkit-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		-o-transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);
		transition: all .6s cubic-bezier(0.54, 0.49, 0.2, 1.01);	
	}
	
	.width-scale-effect .item.active .item-content:after {
		width: 0;
	}
	
	.height-scale-effect .item-content {
		opacity: 0;
		-webkit-transition:translateY(220px) scaleY(1.3);
		transform: translateY(220px) scaleY(1.3);
		-webkit-transition: transform 1s cubic-bezier(.165,.84,.44,1), opacity 1s cubic-bezier(.165,.84,.44,1);	
		transition: transform 1s cubic-bezier(.165,.84,.44,1), opacity 1s cubic-bezier(.165,.84,.44,1);		
	}
	
	.height-scale-effect .item.active .item-content {
		opacity: 1;
		-webkit-transition:translateY(0px) scaleY(1);
		transform: translateY(0px) scaleY(1);	
	}
	
	.item-wrap {
		width: 100%;
		height: 100%;
		position:absolute;	 				
	}
	
	.item-wrap-image {
		width: 100%;
		height: 100%;
		position:relative;
		z-index:0;
		overflow:hidden;
		-webkit-transform:scale(1.05);
		transform: scale(1.05);
		-webkit-transition: all 1s cubic-bezier(.165,.84,.44,1) 0s;	
		transition: all 1s cubic-bezier(.165,.84,.44,1) 0s;			
	}
	
	.disable-ajaxload .item-wrap-image {
		pointer-events:none;
	}
	
	.item:hover .item-appear .item-wrap-image, .above  .item-wrap-image {		
		-webkit-transform:scale(1);
		transform: scale(1);			
	}
	
	.item-image {
		width:100%;
		height: 100%;
		position:relative;
		display:block;
		z-index:100;	
		object-position: center; 
		object-fit: cover;
	}
	
	.portfolio .item-image {
		cursor:pointer;		
	}
	
	.above.item {
		opacity: 1;
	}
	
	.scale-fitthumbs .above.item {
		opacity: 1!important;
	}
	
	.item-caption-wrapper {
		display: table;
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left:0;
		padding: 50px 50px;
		box-sizing: border-box;
		pointer-events: none;
	}
	
	.item-caption {
		z-index: 10;
		position: relative;
		display: table-cell;
		vertical-align: bottom;
		bottom: 0px;
		height: auto;
		padding: 0px;
		box-sizing: border-box;
		width: 100%;
		cursor: default;		
		opacity: 0;
		-webkit-transition: all 0.2s ease-out 0.4s;
		transition: all 0.2s ease-out 0.4s;
		
	}
	
	.item.active .item-caption {
		opacity: 1;
	}
	
	.item-title {		
		margin: 0;
		font-weight: 500;
		font-size:36px;
		line-height:52px;
		margin-left:-1px;
		display: block;
		position:relative;
		color:#fff;
		-webkit-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;		
	}
	
	.light-content .item-title {
		color:#fff;
	}
	
	.change-header .item-title {
		color:#000;
	}
	
	.light-content .change-header .item-title {
		color:#000;
	}
	
	.portfolio .item:first-child .item-title::after {
		content: "New";
		font-family: 'Poppins', sans-serif;
		font-weight: 300;
		font-size: 10px;
		position: absolute;
		font-weight: 600;
		margin-left: 10px;
		color: #FF1B0B;
		top: -6px;
	}
	
	.item-cat {
		display:block;
		font-size: 14px;
		font-weight: 500;
		line-height: 20px;
		margin-bottom:10px;
		overflow:hidden;
		color:#fff;
		-webkit-transition: all 0.1s ease-out;
		transition: all 0.1s ease-out;		
	}
	
	.light-content .item-cat {
		color:#fff;
	}
	
	.change-header .item-cat {
		color:#000;
	}
	
	.light-content .change-header .item-cat {
		color:#000;
	}
	
	.item-date {
		position:absolute;
		top:0;
		display:block;
		font-size: 12px;
		font-weight: 500;
		line-height: 20px;
		overflow:hidden;
		color:#fff;
		-webkit-transition: all 0.1s ease-out;
		transition: all 0.1s ease-out;		
	}
	
	.light-content .item-date {
		color:#fff;
	}
	
	.change-header .item-date {
		color:#000;
	}
	
	.light-content .change-header .item-date {
		color:#000;
	}



	
	
/*--------------------------------------------------
	Responsive
---------------------------------------------------*/	




@media only screen and (max-width: 1466px) {
	
	#filters-overlay .outer {
		padding: 60px;
	}
	
	#show-filters {
		left: 43px;
		bottom: 20px;
	}
	
	.item {
		height: 56vw;
	}
	
	.item.wide {
		height: 52vw;
	}
	
	.spaced-grid .item {
		width: calc(50% - 120px);
		height: 52vw;
		margin: 60px;
	}
	
	.spaced-grid .item.wide {
		width: calc(100% - 120px);
		height: 50vw;
	}
	
	.item-caption-wrapper {
		padding: 30px 40px;
	}
	
	.item-title {
		font-size: 32px;
		line-height: 48px;
	}
	
	
}

@media only screen and (max-width: 1024px) {	
	
	#filters-overlay .outer {
		padding: 40px;
		padding-bottom:80px;
	}
	
	#show-filters {
		left: 40px;
		bottom: 30px;
		height: 46px;
		width: 46px;
	}
	
	#show-filters[data-tooltip][data-placement="top"]::before {
		display:none;
	}
	
	.show-filters-wrap {
		width: 46px;
		height: 46px;
	}
	
	.item {
		height: 62vw;
	}
	
	.item.wide {
		height: 54vw;
	}
	
	.portfolio-wrap.spaced-grid {
		padding: 0 20px;
	}
	
	.spaced-grid .item {
		width: calc(50% - 40px);
		height: 56vw;
		margin: 20px;
	}
	
	.spaced-grid .item.wide {
		width: calc(100% - 40px);
		height: 52vw;
	}
	
}

@media only screen and (max-width: 767px) {
	
	#filters-overlay .outer {
		padding: 30px;
		padding-bottom:80px;
	}	
	
	#filters li a {
		font-size: 24px;
		line-height: 40px;
	}
	
	#filters li a span::before {
		font-size:25px;	
	}
	
	#show-filters {
		left: 30px;
		bottom: 20px;
	}
	
	.portfolio-wrap.spaced-grid {
		padding: 0 15px;
	}
	
	.spaced-grid .item {
		width: calc(50% - 30px);
		height: 56vw;
		margin: 15px;
	}
	
	.spaced-grid .item.wide {
		width: calc(100% - 30px);
		height: 52vw;
	}
	
	.item-caption-wrapper {
		padding: 20px 20px;
	}
	
	.item-title {
		font-size: 24px;
		line-height: 32px;
	}
	
}

@media only screen and (max-width: 479px) {
	
	#filters-overlay .outer {
		padding: 20px;
		padding-bottom:80px;
	}
	
	#show-filters {
		left: 20px;
		bottom: 10px;
	}
	
	.portfolio-wrap.spaced-grid {
		padding: 0 10px;
	}
	
	.portfolio {
		overflow:hidden;
	}
	
	.item {
		width:100%;
		height: 120vw;
	}
	
	.item.wide {
		height: 60vw;
	}
	
	.spaced-grid .item {
		width: calc(100% - 20px);
		height: 120vw;
		margin: 10px;
	}
	
	.spaced-grid .item.wide {
		width: calc(100% - 30px);
		height: 60vw;
	}
		
}			
	