/* ============================ ПОРТФОЛИО ============================ */

/* Сделать: убрать all, поставить отдельные свойства */
#box-list li > div, #box-list h2, #box-list span,
#box-list li > a, #box-list .desc{
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function:ease;
	-moz-transition-timing-function:ease;
	-o-transition-timing-function:ease;
	transition-timing-function:ease;
	
	-webkit-transition-property:top, left, right, bottom;
	-moz-transition-property:top, left, right, bottom;
	-o-transition-property:top, left, right, bottom;
	transition-property:top, left, right, bottom;
}

#box-list{
	margin: 0px 10px;
	margin-bottom: 94px;
}
#box-list *{
	padding: 0;
	margin: 0;
}
#box-list{
	list-style: none;
	position: relative;
}
#box-list li{
	min-height: 10px;
	/* OSX Chrome bug with animating of bgcolor being slow */
	-webkit-transform: translateZ(0);
}
#box-list li > div, #box-list li > a{
	overflow: hidden;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	border: 16px solid transparent;
}

#box-list li > a{
	background-color: rgba(30,0,0,0.5);
	text-decoration: none;
	
	-webkit-transition-property:background-color;
	-moz-transition-property:background-color;
	-o-transition-property:background-color;
	transition-property:background-color;
}
#box-list li:hover > div, #box-list li:hover > a{
	background-color: transparent;
}
#box-list li:active > div, #box-list li:active > a{
	background-color: #dc3333;
	-webkit-transition-duration: 0s;
	-moz-transition-duration: 0s;
	-o-transition-duration: 0s;
	transition-duration: 0s;
}
#box-list h2{
	position: absolute;
	display: inline-block;
	color: #fff;
	font-family:'PT Sans', 'Trebuchet MS', sans-serif;
	font-size: 28px;
	text-transform: none;
	
	-webkit-transition-property:top, left, right, bottom;
	-moz-transition-property:top, left, right, bottom;
	-o-transition-property:top, left, right, bottom;
	transition-property:top, left, right, bottom;
}
#box-list span{
	position: relative;
	display: inline-block;
}
#box-list .lt h2{
	top: 0;
	left: 0;
}
#box-list .rt h2{
	top: 0;
	left: 100%;
}
#box-list .rt span{
	position: relative;
	left: -100%;
}
#box-list li:hover a h2 span{
	left: 0;
	top: 0;
	margin-top: 0;
}
#box-list .rb h2{
	text-align: right;
	top: 100%;
	left: 100%;
}
#box-list .rb span{
	left: -100%;
}
#box-list .lb h2{
	left: 0;
	top: 100%;
}

#box-list .lb h2, #box-list .lt h2{
	text-align: left;
}

#box-list .rb h2, #box-list .rt h2{
	text-align: right;
}
#box-list li:hover h2{
	text-align: left;
	left: 0;
	top: 0;
	margin-top: 0;
}
#box-list .lb span, #box-list .rb span{
	margin-top: -100%;
}
#box-list .rb h2, #box-list .lb h2{
	/* ~= line-height*/
	margin-top: -36px; 
}

#box-list .desc{
	position: relative;
	color: #fff;
	font: 15px 'PT Sans',sans-serif;
	text-align:left;
	
	-webkit-transition-property:top, left, right, bottom;
	-moz-transition-property:top, left, right, bottom;
	-o-transition-property:top, left, right, bottom;
	transition-property:top, left, right, bottom;
}
#box-list li:hover .desc, #box-list .desc{
	left: 0px;
	top: 50px;
	margin-top: 0px;
}

#box-list .lt .desc{
	left: 110%;
}
#box-list .rt .desc{
	margin-top: 100%;
}
#box-list .lb .desc{
	margin-top: -110%;
}
#box-list .rb .desc{
	left: -110%;
}

/* Ниже -- дополнение функциональности  :td

 * Класс .abs позволяет задавать абсолютный сдвиг для h2.
 * В случае его применения направление появления .desc
 * можно задать вспомогательным классом-буквой
 * (по умолчанию -- справа).
 * */

#box-list li:hover .abs .desc{
	/* Копия исходного правила с усиленным селектором */
	left: 0px;
	top: 50px;
	margin-top: 0px;
}

#box-list .abs h2 span{
	text-align: left;
}

#box-list .abs .desc{
	left: 110%;
}
#box-list .abs .desc.t, #box-list .abs .desc.b{
	left: 0%;
}
#box-list .abs .desc.l{
	left: -110%;
}

#box-list .abs .desc.t{
	margin-top: 100%;
}
#box-list .abs .desc.b{
	margin-top: -110%;
}
