@import "fonts/KelsonSansRegular/kelsonsansregularru.css";
@import "fonts/KelsonSansLight/kelsonsanslightru.css";
@import "fonts/KelsonSansBold/kelsonsansboldru.css";

/**
  * Ilya Kvant [ fatalerror2069@gmail.com ]
**/

/** Default styles */
html, body {
  height:100%;
  position:relative;
}
html, body,
input, textarea, button {font-family:KelsonSans, Tahoma, Arial, sans-serif;font-weight:100}

.b-gallery-wrapper a:after,.b-gallery-wrapper a img{-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}
.an{-webkit-transition:.4s;-moz-transition:.4s;-ms-transition:.4s;-o-transition:.4s;transition:.4s}
.b-projects__item i{-webkit-transition:1s;-moz-transition:1s;-ms-transition:1s;-o-transition:1s;transition:1s}
.fll{float:left}.flr{float:right}.pr{position:relative}.tac{text-align:center}
.clfix {display:block;clear:both;float:none;width:100%;height:0;margin:0;padding:0;position:relative;font:0/0 d}
.f100 {font-weight:100}
.f300 {font-weight:300}
.f700 {font-weight:700}

.g-white-bg {
  display:block;
  width:1295px;
  margin:0 0 0 -647.5px;

  background:#fff;
  -webkit-box-shadow:0 0 35px rgba(0,0,0,.35);
  -moz-box-shadow:0 0 35px rgba(0,0,0,.35);
  box-shadow:0 0 35px rgba(0,0,0,.35);

  height:100%;

  position:absolute;
  top:0; left:50%;
}

.g-button {
  display:block; float:left;
  width:191px; height:191px;
  position:relative;
  margin:0;

  font-size:24px; line-height:1;
  text-decoration:none;
  vertical-align:top;
  white-space:nowrap;
  cursor:pointer;

  background:url(imgs/b.png) 0 0 no-repeat;
}
  .g-button span {
    display:block;
    width:100%;

    position:absolute;
    top:50%; left:0;
    margin:-21px 0 0;

    text-shadow:0 0 3px #fff;
    vertical-align:top;
    text-align:center;
    color:#000;
  }
  .g-button:hover {
    background-position:-191px 0;
  }
  .g-button:active {
    background-position:-382px 0;
  }
  .js-cancel {
    display:block; float:left;
    margin-top:75px;

    font-size:24px; line-height:1;
    color:#fff !important;
  }

.g-lightbox-wrapper {
  display:none;
  width:100%; height:100%;
  min-width:1170px;

  overflow-x:hidden;
  overflow-y:auto;

  background:#005166;
  background:rgba(0,81,102,.9);

  position:fixed;
  top:0; left:0;
  z-index:110;
}

.g-lightbox {
  display:block;
  width:520px;

  position:absolute;
  top:0; left:50%;
  z-index:110;

  background:#fff;
  margin:100px 0 0 -260px;
  padding:20px 30px 20px;

  -webkit-box-shadow:0px 4px 21px rgba(0,1,1,0.33);
  -moz-box-shadow:0px 4px 21px rgba(0,1,1,0.33);
  box-shadow:0px 4px 21px rgba(0,1,1,0.33);

  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
}
  .g-lightbox__close {
    display:block;
    width:15px; height:15px;
    margin:25px;

    position:absolute;
    top:0; right:0;

    background:#000;
    cursor:pointer;
    font:0/0 d;

    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none;
  }
    .g-lightbox__close:hover,
    .g-lightbox__close:active {}

.g-lightbox-content {
  font-size:18px; line-height:24px;
}
  .g-lightbox-content .text-,
  .g-lightbox-content textarea {
    font-size:18px; line-height:25px;
    border:1px solid #000;
    color:#000;
  }
  .g-lightbox-content p {
    font-size:18px; line-height:24px;
    font-weight:300;
    margin:0 0 20px;
  }
  .g-lightbox-title {
    font-size:30px; line-height:1;
    text-transform:uppercase;
    white-space:nowrap;
    font-weight:300;
    padding:0 0 30px;
  }

form .error .text-,
form .error textarea {background:#ffdede}

.b-body-wrapper, .b-main-wrapper {
  min-height:100%;
  height:auto !important;
  height:100%;
  position:relative;
}

.b-body-wrapper {
  overflow:hidden;
  min-width:1275px;
  background:url(imgs/pat.png) 0 0 repeat;
}
  .l-body-wrapper {
    width:1275px;
    padding:0 10px;
    margin:0 auto;
  }
  .b-main-wrapper {
    padding:0 0 240px;
  }
    .b-content-wrapper {}

.b-footer-wrapper {
  position:absolute;
  bottom:0; left:0;

  display:block;
  height:200px; width:100%;
  background:url(imgs/footer.jpg) top center no-repeat;
}
  .b-footer {
    width:1225px;
    padding:0 35px;
    margin:0 auto;

    font-size:14px; line-height:18px;
    padding-top:83px;
  }
    .b-footer__socials {
      margin-top:15px;
    }
      .b-footer__socials a {
        display:inline-block;
        width:23px; height:23px;
        margin:0 0 -8px 5px;

        background:url(imgs/s_min.png) 0 0 no-repeat;
        text-decoration:none;
        cursor:pointer;
        font:0/0 d;
      }
      .b-footer__socials .fb {background-position:-23px 0}
      .b-footer__socials .yu {background-position:-46px 0}
      .b-footer__socials .is {background-position:-69px 0}

/** Site styles */

.g-page-title, .content h1 {
  font-size:80px; line-height:1;
  padding:60px 0 40px 50px;
  font-weight:300;
}

.b-header-wrapper {
  display:block; position:relative;
  z-index:10;
}
.b-header {
  background:rgba(0,0,0,.5);
  color:#fff;
  padding:30px 35px 0;
  height:90px;
}
  .b-logo {
    margin:-13px 0 0;
    text-decoration:none;
    font:0/0 d;
  }

  .b-header__contacts {
    min-width:200px;
  }
    .b-header__contacts-phone {
      font-size:33px; line-height:1;
      white-space:nowrap;

      margin:0 0 10px;
    }
    .b-header__contacts p {
      font-size:14px; line-height:16px;
    }

  .b-head-menu {
    font-size:0; line-height:0;
    margin:-3px 275px 0 285px;
  }
    .b-head-menu li {
      display:inline-block;
      width:135px;

      font-size:33px; line-height:1;
      vertical-align:top;
    }
      .b-head-menu span,
      .b-head-menu a {
        display:inline-block;
        padding-top:3px;

        text-decoration:none;
        color:#fff;
      }
      .b-head-menu .lead {
        display:block;
        font-size:14px; line-height:16px;
      }
      .b-head-menu .socials {
        width:160px;
      }
        .b-head-menu .socials a {
          display:inline-block;
          width:30px; height:30px;
          margin-right:12px;
          padding:0;

          background:url(imgs/s_min_top.png) 0 0 no-repeat;
          text-decoration:none;
          font:0/0 d;
        }
          .b-head-menu .socials .vk:hover {background-position:0 -30px}
          .b-head-menu .socials .fb {background-position:-31px 0}
            .b-head-menu .socials .fb:hover {background-position:-31px -30px}
          .b-head-menu .socials .yu {background-position:-62px 0}
            .b-head-menu .socials .yu:hover {background-position:-62px -30px}
          .b-head-menu .socials .is {background-position:-93px 0;margin-right:0}
            .b-head-menu .socials .is:hover {background-position:-93px -30px}

        .b-head-menu .current span,
        .b-head-menu a:hover .lead,
        .b-head-menu a:hover {color:#f5c1ca}

.b-contacts-map #map {
  -webkit-filter: grayscale(100%);
  -webkit-filter: grayscale(1);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  filter: url(filters.svg#grayscale);

  margin:0 0 50px;
}

.b-contacts__col_left {
  width:420px;
}
.b-contacts__col_right {
  width:510px;
  padding-right:50px;
}
  .b-contacts__col_right h2:first-of-type {
    padding:0 0 50px;
  }
  .b-contacts__col_right h2 {
    font-size:50px; line-height:70px;
    font-weight:100;

    padding:0 0 25px;
  }
  .b-contacts__col_right p {
    font-size:24px; line-height:33px;
    padding:0 0 35px;
  }
    .b-contacts__col_right strong {
      font-weight:300;
    }

.b-contacts__socials {
  overflow:hidden;
  margin:50px 0 0 50px;
  width:435px;
}
  .b-contacts__socials p {
    font-size:24px; line-height:1;
    padding:0 0 30px;
  }
  .b-contacts__socials a {
    display:block; float:left;
    width:78px; height:78px;
    margin-right:30px;

    background:url(imgs/s_big.png) 0 0 no-repeat;
    text-decoration:none;
    cursor:pointer;
    font:0/0 d;
  }
  .b-contacts__socials .vk:hover {background-position:0 -79px}
  .b-contacts__socials .fb {background-position:-79px 0}
    .b-contacts__socials .fb:hover {background-position:-79px -79px}
  .b-contacts__socials .yu {background-position:-158px 0}
    .b-contacts__socials .yu:hover {background-position:-158px -79px}
  .b-contacts__socials .is {background-position:-237px 0}
    .b-contacts__socials .is:hover {background-position:-237px -79px}

.ymaps-image {
  width:89px !important; height:101px !important;
  background:url(imgs/ya.png) 0 0 no-repeat !important;
  margin:-59px 0 0 -21px !important;
}

.b-years {
  font-size:24px; line-height:1;
  white-space:nowrap;

  margin:20px 0 0 41px;
}
  .b-years a, .b-years span {
    padding:8px 9px 5px;
    text-decoration:none;
    color:#000;
  }
  .b-years a:hover {
    background:#bf012a;
    color:#fff;
  }
  .b-years .current {
    color:#959595;
  }

.b-projects {
  font-size:0; line-height:0;
}
  .b-projects__item {
    display:block;
    position:relative;

    width:637px; height:476px;
    overflow:hidden;
  }
  .b-projects__item_text {
    width:587px; height:406px;

    font-size:70px; line-height:80px;
    padding:70px 0 0 50px;
  }
    .b-projects__item img {width:100%}
    .b-projects__item i {
      display:block;

      position:absolute;
      top:0; left:0;
      right:0; bottom:0;

      border:13px solid #fff;
      opacity:0;
    }
      .b-projects__item:hover i {opacity:.6}

.b-projects__pager {
  background:#42515b;
  margin:10px 0;
  padding:12px 20px 7px 0;

  font-size:20px; line-height:1;
  text-align:right;
  color:#fff;
}
  .b-projects__pager a, .b-projects__pager span {
    text-decoration:none;
    margin-left:10px;
    color:#fff;
  }
  .b-projects__pager .current {}

.b-left-menu {
  width:240px;
  margin:50px 0 0 35px;
}
  .b-left-menu li {
    display:block;

    font-size:24px; line-height:1;
    list-style-type:none;

    margin:0 0 10px;
  }
    .b-left-menu a, .b-left-menu span {
      display:inline-block;
      padding:6px 10px 3px;

      border:1px solid #fff;

      text-decoration:none;
      color:#000;
    }
      .b-left-menu a:hover {
        border-color:#bf012a;
      }
      .b-left-menu .current span {
        background:#bf012a;
        color:#fff;
      }

.b-right-col {
  margin-left:330px;
  width:780px;
}

.layout-default .g-page-title, .layout-default .content h1 {
  padding-left:0;
}


.content {}
  .content blockquote {
    margin:0 50px 50px;

    display:block;
    position:relative;
  }
    .content blockquote:before, .content blockquote:after {
      content:'';
      display:block;
      width:24px; height:36px;
      margin:0 -50px 0;

      position:absolute;
      top:0; left:0;

      background:url(imgs/ql.png) 0 0 no-repeat;
      font:0/0 d;
    }
    .content blockquote:after {
      top:auto; bottom:0;
      left:auto; right:0;

      margin:0 -50px 40px;
      background:url(imgs/qr.png) 0 0 no-repeat;
      font:0/0 d;
    }
    .content blockquote p {
      font-size:20px; line-height:1.3;
      padding:0;
    }
    .content blockquote strong {
      display:block;
      border-top:1px solid #bf012a;

      font-size:18px; line-height:24px;
      margin:10px 0 0;
      padding:15px 0 0;
    }
  .content table {
    width:100%;

    font-size:24px; line-height:1.37;
    margin:0 0 45px;
  }
  .content td {
    padding:12px 0 10px;
  }
  .content thead td {
    border-bottom:1px solid #bf012a;
  }
  .content tbody td {
    font-weight:100;
  }
    .content td:first-child {
      padding-left:30px;
    }
  .content tbody tr:hover td {background:#ebebeb}
  .content h2 {
    font-size:50px; line-height:1;
    font-weight:300;
    padding:0 0 30px;
  }
  .content h3 {
    font-size:24px; line-height:1;
    font-weight:700;
    padding:0 0 30px;
  }
  .content p, .content li {
    font-size:24px; line-height:1.3;
    list-style-type:none;
  }
    .content ol, .content ul {
      margin:0 0 30px;
    }
    .content ol li {
      list-style-type:decimal;
      padding:0 0 10px;
    }
    .content ol {
      margin-left:30px;
    }
    .content ul li {
      background:url(imgs/ol.png) 0 7px no-repeat;
      padding:0 0 0 23px;
    }

.content .b-file__link {color:#000}
.b-file__wrapper {
  display:block;
  overflow:hidden;

  padding:0 !important;
  margin:0 0 70px;
}
.b-file {
  display:block;

  font-size:17px; line-height:21px;
  padding:16px 0 0 55px;
}
.b-file__link {
  font-size:24px; line-height:26px;
  text-decoration:none;
  color:#000;
}
  .b-file__link:hover {
    text-decoration:underline;
    color:#bf012a;
  }
.content a {
  text-decoration:none;
  color:#bf012a;
}
.content a:hover {text-decoration:underline}
.b-file__icon {
  display:block;
  width:45px; height:59px;

  position:absolute;
  top:0; left:0;

  background:url(imgs/fileicons.png) 0 0 no-repeat;
  font:0/0 d;
}
.b-file__icon-pdf {background-position:-90px 0}
.b-file__icon-xls {background-position:-45px 0}
.b-file__desc {
  display:block;

  text-transform:uppercase;
  white-space:nowrap;
  color:#959595;
}

.b-form {
  margin:40px 0 60px;
}
  .b-form_ok {
    display:block; clear:both;
    width:608px;

    font-size:24px; line-height:33px;
    color:#fff;

    background:#d9225e;
    padding:20px 30px 15px;
  }
  .b-form__title {
    font-size:50px; line-height:1;
    padding:0 0 20px;
  }
  .b-form form {
    display:block; float:left;

    background:#d9225e;
    padding:15px 13px 0;
  }
  .b-form fieldset {
    margin:0 0 20px;
  }
  .b-form input,
  .b-form textarea {
    border:1px solid #9a9a9a;
    font-size:24px; line-height:1;
    color:#959595;

    padding:23px 15px 10px;
    width:610px; height:30px;
  }
  .b-form .b-form__comment {
    height:160px;
    padding:10px 15px 10px;
  }

.b-index-slider {
  height:640px; width:100%;
  margin-top:-120px;
  overflow:hidden;
}
.b-index-slider__slide,
.b-index-slider__slide__text-wrapper {
  height:545px;
}
.b-index-slider__img-wrapper {
  overflow:hidden;
  width:5100px;
}
.b-index-slider__slide {
  position:relative;
  width:1275px; float:left;
  opacity:0;
}
.b-index-slider__slide-img {
  display:block;
  width:100%; height:100%;
  position:absolute;
}
  .b-index-slider__slide i {
    display:block;
    width:100%; height:100%;

    position:absolute;
    top:0; left:0;
    z-index:1;

    background:url(imgs/grid.png) 0 0 repeat;
    font:0/0 d;
  }
  .b-index-slider__slide img {
    width:100%;
  }
.b-index-slider__slide__text q {
  margin-left:10px;
  font-family:ALSRublRegular;
  font-weight:300;
  font-size:80%;
}
.b-index-slider__slide__text-wrapper {
  width:1180px; margin:0 auto;
  z-index:5;
}
.b-index-slider__slide__text {
  display:block; width:700px;
  margin:0 0 41px 4px;

  position:absolute;
  bottom:0; left:0;
}
.b-index-slider__slide__text a {
  text-decoration:none;
}
.b-index-slider__slide__text-title {
  display:inline-block;
  padding:12px 10px 0;

  position:relative;
  top:0; left:0;

  background:rgba(191,1,42,.75);

  font-size:48px; line-height:1;
  font-weight:100;
  color:#fff;
}
.b-index-slider__slide__text-desc {
  display:inline-block;

  text-decoration:none;
  font-size:16px; line-height:18px;
  color:#000;

  margin-left:6px;
}
  .b-index-slider__slide__text-desc span {
    position:relative;

    line-height:19px;
    background:#fff;
    box-shadow:6px 0 0 #fff, -6px 0 0 #fff, -6px -3px 0 #fff, 6px -3px 0 #fff;
    opacity:.85;
  }
  .b-index-slider__slide__nav {
    display:block;
    width:48px; height:93px;

    position:absolute;
    bottom:0; left:0;
    z-index:15;

    border:1px solid #bf012a;
    background:#bf012a;
    font:0/0 d;
  }
    .b-index-slider__slide__nav i {
      display:block;
      width:25px; height:48px;
      margin:-24px 0 0 -12px;

      position:absolute;
      top:50%; left:50%;

      background:url(imgs/sl.png) 0 0 no-repeat;
    }
  .b-index-slider__slide__nav_right {left:auto; right:0}
    .b-index-slider__slide__nav_right i {background-position:-25px 0}
  .b-index-slider__slide__nav:hover {background:#fff}
    .b-index-slider__slide__nav:hover i {background-position:0 -48px}
    .b-index-slider__slide__nav_right:hover i {background-position:-25px -48px}

.b-index-slider__tabs {
  height:95px;
  padding-left:51px;
  position:relative;
  z-index:10;
}
.b-index-slider__tabs a {
  display:block; float:left;
  width:258px; height:69px;

  position:relative;
  padding:20px 0 4px 34px;
  margin-right:-1px;

  border:1px solid #df8094;
  font-size:21px; line-height:29px;
  text-decoration:none;
  font-weight:300;
  color:#bf012a;
}
.b-index-slider__tabs a i {
  display:none;
  width:38px; height:32px;
  margin:-32px 0 0 -19px;

  position:absolute;
  top:0; left:50%;

  background:url(imgs/slt.png) 0 0 no-repeat;
  font:0/0 d;
}
.b-index-slider__tabs a u {
  text-decoration:none;
  border-bottom:1px dotted #921c19;
}
.b-index-slider__tabs a:hover,
.b-index-slider__tabs .active {
  background:#bf012a;
  border-color:#bf012a;
  z-index:1;
}
.b-index-slider__tabs .active i {
  display:block;
}
.b-index-slider__tabs a:hover u,
.b-index-slider__tabs .active u {
  border-bottom-color:transparent;
  color:#fff;
}

.layout-index .b-main-wrapper {
  padding:0 0 200px;
}
.b-widgets {
  display:block; clear:both;
  margin:10px 0 10px;
  padding:30px 0 20px;

  background:url(imgs/ip.png) 0 0 repeat;
  color:#bf012a;
}
  .b-widgets__title {
    margin:0 0 0 50px;

    font-size:33px; line-height:1;
    white-space:nowrap;
  }
    .b-widgets__title a {
      border-bottom:1px dotted #bf012a;
      text-decoration:none;
      color:#bf012a;
    }
    .b-widgets__title span {
      margin:0 20px;
    }
    .b-widgets__title .active {
      border-bottom-color:transparent;
      font-weight:300;
      cursor:default;
    }
  .b-widgets__wrapper {
    width:1180px; margin:30px auto 0;
  }
    .b-widgets__item {
      display:block;
      height:447px;
      overflow:hidden;
    }
    .b-widgets__inst iframe {
      margin-left:-15px;
    }
      .b-widgets__inst__title {
        margin:35px 0 10px;

        font-size:24px; line-height:1;
        text-transform:uppercase;
        white-space:nowrap;
        font-weight:300;
        color:#bf012a;
      }
        .b-widgets__inst__title a {
          text-decoration:none;
          color:#bf012a;
        }
          .b-widgets__inst__title a:hover {
            color:#000;
          }
    .b-widgets__vk {
      width:400px;
    }
    .b-widgets__yu {
      width:490px;
      margin:0 0 0 21px;
    }

.b-widgets .b-gallery {margin-top:30px}

.b-gallery {
  overflow:hidden;
  background:#fff;
}
  .b-gallery__big-img {
    display:none;
    width:100%; height:100%;

    background:#000;
    overflow:hidden;

    position:absolute;
    top:0; left:0;
    z-index:1;
  }
    .b-gallery__big-img img, .b-gallery__big-img .js-video {
      display:block;

      position:absolute;
      top:0; left:0;

      width:100%; height:auto;
      cursor:url(imgs/close_cursor.cur), pointer;
    }
    .b-gallery__big-img__tr {
      display:block;
      width:100px; height:100%;

      position:absolute;
      top:0; left:0;
      z-index:5;

      font-size:0;
      line-height:0;
      cursor:url(imgs/prev_but.cur), pointer;
    }
      .b-gallery__big-img__tr_right {
        left:auto; right:0;
        cursor:url(imgs/next_but.cur), pointer;
      }
  .b-gallery-wrapper {}
    .b-gallery-wrapper img {
      -webkit-filter: grayscale(100%);
      -moz-filter: grayscale(100%);
      -ms-filter: grayscale(100%);
      -o-filter: grayscale(100%);
      filter: grayscale(100%);
      filter: url(filters.svg#grayscale);
      cursor:pointer;
    }
      .b-gallery-wrapper a {
        display:block;

        position:absolute;
        top:0; left:0;
      }
      .b-gallery-wrapper a:after {
        content:'';
        display:block;
        opacity:0;

        position:absolute;
        top:0; bottom:0;
        left:0; right:0;

        font-size:1px;
        border:0px solid #fff;
      }
        .b-gallery-wrapper a:hover:after {
          opacity:1;
          border-width:10px;
        }
        .b-gallery-wrapper a:hover img {
          -webkit-filter: grayscale(0);
          -moz-filter: grayscale(0);
          -ms-filter: grayscale(0);
          -o-filter: grayscale(0);
          filter: grayscale(0);
        }
      .b-gallery-wrapper a i {
        display:block;
        width:90px; height:90px;

        position:absolute;
        top:50%; left:50%;
        z-index:1;

        margin:-45px 0 0 -45px;

        background:url(imgs/pl.png) 0 0 no-repeat;
        cursor:pointer;
        font:0/0 d;
      }
  .b-video-btn {
    display:block;
    width:140px; height:140px;
    margin:-70px 0 0 -70px;

    position:absolute;
    top:50%; left:50%;
    z-index:15;

    background:none;
    font:0/0 d;
  }
  .b-video-btn {
    width:76px; height:76px;
    margin:-38px 0 0 -38px;

    background:url(imgs/pause.png) center center no-repeat;
    cursor:pointer;
  }
  .b-video-btn_play {
    background-image:url(imgs/play.png);
  }
  .js-progress {
    display:block;
    width:140px; height:140px;
    margin:-70px 0 0 -70px;

    position:absolute;
    top:50%; left:50%;
    z-index:13;

    cursor:pointer;
    font:0/0 d;
  }
    .js-progress div {
      position:absolute;
      top:0; left:0;
    }