.button {
    width: 100%;
    display: inline-block;
    background: var(--red-color);
    height: 60px;
    font-family: "PT Sans Narrow";
    font-size: 18px;
    line-height: 40px;
    border: none;
    text-align: center;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--white-color);
    cursor: pointer
}

.button-link {
    text-decoration: none;
    vertical-align: middle;
    line-height: 56px
}

.button-wrap {
    display: block;
    min-width: 218px
}

.button:hover {
    box-shadow: 0 7px 20px #e8363a
}

.button-disabled {
    box-shadow: none
}

.header-wrap {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    width: 100%;
    padding-top: 40px;
    align-items: center;
}

@media (max-width: 767px) {
    .header-wrap {
        padding-top: 20px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-wrap {
        padding-top: 30px
    }
}

@media (min-width: 1024px) {
    .header-wrap {
        flex-direction: row
    }
}

.header-wrap-down {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%
}

@media (max-width: 767px) {
    .header-wrap-down {
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
        width: 100%;
        height: 100%
    }
}

.header-wrap-mobile {
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    background: #000;
    z-index: 1
}

.header-img {
    max-width: 210px
}

@media (max-width: 767px) {
    .header-img {
        margin: 0 0 0 var(--mobile);
        max-width: 170px
    }
}

@media (max-width: 350px) {
    .header-img {
        margin: 0 0 0 var(--iphone);
        max-width: 160px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-img {
        margin: 0 0 0 var(--planshet);
        max-width: 170px
    }
}

.header-img-mobile {
    margin: 20px var(--mobile);
    max-width: 170px
}

@media (max-width: 350px) {
    .header-img-mobile {
        margin: 20px var(--iphone);
        max-width: 160px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-img-mobile {
        margin: 30px var(--planshet)
    }
}

.header-img-down {
    max-width: 210px
}

@media (max-width: 767px) {
    .header-img-down {
        max-width: 200px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-img-down {
        margin-left: var(--planshet);
        max-width: 200px
    }
}

.header-phones {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-left: 20px
}

@media (max-width: 767px) {
    .header-phones {
        display: none
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-phones {
        flex-direction: row;
        margin-left: 180px
    }
}

.header-phones-mobile {
    width: 100%;
    display: flex;
    justify-content: space-evenly
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-phones-mobile {
        width: 55%;
        margin: 0 auto
    }
}

.header-phones-down {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
    width: auto
}

@media (max-width: 767px) {
    .header-phones-down {
        flex-direction: row;
        align-items: center;
        justify-content: space-evenly;
        width: 100%
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-phones-down {
        margin-right: var(--planshet)
    }
}

.header-phone {
    color: var(--white-color);
    font-family: Oswald;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: .04em;
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-phone {
        margin-right: 20px
    }
}

.header-phone-down {
    color: var(--white-color);
    font-family: Oswald;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: .04em;
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none
}

.header-list {
    display: flex;
    margin-left: 50px
}

@media (max-width: 1023px) {
    .header-list {
        display: none
    }
}

.header-list-mobile {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 40px
}

@media (max-width: 350px) {
    .header-list-mobile {
        margin-top: 10px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-list-mobile {
        margin-top: 89px
    }
}

.header-list-item {
    margin-right: 20px;
    color: var(--white-color);
    font-family: "Oswald";
    font-weight: 600;
    line-height: 64px;
    font-size: 17px;
    text-decoration: none;
    letter-spacing: .06em;
    text-transform: uppercase
}

.header-list-item:hover {
    color: var(--red-color);
    text-decoration: underline
}

.header-list-item-mobile {
    font-family: Oswald;
    font-style: normal;
    font-weight: 600;
    font-size: 24px;
    line-height: 58px;
    text-decoration: none;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--white-color)
}

.header-list-item-mobile:hover {
    color: var(--red-color);
    text-decoration: underline
}

@media (max-width: 350px) {
    .header-list-item-mobile {
        line-height: 50px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .header-list-item-mobile {
        margin-bottom: 20px
    }
}

a:active {
    color: var(--red-color);
    text-decoration: underline
}

.visuallyHidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}

.hamburger {
    margin: 0 auto;
    width: 30px;
    height: 21px;
    position: relative
}

.hamburger .bar {
    padding: 0;
    width: 30px;
    height: 3px;
    background-color: var(--white-color);
    display: block;
    border-radius: 0;
    transition: all .4s ease-in-out;
    position: absolute
}

.bar1 {
    top: 0
}

.bar2, .bar3 {
    top: 9px
}

.bar3 {
    right: 0
}

.bar4 {
    bottom: 0
}

.hamburger4 .bar4 {
    top: 9px
}

.hamburger4 .bar5 {
    bottom: 0
}

.hamburger4 .bar {
    transition: all .4s ease-in-out, transform .4s ease-in-out .4s
}

.hamburger4 .bar2 {
    transform: rotate(90deg)
}

.hamburger4 .bar2, .hamburger4 .bar3 {
    width: 1px;
    left: 13.5px
}

.checkbox4:checked + label > .hamburger4 > .bar1 {
    top: 13.5px;
    background-color: transparent
}

.checkbox4:checked + label > .hamburger4 > .bar2 {
    left: 0;
    width: 24px;
    transform: rotate(45deg)
}

.checkbox4:checked + label > .hamburger4 > .bar3 {
    left: 0;
    width: 24px;
    transform: rotate(-45deg)
}

.checkbox4:checked + label > .hamburger4 > .bar4 {
    background-color: transparent
}

.checkbox4:checked + label > .hamburger4 > .bar5 {
    bottom: 13.5px;
    background-color: transparent
}

.navigation {
    margin: 0 auto;
    width: 30px;
    height: 21px;
    position: absolute;
    top: 35px;
    right: var(--mobile)
}

@media (max-width: 350px) {
    .navigation {
        right: var(--iphone)
    }
}

@media (min-width: 1024px) {
    .navigation {
        display: none
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .navigation {
        right: var(--planshet);
        top: 44px
    }
}

.navigation-but {
    margin: 43px var(--mobile) 35px
}

@media (max-width: 350px) {
    .navigation-but {
        margin: 10px var(--iphone) 35px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .navigation-but {
        margin: 127px var(--mobile) 35px
    }
}

.navigation-nonVisible {
    display: none
}

.navigation-mobileButton {
    width: 30px;
    height: 25px;
    display: inline-block;
    margin: 23px 15px 0 0
}

@media (min-width: 320px) {
    .navigation-mobileButton {
        margin: 14px var(--iphone) 0 0
    }
}

@media (min-width: 350px) {
    .navigation-mobileButton {
        margin: 14px var(--mobile) 0 0
    }
}

@media (min-width: 768px) {
    .navigation-mobileButton {
        margin: 14px var(--planshet) 0 0
    }
}

@media (min-width: 1024px) {
    .navigation-mobileButton {
        display: none
    }
}

.modalW {
    left: 0
}

.modalW, .modalW-second {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    background: rgba(0, 0, 0, .8)
}

.modalW-second {
    right: 0
}

.modalW-third {
    position: absolute;
    top: -1%;
    left: 1%
}

.generalModal {
    width: 100%
}

.generalModal, .generalModal__fromModal {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.generalModal__fromModal {
    flex-direction: column
}

.generalModal__container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%
}

.generalModal__container .sub-title {
    margin-top: 35px
}

.generalModal__container .text {
    text-align: left;
    height: 80%;
    overflow: hidden
}

@media (min-width: 768px) and (max-width: 1023px) {
    .generalModal__container .text {
        width: 500px
    }
}

.generalModal__close {
    width: 40px;
    height: 40px;
    position: relative;
    border: none;
    cursor: pointer;
    background: transparent;
    top: 10px;
    right: 10px
}

.generalModal__close-wrap {
    width: 450px;
    height: 600px;
    text-align: right;
    background: var(--white-color)
}

@media (max-width: 374px) {
    .generalModal__close-wrap {
        width: 360px
    }
}

@media (min-width: 375px) and (max-width: 399px) {
    .generalModal__close-wrap {
        width: 375px
    }
}

@media (min-width: 400px) and (max-width: 450px) {
    .generalModal__close-wrap {
        width: 400px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .generalModal__close-wrap {
        width: 600px
    }
}

.generalModal__close-wrap-success {
    top: 40px;
    left: 46%;
    position: relative
}

.generalModal__close-wrap-img {
    position: absolute;
    top: 0;
    left: 320px
}

@media (min-width: 768px) {
    .generalModal__close-wrap-img {
        top: -10px;
        left: 100%
    }
}

.generalModal__close:after, .generalModal__close:before {
    content: "";
    position: absolute;
    width: 65%;
    height: 2px;
    background-color: var(--red-color);
    top: 50%;
    left: 50%
}

.generalModal__close:before {
    transform: translate(-50%, -50%) rotate(45deg)
}

.generalModal__close:after {
    transform: translate(-50%, -50%) rotate(-45deg)
}

@media screen and (max-width: 340px) {
    .generalModal__br {
        display: none
    }
}

.generalModal__title {
    font-size: 27px;
    margin: 90px 0 60px;
    font-weight: 700;
    color: #fff;
    text-align: center
}

.generalModal__content {
    background-color: var(--bg-very-light-blue);
    padding: 20px;
    margin-bottom: 20px;
    letter-spacing: .1px;
    font-size: 14px
}

@media screen and (max-width: 500px) {
    .generalModal__content {
        overflow: auto;
        max-height: 420px
    }
}

@media screen and (max-width: 380px) {
    .generalModal__content {
        max-height: 340px
    }
}

@media screen and (max-width: 350px) {
    .generalModal__content {
        padding: 10px;
        margin-bottom: 14px;
        max-height: 290px
    }
}

@media screen and (min-width: 768px) {
    .generalModal__content {
        padding: 25px
    }
}

.generalModal__btn {
    width: 162px;
    height: 42px;
    align-items: center;
    color: #fff;
    background-color: var(--bg-btn-main);
    border-radius: 27px
}

.generalModal__btn, .generalModal__btn-wrap {
    display: flex;
    justify-content: center
}

.generalModal__btn:hover {
    background-color: var(--bg-btn-main-hover)
}

.success {
    padding: 15px;
    background: #fff;
    min-height: 455px
}

@media (min-width: 768px) {
    .success {
        padding: 40px
    }
}

@media (min-width: 1024px) {
    .success {
        padding: 55px 55px 40px;
        max-width: 400px
    }
}

.success-title {
    font-size: 50px;
    line-height: 40px;
    text-align: center
}

@media (min-width: 768px) {
    .success-title {
        font-weight: 700;
        font-size: 42px;
        line-height: 45px;
        margin-bottom: 68px
    }
}

.success-first {
    padding-top: 25px;
    text-align: center
}

.success-second {
    margin: 0
}

.success-second, .success-second-mess {
    font-style: italic;
    font-weight: 600;
    padding-top: 20px
}

.success-second-mess {
    font-size: 25px;
    padding-bottom: 30px;
    text-align: center
}

.success-third {
    font-style: italic;
    margin: 0
}

.success-fourth {
    padding-bottom: 100px;
    text-align: center
}

.image, .success-btn {
    width: 100%
}

.image {
    height: 40px
}

.image-img {
    max-width: 70px
}

@media (min-width: 768px) {
    .image-img {
        max-width: 100%;
        width: 40px;
        height: 40px
    }
}

.image-figure {
    width: 100%;
    margin: 0 auto;
    text-align: center
}

.form {
    right: 0;
    position: absolute;
    top: 126px;
    background: #fff;
    display: flex;
    flex-direction: column;
    padding: 35px;
    max-width: 388px
}

@media (max-width: 767px) {
    .form {
        top: 510px;
        display: block;
        padding: 35px var(--mobile) 35px
    }
}

@media (max-width: 350px) {
    .form {
        top: 576px;
        padding: 35px var(--iphone) 35px;
        max-width: 310px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .form {
        top: 433px;
        left: calc(50% - 250px);
        max-width: 450px;
        padding: 45px;
        background: #f3f3f3
    }
}

.form-modal {
    right: 50%;
    position: absolute;
    top: 50%;
    transform: translate(50%, -50%);
    background: var(--white-color);
    display: flex;
    flex-direction: column;
    padding: 40px;
    max-width: 388px
}

@media (min-width: 768px) and (max-width: 1023px) {
    .form-modal {
        max-width: 450px
    }
}

.form-header {
    font-weight: 700;
    font-size: 24px;
    line-height: 40px;
    text-align: left;
    text-transform: uppercase;
    margin-bottom: 5px
}

.form-label {
    margin-bottom: 15px;
    display: flex;
    flex-direction: column
}

.form-named {
    font-size: 16px;
    line-height: 25px
}

.form-input {
    height: 48px;
    width: 318px;
    background: #f8f8f8;
    border: 1px solid #d4d4d4;
    box-sizing: border-box;
    padding-left: 15px
}

@media (max-width: 767px) {
    .form-input {
        width: 344px
    }
}

@media (max-width: 350px) {
    .form-input {
        width: 310px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .form-input {
        width: 450px
    }
}

.form-area {
    width: 318px;
    height: 90px;
    margin-bottom: 20px;
    background: #f8f8f8;
    border: 1px solid #d4d4d4;
    box-sizing: border-box;
    padding: 15px
}

@media (max-width: 767px) {
    .form-area {
        width: 344px
    }
}

@media (max-width: 350px) {
    .form-area {
        width: 310px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .form-area {
        width: 450px
    }
}

.form-button {
    width: 318px
}

@media (max-width: 767px) {
    .form-button {
        width: 344px
    }
}

@media (max-width: 350px) {
    .form-button {
        width: 310px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .form-button {
        width: 450px
    }
}

.first-position {
    position: relative
}

.first-wrap {
    height: 650px;
    background-color: #7fffd4;
    background: linear-gradient(90deg, #201d1d 2%, rgba(32, 29, 29, 0) 33%), linear-gradient(180deg, #201d1d 4%, rgba(32, 29, 29, 0) 70%), url(/static/media/gears.aefb4723.png);
    background-size: cover
}

@media (max-width: 767px) {
    .first-wrap {
        background-position: 50%, 50%, -618px -16px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .first-wrap {
        height: 650px;
        background: linear-gradient(90deg, #201d1d .1%, rgba(32, 29, 29, 0) 3%), linear-gradient(180deg, #201d1d 4%, rgba(32, 29, 29, 0) 70%), url(/static/media/gears.aefb4723.png);
        background-size: cover;
        background-position: 50%, 50%, -325px 0
    }
}

.first-headers {
    width: 60%;
    margin-top: 90px
}

@media (max-width: 767px) {
    .first-headers {
        width: 100%;
        margin-top: 40px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .first-headers {
        width: 100%;
        margin-top: 50px;
        text-align: center
    }
}

.first-header {
    color: var(--white-color);
    font-family: PT Sans Narrow;
    font-style: normal;
    font-weight: 700;
    font-size: 38px;
    line-height: 80px;
    letter-spacing: .04em;
    text-transform: uppercase
}

@media (max-width: 767px) {
    .first-header {
        font-size: 28px;
        line-height: 44px;
        font-weight: 700;
        text-align: center;
        padding: 0 var(--mobile)
    }
}

@media (max-width: 350px) {
    .first-header {
        padding: 0 var(--iphone)
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .first-header {
        font-size: 56px;
        line-height: 69px
    }
}

.first-span {
    display: inline-block;
    width: 100%;
    font-family: PT Sans Narrow;
    font-style: normal;
    font-weight: 400;
    font-size: 58px;
    line-height: 80px;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 32px;
    color: var(--grey-color)
}

@media (max-width: 767px) {
    .first-span {
        font-size: 38px;
        line-height: 40px;
        margin-bottom: 17px;
        letter-spacing: .7px;
        display: inline-block;
        margin-top: 20px
    }
}

.first-span-second {
    margin-top: 32px;
    display: inline-block
}

@media (max-width: 767px) {
    .first-span-second {
        text-transform: uppercase;
        letter-spacing: .04em;
        font-size: 61px;
        margin-top: 32px;
        display: inline-block
    }
}

.first-link {
    display: none
}

@media (max-width: 767px) {
    .first-link {
        color: var(--white-color);
        text-decoration: none;
        display: inline-block;
        width: 100%
    }
}

.first-city {
    display: none
}

@media (max-width: 767px) {
    .first-city {
        display: inline-block
    }
}

.offer {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-content: stretch;
    margin-top: var(--header-margin)
}

@media (max-width: 767px) {
    .offer {
        margin-top: 0
    }
}

@media (max-width: 767px) {
    .offer-top {
        padding-top: 30px
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .offer-top {
        padding-top: 80px
    }
}

.offer-wrap {
    position: relative;
    margin-right: 15px;
    margin-bottom: 15px
}

.offer-wrap:nth-child(2n) {
    margin-right: 0
}

@media (max-width: 767px) {
    .offer-wrap {
        margin-bottom: 10px;
        width: 100%
    }
}

.offer-wrap:nth-last-of-type(3) div ul li {
    margin-bottom: 20px
}

.offer-img {
    max-width: 612px;
    height: 100%
}

.offer-header {
    color: var(--white-color);
    position: absolute;
    left: 40px;
    font-style: normal;
    font-weight: 400;
    font-size: 34px;
    line-height: 40px;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin: 40px 0 0
}

@media (max-width: 767px) {
    .offer-header {
        top: 0;
        left: var(--mobile)
    }
}

@media (max-width: 350px) {
    .offer-header {
        top: 0;
        left: var(--iphone)
    }
}

.offer-h2 {
    font-size: 30px;
    margin: 20px
}

.offer-button {
    position: absolute;
    left: 40px;
    bottom: 40px;
    display: flex;
    align-items: center
}

@media (max-width: 767px) {
    .offer-button {
        bottom: 25px;
        left: var(--mobile)
    }
}

@media (max-width: 350px) {
    .offer-button {
        bottom: 25px;
        left: var(--iphone)
    }
}

.offer-button-span {
    color: var(--white-color);
    margin-left: 30px;
    font-size: 20px;
    line-height: 40px;
    text-transform: uppercase
}

.offer-list {
    position: absolute;
    left: 20px;
    top: 102px;
    list-style-type: square;
    width: 75%;
    margin: 0
}

@media (max-width: 767px) {
    .offer-list {
        top: 98px;
        padding-left: calc(50vw - 177px);
        margin: 0
    }
}

.offer-list-item {
    color: var(--white-color);
    font-size: 16px;
    line-height: 26px;
    font-weight: 700
}

@media (max-width: 767px) {
    .offer-list-item {
        line-height: 25px
    }
}

.offer-list-li {
    color: var(--red-color);
    margin-bottom: 5px
}

.offer-visiblity {
    width: 612px;
    height: 366px;
    background-color: var(--grey-color)
}

@media (max-width: 1023px) {
    .offer-visiblity {
        width: 100vw;
        height: 343px
    }
}

.contacts {
    background: #f3f3f3
}

.contacts-wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 90px 0
}

@media (max-width: 767px) {
    .contacts-wrap {
        flex-direction: column;
        padding: 0 var(--mobile) 20px
    }
}

@media (max-width: 350px) {
    .contacts-wrap {
        flex-direction: column;
        padding: 0 var(--iphone) 20px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .contacts-wrap {
        flex-direction: column;
        padding: 0 0 20px
    }
}

.contacts-map {
    width: 684px;
    height: 320px;
    border: 1px solid var(--grey-color)
}

@media (max-width: 767px) {
    .contacts-map {
        width: 344px
    }
}

@media (max-width: 350px) {
    .contacts-map {
        width: 100%
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .contacts-map {
        width: 728px;
        margin: 0 var(--planshet)
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .contacts-group {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 0 var(--planshet)
    }
}

.contacts-tel {
    font-size: 30px;
    line-height: 40px;
    letter-spacing: .04em;
    color: var(--grey-color);
    display: flex;
    align-items: center;
    margin: 20px 0;
    text-decoration: none
}

@media (max-width: 767px) {
    .contacts-tel {
        font-size: 24px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .contacts-tel {
        font-size: 20px;
        margin: 0 0 34px
    }
}

@media (max-width: 767px) {
    .contacts-adress {
        padding-bottom: 46px;
        padding-top: 40px
    }
}

.contacts-img {
    margin-right: 20px
}

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

@media (max-width: 767px) {
    .contacts-header {
        margin-left: 0
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .contacts-header {
        background: var(--white-color);
        margin-bottom: 30px;
        padding-bottom: 30px
    }
}

.contacts-point {
    font-size: 23px;
    letter-spacing: .1px
}

@media (max-width: 767px) {
    .contacts-point {
        font-size: 19px
    }
}

@media (max-width: 767px) {
    .contacts-hidden {
        display: none
    }
}

.footer {
    height: 160px;
    background: #111
}

@media (max-width: 767px) {
    .footer {
        height: 230px
    }
}

.footer-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%
}

.footer-navigation {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%
}

.footer-nav {
    display: flex;
    flex-direction: row;
    align-self: end;
    list-style: none;
    margin: 0
}

.footer-nav-item {
    color: #f5f5f5
}

.footer-nav-item:not(:last-child) {
    margin-right: 20px
}

.footer-img {
    max-width: 250px
}

.footer-tel {
    display: flex;
    flex-direction: column;
    align-self: end
}

.footer-tel-item {
    color: #f5f5f5
}

.whywe {
    padding: 100px 0
}

@media (max-width: 767px) {
    .whywe {
        padding: 255px 0 0
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe {
        padding: 365px 0 0
    }
}

.whywe-list {
    display: flex;
    flex-direction: row;
    margin: var(--header-margin) 0 0 0
}

@media (max-width: 767px) {
    .whywe-list {
        flex-direction: column;
        margin: 0 0 0 var(--mobile)
    }
}

@media (max-width: 350px) {
    .whywe-list {
        flex-direction: column;
        margin: 0 0 0 var(--iphone)
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe-list {
        flex-wrap: wrap;
        padding: 0 calc(50% - 364px)
    }
}

@media (min-width: 1024px) and (max-width: 1250px) {
    .whywe-list {
        flex-wrap: wrap
    }
}

.whywe-card {
    background: #f3f3f3;
    padding: 69px 84px 0;
    margin-right: 15px;
    margin-bottom: 0;
    width: 298px
}

.whywe-card:nth-child(4n) {
    margin-right: 0;
    padding: 69px 49px 0
}

@media (max-width: 767px) {
    .whywe-card:nth-child(4n) {
        padding: 60px 30px 10px
    }
}

@media (max-width: 350px) {
    .whywe-card:nth-child(4n) {
        padding: 60px 20px 10px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe-card:nth-child(4n) {
        padding: 69px 57px 0
    }
}

@media (min-width: 1024px) and (max-width: 1250px) {
    .whywe-card:nth-child(4n) {
        padding: 69px 84px 0
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe-card:nth-child(2n) {
        margin-right: 0
    }
}

.whywe-card:first-of-type {
    padding: 69px 0 0;
    min-width: 298px
}

@media (max-width: 767px) {
    .whywe-card:first-of-type {
        padding: 60px 30px 10px;
        min-width: 270px
    }
}

@media (max-width: 350px) {
    .whywe-card:first-of-type {
        padding: 60px 20px 10px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe-card:first-of-type {
        min-width: 239px;
        padding: 69px 57px 0
    }
}

@media (min-width: 1024px) and (max-width: 1250px) {
    .whywe-card:first-of-type {
        padding: 69px 84px 0
    }
}

@media (max-width: 767px) {
    .whywe-card {
        padding: 60px 30px 10px;
        margin-right: 0;
        margin-bottom: 15px;
        width: 275px
    }
}

@media (max-width: 350px) {
    .whywe-card {
        padding: 60px 20px 10px;
        width: 270px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .whywe-card {
        margin-right: 15px;
        margin-bottom: 15px;
        width: 239px;
        padding: 69px 57px 0
    }
}

@media (min-width: 1024px) and (max-width: 1250px) {
    .whywe-card {
        margin-bottom: 15px
    }
}

.whywe-figure {
    max-width: 87px;
    margin: 0 auto
}

.whywe-img {
    width: 100%
}

.whywe-phrase {
    font-size: 30px;
    line-height: 40px;
    text-align: center;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--grey-color);
    margin: 40px auto
}

.whywe-visiblity {
    max-width: 87px;
    margin: 0 auto;
    background-color: var(--grey-color)
}

.about {
    display: flex;
    flex-direction: row;
    margin-top: 100px;
    justify-content: space-between
}

@media (max-width: 1023px) {
    .about {
        flex-direction: column;
        background-color: #f3f3f3
    }
}

@media (max-width: 767px) {
    .about {
        margin-top: 0
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .about {
        position: relative;
        padding-top: 250px;
        margin-top: 30px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .about-header {
        text-align: left;
        margin-left: var(--planshet)
    }
}

.about-text {
    width: 33%;
    margin-top: var(--header-margin)
}

@media (max-width: 767px) {
    .about-text {
        width: 100%
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .about-text {
        width: 54%;
        position: absolute;
        top: 34px
    }
}

.about-p {
    color: var(--grey-color);
    font-size: 18px;
    line-height: 30px
}

@media (max-width: 767px) {
    .about-p {
        padding-left: var(--mobile)
    }
}

@media (max-width: 350px) {
    .about-p {
        padding-left: var(--iphone)
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .about-p {
        padding-left: var(--planshet)
    }
}

.carousel {
    padding: 90px 0 150px
}

@media (max-width: 767px) {
    .carousel {
        padding: 50px 0 150px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .carousel {
        padding: 64px 0 150px
    }
}

.carousel-photo {
    width: 400px;
    height: 400px;
    padding: 0 10px
}

@media (max-width: 767px) {
    .carousel-photo {
        width: 344px;
        height: 344px;
        padding: 0 var(--mobile)
    }
}

@media (max-width: 350px) {
    .carousel-photo {
        width: 310px;
        height: 310px;
        padding: 0 var(--iphone)
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .carousel-photo {
        width: 368px
    }
}

@media (min-width: 1024px) and (max-width: 1249px) {
    .carousel-photo {
        width: 490px
    }
}

.carousel-header {
    margin-bottom: 40px
}

.slick-prev {
    left: 2px;
    height: 80px;
    width: 80px;
    background-color: var(--red-color);
    z-index: 2
}

.slick-prev:before {
    content: url(/static/media/arrowLeft.b97f5a74.svg);
    opacity: 1;
    color: var(--white-color)
}

.slick-next {
    right: 0;
    width: 80px;
    height: 80px;
    background: var(--red-color)
}

.slick-next:before {
    content: url(/static/media/arrowRight.9aa215ed.svg);
    opacity: 1;
    color: var(--white-color)
}

.slick-list {
    margin: 0 -8px
}

@media (max-width: 1023px) {
    .slick-list {
        margin: 0
    }
}

.slick-dots li button:before {
    content: ""
}

.slick-dots {
    bottom: -27px;
    position: relative
}

@media (max-width: 767px) {
    .slick-dots {
        bottom: 0
    }
}

.slick-dots li button {
    display: block;
    width: 43px;
    height: 5px;
    padding: 3px;
    margin: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: #dfdfdf
}

@media (max-width: 767px) {
    .slick-dots li button {
        display: block;
        width: 15%;
        height: 6px;
        padding: 0 10px
    }
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 43px;
    height: 5px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer
}

@media (max-width: 767px) {
    .slick-dots li {
        width: 4%;
        height: 5px;
        padding: 0
    }
}

.slick-dots li.slick-active > button {
    background: var(--red-color)
}

.slick-dots li.slick-active > button:hover {
    box-shadow: 0 7px 20px #e8363a
}

.slick-next:focus, .slick-next:hover, .slick-prev:focus, .slick-prev:hover {
    color: var(--white-color);
    outline: none;
    background: var(--red-color);
    box-shadow: 0 7px 20px #e8363a
}

.preloader {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--grey-color);
    z-index: 1001
}

.anim-preloader {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.load {
    max-width: 200px;
    width: 100%;
    height: 50px;
    padding: 10px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ccc
}

@media (max-width: 768px) {
    .load {
        width: 100%
    }
}

@media (max-width: 480px) {
    .load {
        width: 100%
    }
}

@keyframes rotation {
    to {
        transform: rotate(1turn)
    }
}

.loader-5 {
    width: 48px;
    height: 48px;
    border: 3px solid #fff;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    animation: rotation 2s linear infinite
}

.loader-5:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border-color: currentcolor;
    border-left: 3px solid transparent;
    border-bottom: 3px solid var(--red-color);
    border-right: 3px solid transparent;
    border-top: 3px solid var(--red-color)
}

@font-face {
    font-family: "PT Sans Narrow";
    src: url(/static/media/PTSans-Narrow.807f661b.eot);
    src: local("PT Sans Narrow"), local("PTSans-Narrow"), url(/static/media/PTSans-Narrow.807f661b.eot) format("embedded-opentype"), url(/static/media/PTSans-Narrow.f9bf2a11.woff) format("woff"), url(/static/media/PTSans-Narrow.ab6fef97.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: "PT Sans Narrow";
    src: url(/static/media/PTSans-NarrowBold.6581266d.eot);
    src: local("PT Sans Narrow Bold"), local("PTSans-NarrowBold"), url(/static/media/PTSans-NarrowBold.6581266d.eot) format("embedded-opentype"), url(/static/media/PTSans-NarrowBold.d6938e02.woff) format("woff"), url(/static/media/PTSans-NarrowBold.520afcf5.ttf) format("truetype");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-ExtraLight.eee0d1ec.eot);
    src: local("Oswald ExtraLight"), local("Oswald-ExtraLight"), url(/static/media/Oswald-ExtraLight.eee0d1ec.eot) format("embedded-opentype"), url(/static/media/Oswald-ExtraLight.c2a04bae.woff2) format("woff2"), url(/static/media/Oswald-ExtraLight.cf9fdb36.woff) format("woff"), url(/static/media/Oswald-ExtraLight.5caaf6ca.ttf) format("truetype");
    font-weight: 200;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-Light.fb02f52d.eot);
    src: local("Oswald Light"), local("Oswald-Light"), url(/static/media/Oswald-Light.fb02f52d.eot) format("embedded-opentype"), url(/static/media/Oswald-Light.f6a51ea3.woff2) format("woff2"), url(/static/media/Oswald-Light.74386c69.woff) format("woff"), url(/static/media/Oswald-Light.3ee3d5c1.ttf) format("truetype");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-Medium.0922d1d6.eot);
    src: local("Oswald Medium"), local("Oswald-Medium"), url(/static/media/Oswald-Medium.0922d1d6.eot) format("embedded-opentype"), url(/static/media/Oswald-Medium.287425c5.woff2) format("woff2"), url(/static/media/Oswald-Medium.166fc0cd.woff) format("woff"), url(/static/media/Oswald-Medium.412de8cc.ttf) format("truetype");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-Bold.28ca6854.eot);
    src: local("Oswald Bold"), local("Oswald-Bold"), url(/static/media/Oswald-Bold.28ca6854.eot) format("embedded-opentype"), url(/static/media/Oswald-Bold.3e65c74a.woff2) format("woff2"), url(/static/media/Oswald-Bold.6f8a7958.woff) format("woff"), url(/static/media/Oswald-Bold.9a9b3c1f.ttf) format("truetype");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-Regular.238ec159.eot);
    src: local("Oswald Regular"), local("Oswald-Regular"), url(/static/media/Oswald-Regular.238ec159.eot) format("embedded-opentype"), url(/static/media/Oswald-Regular.df70d361.woff2) format("woff2"), url(/static/media/Oswald-Regular.7f8da1cd.woff) format("woff"), url(/static/media/Oswald-Regular.e1093f9a.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: "Oswald";
    src: url(/static/media/Oswald-SemiBold.1dbcd5c0.eot);
    src: local("Oswald SemiBold"), local("Oswald-SemiBold"), url(/static/media/Oswald-SemiBold.1dbcd5c0.eot) format("embedded-opentype"), url(/static/media/Oswald-SemiBold.de699455.woff2) format("woff2"), url(/static/media/Oswald-SemiBold.136edd46.woff) format("woff"), url(/static/media/Oswald-SemiBold.8f9c0466.ttf) format("truetype");
    font-weight: 600;
    font-style: normal
}

:root {
    --main-color: #201d1d;
    --white-color: #fff;
    --red-color: #df2024;
    --grey-color: #969696;
    --header-margin: 33px;
    --mobile: calc(50vw - 172px);
    --planshet: calc(50vw - 364px);
    --iphone: calc(50vw - 155px)
}

body {
    font-family: "PT Sans Narrow", "Oswald";
    padding: 0;
    display: block
}

body, h2 {
    margin: 0
}

h2 {
    text-align: left;
    font-family: PT Sans Narrow;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 64px;
    letter-spacing: .04em;
    text-transform: uppercase
}

@media (max-width: 767px) {
    h2 {
        margin: 0 0 0 calc(50vw - 172px);
        margin: 0 0 0 var(--mobile);
        font-size: 34px
    }
}

@media (max-width: 350px) {
    h2 {
        margin: 0 0 0 calc(50vw - 155px);
        margin: 0 0 0 var(--iphone);
        font-size: 34px
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    h2 {
        text-align: center
    }
}

.container {
    max-width: 1240px;
    margin: 0 auto
}

@media (max-width: 1023px) {
    .container {
        max-width: 100%;
        margin: 0
    }
}

@media (min-width: 1024px) and (max-width: 1250px) {
    .container {
        max-width: 1000px;
        margin: 0 auto
    }
}

.notFound {
    position: fixed;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, .8);
    z-index: 10;
    height: 100vh;
    width: 100vw;
    align-items: center
}

.notFound, .notFound-wrap {
    display: flex;
    justify-content: center
}

.notFound-wrap {
    height: 450px;
    width: 400px;
    background: var(--white-color);
    padding: 30px;
    flex-direction: column
}

.notFound-text {
    font-size: 25px;
    font-weight: 700
}

.notFound-figure, .notFound-text {
    text-align: center
}

.notFound-img {
    width: 50px
}

.notFound-button {
    width: 100%;
    margin-top: 30px
}

/*# sourceMappingURL=main.2654efc9.chunk.css.map */

@media screen and (min-width: 601px){
    .mobilehide,
    .quick-call{
        display: none;
    }
}


@media screen and (max-width: 600px){
    .topheader{
        position: fixed;
        width: 100%;
        top: 0px;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0px 20px;
        background: #e8363a;
        z-index: 50;
        box-sizing: border-box;
    }
    .topheader *{
        box-sizing: border-box
    }
    .topheader a.phone{
        font-family: Helvetica, Arial;
        color: #fff;
        text-decoration: none;
    }
    .topheader a.viber span{
        background: #6812BB;
        display: block;
        padding: 5px;
        border-radius: 15px;
    }
    .topheader a.viber svg{
        display: block;
    }
    #root{
        margin-top: 50px;
    }
    .first-header a.first-link{
        background: #FFED00;
        color: #171412;
        border-radius: 5px;
        max-width: 220px;
        margin-top: 10px;
    }
    .header-wrap-mobile{
        top: 50px!important;
    }
    .quick-call
    {
        position: fixed;
        bottom: 20px;
        z-index: 100;
        left: 20px;
        background: #e8363a;
        width: 80px;
        height: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 100px;
    }
    .quick-call svg
    {
        display: block;
        width: 30px;
        height: 30px;
    }
}