body {
	background-image:url(hintergrundgrafik2.jpg);
	font-family: 'Georgia', sans-serif;
}

h1 {
	text-align: center;
	font-weight: 700;
}

#gallery {
	width: 1000px;
	margin: 80px auto;
}

ul {
	float: left;
	margin: 40px 0 40px -40px;
}

li {
	position: relative;
	float: left;
	list-style: none;
	line-height: 0;
	margin: 0 20px 20px 0;
	padding: 10px;
	background: #333333;
	box-shadow: 0 1px 2px rgba(0,0,0,0.2);
}

li .genericon {
	cursor: pointer;
	opacity: 0;
	-webkit-transition: opacity .2s ease-in-out;
	-moz-transition: opacity .2s ease-in-out;
	-o-transition: opacity .2s ease-in-out;
	-ms-transition: opacity .2s ease-in-out;
	transition: opacity .2s ease-in-out;
}

li:hover .genericon-zoom {
	opacity: 1;
}

li:nth-child(3n) {
	margin-right: 0;
}

li:before,
li:after{
	position: absolute;
	content: "";
	z-index: -1;
	bottom: 15px;
	left:  10px;
	width: 50%;
	height: 20%;
	box-shadow: 0 15px 10px rgba(0, 0, 0, 0.7);
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	transform: rotate(-3deg);
}

li:after {
	right: 10px;
	left: auto;
	-webkit-transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	transform: rotate(3deg);
}

li p {
	margin: 15px 0 5px 0;
	text-transform: uppercase;
	font-size: 10px;
	color: #777;
}

img {
	width: 300px;
	height: 200px;
	cursor: pointer;
	opacity: 0.8;
	-webkit-transition: all .6s ease-in-out;
	-moz-transition: all .6s ease-in-out;
	-o-transition: all .6s ease-in-out;
	-ms-transition: all .6s ease-in-out;
	transition: all .6s ease-in-out;
}

li:hover img {
	opacity: 1;
}

li:hover p {
	font-weight: bold;
	color: #fff;
}

.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	background-image:url(hintergrundgrafik2.jpg);
	z-index: 1;
}

input[type=checkbox] {
     display: none;
}

input[type=checkbox]:checked ~ label img {
	position: fixed;
	width: 500px;
	height: auto;
	top: 50%;
	left: 50%;
	align: center;
	margin-top: -200px;
	margin-left: -250px;
	border: 10px solid #333333;
	z-index: 2;
	-webkit-animation: fadeIn .1s linear;
	-moz-animation: fadeIn .1s linear;
	-o-animation: fadeIn .1s linear;
	-ms-animation: fadeIn .1s linear;
	animation: fadeIn .1s linear;
}

input[type=checkbox]:checked ~ label:hover .genericon-unzoom {
	position: fixed;
	opacity: 1;
	z-index: 99;
}

input[type=checkbox]:checked ~ .overlay {
	display: block;
}

@-webkit-keyframes fadeIn {
	from { -webkit-transform: scale(0); opacity: 0; }
	to { -webkit-transform: scale(1); opacity: 1; }
}

@-moz-keyframes fadeIn {
	from { -moz-transform: scale(0); opacity: 0; }
	to { -moz-transform: scale(1); opacity: 1; }
}

@keyframes fadeIn {
	from { transform: scale(0); opacity: 0; }
	to { transform: scale(1); opacity: 1; }
}