.image_grid { font-size: 0; }
			
.image_grid div {
	display: inline-block;
	vertical-align: top;
}

.image_grid img {
	padding: 4% 4% 0;
	max-width: 100%;
	cursor: pointer;
}

.image_grid_shadow {
	position: fixed;
	z-index: 99999;
	
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	
	opacity: 0;
	
	background: no-repeat center center rgba(0, 0, 0, 0.75);
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-ms-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
	
	-webkit-transition: opacity 300ms ease-in-out;
	-moz-transition: opacity 300ms ease-in-out;
	-ms-transition: opacity 300ms ease-in-out;
	-o-transition: opacity 300ms ease-in-out;
	transition: opacity 300ms ease-in-out;
}

.image_grid_shadow a {
	position: absolute;
	top: 20px;
	right: 20px;
	
	display: inline-block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	
	cursor: pointer;
	
	color: #000;
	font-size: 60px;
	font-weight: normal;
	font-family: Arial, sans-serif;
	
	opacity: 0.75;
	
	-webkit-transition: opacity 200ms ease-in-out, text-shadow 200ms ease-in-out;
	-moz-transition: opacity 200ms ease-in-out, text-shadow 200ms ease-in-out;
	-ms-transition: opacity 200ms ease-in-out, text-shadow 200ms ease-in-out;
	-o-transition: opacity 200ms ease-in-out, text-shadow 200ms ease-in-out;
	transition: opacity 200ms ease-in-out, text-shadow 200ms ease-in-out;
}

.image_grid_shadow a:hover {
	opacity: 1;
	-webkit-text-shadow: 0 0 12px rgba(0, 0, 0, 0.5);
	-moz-text-shadow: 0 0 12px rgba(0, 0, 0, 0.5);
	text-shadow: 0 0 12px rgba(0, 0, 0, 0.5);
}

.image_grid_shadow a:active { line-height: 63px; }

.image_grid_shadow a::after {
	content: '\00d7';
	display: inline-block;
	line-height: normal;
	vertical-align: middle;
}