.grid-wrap {
	clear: both;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}

.grid {
	margin: 30px auto;
	padding: 0;
	list-style: none;
	min-height: 500px;
}

.grid li {
	float: left;
	list-style: none;
	position: absolute;
	display: block;
	overflow: hidden;
	width: 314px;
	text-align: left;
	vertical-align: top;
}

/* Anchor and image */
.grid li > a,
.grid li img {
	display: block;
	outline: none;
	border: none;
}

.grid li > a {
	position: relative;
	overflow: hidden;
	margin: 7px;
}


/* Title */
.grid li h3 {
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0;
	padding: 20px;
	width: 100%;
	background: #3B6B00;
	color: #FFF9B3;
	text-align: right;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 800;
	font-size: 1em;
	-webkit-transition: -webkit-transform 0.2s, color 0.2s;
	transition: transform 0.2s, color 0.2s;
	font-family: 'Lato', sans-serif;
}

a:link, a:visited {
	color: #F6CF74;
	padding: 0 0;
	text-decoration: underline;
}

.grid li a:hover{
	background-color: #FEFEE7;
}

.grid li h3 > a:hover{
	background-color: #3B6B00;
}

/* Pseudo element for hover effect */
.grid li > a::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100.5%;
	height: 100.5%;
	border: 0px solid transparent;
	background: rgba(0,0,0,0);
	content: '';
	-webkit-transition: border-width 0.2s, border-color 0.2s;
	transition: border-width 0.2s, border-color 0.2s;
}

/* Hover effects */
.grid li:hover h3 {
	color: #3B6B00;
	background-color: #3B6B00;
	-webkit-transform: translate3d(0,-30px,0);
	transform: translate3d(0,-30px,0);
}

.grid li:hover > a::before {
	border-width: 14px;
	border-color: #3B6B00;
}


.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 img,
.grid li h3 {
	visibility: visible;
}
