

.grid li {
	display: inline-block;
	overflow: hidden;
}









/* Curtain element */
.grid .curtain {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	/* background: #080505; */
	
}

.grid.swipe-right .curtain {
	-webkit-transform: translate3d(-100%,0,0);
	transform: translate3d(-100%,0,0);
}

.grid.swipe-down .curtain {
	-webkit-transform: translate3d(0,-100%,0);
	transform: translate3d(0,-100%,0);
}

.grid.swipe-rotate .curtain {
	width: 200%;
	height: 200%;
	-webkit-transform: rotate3d(0,0,1,90deg);
	transform: rotate3d(0,0,1,90deg);
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

/* Shadow */








/* Swipe right */
.grid.swipe-right li.animate .curtain {
	-webkit-animation: swipeRight 1.5s cubic-bezier(0.6,0,0.4,1) forwards;
	animation: swipeRight 1.5s cubic-bezier(0.6,0,0.4,1) forwards;
}

@-webkit-keyframes swipeRight {
	0% {} /* fixes Chrome 35.0.1916.114 issue (easing breaks) */
	50%, 60% { -webkit-transform: translate3d(0,0,0); }
	100% { -webkit-transform: translate3d(100%,0,0); }
}

@keyframes swipeRight {
	0% {}
	50%, 60% { -webkit-transform: translate3d(0,0,0); transform: translate(0); }
	100% { -webkit-transform: translate3d(100%,0,0); transform: translate3d(100%,0,0); }
} 

/* Swipe down */
.grid.swipe-down li.animate .curtain {
	-webkit-animation: swipeDown 1.5s cubic-bezier(0.6,0,0.4,1) forwards;
	animation: swipeDown 1.5s cubic-bezier(0.6,0,0.4,1) forwards;
}

@-webkit-keyframes swipeDown {
	0% {} /* fixes Chrome 35.0.1916.114 issue (easing breaks) */
	50%, 60% { -webkit-transform: translate3d(0,0,0); }
	100% { -webkit-transform: translate3d(0,100%,0); }
}

@keyframes swipeDown {
	0% {}
	50%, 60% { -webkit-transform: translate(0); transform: translate(0); }
	100% { transform: translate3d(0,100%,0); transform: translate3d(0,100%,0); }
}

/* Swipe rotate */
.grid.swipe-rotate li.animate .curtain {
	-webkit-animation: swipeRotate 1.5s ease forwards;
	animation: swipeRotate 1.5s ease forwards;
}

@-webkit-keyframes swipeRotate {
	0% {} /* fixes Chrome 35.0.1916.114 issue (easing breaks) */
	50%, 60% { -webkit-transform: rotate3d(0,0,1,0deg); }
	100% { -webkit-transform: rotate3d(0,0,1,-90deg); }
}

@keyframes swipeRotate {
	0% {}
	50%, 60% { -webkit-transform: rotate3d(0,0,1,0deg); transform: rotate3d(0,0,1,0deg); }
	100% { -webkit-transform: rotate3d(0,0,1,-90deg); transform: rotate3d(0,0,1,-90deg); }
}

/* Shadow */
.grid li.animate .curtain::after {
	-webkit-animation: fadeOut 1.5s ease forwards;
	animation: fadeOut 1.5s ease forwards;
	-webkit-animation-delay: inherit;
	animation-delay: inherit;
}

@-webkit-keyframes fadeOut {
	0% {} /* fixes Chrome 35.0.1916.114 issue (easing breaks) */
	50%, 60% { opacity: 1; }
	100% { opacity: 0; }
}

@keyframes fadeOut {
	0% {}
	50%, 60% { opacity: 1; }
	100% { opacity: 0; }
}

/* Hide image and title and show at half time */
.js .grid li img,
.js .grid li h3 {
	visibility: hidden;
}

.grid li.animate img,
.grid li.animate h3 {
	-webkit-animation: showMe 1.5s step-end forwards;
	animation: showMe 1.5s step-end forwards;
}

@-webkit-keyframes showMe {
	from { visibility: hidden; }
	60%, 100% { visibility: visible; }
}

@keyframes showMe {
	from { visibility: hidden; }
	60%, 100% { visibility: visible; }
}

.grid li.shown img,
.grid li.shown h3 {
	visibility: visible;
}