* {margin: 0;padding: 0;box-sizing: border-box;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;}
body {font-family: "Raleway", sans-serif;}
body a {text-decoration: none; color: #FFFFFF;}
body a:hover{text-decoration: none;}
.row {margin: 0!important;}
.container-fluid{padding: 0!important; background: #313035;}
.content {margin: 0 auto!important;position: relative; padding: 0; width: 1180px; height: 100%;}
.clear {clear: both;}

/* Font's style */
h1, h2 ,h3, h4, h5 {
    font-style: normal;
}
h1 {
    font-weight: 700!important; font-size: 42px!important; line-height: 49px!important; color: #FFFFFF;
}
h2 {
    font-weight: 700!important; font-size: 32px!important; line-height: 38px; color: #FFFFFF;
}
h3 {
    font-weight: 700!important; font-size: 16px!important; line-height: 19px; color: #282828;
}
/* Font's style */

.flexStart, .flexCenter, .flexBetween, .flexEnd {
    display: -webkit-flex; display: flex; -webkit-align-content: space-between; align-content: space-between;
}
.flexStart, .flexBetween, .flexEnd {
    -webkit-flex-direction: row; flex-direction: row;
}
.flexCenter {
    -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center;
    -webkit-align-content: center; align-content: center;
}
.flexStart {
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.flexEnd {
    -webkit-justify-content: flex-end; justify-content: flex-end;
}
.flexBetween {
    -webkit-justify-content: space-between; justify-content: space-between;
}
.flexWrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.flexNoWrap {
    -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}

/* Button's */
.red-btn {
    background: linear-gradient(180deg, #FF5A5A 0%, #E03131 100%); border: none; border-radius: 6px; height: 48px;
    text-align: center; color: #FFFFFF; cursor: pointer; font: 14px "Raleway", sans-serif; font-weight: 700; line-height: 48px;
    outline: none; -ms-outline: none; -webkit-outline: none; -moz-outline: none; text-transform: uppercase;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
    border-bottom: 3px solid #BE1F1F;
}
.red-btn:hover, .red-btn:focus, .red-btn:active {
    background: linear-gradient(180deg, #E03131 0%, #FF5A5A 100%);
}
.red-btn:disabled {
    opacity: 0.5; cursor: not-allowed;
}
.calc-btn {
    background: linear-gradient(180deg, #FE5A5A 0%, #DC2E2E 100%);
    border: none; border-radius: 6px; height: 60px; padding: 8px 34px 15px 20px;
    color: #FFFFFF; cursor: pointer; font: 16px "Raleway", sans-serif; font-weight: 700;
    outline: none; -ms-outline: none; -webkit-outline: none; -moz-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
    border-bottom: 3px solid #BE1F1F; flex: 0 0 346px; -ms-flex: 0 0 346px; -webkit-flex: 0 0 346px;
}
.calc-btn-bg {
    width: 39px; height: 40px; background: url("../img/calculator-39x40.png") no-repeat center; margin-right: 10px;
}
.calc-btn-text {margin: 3px 0 0 0}
.calc-btn p {
    text-transform: uppercase; line-height: 25px; margin: 0;
}
.calc-btn span {
    font-size: 10px; line-height: 12px; margin: -2px 0 0 0; display: block;
}
.calc-btn:hover, .calc-btn:focus, .calc-btn:active {
    background: linear-gradient(180deg, #DC2E2E 0%, #FE5A5A 100%);
}
.calc-btn:disabled {
    opacity: 0.5; cursor: not-allowed;
}
.man-btn {
    background: linear-gradient(180deg, #FE5A5A 0%, #DC2E2E 100%);
    border: none; border-radius: 6px; height: 60px; padding: 6px 10px 15px 22px; text-align: left;
    color: #FFFFFF; cursor: pointer; font: 16px "Raleway", sans-serif; font-weight: 700;
    outline: none; -ms-outline: none; -webkit-outline: none; -moz-outline: none;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
    border-bottom: 3px solid #BE1F1F; flex: 0 0 302px; -ms-flex: 0 0 302px; -webkit-flex: 0 0 302px;
}
.man-btn-bg {
    width: 39px; height: 43px; background: url("../img/man-for-button.png") no-repeat center; margin-right: 8px;
}
.man-btn-text {margin: 5px 0 0 0}
.man-btn p {
    text-transform: uppercase; line-height: 25px; margin: 0;
}
.man-btn span {
    font-size: 10px; line-height: 12px; margin: -2px 0 0 0; display: block;
}
.man-btn:hover, .man-btn:focus, .man-btn:active {
    background: linear-gradient(180deg, #DC2E2E 0%, #FE5A5A 100%);
}
.man-btn:disabled {
    opacity: 0.5; cursor: not-allowed;
}
/* Button's */

/* Form's element's */
input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; } /* FF 4-18 */
input:focus::-moz-placeholder { color:transparent; } /* FF 19+ */
input:focus:-ms-input-placeholder { color:transparent; } /* IE 10+ */
input::-webkit-input-placeholder { color:#747474; }
input:-moz-placeholder { color:#747474; } /* FF 4-18 */
input::-moz-placeholder { color:#747474; } /* FF 19+ */
input:-ms-input-placeholder { color:#747474; } /* IE 10+ */
input[type="submit"] {
    display: block; text-align: center;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"] {
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
    width: 100%; font-weight: 400; font-size: 14px; color: #282828; font-family: "Raleway", sans-serif;
    border: 1px solid #EBEBEB; background: #FFFFFF; border-radius: 6px; outline: none; -webkit-outline: none; -moz-outline: none; -o-outline: none;
}
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"] {
    height: 53px; padding: 0 18px; line-height: 51px;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="password"]:focus, input[type="number"]:focus {
    border: 1px solid #282828;
}
input[type="text"]:read-only, input[type="email"]:read-only, input[type="tel"]:read-only, input[type="password"]:read-only, textarea:read-only {
    background: #F5F5F6;
}
input[type="checkbox"], input[type="radio"] {
    display: none;
}
.label_checkbox, .label_radio {
    font-family: "Raleway", sans-serif; position: relative; cursor: pointer; padding-bottom: 4px; display: inline-block;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.label_checkbox, .label_radio {
    font-size: 10px; line-height: 18px; color: #282828; font-weight: 400; margin-left: 28px; height: 18px; border-bottom: 1px dashed #282828;
}
.label_checkbox:hover, .label_radio:hover, .label_checkbox:focus, .label_radio:focus, .label_checkbox:active, .label_radio:active {
    border-bottom: 1px dashed transparent;
}
.label_checkbox:before {
    content: ""; width: 18px; height: 18px; background: transparent; border-radius: 3px; border: 1px solid #EBEBEB;
    position: absolute; left: -28px;
}
.label_radio:before {
    content: ""; width: 18px; height: 18px; background: transparent; border-radius: 100px; border: 1px solid #EBEBEB;
    position: absolute; left: 0;
}
label a {
    color: #282828; text-decoration: none; padding-bottom: 2px; border-bottom: 1px dashed #282828;
}
label a:hover, label a:focus, label a:active {
    color: #282828; text-decoration: none; border-bottom: none;
}
input[type="checkbox"]:checked + label:before {
    background: #EBEBEB url("../img/check-8x6.png") no-repeat center;
}
input[type="radio"]:checked + label:before {
    border: 6px solid #65C72E!important;
}
select {
    border: none!important; outline: none; -webkit-outline: none; -moz-outline: none;
    -webkit-appearance: none; -moz-appearance: none; appearance: none;
}
.user-input {display: none!important;}
/* Form's element's */

/* Content */
.header__top {
    width: 100%; height: 130px; position: relative; padding: 30px 0 0 0;
}
.header__top-str {
    width: 100%; height: 100px; border-bottom: 1px dashed #FFFFFF;
}
.logo {
    width: 307px; height: 60px; margin: 0 73px 0 0; padding: 0 0 0 72px; background: url("../img/logo-60x60.svg") no-repeat left center;
}
.logo p {
    font-weight: 400; font-size: 14px; line-height: 16px; color: #FFFFFF; margin: 6px 0 0 0;
}
.location {
    width: 218px; height: 57px; margin: 1px 0 0 0; padding: 0 0 0 54px; background: url("../img/location-40x40.svg") no-repeat left center;
    font-size: 16px; line-height: 19px; color: #FFFFFF;
}
.location span {
    font-weight: 400;
}
.location p {
    font-weight: 700;
}
.location {
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.locationUrl:hover, .locationUrl:focus, .locationUrl:active {
    color: #FE5A5A;
}
.phone {
    width: 175px; height: 38px; text-align: right; margin: 11px 25px 0 auto;
}
.phone a {
    font-weight: 700; font-size: 18px; line-height: 22px; color: #FFFFFF; font-family: 'Montserrat', sans-serif;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.phone a:hover, .phone a:focus, .phone a:active {
    color: #FE5A5A;
}
.phone p {
    font-weight: 400; font-size: 14px; line-height: 17px; color: #FFFFFF; font-family: 'Montserrat', sans-serif; margin: 0;
}
.header__top-str .red-btn {
    width: 171px; margin: 8px 25px 0 0;
}
.vk {
    width: 40px; height: 40px; margin: 10px 0 0 0; background: url("../img/vk-40x40.svg") no-repeat center;
}
.menu {
    width: 36px; height: 36px; background: url("../img/menu-24x20.svg") no-repeat center; cursor: pointer; margin: 0; display: none;
}
.header__ {
    width: 100%; height: auto; position: relative; padding: 83px 0 100px 0; background: url("../img/header-bg.png") no-repeat right calc(50% - 333px) center;
}
.header__ h1 {
    color: #FFFFFF; font-family: "Raleway", sans-serif; margin: 0 0 30px 0; width: 810px; height: auto;
}
.instr {
    width: 602px; height: 45px; margin: 0 0 15px 0; padding: 0 0 0 60px; background: url("../img/instruments-40x40.svg") no-repeat left top 5px;
    font-weight: 400; font-size: 18px; line-height: 21px; color: #FFFFFF;
}
.calculator-block {
    width: 598px; height: auto;
}
.calculator-block .calc-btn {
    margin: 22px 15px 0 0;
}
.calc-arrow {
    background: url("../img/arrow.svg") no-repeat; width: 148px; height: 129px; margin: 4px -5px 0 0;
}
.calc-round {
    width: 101px; height: 101px; border-radius: 101px; border: 1px solid #FFFFFF; background: #6CB21B; text-align: center;
    text-transform: uppercase; color: #FFFFFF; flex: 0 0 101px; -ms-flex: 0 0 101px; -webkit-flex: 0 0 101px;
    font-weight: 700; font-size: 12px; line-height: 17px; padding-top: 23px;
}
.description-wrap {
    width: 650px; height: auto; margin-top: 15px;
}
.description-item:first-child {
    width: 181px; margin-right: 45px;
}
.description-item:nth-child(2) {
    width: 180px; margin-right: 45px;
}
.description-item:last-child {
    width: 200px;
}
.description-item {
    background: url("../img/vector-40x40.svg") no-repeat left top; padding-top: 52px;
}
.description-item h3 {
    color: #FFFFFF; text-transform: uppercase; margin: 0 0 12px 0;
}
.description-item p {
    color: #FFFFFF; margin: 0; font-size: 14px; line-height: 16px;
}
.services__ {
    width: 100%; height: auto; position: relative; padding-bottom: 85px;
}
.services__ h2 {
    text-align: center; color: #FFFFFF; margin: 0 0 6px 0;
}
.services__ .stage {
    margin: 0 0 60px 0;
}
.services__wrap {
    width: 100%; height: auto;
}
.service-item {
    width: 380px; height: auto; position: relative;
}
.service-item img {
    width: 100%; height: auto; margin: 0 0 27px 0; border-radius: 6px;
}
.service-item h3 {
    color: #FFFFFF; text-transform: uppercase; text-align: center; margin: 0 0 12px 0; font-weight: 700; font-size: 16px; line-height: 19px;
}
.service-item p {
    font-weight: 400; font-size: 14px; line-height: 16px; text-align: center; color: #FFFFFF; margin: 0;
}
.services__ .man-btn {
    width: 302px; margin: 60px auto 0 auto;
}
.stage__ {
    width: 100%; height: auto; position: relative; background: url("../img/gradient.png") no-repeat center; background-size: contain;
}
.stage__ h2 {
    text-align: center; color: #FFFFFF; margin: 0 0 6px 0;
}
.stage {
    font-weight: 400; font-size: 18px; line-height: 21px; text-align: center; color: #FFFFFF; margin: 0 0 109px 0;
}
.stage__wrap {
    width: 100%; height: auto;
}
.stage__item {
    width: 180px; height: 178px; position: relative; background: #FFFFFF; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15); border-radius: 6px;
    padding: 60px 15px 20px 14px; z-index: 2;
}
.stage__item img {
    width: 85px; height: 89px; position: absolute; top: -44.5px; left: 50%; margin-left: -42.5px;
}
.stage__item h3 {
    color: #282828; text-transform: uppercase; text-align: center; margin: 0 0 12px 0;
}
.stage__item p {
    font-weight: 400; font-size: 14px; line-height: 16px; text-align: center; color: #282828; margin: 0;
}
.stage__item::after {
    content: ""; position: absolute; width: 164px; height: 9px; background: #EBEBEB; border-radius: 0 0 6px 6px; bottom: -9px; left: 50%; margin-left: -82px; z-index: 1;
}
.stage__ .calc-btn {
    margin: 69px auto 0 auto; width: 346px;
}
.callback__ {
    width: 100%; height: auto; position: relative; background: url("../img/gradient.png") no-repeat center; background-size: contain; padding: 100px 0 121px 0;
}
.callback__ img {
    width: 417px; height: 448px; position: absolute; left: 50%; top: -40px; z-index: 3; margin-left: -150px;
}
.callback__wrap {
    width: 100%; height: auto;
}
.callback__text {
    width: 480px; height: auto;
}
.callback__text h2 {
    color: #FFFFFF; margin: 0 0 30px 0;
}
.callback__location {
    width: 100%; height: 24px; background: url("../img/minilocation-24x24.svg") no-repeat left center; padding-left: 34px;
    font-family: "Montserrat", sans-serif; font-weight: 400; font-size: 18px; line-height: 22px; color: #FFFFFF; margin: 0 0 29px 0;
}
.callback__cons {
    width: 100%; height: auto; background: url("../img/shlem-85x89.png") no-repeat left top; padding-left: 80px; background-size: 55px 58px;
    font-family: "Montserrat", sans-serif; font-weight: 400; font-size: 16px; line-height: 20px; color: #FFFFFF; margin: 0 0 30px 0;
}
.callback_smeta {
    width: 100%; height: auto; background: url("../img/start-85x89.png") no-repeat left top; padding-left: 80px; background-size: 55px 58px;
    font-family: "Montserrat", sans-serif; font-weight: 400; font-size: 16px; line-height: 20px; color: #FFFFFF; margin: 0 0 30px 0;
}
.callback__form {
    width: 380px; height: 385px; position: relative; padding: 42px 38px 42px 40px; background: #FFFFFF; box-shadow: 0px 4px 10px rgba(40, 40, 40, 0.15);
    border-radius: 6px; z-index: 2;
}
.callback__form::after {
    content: ""; position: absolute; width: 360px; height: 10px; background: #EBEBEB; box-shadow: 0px 10px 40px rgba(40, 40, 40, 0.05);
    border-radius: 0 0 6px 6px; left: 50%; margin-left: -180px; bottom: -10px; z-index: 1;
}
.callback__form h3 {
    text-align: center; color: #282828; text-transform: uppercase; font-family: "Montserrat", sans-serif; margin: 0 0 29px 0;
}
.froze {
    width: 100%; height: auto;
}
.froze input[type="text"] {
    margin-bottom: 16px;
}
.froze input[type="tel"] {
    margin-bottom: 18px;
}
.froze .man-btn {
    width: 100%; margin-bottom: 14px;
}
.map__ {
    width: 100%; height: 545px; position: relative;
}
.map__ #my-maps {
    width: 100%; height: 100%;
}
.contacts__ {
    position: absolute; z-index: 2; left: 50%; top: 75px; margin: 0 0 0 -590px; padding: 46px 61px 61px 61px;
    background: #FFFFFF; box-shadow: 0px 4px 10px rgba(40, 40, 40, 0.15); border-radius: 6px;
}
.contacts__logo {
    width: 525px; height: 47px; margin: 0 0 38px 0; padding: 7px 0 0 64px; background: url("../img/logo-60x60.svg") no-repeat left center; background-size: 47px 47px;
}
.contacts__logo p {
    font-weight: 400; font-size: 14px; line-height: 17px; color: #282828; margin: 0;
}
.contacts__wrap {
    width: 100%; height: auto;
}
.contacts__wrap-first {
    width: 309px; height: auto; flex: 0 0 309px; -ms-flex: 0 0 309px; -webkit-flex: 0 0 309px; border-right: 1px dashed #747474; padding-right: 46px; margin-right: 34px;
}
.contacts__wrap-second {
    width: 240px; flex: 0 0 240px; -ms-flex: 0 0 240px; -webkit-flex: 0 0 240px;
}
.contacts__wrap h2 {
    color: #282828; margin: 0 0 27px 0;
}
.contacts__phone {
    width: 100%; margin-bottom: 18px; padding-left: 40px; background: url("../img/phone-24x24.svg") no-repeat left center;
    font-weight: 700; font-size: 18px; line-height: 22px; color: #282828; font-family: "Montserrat", sans-serif;
}
.contacts__worktime {
    width: 100%; margin-bottom: 18px; padding-left: 40px; background: url("../img/worktime-24x24.svg") no-repeat left center;
    font-weight: 400; font-size: 18px; line-height: 22px; color: #282828; font-family: "Montserrat", sans-serif;
}
.contacts__address {
    width: 100%; padding-left: 40px; background: url("../img/minilocation-24x24.svg") no-repeat left top;
    font-weight: 400; font-size: 16px; line-height: 20px; color: #282828; font-family: "Montserrat", sans-serif;
}
.contacts__wrap-second p {
    font-weight: 400; font-size: 16px; line-height: 20px; color: #282828; font-family: "Montserrat", sans-serif; margin: 0 0 12px 0;
}
.contacts__wrap-second p.last {
    margin: 0 0 29px 0;
}
.contacts__whatsapp span {
    line-height: 33px; font-weight: 400; font-size: 14px; color: #282828;
}
.whatsAppLink {
    display: block; width: 102px; height: 33px; background: linear-gradient(180deg, #54D366 0%, #36C14A 100%); border-radius: 6px;
}
.whatsApp {
    background: url("../img/whatsapp.png") no-repeat center; border-radius: 6px; width: 100%; height: 100%;
}
.socialItem {
    width: 48px; height: 48px; background-repeat: no-repeat; background-position: center; display: block;
}
.contacts__whatsapp {
    gap: 12px;
}
.telegramBtn {
    display: block; height: 33px; cursor: pointer; border: 1px solid rgba(47, 47, 45, 0.1);
    border-radius: 4px; color: #2F2F2D; font-size: 12px; line-height: 31px; font-weight: 400;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; padding: 0 0 0 34px;
}
.telegramBtn {
    background: url("../img/ic-tg-22x22.png") no-repeat left 6px center; width: 96px;
}
.telegramBtn:hover, .telegramBtn:focus, .telegramBtn:active {
    background: rgba(41, 170, 237, 0.12) url("../img/ic-tg-22x22.png") no-repeat left 6px center; color: #2F2F2D;
}
.partners__ {
    width: 100%; height: auto; position: relative; padding: 85px 0;
}
.partners__ h2 {
    text-align: center; color: #FFFFFF; margin: 0 0 60px 0;
}
.partners__wrap, .carousel-wrapper {
    width: 100%; height: auto;
}
.carousel-wrapper {
    overflow-x: hidden;
}
.carousel-items {
    width: 5000px; height: auto; position: relative;
}
.carousel-block {
    width: 280px; height: 100px; border-radius: 6px; background: #FFFFFF; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
    display: flex; align-items: center; justify-content: center; margin: 0 20px 0 0;
    flex: 0 0 280px; -webkit-flex: 0 0 280px; -ms-flex: 0 0 280px;
}
.carousel-block img {
    max-height: 100%; max-width: 100%;
}
/* Content */

/* Footer */
.footer__ {
    width: 100%; height: auto; position: relative; padding: 25px 0 12px 0;
}
.footer__top {
    width: 100%; height: auto; border-bottom: 1px dashed #FFFFFF; padding-bottom: 20px;
}
.footer__logo {
    width: 538px; flex: 0 0 538px; -ms-flex: 0 0 538px; -webkit-flex: 0 0 538px; height: 48px; margin: 0; padding: 6px 0 0 77px;
    background: url("../img/logo-60x60.svg") no-repeat left center; background-size: 48px 48px;
}
.footer__logo p {
    font-weight: 400; font-size: 14px; line-height: 17px; color: #FFFFFF; margin: 0;
}
.terms {
    font-weight: 400; font-size: 14px; line-height: 16px; color: #008FE0; padding-bottom: 4px; border-bottom: 1px dashed #008FE0;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; margin: 10px 43px 0 auto; height: 21px;
}
.terms:hover, .terms:focus, .terms:active {
    border-bottom: 1px dashed transparent;
}
.footer__top .red-btn {
    width: 171px; flex: 0 0 171px; -ms-flex: 0 0 171px; -webkit-flex: 0 0 171px; margin: 0 25px 0 0;
}
.footer__top .vk {
    margin: 3px 0 0 0;
}
.copyright {
    width: 100%; height: auto; padding-top: 10px; font-weight: 400; font-size: 12px; line-height: 14px; text-align: center; color: rgba(255, 255, 255, 0.5);
}
.copyright a {
    color: rgba(255, 255, 255, 0.5); transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.copyright a:hover, .copyright a:focus, .copyright a:active {
    color: #FE5A5A;
}
/* Footer */

/* Modal */
.overlay {
    width: 100%; background: rgba(0, 0, 0, 0.8); height: 100%; position: fixed; top: 0; right: 0; z-index: 99998; display: none;
}
.modalForm {
    width: 380px; height: 385px; position: fixed; padding: 42px 38px 42px 40px; background: #FFFFFF; box-shadow: 0px 4px 10px rgba(40, 40, 40, 0.15);
    border-radius: 6px; z-index: 99999; left: 50%; margin-left: -190px; top: 50%; margin-top: -192.5px; display: none;
}
.modalForm::after {
    content: ""; position: absolute; width: 360px; height: 10px; background: #EBEBEB; box-shadow: 0px 10px 40px rgba(40, 40, 40, 0.05);
    border-radius: 0 0 6px 6px; left: 50%; margin-left: -180px; bottom: -10px; z-index: 99998;
}
.modalForm h3 {
    text-align: center; color: #282828; text-transform: uppercase; font-family: "Montserrat", sans-serif; margin: 0 0 29px 0;
}
.modalCall {
    width: 100%; height: auto;
}
.modalCall input[type="text"] {
    margin-bottom: 16px;
}
.modalCall input[type="tel"] {
    margin-bottom: 18px;
}
.modalCall .red-btn {
    width: 171px; margin: 0 auto 14px auto; display: block;
}
.closeModal {
    position: absolute; top: 8px; right: 8px; cursor: pointer; width: 36px; height: 36px; background: url("../img/close-24x24.png") no-repeat center;
}
.modalSend {
    width: 380px; height: 385px; position: fixed; padding: 192px 105px 88px 104px; background: #FFFFFF url("../img/smile.svg") no-repeat center top 87px; box-shadow: 0px 4px 10px rgba(40, 40, 40, 0.15);
    border-radius: 6px; z-index: 99999; left: 50%; margin-left: -190px; top: 50%; margin-top: -192.5px; display: none;
}
.modalSend h3 {
    text-align: center; color: #282828; text-transform: uppercase; font-family: "Montserrat", sans-serif; margin: 0 0 37px 0;
}
.modalSend .closeBtn {
    width: 171px; margin: 0 auto; display: block;
}
.mobileMenu {
    width: 100%; height: 100vh; overflow-y: auto; position: fixed; padding: 89px 30px 73px 70px; background: #313035; border-radius: 2px; z-index: 99997; right: -100%; top: 0;
}
.closeMenu {
    width: 36px; height: 36px; position: absolute; top: 20px; left: 20px; background: url("../img/arrow-12x24.png") no-repeat center; cursor: pointer;
}
#mobileMenu {
    list-style: none; padding-bottom: 30px; border-bottom: 1px dashed #FFFFFF; margin-bottom: 40px;
}
#mobileMenu li {
    font-weight: 700; font-size: 18px; line-height: 21px; color: #FFFFFF; margin-bottom: 35px;
}
#mobileMenu li.last {margin-bottom: 0;}
.mobilePhone {
    width: 175px; height: 38px; text-align: left; margin: 0 0 30px 0;
}
.mobilePhone a {
    font-weight: 700; font-size: 18px; line-height: 22px; color: #FFFFFF; font-family: 'Montserrat', sans-serif;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all;
}
.mobilePhone a:hover, .mobilePhone a:focus, .mobilePhone a:active {
    color: #FE5A5A;
}
.mobilePhone p {
    font-weight: 400; font-size: 14px; line-height: 17px; color: #FFFFFF; font-family: 'Montserrat', sans-serif; margin: 0;
}
.mobileAddress {
    width: 218px; height: 57px; margin: 0 0 30px 0; padding: 0 0 0 54px; background: url("../img/location-40x40.svg") no-repeat left center;
    font-size: 16px; line-height: 19px; color: #FFFFFF;
}
.mobileAddress span {
    font-weight: 400;
}
.mobileAddress p {
    font-weight: 700;
}
.mobileMenu .red-btn {
    width: 171px;
}
/* Modal */

/* Error 404 */
.errorBlock {
    width: 100%; height: auto; position: relative; min-height: calc(100vh - 260px); background: url("../img/gradient.png") no-repeat center; background-size: contain;
}
.errorBlock .content {position: relative; height: inherit;}
.errorContent {
    width: 829px; height: 245px; position: absolute; left: 100px; top: 50%; margin: -122.5px auto 0 auto;
}
.errorContent img {
    width: 480px; height: auto; margin: 0 20px 0 0;
}
.errorText {
    width: 329px; height: auto;
}
.errorText h1 {
    font-size: 32px!important; line-height: 38px!important; margin: 0 0 30px 0; color: #FFFFFF!important;
}
.errorText a.vkLink {
    font-size: 16px; line-height: 19px; margin: 0 0 26px 0; color: #FFFFFF; font-weight: 400; text-decoration: underline;
    transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; display: inline-block;
}
.errorText a.vkLink:hover, .errorText a.vkLink:focus, .errorText a.vkLink:active {
    color: #FFFFFF; text-decoration: none;
}
.errorText .red-btn {
    width: 171px; text-decoration: none;
}
/* Error 404 */



/* tablet */
@media screen and (min-width: 769px) and (max-width: 1320px){
    .content {width: 690px;}
    .logo {width: 253px; height: 65px; margin: 0;}
    .logo p {margin: -2px 0 0 0;}
    .location {display: none;}
    .phone {margin: 11px 20px 0 auto;}
    .header__top-str .red-btn {margin: 8px 20px 0 0;}
    .header__ {background: url("../img/header-bg.png") no-repeat right calc(50% - 296px) top -125px;}
    .header__ h1 {width: 419px;}
    .instr {width: 420px; height: 63px; margin: 0 0 40px 0;}
    .calculator-block {width: 341px; height: 60px;}
    .calculator-block .calc-btn {margin: 0;}
    .calc-arrow {display: none;}
    .calc-round {display: none;}
    .description-wrap {margin-top: 60px;}
    .services__ {padding-bottom: 80px;}
    .services__wrap {width: 380px; margin: 0 auto; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .service-item {margin-bottom: 60px;}
    .service-item:last-child {margin-bottom: 0;}
    .stage__wrap {-webkit-flex-wrap: wrap!important; flex-wrap: wrap!important; height: 474px; width: 579px; margin: 0 auto;}
    .callback__ img {left: 0; top: auto; bottom: -46px; margin-left: 0;}
    .callback__wrap {-webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .callback__text {width: 100%; margin-bottom: 60px;}
    .callback__form {margin-left: auto;}
    .map__ {height: 813px;}
    .contacts__ {margin: 0 0 0 -345px; padding: 46px 53.5px 61px 53.5px;}
    .footer__top {padding-bottom: 25px;}
    .footer__logo {width: 390px; flex: 0 0 390px; -ms-flex: 0 0 390px; -webkit-flex: 0 0 390px; height: 50px; padding: 0 0 0 60px;}
    .terms {margin: 13px 20px 0 auto;}
    .footer__top .red-btn {display: none;}
    .errorBlock {min-height: calc(100vh - 276px);}
    .errorContent {width: 480px; height: 490px; left: 50%; margin: -245px auto 0 -240px; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .errorContent img {margin: 0 0 46px 0;}
    .errorText {width: 100%; text-align: center;}
    .errorText .red-btn {margin: 0 auto;}
}
/* tablet */


/* mobile */
@media screen and (max-width: 768px){
    .content {width: calc(100% - 30px); min-width: 290px;}
    h1 {font-size: 22px!important; line-height: 26px!important;}
    h2 {font-size: 22px!important; line-height: 26px;}
    .calc-btn {padding: 8px 13px 12px 20px; font: 14px "Raleway", sans-serif; flex: 0 0 290px; -ms-flex: 0 0 290px; -webkit-flex: 0 0 290px;}
    .calc-btn-text {margin: 3px 0 0 0;}
    .man-btn {padding: 6px 10px 11px 19px; flex: 0 0 260px; -ms-flex: 0 0 260px; -webkit-flex: 0 0 260px; font: 14px "Raleway", sans-serif;}
    .man-btn-text {margin: 6px 0 0 0;}
    .header__top {height: 61px; padding: 11px 0 0 0;}
    .header__top-str {height: 50px;}
    .logo {width: 220px; height: 36px; margin: 0; padding: 0 0 0 46px; background-size: 36px 36px;}
    .logo p {font-size: 10px; line-height: 12px; margin: 0;}
    .location {display: none;}
    .phone {display: none;}
    .header__top-str .red-btn {display: none;}
    .vk {display: none;}
    .menu {margin: 0 0 0 auto; display: block;}
    .header__ {padding: 305px 0 80px 0; background: url("../img/header-bg-mobile.png") no-repeat center top -74px;}
    .header__ h1 {width: 100%;}
    .instr {width: 100%; height: auto; margin: 0 0 40px 0; padding: 0 0 0 29px; background: url("../img/instruments-40x40.svg") no-repeat left top;
        font-size: 16px; line-height: 19px; background-size: 18px 18px;}
    .calculator-block {width: 100%; height: 60px;}
    .calculator-block .calc-btn {margin: 0;}
    .calc-arrow {display: none;}
    .calc-round {display: none;}
    .description-wrap {width: 290px; margin: 60px auto 0 auto; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .description-item:first-child {width: 100%; margin: 0 0 30px 0;}
    .description-item:nth-child(2) {width: 100%; margin: 0 0 30px 0;}
    .description-item:last-child {width: 100%;}
    .services__ {padding-bottom: 92px;}
    .services__wrap {width: 290px; margin: 0 auto; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .service-item {margin-bottom: 60px;}
    .service-item:last-child {margin-bottom: 0;}
    .services__ .man-btn {width: 260px;}
    .stage__ {background: url("../img/gradient.png") no-repeat center top;}
    .stage__wrap {width: 180px; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important; margin: 0 auto;}
    .stage__item {margin-bottom: 70px;}
    .stage__ .calc-btn {margin: 0 auto; width: 100%;}
    .callback__ img {display: none;}
    .callback__wrap {-webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .callback__text {width: 100%; margin-bottom: 60px;}
    .callback__location {height: auto; margin: 0 0 31px 0;}
    .callback_smeta {margin: 0;}
    .callback__form {width: 290px; padding: 42px 15px 42px 15px; margin: 0 auto;}
    .callback__form::after {width: 270px; margin-left: -135px;}
    .map__ {height: 1201px;}
    .contacts__ {top: 426px; margin: 0 0 0 -145px; padding: 46px 20px 61px 20px; max-width: 290px;}
    .contacts__logo {width: 100%; height: auto; margin: 0 0 24px 0; padding: 7px 0 0 62px;}
    .contacts__wrap {-webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .contacts__wrap-first {width: 100%; flex: 0 0 100%; -ms-flex: 0 0 100%; -webkit-flex: 0 0 100%; border-bottom: 1px dashed #747474; border-right: none;
        padding-right: 0; padding-bottom: 31px; margin-right: 0; margin-bottom: 40px;}
    .contacts__wrap-second {width: 100%; flex: 0 0 100%; -ms-flex: 0 0 100%; -webkit-flex: 0 0 100%; margin: 0 auto;}
    .contacts__wrap h2 {margin: 0 0 22px 0; font-size: 32px; line-height: 38px;}
    .footer__ {padding: 33px 0 10px 0;}
    .footer__top {padding-bottom: 25px; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important;}
    .footer__logo {width: 100%; flex: 0 0 100%; -ms-flex: 0 0 100%; -webkit-flex: 0 0 100%; height: auto; margin: 0; padding: 0 0 0 60px;
        background: url("../img/logo-60x60.svg") no-repeat left top; background-size: 48px 48px;}
    .footer__logo p {margin: -2px 0 0 0;}
    .terms {margin: 24px auto 34px auto;}
    .footer__top .red-btn {margin: 0 25px 0 32px;}
    .footer__top .vk {display: block;}
    .modalForm {width: 290px; padding: 42px 10px 42px 10px; margin-left: -145px;}
    .modalForm::after {width: 270px; margin-left: -135px;}
    .modalSend {width: 290px; padding: 192px 10px 88px 10px; margin-left: -145px;}
    .errorContent {width: 100%; height: auto; position: relative; left: auto; top: auto; margin: 70px auto 0 auto; -webkit-flex-wrap: wrap!important; flex-wrap: wrap!important; padding-bottom: 50px;}
    .errorContent img {width: 100%; margin: 0 0 59px 0;}
    .errorText {width: 100%; text-align: center;}
    .errorText h1 {font-size: 22px!important; line-height: 26px!important;}
    .errorText .red-btn {margin: 0 auto;}
}
/* mobile */