#subjects {
	clear: both;
	margin-top: 1.5em;
}
#subjects * {
	text-align: center;
	margin: 0 auto;
}
#subjects > div {
	border: 1px solid #ccc;
	height: 18.5em;
	width: 18.5em;
	margin-bottom: 2em;
	position: relative;
	*margin-bottom: 0;
	-webkit-transition: -webkit-transform 1s;
	-moz-transition: -moz-transform 1s;
	-o-transition: -o-transform 1s;
	transition: transform 1s;
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	-o-transform-style: preserve-3d;
	transform-style: preserve-3d;
}
@media only screen and (max-width: 700px) {
	#subjects > div { width: 16em }
}
#subjects > div {
	box-shadow: 0.2em 0.2em 0.5em #999;
	-moz-box-shadow: 0.2em 0.2em 0.5em #999;
	-webkit-box-shadow: 0.2em 0.2em 0.5em #999;
}
#subjects > div {
	background: #ffffff;
	background: -moz-linear-gradient(top,  #ffffff 0%, #ebebeb 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#ebebeb));
	background: -webkit-linear-gradient(top,  #ffffff 0%,#ebebeb 100%);
	background: -o-linear-gradient(top,  #ffffff 0%,#ebebeb 100%);
	background: -ms-linear-gradient(top,  #ffffff 0%,#ebebeb 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#ebebeb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 );
}
#subjects > div div h3 {
	font-size: 1.3em;
	white-space: nowrap;
}
#subjects > div img {
	border: 1px solid #ccc;
	margin-top: 1.25em;
	padding: 0.4em;
	border-radius: 0.4em;
	width: 85%;
}
#subjects > div p {
	color: #000;
	margin-top: 0.5em;
	font-size: 1.1em;
	font-variant: small-caps;
}
@media only screen and (max-width: 1000px) {
	#subjects { float: left; clear: both; text-align: center }
	#subjects > div { float: none; display: inline-block; margin: auto 1em 2em; }
}
#subjects > div div {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 1em;
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	-webkit-transition: opacity 1s;
	-moz-transition: opacity 1s;
	-ms-transition: opacity 1s;
	-o-transition: opacity 1s;
	transition: opacity 1s;
}

#subjects > div .back {
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg); 
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
	opacity: 0;
	filter: alpha(opacity = 0);
}
#subjects > div .back li {
	font-size: 0.95em;
	list-style-type: disc;
	margin: 0.35em 0 0.35em 1em;
	text-align: left;
}
#subjects > div:hover {
	-webkit-transform: rotate(180deg); 
	-moz-transform: rotate(180deg); 
	-ms-transform: rotate(180deg); 
	-o-transform: rotate(180deg); 
	transform: rotate(180deg);
	border: 1px solid #06c;
	box-shadow: -0.2em -0.2em 0.5em #999;
	-moz-box-shadow: -0.2em -0.2em 0.5em #999;
	-webkit-box-shadow: -0.2em -0.2em 0.5em #999;
}
#subjects > div:hover div.front {
	opacity: 0;
	filter: alpha(opacity = 0);
}
#subjects > div:hover div.back {
	opacity: 1;
	filter: alpha(opacity = 100);
}
