@font-face {
  font-family: "Muller";
  src: url("../fonts/MullerLight.eot");
  src: url("../fonts/MullerLight.eot?#iefix") format("embedded-opentype"), url("../fonts/MullerLight.woff2") format("woff2"), url("../fonts/MullerLight.ttf") format("truetype"), url("../fonts/MullerLight.svgMuller") format("svg");
  font-style: normal;
  font-weight: 300; }

@font-face {
  font-family: "Muller";
  src: url("../fonts/MullerRegular.eot");
  src: url("../fonts/MullerRegular.eot?#iefix") format("embedded-opentype"), url("../fonts/MullerRegular.woff2") format("woff2"), url("../fonts/MullerRegular.ttf") format("truetype"), url("../fonts/MullerRegular.svgMuller") format("svg");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: "Muller";
  src: url("../fonts/MullerMedium.eot");
  src: url("../fonts/MullerMedium.eot?#iefix") format("embedded-opentype"), url("../fonts/MullerMedium.woff2") format("woff2"), url("../fonts/MullerMedium.ttf") format("truetype"), url("../fonts/MullerMedium.svgMuller") format("svg");
  font-style: normal;
  font-weight: 500; }

@font-face {
  font-family: "Muller";
  src: url("../fonts/MullerBold.eot");
  src: url("../fonts/MullerBold.eot?#iefix") format("embedded-opentype"), url("../fonts/MullerBold.woff2") format("woff2"), url("../fonts/MullerBold.ttf") format("truetype"), url("../fonts/MullerBold.svgMuller") format("svg");
  font-style: normal;
  font-weight: 700; }

body {
  font-family: 'Muller', sans-serif;
  font-weight: 400;
  color: #000;
  background: #fff;
  position: relative;
  line-height: 1; }

button, input, textarea {
  font-family: 'Muller', sans-serif; }

html {
  overflow-y: scroll; }

.row {
  max-width: 1176px;
  margin: auto; }

.overlay, .overlay-header {
  display: none;
  width: 100%;
  position: fixed;
  z-index: 8;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(120, 140, 160, 0.4); }

.cont {
  width: 100%;
  position: relative;
  z-index: 1;
  background: #fff;
  background: -webkit-linear-gradient(300.55deg, #29323C 30.9%, #333355 96.7%);
  background: -o-linear-gradient(300.55deg, #29323C 30.9%, #333355 96.7%);
  background: linear-gradient(149.45deg, #29323C 30.9%, #333355 96.7%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  -o-transition: transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s; }
  .cont-block {
    float: left;
    width: 100%;
    position: relative; }
  .cont.fix {
    position: absolute;
    width: 100%;
    -webkit-transform: translate(-270px, 0px) scale(0.94);
        -ms-transform: translate(-270px, 0px) scale(0.94);
            transform: translate(-270px, 0px) scale(0.94); }
    .cont.fix .cont-block {
      position: absolute;
      left: 0; }
  .cont.hei {
    height: 100vh;
    overflow: hidden; }
  .cont-close {
    width: 100%;
    position: absolute;
    height: 100vh;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    font-size: 0;
    z-index: 102; }
    
    .modal {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 115;
  -webkit-transition: visibility 0.5s, opacity 0.5s;
  -o-transition: visibility 0.5s, opacity 0.5s;
  transition: visibility 0.5s, opacity 0.5s;
}
.modal.hide {
  visibility: hidden;
  opacity: 0;
}
.modal.hide .modal__cot {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
}
    .modal__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  background: rgba(0, 0, 0, 0.7);
}
	.modal__cot {
  position: absolute;
  width: auto;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  -o-transition: transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
.open-modal {
  cursor: pointer;
}

.header {
  width: 100%;
  float: left;
  height: 100vh;
  background: url(../images/header.jpg) center no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative; }
  .header::before {
	  content: '';
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
	  background: linear-gradient(50deg, rgba(220, 157, 0, 1), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), rgba(0, 0, 0, 0.7);
  }
  .header-title {
    /* width: 658px; */
    /* padding-top: 185px; */
    margin: auto;
    font-size: 20px;
    letter-spacing: 0.14em;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    /* background: url(../images/header-title.svg) top center no-repeat; */
    /* -webkit-background-size: contain; */
            /* background-size: contain; */
            z-index: 1; }
  .header-title h1 {
    text-transform: none;
    font-size: 78px;
    line-height: 80px;
    margin-bottom: 28px;
  }
  @media screen and (max-width: 969px){
    .header-title h1 {
      font-size: 37px;
      line-height: 37px;
      margin-bottom: 20px;
    }
  }
  .header-info {
    position: absolute;
    bottom: 64px;
    left: 0;
    right: 0;
    width: 100%;
    padding: 0 139px; }
    .header-info a {
      float: left;
      height: 24px;
      padding: 0 25px 0 14px;
      letter-spacing: 0.1em;
      font-size: 12px;
      line-height: 26px;
      font-weight: 500;
      color: #fff;
      text-transform: uppercase;
      background: rgba(0, 0, 0, 0.15);
      margin-right: 20px;
      position: relative;
      -webkit-transition: background .2s;
      -o-transition: background .2s;
      transition: background .2s; }
      .header-info a.right {
        float: right;
        margin-right: 0;
        margin-left: 20px; }
      .header-info a::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: url(../images/arr-r.svg) center no-repeat;
        opacity: .33;
        right: 14px;
        top: 8px;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
      .header-info a:hover {
        background: rgba(0, 0, 0, 0.25); }
        .header-info a:hover::before {
          opacity: 1; }

.cap {
  width: 100%;
  position: fixed;
  z-index: 101; }
  .cap.fixed .cap-info, .cap.fix .cap-info {
    background: #fff;
    padding: 13px 139px 13px;
    -webkit-box-shadow: 0px 9px 25px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 9px 25px rgba(0, 0, 0, 0.06); }
  .cap.fixed .cap-info-logo, .cap.fix .cap-info-logo {
    height: 35px;
    width: 122px;
    background: url(../images/stroy_logo_d.svg) center no-repeat;
    -webkit-background-size: contain;
            background-size: contain; }
    .cap.fixed .cap-info-logo.eng, .cap.fix .cap-info-logo.eng {
      background: url(../images/logo_head_en_s.svg);
      background-repeat: no-repeat;
      background-position: center;
    }
  .cap.fixed .cap-info-menu, .cap.fix .cap-info-menu {
    margin-top: 7px; }
    .cap.fixed .cap-info-menu span, .cap.fixed .cap-info-menu span::before, .cap.fixed .cap-info-menu span::after, .cap.fix .cap-info-menu span, .cap.fix .cap-info-menu span::before, .cap.fix .cap-info-menu span::after {
      background: #000; }
    .cap.fixed .cap-info-menu.active span, .cap.fix .cap-info-menu.active span {
      background: rgba(0, 0, 0, 0); }
  .cap.fixed .cap-info-dop, .cap.fix .cap-info-dop {
    opacity: 1; }
  .cap.fixed .cap-info-des, .cap.fix .cap-info-des {
    opacity: 1;
    margin: 5px 34px 0 0; }
  .cap.fixed .cap-info-phone, .cap.fix .cap-info-phone {
    color: #000;
    margin: 6px 52px 0 0; }
    .cap.fixed .cap-info-phone::before, .cap.fix .cap-info-phone::before {
      background: url(../images/arr-b-b.svg) center no-repeat; }
    .cap.fixed .cap-info-phone span::before, .cap.fixed .cap-info-phone span::after, .cap.fix .cap-info-phone span::before, .cap.fix .cap-info-phone span::after {
      background: #000; }
    .cap.fixed .cap-info-phone.active, .cap.fix .cap-info-phone.active {
      color: rgba(0, 0, 0, 0); }
  .cap.fixed .cap-info-lan, .cap.fix .cap-info-lan {
    margin: 6px 35px 0 0; }
    .cap.fixed .cap-info-lan p, .cap.fix .cap-info-lan p {
      background: url(../images/lan-b.svg) left center no-repeat; }
    .cap.fixed .cap-info-lan::before, .cap.fix .cap-info-lan::before {
      background: url(../images/arr-b-b.svg) center no-repeat; }
    .cap.fixed .cap-info-lan span::before, .cap.fixed .cap-info-lan span::after, .cap.fix .cap-info-lan span::before, .cap.fix .cap-info-lan span::after {
      background: #000; }
  .cap-info {
    width: 100%;
    float: left;
    padding: 45px 139px 16px;
    background: rgba(255, 255, 255, 0);
    -webkit-transition: background .3s, padding .3s;
    -o-transition: background .3s, padding .3s;
    transition: background .3s, padding .3s; }
    .cap-info-logo {
      width: 184px;
      height: 54px;
      float: left;
      background: url(../images/stroy_logo.svg) center no-repeat;
      -webkit-background-size: contain;
              background-size: contain;
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s; }
      .cap-info-logo.eng {
        background: url(../images/logo_head_en.svg);
        background-position: center;
        background-repeat: no-repeat;
        width: 215px;
        height: 60px;
        background-size: 184px;
      }
    .cap-info-dop {
      float: left;
      height: 35px;
      position: relative;
      padding-left: 74px;
      padding-top: 3px;
      line-height: 13px;
      font-size: 11px;
      letter-spacing: 0.01em;
      background: url(../images/cap-dop.svg) 33px center no-repeat;
      opacity: 0;
      cursor: default;
      -webkit-transition: opacity .2s;
      -o-transition: opacity .2s;
      transition: opacity .2s; }
    .cap-info-menu {
      float: right;
      position: relative;
      z-index: 2;
      width: 27.5px;
      height: 17px;
      cursor: pointer;
      margin-top: 18px;
      -webkit-transition: margin .3s;
      -o-transition: margin .3s;
      transition: margin .3s; }
      .cap-info-menu::before {
        content: '';
        position: absolute;
        width: -webkit-calc(100% + 20px);
        width: calc(100% + 20px);
        height: -webkit-calc(100% + 20px);
        height: calc(100% + 20px);
        top: -10px;
        left: -10px;
        bottom: -10px;
        right: -10px; }
      .cap-info-menu span {
        position: relative;
        float: left;
        width: 100%;
        height: 1px;
        background: #fff;
        margin-top: 8px;
        -webkit-transition: background .3s, width .3s;
        -o-transition: background .3s, width .3s;
        transition: background .3s, width .3s; }
        .cap-info-menu span::before {
          content: '';
          position: absolute;
          width: 100%;
          height: 1px;
          background: #fff;
          top: -8px;
          left: 0;
          -webkit-transform: translateY(0) translateX(0) rotate(0deg);
              -ms-transform: translateY(0) translateX(0) rotate(0deg);
                  transform: translateY(0) translateX(0) rotate(0deg);
          -webkit-transition: background .3s, -webkit-transform .3s;
          transition: background .3s, -webkit-transform .3s;
          -o-transition: transform .3s, background .3s;
          transition: transform .3s, background .3s;
          transition: transform .3s, background .3s, -webkit-transform .3s; }
        .cap-info-menu span::after {
          content: '';
          position: absolute;
          width: 20px;
          height: 1px;
          background: #fff;
          top: 8px;
          left: 0;
          -webkit-transform: translateY(0) translateX(0) rotate(0deg);
              -ms-transform: translateY(0) translateX(0) rotate(0deg);
                  transform: translateY(0) translateX(0) rotate(0deg);
          -webkit-transition: background .3s, width .2s, -webkit-transform .3s;
          transition: background .3s, width .2s, -webkit-transform .3s;
          -o-transition: transform .3s, background .3s, width .2s;
          transition: transform .3s, background .3s, width .2s;
          transition: transform .3s, background .3s, width .2s, -webkit-transform .3s; }
      .cap-info-menu.active span {
        background: rgba(255, 255, 255, 0); }
        .cap-info-menu.active span::before {
          -webkit-transform: translateY(8px) translateX(0) rotate(45deg);
              -ms-transform: translateY(8px) translateX(0) rotate(45deg);
                  transform: translateY(8px) translateX(0) rotate(45deg); }
        .cap-info-menu.active span::after {
          -webkit-transform: translateY(-8px) translateX(0) rotate(-45deg);
              -ms-transform: translateY(-8px) translateX(0) rotate(-45deg);
                  transform: translateY(-8px) translateX(0) rotate(-45deg);
          width: 100%; }
    .cap-info-lan {
      width: 37px;
      height: 22px;
      float: right;
      margin: 15px 52px 0 0;
      position: relative;
      cursor: pointer;
      -webkit-transition: margin .3s;
      -o-transition: margin .3s;
      transition: margin .3s; }
      .cap-info-lan p {
        background: url(../images/lan.svg) left center no-repeat;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        -webkit-transition: background .2s, opacity .2s;
        -o-transition: background .2s, opacity .2s;
        transition: background .2s, opacity .2s; }
      .cap-info-lan::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: url(../images/arr-b.svg) center no-repeat;
        opacity: .33;
        right: 0;
        top: 7px;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
      .cap-info-lan:hover::before {
        opacity: 1; }
      .cap-info-lan span {
        position: relative;
        float: left;
        width: 27px;
        height: 1px;
        margin-top: 10px;
        opacity: 0;
        -webkit-transition: opacity .3s;
        -o-transition: opacity .3s;
        transition: opacity .3s; }
        .cap-info-lan span::before {
          content: '';
          position: absolute;
          width: 100%;
          height: 1px;
          background: #fff;
          top: -10px;
          left: 0;
          -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
              -ms-transform: translateY(10px) translateX(0) rotate(45deg);
                  transform: translateY(10px) translateX(0) rotate(45deg); }
        .cap-info-lan span::after {
          content: '';
          position: absolute;
          width: 100%;
          height: 1px;
          background: #fff;
          top: 10px;
          left: 0;
          -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
              -ms-transform: translateY(-10px) translateX(0) rotate(-45deg);
                  transform: translateY(-10px) translateX(0) rotate(-45deg); }
      .cap-info-lan.active p {
        opacity: 0; }
      .cap-info-lan.active span {
        opacity: 1; }
      .cap-info-lan.active::before {
        opacity: 0; }
    .cap-info-phone {
      width: auto;
      height: 24px;
      line-height: 24px;
      float: right;
      margin: 15px 52px 0 0;
      padding-right: 15px;
      position: relative;
      cursor: pointer;
      color: #fff;
      font-size: 24px;
      letter-spacing: 0.03em;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      -webkit-transition: color .2s, margin .3s;
      -o-transition: color .2s, margin .3s;
      transition: color .2s, margin .3s; }
      .cap-info-phone::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: url(../images/arr-b.svg) center no-repeat;
        opacity: .33;
        right: 0;
        top: 7px;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
      .cap-info-phone:hover::before {
        opacity: 1; }
      .cap-info-phone span {
        position: absolute;
        right: 10px;
        top: 10px;
        width: 27px;
        height: 1px;
        opacity: 0;
        -webkit-transition: opacity .3s;
        -o-transition: opacity .3s;
        transition: opacity .3s; }
        .cap-info-phone span::before {
          content: '';
          position: absolute;
          width: 100%;
          height: 1px;
          background: #fff;
          top: -10px;
          left: 0;
          -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
              -ms-transform: translateY(10px) translateX(0) rotate(45deg);
                  transform: translateY(10px) translateX(0) rotate(45deg); }
        .cap-info-phone span::after {
          content: '';
          position: absolute;
          width: 100%;
          height: 1px;
          background: #fff;
          top: 10px;
          left: 0;
          -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
              -ms-transform: translateY(-10px) translateX(0) rotate(-45deg);
                  transform: translateY(-10px) translateX(0) rotate(-45deg); }
      .cap-info-phone.active {
        color: rgba(255, 255, 255, 0); }
        .cap-info-phone.active span {
          opacity: 1; }
        .cap-info-phone.active::before {
          opacity: 0; }
    .cap-info-des {
      width: auto;
      line-height: 24px;
      float: right;
      margin: 15px 34px 0 0;
      color: #000;
      cursor: default;
      font-size: 11px;
      letter-spacing: 0.01em;
      opacity: 0;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      -webkit-transition: opacity .2s, margin .3s;
      -o-transition: opacity .2s, margin .3s;
      transition: opacity .2s, margin .3s; }
  .cap-lan {
    width: 100%;
    float: left;
    padding: 31px 139px;
    height: 110px;
	background: linear-gradient(130deg, #3A3A3A, #515151);
	background: -webkit-linear-gradient(310deg, #3A3A3A, #515151);
	background: -o-linear-gradient(310deg, #3A3A3A, #515151); 
    margin-top: -110px;
    opacity: 0;
    -webkit-transition: margin .3s, opacity .2s;
    -o-transition: margin .3s, opacity .2s;
    transition: margin .3s, opacity .2s;
    position: relative;
    z-index: 0; }
    .cap-lan.active {
      opacity: 1;
      margin: 0;
      z-index: 1; }
    .cap-lan > span {
      float: left;
      line-height: 50px;
      height: 48px;
      color: #fff;
      font-weight: 500;
      font-size: 14px;
      letter-spacing: 0.12em;
      text-transform: uppercase; }
    .cap-lan a {
      float: right;
      height: 48px;
      line-height: 50px;
      background: rgba(0, 0, 0, 0.3);
      -webkit-border-radius: 50px;
              border-radius: 50px;
      padding: 0 29px 0 33px;
      margin-left: 24px; }
      .cap-lan a span {
        color: #fff;
        font-size: 18px;
        font-weight: 500;
        padding-left: 39px;
        background-position: left 0 top 18px;
        background-repeat: no-repeat;
        float: left; }
        .cap-lan a span p {
          float: left; }
        .cap-lan a span .phone {
          text-transform: uppercase;
        }
  .cap-phone {
    width: 100%;
    float: left;
    padding: 36px 139px 0;
    height: 110px;
	background: linear-gradient(130deg, #3A3A3A, #515151);
	background: -webkit-linear-gradient(310deg, #3A3A3A, #515151);
	background: -o-linear-gradient(310deg, #3A3A3A, #515151);
    margin-top: -110px;
    opacity: 0;
    -webkit-transition: margin .3s, opacity .2s;
    -o-transition: margin .3s, opacity .2s;
    transition: margin .3s, opacity .2s;
    position: relative;
    z-index: 0; }
    .cap-phone.active {
      opacity: 1;
      margin: 0;
      z-index: 1; }
    .cap-phone a {
      float: left;
      font-weight: 500;
      font-size: 20px;
      letter-spacing: 0.03em;
      text-transform: uppercase;
      color: #fff;
      margin-right: 91px; }
      .cap-phone a:first-child {
        margin-right: 148px; }
      .cap-phone a:last-child {
        margin-right: 0; }
      .cap-phone a span {
        display: block;
        margin-top: 5px;
        color: rgba(255, 255, 255, 0.4);
        letter-spacing: 0.08em;
        font-size: 12px;
        font-weight: 400; }

.menu {
	visibility: hidden;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: linear-gradient(130deg, #3A3A3A, #515151);
  background: -webkit-linear-gradient(310deg, #3A3A3A, #515151);
  background: -o-linear-gradient(310deg, #3A3A3A, #515151);
  z-index: 1; }
  .menu.visible {
	  visibility: visible;
  }
  .menu-cont {
    float: right;
    width: 330px;
    height: 100vh;
    position: relative; }
  .menu-logo {
    float: left;
    width: 125px;
    height: 135px;
    background: url(../images/logo_menu.svg) center no-repeat;
    margin: 7vh 0 0 90px;
  }
  .menu-nav {
    position: absolute;
    left: 99px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
    .menu-nav li {
      width: 100%;
      float: left; }
      .menu-nav li:last-child a {
        margin-bottom: 0; }
      .menu-nav li.active a::before {
        margin-left: -4px;
        width: 20px;
        background: #fff; }
      .menu-nav li a {
        float: left;
        padding-left: 31px;
        font-size: 18px;
        line-height: 22px;
        position: relative;
        color: #fff;
        margin-bottom: 31px; }
        .menu-nav li a::before {
          content: '';
          position: absolute;
          top: 7px;
          left: 4px;
          height: 2px;
          width: 16px;
          background: #000;
          -webkit-transition: background .2s, width .2s, margin .2s;
          -o-transition: background .2s, width .2s, margin .2s;
          transition: background .2s, width .2s, margin .2s; }
        .menu-nav li a:hover::before {
          margin-left: -4px;
          width: 20px;
          background: #fff; }
  .menu-but {
    position: absolute;
    width: 207px;
    height: 44px;
    line-height: 44px;
    background: rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50px;
            border-radius: 50px;
    bottom: 6vh;
    left: 60px;
    text-align: center; }
    .menu-but span {
      letter-spacing: 0.1em;
      color: #fff;
      font-size: 12px;
      text-transform: uppercase;
      font-weight: 500;
      padding-right: 14px;
      position: relative; }
      .menu-but span::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: url(../images/arr-r.svg) center no-repeat;
        opacity: .33;
        right: 0;
        top: 1px;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
    .menu-but:hover span::before {
      opacity: 1; }

.title {
  float: left;
  width: 100%;
  color: #000; }
  .title span {
    float: left;
    width: 100%;
    text-align: center;
    font-weight: 500;
    line-height: 14px;
    font-size: 14px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #DC9D00; }
    .title.modal__black span {
	    color: #000;
    }
  .title h2 {
    margin-top: 22px;
    float: left;
    width: 100%;
    font-weight: bold;
    font-size: 48px;
    text-align: center; }

.center {
  float: left;
  width: 100%;
  text-align: center; }

.g-serv {
  width: 100%;
  float: left;
  background: #fff;
  padding: 91px 0 107px; }
  .g-serv .title {
    color: #000; }
  .g-serv .row {
    padding: 0 15px; }
  .g-serv-block {
    float: left;
    width: 100%;
    margin-top: 59px;
    border: 1px solid #E8E8E8;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
  .g-serv-item {
    float: left;
    width: 50%;
    border-right: 1px solid #E8E8E8;
    border-top: 1px solid #E8E8E8;
    margin-top: -1px;
    padding: 39px 50px;
    position: relative; }
    .g-serv-item:nth-child(2n) {
      border-right: 0; }
    .g-serv-item h3 {
      font-weight: bold;
      font-size: 28px;
      float: left;
      width: 100%;
      color: #000;
      position: relative;
      z-index: 1;
      -webkit-transition: color .3s;
      -o-transition: color .3s;
      transition: color .3s;
      position: inherit;
      z-index: 1; }
    .g-serv-item span {
      float: left;
      width: 100%;
      margin-top: 24px;
      line-height: 29px;
      font-size: 18px;
      position: relative;
      color: #000;
      z-index: 1;
      -webkit-transition: color .3s;
      -o-transition: color .3s;
      transition: color .3s; }
    .g-serv-item-all {
      display: none; }
    .g-serv-item-go {
      float: left;
      width: 20px;
      height: 12px;
      margin-top: 35px;
      position: relative;
      z-index: 1;
      background: url(../images/arrow.svg) left center no-repeat;
      -webkit-transition: margin .2s, background .3s;
      -o-transition: margin .2s, background .3s;
      transition: margin .2s, background .3s; }
      .g-serv-item-go::before {
        content: '';
        position: absolute;
        width: 30px;
        height: 22px;
        top: -5px;
        left: -5px;
        right: -5px;
        bottom: -5px;
        z-index: 1; }
    .g-serv-item-bg {
      position: absolute;
      z-index: 1;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      opacity: 0;
      background-position: center;
      -webkit-background-size: cover;
              background-size: cover;
      z-index: 0;
      -webkit-transition: opacity .3s;
      -o-transition: opacity .3s;
      transition: opacity .3s; }
     .g-serv-item-bg::before {
	    content: '';
	    width: 100%;
	    height: 100%;
	    position: absolute;
	    top: 0;
	    right: 0;
	    bottom: 0;
	    left: 0;
	    background: rgba(0, 0, 0, 0);
	    transition: background 0.3s;
     }
    .g-serv-item:hover .g-serv-item-bg {
      opacity: 1; }
    .g-serv-item:hover .g-serv-item-bg::before {
	    background: rgba(0, 0, 0, 0.2);
    }
    .g-serv-item:hover .g-serv-item-go {
      background: url(../images/serv-arr-w.svg) left center no-repeat; }
    .g-serv-item:hover h3, .g-serv-item:hover span {
      color: #fff; }

.g-new {
  width: 100%;
  float: left;
  background: linear-gradient(50deg, rgba(220, 157, 0, 1), rgba(0, 0, 0, 1));
  -webkit-background-size: cover;
          background-size: cover;
  padding: 74px 0 77px; }
  .g-new .title {
    color: #fff; }
  .g-new-block {
    float: left;
    width: 100%;
    margin-top: 43px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
	justify-content: center; }
   .g-new .title span {
	   color: #fff;
   }
  .g-new-item {
    float: left;
    width: -webkit-calc(33% - 30px);
    width: calc(33% - 30px);
    background: #fff;
    padding: 31px 35px 34px;
    margin: 0 15px;
    position: relative; }
    .g-new-item-go {
      float: left;
      width: 20px;
      height: 12px;
      margin-top: 30px;
      background: url(../images/arrow.svg) left center no-repeat;
      position: relative;
      -webkit-transition: margin .2s;
      -o-transition: margin .2s;
      transition: margin .2s; }
      .g-new-item-go:hover {
        margin-left: 3px; }
      .g-new-item-go::before {
        content: '';
        position: absolute;
        width: 30px;
        height: 22px;
        top: -5px;
        left: -5px;
        right: -5px;
        bottom: -5px;
        z-index: 1; }
    .g-new-item::before {
      content: '';
      position: absolute;
      width: 24px;
      height: 24px;
      right: 20px;
      top: 20px;
      opacity: 1;
      background: url(../images/logo_s.svg) center no-repeat; }
  .g-new-date {
    float: left;
    width: 100%;
    font-size: 20px; }
    .g-new-date span {
      display: block;
      margin-top: 8px;
      font-size: 12px;
      color: rgba(0, 0, 0, 0.4); }
  .g-new h3 {
    float: left;
    width: 100%;
    min-height: 100px;
    font-weight: 500;
    line-height: 34px;
    font-size: 26px;
    color: #000;
    margin-top: 30px; }
  .g-new-but {
    display: inline-block;
    padding: 0 45px;
    height: 48px;
    line-height: 48px;
    background: rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50px;
            border-radius: 50px;
    text-align: center;
    margin-top: 45px; }
    .g-new-but span {
      letter-spacing: 0.1em;
      color: #fff;
      font-size: 12px;
      text-transform: uppercase;
      font-weight: 500;
      padding-right: 14px;
      position: relative; }
      .g-new-but span::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: url(../images/arr-r.svg) center no-repeat;
        opacity: .33;
        right: 0;
        top: 1px;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
    .g-new-but:hover span::before {
      opacity: 1; }

.g-geo {
  width: 100%;
  float: left;
  background: #fff;
  padding: 75px 0 102px; }
  .g-geo .title {
    color: #000; }
  .g-geo .row {
    padding: 0 15px; }
  .g-geo-block {
    float: left;
    width: 100%;
    margin-top: 53px; }
  .g-geo-item {
    position: relative;
    width: 100%;
    float: left;
    height: 460px;
    margin-bottom: 50px;
    background-position: center;
    -webkit-background-size: cover;
            background-size: cover;
    padding: 51px 66px; }
    .g-geo-item::before {
	  content: '';
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  background: rgba(0, 0, 0, 0.2);
	  transition: background 0.3s;
    }
    .g-geo-item::after {
      content: '';
      position: absolute;
      width: 24px;
      height: 24px;
      right: 30px;
      top: 30px;
      background: url(../images/logo_s_w.svg) center no-repeat;
      z-index: 1; }
    .g-geo-item:hover .g-geo-go {
      margin-left: 3px; }
    .g-geo-item:hover::before {
	    background: rgba(0, 0, 0, 0.4);
    }
  .g-geo-title {
    float: left;
    width: 100%;
    font-weight: 700;
    font-size: 40px;
    color: #fff;
    z-index: 1;
    position: inherit; }
    .g-geo-title span {
      display: block;
      margin-top: 5px;
      color: rgba(255, 255, 255, 0.5);
      font-size: 13px;
      font-weight: 400; }
  .g-geo-info {
    float: left;
    width: 100%;
    margin-top: 50px;
    color: #fff;
    z-index: 1;
    position: inherit; }
    .g-geo-info span {
      display: block;
      letter-spacing: 0.1em;
      font-size: 12px;
      font-weight: 500;
      text-transform: uppercase;
      margin-bottom: 9px; }
    .g-geo-info p {
      display: block;
      padding-left: 29px;
      font-size: 18px;
      line-height: 27px;
      font-weight: 700;
      position: relative; }
      .g-geo-info p::before {
        content: '';
        width: 18px;
        height: 1px;
        position: absolute;
        top: 12px;
        left: 0;
        background: #fff; }
  .g-geo-cl {
    float: left;
    width: 100%;
    margin-top: 31px;
    color: #fff;
    letter-spacing: 0.1em;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    z-index: 1;
    position: inherit; }
    .g-geo-cl b {
      font-weight: 700;
      display: block;
      margin-top: 13px;
      font-size: 18px;
      text-transform: none; }
  .g-geo-go {
    position: absolute;
    bottom: 53px;
    left: 66px;
    width: 24px;
    height: 14px;
    margin-top: 30px;
    background: url(../images/serv-arr-w.svg) left center no-repeat;
    -webkit-background-size: contain;
            background-size: contain;
    -webkit-transition: margin .2s;
    -o-transition: margin .2s;
    transition: margin .2s;
    z-index: 1; }
    .g-geo-go::before {
      content: '';
      position: absolute;
      width: 34px;
      height: 24px;
      top: -5px;
      left: -5px;
      right: -5px;
      bottom: -5px;
      z-index: 1; }
  .g-geo-all {
    float: left;
    width: 100%;
    text-align: center;
    padding: 55px 0 57px;
    background-position: center;
    -webkit-background-size: cover;
            background-size: cover;
    margin-top: -7px;
    position: relative; }
    .g-geo-all::before {
	  content: '';
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  background: rgba(0, 0, 0, 0.4);
    }
    .g-geo-all > span {
      width: 100%;
      float: left;
      text-align: center;
      line-height: 44px;
      font-size: 40px;
      font-weight: 700;
      color: #fff;
      z-index: 1;
      position: inherit; }
    .g-geo-all a {
      margin-top: 21px;
      z-index: 1;
      position: inherit; }

.g-epc {
  width: 100%;
  float: left;
  height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
          z-index: 1;
          position: relative; }
  .g-epc::before {
	  content: '';
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  background: rgba(0, 0, 0, 0.4);
  }
  .g-epc .row {
    padding: 0 15px;
    z-index: 1; }
  .g-epc-dop {
    float: left;
    width: 100%;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 14px;
    color: #fff; }
  .g-epc-title {
    margin-top: 33px;
    float: left;
    width: 100%;
    font-weight: bold;
    font-size: 48px;
    color: #fff; }
  .g-epc-des {
    float: left;
    width: 100%;
    line-height: 32px;
    font-size: 20px;
    color: #fff;
    margin-top: 23px; }
  .g-epc-but {
    margin-top: 31px; }
  .g-epc-info {
    float: left;
    width: 100%;
    margin-top: 27px;
    padding-right: 50%; }
    .g-epc-info p {
      float: left;
      padding: 0 16px;
      height: 36px;
      line-height: 36px;
      font-size: 13px;
      color: #fff;
      margin: 0 10px 10px 0;
      -webkit-border-radius: 25px;
              border-radius: 25px;
      background: rgba(0, 0, 0, 0.45); }
      .g-epc-info p:last-child {
        margin-right: 0; }
        .g-epc-info p a {
          color: #fff;
        }
.g-bui {
  width: 100%;
  float: left;
  background: #fff;
  padding: 198px 0; }
  .g-bui .row {
    text-align: center; }
  .g-bui-dop {
    float: left;
    width: 100%;
    text-align: center;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    color: #DC9D00; }
  .g-bui-title {
    float: left;
    width: 100%;
    font-weight: 300;
    line-height: 54px;
    font-size: 36px;
    margin-top: 30px; }
  .g-bui-but {
    margin-top: 50px; }

.g-abo {
  width: 100%;
  float: left;
  height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
          position: relative; }
  .g-abo::before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
  	right: 0;
  	bottom: 0;
  	left: 0;
  	background: rgba(0, 0, 0, 0.4);
  }
  .g-abo .row {
    padding: 0 15px;
    z-index: 1; }
  .g-abo-dop {
    float: left;
    width: 100%;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 14px;
    color: #fff; }
  .g-abo-title {
    margin-top: 33px;
    float: left;
    width: 100%;
    font-weight: bold;
    font-size: 48px;
    color: #fff; }
  .g-abo-des {
    float: left;
    width: 100%;
    line-height: 32px;
    font-size: 20px;
    color: #fff;
    margin-top: 23px; }
  .g-abo-but {
    margin-top: 44px;
    float: left; }
  .g-abo-dow {
    margin: 44px 0 0 20px;
    float: left;
    width: auto;
    padding: 0 35px;
    height: 48px;
    line-height: 50px;
    -webkit-border-radius: 50px;
            border-radius: 50px;
    background: rgba(0, 0, 0, 0.7);
    letter-spacing: 0.1em;
    font-size: 14px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 500;
    -webkit-transition: background .2s;
    -o-transition: background .2s;
    transition: background .2s; }
    .g-abo-dow:hover {
      background: rgba(0, 0, 0, 0.9); }

.g-con {
  float: left;
  width: 100%;
  background: #fff;
  padding: 142px 0 143px; }
  .g-con .row {
    max-width: 1268px; }
  .g-con-form {
    float: left;
    width: 100%;
    border: 1px solid #E8E8E8;
    padding: 60px;
    margin-top: 62px; }
    .g-con-form button {
      float: right;
      width: 192px;
      height: 50px;
      text-align: center;
      position: relative;
      background: #000;
      line-height: 54px;
      -webkit-border-radius: 50px;
              border-radius: 50px;
      font-weight: 500;
      font-size: 14px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: #fff;
      overflow: hidden; }
      .g-con-form button span {
        display: inline-block;
        padding-right: 19px;
        background: url(../images/serv-arr-w.svg) right 20px no-repeat;
        -webkit-background-size: 14px 9px;
                background-size: 14px 9px;
        position: relative;
        z-index: 1; }
      .g-con-form button p {
        position: absolute;
        width: 0;
        height: 100%;
        top: 0;
        left: 0;
        background: #DC9D00;
        -webkit-transition: width .3s;
        -o-transition: width .3s;
        transition: width .3s; }
      .g-con-form button.active {
        background: #22B768; }
        .g-con-form button.active p {
          background: #22B768; }
        .g-con-form button.active span {
          background: url(../images/ok.svg) right 18px no-repeat;
          padding-right: 29px; }
  .g-con-input {
    float: left;
    position: relative;
    margin-right: 39px; }
    .g-con-input:last-child {
      margin-right: 0; }
    .g-con-input label {
      position: absolute;
      color: #B8B8BF;
      font-size: 16px;
      left: 42px;
      margin-top: 18px;
      padding: 0 10px;
      background: #fff;
      -webkit-transition: margin .2s, font-size .2s;
      -o-transition: margin .2s, font-size .2s;
      transition: margin .2s, font-size .2s; }
      .g-con-input label.error {
        width: 14px;
        height: 14px;
        top: -6px;
        right: 18px;
        left: auto;
        padding: 0;
        margin: 0 !important;
        background: #fff url(../images/error.svg) center no-repeat; }
    .g-con-input input {
      float: left;
      width: 279px;
      height: 50px;
      line-height: 50px;
      border: 1px solid #E8E8E8;
      -webkit-border-radius: 50px;
              border-radius: 50px;
      padding-left: 51px;
      font-size: 16px;
      -webkit-transition: background .2s;
      -o-transition: background .2s;
      transition: background .2s; }
      .g-con-input input:focus ~ label, .g-con-input input:valid ~ label {
        margin-top: -7px;
        font-size: 13px; }
  .g-con-name {
    background: #fff url(../images/name_icon.svg) 24px center no-repeat; }
  .g-con-phone {
    background: #fff url(../images/tel_icon.svg) 22px center no-repeat; }
  .g-con-mail {
    background: #fff url(../images/mail_icon.svg) 21px center no-repeat; }
  .g-con-des {
    float: left;
    width: 100%;
    text-align: center;
    color: #B8B8BF;
    font-size: 13px;
    margin-top: 40px; }

.but {
	opacity: 1;
  width: auto;
  display: inline-block;
  text-align: center;
  padding: 0 35px;
  height: 48px;
  line-height: 50px;
  -webkit-border-radius: 50px;
          border-radius: 50px;
  background: #DC9D00;
  letter-spacing: 0.1em;
  font-size: 14px;
  text-transform: uppercase;
  color: #fff;
  font-weight: 500;
  -webkit-transition: background .2s;
  -o-transition: background .2s;
  transition: background .2s; }
  .but span {
    padding-right: 16px;
    position: relative; }
    .but span::before {
      content: '';
      position: absolute;
      width: 8px;
      height: 8px;
      background: url(../images/arr-r.svg) center no-repeat;
      opacity: .33;
      right: 0;
      top: 2px;
      -webkit-transition: opacity .2s;
      -o-transition: opacity .2s;
      transition: opacity .2s; }
  .but:hover {
    background: #D49700; }
    .but:hover span::before {
      opacity: 1; }

.footer {
  float: left;
  width: 100%;
  background-color: #222222;
  -webkit-background-size: cover;
          background-size: cover;
  padding: 55px 0 95px; }
  .footer .row {
    padding: 0 15px; }
  .footer-col {
    float: left;
    width: 25%; }
  .footer-logo {
    float: left;
    width: 100%;
    height: 49px;
    background: url(../images/stroy_logo.svg) left center no-repeat;
    -webkit-background-size: contain;
            background-size: contain; }
    .footer-logo.eng {
      background: url(../images/logo_head_en.svg);
      background-position: center;
      background-repeat: no-repeat;
      background-size: 185px;
      width: 185px;
      height: 52px;
    }
  .footer-des {
    float: left;
    width: 100%;
    margin-top: 22px; }
    .footer-des p {
      display: block;
      line-height: 18px;
      font-size: 14px;
      color: #fff;
      margin-bottom: 18px; }
      .footer-des p:last-child {
        margin-bottom: 0; }
  .footer-author {
    float: left;
    width: 100%;
    margin-top: 24px; }
    .footer-author span {
      font-size: 13px;
      color: #fff;
      width: 100%;
      float: left;
      margin-bottom: 5px; }
  .footer-title {
    float: left;
    width: 100%;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    margin-top: 22px; }
  .footer-list {
    float: left;
    width: 100%;
    margin-top: 29px; }
    .footer-list li {
      float: left;
      width: 100%;
      margin-bottom: 18px; }
      .footer-list li:last-child {
        margin-bottom: 0; }
      .footer-list li a {
        padding-left: 20px;
        position: relative;
        font-size: 14px;
        color: #fff; }
        .footer-list li a::before {
          content: '';
          position: absolute;
          top: 7px;
          left: 0;
          width: 10px;
          height: 1px;
          background: #fff; }
  .footer-info {
    float: left;
    width: 100%;
    margin-top: 27px; }
    .footer-info p {
      display: block;
      margin-bottom: 10px;
      line-height: 22px;
      font-size: 14px;
      color: #fff; }
      .footer-info p:last-child {
        margin-bottom: 0; }
      .footer-info p a, .footer-info p span {
        display: block;
        font-weight: 500;
        color: #fff; }
  .footer-soc {
    float: left;
    width: 100%;
    margin-top: 20px; }
    .footer-soc a {
      width: 30px;
      height: 30px;
      float: left;
      margin-right: 12px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      background-position: center;
      background-repeat: no-repeat;
      background-color: #000; }

.p-header {
  width: 100%;
  float: left;
  height: 700px;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .p-header::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background: linear-gradient(50deg, rgba(220, 157, 0, 1), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), rgba(0, 0, 0, 0.5); 
  }
  .p-header-title {
    width: 100%;
    margin: auto;
    text-align: center;
    color: #fff;
    z-index: 1; }
    .p-header-title span {
      float: left;
      width: 100%;
      text-align: center;
      font-weight: 500;
      line-height: 14px;
      font-size: 14px;
      letter-spacing: 0.12em;
      text-transform: uppercase; }
    .p-header-title h1 {
      margin-top: 22px;
      float: left;
      width: 100%;
      font-weight: bold;
      font-size: 48px;
      line-height: 53px;
      text-align: center; }

.p-full {
  height: 100vh; }

.serv {
  float: left;
  width: 100%;
  background: #fff;
  padding: 84px 0 120px; }
  .serv .row {
    padding: 0 15px; }
  .serv-title {
    float: left;
    width: 100%;
    padding: 0 100px;
    text-align: center;
    font-weight: 300;
    line-height: 54px;
    font-size: 36px;
    margin-bottom: 69px; }
  .serv-item {
    float: left;
    width: 100%;
    height: 500px;
    padding: 46px 61px;
    position: relative;
    margin-bottom: 50px;
    background-position: center;
    -webkit-background-size: cover;
            background-size: cover; }
	.serv-item::before {
	  content: '';
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: #DC9D00;
	  opacity: 0.15;
	}
	.serv.prod .serv-item::before {
		opacity: 0.1;
	}
    .serv-item:last-child {
      margin-bottom: 0; }
/*
    .serv-item s {
	  position: absolute;
	  width: 100%;
	  height: 100%;
	  top: 0;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  z-index: 0;
	  background-size: cover;
	  background-position: center;
    }
*/
    .serv-item s::before {
	  content: '';
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: #DC9D00;
	  opacity: 0.2;
    }
    .serv-item-title {
      float: left;
      width: 100%;
      color: #fff;
      font-size: 36px;
      font-weight: 700;
      z-index: 1;
      position: inherit; }
      .serv-item-title a {
        color: #fff;
        display: block; }
    .serv-item-des {
      float: left;
      width: 100%;
      padding-right: 50%;
      color: #fff;
      margin-top: 28px;
      line-height: 32px;
      font-size: 20px;
      display: block;
      z-index: 1;
      position: inherit; }
    .serv-item-info {
      float: left;
      width: 50%;
      margin-top: 31px;
      z-index: 1;
      position: inherit; }
      .serv-item-info a {
	    display: block;
        float: left;
        width: auto;
        height: 36px;
        line-height: 38px;
        font-size: 13px;
        padding: 0 21px;
        background: rgba(0, 0, 0, 0.45);
        color: #fff;
        -webkit-border-radius: 25px;
                border-radius: 25px;
        margin: 0 10px 10px 0;
        -webkit-transition: background .2s;
        -o-transition: background .2s;
        transition: background .2s; }
        .serv-item-info a:hover {
          background: rgba(0, 0, 0, 0.75); }
    .serv-item-but {
      position: absolute;
      left: 61px;
      bottom: 49px; }
      .serv-item-but span {
        padding-right: 20px; }
        .serv-item-but span::before {
          width: 14px;
          height: 9px;
          background: url(../images/serv-arr-w.svg) center no-repeat;
          -webkit-background-size: contain;
                  background-size: contain;
          top: 1px;
          opacity: 1; }
  .serv-img {
    float: left;
    width: 100%;
    height: 500px;
    position: relative;
    background-position: center;
    -webkit-background-size: cover;
            background-size: cover; }
    .serv-img::before {
	  content: '';
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  background: #DC9D00;
	  opacity: 0.2;
    }
    .serv-img::after {
      content: '';
      position: absolute;
      width: 24px;
      height: 24px;
      right: 30px;
      top: 30px;
      background: url(../images/logo_s_w.svg) center no-repeat; }
  .serv-p {
    float: left;
    width: 100%;
    padding: 83px 100px 0; }
    .serv-p-title {
      float: left;
      width: 100%;
      font-size: 48px;
      color: #000;
      font-weight: 700; }
      .serv-p-title span {
        display: block;
        font-weight: 500;
        font-size: 14px;
        line-height: 15px;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        margin-bottom: 19px; }
    .serv-p-des {
      float: left;
      width: 100%;
      margin-top: 53px; }
      .serv-p-des:first-child {
        margin-top: 0; }
      .serv-p-des p {
        display: block;
        margin-bottom: 22px;
        font-weight: 300;
        font-size: 24px;
        line-height: 38px; }
        .serv-p-des p:last-child {
          margin-bottom: 0; }
    .serv-p-info {
      float: left;
      width: 100%;
      margin: 68px 0 98px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .serv-p-info p {
        float: left;
        width: 265px;
        border-top: 1px solid rgba(0, 0, 0, 0.1);
        padding-top: 56px;
        font-size: 20px;
        line-height: 30px; }
        .serv-p-info p b {
          font-weight: 700; }
      .serv-p-info-pr p {
        width: 207px; }
    .serv-p-st {
      float: left;
      width: 100%;
      margin-top: 75px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .serv-p-st p {
        float: left;
        width: 170px;
        font-size: 14px;
        line-height: 20px; }
        .serv-p-st p b {
          display: block;
          margin-top: 17px;
          color: #000;
          font-size: 64px;
          line-height: 64px;
          font-weight: 500;
          white-space: nowrap; }
          .serv-p-st p b span {
            font-size: 40px;
            font-weight: 300; }
  .serv-video {
    float: left;
    width: 100%;
    margin-bottom: 24px; }
    .serv-video a {
      float: left;
      width: 50%;
      height: 400px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center;
      background-color: rgba(0, 0, 0, 0.2);
      background-blend-mode: multiply;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-transition: background .3s;
      -o-transition: background .3s;
      transition: background .3s; }
      .serv-video a:hover {
        background-color: rgba(0, 0, 0, 0.5); }
      .serv-video a.full {
        width: 100%; }
      .serv-video a span {
        margin: auto;
        padding-top: 70px;
        font-size: 16px;
        color: #fff;
        text-align: center;
        position: relative; }
        .serv-video a span b {
          font-size: 24px;
          font-weight: 700;
          display: block;
          line-height: 29px;
          margin-bottom: 5px; }
        .serv-video a span::before {
          content: '';
          position: absolute;
          width: 44px;
          height: 44px;
          left: 50%;
          top: 0;
          margin-left: -22px;
          background: url(../images/video.svg) center no-repeat;
          -webkit-transition: -webkit-transform .3s;
          transition: -webkit-transform .3s;
          -o-transition: transform .3s;
          transition: transform .3s;
          transition: transform .3s, -webkit-transform .3s; }
      .serv-video a:hover span::before {
        -webkit-transform: scale(1.1);
            -ms-transform: scale(1.1);
                transform: scale(1.1); }
  .serv-fq {
    float: left;
    width: 100%;
    background: #fff; }
    .serv-fq-title {
      float: left;
      width: 100%;
      padding: 0 100px;
      margin-top: 98px;
      color: #000;
      font-weight: bold;
      font-size: 48px;
      text-align: center; }
  .serv-faq {
    float: left;
    width: 100%;
    margin-top: 56px; }
    .serv-faq-item {
      float: left;
      width: 100%;
      border: 1px solid #E8E8E8;
      margin-bottom: 10px;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
    .serv-faq-title {
      float: left;
      width: 100%;
      height: 78px;
      line-height: 78px;
      padding: 0 36px;
      font-weight: 500;
      color: #000;
      font-size: 20px;
      position: relative;
      cursor: pointer;
      -webkit-transition: color .3s;
      -o-transition: color .3s;
      transition: color .3s; }
      .serv-faq-title::before {
        content: '';
        position: absolute;
        width: 12px;
        height: 15px;
        top: 32px;
        right: 42px;
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
        -webkit-transition: background .3s, -webkit-transform .3s;
        transition: background .3s, -webkit-transform .3s;
        -o-transition: transform .3s, background .3s;
        transition: transform .3s, background .3s;
        transition: transform .3s, background .3s, -webkit-transform .3s;
        background: url(../images/faq.svg) center no-repeat; }
      .serv-faq-title.open {
        color: #DC9D00; }
        .serv-faq-title.open::before {
          -webkit-transform: rotate(180deg);
              -ms-transform: rotate(180deg);
                  transform: rotate(180deg);
          background: url(../images/arrow_s_y.svg) center no-repeat; }
    .serv-faq-des {
      display: none;
      float: left;
      width: 100%;
      border-top: 1px solid #E8E8E8;
      padding: 24px 36px; }
      .serv-faq-des p {
        float: left;
        width: 100%;
        font-size: 18px;
        line-height: 31px; }
      .serv-faq-des > a {
        float: left;
        margin-top: 11px;
        padding: 0 58px 0 37px;
        border: 1px solid #E8E8E8;
        -webkit-border-radius: 50px;
                border-radius: 50px;
        height: 50px;
        line-height: 48px;
        font-size: 16px;
        font-weight: 500;
        color: #DC9D00;
        position: relative; }
        .serv-faq-des > a span {
          color: #B0B0B0; }
        .serv-faq-des > a::before {
          content: '';
          position: absolute;
          width: 9px;
          height: 14px;
          top: 17px;
          right: 32px;
          background: url(../images/arrow_ss.svg) center no-repeat; }

.search {
  width: 546px;
  height: 55px;
  position: relative;
  display: inline-block;
  margin-top: 43px; }
  .search input {
    float: left;
    width: 100%;
    height: 100%;
    line-height: 55px;
    padding-left: 66px;
    font-size: 18px;
    background: #fff;
    -webkit-border-radius: 50px;
            border-radius: 50px; }
  .search button {
    position: absolute;
    width: 66px;
    height: 55px;
    background: url(../images/search.svg) center no-repeat;
    left: 0;
    top: 0;
    -webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s; }
  .search-close {
    position: absolute;
    width: 64px;
    height: 55px;
    background: url(../images/close.svg) center no-repeat;
    right: 0;
    top: 0;
    opacity: 0;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s; }
  .search.active button {
    background: url(../images/search-a.svg) center no-repeat; }
  .search.active .search-close {
    opacity: .3; }

.news {
  float: left;
  width: 100%;
  background: #fff;
  padding: 51px 0 99px; }
  .news-item {
    float: left;
    width: -webkit-calc(50% - 30px);
    width: calc(50% - 30px);
    height: 300px;
    background-image: url(../images/news-none.jpg);
    -webkit-background-size: cover;
            background-size: cover;
    background-position: center;
    margin: 0 15px 30px;
    position: relative;
    padding: 42px 41px 0; }
    .news-item::before {
	  content: '';
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: linear-gradient(50deg, rgba(220, 157, 0, 0.8), rgba(0, 0, 0, 0)), rgba(0, 0, 0, 0.5);  
    }
    .news-item::after {
      content: '';
      position: absolute;
      width: 24px;
      height: 24px;
      right: 20px;
      top: 22px;
      background: url(../images/logo_s_w.svg) center no-repeat; }
    .news-item-date {
	    position: inherit;
	    display: block;
	    z-index: 1;
    }
    .news-item-title {
	    position: inherit;
	    display: block;
	    z-index: 1;
    }
    .news-item-info {
	    position: inherit;
	    display: block;
	    z-index: 1;
    }
    .news-item-date {
      float: left;
      width: 100%;
      font-size: 20px;
      color: #fff; }
      .news-item-date span {
        display: block;
        margin-top: 7px;
        font-size: 12px;
        opacity: .5; }
    .news-item-title {
      float: left;
      width: 100%;
      height: 107px;
      margin-top: 34px;
      font-size: 32px;
      line-height: 38px;
      font-weight: 700;
      color: #fff; }
    .news-item-info {
      float: left;
      width: 100%; }
      .news-item-info p {
        float: left;
        height: 36px;
        line-height: 36px;
        color: #fff;
        font-size: 13px;
        padding: 0 23px;
        margin-right: 10px;
        -webkit-border-radius: 25px;
                border-radius: 25px;
        background: rgba(0, 0, 0, 0.3); }
        .news-item-info p:last-child {
          margin-right: 0; }
  .news-load {
    display: inline-block;
    margin-top: 23px;
    padding: 0 31px 0 38px;
    height: 50px;
    letter-spacing: 0.1em;
    font-weight: 500;
    font-size: 14px;
    color: #fff;
    background: #343434;
    -webkit-border-radius: 50px;
            border-radius: 50px;
    cursor: pointer;
    text-transform: uppercase; }
    .news-load span {
      float: left;
      line-height: 54px;
      padding-right: 19px;
      background: url(../images/news-load.svg) right 18px no-repeat; }
  .news-modal {
    width: 716px;
    position: relative;
    margin: 20px auto 50px;
    background: #fff;
    overflow: hidden; }
    .news-modal-date {
      float: left;
      width: 100%;
      font-size: 20px;
      padding: 56px 62px 0; }
    .news-modal-title {
      float: left;
      width: 100%;
      margin-top: 27px;
      font-size: 36px;
      font-weight: 700;
      padding: 0 62px; }
    .news-modal-cont {
      float: left;
      width: 100%;
      padding: 0 62px;
      margin-top: 24px; }
      .news-modal-cont p {
        display: block;
        font-size: 18px;
        line-height: 29px;
        margin-bottom: 34px; }
        .news-modal-cont p i {
          font-style: italic; }
          .news-modal-cont p i.grey {
            display: block;
            color: #969696;
            font-size: 14px; }
        .news-modal-cont p b {
          font-weight: 700; }
        .news-modal-cont p span {
          display: block;
          margin-bottom: 17px; }
    .news-modal-gall {
      margin-bottom: 40px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .news-modal-gall img {
        width: 30%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 30%;
            -ms-flex: 0 0 30%;
                flex: 0 0 30%;
        float: left;
        margin-bottom: 15px; }
    .news-modal-nav {
      float: left;
      width: 100%;
      border-top: 1px solid rgba(0, 0, 0, 0.1);
      padding: 34px 62px; }
      .news-modal-nav a {
        font-weight: 500;
        font-size: 12px;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: #000;
        position: relative;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
        .news-modal-nav a:hover {
          opacity: 0.8; }
        .news-modal-nav a::before {
          content: '';
          position: absolute;
          width: 14px;
          height: 9px;
          background: url(../images/arrow_r_y.svg) center no-repeat;
          -webkit-background-size: contain;
                  background-size: contain; }
        .news-modal-nav a.prev {
          float: left;
          padding-left: 23px; }
          .news-modal-nav a.prev::before {
            left: 0;
            -webkit-transform: rotate(180deg);
                -ms-transform: rotate(180deg);
                    transform: rotate(180deg);
            top: 1px; }
        .news-modal-nav a.next {
          float: right;
          padding-right: 23px; }
          .news-modal-nav a.next::before {
            right: 0;
            top: 0; }

.mfp-close {
  position: absolute;
  width: 34px;
  height: 34px;
  opacity: .22;
  top: 26px;
  right: 36px;
  background: url(../images/modal-close.svg) center no-repeat;
  cursor: pointer;
  -webkit-transition: opacity .2s;
  -o-transition: opacity .2s;
  transition: opacity .2s; }
  .mfp-close:hover {
    opacity: .8; }

.object {
  float: left;
  width: 100%;
  background: #fff;
  padding: 127px 0 52px; }
  .object .serv-title {
    line-height: 45px;
    margin-bottom: 57px; }
  .object-title {
    float: left;
    width: 100%;
    margin-top: 130px;
    text-align: center;
    color: #000;
    font-size: 48px;
    font-weight: 700; }
  .object-map {
    float: left;
    width: 100%;
    height: 800px; }
  .object-p {
    float: left;
    width: 100%;
    background: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .object-p .row {
      padding: 0 15px; }
    .object-p .serv-title {
      margin: 86px 0 25px; }
    .object-p .serv-p-st {
      margin-top: 61px; }
    .object-p-des {
      margin-top: 35px; }
    .object-p-gm {
      padding: 3px 0 0 48px;
      display: inline-block;
      height: 38px;
      background: url(../images/logo_s_y.svg) left center no-repeat;
      font-size: 12px;
      line-height: 16px;
      color: #8F8F8F;
      text-align: left;
      margin-bottom: 75px; }
      .object-p-gm b {
        display: block;
        font-weight: 500;
        font-size: 14px;
        line-height: 18px;
        color: #000; }
  .object-img {
    float: left;
    width: 100%;
    height: 500px;
    -webkit-background-size: cover;
            background-size: cover;
    background-position: center; }
  .object-coll {
    float: left;
    width: -webkit-calc(100% + 6px);
    width: calc(100% + 6px);
    margin-left: -3px;
    margin-bottom: 105px; }
    .object-coll-all {
      display: none; }
    .object-coll-top {
      margin-top: 74px; }
    .object-coll-last {
      margin-bottom: 0; }
    .object-coll a {
      float: left;
      width: -webkit-calc(25% - 6px);
      width: calc(25% - 6px);
      height: 142px;
      margin: 0 3px 6px;
      -webkit-background-size: cover;
              background-size: cover; }
      .object-coll a.an {
        width: -webkit-calc(50% - 6px);
        width: calc(50% - 6px);
        height: 290px; }
      .object-coll a.right {
        float: right; }
  .object-pn {
    padding-top: 107px; }
  .object-video {
    margin: 53px 0 6px; }
    .object-video a {
      height: 378px; }
  .object-crs {
    float: left;
    width: 100%;
    height: 613px;
    background: linear-gradient(50deg, rgba(220, 157, 0, 1), rgba(0, 0, 0, 1));
    -webkit-background-size: cover;
            background-size: cover;
    overflow: hidden; }
    .object-crs-title {
      float: left;
      width: 100%;
      margin: 74px 0 37px;
      font-size: 48px;
      text-align: center;
      font-weight: 700;
      color: #fff; }
  .object-sl {
    float: left;
    width: 100%;
    position: relative; }
    .object-sl-item {
      float: left;
      width: -webkit-calc(50% - 30px);
      width: calc(50% - 30px);
      margin: 0 15px;
      height: 355px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center;
      padding: 274px 0 0 31px;
      color: #fff;
      font-size: 32px;
      font-weight: 700;
      position: relative; }
      .object-sl-item::before {
	    content: '';
		width: 100%;
	    height: 100%;
	    position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: rgba(0, 0, 0, 0.2);
      }
      .object-sl-item span {
        display: block;
        margin-top: 3px;
        font-weight: 400;
        font-size: 14px;
        position: inherit;
        z-index: 1;
        margin-bottom: 25px; }
       .object-sl-item b {
	       display: block;
	       z-index: 1;
	       position: inherit;
       }
    .object-sl .slick-list {
      overflow: visible; }
    .object-sl .slick-arrow {
      position: absolute;
      top: 50%;
      width: 30px;
      height: 30px;
      margin-top: -15px;
      background: url(../images/serv-arr-w.svg) center no-repeat;
      -webkit-background-size: 20px 13px;
              background-size: 20px 13px;
      font-size: 0;
      z-index: 2; }
    .object-sl .slick-prev {
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg);
      left: -64px; }
    .object-sl .slick-next {
      right: -64px; }

.company {
  float: left;
  width: 100%;
  background: #fff;
  padding: 82px 0 115px; }
  .company .row {
    padding: 0 15px; }
  .company-info {
    margin-top: 54px;
    float: left;
    width: 100%;
    padding: 0 100px; }
    .company-info p {
      float: left;
      width: 100%;
      font-size: 24px;
      line-height: 38px;
      font-weight: 300;
      margin-top: 22px; }
      .company-info p:first-child {
        margin-top: 0; }
    .company-info .img {
      float: left;
      width: 100%;
      margin-top: 40px;
      height: 357px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center; }
  .company-quote {
    float: left;
    width: 100%;
    height: 525px;
    background: url(../images/quote.png) center no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
    padding-top: 69px;
    position: relative; }
    .company-quote::before {
	  content: '';
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
	  background: #373737;
	  opacity: 0.8;
    }
    .company-quote .row {
	    position: inherit;
	    z-index: 1;
    }
    .company-quote .title {
      color: #fff; }
    .company-quote-block {
      float: left;
      width: 100%;
      margin-top: 54px;
      padding: 0 200px; }
    .company-quote-img {
      float: left;
      width: 233px;
      height: 233px;
      margin-right: 61px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center; }
    .company-quote-des {
      color: #fff;
      font-size: 20px;
      line-height: 32px;
      margin-top: -6px; }
      .company-quote-des b {
        font-weight: 700; }
    .company-quote-cam {
      margin-top: 27px;
      color: #fff;
      font-size: 20px;
      line-height: 26px;
      font-weight: 700; }
      .company-quote-cam span {
        display: block;
        font-weight: 400;
        font-size: 13px;
        line-height: 17px; }
  .company-team {
    float: left;
    width: 100%;
    margin: 71px 0 11px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .company-team-item {
      float: left;
      width: 360px;
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 360px;
          -ms-flex: 0 0 360px;
              flex: 0 0 360px;
      margin-bottom: 50px; }
    .company-team-img {
      float: left;
      width: 100%;
      height: 466px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center; }
    .company-team-name {
      float: left;
      width: 100%;
      margin-top: 30px;
      text-align: center;
      font-size: 32px;
      font-weight: 700; }
      .company-team-name span {
        display: block;
        font-size: 16px;
        margin-top: 7px;
        font-weight: 400; }
  .company-but {
    display: inline-block;
    background: #343434;
    -webkit-border-radius: 50px;
            border-radius: 50px;
    padding: 0 36px 0 40px;
    height: 50px;
    line-height: 54px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #FFF;
    font-size: 14px;
    font-weight: 500; }
    .company-but-top {
      margin-top: 61px; }
    .company-but span {
      padding-right: 23px;
      background: url(../images/serv-arr-w.svg) right 2px no-repeat;
      -webkit-background-size: 14px 9px;
              background-size: 14px 9px; }
  .company-proc {
    float: left;
    width: 100%;
    height: auto;
    padding: 101px 0 100px;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: 1920px auto;
            background-size: 1920px auto;
            position: relative; }
	.company-proc::before {
	  content: '';
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  right: 0;
	  bottom: 0;
	  left: 0;
	  background: #353535;
	  opacity: 0.8;
	}
    .company-proc .row {
      width: 960px;
      position: inherit;
      z-index: 1; }
    .company-proc .title {
      color: #fff; }
    .company-proc-block {
      margin-top: 73px;
      float: left;
      width: 100%; }
  .company-tabs {
    float: left;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .company-tabs-i {
      float: left;
      width: 100%;
      margin-top: 46px;
      text-align: center;
      display: none; }
      .company-tabs-i.active {
        display: block; }
      .company-tabs-i p {
        display: block;
        text-align: left;
        font-weight: 300;
        font-size: 24px;
        line-height: 38px;
        margin-bottom: 20px;
        color: #fff; }
      .company-tabs-i a {
        margin-top: 28px; }
    .company-tabs span {
      float: left;
      width: auto;
      font-size: 16px;
      font-weight: 500;
      color: #fff;
      margin: 0 14px;
      padding: 0 7px 13px;
      position: relative;
      cursor: pointer; }
      .company-tabs span::before {
        content: '';
        position: absolute;
        width: 100%;
        height: 2px;
        background: #fff;
        top: 27px;
        left: 0;
        opacity: 0;
        -webkit-transition: opacity .2s;
        -o-transition: opacity .2s;
        transition: opacity .2s; }
      .company-tabs span.active {
        font-weight: 700; }
        .company-tabs span.active::before {
          opacity: 1; }
  .company-st {
    float: left;
    width: 100%;
    background: #fff;
    padding: 130px 0; }
    .company-st .row {
      padding: 0 15px; }
    .company-st .serv-title {
      line-height: 45px;
      margin-bottom: 87px; }
    .company-st-img {
      height: 400px;
      float: left;
      width: 100%;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center; }
    .company-st-block {
      float: left;
      width: 100%;
      margin-top: 103px; }
    .company-st-item {
      float: left;
      width: 100%;
      margin-bottom: 63px; }
      .company-st-item:last-child {
        margin-bottom: 0; }
      .company-st-item span {
        float: left;
        width: 150px;
        height: 100%;
        font-size: 40px;
        color: #000; }
      .company-st-item p {
        float: right;
        width: 995px;
        padding: 0 0 27px 44px;
        font-size: 20px;
        line-height: 34px;
        border-left: 1px solid rgba(0, 0, 0, 0.1); }
        .company-st-item p:last-child {
          padding-bottom: 0; }
        .company-st-item p img {
          float: left;
          width: 100%; }
        .company-st-item p a {
          float: left;
          padding: 0 46px;
          height: 50px;
          line-height: 50px;
          border: 1px solid #E8E8E8;
          -webkit-border-radius: 50px;
                  border-radius: 50px;
          margin-right: 36px;
          background: rgba(0, 0, 0, 0);
          -webkit-transition: background .2s;
          -o-transition: background .2s;
          transition: background .2s;
          color: #DC9D00; }
          .company-st-item p a:hover {
            background: rgba(0, 0, 0, 0.02); }
          .company-st-item p a span {
            color: #DC9D00;
            width: auto;
            font-size: 16px;
            font-weight: 500;
            padding-right: 22px;
            background: url(../images/arrow_ss.svg) right center no-repeat; }
  .company-tm {
    float: left;
    width: 100%;
    background: #fff;
    padding: 116px 0 133px; }
    .company-tm .row {
      padding: 0 15px; }
    .company-tm-item {
      float: left;
      width: 100%;
      height: 490px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center;
      padding: 56px 0 0 68px;
      margin-bottom: 50px;
      /* background: linear-gradient(90deg,#bbbbbb, #dddddd); */
     }
    .company-tm-name {
      float: left;
      width: 100%;
      font-size: 32px;
      color: #fff;
      font-weight: 700; }
      .company-tm-name span {
        font-weight: 400;
        display: block;
        font-size: 16px;
        margin-top: 9px; }
    .company-tm-des {
      float: left;
      width: 100%;
      height: 225px;
      padding-right: 650px;
      margin-top: 30px;
      font-size: 18px;
      line-height: 29px;
      color: #fff; }
    .company-tm-but {
      float: left;
      width: auto;
      padding: 0 32px;
      height: 50px;
      line-height: 54px;
      font-weight: 500;
      font-size: 14px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: #fff;
      background: #DC9D00;
      -webkit-border-radius: 50px;
              border-radius: 50px; }
      .company-tm-but span {
        padding-right: 22px;
        background: url(../images/serv-arr-w.svg) right 1px no-repeat;
        -webkit-background-size: 14px 9px;
                background-size: 14px 9px; }
    .company-tm-last {
      float: left;
      width: 100%;
      height: 270px;
      -webkit-background-size: cover;
              background-size: cover;
      background-position: center;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      position: relative; }
      .company-tm-last::before {
	    content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.3);
      }
      .company-tm-last span {
        margin: auto;
        font-size: 40px;
        line-height: 44px;
        text-align: center;
        color: #fff;
        font-weight: 700;
        position: inherit;
        z-index: 1; }
  .company-modal {
    width: 716px;
    margin: auto;
    background: #fff;
    padding: 91px 122px 99px;
    overflow: hidden; }
    .company-modal .title h2 {
      font-size: 36px; }
      .company-modal .title.success {
        text-align: center;
      }
      .company-modal .title.success p {
        display: block;
        text-align: center;
        margin-top: 85px;
      }
      .company-modal .title.success button {
        margin-top: 50px;
      }
    .company-modal-des {
      float: left;
      width: 100%;
      text-align: center;
      margin-top: 27px;
      font-size: 18px;
      line-height: 27px; }
  .company-form {
    float: left;
    width: 100%;
    margin-top: 35px;
    padding: 0 10px; }
    .company-form input {
      float: left;
      width: 100%;
      height: 50px;
      line-height: 48px;
      border: 1px solid #E8E8E8;
      -webkit-border-radius: 50px;
              border-radius: 50px;
      padding-left: 57px;
      margin-bottom: 20px;
      font-size: 16px; }
      .company-form input::-webkit-input-placeholder {
        color: #B8B8BF; }
      .company-form input::-moz-placeholder {
        color: #B8B8BF; }
      .company-form input::-ms-input-placeholder {
        color: #B8B8BF; }
      .company-form input::placeholder {
        color: #B8B8BF; }
      .company-form input.name {
        background: #fff url(../images/f-name.svg) 25px center no-repeat; }
      .company-form input.phone {
        background: #fff url(../images/f-phone.svg) 23px center no-repeat; }
      .company-form input.email {
        background: #fff url(../images/f-email.svg) 25px center no-repeat; }
      .company-form input.date {
        background: #fff url(../images/f-date.svg) 25px center no-repeat; }
      .company-form input.time {
        background: #fff url(../images/f-time.svg) 25px center no-repeat; }
      .company-form input.posi {
        background: #fff url(../images/f-posi.svg) 25px center no-repeat; }
    .company-form textarea {
      float: left;
      width: 100%;
      height: 169px;
      line-height: 22px;
      border: 1px solid #E8E8E8;
      -webkit-border-radius: 30px;
              border-radius: 30px;
      padding: 20px 25px;
      margin-bottom: 20px;
      font-size: 16px; }
      .company-form textarea::-webkit-input-placeholder {
        color: #B8B8BF; }
      .company-form textarea::-moz-placeholder {
        color: #B8B8BF; }
      .company-form textarea::-ms-input-placeholder {
        color: #B8B8BF; }
      .company-form textarea::placeholder {
        color: #B8B8BF; }
    .company-form button {
      float: left;
      width: 100%;
      text-align: center;
      height: 50px;
      line-height: 54px;
      font-weight: 500;
      font-size: 14px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: #fff;
      background: #000;
      -webkit-border-radius: 50px;
              border-radius: 50px;
      margin-bottom: 22px;
      transition: background-color 0.3s;
      -webkit-transition: background-color 0.3s;
      -o-transition: background-color 0.3s; }
      .company-form button span {
        display: inline-block;
        padding-right: 22px;
        background: url(../images/serv-arr-w.svg) right 20px no-repeat;
        -webkit-background-size: 14px 9px;
                background-size: 14px 9px; }
		.company-form button:hover {
			background-color: #DC9D00;
		}
    .company-form > span {
      float: left;
      width: 100%;
      text-align: center;
      font-size: 13px;
      color: #B8B8BF; }
	  
.jobs {
  float: left;
  width: 100%;
  background: #fff;
  padding: 76px 0 117px; }
  .jobs .row {
    padding: 0 15px; }
  .jobs .serv-video {
    margin-bottom: 30px; }
    .jobs .serv-video a span {
      font-size: 36px;
      line-height: 43px;
      font-weight: 700; }
  .jobs-block {
    float: left;
    width: 100%; }
  .jobs-item {
    float: left;
    width: -webkit-calc(33.333% - 20px);
    width: calc(33.333% - 20px);
    margin: 0 30px 30px 0;
    height: 248px;
    text-align: center;
    padding: 67px 25px 0;
    font-size: 32px;
    line-height: 35px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(50deg, rgba(220, 157, 0, 1), rgba(0, 0, 0, 1));
    }
    .jobs-item:nth-child(3n) {
      margin-right: 0; }
    .jobs-item p {
      display: block;
      margin-bottom: 11px; }
      .jobs-item p b {
        display: none; }
    .jobs-item span {
      display: inline-block;
      min-width: 140px;
      padding: 0 25px;
      background: rgba(0, 0, 0, 0.3);
      -webkit-border-radius: 50px;
              border-radius: 50px;
      text-align: center;
      color: #fff;
      line-height: 36px;
      height: 36px;
      font-size: 13px;
      font-weight: 400; }
  .jobs-form {
    padding: 51px 133px;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    .jobs-form-title {
      float: left;
      width: 100%;
      text-align: center;
      font-size: 28px;
      margin-bottom: 33px;
      font-weight: 700; }
    .jobs-form button {
      margin-bottom: 0; }
    .jobs-form-file {
      float: left;
      width: 100%;
      position: relative; }
      .jobs-form-file label {
        float: left;
        width: 100%;
        height: 50px;
        line-height: 48px;
        border: 1px solid #E8E8E8;
        -webkit-border-radius: 50px;
                border-radius: 50px;
        margin-bottom: 20px;
        font-size: 16px;
        color: #000;
        text-align: center; }
      .jobs-form-file input {
        position: absolute;
        width: 100%;
        opacity: 0;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        cursor: pointer; }

.contacts {
  float: left;
  width: 100%;
  background: #fff;
  padding: 70px 0 106px; }
  .contacts .row {
    padding: 0 15px; }
  .contacts-map {
    float: left;
    width: 100%;
    height: 500px;
    margin-top: 62px; }
  .contacts-info {
    float: left;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .contacts-info p {
      float: left;
      text-align: center; }
      .contacts-info p:last-child > a {
        padding-left: 25px; }
      .contacts-info p span {
        float: left;
        width: 100%;
        text-align: center;
        color: rgba(0, 0, 0, 0.3);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        font-size: 11px;
        font-weight: 500; }
      .contacts-info p b {
        float: left;
        width: 100%;
        text-align: center;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        font-size: 30px;
        font-weight: 500;
        margin: 20px 0 13px; }
        .contacts-info p b a {
          color: #000; }
      .contacts-info p > a {
        padding-left: 20px;
        height: 17px;
        line-height: 19px;
        display: inline-block;
        background-repeat: no-repeat;
        background-position: left center;
        font-size: 16px;
        font-weight: 500;
        color: #DC9D00;
        background-size: 14px; }
  .contacts-soc {
    float: left;
    width: 100%;
    margin-top: 42px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .contacts-soc a {
      float: left;
      width: 264px;
      height: 50px;
      border: 1px solid #E8E8E8;
      -webkit-border-radius: 50px;
              border-radius: 50px;
      text-align: center;
      color: #000; }
      .contacts-soc a span {
        line-height: 44px;
        padding: 3px 0 0 37px;
        display: inline-block;
        font-size: 18px;
        font-weight: 500;
        background-repeat: no-repeat;
        background-position: left center; }
  .contacts-b {
    float: left;
    width: 100%;
    background: #fff;
    padding: 89px 0; }
    .contacts-b .row {
      max-width: 1268px; }
  .contacts-table {
    float: left;
    width: 100%;
    margin: 50px 0 98px;
    border: 1px solid #E8E8E8; }
    .contacts-table-left {
      float: left;
      width: 33%;
      border-right: 1px solid #E8E8E8;
      padding: 48px 59px; }
      .contacts-table-left p {
        float: left;
        width: 100%;
        font-size: 16px;
        line-height: 26px;
        margin-bottom: 27px; }
      .contacts-table-left a {
        float: left;
        padding: 0 46px;
        height: 50px;
        line-height: 50px;
        border: 1px solid #E8E8E8;
        -webkit-border-radius: 50px;
                border-radius: 50px; }
        .contacts-table-left a span {
          color: #DC9D00;
          font-size: 16px;
          font-weight: 500;
          padding-right: 22px;
          background: url(../images/arrow_ss.svg) right center no-repeat; }
    .contacts-table-title {
      float: left;
      width: 100%;
      font-size: 28px;
      line-height: 31px;
      color: #000;
      font-weight: 700;
      margin-bottom: 32px; }
    .contacts-table-right {
      float: left;
      width: 67%;
      padding: 23px 0 10px 69px; }
      .contacts-table-right p {
        float: left;
        width: 100%;
        border-bottom: 1px solid #E8E8E8;
        position: relative; }
        .contacts-table-right p:last-child {
          border-bottom: 0; }
        .contacts-table-right p:hover .copy {
          opacity: .2; }
        .contacts-table-right p > span {
          float: left;
          line-height: 61px;
          font-size: 14px;
          font-weight: 500; }
          .contacts-table-right p > span:first-child {
            width: 34%;
            font-weight: 400;
            text-align: right;
            padding-right: 49px;
            color: rgba(0, 0, 0, 0.4); }
    .contacts-table .copy {
      position: absolute;
      width: 16px;
      height: 16px;
      top: 26px;
      right: 80px;
      background: url(../images/copy.svg) center no-repeat;
      opacity: 0;
      cursor: pointer;
      -webkit-transition: opacity .2s;
      -o-transition: opacity .2s;
      transition: opacity .2s; }
      .contacts-table .copy span {
        position: absolute;
        display: none;
        left: 23px;
        top: -10px;
        height: 35px;
        line-height: 35px;
        padding: 0 12px 0 19px;
        font-size: 12px;
        color: #fff;
        white-space: nowrap;
        background: url(../images/copy-b.svg) left center no-repeat; }
      .contacts-table .copy:hover {
        opacity: 1 !important; }
        .contacts-table .copy:hover span {
          display: block; }
  .contacts-form {
    float: left;
    width: 100%;
    margin-top: 53px;
    padding: 60px 60px 39px;
    border: 1px solid #E8E8E8; }
    .contacts-form .g-con-input {
      width: -webkit-calc(33.333% - 20px);
      width: calc(33.333% - 20px);
      margin: 0 0 32px 30px; }
      .contacts-form .g-con-input:first-child {
        margin-left: 0; }
      .contacts-form .g-con-input input {
        width: 100%; }
    .contacts-form textarea {
      float: left;
      width: 100%;
      height: 214px;
      line-height: 22px;
      border: 1px solid #E8E8E8;
      -webkit-border-radius: 30px;
              border-radius: 30px;
      padding: 20px 25px;
      margin-bottom: 32px;
      font-size: 16px; }
      .contacts-form textarea::-webkit-input-placeholder {
        color: #B8B8BF; }
      .contacts-form textarea::-moz-placeholder {
        color: #B8B8BF; }
      .contacts-form textarea::-ms-input-placeholder {
        color: #B8B8BF; }
      .contacts-form textarea::placeholder {
        color: #B8B8BF; }
    .contacts-form button {
      width: 263px; }
    .contacts-form > span {
      float: left;
      line-height: 50px;
      font-size: 13px;
      color: #B8B8BF; }
    .contacts-form-file {
      float: right;
      width: 263px;
      margin-right: 20px;
      position: relative; }
      .contacts-form-file-c {
        position: absolute;
        width: 20px;
        height: 20px;
        background: url(../images/c-c.svg) center no-repeat;
        top: 15px;
        right: 19px;
        z-index: 5; }
      .contacts-form-file label {
        float: left;
        width: 100%;
        height: 50px;
        line-height: 48px;
        border: 1px solid #E8E8E8;
        -webkit-border-radius: 50px;
                border-radius: 50px;
        font-size: 16px;
        font-weight: 500;
        color: #B8B8BF;
        text-align: center; }
        .contacts-form-file label.active {
          color: #DC9D00; }
      .contacts-form-file input {
        position: absolute;
        width: 100%;
        opacity: 0;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        cursor: pointer; }

.phone {
  display: none; }
form .phone {
	display: block;
}
@media screen and (max-width: 1850px) {
  .cap-phone {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .cap-phone a {
      font-size: 18px;
      margin-right: 0; }
      .cap-phone a:first-child {
        margin-right: 0; }
      .cap-phone a span {
        font-size: 10px; } }

@media screen and (max-width: 1600px) {
  .cont.fix {
    -webkit-transform: translate(-265px, 0px) scale(0.9);
        -ms-transform: translate(-265px, 0px) scale(0.9);
            transform: translate(-265px, 0px) scale(0.9); } }

@media screen and (max-width: 1170px) {
  .cap-info-dop, .cap-info-des, .cap-info-phone {
    display: none; }
  .cap-phone {
    display: none; }
  .phone {
    display: block; }
  .detop {
    display: none; }
  .g-con-input {
    width: -webkit-calc(33.333% - 20px);
    width: calc(33.333% - 20px);
    margin: 0 0 0 30px; }
    .g-con-input:first-child {
      margin-left: 0; }
    .g-con-input input {
      width: 100%; }
  .g-con button {
    margin-top: 30px; }
  .serv-item-info {
    width: 70%; }
  .serv-title br {
    display: none; }
  .company-team-item {
    width: -webkit-calc(33% - 20px);
    width: calc(33% - 20px);
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 -webkit-calc(33% - 20px);
        -ms-flex: 0 0 calc(33% - 20px);
            flex: 0 0 calc(33% - 20px); }
  .company-tm-des {
    padding-right: 50%; }
  .mfp-wrap {
    top: 0 !important;
    height: 100vh !important;
    position: fixed !important; }
  .mfp-content {
    overflow-x: auto;
    height: 100vh; }
  .contacts-table-right {
    padding-left: 0; }
    .contacts-table-right p {
      padding-left: 30px; }
      .contacts-table-right p span:first-child {
        width: auto;
        padding-right: 30px; }
  .contacts-table-left {
    padding: 30px 20px; }
    .contacts-table-left a {
      padding: 0;
      width: 100%;
      text-align: center; } }

@media screen and (max-width: 969px) {
  .cap-info {
    padding: 28px 25px;
    position: relative; }
    .cap-info-logo {
      width: 160px;
      height: 44px;
      -webkit-background-size: cover;
              background-size: cover;
      position: absolute;
      left: 50%;
      top: 0;
      margin-top: 28px;
      margin-left: -75px;
      -webkit-transition: background 0s, margin 0s, margin-top .3s, width 0s;
      -o-transition: background 0s, margin 0s, margin-top .3s, width 0s;
      transition: background 0s, margin 0s, margin-top .3s, width 0s; }
    .cap-info-menu {
      margin-top: 13px;
      -webkit-transition: margin .3s;
      -o-transition: margin .3s;
      transition: margin .3s; }
    .cap-info-lan {
      width: 27px;
      height: 24px;
      margin: 9px 0 0;
      float: left;
      -webkit-transition: margin .3s;
      -o-transition: margin .3s;
      transition: margin .3s; }
      .cap-info-lan::before {
        display: none; }
  .cap.fixed .cap-info, .cap.fix .cap-info {
    padding: 13px 25px;
    height: 60px;
    -webkit-transition: background .7s;
    -o-transition: background .7s;
    transition: background .7s; }
    .cap.fixed .cap-info-logo, .cap.fix .cap-info-logo {
      width: 30px;
      height: 34px;
      margin-top: 13px;
      margin-left: -15px;
      background-position: left;
      -webkit-background-size: cover;
      background-size: cover; }
    .cap.fixed .cap-info-menu, .cap.fix .cap-info-menu {
      margin-top: 7px; }
    .cap.fixed .cap-info-lan, .cap.fix .cap-info-lan {
      margin-top: 5px; }
  .cap-lan {
    padding: 15px 25px;
    height: 69px; }
    .cap-lan > span {
      line-height: 38px;
      height: 38px;
      font-size: 12px; }
    .cap-lan a {
      line-height: 42px;
      height: 38px;
      padding: 0 21px;
      margin-left: 9px; }
      .cap-lan a span {
        font-size: 14px;
        font-weight: 400;
        -webkit-background-size: 18px 18px;
                background-size: 18px 18px;
        padding-left: 28px;
        background-position: left 10px; }
  .header {
    min-height: 500px; }
    .header-title {
      width: 320px;
      padding-top: 88px;
      font-size: 10px;
      letter-spacing: 0.13em; }
    .header-info {
      bottom: 29px;
      padding: 0 25px;
      white-space: nowrap;
      overflow-y: auto; }
      .header-info-news {
        display: none; }
      .header-info a {
        display: inline-block;
        float: none !important;
        margin: 0 10px 0 0 !important;
        height: 34px;
        line-height: 36px;
        padding: 0 34px 0 17px;
        background: rgba(0, 0, 0, 0.15) !important; }
        .header-info a::before {
          width: 11px;
          height: 11px;
          top: 11px;
          right: 15px;
          -webkit-background-size: contain;
                  background-size: contain; }
        .header-info a.right {
          display: none; }
  .title span {
    font-size: 12px; }
  .title h2 {
    font-size: 30px;
    margin-top: 10px; }
  .g-serv {
    padding: 67px 0; }
    .g-serv-block {
      margin-top: 37px; }
    .g-serv-item {
      padding: 22px 25px 25px; }
      .g-serv-item h3 {
        font-size: 22px;
        color: #000 !important; }
      .g-serv-item span {
        font-size: 14px;
        line-height: 21px;
        margin-top: 14px;
        color: #000 !important; }
      .g-serv-item-go, .g-serv-item-bg {
        display: none; }
  .g-new {
    padding: 46px 0 57px; }
    .g-new-block {
      margin-top: 43px; }
    .g-new-item {
      padding: 29px 27px 26px; }
      .g-new-item::before {
        top: 13px;
        right: 13px; }
      .g-new-item-go {
        display: none; }
    .g-new-date {
      font-size: 14px; }
      .g-new-date span {
        display: none; }
    .g-new-but {
      margin-top: 34px; }
    .g-new h3 {
      margin-top: 10px;
      font-size: 22px;
      font-weight: 500;
      line-height: 29px; }
  .g-geo {
    padding: 57px 0 80px; }
    .g-geo-block {
      margin-top: 32px; }
    .g-geo-item {
      height: 221px;
      margin-bottom: 30px;
      padding: 152px 25px 0; }
      .g-geo-item::after {
        top: 15px;
        right: 14px; }
    .g-geo-title {
      font-size: 30px;
      position: relative; }
      .g-geo-title span {
        position: absolute;
        top: 30px;
        left: 0;
        font-size: 13px;
        color: #fff;
        padding-right: 19px;
        background: url(../images/serv-arr-w.svg) right 0 no-repeat;
        -webkit-background-size: 12px 8px;
                background-size: 12px 8px; }
    .g-geo-info, .g-geo-cl, .g-geo-go {
      display: none; }
    .g-geo-all {
      margin-top: 0;
      padding: 0;
      background: none !important; }
      .g-geo-all::before {
	      content: none;
      }
      .g-geo-all > span {
        display: none; }
      .g-geo-all a {
        margin-top: 3px; }
  .g-epc {
    min-height: 500px; }
    .g-epc-dop {
      font-size: 12px;
      letter-spacing: 0.1em; }
    .g-epc-title {
      margin-top: 32px;
      font-size: 30px;
      line-height: 33px; }
    .g-epc-des {
      margin-top: 22px;
      font-size: 16px;
      line-height: 24px; }
    .g-epc-but {
      margin-top: 30px; }
    .g-epc-info {
      display: none; }
  .g-bui {
    padding: 146px 15px; }
    .g-bui-dop {
      font-size: 12px;
      letter-spacing: 0.1em; }
    .g-bui-title {
      margin-top: 37px;
      font-size: 24px;
      line-height: 36px;
      font-weight: 300; }
      .g-bui-title br {
        display: none; }
    .g-bui-but {
      margin-top: 55px; }
  .g-abo {
    min-height: 500px; }
    .g-abo-dop {
      font-size: 12px;
      letter-spacing: 0.1em; }
    .g-abo-title {
      margin-top: 21px;
      font-size: 30px;
      line-height: 33px; }
    .g-abo-but, .g-abo-dow {
      margin-top: 30px; }
  .g-con {
    padding: 74px 0 53px; }
    .g-con-form {
      padding: 0 25px;
      margin-top: 34px;
      border: 0; }
      .g-con-form button {
        margin-top: 0;
        width: 100%; }
    .g-con-input {
      width: 100%;
      margin: 0 0 20px; }
    .g-con-des {
      line-height: 17px; }
  .footer {
    padding: 40px 0; }
    .footer-col {
      width: 50%; }
      .footer-col:nth-child(2), .footer-col:nth-child(3) {
        display: none; }
    .footer-title {
      margin-top: 0; }
  .menu-cont {
    width: 287px;
    overflow-x: auto; }
  .menu-logo {
    margin: 55px 0 0 70px; }
  .menu-nav {
    position: relative;
    left: auto;
    top: auto;
    margin: 40px 0 0 77px;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    float: left; }
    .menu-nav li a {
      margin-bottom: 28px; }
  .menu-but {
    bottom: auto;
    left: auto;
    position: relative;
    margin: 40px;
    float: left; }
  .p-header {
    height: 450px; }
    .p-header-title span {
      font-size: 12px;
      line-height: 12px; }
    .p-header-title h1 {
      font-size: 27px;
      line-height: 30px;
      margin-top: 20px; }
  .p-full {
    height: 100vh;
    min-height: 450px; }
  .serv {
    padding: 65px 0 30px; }
    .serv-title {
      font-size: 24px;
      line-height: 36px;
      padding: 0 25px;
      margin-bottom: 65px; }
    .serv-item {
      height: auto;
      padding: 38px 39px 50px;
      margin-bottom: 30px;
      background-blend-mode: multiply;
      background-color: rgba(0, 0, 0, 0.4); }
      .serv-item-title {
        font-size: 30px;
        line-height: 36px; }
      .serv-item-des {
        font-size: 16px;
        line-height: 26px;
        margin-top: 19px;
        padding: 0; }
      .serv-item-info {
        display: none; }
      .serv-item-but {
        position: relative;
        float: left;
        margin-top: 28px;
        left: auto;
        bottom: auto;
        height: 41px;
        line-height: 43px;
        font-size: 12px;
        padding: 0 25px; }
    .serv-img {
      height: 450px; }
    .serv-p {
      padding: 50px 0 30px; }
      .serv-p:last-child {
        padding-bottom: 0; }
      .serv-p-title {
        font-size: 30px;
        line-height: 33px; }
        .serv-p-title br {
          display: none; }
      .serv-p-des {
        margin-top: 28px; }
        .serv-p-des p {
          font-size: 20px;
          line-height: 32px;
          margin-bottom: 21px; }
      .serv-p-info {
        margin: 44px 0 0;
        display: block; }
        .serv-p-info p {
          width: 100%;
          padding-top: 23px;
          margin-bottom: 31px;
          font-size: 18px;
          line-height: 27px; }
          .serv-p-info p:last-child {
            margin-bottom: 10px; }
      .serv-p-st {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        margin-top: 40px; }
        .serv-p-st p {
          width: 50%;
          -webkit-box-flex: 0;
          -webkit-flex: 0 0 50%;
              -ms-flex: 0 0 50%;
                  flex: 0 0 50%; }
    .serv-video {
      margin-bottom: 0; }
      .serv-video a span {
        font-size: 0; }
    .serv-fq {
      padding: 0 15px; }
      .serv-fq-title {
        margin-top: 55px;
        padding: 0;
        font-size: 30px;
        line-height: 33px; }
  .search {
    width: 280px;
    margin-top: 22px;
    height: 45px; }
    .search input {
      line-height: 45px;
      padding-left: 48px;
      font-size: 14px; }
    .search button {
      width: 50px;
      height: 45px;
      -webkit-background-size: 15px 16px;
              background-size: 15px 16px; }
    .search.active button {
      -webkit-background-size: 15px 16px;
              background-size: 15px 16px; }
    .search-close {
      width: 50px;
      height: 45px; }
  .news-item {
    height: 226px;
    padding: 35px 37px; }
    .news-item-title {
      font-size: 28px;
      line-height: 34px;
      margin-top: 17px; }
    .news-item-info {
      display: none; }
  .object {
    padding: 40px 0; }
    .object .serv-title {
      line-height: 36px;
      margin-bottom: 0; }
    .object-title {
      font-size: 30px;
      line-height: 33px;
      margin-top: 50px;
      padding: 0 25px; }
    .object-map {
      height: 660px; }
  .company {
    padding: 57px 0 30px; }
    .company-proc .row {
      width: 100%; }
    .company-info {
      margin-top: 39px;
      padding: 0; }
      .company-info p {
        font-size: 20px;
        line-height: 32px; }
      .company-info .img {
        margin-top: 27px; }
    .company-quote {
      height: auto;
      padding: 49px 0 39px; }
      .company-quote-block {
        margin-top: 27px;
        padding: 0 25px;
        position: relative; }
      .company-quote-img {
        position: absolute;
        width: 61px;
        height: 61px;
        margin: 0;
        left: 25px;
        bottom: 0; }
      .company-quote-des {
        font-size: 16px;
        line-height: 26px;
        margin-top: 0; }
      .company-quote-cam {
        margin-top: 39px;
        font-size: 24px;
        line-height: 31px;
        padding: 0 0 8px 82px; }
    .company-team {
      margin: 46px 0 0; }
      .company-team-item {
        width: -webkit-calc(50% - 10px);
        width: calc(50% - 10px);
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 -webkit-calc(50% - 10px);
            -ms-flex: 0 0 calc(50% - 10px);
                flex: 0 0 calc(50% - 10px);
        margin-bottom: 32px; }
      .company-team-img {
        height: 410px;
        background-position: top center; }
      .company-team-name {
        margin-top: 27px;
        font-size: 20px; }
        .company-team-name span {
          margin-top: 5px;
          font-size: 10px; }
    .company-proc {
      padding: 73px 0 72px; }
      .company-proc-block {
        margin-top: 50px; }
    .company-tabs {
      overflow-y: auto;
      white-space: nowrap;
      display: block; }
      .company-tabs span {
        float: none;
        display: inline-block; }
      .company-tabs-i p {
        font-size: 16px;
        line-height: 26px;
        margin: 20px 0 0; }
        .company-tabs-i p:first-child {
          margin-top: 0; }
    .company-st {
      padding: 46px 0 51px; }
      .company-st .serv-title {
        line-height: 36px;
        margin-bottom: 40px; }
      .company-st-block {
        margin-top: 50px; }
      .company-st-item {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding-bottom: 35px; }
        .company-st-item:last-child {
          border-bottom: 0;
          padding-bottom: 0; }
        .company-st-item span {
          margin-bottom: 15px; }
        .company-st-item p {
          width: 100%;
          font-size: 16px;
          line-height: 26px;
          padding: 0;
          margin-bottom: 20px;
          border-left: 0; }
          .company-st-item p:last-child {
            margin-bottom: 0; }
    .company-tm {
      padding: 49px 0 68px; }
  .jobs-block a {
    width: -webkit-calc(33.333% - 10px);
    width: calc(33.333% - 10px);
    margin: 0 15px 15px 0;
    padding: 67px 10px 0; }
  .contacts {
    padding: 45px 0; }
    .contacts-info {
      display: block; }
      .contacts-info p {
        width: 100%;
        float: left;
        margin-bottom: 36px; }
        .contacts-info p:last-child {
          margin-bottom: 0; }
        .contacts-info p b {
          font-size: 24px;
          margin: 18px 0 12px; }
    .contacts-soc a {
      width: 65px; }
      .contacts-soc a span {
        font-size: 0;
        background-position: center; }
    .contacts-form .g-con-input {
      width: 100%;
      margin: 0 0 20px; }
    .contacts-form > span {
      width: 100%;
      text-align: center; }
    .contacts-form-file {
      width: 100%;
      margin: 0 0 20px; }
  .mfp-figure {
    height: 100vh;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative; }
    .mfp-figure .mfp-close {
      position: absolute;
      z-index: 0;
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      display: block; }
    .mfp-figure figure {
      margin: auto;
      position: relative;
      z-index: 2; }
      .mfp-figure figure img {
        width: 100%;
        margin: auto; }
      .mfp-figure figure figcaption {
        display: none; } }

@media screen and (max-width: 767px) {
  .row {
    padding: 0 !important; }
  .cont-block {
    overflow: hidden; }
  .title h2 br {
    display: none; }
  .title h2 b.phone {
    display: inline-block; }
    .title h2 b.phone br {
      display: block; }
  .p-header-title h1 {
    padding: 0 25px; }
    .p-header-title h1 br {
      display: none; }
  .g-serv {
    padding: 67px 0 0; }
    .g-serv-block {
      border: 0; }
    .g-serv-item {
      width: 100%;
      padding: 27px 23px 25px;
      border-right: 0;
      display: none; }
      .g-serv-item:nth-child(1), .g-serv-item:nth-child(2), .g-serv-item:nth-child(3) {
        display: block; }
      .g-serv-item span {
        margin-top: 11px; }
      .g-serv-item-all {
        display: block;
        height: 49px;
        line-height: 49px;
        width: 100%;
        text-align: center;
        border-top: 1px solid #E8E8E8; }
        .g-serv-item-all span {
          color: #000;
          font-size: 16px;
          font-weight: 500;
          padding-right: 24px;
          background: url(../images/arrow_s_y.svg) right center no-repeat; }
  .g-new-item {
    width: 100%;
    margin-bottom: 20px; }
  .g-new h3 {
    min-height: auto; }
  .g-new-but {
    margin-top: 14px; }
  .g-epc {
    padding: 0 15px 0 25px;
    background-blend-mode: multiply;
    background-color: rgba(0, 0, 0, 0.2); }
    .g-epc-sv {
      background-image: url(../images/epc.jpg) !important; }
    .g-epc h2 br {
      display: none; }
    .g-epc-but {
      margin-top: 13px; }
  .g-abo {
    background-blend-mode: multiply;
    background-color: rgba(0, 0, 0, 0.4);
    padding: 0 19px; }
    .g-abo-title {
      margin-bottom: 14px; }
      .g-abo-title br {
        display: none; }
    .g-abo-but, .g-abo-dow {
      width: 287px;
      padding: 0;
      text-align: center;
      margin-top: 21px;
      margin-left: 0; }
  .g-con {
    padding: 74px 15px 66px; }
    .g-con-form {
      margin-top: 36px;
      padding: 0; }
      .g-con-form button {
        width: -webkit-calc(100% - 20px);
        width: calc(100% - 20px);
        margin: 0 10px; }
    .g-con-input {
      padding: 0 10px; }
      .g-con-input label {
        left: 52px; }
  .footer {
    padding: 18px 25px; }
    .footer-des, .footer-author, .footer-title, .footer-info {
      display: none; }
    .footer-soc {
      margin-top: 7px;
      width: auto;
      float: right; }
      .footer-soc a {
        width: 33px;
        height: 33px;
        margin: 0 0 0 12px; }
  .serv-item-title br {
    display: none; }
  .serv-p {
    padding: 62px 15px 34px; }
    .serv-p-st p {
      margin-bottom: 43px; }
      .serv-p-st p b {
        font-size: 54px;
        line-height: 54px; }
  .serv-video a {
    width: 100%;
    height: 256px;
    margin-bottom: 20px; }
    .serv-video a:last-child {
      margin-bottom: 0; }
  .serv-video span b {
    padding: 0 25px; }
  .serv-fq {
    padding: 0; }
    .serv-fq-title {
      padding: 0 15px;
      margin-top: 63px; }
  .serv-faq {
    margin-top: 37px;
    width: -webkit-calc(100% + 30px);
    width: calc(100% + 30px);
    margin-left: -15px;
    border-bottom: 1px solid #E8E8E8; }
    .serv-faq-item {
      border-left: 0;
      border-right: 0;
      border-bottom: 0;
      margin-bottom: 0; }
    .serv-faq-title {
      padding: 22px 60px 20px 25px;
      font-size: 20px;
      line-height: 26px;
      height: auto; }
      .serv-faq-title::before {
        top: 50%;
        margin-top: -7px;
        right: 25px; }
    .serv-faq-des {
      padding: 35px 25px 44px; }
      .serv-faq-des p {
        line-height: 29px; }
      .serv-faq-des a {
        display: none; }
  .news {
    padding: 20px 15px 57px; }
    .news-item {
      width: 100%;
      margin: 0 0 20px;
      padding: 42px 37px; }
    .news-load {
      margin-top: 9px; }
    .news-modal {
      margin: 0;
      width: 100%; }
      .news-modal-date {
        padding: 56px 15px 0; }
      .news-modal-title {
        padding: 0 15px;
        font-size: 30px;
        line-height: 33px; }
      .news-modal-cont {
        margin-top: 21px;
        padding: 0 15px; }
        .news-modal-cont p {
          font-size: 16px;
          line-height: 26px;
          margin-bottom: 26px; }
          .news-modal-cont p img {
            width: 100%; }
          .news-modal-cont p i.grey {
            font-size: 12px; }
      .news-modal-gall {
        margin-bottom: 26px; }
        .news-modal-gall img {
          width: 50%; }
      .news-modal-nav {
        padding: 32px 15px; }
  .object-p .serv-title {
    margin: 57px 0 37px;
    padding: 0 15px; }
  .object-p-gm {
    margin-bottom: 64px; }
  .object-p .serv-p {
    padding-top: 48px; }
  .object-p-des {
    margin-top: 16px; }
  .object-p .serv-p-st p:nth-child(3), .object-p .serv-p-st p:nth-child(4) {
    margin-bottom: 0; }
  .object-coll {
    margin-left: 0;
    margin-bottom: 45px;
    padding: 0 15px; }
    .object-coll a, .object-coll a.an, .object-coll a.right {
      width: -webkit-calc(25% - 4px);
      width: calc(25% - 4px);
      margin: 0 2px 4px;
      height: 52px;
      float: left; }
      .object-coll a:first-child, .object-coll a.an:first-child, .object-coll a.right:first-child {
        width: 100%;
        height: 293px;
        margin: 0 0 11px; }
    .object-coll-top {
      margin-top: 0; }
    .object-coll-all {
      width: -webkit-calc(25% - 4px);
      width: calc(25% - 4px);
      margin: 0 2px 4px;
      height: 52px;
      float: left;
      display: block;
      border: 1px solid #E2E2E2;
      text-align: center;
      line-height: 52px;
      font-size: 20px;
      font-weight: 300;
      color: #1D52AA; }
  .object-video {
    margin: 0 0 21px; }
  .object-crs {
    height: auto;
    padding-bottom: 63px;
    position: relative; }
    .object-crs::before {
      position: absolute;
      content: '';
      width: 100%;
      height: 24px;
      bottom: 0;
      left: 0;
      right: 0;
      background: #fff; }
    .object-crs-title {
      font-size: 30px;
      line-height: 33px;
      margin: 38px 0 24px; }
  .object-sl {
    width: calc(50% - 30px);
    margin-left: 5px; }
    .object-sl-item {
      height: 165px;
      padding: 123px 20px 0;
      font-size: 26px;
      margin: 0 5px; }
      .object-sl-item span {
        display: none; }
  .company {
    padding: 57px 15px 30px; }
    .company-info .img {
      width: -webkit-calc(100% + 30px);
      width: calc(100% + 30px);
      margin-left: -15px; }
    .company-team-img {
      height: 210px; }
    .company-but {
      margin: 10px 0 32px; }
      .company-but span.phone {
        display: inline-block;
        background-position: right 20px; }
      .company-but-top {
        margin: 39px 0 63px; }
    .company-tabs-i {
      padding: 0 19px; }
      .company-tabs-i a {
        margin-top: 45px; }
    .company-st-item {
      padding: 0 15px 30px;
      margin-bottom: 55px; }
    .company-st p a {
      margin-bottom: 11px; }
      .company-st p a:last-child {
        margin-bottom: 0; }
    .company-tm {
      padding: 45px 15px 68px; }
      .company-tm .serv-title {
        padding: 0;
        margin-bottom: 50px; }
      .company-tm-item {
        -webkit-background-size: auto 400px;
                background-size: auto 400px;
        background-position: 82% top;
        background-repeat: no-repeat;
        height: auto;
        padding: 434px 25px 0;
        text-align: center;
        margin-bottom: 70px; }
      .company-tm-name {
        color: #000;
        text-align: left;
        font-size: 28px; }
        .company-tm-name span {
          font-size: 14px; }
      .company-tm-des {
        height: auto;
        color: #000;
        padding: 0;
        margin-top: 26px;
        text-align: left;
        font-size: 14px;
        line-height: 22px; }
      .company-tm-but {
        margin-top: 27px;
        float: none;
        display: inline-block; }
        .company-tm-but span {
          background: none;
          padding-right: 0; }
      .company-tm-last {
        height: auto;
        padding: 0;
        background: none !important; }
        .company-tm-last::before {
	        content: none;
        }
        .company-tm-last span {
          color: #000;
          font-size: 30px;
          line-height: 33px; }
          .company-tm-last span br {
            display: none; }
    .company-modal {
      width: 100%;
      padding: 50px 15px; }
      .company-modal .title h2 {
        font-size: 30px;
        line-height: 33px; }
      .company-modal-des {
        font-size: 14px;
        line-height: 22px; }
        .company-modal-des br {
          display: none; }
    .company-form {
      padding: 0; }
  .jobs {
    padding: 32px 0 35px; }
    .jobs .serv-video a {
      height: 468px; }
      .jobs .serv-video a span {
        font-size: 24px;
        line-height: 29px; }
    .jobs-block {
      padding: 0 15px; }
      .jobs-block a {
        width: 100%;
        height: 173px;
        padding: 39px 10px 0; }
        .jobs-block a span {
          display: none; }
        .jobs-block a p b {
          display: block;
          font-size: 11px;
          font-weight: 400; }
    .jobs-form {
      padding: 50px 15px; }
  .contacts-info {
    padding: 0 35px; }
    .contacts-info p {
      text-align: left; }
      .contacts-info p span, .contacts-info p b {
        text-align: left; }
  .contacts-soc {
    margin-top: 26px;
    padding: 0 15px; }
  .contacts-b {
    padding: 88px 0 50px; }
    .contacts-b .title {
      padding: 0 15px; }
  .contacts-table {
    margin: 25px 0 50px;
    border-left: 0;
    border-right: 0; }
    .contacts-table .copy {
      display: none; }
    .contacts-table-left {
      width: 100%;
      padding: 47px 15px;
      border-right: 0;
      border-bottom: 1px solid #E8E8E8; }
      .contacts-table-left p {
        margin-bottom: 23px; }
      .contacts-table-left a {
        margin-top: 9px; }
    .contacts-table-right {
      width: 100%;
      padding: 16px 25px; }
      .contacts-table-right p {
        padding: 25px 0 20px; }
        .contacts-table-right p span {
          font-size: 18px;
          font-weight: 500;
          line-height: 1; }
          .contacts-table-right p span:first-child {
            width: 100%;
            display: block;
            margin-bottom: 11px;
            padding-left: 0;
            text-align: left;
            font-size: 14px;
            font-weight: 400; }
    .contacts-table-title {
      margin-bottom: 11px; }
      .contacts-table-title br {
        display: none; }
  .contacts-form {
    padding: 0 25px; }
    .contacts-form .g-con-input {
      padding: 0; }
    .contacts-form > span {
      font-size: 13px;
      line-height: 17px;
      margin-top: 33px; }
    .contacts-form textarea {
      margin-bottom: 27px; } }
.grecaptcha-badge {
  display: none !important;
}