/* Custom variables */
@font-face {
  font-family: 'Avenir Next Cyr';
  src: url('../fonts/subset-AvenirNextCyr-Regular.eot');
  src: url('../fonts/subset-AvenirNextCyr-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-AvenirNextCyr-Regular.woff') format('woff'), url('../fonts/subset-AvenirNextCyr-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Avenir Next Demi';
  src: url('../fonts/subset-AvenirNextCyr-Demi.eot');
  src: url('../fonts/subset-AvenirNextCyr-Demi.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-AvenirNextCyr-Demi.woff') format('woff'), url('../fonts/subset-AvenirNextCyr-Demi.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Avenir Next Bold';
  src: url('../fonts/subset-AvenirNextCyr-Bold.eot');
  src: url('../fonts/subset-AvenirNextCyr-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-AvenirNextCyr-Bold.woff') format('woff'), url('../fonts/subset-AvenirNextCyr-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Avenir Next Heavy';
  src: url('../fonts/subset-AvenirNextCyr-Heavy.eot');
  src: url('../fonts/subset-AvenirNextCyr-Heavy.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-AvenirNextCyr-Heavy.woff') format('woff'), url('../fonts/subset-AvenirNextCyr-Heavy.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
}
.ave {
  font-family: 'Avenir Next Cyr';
}
.aveDemi {
  font-family: 'Avenir Next Demi';
}
.aveBold {
  font-family: 'Avenir Next Bold';
}
.aveHeavy {
  font-family: 'Avenir Next Heavy';
}
@font-face {
  font-family: 'LavaHeavy';
  src: url('../fonts/subset-LavaHeavy.eot');
  src: url('../fonts/subset-LavaHeavy.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-LavaHeavy.woff') format('woff'), url('../fonts/subset-LavaHeavy.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Lava';
  src: url('../fonts/subset-Lava.eot');
  src: url('../fonts/subset-Lava.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-Lava.woff') format('woff'), url('../fonts/subset-Lava.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Lava-Bold';
  src: url('../fonts/subset-Lava-Bold.eot');
  src: url('../fonts/subset-Lava-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-Lava-Bold.woff') format('woff'), url('../fonts/subset-Lava-Bold.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Lava-Italic';
  src: url('../fonts/subset-Lava-Italic.eot');
  src: url('../fonts/subset-Lava-Italic.eot?#iefix') format('embedded-opentype'), url('../fonts/subset-Lava-Italic.woff') format('woff'), url('../fonts/subset-Lava-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
.lava {
  font-family: 'Lava';
}
.lavaBold {
  font-family: 'Lava-Bold';
}
.lavaHeavy {
  font-family: 'LavaHeavy';
}
.lavaIt {
  font-family: 'Lava-Italic';
}
.icon {
  display: inline-block;
  vertical-align: middle;
  -webkit-background-size: cover !important;
  background-size: cover !important;
}
.icon-menu {
  background: url(../images/icon-menu.png) 0 0 no-repeat;
  width: 54px;
  height: 25px;
}
.icon-clock {
  background: url(../images/icon-clock.png) 0 0 no-repeat;
  width: 52px;
  height: 52px;
}
.icon01 {
  background: url(../images/icon01.png) 0 0 no-repeat;
  width: 85px;
  height: 85px;
}
.icon02 {
  background: url(../images/icon02.png) 0 0 no-repeat;
  width: 159px;
  height: 67px;
}
.icon03 {
  background: url(../images/icon03.png) 0 0 no-repeat;
  width: 90px;
  height: 81px;
}
.icon04 {
  background: url(../images/icon04.png) 0 0 no-repeat;
  width: 25px;
  height: 24px;
}
.icon05 {
  background: url(../images/icon05.png) 0 0 no-repeat;
  width: 31px;
  height: 23px;
}
.icon06 {
  background: url(../images/icon06.png) 0 0 no-repeat;
  width: 25px;
  height: 23px;
}
.icon07 {
  background: url(../images/icon07.png) 0 0 no-repeat;
  width: 29px;
  height: 23px;
}
.icon08 {
  background: url(../images/icon08.png) 0 0 no-repeat;
  width: 24px;
  height: 23px;
}
.icon09 {
  background: url(../images/icon09.png) 0 0 no-repeat;
  width: 20px;
  height: 25px;
}
.icon10 {
  background: url(../images/icon10.png) 0 0 no-repeat;
  width: 30px;
  height: 28px;
}
.icon11 {
  background: url(../images/icon11.png) 0 0 no-repeat;
  width: 39px;
  height: 22px;
}
.icon12 {
  background: url(../images/icon12.png) 0 0 no-repeat;
  width: 34px;
  height: 34px;
}
.icon13 {
  background: url(../images/icon13.png) 0 0 no-repeat;
  width: 37px;
  height: 21px;
}
.icon14 {
  background: url(../images/icon14.png) 0 0 no-repeat;
  width: 32px;
  height: 31px;
}
.icon15 {
  background: url(../images/icon15.png) 0 0 no-repeat;
  width: 31px;
  height: 31px;
}
.icon16 {
  background: url(../images/icon16.png) 0 0 no-repeat;
  width: 35px;
  height: 33px;
}
.icon-metro {
  background: url(../images/icon-metro.png) 0 0 no-repeat;
  width: 28px;
  height: 33px;
}
.icon-bus {
  background: url(../images/icon-bus.png) 0 0 no-repeat;
  width: 37px;
  height: 24px;
}
.icon-trolleybus {
  background: url(../images/icon-trolleybus.png) 0 0 no-repeat;
  width: 37px;
  height: 34px;
}
.icon-tramvai {
  background: url(../images/icon-tram.png) 0 0 no-repeat;
  width: 36px;
  height: 28px;
}
.icon-train {
  background: url(../images/icon-train.png) 0 0 no-repeat;
  width: 37px;
  height: 37px;
}
/* Global Header ------------------------ */
/* ------------------------------------------ */
header {
  background: url(../images/bg-header.jpg) 50% 50% no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  height: 100%;
  overflow: hidden;
  padding: 42px 50px;
  color: #fff;
  position: relative;
  font-size: 0;
  text-align: center;
  background-attachment: fixed;
  box-sizing: border-box;
  z-index: 3;
}
header:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(33, 34, 33, 0.9) 0%, rgba(30, 31, 30, 0.9) 10%, rgba(0, 0, 0, 0.45) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(33, 34, 33, 0.9) 0%, rgba(30, 31, 30, 0.9) 10%, rgba(0, 0, 0, 0.45) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(33, 34, 33, 0.9) 0%, rgba(30, 31, 30, 0.9) 10%, rgba(0, 0, 0, 0.45) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3212221', endColorstr='#45000000', GradientType=0);
  /* IE6-9 */
}
header:before {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.btn-menu {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  top: 42px;
  font-family: 'Avenir Next Demi';
  font-size: 18px;
  color: #fff;
  cursor: pointer;
  z-index: 4;
  text-align: center;
  letter-spacing: 1px;
  mix-blend-mode: exclusion;
}
.btn-menu:before {
  content: "";
  background: url(../images/icon-menu.png) 0 0 no-repeat;
  width: 54px;
  height: 25px;
  display: block;
  margin-bottom: 3px;
}
.header-nav {
  display: none;
  position: absolute;
  box-sizing: border-box;
  padding-top: 101px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(10, 10, 10, 0.85);
  z-index: 3;
  text-align: left;
}
.header-nav.active {
  display: block;
}
.header-nav ul {
  float: right;
  width: 290px;
}
.header-nav ul:first-child {
  float: left;
}
.header-nav li {
  line-height: 33px;
  padding-bottom: 1px;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.6) 20%, rgba(255, 255, 255, 0) 0%);
  background-position: bottom;
  background-size: 5px 1px;
  background-repeat: repeat-x;
  font-size: 18px;
  font-family: 'Avenir Next Cyr';
  font-weight: bold;
}
.header-nav a {
  color: #fff;
}
.header-nav a:hover {
  color: #0047d3;
}
.header-nav__holder {
  background: url(../images/menu-arrow.png) 50% 0 no-repeat;
  width: 629px;
  margin: 0 auto;
  overflow: hidden;
  padding-top: 30px;
}
.logo {
  float: left;
  background: url(../images/logo.png) 0 0 no-repeat;
  height: 78px;
  font-size: 20px;
  line-height: 19px;
  position: absolute;
  top: 42px;
  left: 50px;
  z-index: 2;
  font-family: 'Avenir Next Cyr';
  text-align: left;
}
.logo a {
  display: block;
  padding-left: 74px;
  color: #fff;
  text-decoration: none;
}
.header-holder {
  width: 1000px;
  text-align: center;
  position: relative;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
}
.header-holder h1 {
  font-size: 62px;
  line-height: 63px;
  font-family: 'Avenir Next Bold';
  margin-bottom: 25px;
}
.header-holder .slogan {
  font-weight: normal;
  font-style: italic;
  font-size: 34px;
  line-height: 34px;
  display: block;
  letter-spacing: -1px;
  margin-bottom: 15px;
  font-family: 'Lava-Italic';
}
.header-holder p {
  line-height: 30px;
}
.header-holder .icon {
  display: block;
  margin: 0 auto 15px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  header {
    height: 968px;
  }
  header .btn-menu {
    top: 38px;
    right: 51px;
    left: auto;
    transform: none;
  }
  header .header-nav__holder {
    background: url(../images/menu-arrow2.png) 100% 0 no-repeat;
    width: auto;
    margin: 0 50px;
  }
  header .header-nav ul {
    width: 46%;
  }
  header .header-nav li {
    line-height: 45px;
  }
  header .header-holder {
    padding-top: 200px;
    width: auto;
  }
}
@media (max-width: 767px) {
  header {
    box-sizing: border-box;
    padding: 20px;
  }
  header .logo {
    height: 49px;
    font-size: 12px;
    font-family: 'Avenir Next Demi';
    font-weight: normal;
    line-height: 12px;
    background: url(../images/logo_m.png) 0 0 no-repeat;
    top: 20px;
    left: 20px;
  }
  header .logo a {
    padding-left: 50px;
  }
  header .btn-menu {
    left: auto;
    right: 20px;
    top: 20px;
    transform: none;
  }
  header .btn-menu:before {
    width: 21px;
    height: 16px;
    -webkit-background-size: cover;
    background-size: cover;
  }
  header .btn-menu span {
    display: none;
  }
  header .header-holder {
    width: auto;
    padding-top: 70px;
  }
  header .header-holder h1 {
    font-size: 32px;
    line-height: 35px;
    margin-bottom: 15px;
  }
  header .header-holder .slogan {
    font-size: 20px;
    line-height: normal;
  }
  header .header-holder .icon {
    display: none;
  }
  header .header-holder p {
    line-height: normal;
    font-size: 16px;
  }
  header .header-nav {
    padding-top: 45px;
    height: 100%;
  }
  header .header-nav__holder {
    background: none;
    padding: 0 20px;
    width: auto;
  }
  header .header-nav__holder ul {
    float: none !important;
    width: auto;
  }
  header .header-nav__holder li {
    font-size: 15px;
    line-height: 25px;
    font-family: 'Avenir Next Cyr';
  }
}
@media (min-width: 1900px) {
  header {
    padding-left: 227px;
    padding-right: 227px;
  }
  .logo {
    left: 227px;
    background: url(../images/logo_b.png) 0 0 no-repeat;
    height: 98px;
    font-size: 25px;
    line-height: 23px;
  }
  .logo a {
    padding-left: 100px;
  }
  .btn-menu {
    font-size: 25px;
  }
  .btn-menu:before {
    background: url(../images/icon-menu2.png) 0 0 no-repeat;
    width: 79px;
    height: 33px;
  }
  .header-holder {
    padding-top: 202px;
  }
  .header-holder h1 {
    font-size: 82px;
    line-height: 82px;
    margin-bottom: 40px;
  }
  .header-holder .slogan {
    font-size: 44px;
    line-height: 47px;
    margin-bottom: 20px;
  }
  .header-holder .icon {
    background: url(../images/icon-clock2.png) 0 0 no-repeat;
    width: 83px;
    height: 83px;
  }
  .header-nav {
    padding-top: 120px;
  }
  .header-nav ul {
    width: 46%;
  }
  .header-nav li {
    font-size: 26px;
    line-height: 50px;
    padding: 4px 0;
  }
  .header-nav__holder {
    width: 856px;
  }
}
/* Global Footer ---------------------------- */
/* ------------------------------------------ */
/* Common Styling ------------------------ */
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
html,
body {
  height: 100%;
}
body {
  font-size: 20px;
  font-family: 'Lava';
  background: #fff;
  color: #292929;
}
a {
  text-decoration: none;
}
.btn-up {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: url(../images/btn-next2.png) 0 0 no-repeat;
  width: 61px;
  height: 61px;
  text-indent: -9999px;
  overflow: hidden;
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  z-index: 2;
}
article {
  padding: 74px 0 110px;
}
.container {
  width: 846px;
  margin: 0 auto;
}
.container:after {
  content: "";
  display: block;
  clear: both;
}
#fullpage {
  width: 100%;
  overflow: hidden;
}
body {
  height: 100%;
}
body #fullpage > * {
  box-sizing: border-box;
}
body > * {
  box-sizing: border-box;
  min-height: 100%;
}
body h2 {
  text-align: center;
  font-family: 'Avenir Next Bold';
  font-size: 62px;
  margin-bottom: 70px;
}
body h3 {
  font-size: 32px;
  margin-bottom: 50px;
  font-family: 'Avenir Next Cyr';
  font-weight: normal;
  text-align: center;
}
body h3 b {
  font-family: 'Avenir Next Heavy';
}
body p {
  line-height: 30px;
  margin-bottom: 30px;
}
.visual-info {
  width: 100%;
  overflow: hidden;
  margin-bottom: 30px;
}
.visual-info .visual-info__visual {
  float: left;
  margin-right: 40px;
}
.visual-info .visual-info__visual img {
  display: block;
  max-width: 100%;
  height: auto;
}
.visual-info .visual-info__info {
  overflow: hidden;
}
.blue {
  color: #004cd3;
}
.white {
  color: #fff !important;
}
.yellow {
  color: #af8d00 !important;
}
.align-left {
  text-align: left !important;
}
.align-center {
  text-align: center !important;
}
.align-right {
  text-align: right;
}
.align-justify {
  text-align: justify;
}
.show-on-mobile {
  display: none;
}
.h-mb-0 {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .container {
    width: auto;
    padding: 0 50px;
  }
  .visual-info .visual-info__visual {
    width: 45%;
  }
}
@media (max-width: 767px) {
  .show-on-mobile {
    display: block;
  }
  .hide-on-mobile {
    display: none;
  }
  .section {
    height: 480px;
  }
  .section.auto-height,
  .section.fp-height-auto {
    height: auto;
  }
  body {
    font-size: 16px;
  }
  body h2 {
    font-size: 28px;
    margin-bottom: 20px;
  }
  body h3 {
    font-size: 20px;
    margin-bottom: 15px;
  }
  body p {
    margin-bottom: 20px;
    line-height: 20px;
    font-size: 16px;
  }
  .container {
    width: auto;
    padding: 20px;
  }
  article {
    padding: 25px 0;
  }
  .visual-info .visual-info__visual {
    float: none;
    margin: 0 0 20px;
  }
}
@media (min-width: 1900px) {
  body h2 {
    font-size: 82px;
    line-height: 85px;
  }
  body h3 {
    font-size: 38px;
  }
  body p {
    font-size: 26px;
    line-height: 36px;
  }
  div.container {
    width: 1064px;
    padding: 0;
  }
  .wide_fs_38 {
    font-size: 38px !important;
  }
  .wide_fs_52 {
    font-size: 52px !important;
  }
  .wide_w_1064 {
    width: 1064px !important;
  }
}
/* Homepage Specific Styling ------------------------ */
/* ------------------------------------------------- */
.preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.85);
  z-index: 999;
}
.preloader.hidden {
  display: none;
}
.preloader .preIco {
  background: url(../images/Preloader.png) center center no-repeat;
  width: 152px;
  height: 152px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -76px;
  margin-left: -76px;
}
.about {
  height: 100%;
  font-size: 0;
  text-align: center;
  padding: 0;
}
.about:after {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.about .container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  font-size: 18px;
}
.about .citata:after {
  content: "";
  display: block;
  clear: both;
}
.about .citata img {
  float: left;
  margin: 5px 40px 20px 0;
}
.about .citata p {
  margin: 0;
}
.image-mask {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  box-shadow: inset 0 0 10vw 0 #000000;
}
.image-mask span {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0;
  background: #000;
}
.interactive-map {
  background: url(../images/bg-interactive.jpg) 50% no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  text-align: center;
  color: #fff;
  padding: 0;
  position: relative;
  font-size: 0;
  height: 100%;
  box-shadow: inset 0 0 10vw 0 rgba(0, 0, 0, 0.85);
}
.interactive-map:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.65);
}
.interactive-map:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.interactive-map .container {
  position: relative;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
}
.interactive-map h2 {
  margin-bottom: 62px;
}
.interactive-map p {
  font-size: 42px;
  line-height: 48px;
  font-family: 'Avenir Next Cyr';
  margin-bottom: 45px;
}
.short-info {
  padding: 0;
  text-align: center;
  font-size: 0;
}
.short-info.short-info_type_stations-plans {
  font-size: 0;
}
.short-info:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.short-info .container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  font-size: 18px;
}
.short-info.short-info_pv_30 {
  padding: 30px 0;
}
.short-info:after {
  content: "";
  display: block;
  clear: both;
}
.short-info p {
  font-size: 18px;
}
.short-info h4 {
  text-align: center;
  color: #af8d00;
  font-size: 32px;
  font-weight: normal;
  font-style: italic;
  margin-bottom: 40px;
}
.short-info .aside {
  float: right;
  width: 364px;
  padding-top: 40px;
  margin-left: 30px;
}
.short-info .aside.aside_pt_0 {
  padding-top: 0;
}
.short-info .aside.aside_type_equal {
  width: 45%;
}
.short-info .box {
  height: 273px;
  padding: 20px 0 0 45px;
}
.short-info .box.box_theme_grey {
  background: #292929;
  color: #fff;
  padding-top: 40px;
}
.short-info .count {
  font-size: 136px;
  display: block;
  margin-bottom: 5px;
  width: 100%;
  position: relative;
}
.short-info .count:after {
  display: block;
  content: "";
  clear: both;
}
.short-info .count .number {
  float: left;
}
.short-info .count .description {
  font-size: 40px;
  line-height: 32px;
  text-align: right;
  display: block;
  overflow: hidden;
  text-align: left;
  padding: 80px 0 10px;
}
.short-info .count .description span {
  font-size: 18px;
}
.short-info .text-holder {
  overflow: hidden;
}
.short-info .text-holder.text-holder_type_first {
  float: left;
  width: 50%;
  margin-right: 30px;
  margin-top: 80px;
}
.short-info .text-holder.text-holder_type_first + .aside {
  float: none;
  overflow: hidden;
  margin-left: 0;
}
.short-info .text-holder .count {
  line-height: 150px;
}
.short-info .text-holder p {
  margin-bottom: 0;
}
.short-info .station-list {
  padding-left: 85px;
  font-family: 'Lava-Bold';
  font-size: 36px;
  line-height: 40px;
  list-style: none;
  padding-top: 10px;
}
.short-info .station-list span {
  display: block;
}
.short-info .station-list.station-list_type_2 {
  padding-left: 0;
  letter-spacing: -1px;
}
.short-info .station-list.station-list_type_2 li {
  margin-top: 14px;
}
.short-info .station-list.station-list_type_2 li img {
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 90%;
  height: auto;
}
.advantages {
  padding: 0;
  background: #e6e7e8;
}
.advantages .container {
  position: relative;
  height: 100%;
}
.advantages h2 {
  padding: 74px 0 70px;
  background: #fff;
  margin-bottom: 0;
}
.advantages .holder {
  position: relative;
  overflow: hidden;
  padding: 70px 0 0;
  height: calc(100% - 229px);
  box-sizing: border-box;
}
.advantages .holder:before {
  content: "";
  background: #fff;
  position: absolute;
  top: 0;
  width: 100%;
  padding: 0 0;
  height: 60px;
  background: url(../images/bg-advantages.gif) 0 0 no-repeat;
  background-size: 100% 100%;
}
.advantages .circle {
  position: absolute;
  border: 1px solid #434244;
  border-radius: 100%;
  width: 14px;
  height: 14px;
  top: 17px;
  left: 10.1%;
  background: #e6e7e8;
}
.advantages .circle2 {
  top: 35px;
  left: 21%;
}
.advantages .circle3 {
  top: 49px;
  left: 39%;
}
.advantages .circle4 {
  left: auto;
  top: 49px;
  right: 39%;
}
.advantages .circle5 {
  top: 35px;
  left: auto;
  right: 21%;
}
.advantages .circle6 {
  top: 0;
  left: auto;
  right: 1.3%;
}
.advantages .item {
  text-align: center;
  float: left;
  width: 33.3%;
  padding-top: 145px;
}
.advantages .item:nth-child(2) {
  padding-top: 0;
}
.advantages .frame {
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.map {
  position: relative;
  min-height: 0;
}
.map .in {
  height: 100%;
  background: url(../images/in/mck_animation_IN_0000.jpg) 0 0 no-repeat;
  background-position: 50% 0 !important;
  -webkit-background-size: cover !important;
  background-size: cover !important;
}
.map .circle {
  height: 100%;
  width: 100%;
  background-position: 50% 0 !important;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-background-size: cover !important;
  background-size: cover !important;
}
.map img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}
.map .warning {
  display: none;
  font-size: 26px;
  line-height: normal;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 50%;
  padding: 20px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+25,ffffff+100&1+25,0+100 */
  background: -moz-linear-gradient(top, #ffffff 25%, rgba(255, 255, 255, 0) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 25%, rgba(255, 255, 255, 0) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 25%, rgba(255, 255, 255, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
  /* IE6-9 */
  font-family: 'Avenir Next Cyr';
}
.map .loading {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.85);
  z-index: 4;
  display: none;
}
.map .loading span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 400px;
  padding: 3px;
  border: 2px solid #ed1c24;
  transform: translate(-50%, -50%);
}
.map .loading .loading__line {
  float: left;
  height: 20px;
  background: #ed1c24;
}
.map .station-holder {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 917px;
  height: 716px;
  margin-top: -358px;
  margin-left: -458px;
  transform: translate(-50%, -50%);
}
.map.active .station {
  display: block;
}
.map .station {
  position: absolute;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
  z-index: 5;
  margin: -10px 0 0 -7px;
  width: 40px;
  height: 40px;
  display: none;
}
.map .station4 {
  left: 31px;
  top: 132px;
}
.map .station3 {
  left: 104px;
  top: 79px;
}
.map .station2 {
  left: 222px;
  top: 30px;
}
.map .station1 {
  left: 299px;
  top: 16px;
}
.map .station31 {
  left: 355px;
  top: 14px;
}
.map .station30 {
  left: 506px;
  top: 1px;
}
.map .station29 {
  right: 286px;
  top: 14px;
}
.map .station28 {
  right: 181px;
  top: 40px;
}
.map .station27 {
  right: 78px;
  top: 74px;
}
.map .station26 {
  right: 26px;
  top: 137px;
}
.map .station25 {
  right: 29px;
  top: 213px;
}
.map .station24 {
  right: 12px;
  top: 288px;
}
.map .station23 {
  right: 0;
  top: 344px;
}
.map .station22 {
  right: 36px;
  bottom: 271px;
}
.map .station21 {
  right: 55px;
  bottom: 222px;
}
.map .station20 {
  right: 99px;
  bottom: 171px;
}
.map .station19 {
  right: 176px;
  bottom: 138px;
}
.map .station18 {
  right: 235px;
  bottom: 113px;
}
.map .station17 {
  right: 300px;
  bottom: 76px;
}
.map .station16 {
  right: 349px;
  bottom: 40px;
}
.map .station15 {
  right: 454px;
  bottom: 0;
}
.map .station14 {
  left: 337px;
  bottom: 7px;
}
.map .station13 {
  left: 287px;
  bottom: 75px;
}
.map .station12 {
  left: 204px;
  bottom: 130px;
}
.map .station11 {
  left: 124px;
  bottom: 192px;
}
.map .station10 {
  left: 107px;
  bottom: 248px;
}
.map .station9 {
  left: 82px;
  bottom: 290px;
}
.map .station8 {
  left: 41px;
  top: 334px;
}
.map .station7 {
  left: 34px;
  top: 274px;
}
.map .station6 {
  left: 22px;
  top: 234px;
}
.map .station5 {
  left: 0;
  top: 201px;
}
.map .map-popup__info {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
}
.map .map-popup {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.65);
  z-index: 10;
  overflow: hidden;
  display: none;
}
.map .map-popup .close {
  position: absolute;
  z-index: 10;
  top: 14px;
  right: 20px;
  background: url(../images/btn-close.png) 0 0 no-repeat;
  width: 78px;
  height: 77px;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
}
.map .map-popup__text-holder {
  float: left;
  width: 75%;
  box-sizing: border-box;
  padding: 20px;
  color: #fff;
  text-align: left;
}
.map .map-popup__text-holder p {
  font-size: 16px;
  line-height: normal;
  font-family: 'Avenir Next Cyr';
  margin: 0 0 20px;
}
.map .map-popup__text-holder h2 {
  font-family: 'Lava-Italic';
  text-align: left;
  font-weight: normal;
}
.map .map-popup__part {
  position: absolute;
  left: 75%;
  width: 25%;
  height: 100%;
  background: url(../images/btn-next2.png) no-repeat;
  background-position: calc(100% - 20px) 50%;
  cursor: pointer;
}
.map .definition {
  margin: 0 0 17px;
  width: 100%;
  overflow: hidden;
  font-size: 16px;
}
.map .definition dt {
  float: left;
  width: 145px;
  font-family: 'Lava-Bold';
  padding-top: 21px;
}
.map .definition dt:first-child {
  padding-top: 0;
}
.map .definition dt:first-child + dd {
  padding-top: 0;
}
.map .definition dd {
  overflow: hidden;
  margin: 0;
  padding: 21px 0 0 7px;
  border-left: 1px dotted #fff;
}
.map .definition p {
  margin: 0;
}
.map .definition table {
  font-family: 'Avenir Next Cyr';
}
.map .definition table td {
  padding: 0 10px 4px 0;
}
.map .definition table td:last-child {
  width: 100px;
}
.map .transport {
  list-style: none;
}
.map .transport li {
  overflow: hidden;
  margin-bottom: 10px;
}
.map .transport .icon-holder {
  width: 37px;
  margin-right: 6px;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}
.map .transport p {
  display: inline-block;
  vertical-align: middle;
  width: calc(100% - 60px);
}
.map .transport p b {
  font-family: 'LavaHeavy';
}
.map .popup-gallery {
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  overflow: hidden;
  transform: translate(75%, 0);
  -webkit-transition: 1s;
  /* For Safari 3.1 to 6.0 */
  transition: 1s;
}
.map .popup-gallery .btn-info {
  height: 100%;
  position: absolute;
  cursor: pointer;
  left: 0;
  top: 0;
  z-index: 4;
  width: 136px;
  background: url(../images/mck_map_no_train.jpg) calc(100% - 96px) 0 no-repeat;
  -webkit-transition: 1s;
  /* For Safari 3.1 to 6.0 */
  transition: 1s;
  display: none;
}
.map .popup-gallery .btn-info:hover {
  background-position: 100% 0;
}
.map .popup-gallery .btn-info:hover:after {
  left: 0;
}
.map .popup-gallery .btn-info:after {
  content: "";
  position: absolute;
  left: -96px;
  top: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.65);
  -webkit-transition: 1s;
  /* For Safari 3.1 to 6.0 */
  transition: 1s;
}
.map .popup-gallery.active {
  z-index: 5;
  transform: translate(0, 0);
}
.map .popup-gallery.active .btn-prev {
  display: block;
}
.map .popup-gallery.active .btn-info {
  display: block;
}
.map .popup-gallery .btn-prev,
.map .popup-gallery .btn-next {
  position: absolute;
  top: 50%;
  left: 20px;
  background: url(../images/btn-prev2.png) 0 0 no-repeat;
  width: 61px;
  height: 61px;
  margin-top: -30px;
  z-index: 5;
  cursor: pointer;
  display: none;
}
.map .popup-gallery .btn-next {
  background: url(../images/btn-next2.png) 0 0 no-repeat;
  left: auto;
  right: 20px;
  display: block;
}
.map .popup-gallery ul {
  float: left;
  width: 99999px;
  list-style: none;
  height: 100%;
}
.map .popup-gallery li {
  float: left;
  -webkit-background-size: cover !important;
  background-size: cover !important;
  background-position: 50% 50% !important;
  height: 100%;
}
.map .popup-gallery .img01 {
  background: url(../images/22-TPU/1.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img02 {
  background: url(../images/22-TPU/2.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img03 {
  background: url(../images/22-TPU/3.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img011 {
  background: url(../images/22-TPU/011.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img012 {
  background: url(../images/22-TPU/012.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img013 {
  background: url(../images/22-TPU/013.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img021 {
  background: url(../images/22-TPU/021.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img031 {
  background: url(../images/22-TPU/031.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img032 {
  background: url(../images/22-TPU/032.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img033 {
  background: url(../images/22-TPU/033.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img034 {
  background: url(../images/22-TPU/034.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img035 {
  background: url(../images/22-TPU/035.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img081 {
  background: url(../images/22-TPU/081.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img082 {
  background: url(../images/22-TPU/082.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img083 {
  background: url(../images/22-TPU/083.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img091 {
  background: url(../images/22-TPU/091.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img092 {
  background: url(../images/22-TPU/092.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img101 {
  background: url(../images/22-TPU/101.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img102 {
  background: url(../images/22-TPU/102.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img103 {
  background: url(../images/22-TPU/103.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img104 {
  background: url(../images/22-TPU/104.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img105 {
  background: url(../images/22-TPU/105.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img106 {
  background: url(../images/22-TPU/106.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img161 {
  background: url(../images/22-TPU/161.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img162 {
  background: url(../images/22-TPU/162.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img163 {
  background: url(../images/22-TPU/163.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img164 {
  background: url(../images/22-TPU/164.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img165 {
  background: url(../images/22-TPU/165.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img171 {
  background: url(../images/22-TPU/171.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img172 {
  background: url(../images/22-TPU/172.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img173 {
  background: url(../images/22-TPU/173.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img181 {
  background: url(../images/22-TPU/181.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img182 {
  background: url(../images/22-TPU/182.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img183 {
  background: url(../images/22-TPU/183.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img201 {
  background: url(../images/22-TPU/201.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img202 {
  background: url(../images/22-TPU/202.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img221 {
  background: url(../images/22-TPU/221.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img222 {
  background: url(../images/22-TPU/222.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img223 {
  background: url(../images/22-TPU/223.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img241 {
  background: url(../images/22-TPU/241.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img242 {
  background: url(../images/22-TPU/242.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img243 {
  background: url(../images/22-TPU/243.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img251 {
  background: url(../images/22-TPU/251.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img252 {
  background: url(../images/22-TPU/252.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img253 {
  background: url(../images/22-TPU/253.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img261 {
  background: url(../images/22-TPU/261.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img262 {
  background: url(../images/22-TPU/262.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img263 {
  background: url(../images/22-TPU/263.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img311 {
  background: url(../images/22-TPU/311.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img312 {
  background: url(../images/22-TPU/312.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img313 {
  background: url(../images/22-TPU/313.jpg) 0 0 no-repeat;
}
.map .popup-gallery .img314 {
  background: url(../images/22-TPU/314.jpg) 0 0 no-repeat;
}
.metro-map {
  padding: 30px 0;
  height: 100%;
  font-size: 0;
  text-align: center;
}
.metro-map:after {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.metro-map .container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}
.metro-map .visual {
  float: left;
  width: 550px;
  max-width: 100%;
}
.metro-map .visual img {
  max-width: 100%;
  display: block;
  max-height: 100%;
  height: auto;
}
.metro-map p {
  overflow: hidden;
  font-family: 'Lava-Bold';
  font-size: 38px;
  line-height: 46px;
  line-height: normal;
  transform: translate(0, 40%);
  margin-bottom: 0;
}
.metro-map p span {
  font-size: 70px;
  line-height: 46px;
}
.regions-map {
  background: url(../images/bg-regions.jpg) 50% 0 no-repeat;
  background-size: cover;
  padding: 0;
  height: 546px;
  border: solid #abacab;
  border-width: 1px 0;
  padding-top: 54px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}
.regions-map .circle {
  width: 474px;
  height: 474px;
  margin: 0 auto;
  border: 2px solid #ed1c24;
  border-radius: 100%;
  padding: 6px;
  box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.regions-map .holder {
  width: 100%;
  height: 100%;
  border: 2px solid #ed1c24;
  border-radius: 100%;
  box-sizing: border-box;
  padding: 0 50px;
  font-size: 0;
}
.regions-map .holder p {
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  font-size: 32px;
  line-height: normal;
  margin: 0;
}
.regions-map .holder p span {
  color: #004cd3;
  font-family: 'Lava-Bold';
}
.regions-map .holder:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.regions-map .point {
  border: 2px solid #ed1c24;
  border-radius: 100%;
  width: 13px;
  height: 13px;
  background: #fff;
  position: absolute;
}
.regions-map .point:hover {
  background: #004cd3;
}
.regions-map .point1 {
  left: -1px;
  top: 183px;
}
.regions-map .point2 {
  left: 9px;
  top: 144px;
}
.regions-map .point3 {
  left: 27px;
  top: 107px;
}
.regions-map .point4 {
  left: 42px;
  top: 84px;
}
.regions-map .point5 {
  left: 65px;
  top: 60px;
}
.regions-map .point6 {
  left: 120px;
  top: 20px;
}
.regions-map .point7 {
  left: 148px;
  top: 8px;
}
.regions-map .point8 {
  left: 166px;
  top: 1px;
}
.regions-map .point9 {
  left: 185px;
  top: -3px;
}
.regions-map .point10 {
  left: 204px;
  top: -6px;
}
.regions-map .point11 {
  right: 162px;
  top: 2px;
}
.regions-map .point12 {
  right: 111px;
  top: 24px;
}
.regions-map .point13 {
  right: 89px;
  top: 37px;
}
.regions-map .point14 {
  right: 71px;
  top: 53px;
}
.regions-map .point15 {
  right: 143px;
  top: 10px;
}
.regions-map .point16 {
  right: 10px;
  top: 143px;
}
.regions-map .point17 {
  right: -2px;
  top: 181px;
}
.regions-map .point18 {
  right: -5px;
  top: 246px;
}
.regions-map .point19 {
  right: -2px;
  top: 269px;
}
.regions-map .point20 {
  right: 3px;
  top: 291px;
}
.regions-map .point21 {
  right: 11px;
  top: 314px;
}
.regions-map .point22 {
  right: 48px;
  top: 374px;
}
.regions-map .point23 {
  right: 73px;
  top: 401px;
}
.regions-map .point24 {
  right: 100px;
  top: 421px;
}
.regions-map .point25 {
  right: 137px;
  top: 440px;
}
.regions-map .point26 {
  right: 166px;
  top: 449px;
}
.regions-map .point27 {
  right: 73px;
  top: 401px;
}
.regions-map .point28 {
  right: 226px;
  top: 458px;
}
.regions-map .point29 {
  right: 281px;
  top: 451px;
}
.regions-map .point30 {
  left: 59px;
  top: 385px;
}
.regions-map .point31 {
  left: 0;
  top: 273px;
}
.announcement {
  padding-bottom: 74px;
  height: 100%;
  font-size: 0;
  text-align: center;
  width: 100%;
  overflow: hidden;
}
.announcement:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.announcement .container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}
.announcement .container p {
  font-size: 20px;
}
.announcement .holder {
  width: 100%;
  margin-bottom: 50px;
}
.announcement .holder:after {
  content: "";
  display: block;
  clear: both;
}
.announcement .column {
  float: left;
  width: 50%;
  box-sizing: border-box;
  font-family: 'Avenir Next Bold';
}
.announcement .column:last-child {
  padding-left: 30px;
  border-left: 15px solid #004cd3;
  font-family: 'LavaHeavy';
  font-size: 34px;
}
.announcement .column:last-child p {
  line-height: normal;
  font-size: 34px;
}
.announcement .column p {
  margin: 0;
  line-height: 1.5em;
  font-size: 28px;
}
.announcement .info {
  display: block;
  font-size: 42px;
  text-align: center;
  font-family: 'Avenir Next Cyr';
}
.announcement .info span {
  font-family: 'LavaHeavy';
  color: #004cd3;
}
.video-box {
  height: 100%;
  overflow: hidden;
  position: relative;
}
.video-box.video-box_1 {
  background: url(../images/img01.jpg) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.video-box.video-box_2 {
  background: url(../images/img02.jpg) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.video-box.video-box_2:before,
.video-box.video-box_2:after {
  display: none;
}
.video-box.video-box_3 {
  background: url(../images/img-train3.jpg) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.video-box.video-box_3:before,
.video-box.video-box_3:after {
  display: none;
}
.video-box:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../images/video-mask.png);
  z-index: 2;
}
.video-box:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../images/video-mask2.png);
}
.video-box.video-box__type_2:before {
  background: rgba(0, 0, 0, 0.5);
}
.video-box.video-box__type_2:after {
  display: none;
}
.video-box .video-box__text {
  color: #fff;
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  padding: 0 40px;
  width: 100%;
  transform: translate(0, -50%);
  text-align: center;
}
.video-box .video-box__text p {
  position: static;
  transform: none;
  font-size: 78px;
  line-height: normal;
  padding: 0;
  margin: 0 0 30px;
}
.video-box .video-box__text p.small {
  font-size: 32px;
  font-family: 'Avenir Next Cyr';
}
.video-box p {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  padding: 0 130px;
  width: 100%;
  transform: translate(0, -50%);
  text-align: center;
  z-index: 3;
  font-size: 62px;
  font-family: 'Avenir Next Bold';
  line-height: 1em;
  margin: 0;
}
.video-box img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
}
.video-box video {
  max-width: 100%;
  display: block;
  height: auto;
  width: 100%;
}
.video-box .video-text-change {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 900px;
  z-index: 3;
}
.video-box .video-text-change p {
  padding: 0;
}
.lines-info {
  font-size: 0;
  margin: 0;
  text-align: center;
  font-family: 'Avenir Next Cyr';
  height: 100%;
  padding: 0;
}
.lines-info:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.lines-info .container {
  display: inline-block;
  vertical-align: middle;
  font-size: 32px;
}
.lines-info p {
  margin: 0;
  line-height: normal;
}
.lines-info .metro-lines {
  width: 100%;
  overflow: hidden;
  margin-bottom: 60px;
}
.lines-info .metro-lines li {
  float: left;
  width: 43%;
  margin-right: -10%;
}
.lines-info .metro-lines li:nth-child(2) {
  padding-top: 60px;
}
.lines-info .metro-lines img {
  float: left;
  margin-right: 10px;
  max-height: 111px;
}
.lines-info .metro-lines .count {
  float: left;
  font-size: 53px;
  font-family: 'Avenir Next Bold';
  line-height: 110px;
  margin-right: 8px;
}
.lines-info .metro-lines .name {
  overflow: hidden;
  display: block;
  font-size: 20px;
  text-align: left;
  padding: 40px 0 0;
}
.stations {
  padding: 24px 0;
  border-top: 1px solid #acabab;
  width: 100%;
  overflow: hidden;
  text-align: center;
}
.stations:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.stations .container {
  display: inline-block;
  vertical-align: middle;
}
.stations h2 {
  width: 110%;
  margin: 0 -5% 20px;
}
.stations p {
  text-align: center;
  margin-bottom: 10px;
}
.stations .stations-list {
  width: 390px;
  margin: 0 auto;
  position: relative;
  z-index: -1;
}
.stations .stations-list:after {
  content: "";
  clear: both;
  display: block;
}
.stations .stations-list li {
  float: left;
  width: 50%;
  height: 136px;
  position: relative;
}
.stations .stations-list li:nth-child(1),
.stations .stations-list li:nth-child(2) {
  z-index: 2;
}
.stations .stations-list li img {
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 90%;
  height: auto;
}
.stations .stations-list li p {
  position: absolute;
  font-family: 'Avenir Next Cyr';
  text-align: right;
  right: 100%;
  top: 100%;
  margin-right: 10px;
  width: 100%;
}
.stations .stations-list li:nth-child(4) p,
.stations .stations-list li:nth-child(2) p {
  right: auto;
  left: 100%;
  margin: 0 0 0 10px;
  top: auto;
  bottom: 0;
  text-align: left;
}
.stations .with-people {
  background: url(../images/people_final_shag.gif) 50% 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  line-height: 75px;
  margin-bottom: 10px;
}
.passes {
  font-size: 0;
  padding: 0;
  text-align: center;
}
.passes:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.passes .container {
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
}
.passes h2 {
  margin-bottom: 10px;
}
.passes h2.blue {
  text-align: right;
  font-size: 44px;
  font-family: 'Lava';
  margin-bottom: 0;
  font-family: 'LavaHeavy';
}
.passes h2.blue i {
  display: block;
  font-family: 'Lava-Italic';
}
.passes .holder {
  width: 100%;
  overflow: hidden;
  margin: -30px 0 20px;
}
.passes .holder img {
  display: block;
  margin: 0 0 20px auto;
}
.passes .visual {
  float: left;
  margin-right: 10px;
}
.passes .visual img {
  display: block;
}
.passes .text-holder {
  overflow: hidden;
  padding-top: 50px;
  text-align: left;
}
.passes .text-holder p {
  margin: 0;
}
.passes .text-holder p b {
  font-family: 'LavaHeavy';
}
.passes .btn-count {
  width: 250px;
  height: 50px;
  display: block;
  border: 1px dashed #004cd3;
  background: none;
  color: #004cd3;
  font-size: 24px;
  font-family: 'LavaHeavy';
  cursor: pointer;
  margin: 0 0 0 auto;
}
.passes .info {
  display: block;
  text-align: center;
  font-size: 32px;
  font-family: 'Avenir Next Cyr';
  margin-bottom: 25px;
}
.passes .info .big {
  display: block;
  font-size: 42px;
}
.passes .info2 {
  display: block;
  text-align: center;
  font-family: 'Avenir Next Cyr';
  line-height: normal;
  margin-bottom: 35px;
}
.passes .info2 span {
  font-size: 32px;
}
.passes .info2 b {
  font-family: 'Lava-Bold';
}
.passes .pay-list {
  text-align: center;
}
.passes .pay-list li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 30px;
  height: 65px;
}
.passes .pay-list li img {
  display: block;
  max-height: 100%;
  width: auto;
}
#showcase {
  height: 267px;
  margin-bottom: 155px;
  position: relative;
  overflow: visible !important;
  background: url(../images/circle.png) calc(50% + 5px) 100% no-repeat;
  text-align: left;
  margin: 60px auto 0;
  padding-left: 6px;
  max-width: 680px;
}
#showcase .price {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 100%;
  margin-top: 70px;
  font-size: 42px;
  line-height: 42px;
  color: #ed1c24;
  font-family: 'Avenir Next Bold';
  display: none;
}
#showcase dl.price {
  margin: 70px 0 0;
}
#showcase dl.price dt {
  float: left;
  color: #292929;
  font-size: 20px;
}
#showcase dl.price dd {
  margin: 0;
  overflow: hidden;
}
#showcase .cloud9-item:after {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -18px;
  margin-top: 36px;
  content: "";
  border-radius: 100%;
  width: 36px;
  height: 14px;
  border: 2px solid #b6b7b9;
  background: #fff;
}
#showcase .cloud9-item.lred:after {
  background: #fc0d16;
}
#showcase .cloud9-item.lblue:after {
  background: #00aef0;
}
#showcase .active .price {
  display: block;
}
.lastochka {
  padding: 0;
  text-align: center;
  overflow: hidden;
  font-size: 0;
}
.lastochka h2 {
  letter-spacing: -3px;
  width: 112%;
  margin: 0 -6% 35px;
}
.lastochka:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.lastochka .container {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
}
.lastochka .lastochka__img {
  width: 100%;
  max-height: 90%;
  overflow: hidden;
  margin-bottom: 35px;
  position: relative;
  background: url(../images/animation_lastochka_swipe.png) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.lastochka .lastochka__img img {
  display: block;
  max-height: 100%;
  width: auto;
}
.lastochka .tools {
  width: 100%;
  overflow: hidden;
}
.lastochka .tools .column {
  float: left;
  width: 30.333%;
  padding-right: 3%;
  font-family: 'Avenir Next Cyr';
  font-size: 14px;
}
.lastochka .tools .column img {
  display: block;
  margin: 0 auto 10px;
  max-width: 80%;
  width: auto;
  cursor: pointer;
}
.lastochka .tools .column p {
  line-height: normal;
}
.lastochka .tools .tools__items {
  list-style: none;
  padding-top: 10px;
}
.lastochka .tools .tools__items li {
  position: relative;
  padding-left: 43px;
  margin-bottom: 25px;
}
.lastochka .tools .tools__items li .icon {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
}
.lastochka .tools .tools__items li p {
  margin: 0;
  line-height: normal;
}
.safety {
  padding: 30px 0 10px;
  background: #292929;
  color: #fff;
  text-align: center;
}
.safety:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.safety .container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}
.safety .coat {
  display: block;
  text-align: center;
  margin-bottom: 30px;
  background: url(../images/coatOfArms.png) 50% 50% no-repeat;
  width: 75px;
  height: 101px;
  margin: 0 auto;
  -webkit-background-size: cover;
  background-size: cover;
}
.safety .coat img {
  vertical-align: top;
}
.safety .container {
  margin-bottom: 30px;
  border-bottom: 1px solid transparent;
  width: 910px;
}
.safety h3.big {
  font-size: 42px;
}
.nodes {
  padding: 20px 0;
  height: 100%;
  font-size: 0;
  text-align: center;
}
.nodes:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.nodes .container {
  font-size: 18px;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}
.nodes .nodes-list {
  list-style: none;
}
.nodes .nodes-list li {
  width: 33.3%;
  float: left;
  font-size: 32px;
}
.nodes .nodes-list .count {
  font-family: 'Lava';
  font-size: 130px;
}
.nodes p.align-center {
  margin-bottom: 0;
}
.nodes h3 {
  margin-bottom: 0;
}
.history {
  padding: 0;
  background: url(../images/img07.jpg) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  height: 100%;
  position: relative;
}
.history .container {
  position: relative;
  height: 100%;
  max-width: 930px;
}
.history:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../images/bg-gallery-mask.png);
  top: 0;
  left: 0;
}
.history img {
  display: block;
  max-width: 100%;
}
.history h2 {
  position: absolute;
  color: #292929;
  top: 30px;
  left: 20px;
  text-align: left;
  letter-spacing: -4px;
}
.history .text-holder {
  position: absolute;
  z-index: 2;
  height: 100%;
  right: 50px;
  top: 0;
  box-sizing: border-box;
  width: 424px;
  padding: 20px 10px;
  background: rgba(255, 255, 255, 0.8);
  font-size: 0;
  color: #af8d00;
  text-align: center;
}
.history .text-holder p {
  line-height: normal;
  margin: 25px 0;
}
.history .text-holder i {
  color: #292929;
}
.history .text-holder:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.history .text-frame {
  display: inline-block;
  vertical-align: middle;
  font-size: 32px;
}
.start-info {
  background: #af8d00;
  padding: 0;
  font-size: 0;
  position: relative;
  height: 100%;
  text-align: center;
  overflow: hidden;
}
.start-info:after {
  height: 100%;
  content: "";
  display: inline-block;
  vertical-align: middle;
}
.start-info .container {
  padding: 0;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  width: 930px;
  font-size: 0;
}
.start-info .container:before {
  content: "";
  position: absolute;
  border-left: 1px solid #000;
  height: 100%;
  top: 0;
  left: 50%;
}
.start-info .container:after {
  content: "";
  position: absolute;
  border: 1px solid #000;
  width: 18px;
  height: 18px;
  border-radius: 100%;
  left: 50%;
  bottom: 155px;
  margin-left: -9px;
  background: #fff;
}
.start-info .column {
  display: inline-block;
  vertical-align: middle;
  width: 49.5%;
  box-sizing: border-box;
  font-size: 18px;
}
.start-info .column:last-child {
  padding-left: 40px;
  font-family: 'Lava-Bold';
}
.start-info .open-date {
  display: block;
  line-height: 96px;
  position: relative;
}
.start-info .open-date span {
  display: inline-block;
  width: 96px;
  height: 92px;
  border: 2px solid #292929;
  border-radius: 100%;
  text-align: center;
}
.start-info .open-date-name {
  display: block;
  text-align: right;
  font-family: 'Avenir Next Bold';
  font-size: 40px;
  padding-right: 90px;
  margin: -43px 0 20px;
}
.start-info p span {
  color: #292929;
}
.start-info p b {
  font-family: 'LavaHeavy';
}
.start-info .description {
  width: 100%;
  overflow: hidden;
  margin: -45px 0 15px;
  font-size: 26px;
  color: #710e00;
  font-weight: bold;
  font-family: 'Lava-Italic';
}
.start-info .description .box {
  float: right;
  text-align: center;
  width: 204px;
  margin-left: 24px;
  padding: 5px;
  position: relative;
}
.start-info .description .box:before {
  content: "";
  position: absolute;
  top: 0;
  left: -5px;
  width: 46px;
  height: 46px;
  border: solid #710e00;
  border-width: 5px 0 0 5px;
  border-radius: 11px 0 0 0;
}
.start-info .description .box:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -5px;
  width: 46px;
  height: 85px;
  border: solid #292929;
  border-width: 0 0 2px 2px;
  border-radius: 0 0 0 11px;
}
.start-info .description .box p {
  margin: 0 0 10px;
}
.start-info .description .divider {
  margin-bottom: 10px;
  margin: 0 15px;
}
.start-info .description .divider img {
  display: block;
  max-width: 100%;
}
.start-info .description .holder {
  padding-top: 20px;
  overflow: hidden;
  text-align: right;
}
.history-gallery {
  background: #292929;
  padding: 55px 0 35px;
  position: relative;
}
.history-gallery .name {
  display: block;
  color: #af8d00;
  font-family: 'Lava-Italic';
  padding-top: 5px;
  font-size: 20px;
}
.history-gallery .btn-next,
.history-gallery .btn-prev {
  position: absolute;
  cursor: pointer;
  display: none;
  top: 480px;
  right: 20px;
  background: url(../images/btn-next4.png) 0 0 no-repeat;
  width: 40px;
  height: 40px;
  z-index: 5;
}
.history-gallery .btn-prev {
  display: none !important;
  background: url(../images/btn-prev4.png) 0 0 no-repeat;
}
.history-gallery .time-line {
  padding-bottom: 85px;
  position: relative;
  background: url(../images/bg-history.png) 50% 0 no-repeat;
}
.history-gallery .time-line:after {
  content: "";
  border-top: 1px solid #af8d00;
  width: 100%;
  position: absolute;
  left: 0;
  top: 5px;
}
.history-gallery .time-line .container {
  position: relative;
  width: 925px;
  margin: 0 auto;
}
.history-gallery .time-line .point {
  color: #af8d00;
  font-size: 19px;
  font-family: 'Lava-Bold';
  position: absolute;
  top: -1px;
  width: 44px;
  text-align: center;
  z-index: 2;
  cursor: pointer;
}
.history-gallery .time-line .point span {
  position: relative;
  left: 50%;
  width: 200%;
  display: block;
  transform: translate(-50%, 0);
}
.history-gallery .time-line .point:before {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 100%;
  background: #af8d00;
  display: block;
  margin: 0 auto 6px;
}
.history-gallery .time-line .point.active {
  font-size: 37px;
}
.history-gallery .time-line .point.active:before {
  background: url(../images/icon17.png) 0 0 no-repeat;
  width: 20px;
  height: 38px;
  border: 0;
  border-radius: 0;
  margin: -5px auto 0;
}
.history-gallery .time-line .point1 {
  left: 0;
}
.history-gallery .time-line .point2 {
  left: 6.91%;
}
.history-gallery .time-line .point3 {
  left: 17.621%;
}
.history-gallery .time-line .point4 {
  left: 27.027%;
}
.history-gallery .time-line .point5 {
  left: 40.324%;
}
.history-gallery .time-line .point6 {
  left: 48.108%;
}
.history-gallery .time-line .point7 {
  left: 56.9729%;
}
.history-gallery .time-line .point8 {
  left: 63.4524%;
}
.history-gallery .time-line .point8-1 {
  left: 70.4864%;
}
.history-gallery .time-line .point9 {
  left: 77.621%;
}
.history-gallery .time-line .point10 {
  left: 85.83%;
}
.history-gallery .time-line .point11 {
  left: 93.5135%;
}
.history-gallery .container {
  max-width: 925px;
  width: auto;
  margin: 0 50px;
}
.history-gallery ul {
  width: 925px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  height: 420px;
}
.history-gallery ul li {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  font-size: 0;
  display: none;
}
.history-gallery ul li.active {
  display: block;
  z-index: 2;
}
.history-gallery ul li.active .visual img {
  opacity: 1;
}
.history-gallery ul .visual {
  float: left;
  margin-right: 45px;
  padding-top: 10px;
  width: 336px;
}
.history-gallery ul .visual.visual_align_right {
  float: right;
  margin: 0 0 0 45px;
}
.history-gallery ul .visual img {
  max-width: 100%;
  display: block;
  opacity: 0;
  -webkit-transition: 2 s;
  /* For Safari 3.1 to 6.0 */
  transition: 2s;
}
.history-gallery ul .text-holder {
  overflow: hidden;
  color: #fff;
  font-size: 0;
  height: 100%;
}
.history-gallery ul .text-holder:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.history-gallery ul .text-holder:first-child {
  height: 50%;
}
.history-gallery ul .text-holder:first-child + .visual {
  float: none;
  width: auto;
  height: 200px;
}
.history-gallery ul .text-holder:first-child + .visual img {
  max-width: 100%;
}
.history-gallery ul .text-frame {
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
}
.history-gallery ul .text-frame.text-frame_align_top {
  vertical-align: top;
}
.history-gallery ul h4 {
  color: #af8d00;
  text-align: right;
  font-size: 52px;
  line-height: 58px;
  font-family: 'LavaHeavy';
  padding-right: 10px;
}
.history-gallery ul h4 span {
  font-style: normal;
}
.history-gallery ul h5 {
  font-family: 'Lava-Bold';
  font-size: 32px;
  color: #af8d00;
  margin: 10px 0;
}
.history-gallery ul h5 span {
  border-bottom: 1px solid #af8d00;
}
.history-gallery ul h6 {
  font-family: 'Avenir Next Cyr';
  font-size: 32px;
  color: #af8d00;
}
.history-gallery ul p {
  margin: 0;
  line-height: 1.5em;
}
.gallery-holder {
  overflow: hidden;
  position: relative;
  height: 100%;
}
.gallery-holder .btn-next,
.gallery-holder .btn-prev {
  position: absolute;
  z-index: 2;
  left: 50px;
  top: 50%;
  background: url(../images/btn-prev.png) 0 0 no-repeat;
  width: 84px;
  height: 84px;
  margin-top: -42px;
  cursor: pointer;
}
.gallery-holder .btn-next {
  left: auto;
  right: 50px;
  background: url(../images/btn-next.png) 0 0 no-repeat;
}
.gallery {
  width: 99999px;
  float: left;
  position: relative;
  z-index: 1;
  height: 100%;
}
.gallery img {
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  height: auto !important;
  display: inline-block;
  vertical-align: middle;
  object-fit: cover;
}
.gallery ul {
  position: relative;
  z-index: 1;
  height: 100%;
}
.gallery li {
  float: left;
  position: relative;
  height: 100%;
  font-size: 0;
  text-align: center;
  -webkit-background-size: cover !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}
.gallery li img {
  display: block;
  opacity: 0;
}
.gallery li:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../images/bg-gallery-mask.png);
  top: 0;
  left: 0;
}
.gallery li:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.gallery .text-holder {
  box-sizing: border-box;
  position: absolute;
  width: 1000px;
  top: 50%;
  left: 50%;
  padding: 0;
  text-align: center;
  color: #fff;
  font-size: 62px;
  font-family: 'Avenir Next Bold';
  z-index: 2;
  transform: translate(-50%, -50%);
}
.gallery .text-holder p {
  line-height: 60px;
  margin: 0 auto 50px;
}
.want-more {
  position: relative;
  background: url(../images/bg-more.jpg) 0 50% no-repeat;
  text-align: center;
  padding-left: 500px;
  font-size: 0;
}
.want-more:after {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.want-more p {
  display: inline-block;
  vertical-align: middle;
  font-size: 52px;
  line-height: normal;
  font-family: 'Lava-Italic';
  text-align: left;
  margin: 0;
}
.want-more a {
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .regions-map .circle {
    transform: matrix(1.4, 0, 0, 1.4, -224, -220);
  }
  .lines-info {
    font-size: 0;
  }
  .lines-info .container {
    font-size: 20px;
  }
  .map .warning {
    display: block;
  }
  .interactive-map {
    padding-top: 40px;
    height: 600px;
    box-sizing: border-box;
  }
  .short-info {
    padding-bottom: 30px;
    font-size: 0;
  }
  .short-info .station-list {
    padding-left: 0;
    font-size: 30px;
  }
  .short-info .box {
    width: 325px;
    box-sizing: border-box;
    padding: 0 0 20px 10px;
    height: auto;
  }
  .short-info .text-holder.text-holder_type_first {
    width: 345px;
    margin-right: 10px;
  }
  .short-info .text-holder.text-holder_type_first + .aside {
    width: auto;
  }
  .short-info .aside {
    width: 325px;
  }
  .short-info .aside .box p {
    margin-bottom: 0;
  }
  .short-info .aside .box {
    margin-bottom: 60px;
  }
  .short-info .count {
    font-size: 115px;
  }
  .short-info .count .description span {
    display: block;
  }
  .gallery-holder {
    width: 100%;
  }
  .gallery li {
    height: 100%;
  }
  .gallery .text-holder {
    max-width: 100%;
    transform: translate(-50%, -100%);
  }
  .gallery .text-holder p {
    margin: 0 90px 40px;
    font-size: 42px;
    line-height: normal;
  }
  .advantages .item {
    padding-top: 10px;
  }
  .advantages .item:nth-child(2) {
    padding-top: 145px;
  }
  .metro-map .visual {
    width: auto;
    float: none;
    margin: 0 20px 30px;
  }
  .metro-map p {
    transform: none;
    text-align: center;
  }
  .video-box .video-text-change {
    width: 100%;
  }
  .video-box video {
    height: 100%;
  }
  .video-box .video-box__holder p {
    font-size: 40px;
  }
  .passes {
    font-size: 0;
  }
  .passes .visual {
    float: none;
    margin: 0 0 20px;
  }
  .passes .btn-count,
  .passes .holder img {
    margin: 0 auto 20px;
  }
  #showcase .cloud9-item {
    padding-top: 110px;
  }
  #showcase .cloud9-item img {
    width: 65%;
    height: 65%;
    margin: 0 auto;
    display: block;
  }
  .lastochka {
    font-size: 0;
  }
  .lastochka h2 {
    width: 118%;
    margin: 0 -9% 20px;
    letter-spacing: -1px;
  }
  .lastochka .container {
    font-size: 20px;
  }
  .lastochka .tools {
    position: relative;
    padding-bottom: 300px;
  }
  .lastochka .tools .tools__items li {
    margin-bottom: 20px;
  }
  .lastochka .tools .column {
    width: 50%;
  }
  .lastochka .tools .column:nth-child(2) {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0;
  }
  .lastochka .tools .column:nth-child(2) p {
    padding-top: 120px;
    overflow: hidden;
  }
  .lastochka .tools .column img {
    float: left;
    margin: 0 20px 0 0;
    max-width: 45%;
  }
  .safety .container {
    width: auto;
  }
  .history h2 {
    left: 50px;
  }
  .history img {
    width: 200%;
    height: auto;
    max-width: none;
  }
  .history .container {
    padding: 0 50px;
    width: auto;
  }
  .history .text-holder {
    height: auto;
    top: 350px;
    bottom: 0;
  }
  .history-gallery .time-line {
    padding-left: 50px;
    padding-right: 50px;
  }
  .history-gallery .time-line .container {
    width: auto;
  }
  .history-gallery ul {
    height: 550px;
  }
  .history-gallery ul li {
    padding: 0 50px;
  }
  .history-gallery ul .text-holder {
    height: calc(100% - 50px);
  }
  .history-gallery ul .visual {
    padding: 20px 0 10px;
  }
  .history-gallery ul h4 {
    font-size: 32px;
    line-height: normal;
  }
  .start-info .container {
    padding: 40px 100px 40px 90px;
    width: auto;
  }
  .start-info .container:after,
  .start-info .container:before {
    left: auto;
    right: 90px;
  }
  .start-info .container:after {
    right: 81px;
    top: 50%;
  }
  .start-info .column {
    float: none;
    width: auto;
  }
  .start-info .column:first-child {
    text-align: center;
  }
  .start-info .column:last-child {
    padding-left: 0;
  }
  .start-info .description {
    width: 450px;
    margin: 0 auto 50px;
  }
  .stations h2 {
    font-size: 50px;
  }
  .want-more {
    background-position: -150px 50%;
    padding-left: 350px;
  }
}
@media (max-width: 767px) {
  .about .citata img {
    float: none;
    width: 100%;
    margin-right: 0;
    height: auto;
  }
  .advantages {
    height: auto;
  }
  .advantages .holder {
    height: auto;
  }
  .advantages .frame {
    position: static;
    transform: none;
  }
  .advantages .container {
    height: auto;
  }
  .gallery .text-holder {
    width: 100%;
  }
  .gallery .text-holder p {
    font-size: 22px;
    line-height: normal;
    margin: 0 20px 20px;
  }
  .gallery-holder {
    width: 100%;
    height: 480px;
  }
  .gallery-holder .btn-prev,
  .gallery-holder .btn-next {
    background: url(../images/btn-next4.png) 0 0 no-repeat;
    width: 40px;
    height: 40px;
    right: 20px;
    top: 80%;
    display: block;
  }
  .gallery-holder .btn-prev {
    background: url(../images/btn-prev4.png) 0 0 no-repeat;
    right: auto;
    left: 20px;
  }
  .gallery-holder li {
    width: 320px;
    height: 100%;
  }
  .metro-map .visual {
    float: none;
    width: auto;
    margin-bottom: 20px;
  }
  .metro-map p {
    transform: none;
    font-size: 26px;
    text-align: center;
  }
  .metro-map p span {
    font-size: 26px;
    line-height: normal;
  }
  .interactive-map {
    height: 480px;
    box-sizing: border-box;
    padding: 25px 0;
  }
  .interactive-map p {
    font-size: 26px;
    line-height: normal;
  }
  .map .warning {
    display: block;
  }
  .map p {
    display: block;
  }
  .history {
    height: 480px;
    margin: 0 0 480px;
    border-top: 1px solid transparent;
  }
  .history .container {
    width: 100%;
    position: static;
  }
  .history h2 {
    left: 20px;
  }
  .history .text-holder {
    margin-top: 480px;
  }
  .want-more {
    padding: 20px;
  }
  .want-more p {
    font-size: 32px;
    font-weight: bold;
    color: #fff;
    text-shadow: 1px 1px 1px #000000;
  }
  .short-info {
    font-size: 0;
    position: relative;
    padding-top: 20px;
  }
  .short-info img {
    max-width: 100%;
    height: auto;
  }
  .short-info:before {
    display: none;
  }
  .short-info.short-info_type_stations-plans:before {
    display: none;
  }
  .short-info h4 {
    font-size: 20px;
  }
  .short-info .container {
    display: flex;
    flex-direction: column;
    font-size: 16px;
  }
  .short-info .aside {
    float: none;
    width: auto;
    margin: 0 0 20px;
    order: 2;
  }
  .short-info .aside.aside_type_equal {
    width: 100%;
  }
  .short-info .station-list {
    margin-bottom: 20px;
  }
  .short-info .station-list li {
    text-align: center;
    line-height: normal;
  }
  .short-info .station-list span {
    font-size: 20px;
  }
  .short-info.short-info_type_stations-plans .container {
    padding-left: 0;
    padding: 0;
    display: block;
  }
  .short-info.short-info_type_stations-plans .count {
    text-align: center;
    margin-bottom: 30px;
    font-size: 90px;
  }
  .short-info.short-info_type_stations-plans .count:first-child {
    text-align: left;
  }
  .short-info.short-info_type_stations-plans .count:first-child .number {
    float: left;
  }
  .short-info.short-info_type_stations-plans .count:first-child .description {
    position: absolute;
    display: inline;
    bottom: 0;
  }
  .short-info.short-info_type_stations-plans .count .number {
    float: none;
  }
  .short-info.short-info_type_stations-plans .count .description {
    position: static;
    display: block;
    padding-top: 0;
    font-size: 36px;
  }
  .short-info.short-info_type_stations-plans .count .description span {
    display: block;
  }
  .short-info.short-info_type_stations-plans .text-holder {
    float: none;
    width: auto;
    padding: 0 20px;
    margin-top: 0;
  }
  .short-info.short-info_type_stations-plans .aside .box {
    height: 235px;
    padding-top: 5px;
  }
  .short-info.short-info_type_stations-plans .aside .number {
    line-height: 136px;
  }
  .short-info.short-info_type_stations-plans .station-list {
    padding-left: 0;
    padding-top: 100px;
    background: url(../images/arrow01.png) 50% 0 no-repeat;
    font-size: 26px;
  }
  .short-info.short-info_type_stations-plans .station-list li {
    margin-bottom: 20px;
  }
  .short-info.short-info_type_stations-plans .station-list span {
    opacity: 1;
    transform: none;
  }
  .advantages .item {
    transform: none;
    opacity: 1;
    padding: 0;
    float: none;
    width: auto;
    margin-bottom: 40px;
  }
  .advantages .holder {
    padding-bottom: 10px;
  }
  .advantages .circle5,
  .advantages .circle4,
  .advantages .circle2 {
    display: none;
  }
  .announcement:after {
    display: none;
  }
  .announcement .container {
    display: block;
  }
  .announcement .holder {
    margin-bottom: 25px;
    background: url(../images/arrow02.png) 100% 60% no-repeat;
  }
  .announcement .column {
    float: none;
    width: auto;
    margin-bottom: 76px;
  }
  .announcement .column:last-child {
    margin-left: -20px;
    font-size: 28px;
    border-left-width: 10px;
  }
  .announcement .column:last-child p {
    margin: 10px 0;
    font-size: 28px;
  }
  .announcement .info {
    font-size: 32px;
    line-height: normal;
    text-align: center;
  }
  .passes {
    height: auto;
  }
  .video-box {
    background: url(../images/bg-video01.jpg) 0 0 no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
  }
  .video-box .video-text-change {
    width: 100%;
    transform: translate(0, 50%);
    left: 0;
  }
  .video-box p {
    font-size: 32px;
  }
  .video-box video {
    opacity: 0;
  }
  .lines-info {
    padding-bottom: 25px;
  }
  .lines-info .metro-lines {
    margin-bottom: 0;
  }
  .lines-info .metro-lines li {
    float: none;
    width: auto;
    overflow: hidden;
    padding: 0 0 30px !important;
  }
  .lines-info .metro-lines .count {
    font-size: 36px;
  }
  .lines-info p {
    font-size: 20px;
  }
  .animated {
    transform: none !important;
    opacity: 1 !important;
  }
  .video-box .video-box__holder .video-box__text p,
  .video-box .video-box__holder p {
    font-size: 12px;
    line-height: normal;
    padding: 0 20px;
  }
  .video-box .video-box__holder .video-box__text p.small,
  .video-box .video-box__holder p.small {
    font-size: 11px;
  }
  .video-box.video-box_2,
  .video-box.video-box_3 {
    height: 480px;
    background-position: 100% 0;
  }
  .stations {
    height: auto;
  }
  .stations .with-people {
    font-size: 20px;
    line-height: normal;
    width: 100%;
    padding: 65px 20px 0;
    margin: 0 -20px 20px;
    background: none;
    position: relative;
  }
  .stations .with-people:after,
  .stations .with-people:before {
    content: "";
    background: url(../images/people_final_shag.gif) 0 0 no-repeat;
    width: 50%;
    position: absolute;
    top: 0;
    left: 0;
    height: 59px;
    -webkit-background-size: cover;
    background-size: cover;
  }
  .stations .with-people:after {
    left: 50%;
    background-position: 100% 0;
  }
  .stations .stations-list {
    width: auto;
    z-index: 0;
    overflow: hidden;
  }
  .stations .stations-list li {
    width: auto;
    float: none;
    position: static;
    height: 190px;
    margin: -60px 0 60px;
  }
  .stations .stations-list li img {
    position: static;
    max-height: 150px;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0 auto;
    display: block;
  }
  .stations .stations-list li p {
    position: static;
    text-align: center !important;
  }
  .regions-map {
    height: 480px;
    font-size: 0;
    padding: 0;
  }
  .regions-map:after {
    content: "";
    display: inline-block;
    height: 100%;
  }
  .regions-map .circle {
    -webkit-transform: translate(-50%, -50%) scale(0.65);
    transform: translate(-50%, -50%) scale(0.65);
    position: absolute;
  }
  .passes h2.blue {
    text-align: left;
    font-size: 32px;
  }
  .passes .holder {
    margin: 10px 0;
  }
  .passes .visual {
    float: none;
    width: 100%;
  }
  .passes .visual img {
    margin: 0;
    max-width: 100%;
    height: auto;
  }
  .passes .text-holder {
    margin-bottom: 40px;
  }
  .passes .info .big,
  .passes .info {
    font-size: 20px;
  }
  .passes #showcase {
    height: auto;
    background: none;
    padding-left: 0;
    margin-bottom: 35px;
  }
  .passes #showcase img {
    max-width: 100%;
  }
  .passes #showcase .cloud9-item {
    margin-bottom: 20px;
  }
  .passes #showcase .cloud9-item:after {
    display: none;
  }
  .passes #showcase .price {
    margin: 10px 0 30px;
    display: block;
    position: static;
  }
  .passes .pay-list li {
    display: block;
    margin-bottom: 20px;
    text-align: center;
  }
  .passes .pay-list li img {
    display: inline-block;
  }
  .lastochka {
    font-size: 16px;
    height: auto;
  }
  .lastochka p {
    line-height: normal;
  }
  .lastochka .lastochka__img {
    height: 230px;
    -webkit-background-size: cover;
    background-size: cover;
    background-position: 0 50%;
  }
  .lastochka .lastochka__img img {
    max-height: 100%;
    height: auto;
    width: auto;
  }
  .lastochka .tools {
    display: flex;
    flex-direction: column;
  }
  .lastochka .tools .column {
    float: none;
    width: auto;
  }
  .lastochka .tools .column:nth-child(2) {
    order: 2;
  }
  .safety {
    height: auto;
  }
  .safety .container {
    width: auto;
  }
  .safety .coat {
    width: 37px;
    height: 50px;
    margin: 0 auto 20px;
  }
  .safety .coat img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .safety h3.big {
    font-size: 26px;
  }
  .nodes p {
    font-size: 16px;
  }
  .nodes .nodes-list li {
    text-align: center;
    width: auto;
    float: none;
  }
  .nodes .nodes-list .count {
    font-size: 98px;
  }
  .nodes h3 {
    font-size: 16px;
    font-family: 'Lava';
  }
  .history .container {
    padding: 0;
  }
  .history .container:after {
    display: none;
  }
  .history .text-holder {
    position: static;
    background: none;
    width: auto;
  }
  .history .text-frame {
    font-size: 20px;
  }
  .start-info .container {
    padding: 20px;
    width: auto;
    display: block;
  }
  .start-info .container:before,
  .start-info .container:after {
    display: none;
  }
  .start-info .column {
    float: none;
    width: auto;
  }
  .start-info .column:last-child {
    padding: 0;
  }
  .start-info .open-date-name {
    padding-right: 0;
  }
  .start-info .description {
    margin: 0 0 20px;
    display: flex;
    flex-direction: column;
  }
  .start-info .description .holder {
    text-align: center;
    font-size: 20px;
  }
  .start-info .description .box {
    order: 2;
    margin-left: 6px;
  }
  .history-gallery {
    height: auto;
  }
  .history-gallery .btn-next,
  .history-gallery .btn-prev {
    display: block;
  }
  .history-gallery .time-line {
    padding-bottom: 40px;
  }
  .history-gallery .time-line .container {
    width: auto;
    padding: 20px 0;
    margin: 0 20px;
  }
  .history-gallery .time-line .point {
    left: 93.5135%;
    display: none;
  }
  .history-gallery .time-line .point.active {
    display: block;
  }
  .history-gallery .time-line .point span {
    left: 0;
    transform: translate(-64%, 0);
  }
  .history-gallery ul {
    width: 100%;
    height: auto;
  }
  .history-gallery ul h4 {
    font-size: 32px;
    line-height: normal;
    position: absolute;
    top: 0;
    right: 20px;
    left: 20px;
    text-align: left;
    padding: 0;
  }
  .history-gallery ul li {
    position: static;
    padding: 90px 20px 20px;
  }
  .history-gallery ul .visual {
    width: auto;
    float: none;
    margin: 0 0 10px;
  }
  .history-gallery ul .visual.visual_align_right {
    float: none;
    margin: 0 0 20px;
  }
  .history-gallery ul .visual img {
    max-width: 100%;
    height: auto;
  }
}
@media (min-width: 1900px) {
  .map .definition dt {
    width: 270px;
  }
  .map .definition dt,
  .map .definition dd {
    font-size: 30px;
  }
  .map .map-popup__part {
    background: url(../images/btn-next3.png) no-repeat;
    background-position: calc(100% - 20px) 50%;
  }
  .map .map-popup__text-holder p {
    font-size: 30px;
    line-height: normal;
  }
  .map .map-popup__text-holder h2 {
    font-size: 79px;
    font-weight: bold;
    font-family: 'Lava-Italic';
  }
  .map .popup-gallery .btn-next,
  .map .popup-gallery .btn-prev {
    background: url(../images/btn-next3.png) 0 0 no-repeat;
    width: 114px;
    height: 114px;
  }
  .map .popup-gallery .btn-prev {
    background: url(../images/btn-prev3.png) 0 0 no-repeat;
  }
  .gallery-holder .btn-next,
  .gallery-holder .btn-prev {
    background: url(../images/btn-next3.png) 0 0 no-repeat;
    width: 114px;
    height: 114px;
  }
  .gallery-holder .btn-prev {
    background: url(../images/btn-prev3.png) 0 0 no-repeat;
  }
  .advantages .icon01 {
    background: url(../images/icon01_b.png) 0 0 no-repeat;
    width: 101px;
    height: 101px;
  }
  .advantages .icon02 {
    background: url(../images/icon02_b.png) 0 0 no-repeat;
    width: 188px;
    height: 79px;
  }
  .advantages .icon03 {
    background: url(../images/icon03_b.png) 0 0 no-repeat;
    width: 107px;
    height: 96px;
  }
  .advantages p {
    font-size: 34px;
  }
  .metro-map .container {
    width: 1376px;
  }
  .metro-map .visual {
    width: 750px;
  }
  .metro-map p {
    font-size: 52px;
  }
  .regions-map .circle {
    transform: matrix(1.6, 0, 0, 1.6, -224, -220);
  }
  .announcement .info {
    font-size: 52px;
  }
  .announcement .column p {
    font-size: 36px;
  }
  .announcement .column:last-child p {
    font-size: 44px;
    line-height: 46px;
  }
  .lines-info .container {
    width: 1376px;
  }
  .lines-info .metro-lines {
    margin: 120px -5%;
    width: 110%;
  }
  .lines-info .metro-lines li {
    width: 33.33%;
    margin: 0;
  }
  .lines-info .metro-lines li .count {
    font-size: 106px;
    line-height: 220px;
    letter-spacing: -10px;
  }
  .lines-info .metro-lines li .name {
    padding-top: 80px;
    letter-spacing: -1px;
  }
  .lines-info .metro-lines li img {
    width: 80px;
    height: 220px;
    max-height: none;
  }
  .lines-info .metro-lines li:nth-child(2) {
    padding-top: 0;
  }
  .stations .with-people {
    font-size: 42px;
    letter-spacing: -2px;
  }
  .stations .stations-list {
    width: 570px;
  }
  .stations .stations-list li {
    height: 196px;
  }
  .passes .info {
    font-size: 38px;
  }
  .passes .info .big {
    font-size: 58px;
  }
  .passes .info2 {
    font-size: 26px;
  }
  .video-box p {
    font-size: 82px;
  }
  .video-box .video-box__text p.small {
    font-size: 38px;
    line-height: normal;
  }
  .safety h3 b {
    font-family: 'Avenir Next Cyr';
  }
  .safety h3.big {
    font-size: 56px;
  }
  .history-gallery .name {
    font-size: 32px;
  }
  .history-gallery .time-line {
    background: url(../images/bg-history2.png) 50% 0 no-repeat;
  }
  .history-gallery .time-line:after {
    top: 9px;
  }
  .history-gallery .time-line .container {
    width: 1754px;
    max-width: none;
  }
  .history-gallery .time-line .point {
    top: 1px;
    font-size: 18px;
  }
  .history-gallery .time-line .point:before {
    width: 18px;
    height: 18px;
  }
  .history-gallery .time-line .point.active:before {
    background: url(../images/icon18.png) 0 0 no-repeat;
    width: 33px;
    height: 61px;
    margin-top: -13px;
  }
  .history-gallery .time-line .point.active span {
    padding-top: 4px;
  }
  .history-gallery .time-line .active .point {
    font-size: 60px;
  }
  .history-gallery ul {
    width: auto;
    padding: 0 84px;
    height: calc(100% - 85px);
  }
  .history-gallery ul p {
    margin-bottom: 15px;
  }
  .history-gallery ul h4 {
    font-size: 82px;
    line-height: normal;
  }
  .history-gallery ul h5 {
    font-size: 52px;
  }
  .history-gallery ul h6 {
    font-size: 52px;
  }
  .history-gallery ul .text-holder {
    padding-right: 348px;
  }
  .history-gallery ul .text-holder.text-holder_type_p0 {
    padding-right: 0;
  }
  .history-gallery ul .text-holder:first-child + .visual {
    margin-left: -84px;
    height: auto;
  }
  .history-gallery ul .visual {
    width: auto;
  }
  .history-gallery ul .visual_align_right + .text-holder {
    padding-left: 348px;
    padding-right: 0;
  }
  .history-gallery li {
    padding: 0 84px;
  }
  .lastochka .container {
    width: 1376px;
  }
  .safety .coat {
    width: 116px;
    height: 156px;
    display: block;
    margin: 0 auto 20px;
  }
  .safety .coat img {
    display: none;
  }
  .nodes .nodes-list li {
    width: 32%;
    padding-right: 1.333%;
  }
  .nodes .nodes-list .count {
    font-size: 180px;
  }
  .nodes .nodes-list p {
    font-size: 42px;
    line-height: 40px;
  }
  .gallery .text-holder {
    width: 1376px;
  }
  .gallery .text-holder p {
    font-size: 82px;
    line-height: normal;
  }
  .history .container {
    width: 1376px;
    max-width: 100%;
  }
  .history .text-holder {
    right: 0;
    width: 50%;
  }
  .history .text-holder p {
    font-size: 48px;
  }
  .short-info .aside {
    width: 50%;
  }
  .short-info .station-list {
    font-size: 38px;
  }
  .short-info .station-list li {
    margin-bottom: 10px;
  }
  .short-info p {
    font-size: 26px;
    line-height: 36px;
  }
  .short-info h4 {
    font-size: 36px;
  }
  .short-info .box {
    height: 370px;
  }
  .short-info .count .number {
    font-size: 180px;
  }
  .short-info .count .description {
    padding-top: 140px;
    font-size: 52px;
  }
  .short-info .text-holder.text-holder_type_first {
    width: 535px;
    margin-top: 100px;
  }
  .short-info .text-holder.text-holder_type_first + .aside {
    width: auto;
  }
  .short-info .city-gif {
    width: 450px;
    height: auto;
  }
  .start-info .container {
    width: 1064px;
    font-size: 26px;
  }
  .start-info .column {
    font-size: 26px;
  }
  .start-info .open-date {
    line-height: 138px;
  }
  .start-info .open-date span {
    height: 138px;
    width: 138px;
  }
  .start-info .open-date-name {
    font-size: 52px;
    line-height: 55px;
    margin-top: -63px;
    margin-bottom: 10px;
    padding-right: 75px;
  }
  .start-info .description {
    margin-top: -20px;
    margin-bottom: 30px;
  }
  .start-info .description .divider {
    margin: 20px 20px;
  }
  .start-info .description .box {
    width: 246px;
    padding-bottom: 30px;
  }
  .start-info .description .box p {
    font-size: 34px;
  }
  .start-info .description .box:before {
    width: 75px;
    height: 75px;
    border-radius: 20px 0 0 0;
    border-width: 9px 0 0 9px;
  }
  .start-info .description .box:after {
    width: 83px;
    height: 150px;
    border-radius: 0 0 0 20px;
    border-width: 0 0 5px 5px;
  }
  .start-info .description .holder {
    padding-top: 40px;
  }
  .start-info .description .holder p {
    font-size: 36px;
    line-height: 1.7em;
  }
  .want-more p {
    font-size: 82px;
  }
}
