

/* Start:/bitrix/templates/soyuz/template_styles.css?176051397512576*/
body {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 400;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-top: 65px;
  color: #1b1b1b;
  line-height: 1.4;
}

body#main  {
  padding-top: 0;
  overflow-x: hidden;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-bottom: .5rem;
    font-family: inherit;
    font-weight: 700;
    line-height: 1.2;
    color: inherit;
}
a {
  color: #d32a27;
}
.logo-lnk {
  border-right: 1px solid #fff;
  padding-right: 1em;
}
.navbar-shrink .logo-lnk {
  border-right: 1px solid #d32a27;
  padding-right: 1em;
}

.logo-lnk:before {
  content: "";
  position: absolute;
  left: 0;
  width: 17px;
  height: 100%;
  background-color: #C51618;

}
.logo {
  width: 70px;
}
.logo-item p {
  display: none;
}
.main-menu {
  margin-left: auto;
}
@media (min-width: 991px) {
  body  {
    padding-top: 100px;
  }
  .logo-item p {
    display: block;
    font-size: .7em;
    color: #000;
    padding-left: 2em;
    width: 220px;
    margin: 0;
  }
  #main .logo-item p {
    color: #fff;
  }
  .navbar-shrink .logo-item p {
    color: #000 !important;
  }  

  .main-menu {
    margin-left: 0;
  }
  .navbar-shrink .logo-item p {
    color: #1b1b1b;
  }
}
.fw-300 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-700 {
  font-weight: 700;
}
.fs-09 {
  font-size: .9em;
}
.fs-08 {
  font-size: .8em;
}
.fs-07 {
  font-size: .7em;
}
.fs-06 {
  font-size: .6em;
}
.fs-05 {
  font-size: .5em;
}
.bg-gray {
    background-color: #f2f2f2;
}
a:focus, a:hover {
  text-decoration: none;
  color: #d32a27;
}
a.active.focus,
a.active:focus,
a.focus,
a:active.focus,
a:active:focus,
a:focus,
button.active.focus,
button.active:focus,
button.focus,
button:active.focus,
button:active:focus,
button:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
outline: 0!important;
outline-color: transparent!important;
outline-width: 0!important;
outline-style: none!important;
box-shadow: 0 0 0 0 rgba(0,123,255,0)!important;
}
.red-bg {
  background-color: #c51618;
  color: #fff;
}
.logo {
  width: 130px;
}
.mainNav {
  min-height: 56px;
  background-color: #fff;
}

.mainNav .navbar-toggler {
  font-size: 80%;
  padding: 0.75rem;
  color: #d32a27;
  border: 1px solid #d32a27;
}

.mainNav .navbar-toggler:focus {
  outline: none;
}

.mainNav .navbar-brand {
  color: #161616;
  font-weight: 700;
  padding: .9rem 0;
}

.mainNav .navbar-nav .nav-item:hover {
  color: fade(white, 80%);
  outline: none;
  background-color: transparent;
}

.mainNav .navbar-nav .nav-item:active, .mainNav .navbar-nav .nav-item:focus {
  outline: none;
  background-color: transparent;
}

@media (min-width: 992px) {
  .mainNav {
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: none;
    background-color: transparent;
    transition: background-color 0.3s ease-in-out;
  }
  .mainNav .navbar-brand {
    padding: .5rem 0;
    color: rgba(255, 255, 255, 0.5);
  }
  .mainNav .nav-link {
    transition: none;
    padding: 2rem 1.5rem;
    color: rgba(255, 255, 255, 0.5);
  }
  .mainNav .nav-link:hover {
    color: rgba(255, 255, 255, 0.75);
  }
  .mainNav .nav-link:active {
    color: white;
  }
  .mainNav.navbar-shrink {
    background-color: #fff;
    padding: 0;
  }
  .mainNav.navbar-shrink .navbar-brand {
    color: #161616;
  }
  .mainNav.navbar-shrink .nav-link {
    color: #161616;
    padding: 1.5rem 1.5rem 1.25rem;
    border-bottom: 0.25rem solid transparent;
  }
  .mainNav.navbar-shrink .nav-link:hover {
    color: #d32a27;
  }
  .mainNav.navbar-shrink .nav-link:active {
    color: #467370;
  }
  .mainNav.navbar-shrink .nav-link.active {
    color: #d32a27;
    outline: none;
    border-bottom: 0.25rem solid #d32a27;
  }
}

.masthead {
  position: relative;
  width: 100%;
  height: auto;
  color: #fff;
  min-height: 35rem;
  padding: 15rem 0;
  border-right: 15px solid #fff;
  border-left: 15px solid #fff;
  border-bottom: 15px solid #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
}

.masthead h1 {
  font-size: 1.4em;
}

@media (min-width: 768px) {
  .masthead h1 {
    font-size: 2em;
  }
}

@media (min-width: 992px) {
  .masthead {
    height: 100vh;
    padding: 0;
  }
  .masthead h1 {
    font-size: 2.3em;
  }
  .masthead h2 {
  }
}

.btn, .btn:focus {
    padding: 1rem 3rem;
    max-height: 55px;
    border-radius: 0;
    font-weight: 500;
    font-size: 80%;
    background-color: #C51618;
    border: 2px solid #C51618;
    color: #fff;
    text-transform: uppercase;
    transition: .5s all;
}
.btn:hover {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}

.btn-transparent {
  background-color: transparent;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent:hover {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent:focus {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent:active {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent-black {
  background-color: transparent;
  border: 2px solid #C51618;
  color: #000;
}

.btn-transparent-black:hover {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent-black:focus {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-transparent-black:active {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-white {
  background-color: #fff;
  border: 2px solid #fff;
  color: #C51618;
}

.btn-white:hover {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}

.btn-white:focus {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}

.btn-white:active {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}
.btn-black {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}

.btn-black:hover {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-black:focus {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-black:active {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}
.btn-solid-black {
  background-color: transparent;
  border: 2px solid #222222;
  color: #222222;
}

.btn-solid-black:hover {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-solid-black:focus {
  background-color: #C51618;
  border: 2px solid #C51618;
  color: #fff;
}

.btn-solid-white {
  background-color: transparent;
  border: 2px solid #fff;
  color: #fff;
}

.btn-solid-white:hover {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}

.btn-solid-white:focus {
  background-color: #222222;
  border: 2px solid #222222;
  color: #fff;
}
.text-primary {
  color: #d32a27 !important;
}
ul.language {
    list-style: none;
    margin: 0;
}
.drawer-nav ul.language {
    padding: 0.75em;
}
.drawer-nav .language li>a {
  color: #1b1b1b !important;
}
.language li {
    display: inline-block;
    padding: 0 10px 0 0;
}
.language li {
  border-right: 1px solid #000;
  margin-right: .2em;
}
.language li:last-child {
  border-right: none !important;
  padding-right: .7em;
}
.language li>a {
  padding: .1em .2em;
  color: #1b1b1b;
}
#main .language li {
  border-right: 1px solid #fff;
}
#main .language li>a {
  padding: .1em .2em;
  color: #fff;
}
.navbar-shrink .language li>a {
  padding: .1em .2em;
  color: #1b1b1b !important;
}
.navbar-shrink .language li {
  border-right: 1px solid #1b1b1b !important;
}
.navbar-shrink .language li:last-child {
  border-right: none !important;
}
.language li>a.active {
  color: #fff !important;
  background-color: #C51618;
}
.head-phone {
  color: #1b1b1b;
  padding-left: 2em;
  margin-left: 2em;
  position: relative;
  border-right: 1px solid #1b1b1b;
  padding-right: .6em;
  margin-right: 1em;
}
.drawer-nav .head-phone {
    color: #1b1b1b !important;
    margin-left: 0.75em !important;
    border-right: none !important;
}
.navbar-shrink .drawer-nav .head-phone {
    color: #1b1b1b !important;
    margin-left: 0.75em !important;
    border-right: none !important;
}
.head-phone:before {
    content: "";
    background-color: #C51618;
    width: 12px;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transform: skew(-35deg);
            transform: skew(-35deg);
}

#main .head-phone {
  color: #fff;
  border-right: 1px solid #fff;
}
.navbar-shrink .head-phone {
  color: #1b1b1b !important;
  border-right: 1px solid #1b1b1b !important;
}
.arrow-down-ico {
  width: 23px;
  height: 23px;
}
.prez {
  position: relative;
}
.prez span {
  opacity: 0;
      position: absolute;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    right: -2em;
    top: 5em;
    line-height: 1.1;
    color: #ffffffa3;
    font-size: .7em;
    text-align: right;
    transition: all 1s;

}
#main .prez span {
  opacity: 1;
}
.navbar-shrink .prez span {
    color: #000000a3 !important;
    top: 6em;
    opacity: 1;
}
.skew-lines {
  width: 180px;
}
.border-lg-right {
    border-right: none;
  }
.main-block-item {
    padding-top: 3em;
  }
.arrow-link {
 padding-top: 10px;
}   
.arrow-link a{
  color: #000;
  font-size: .8em;
  line-height: 1;
}
.drawer-nav .arrow-link a{
  font-size: 1em;
  line-height: 1;
}
.drawer-nav .arrow-link {
  padding-left: 0.75em;
}
.arrow-link a:hover{
  color: #C51618;
}
.projects-line {
  display: none;
}
  .map-caption {
    padding: 3em;
    color: #fff;
    background-color: #c51618;
    min-height: 300px;
  }
.project_link .project-name{
    width: 100%;
    padding-bottom: 2em;
    margin: auto;
    font-size: .7em;
}   
@media (min-width: 992px) {
  .border-lg-right {
    border-right: 1px solid #636363 !important;
  }
  .arrow-link {
   padding-top: 60px
  }
  .file-item .arrow-link {
   padding-top: 1em;
  }
  .projects-line {
    position: absolute;
    display: block;
    top: 74px;
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px dashed #000;
  }
  .scrollbar {
    width: 100%;
    height: 5px;
    border-bottom: 1px dashed #000;
    margin-bottom: 50px;
  }
  .scrollbar .handle {
      width: 10px;
      height: 100%;
  }
  .scrollbar .handle .mousearea {
      position: absolute;
      top: 0px;
      left: 0;
      width: 100%;
      background: #c51618;
      height: 10px;
      cursor: pointer;
  }
  .map-caption {
    position: absolute;
    top: 100px;
    padding: 3em 5em;
    color: #fff;
    right: 0;
    background-color: #c51618;
    min-height: 300px;
  }
  .project_link .project-name{
    width: 150px;
    margin: auto;
    font-size: .7em;
    padding-bottom: 0em;
  } 
}

.project_link a {
  color: #000;
}
.project_link p {
  margin: 0;
}
.project_link .red-dot{
    width: 25px;
    height: 25px;
    opacity: 0;
    transition: all .5s;
}

.project_link .active .red-dot{
    opacity: 1;
}


.frame { 
  width: 100%; 
  padding: 0; 
  position: absolute;
  min-height: 300px;
}
.frame .slidee { margin: 0; padding: 0; height: 100%; list-style: none; }
.frame .slidee li { 
  float: left; 
  margin: 0 5px 0 0; 
  padding: 0; 
  width: 320px; 
  height: 100%; 
  padding-right: 3em;
}
.frame .slidee li:last-child { 
  opacity: 0;
  visibility: hidden;
}
.frame .slidee a {
  color: #000;
  line-height: 1.2;
  font-size: .8em;
}

.projects-pr {
 padding-top: 10px; 
}

#map {
  width: 100%;
  height: 550px;
}

.cont-line {
  position: absolute;
    bottom: 0;
    right: 0;
    width: 200px;
}

footer {
  padding: 1rem 0;
}
.cplay_logo {
    width: 250px;
}
.target-ico {
  width: 50px;
  height: 50px;
}

.company-image-bg {
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;  
  min-height: 400px;
}
.company-text {
    padding: 2em;
}
@media (min-width: 992px) {
  .company-text {
      padding: 10%;
      width: 80%
  }
}
.flex-center {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
}
a.catalog-item {
  color: #000;
}

.file-item a {
  color: #000;
}
.map-contacts {
  height: 100vh !important;
}

.map-caption-contacts {
  color: #fff;
}

@media (min-width: 992px) {
  .map-caption-contacts {
    position: absolute;
    top: 30%;
    left: 15%;
  }
}

/* End */
/* /bitrix/templates/soyuz/template_styles.css?176051397512576 */
