@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700&subset=latin,cyrillic);

@font-face {
    font-family: 'pf_dintext_probold';
    src: url('../fonts/pfdintextpro-bold-webfont.eot');
    src: url('../fonts/pfdintextpro-bold-webfont.eot?#iefix') format('embedded-opentype'),
    url('../fonts/pfdintextpro-bold-webfont.woff2') format('woff2'),
    url('../fonts/pfdintextpro-bold-webfont.woff') format('woff'),
    url('../fonts/pfdintextpro-bold-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'pf_dintext_proregular';
    src: url('../fonts/pfdintextpro-regular-webfont.woff2') format('woff2'),
    url('../fonts/pfdintextpro-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Arial_Narrow';
    src: url('../fonts/ArialNarrowRegular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/************************* reset *************************/
html {
    /*height: 100%;*/
    margin: 0;
    padding: 0;
    width: 100%;
    background: #fff;
}

body {
    min-height: 100vh;
    width: 100%;
    position: relative;
    margin: 0;
    padding: 0;
    font-size: 0.625em;
    font-weight: 300;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    line-height: 24px;
    min-width: 320px;
    color: #000;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

h1, h2, h3, h4, p, ul, li, a, span, div, input, textarea, select, form, fieldset, button, dl, dd, dt, figure, figcaption, blockquote, caption, aside {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    box-sizing: border-box;
}

img {
    margin: 0;
    padding: 0;
    border-style: none;
    vertical-align: bottom;
}

input, textarea, select, button {
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    vertical-align: middle;
    border: 0;
    outline: 0;
    background: none;
}

a:hover {
    text-decoration: none;
}

ul li {
    list-style: none;
}

.select-block, .bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:active, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
    color: #000 !important;
}

.header-form > form > fieldset > .select-block > .bootstrap-select > .dropdown-toggle {
    background: #cff1ff;
}

.select-block > .bootstrap-select > .dropdown-toggle {
    height: 46px;
    margin: 0 auto 15px;
}

.select-block > .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    font-size: 18px;
    font-weight: 300;
}


.select-block-tsj, .bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:active, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
    color: #000 !important;
}

.header-form > form > fieldset > .select-block-tsj > .bootstrap-select > .dropdown-toggle {
    background: #cff1ff;
}

.select-block-tsj > .bootstrap-select > .dropdown-toggle {
    height: 46px;
    margin: 0 auto 15px;
}

.select-block-tsj > .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    font-size: 18px;
    font-weight: 300;
}

/************************* common styles *************************/
.holder {
    max-width: 1000px;
    padding: 0 10px;
    margin: 0 auto;
}

.holder:after {
    display: block;
    content: '';
    clear: both;
}

h1 {
    margin: 0 0 41px;
    color: #000;
    font-size: 60px;
    font-weight: 400;
    font-family: 'pf_dintext_probold';
    line-height: 65px;
    text-align: center;
    text-transform: uppercase;
}

h2 {
    margin: 0 0 71px;
    color: #000;
    font-size: 48px;
    font-weight: 400;
    font-family: 'pf_dintext_probold';
    line-height: 48px;
    text-align: center;
    text-transform: uppercase;
}

.big-h2 {
    font-size: 60px;
}

h4 {
    margin: 0 0 24px;
    font-size: 1.8em;
}

.pink {
    color: #ed145b;
}

.subtitle {
    margin: -63px 0 70px;
    font-size: 24px;
    line-height: 30px;
    text-align: center;
}

/************************* form styles *************************/
.input {
    display: block;
    width: 100%;
    height: 46px;
    padding: 0 15px;
    color: #000;
    font-size: 18px;
    font-weight: 300;
    background: #fff;
    border-radius: 5px;
    box-sizing: border-box;
}

.submit {
    display: block;
    width: 100%;
    height: 46px;
    padding: 0 0 1px;
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    outline: 0;
    border: 0;
    cursor: pointer;
    background: transparent;
    background: #e36014;
    border-radius: 3px;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.submit:hover {
    background: #f26716;
}

::-webkit-input-placeholder {
    color: #000;
}

:-moz-placeholder {
    color: #000;
    opacity: 1;
}

::-moz-placeholder {
    color: #000;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #000;
}

.input.error {
    color: rgb(255, 86, 71);
}

label.error {
    position: absolute;
    left: -9999px;
}

a.submit {
    line-height: 50px;
    text-align: center;
    text-decoration: none;
}

.select-block select {
    width: 100%;
}

::-webkit-input-placeholder {
    color: #000;
}

:-moz-placeholder {
    color: #000;
    opacity: 1;
}

::-moz-placeholder {
    color: #000;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #000;
}

/************************* wrapper *************************/
#wrapper {
    position: relative;
    overflow: hidden;
}

/************************* header *************************/
.header {
    position: relative;
}

/************************* header-top *************************/
.header-top {
    position: relative;
    height: 105px;
    padding: 29px 0 0;
    background: #fff;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}

.header-top > .holder {
    max-width: 70% !important;
}


.header-partners {
    position: relative;
    height: 45px;
    padding: 7px 0 0;
    background: #fff;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
    /*box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);*/
}

.logo {
    float: left;
    width: 333px;
}

.logo-img {
    max-width: 300px;
    max-height: 70px;
}

.logo-left {
    float: left;
}

.logo1 {
    padding: 0 0 1px 3px;
    color: #aebc06;
    font-size: 10px;
    line-height: 14px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.logo2 {
    color: #e35f13;
    font-size: 36px;
    line-height: 30px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.logo-text {
    float: left;
    padding: 9px 0 0 12px;
    color: #5c573a;
    font-size: 14px;
    line-height: 16px;
}

.header-phone {
    float: right;
    padding: 8px 0 0;
    color: #6d7d92;
    font-size: 30px;
    line-height: 30px;
    text-decoration: none;
}

.header-action {
    float: right;
    margin: -10px 10px 0;
    padding: 8px 12px 0;
    line-height: 30px;
}

.top-city {
    float: left;
    margin: 8px 0 0 50px;
    padding: 3px 0 2px 38px;
    font-size: 16px;
    background: url(../images/city-sel-32.png) 0 0 no-repeat;
}

.top-city a {
    display: inline-block;
    max-width: 172px;
    white-space: nowrap;
    overflow: hidden;
    color: #29abe1;
    text-overflow: ellipsis;
    text-decoration: none;
    border-bottom: 1px dashed #29abe1;
}

.top-enter {
    float: left;
    margin: 8px 0 0 50px;
    padding: 3px 0 2px 38px;
    font-size: 16px;
    background: url(../images/login-32.png) 0 0 no-repeat;
}

.top-enter a {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    color: #29abe1;
    text-overflow: ellipsis;
    text-decoration: none;
    border-bottom: 1px dashed #29abe1;
}

.nav-icon {
    float: right;
    display: none;
    margin: 5px 0 0;
}

.header-hidden {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 200;
    display: none;
    padding: 35px 0 20px;
    background: #fff;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}

.header-hidden .holder {
    position: relative;
}

.header-hidden-title {
    padding: 0 20px 0 0;
    margin: 0 0 25px;
    font-size: 30px;
    font-family: 'pf_dintext_proregular';
    vertical-align: middle;
    display: inline-block;
}

.header-hidden-action {
    padding: 0 20px 0 0;
    margin: 0 0 25px;
    font-size: 30px;
    font-family: 'pf_dintext_proregular';
    vertical-align: middle;
    display: inline-block;
}

.header-hidden-close {
    position: absolute;
    top: -5px;
    right: 10px;
    vertical-align: middle;
    display: inline-block;
}

.header .header-hidden .input {
    margin: 0;
}

.header-hidden-list {
    overflow: hidden;
    padding: 30px 0 30px;
}

.header-hidden-list li {
    float: left;
    width: 18.0%;
    margin: 0 0 12px 2%;
    font-size: 16px;
    font-weight: bold;
}

.header-hidden-list li:nth-child(5n + 1) {
    clear: left;
    margin: 0 0 12px;
}

.header-hidden-list a {
    color: #29abe1;
    text-decoration: none;
}

#hidden2 .header-hidden-list {
    padding: 23px 0 40px;
}

.hidden-item {
    display: none;
}

.header-hidden-link {
    margin: 0 0 15px;
    font-size: 20px;
    vertical-align: middle;
    display: inline-block;
}

.header-hidden-link a {
    vertical-align: middle;
    display: inline-block;
    padding: 0 40px 4px 10px;
    color: #29abe1;
    text-decoration: none;
    background: url(../images/hidden-arrow-down.png) 100% 9px no-repeat;
}

.header-hidden-link a.active {
    background: url(../images/hidden-arrow-right.png) 100% 2px no-repeat;
}

.header-hidden-link-noimg {
    margin: 0 0 15px;
    font-size: 20px;
    vertical-align: middle;
    display: inline-block;
}

.header-hidden-link-noimg a {
    vertical-align: middle;
    display: inline-block;
    padding: 0 40px 4px 10px;
    color: #29abe1;
    text-decoration: none;
}

.hidden-item form {
    padding: 20px 0 0;
}

/************************* header-main *************************/
.header-main {
    position: relative;
    padding: 200px 0 150px;
    background: url(../images/media/bg1.jpg) 50% 0 no-repeat;
    background-size: cover;
}

.header-main .holder {
    position: relative;
    z-index: 20;
}

.main-title-green {
    display: inline-block;
    padding: 0 15px;
    margin: 0 0 30px;
    color: #fff;
    font-size: 32px;
    line-height: 46px;
    letter-spacing: 4px;
    background: #9ac000;
}

.header-subtitle {
    margin: 0 0 30px;
    font-size: 18px;
    line-height: 28px;
    text-align: center;
}

.header-form {
    padding: 55px 55px 1px;
    background: #fff;
}

.header-form-text {
    max-width: 740px;
    margin: 0 auto 32px;
    color: #4d6975;
    font-size: 24px;
    font-family: 'pf_dintext_probold';
    line-height: 30px;
    text-align: center;
}

.header-form-text-min {
    margin: 0 0 32px;
    color: #4d6975;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
}

.header-form-text-politics {
    margin: 0 0 32px;
    color: #6d6975;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
}

.header-form-text-politics a {
    color: #536e92;
}

.header-form-text-politics input {
    position: relative;
    vertical-align: middle;
    bottom: 1px;
}

.header-form .submit {
    clear: left;
    margin: 0 auto -37px;
    max-width: 394px;
    height: 74px;
    padding: 0 10px 4px;
    color: #fff;
    font-size: 28px;
    font-weight: 300;
    text-decoration: none;
    text-transform: none;
    background: #e36014;
    border-radius: 35px;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.header .input {
    margin: 0 0 52px;
    background: #cff1ff;
}

.header-bottom {
    overflow: hidden;
    padding: 100px 0 0;
}

.header-info {
    float: left;
    width: 70%;
}

.header-video {
    float: right;
    width: 240px;
}

.header-icon {
    float: left;
    width: 74px;
    padding: 9px 0 0;
}

.header-icon-text {
    margin: 0 0 0 100px;
    font-size: 16px;
    line-height: 28px;
}

.header-icon-text strong {
    display: block;
    margin: 0 0 5px;
    text-transform: uppercase;
}

.header-icon-text a {
    color: #000;
}

.header-video-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
}

.header-video-bg:after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    display: block;
    content: '';
    background: #fff;
    opacity: 0.85;
}

.header-video-bg video {
    min-width: 100%;
    min-height: 100%;
}

/************************* about *************************/
.about {
    padding: 122px 0 121px;
}

.about-list {
    text-align: center;
}

.about-list li {
    display: inline-block;
    vertical-align: top;
    width: 33%;
    margin: 0 0 71px;
    text-align: center;
    opacity: 0;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.about-list li.vis {
    opacity: 1;
}

.about-icon {
    width: 172px;
    height: 172px;
    margin: 0 auto 31px;
    line-height: 170px;
    text-align: center;
    border: 1px solid #e35f13;
    border-radius: 50%;
}

.about-icon img {
    vertical-align: middle;
}

.about-title {
    margin: 0 0 14px;
    color: #e35f13;
    font-size: 18px;
}

.about-text {
    font-size: 18px;
}

.button-holder {
    text-align: center;
}

.button {
    display: inline-block;
    height: 74px;
    padding: 0 50px;
    color: #fff;
    font-size: 24px;
    line-height: 72px;
    text-decoration: none;
    background: #e36014;
    border-radius: 35px;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.button:hover {
    background: #ff6b17;
}

/************************* yellow-block *************************/
.yellow-block {
    padding: 61px 0 63px;
    color: #000;
    font-size: 36px;
    line-height: 44px;
    text-align: center;
    background: #f9f0b7;
    border-top: 1px solid #fff;
}

/************************* scheme *************************/
.scheme {
    padding: 124px 0 105px;
}

.scheme-holder {
    position: relative;
    width: 980px;
    height: 480px;
    background: url(../images/line.png) 60px 72px no-repeat;
}

.scheme-holder .button {
    height: 44px;
    margin: 19px 0 0;
    padding: 9px 18px 0;
    font-size: 15px;
    line-height: 24px;
}

.scheme-item {
    position: absolute;
    width: 270px;
    text-align: center;
    opacity: 0;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
}

.scheme-item.vis {
    opacity: 1;
}

.scheme1 {
    top: 0;
    left: 12px;
}

.scheme2 {
    top: 0;
    left: 328px;
}

.scheme3 {
    top: 0;
    left: 644px;
}

.scheme6 {
    top: 329px;
    left: 12px;
}

.scheme5 {
    top: 329px;
    left: 328px;
}

.scheme4 {
    top: 329px;
    left: 644px;
}

.scheme-icon {
    width: 45px;
    height: 46px;
    margin: 0 auto 14px;
    text-align: center;
    line-height: 46px;
}

.scheme-icon img {
    vertical-align: middle;
}

.scheme-point {
    width: 30px;
    height: 30px;
    margin: 0 auto;
    background: url(../images/point.png) no-repeat;
}

.scheme-text {
    padding: 10px 0 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
}

.calc-block {
    padding: 128px 0 100px;
    /*background: url(../images/media/bg2.jpg) 50% 0 no-repeat;*/
    /*background-size: cover;*/
}

/************************* order-block *************************/
.order-block {
    padding: 128px 0 100px;
    background: url(../images/media/bg2.jpg) 50% 0 no-repeat;
    background-size: cover;
}

.order-bg {
    position: absolute;
    top: 0;
    width: 100%;
    min-height: 788px;
}

.order-title {
    color: #fff;
    margin: 0 0 5px;
}

.order-subtitle {
    margin: 0 0 24px;
    color: #9ac000;
    font-size: 36px;
    line-height: 40px;
    font-family: 'pf_dintext_probold';
    text-align: center;
    text-transform: uppercase;
}

.order-text {
    margin: 0 0 50px;
    color: #fff;
    font-size: 20px;
    line-height: 30px;
    text-align: center;
}

.order-block .form-block {
    padding: 44px 0 0;
    background: url(../images/form-arrow-top.png) 50% 0 no-repeat;
}

.order-block .form-border {
    border: 1px solid #fff;
    border-top: 0;
}

.form-block {
    padding: 0 0 44px;
    background: url(../images/form-arrow.png) 0 bottom no-repeat;
}

.form-border {
    padding: 0 55px 49px;
    border: 1px solid #fff;
    border-bottom: 0;
}

.form-title {
    padding: 41px 0 0;
    margin: 0 0 6px;
    color: #fff;
    font-size: 38px;
    font-family: 'Arial_Narrow', Arial Narrow;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    line-height: 40px;
}

.form-title-min {
    margin: 0 0 32px;
    color: #fff;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
}

.select-block {
    float: left;
    width: 23%;
    margin: 0 0 0 2%;
}

.input-item {
    float: left;
    width: 23%;
    margin: 0 0 0 2%;
}

.select-block-tsj {
    float: left;
    width: 30%;
    margin: 0 0 0 2%;
}

.input-item-tsj {
    float: left;
    width: 30%;
    margin: 0 0 0 2%;
}

.form-text-politics {
    margin: 32px 0 24px;
    color: #CCC;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
}

.form-text-politics a {
    color: #29abe1;
}

.form-text-politics input {
    position: relative;
    vertical-align: middle;
    bottom: 1px;
}

.button-item {
    clear: left;
    width: 32%;
    margin: 0 auto;
    padding: 15px 0 0;
}

/************************* text-block *************************/
.text-block {
    position: relative;
    padding: 0 0 100px;
}

.text-block .title {
    padding: 124px 0 0;
    margin: 0;
    font-size: 60px;
    line-height: 52px;
    text-align: center;
    text-transform: uppercase;
    font-family: 'pf_dintext_probold';
}

.text-block .title-min {
    margin: 0 0 75px;
    font-size: 45px;
    line-height: 52px;
    text-align: center;
    text-transform: uppercase;
    font-family: 'pf_dintext_probold';
}

.img {
    max-width: 100%;
    margin: 0 0 66px;
}

.text-block p {
    margin: 0 0 20px;
    font-size: 16px;
}

.text-block strong {
    font-size: 18px;
}

/************************* info *************************/
.info {
    padding: 100px 0 134px;
    background: #f2f8ff;
}

.table {
    width: 100%;
    margin: 0 0 74px;
    border-collapse: collapse;
}

.table td {
    padding: 9px;
    font-size: 18px;
    background: #fff;
}

.table td:first-child {
    padding: 9px 9px 9px 25px;
}

.table td:last-child {
    width: 260px;
}

.table tr:nth-child(even) td {
    background: #e5f1ff;
}

.table .button {
    height: 42px;
    font-size: 16px;
    line-height: 40px;
    border-radius: 5px;
}

.info-cursor {
    padding: 0 0 0 55px;
    margin: 0 0 68px;
    font-size: 18px;
    background: url(../images/cursor.png) 0 5px no-repeat;
}

.info-cursor strong {
    display: block;
}

.table-button-show {
    display: none;
}

/************************* reclame *************************/
.reclame-holder {
    overflow: hidden;
    width: 1000px;
    margin: 0 0 72px;
}

.reclame-item {
    position: relative;
    float: left;
    margin: 0 10px 10px 0;
}

.reclame-block {
    float: left;
}

.clear {
    clear: left;
}

.margin-min {
    margin: 0 9px 10px 0;
}

.reclame-hidden {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
    background: rgba(64, 85, 107, 0.8);
    border: 7px solid #3e5166;
    box-sizing: border-box;
    opacity: 0;
    -webkit-transition: opacity .3s linear;
    -moz-transition: opacity .3s linear;
    -o-transition: opacity .3s linear;
    transition: opacity .3s linear;
}

.reclame-item:hover .reclame-hidden {
    opacity: 1;
}

.reclame-hidden-title {
    margin: 0 0 9px;
    color: #fed500;
    font-size: 25px;
    font-weight: 700;
    text-transform: uppercase;
}

.a3 .reclame-hidden-title {
    padding-top: 143px;
}

.a4 .reclame-hidden-title {
    padding-top: 143px;
}

.a5 .reclame-hidden-title {
    padding-top: 50px;
}

.a6 .reclame-hidden-title {
    padding-top: 31px;
    font-size: 18px;
}

.a6 .reclame-hidden-text {
    font-size: 14px;
}

.stripe .reclame-hidden-title {
    display: inline-block;
    padding-top: 8px;
}

.stripe .reclame-hidden-text {
    display: inline-block;
}

.reclame-hidden-text {
    color: #fff;
    font-size: 18px;
    font-weight: 400;
}

/************************* gallery *************************/
.gallery {
    padding: 130px 0 1px;
}

.gallery-slider {
    position: relative;
}

.gallery-item {
    display: block;
}

.gallery-line2 .gallery-item {
    float: left;
    width: 47.5%;
    margin: 0 0 5% 5%;
}

.gallery-line2 .gallery-item:first-child {
    margin: 0 0 5%;
}

.gallery-line3 .gallery-item {
    float: left;
    width: 30%;
    margin: 0 0 5% 5%;
}

.gallery-line3 .gallery-item:first-child {
    margin: 0 0 5%;
}

.gallery-item img {
    width: 100%;
}

.green {
    color: #9ac000;
}

.owl-prev, .owl-next {
    position: absolute;
    width: 24px;
    height: 39px;
    top: -116px;
}

.owl-prev {
    left: 0;
    background: url(../images/arrows.png) 0 0 no-repeat;
}

.owl-next {
    right: 0;
    background: url(../images/arrows.png) -24px 0 no-repeat;
}

/************************* company *************************/
.company {
    padding: 85px 0 117px;
}

.company-holder {
    overflow: hidden;
}

.company-list {
    float: left;
    width: 30%;
    margin: 0 0 0 5%;
}

.company-list:first-child {
    margin: 0;
}

.company-list li {
    padding: 0 0 0 33px;
    margin: 0 0 12px;
    font-size: 18px;
    background: url(../images/green-arrow.png) 0 6px no-repeat;
}

/************************* client *************************/
.client {
    padding: 128px 0 114px;
    background: #f2f8ff;
}

.video-slider {
    position: relative;
}

.video-slide-item {
    width: 290px;
    margin: 0 auto;
}

.video-slide-item iframe {
    width: 290px;
    height: 210px;
}

.video-slide-text {
    padding: 8px 0 0;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
}

.video-slide-text strong {
    display: block;
}

.client-video {
    padding-bottom: 124px;
}

.client-photo-block {
    overflow: hidden;
}

.client-photo-item {
    float: left;
    width: 18%;
    margin: 0 0 2.5% 2.5%;
}

.client-photo-item:nth-child(5n + 1) {
    clear: left;
    margin: 0 0 2.5%;
}

.client-photo-item img {
    width: 100%;
}

.client-photo-slider {
    display: none;
    text-align: center;
}

.client-photo-slider .client-photo-item {
    float: none;
    display: inline-block;
    width: 40%;
    margin: 0 2% 2.5%;
}

/************************* clients-block *************************/
.clients-block {
    padding: 0 0 110px;
}

.clients-line {
    overflow: hidden;
    width: 1010px;
    margin-left: 1500px;
    -webkit-transition: all 1s ease-out;
    -moz-transition: all 1s ease-out;
    -o-transition: all 1s ease-out;
    transition: all 1s ease-out;
}

.clients-line.vis {
    margin-left: 0;
}

.clients-line img {
    float: left;
    margin: 0 27px 26px 0;
    border: 1px solid #e46217;
}

.client-logo-slider {
    display: none;
}

/************************* map-block *************************/
.bmap {
    padding: 50px 0 20px;
}

.map {
    padding: 0px 0 20px;
}

.map-block {
    height: 600px;
    margin: 0 0 78px;
    background: #ccc;
}

.circle {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-width: 3px;
    border-style: solid;
    border-radius: 10px;
}

#showAp {
    width: 100%;
    border: 1px solid #999;
    padding: 10px;
    font-size: 18px;
    margin-top: -40px;
    margin-bottom: 20px;
}

#address-program-desc {
    /*margin-top: -40px;*/
    margin-bottom: 20px;
}

#address-program-desc p {
    display: inline-block;
    width: 50%;
    vertical-align: top;
    font-size: 14px;
    line-height: 18px
}

.footer-download {
    padding: 60px 0 0;
    text-align: center;
}

.footer-download-text {
    padding: 7px 0 0;
    font-size: 12px;
    line-height: 14px;
}

/************************* footer *************************/
/*.footer_calc {*/
/*    position: relative;*/
/*    !*display: table;*!*/
/*    overflow: initial;*/
/*}*/
.footer {
    position: relative;
    background: #f2f8ff;
}

.footer-line {
    height: 61px;
    padding: 18px 0 0;
    background: #fff;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
}

.footer-line ul {
    width: 990px;
}

.footer-line li {
    float: left;
    margin: 0 0 0 86px;
    color: #6d7d92;
    font-size: 18px;
}

.footer-line li:first-child {
    margin: 0;
}

.footer-line li:before {
    display: inline-block;
    margin: 0 86px 0 0;
    content: '|';
}

.footer-line li:first-child:before {
    display: none;
}

.footer-line li a {
    color: #6d7d92;
}

.footer-bottom {
    padding: 62px 0 61px;
}

.copy {
    float: left;
    padding: 9px 0 0 30px;
    color: #6d7d92;
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
}

.copy a {
    color: #6d7d92;
}

.studio {
    float: left;
    margin: 1px 0 0 20px;
    color: #000;
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    text-decoration: none;
}

#hidden-block {
    display: none;
    width: 350px;
    padding: 20px 20px 20px;
    font-size: 16px;
}

#hidden-block h2 {
    margin: 0 0 10px;
    font-size: 24px;
    line-height: 30px;
    text-align: center;
}

/************************* popups *************************/
.popup {
    display: none;
    width: 320px;
    padding: 18px 20px 20px;
}

#video-popup {
    display: none;
}

#video-popup iframe {
    width: 560px;
    height: 315px;
}

/*
#mask{
    position:absolute;
    left:0;
    top:0;
    z-index:9000;
    display:none;
    background:#000;
    width: 100%;
}
.window{
    position:fixed;
    left:0;
    top:0;
    z-index:9001;
    display:none;
}
#boxes #dialog{
    position:fixed;
    left:0;
    top:0;
    display:none;
    z-index:9999;
}
*/

.window {
    display: none;
}

.fancybox-black {

}

.fancybox-black .fancybox-skin {
    background: none;
    color: #000;
}

.fancybox-black.fancybox-opened .fancybox-skin {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.popup-block {
    position: relative;
    width: 400px;
}

.popup-block .close {
    position: absolute;
    right: 0;
    top: -29px;
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    text-decoration: none;
}

.popup-block .form-block, .popup-block .form-block-bg {
    background: none;
}

.popup-block .form-border {
    border-bottom: 1px solid #fff;
}

.form-popup {
    position: relative;
    margin: 0 auto;
    z-index: 1000;
    text-align: center;
}

.form-popup .form-title {
    color: #fff;
}

.form-popup .form-title-min {
    color: #fff;
}

.popup-block .input {
    margin: 0 0 15px;
}

.input_city {
    display: inline-block;
    height: 50px;
    padding: 0 18px;
    margin: 0 0 15px;
    color: #000;
    font-size: 18px;
    background: #fff;
    border: 1px solid #c6edf5;
    border-radius: 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.input_city[name=city] {
    width: 500px;
    margin-right: 20px;
}

.input_city[type=submit] {
    width: 200px;
    display: none;
    cursor: pointer;
}

.city-input-text {
    display: none;
}

.popup-form-text-politics {
    margin: 32px 0 24px;
    color: #FFF;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
}

.popup-form-text-politics a {
    color: #39bbf1;
}

.popup-form-text-politics input {
    position: relative;
    vertical-align: middle;
    bottom: 1px;
}

@media screen and (max-width: 1440px) {
    .header-top > .holder {
        max-width: 80% !important;
    }
}

@media screen and (max-width: 1280px) {
    .header-top > .holder {
        max-width: 90% !important;
    }
}

/************************* media *************************/
@media screen and (max-width: 1023px) {
    /*.header-top > .holder {*/
    /*    max-width: 80% !important;*/
    /*}*/
    .top-city {
        margin: 8px 0 0 30px;
    }

    .top-enter {
        margin: 8px 0 0 20px;
    }

    .clients-line {
        width: auto;
        margin-left: 0;
    }

    .clients-line img {
        float: left;
        width: 15%;
        margin: 0 0 1.5% 1.5%;
    }

    .clients-line img:nth-child(6n + 1) {
        clear: left;
        margin: 0 0 1.5%;
    }

    .footer-line {
        text-align: center;
    }

    .footer-line ul {
        width: auto;
    }

    .footer-line li {
        float: none;
        display: inline-block;
        margin: 0 0 0 47px;
    }

    .footer-line li:first-child {
        margin: 0;
    }

    .footer-line li:before {
        margin: 0 47px 0 0;
    }

    .copy {
        padding: 9px 0 0 30px;
    }

    .studio {
        margin: 1px 0 0 30px;
    }

    .reclame-holder {
        width: auto;
    }

    .reclame-item {
        width: 24%;
        margin: 0 1.3% 1.3% 0;
    }

    .reclame-item img {
        width: 100%;
    }

    .reclame-block {
        width: 49%;
    }

    .reclame-block .a5 {
        width: 48%;
        margin: 0 2% 3% 0;
    }

    .reclame-block .a6 {
        width: 23%;
        margin: 0 2% 3% 0;
    }

    .reclame-item.a3 {
        width: 48%;
    }

    .reclame-item.stripe {
        width: 100%;
    }
}

@media screen and (max-width: 960px) {
    .logo {
        width: auto;
    }

    #address-program-desc p {
        display: inline-block;
        width: 100%;
    }

    .top-city, .top-enter, .header-phone, .header-action {
        display: none;
    }

    .nav-icon {
        display: block;
    }

    .header-main {
        padding: 40px 0 40px;
    }

    h1 {
        margin: 0 0 21px;
        font-size: 40px;
        line-height: 44px;
    }

    .main-title-green {
        padding: 10px 15px 8px;
        margin: 0 0 10px;
        font-size: 24px;
        line-height: 30px;
        letter-spacing: 1px;
    }

    .header-subtitle {
        margin: 0 0 28px;
        font-size: 16px;
        line-height: 20px;
    }

    .header-form {
        padding: 20px 25px 1px;
    }

    .header-form-text {
        margin: 0 auto 22px;
        font-size: 20px;
        line-height: 24px;
    }

    .header .input {
        margin: 0 0 22px;
    }

    .header-bottom {
        padding: 70px 0 0;
    }

    .header-info, .header-video {
        float: none;
        width: auto;
    }

    .header-info {
        margin: 0 0 20px;
    }

    .about {
        padding: 52px 0 51px;
    }

    h2 {
        margin: 0 0 30px;
        font-size: 30px;
        line-height: 36px;
    }

    .big-h2 {
        font-size: 36px;
    }

    .subtitle {
        margin: -33px 0 40px;
        font-size: 22px;
        line-height: 30px;
    }

    .about-list li {
        margin: 0 0 31px;
        padding: 0 5px;
    }

    .about-icon {
        width: 152px;
        height: 152px;
        line-height: 150px;
    }

    .about-title {
        font-size: 16px;
    }

    .about-text {
        font-size: 16px;
    }

    .yellow-block {
        padding: 31px 0 33px;
        font-size: 24px;
        line-height: 30px;
    }

    .scheme {
        padding: 64px 0 55px;
    }

    .calc-block {
        padding: 68px 0 50px;
    }

    .order-block {
        padding: 68px 0 50px;
    }

    .order-subtitle {
        margin: 0 0 24px;
        font-size: 24px;
        line-height: 30px;
    }

    .order-text {
        margin: 0 0 40px;
        font-size: 18px;
        line-height: 24px;
    }

    .form-border {
        padding: 0 25px 25px;
    }

    .form-title {
        padding: 31px 0 0;
        font-size: 30px;
        line-height: 36px;
    }

    .form-title-min {
        margin: 0 0 26px;
        font-size: 18px;
    }

    .text-block {
        padding: 0 0 40px;
    }

    .text-block .title {
        padding: 64px 0 0;
        font-size: 36px;
        line-height: 36px;
    }

    .text-block .title-min {
        margin: 0 0 45px;
        font-size: 30px;
        line-height: 36px;
    }

    .img {
        margin: 0 0 36px;
    }

    .info {
        padding: 50px 0 54px;
    }

    .info-cursor, .reclame {
        display: none;
    }

    .table {
        margin: 0;
    }

    .gallery {
        padding: 60px 0 1px;
    }

    .owl-prev, .owl-next {
        top: -69px;
    }

    .gallery-line2 .gallery-item {
        width: 49%;
        margin: 0 0 2% 2%;
    }

    .gallery-line2 .gallery-item:first-child {
        margin: 0 0 2%;
    }

    .gallery-line3 .gallery-item {
        width: 32%;
        margin: 0 0 2% 2%;
    }

    .gallery-line3 .gallery-item:first-child {
        margin: 0 0 2%;
    }

    .company {
        padding: 45px 0 47px;
    }

    .client {
        padding: 58px 0 54px;
    }

    .client-photo {
        padding: 54px 0 0;
    }

    .clients-block {
        padding: 0 0 50px;
    }

    /*.map {*/
    /*    padding: 0 0 57px;*/
    /*}*/
    .map-block {
        height: 450px;
        margin: 0 -10px 48px;
    }

    .footer-download {
        padding: 30px 0 0;
    }

    .scheme-holder {
        width: auto;
        height: auto;
        background: none;
    }

    .scheme-item {
        overflow: hidden;
        position: static;
        width: auto;
        margin: 0 0 30px;
    }

    .scheme-point {
        display: none;
    }

    .scheme-text {
        margin: 0;
        padding: 0;
        font-size: 14px;
        font-weight: 400;
        line-height: 16px;
    }

    .scheme-text br {
        display: none;
    }

    .scheme-text .br {
        display: inline;
    }

    .button-big {
        padding: 0 25px;
        font-size: 18px;
    }

    .footer-bottom {
        padding: 32px 0 31px;
    }

    .footer-bottom .logo {
        overflow: hidden;
        float: none;
        width: auto;
        text-align: center;
        margin: 0 auto 10px;
    }

    .footer-bottom .header-phone {
        float: none;
        margin: 0 0 10px;
        clear: both;
        display: block;
        text-align: center;
    }

    .copy {
        float: none;
        padding: 9px 0 10px;
        text-align: center;
    }

    .studio {
        display: block;
        width: 120px;
        float: none;
        margin: 0 auto;
    }

    .header-hidden-list li {
        width: 32%;
        margin: 0 0 12px 2%;
    }

    .header-hidden-list li:nth-child(4n + 1) {
        clear: none;
        margin: 0 0 12px 2%;
    }

    .header-hidden-list li:nth-child(3n + 1) {
        clear: left;
        margin: 0 0 12px;
    }

    .header-video-bg {
        display: none;
    }
}

@media screen and (max-width: 800px) {
    .client-logo-slider {
        display: block;
    }

    .client-logo-slide {
        padding: 2px;
        text-align: center;
    }

    .client-logo-slide img {
        width: 20%;
        margin: 0 1%;
        border: 1px solid #e46217;
    }

    .clients-line {
        display: none;
        max-width: 600px;
        margin: 0 auto;
    }

    .clients-line img {
        width: 31%;
        margin: 0 0 2% 2%;
    }

    .clients-line img:nth-child(3n + 1) {
        clear: left;
        margin: 0 0 2%;
    }

    .footer-line li {
        margin: 0 0 0 20px;
    }

    .footer-line li:before {
        margin: 0 20px 0 0;
    }
}

@media screen and (max-width: 767px) {
    .header-partners {
        height: 57px;
    }

    .header-partners > .holder > .container > .row > .col-6 > .lead {
        text-align: center;
    }

    h1 {
        font-size: 30px;
        line-height: 36px;
    }

    .form-block {
        max-width: 400px;
        margin: 0 auto;
    }

    .header-form {
        max-width: 400px;
        margin: 0 auto;
        padding: 20px 25px 25px;
    }

    .select-block {
        float: none;
        width: auto;
        margin: 0 auto;
        padding: 0 0 7px;
    }

    .input-item {
        float: none;
        width: auto;
        margin: 0 auto 15px;
    }

    .select-block-tsj {
        float: none;
        width: auto;
        margin: 0 auto;
        padding: 0 0 7px;
    }

    .input-item-tsj {
        float: none;
        width: auto;
        margin: 0 auto 15px;
    }

    .button-item {
        float: none;
        width: auto;
        margin: 0 auto;
        padding: 0;
    }

    .header-form .submit {
        margin: 0;
        height: 46px;
        padding: 0 10px 4px;
        font-size: 18px;
        border-radius: 5px;
    }

    .header-bottom {
        padding: 40px 0 0;
    }

    .about-list li {
        overflow: hidden;
        display: block;
        width: auto;
        margin: 0 0 20px;
        text-align: left;
    }

    .about-icon {
        float: left;
        width: 68px;
        height: 68px;
        margin: 0;
        line-height: 66px;
    }

    .about-icon img {
        width: 50%;
    }

    .about-title {
        margin: 0 0 4px 80px;
        font-size: 16px;
    }

    .about-text {
        margin: 0 0 0 80px;
        font-size: 16px;
    }

    .about-text br {
        display: none;
    }

    .company-list {
        float: none;
        width: auto;
        margin: 0;
    }

    .client-video h2, .gallery h2, .client-photo h2 {
        padding: 0 35px;
    }

    .big-button {
        max-width: 400px;
        padding: 12px 25px 0;
        line-height: 24px;
    }

}

@media screen and (max-width: 640px) {
    .input_city {
        display: block;
    }

    .input_city[name=city] {
        margin-bottom: 10px !important;
        width: 100%;
    }

    .input_city[type=submit] {
        width: 100%;
    }

    .table td:first-child {
        display: none;
    }

    .table .button {
        padding: 0 20px;
    }

    .table td:last-child {
        width: 165px;
    }

    .footer-line {
        height: auto;
        padding: 10px 0 5px;
    }

    .footer-line li {
        display: inline-block;
        width: 48%;
        margin: 0 0 14px;
        text-align: center;
    }

    .footer-line li:first-child {
        margin: 0 0 14px;
    }

    .footer-line li:before {
        display: none;
    }

    .header-hidden-list li {
        width: 48%;
        margin: 0 0 12px 4%;
    }

    .header-hidden-list li:nth-child(4n + 1) {
        margin: 0 0 12px 4%;
    }

    .header-hidden-list li:nth-child(3n + 1) {
        clear: none;
        margin: 0 0 12px 4%;
    }

    .header-hidden-list li:nth-child(2n + 1) {
        clear: left;
        margin: 0 0 12px;
    }

    #video-popup iframe {
        width: 400px;
        height: 225px;
    }

}

@media screen and (max-width: 560px) {
    .client-photo-slider {
        display: block;
    }

    .client-photo-block {
        display: none;
    }

    .client-logo-slide img {
        width: 45%;
        margin: 0 1% 2.5%;
        border: 1px solid #e46217;
    }
}

@media screen and (max-width: 480px) {
    .logo-img {
        max-width: 280px;
    }

    .input_city {
        display: block;
    }

    .input_city[name=city] {
        margin-bottom: 10px;
        width: 100%;
    }

    .input_city[type=submit] {
        width: 100%;
    }

    h2 {
        margin: 0 0 30px;
        font-size: 24px;
        line-height: 30px;
    }

    .subtitle {
        margin: -33px 0 40px;
        font-size: 18px;
        line-height: 24px;
    }

    .header-top {
        height: 105px;
        padding: 12px 0 0;
    }

    .logo-text {
        clear: left;
        padding: 4px 0 0;
    }

    .nav-icon {
        margin: 22px 0 0;
    }

    .about-title {
        font-size: 14px;
    }

    .about-text {
        font-size: 14px;
    }

    .yellow-block {
        padding: 23px 0;
        font-size: 18px;
        line-height: 24px;
    }

    .table-button-hide {
        display: none;
    }

    .table-button-show {
        display: inline;
    }

    .table td:last-child {
        width: 95px;
    }

    .big-button {
        max-width: 300px;
        padding: 8px 25px 0;
        line-height: 18px;
    }

    .about .button {
        max-width: 300px;
        padding: 12px 25px 0;
        line-height: 24px;
    }

    #video-popup iframe {
        width: 300px;
        height: 169px;
    }

    .popup-block {
        width: 300px;
    }

    .footer-bottom .logo-text {
        clear: none;
        padding: 9px 0 0 12px;
    }

    .fancybox-wrap .fancybox-close {
        top: 0px;
        right: 0px;
    }
}

@media screen and (max-width: 420px) {
    .logo-img {
        max-width: 260px;
    }

    body {
        overflow-x: hidden;
    }

    .clients-line img {
        width: 46.5%;
        margin: 0 0 3% 3%;
    }

    .clients-line img:nth-child(3n + 1) {
        clear: none;
        margin: 0 0 3% 3%;
    }

    .clients-line img:nth-child(2n + 1) {
        clear: left;
        margin: 0 0 3%;
    }

}


.ui-widget-content {
    width: 400px !important;
    position: relative !important;
    z-index: 99999 !important;
}

.ui-menu .ui-menu-item {
    position: relative;
    margin: 0;
    padding: 10px;
    cursor: pointer;
    border: 1px solid #c6edf5;
    border-radius: 5px;
    background: #fff
}


.clearfix::after {
    content: "";
    clear: both;
    display: table;
}

/*ymaps {*/
/*    height: 75%;*/
/*}*/


#stand_count_text {
    content: "";
    clear: both;
}

#people_count_text {
    content: "";
    clear: both;
}

#people_count_symbol {
    content: "";
    clear: both;
}

.space_content {
    content: "";
    clear: both;
}

.maps-wrapper {
    min-height: 300px !important;
}

.maps-wrapper #map > ymaps, .maps-wrapper #map > ymaps > ymaps {
    height: 100% !important;
}

@media screen and (max-width: 375px) {
    .logo-img {
        max-width: 240px;
    }
}