/* KEYS ======================================== */

#main .keys {
	min-width: 1000px;
	position:relative;
	z-index:1;
	overflow: hidden; /*fix horizontal scroll in ie*/
}

.keys .keys-top .key {
	width: calc(100% / 7);
	height: 620px;
	position:relative;
	z-index:3;
}

.keys .keys-top .key:hover {
	z-index:4;
}

.keys .keys-top .key .key-inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height:100%;
	transition: width 0.20s cubic-bezier(.54,.01,.75,1.27) 0.0s; /* cubic-bezier(.08,-0.49,.92,1.47) */
	overflow:hidden;
	z-index:2;
	-webkit-backface-visibility: hidden; /* webkit 1px shift bugfix */
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
}

.keys .keys-top .key:hover .key-inner {
	width: calc(100% * 3 + 1px);
	transition: width 0.20s cubic-bezier(.54,.01,.75,1.27) 0.4s; /* cubic-bezier(.08,-0.49,.92,1.47) */
}

.keys .keys-top .key .key-title {
	position: absolute;
	bottom: 20px;
	width: 100%;
	color: #fff;
	text-transform:uppercase;
	z-index: 2;
	text-align:center;
	font-family: "Roboto Condensed", Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size:16px;
}

.keys .keys-top .key .key-title a {
	color: #fff;
}

.keys .keys-top .key .key-inner .key-bg {
	transition: transform 0.9s ease 0s;
	position: absolute;
	left: -15px;
	top: -15px;
	right: -15px;
	bottom: -15px;

	animation-direction: reverse;
    animation-timing-function: ease-in;
	animation-duration: 50s;
	animation-name: uk-scale-12;
	animation-direction: reverse;
    animation-timing-function: ease-in;
	animation-duration: 50s;
	animation-name: uk-scale-12;
}

@-webkit-keyframes uk-scale-12 {
  0% {
    -webkit-transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@keyframes uk-scale-12 {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}

.keys .keys-top .key .key-inner .key-bg:after {
	content: "";
	height: 40%;
	width: 100%;
	bottom:0;
	position:absolute;
	display: block;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
}

.keys .keys-top .key .key-inner .key-bg:before { /* Красная тонировка при наведении на клавишу */
	content: '';
	left: -45px;
	top: -45px;
	right: -45px;
	bottom: -45px;
	position:absolute;
	background: rgb(159, 39, 47);
	mix-blend-mode: multiply;
	opacity: 0;
	transition: opacity 0.3s ease 0s;
}
.keys .keys-top .key:hover .key-inner .key-bg:before {
	opacity: 1;
}

.keys .keys-top .key:hover .key-inner .key-bg {
	transform: scale(0.97)
}

.keys .keys-top .key .key-inner .key-inner-content {
	padding: 20px;
	opacity: 0;
	transition: all 0.1s ease 0; /*0.4*/
	transform: translateY(-10px);
	color: #fff;
	min-width: 400px; /* Чтоб не прыгал текст при анимации */
	box-sizing:border-box;
}
.keys .keys-top .key .key-inner .key-inner-content a {
	color: #fff;
}
.keys .keys-top .key:hover .key-inner .key-inner-content {
	opacity: 1;
	transform: translateY(0);
	width: 100%;
	transition: all 0.15s ease 0.55s;
}

.keys .keys-top .key.key-1 {
	z-index: 4;	 /* Чтоб перекрыть соседнюю клавишу */
}
.keys .keys-top .key.key-1 .key-inner .key-bg {
	background: url("../images/key-1.jpg") no-repeat -60px 50%;
}

.keys .keys-top .key.key-3 .key-inner,
.keys .keys-top .key.key-5 .key-inner {
  left: 50%;
  transform: translate(-50%, 0px);
}
.keys .keys-top .key.key-7 .key-inner {
	left: auto;
	right: 0;
}
.keys .keys-top .key.key-3 .key-inner .key-bg {
	background: url("../images/key-2.jpg") no-repeat 50% 50%;
}

.keys .keys-top .key.key-5 .key-inner .key-bg {
	background: url("../images/key-3.jpg") no-repeat 50% 50%;
}
.keys .keys-top .key.key-5 .key-inner .key-bg video {
	height: 655px;
	width: 471px;
}



.keys .keys-top .key.key-7 .key-inner .key-bg {
	background: url("../images/key-4.jpg") no-repeat 100% 50%;
}

.keys .keys-top .key .key-inner .key-inner-content .uk-nav li a {
	padding: 6px 10px;
	font-size: 16px;
	line-height:18px;
}

.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li {
	width: 30%;
}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li.uk-parent {
	position: relative;
}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li > ul {
	position: absolute;
	top: 2px;
	left: 100%;
	width: 220%;
	opacity: 0;
	transition: opacity 0.15s linear 0s, transform 0.2s ease-out 0s;
	transform: translateY(-50px);

}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li:hover > ul {
	opacity:1;
	transform: translateY(0);
    z-index: 1;
}

/* upd submenu mod 2017.04.10*/
.key-inner-content ul ul ul {
	display: none;
}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent {
	position: relative;
}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li.uk-parent {
	position: static;
}
.keys .keys-top .key .key-inner .key-inner-content .uk-nav.nav-parent > li > ul {
	top: 0;
	left: 115px;
	width: calc(100% - 120px);
}
/* upd end*/



/* KEYS BOTTOM */

.keys .keys-bottom {
	margin-top: -620px;
}

.keys .keys-bottom .key {
	width: calc(100% / 7 * 2);
	height: 780px;
	position:relative;
	z-index: 0;
	transition: z-index 0.1s linear 0.5s;
}
.keys .keys-bottom .key:hover {
	/*z-index: 4;*/
	z-index:5;
	transition: z-index 0.1s linear 0s;
}
.keys .keys-bottom .key .key-title {
	position: absolute;
	bottom: 100px;
	width: 100%;
	text-transform:uppercase;
	z-index: 2;
	text-align:center;
	font-family: "Roboto Condensed", Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size:16px;
}
.keys .keys-bottom .key .key-inner {

}

.margin-left-1-14 {
	margin-left: calc(100% / 14);
}

.keys .keys-bottom .key .key-inner {
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0px);
	top: 0;
	width: 0;
	height:100%;
	transition: width 0.2s cubic-bezier(.54,.01,.75,1.27) 0s; /* cubic-bezier(0.19, 1, 0.22, 1) */
	overflow:hidden;

	/*z-index:2;*/
}

.keys .keys-bottom .key:hover .key-inner {
	width: calc(100% * 3 / 2 + 1px);

	transition: width 0.2s cubic-bezier(.54,.01,.75,1.27) 0.4s; /* cubic-bezier(0.19, 1, 0.22, 1) */

	/*transition: z-index 0.1s linear 2s;*/
}
.keys .keys-bottom .key .key-inner .key-bg {
	background: #f4f4f4;
	opacity: 0;
	transition: opacity 0.3s ease 0.6s;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}
.keys .keys-bottom .key:hover .key-inner .key-bg {
	opacity: 1;
	transition: opacity 0.3s ease 0s;

}
.keys .keys-bottom .key .key-inner .key-inner-content {
	padding: 20px;
	opacity: 0;
	transition: all 0.1s ease 0s;
	min-width: 400px; /* Чтоб не прыгал текст при анимации */
	box-sizing:border-box;
}
.keys .keys-bottom .key:hover .key-inner .key-inner-content {
	opacity: 1;
	transform: translateY(0);
	width: 100%;
	transition: all 0.15s ease 0.6s;
}
.keys .keys-bottom .key .key-inner .key-inner-content .inner-teaser {
	margin: -20px;
	margin-bottom:inherit;
}
.keys .keys-bottom .key .key-inner .key-inner-content .date-square {
	background: #fff;
}

/**/

.keys .keys-bottom .key:before {
	content:'';
	position: absolute;
	width: 30%;
	background:#fff;
	border-right: 1px dotted #4f4f4f;
	left: -30%;
	bottom: 0;
	height: 160px;
	z-index:4;
}
.keys .keys-bottom .key:after {
	content:'';
	position: absolute;
	width: 30%;
	background:#fff;
	border-left: 1px dotted #4f4f4f;
	right: -30%;
	bottom: 0;
	height: 160px;
	z-index:4;
}
