@charset "UTF-8";

.about-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.about-page__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .about-page__top {
        flex-direction: column
    }
}

.about-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 5rem;
    width: 100%;
    max-width: 880px
}

@media screen and (max-width:991.98px) {
    .about-page__top-main {
        max-width: 720px
    }
}

@media screen and (max-width:767.98px) {
    .about-page__top-main {
        min-height: auto;
        max-width: none
    }
}

.about-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:767.98px) {
    .about-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.about-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.about-page__top-button:hover {
    background: #5198ec
}

.about-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.about-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .about-page__top-button {
        width: 100%
    }
}

.about-page__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .about-page__top-animation {
        display: none
    }
}

.about-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1135px;
    height: 800px;
    transform: translateX(-50%);
    z-index: -1
}

.about-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.about-page__top-subtitle {
    font-weight: 400;
    margin-bottom: 1.25rem
}

.about-page__top-content {
    margin-bottom: 4rem
}

.about-page__about,
.about-page__block,
.about-page__peoples,
.about-page__vacancies {
    margin-bottom: 10rem
}

@media screen and (max-width:1199.98px) {

    .about-page__about,
    .about-page__block,
    .about-page__peoples,
    .about-page__vacancies {
        margin-bottom: 6rem
    }
}

.case-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.case-page__top {
    position: relative;
    display: flex
}

@media screen and (max-width:991.98px) {
    .case-page__top {
        flex-direction: column;
        margin-bottom: 7rem
    }
}

.case-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    padding: 2.25rem 0;
    width: 100%;
    max-width: 640px;
    min-height: calc(60vh - 145px)
}

@media screen and (max-width:991.98px) {
    .case-page__top-main {
        min-height: auto
    }
}

@media screen and (max-width:767.98px) {
    .case-page__top-main {
        max-width: none
    }
}

.case-page__top-site {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
    margin-right: auto
}

.case-page__top-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem
}

.case-page__top-animation {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    padding-right: 1.5rem;
    max-width: 640px
}

@media screen and (max-width:991.98px) {
    .case-page__top-animation {
        max-height: 320px;
        padding-right: 0;
        margin: 0
    }
}

.case-page__top-animation:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1120px;
    height: 850px;
    transform: translateX(-50%);
    z-index: -1
}

.case-page__top-animation img {
    display: block;
    max-width: 100%;
    max-height: 100%
}

.case-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.case-page__top-content {
    font-size: 1.25rem
}

.case-page__block {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 7rem
}

.case-page__block.m--bg-ellipse-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -865px;
    left: 50%;
    width: calc(100vw - 8px);
    height: 1560px;
    transform: translateX(-50%);
    opacity: 1;
    z-index: -1
}

.case-page__block-title {
    margin-bottom: 2.5rem;
    max-width: 570px
}

.case-page__block-content {
    font-size: 1.5rem;
    line-height: 2rem
}

.case-page__block-content.m--col-2 {
    columns: 2;
    column-gap: 7rem
}

.case-page__block-content.m--col-2 p {
    page-break-inside: avoid
}

@media screen and (max-width:991.98px) {
    .case-page__block-content.m--col-2 {
        columns: unset
    }
}

.case-page__block-description {
    margin-bottom: 1rem
}

.case-page__design {
    position: relative;
    margin-bottom: 7rem
}

.case-page__design.m--bg-ellipse-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -865px;
    left: 50%;
    width: calc(100vw - 8px);
    height: 1560px;
    transform: translateX(-50%);
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .case-page__design.m--bg-ellipse-1:before {
        background: 0 0
    }
}

.case-page__design.m--bg-spot-gradient-1:before {
    content: "";
    position: absolute;
    top: 0;
    margin-top: 0;
    left: 0;
    margin-left: 0;
    width: 680px;
    height: 920px;
    transform: translate(-35%, -40%);
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .case-page__design.m--bg-spot-gradient-1:before {
        background: 0 0
    }
}

.case-page__design.m--bg-spot-gradient-2:after {
    content: "";
    position: absolute;
    top: 0;
    margin-top: -700px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 1000px;
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .case-page__design.m--bg-spot-gradient-2:after {
        background: 0 0
    }
}

.case-page__results {
    position: relative;
    margin-bottom: 7rem
}

.case-page__other {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 7rem
}

.case-page__other:after {
    content: "";
    position: absolute;
    bottom: -600px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 1420px;
    opacity: .6;
    z-index: -3
}

@media screen and (max-width:767.98px) {
    .case-page__other:after {
        background: 0 0
    }
}

.case-page__other-title {
    margin-bottom: 2.5rem;
    max-width: 570px
}

.case-page__other-block {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem
}

@media screen and (max-width:767.98px) {
    .case-page__other-block {
        flex-direction: column;
        align-items: center
    }
}

.case-page__other-item {
    position: relative;
    display: flex;
    width: calc(33.3333333333% - 1.3333333333rem);
    min-width: 280px;
    border-radius: 20px
}

@media screen and (max-width:991.98px) {
    .case-page__other-item {
        width: calc(50% - 1rem)
    }
}

@media screen and (max-width:767.98px) {
    .case-page__other-item {
        width: 100%;
        max-width: 420px
    }
}

.case-page__other-item:before {
    content: "";
    display: block;
    padding-top: 50%
}

.case-page__other-item-picture {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, .05);
    border: none;
    border-radius: 20px;
    backdrop-filter: blur(21px);
    overflow: hidden
}

.case-page__other-item-picture:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 20px;
    border: 2px solid transparent;
    background-image: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.case-page__other-item-picture img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.clients-cat {
    position: relative;
    display: flex;
    flex-direction: column
}

.clients-cat__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .clients-cat__top {
        flex-direction: column
    }
}

.clients-cat__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 5rem;
    width: 100%;
    max-width: 880px
}

@media screen and (max-width:991.98px) {
    .clients-cat__top-main {
        max-width: 720px
    }
}

@media screen and (max-width:767.98px) {
    .clients-cat__top-main {
        min-height: auto;
        max-width: none
    }
}

.clients-cat__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:767.98px) {
    .clients-cat__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.clients-cat__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.clients-cat__top-button:hover {
    background: #5198ec
}

.clients-cat__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.clients-cat__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .clients-cat__top-button {
        width: 100%
    }
}

.clients-cat__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .clients-cat__top-animation {
        display: none
    }
}

.clients-cat__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1135px;
    height: 800px;
    transform: translateX(-50%);
    z-index: -1
}

.clients-cat__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.clients-cat__top-subtitle {
    font-weight: 400;
    margin-bottom: 1.25rem
}

.clients-cat__top-content {
    margin-bottom: 4rem
}

.clients-cat__block {
    margin-bottom: 10rem
}

@media screen and (max-width:1199.98px) {
    .clients-cat__block {
        margin-bottom: 6rem
    }
}

.companies-cat {
    position: relative;
    display: flex;
    flex-direction: column
}

.companies-cat__top {
    position: relative;
    display: flex;
    margin-bottom: 5rem
}

@media screen and (max-width:767.98px) {
    .companies-cat__top {
        flex-direction: column
    }
}

.companies-cat__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 860px;
    min-height: calc(50vh - 145px)
}

@media screen and (max-width:767.98px) {
    .companies-cat__top-main {
        min-height: auto;
        max-width: none
    }
}

.companies-cat__top-animation {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .companies-cat__top-animation {
        display: none
    }
}

.companies-cat__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 740px;
    transform: translateY(-50%);
    z-index: -1
}

.companies-cat__top-title {
    color: #f2f2f2;
    margin-bottom: 3rem
}

.companies-cat__top-content {
    max-width: 640px;
    font-size: 1.125rem;
    line-height: normal
}

.companies-cat__top-content p {
    margin-bottom: 2rem
}

.companies-cat__top-content strong {
    font-size: 1.25rem
}

.companies-cat__content {
    font-size: 1.25rem;
    line-height: normal;
    margin-bottom: 7rem
}

.companies-cat__content-more {
    display: flex;
    justify-content: center;
    padding: 2rem 0
}

.companies-cat__content-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.companies-cat__content-button:hover {
    background: #5198ec
}

.companies-cat__content-button.m--white {
    color: #3f66ff;
    background: #fff
}

.companies-cat__content-button.m--white:hover {
    background: #e0e0e0
}

.companies-cat__content .content {
    margin-bottom: 1rem
}

.companies-cat__menu {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.25rem;
    line-height: normal;
    font-weight: 400;
    column-gap: 5rem;
    row-gap: 1rem;
    margin-bottom: 5rem
}

@media screen and (max-width:1199.98px) {
    .companies-cat__menu {
        column-gap: 3rem
    }
}

@media screen and (max-width:991.98px) {
    .companies-cat__menu {
        column-gap: 2rem
    }
}

.companies-cat__menu-item {
    position: relative;
    display: block;
    color: #fff;
    width: calc(20% - 4rem);
    z-index: 1;
    transition: color .5s ease
}

@media screen and (max-width:1199.98px) {
    .companies-cat__menu-item {
        width: calc(25% - 2.25rem)
    }
}

@media screen and (max-width:991.98px) {
    .companies-cat__menu-item {
        width: calc(33.3333333333% - 1.3333333333rem)
    }
}

@media screen and (max-width:767.98px) {
    .companies-cat__menu-item {
        width: calc(50% - 1rem)
    }
}

.companies-cat__menu-item:after,
.companies-cat__menu-item:before {
    content: attr(data-text);
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: all .5s ease;
    filter: blur(0)
}

.companies-cat__menu-item:before {
    filter: blur(5px)
}

.companies-cat__menu-item:after {
    filter: blur(7.5px)
}

.companies-cat__menu-item.is-active,
.companies-cat__menu-item:hover {
    color: #09fbd3
}

.companies-cat__menu-item.is-active:after,
.companies-cat__menu-item.is-active:before,
.companies-cat__menu-item:hover:after,
.companies-cat__menu-item:hover:before {
    opacity: 1
}

.companies-cat__content table {
    display: flex;
    flex-direction: column;
    gap: 1.25rem
}

.companies-cat__content table tbody {
    display: flex;
    flex-direction: column;
    gap: 1.25rem
}

.companies-cat__content table tr {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.5rem 1.75rem;
    background: rgba(255, 255, 255, .05);
    border: none;
    border-radius: 20px;
    backdrop-filter: blur(21px)
}

.companies-cat__content table tr:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 20px;
    border: 2px solid transparent;
    background-image: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.companies-cat__content table td {
    display: block;
    font-size: 1.25rem;
    font-weight: 400
}

.companies-cat__content table td:last-child {
    font-weight: 700
}

.contacts-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.contacts-page__block {
    position: relative;
    display: flex;
    margin-bottom: 6rem
}

@media screen and (max-width:767.98px) {
    .contacts-page__block {
        flex-direction: column
    }
}

.contacts-page__block-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 840px
}

@media screen and (max-width:991.98px) {
    .contacts-page__block-main {
        max-width: 70%
    }
}

@media screen and (max-width:767.98px) {
    .contacts-page__block-main {
        min-height: auto;
        max-width: none
    }
}

.contacts-page__block-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .contacts-page__block-animation {
        display: none
    }
}

.contacts-page__block-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1080px;
    height: 790px;
    transform: translateX(-50%);
    z-index: -1
}

.contacts-page__block-animation.m--bottom:before {
    top: -60px;
    width: 820px;
    height: 600px
}

.contacts-page__block-title {
    color: #f2f2f2
}

.contacts-page__block-title.m--no-margin {
    margin-bottom: 0
}

.contacts-page__block-content {
    font-size: 1.5rem;
    line-height: 2.125rem;
    margin-bottom: 2.5rem
}

.contacts-page__block-content.m--no-margin {
    margin-bottom: 0
}

.contacts-page__block-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.contacts-page__block-button:hover {
    background: #5198ec
}

.contacts-page__block-button.m--white {
    color: #3f66ff;
    background: #fff
}

.contacts-page__block-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .contacts-page__block-button {
        width: 100%
    }
}

.contacts-page__block-button.m--width-auto {
    width: auto
}

@media screen and (max-width:575.98px) {
    .contacts-page__block-button.m--width-auto {
        width: 100%
    }
}

.contacts-page__block-button.m--width-lg {
    width: 320px
}

@media screen and (max-width:575.98px) {
    .contacts-page__block-button.m--width-lg {
        width: 100%
    }
}

.contacts-page__block-params {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    padding-top: 1.75rem
}

@media screen and (max-width:767.98px) {
    .contacts-page__block-params {
        flex-direction: column;
        gap: 2.5rem
    }
}

.contacts-page__block-param {
    position: relative;
    width: calc(50% - .625rem)
}

@media screen and (max-width:767.98px) {
    .contacts-page__block-param {
        width: 100%
    }
}

.contacts-page__block-param>div {
    padding-left: 2.25rem
}

.contacts-page__block-param-title {
    position: relative;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: .75rem
}

.contacts-page__block-param-title:after,
.contacts-page__block-param-title:before {
    content: "";
    position: absolute;
    margin-top: -.5rem;
    top: 50%;
    left: 0;
    width: 1rem;
    height: 1rem;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjgiIGZpbGw9IiMwOUZCRDMiLz4KPC9zdmc+Cg==);
    background-position: 50% 50%;
    background-repeat: no-repeat
}

.contacts-page__block-param-title:before {
    filter: blur(12.5px)
}

.contacts-page__block-param-title:after {
    filter: blur(4px)
}

.contacts-page__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 4rem;
    margin-bottom: 5rem
}

@media screen and (max-width:1199.98px) {
    .contacts-page__socials {
        gap: 2.5rem
    }
}

@media screen and (max-width:991.98px) {
    .contacts-page__socials {
        gap: 1.5rem
    }
}

@media screen and (max-width:767.98px) {
    .contacts-page__socials {
        gap: 2rem
    }
}

@media screen and (max-width:575.98px) {
    .contacts-page__socials {
        gap: 1.5rem
    }
}

@media screen and (max-width:479.98px) {
    .contacts-page__socials {
        gap: 1rem
    }
}

.contacts-page__socials-link {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 200px;
    mask-position: 50% 50%;
    mask-size: contain;
    mask-repeat: no-repeat;
    -webkit-mask-position: 50% 50%;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    background: #fff;
    transition: background .7s ease
}

.contacts-page__socials-link:hover {
    background: #5198ec
}

@media screen and (max-width:1199.98px) {
    .contacts-page__socials-link {
        width: 175px;
        height: 175px
    }
}

@media screen and (max-width:991.98px) {
    .contacts-page__socials-link {
        width: 150px;
        height: 150px
    }
}

@media screen and (max-width:767.98px) {
    .contacts-page__socials-link {
        width: 125px;
        height: 125px
    }
}

@media screen and (max-width:575.98px) {
    .contacts-page__socials-link {
        width: 100px;
        height: 100px
    }
}

@media screen and (max-width:479.98px) {
    .contacts-page__socials-link {
        width: 75px;
        height: 75px
    }
}

.contacts-page__socials-link img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%
}

.difference-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.difference-page__bottom,
.difference-page__middle,
.difference-page__top {
    position: relative;
    display: flex;
    margin-bottom: 5rem
}

.difference-page__bottom.m--reverse,
.difference-page__middle.m--reverse,
.difference-page__top.m--reverse {
    flex-direction: row-reverse
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom,
    .difference-page__middle,
    .difference-page__top {
        flex-direction: column
    }

    .difference-page__bottom.m--reverse,
    .difference-page__middle.m--reverse,
    .difference-page__top.m--reverse {
        flex-direction: column
    }
}

.difference-page__bottom-main,
.difference-page__middle-main,
.difference-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 460px;
    min-height: calc(50vh - 145px)
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom-main,
    .difference-page__middle-main,
    .difference-page__top-main {
        min-height: auto;
        max-width: none
    }
}

.difference-page__bottom.m--reverse .difference-page__bottom-main,
.difference-page__bottom.m--reverse .difference-page__middle-main,
.difference-page__bottom.m--reverse .difference-page__top-main,
.difference-page__middle.m--reverse .difference-page__bottom-main,
.difference-page__middle.m--reverse .difference-page__middle-main,
.difference-page__middle.m--reverse .difference-page__top-main,
.difference-page__top.m--reverse .difference-page__bottom-main,
.difference-page__top.m--reverse .difference-page__middle-main,
.difference-page__top.m--reverse .difference-page__top-main {
    max-width: 810px
}

@media screen and (max-width:1199.98px) {

    .difference-page__bottom.m--reverse .difference-page__bottom-main,
    .difference-page__bottom.m--reverse .difference-page__middle-main,
    .difference-page__bottom.m--reverse .difference-page__top-main,
    .difference-page__middle.m--reverse .difference-page__bottom-main,
    .difference-page__middle.m--reverse .difference-page__middle-main,
    .difference-page__middle.m--reverse .difference-page__top-main,
    .difference-page__top.m--reverse .difference-page__bottom-main,
    .difference-page__top.m--reverse .difference-page__middle-main,
    .difference-page__top.m--reverse .difference-page__top-main {
        max-width: 640px
    }
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom.m--reverse .difference-page__bottom-main,
    .difference-page__bottom.m--reverse .difference-page__middle-main,
    .difference-page__bottom.m--reverse .difference-page__top-main,
    .difference-page__middle.m--reverse .difference-page__bottom-main,
    .difference-page__middle.m--reverse .difference-page__middle-main,
    .difference-page__middle.m--reverse .difference-page__top-main,
    .difference-page__top.m--reverse .difference-page__bottom-main,
    .difference-page__top.m--reverse .difference-page__middle-main,
    .difference-page__top.m--reverse .difference-page__top-main {
        max-width: none
    }
}

.difference-page__bottom-animation,
.difference-page__middle-animation,
.difference-page__top-animation {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom-animation,
    .difference-page__middle-animation,
    .difference-page__top-animation {
        height: 250px
    }
}

.difference-page__bottom-animation:before,
.difference-page__middle-animation:before,
.difference-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1500px;
    height: 740px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom-animation:before,
    .difference-page__middle-animation:before,
    .difference-page__top-animation:before {
        top: -150px;
        height: 600px;
        background-size: auto 100% !important
    }
}

.difference-page__bottom-animation:after,
.difference-page__middle-animation:after,
.difference-page__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 417px;
    height: 417px;
    z-index: -1
}

@media screen and (max-width:767.98px) {

    .difference-page__bottom-animation:after,
    .difference-page__middle-animation:after,
    .difference-page__top-animation:after {
        max-width: 250px;
        height: 250px;
        background-size: auto 100% !important
    }
}

.difference-page__bottom-animation img,
.difference-page__middle-animation img,
.difference-page__top-animation img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto
}

.difference-page__bottom-title,
.difference-page__middle-title,
.difference-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

@media screen and (max-width:767.98px) {
    .difference-page__middle-animation {
        display: none
    }
}

.difference-page__middle-animation:after {
    display: none
}

.difference-page__bottom:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%);
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 1860px;
    z-index: -1
}

.difference-page__bottom-animation:before {
    display: none
}

.difference-page__bottom-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 75%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 420px;
    height: 600px;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .difference-page__bottom-animation:after {
        max-width: 310px;
        height: 450px;
        background-size: auto 100%
    }
}

.difference-page__content {
    font-size: 1.25rem;
    line-height: normal;
    margin-bottom: 7rem
}

.difference-page__block {
    position: relative;
    display: flex;
    column-gap: 8rem;
    row-gap: 2rem;
    margin-bottom: 7rem
}

.difference-page__block.m--reverse {
    flex-direction: row-reverse
}

@media screen and (max-width:1455.98px) {
    .difference-page__block {
        column-gap: 5rem
    }
}

@media screen and (max-width:1199.98px) {
    .difference-page__block {
        column-gap: 3rem
    }
}

@media screen and (max-width:991.98px) {
    .difference-page__block {
        flex-direction: column
    }

    .difference-page__block.m--reverse {
        flex-direction: column
    }
}

.difference-page__block-info {
    max-width: 460px
}

@media screen and (max-width:1455.98px) {
    .difference-page__block-info {
        max-width: 420px
    }
}

@media screen and (max-width:1199.98px) {
    .difference-page__block-info {
        max-width: 360px
    }
}

@media screen and (max-width:991.98px) {
    .difference-page__block-info {
        max-width: 460px
    }
}

@media screen and (max-width:575.98px) {
    .difference-page__block-info {
        max-width: none
    }
}

.difference-page__block-title {
    margin-bottom: .75rem
}

.difference-page__block-content {
    margin-bottom: 3rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: normal
}

@media screen and (max-width:991.98px) {
    .difference-page__block-content {
        font-size: 1.25rem
    }
}

@media screen and (max-width:575.98px) {
    .difference-page__block-content {
        font-size: 1.125rem
    }
}

.difference-page__block-content p {
    margin-bottom: 1.5rem
}

.difference-page__block-switcher {
    display: flex;
    position: relative;
    display: flex;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    border: none;
    background: rgba(255, 255, 255, .1);
    border-radius: 1.5rem;
    transition: all .25s ease;
    margin-bottom: 2.5rem
}

.difference-page__block-switcher:hover {
    background: rgba(255, 255, 255, .2)
}

.difference-page__block-switcher:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 1.5rem;
    border: 2px solid transparent;
    background: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.difference-page__block-switch {
    flex-grow: 1;
    position: relative;
    display: block;
    width: 50%;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .815rem 1.25rem;
    text-align: center;
    color: #fff;
    border: none;
    border-radius: 1.5rem
}

.difference-page__block-switch.is-active {
    background: rgba(255, 255, 255, .2)
}

.difference-page__block-switch:after,
.difference-page__block-switch:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 1.5rem;
    border: 2px solid transparent;
    background: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    transition: all .25s ease
}

.difference-page__block-switch:after,
.difference-page__block-switch:before {
    inset: 1px;
    opacity: 0;
    z-index: 1
}

.difference-page__block-switch.is-active:after,
.difference-page__block-switch.is-active:before {
    opacity: 1
}

.difference-page__block-switch:first-child {
    margin-right: -.75rem
}

.difference-page__block-switch:last-child {
    margin-left: -.75rem
}

.difference-page__block-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease;
    width: auto;
    min-width: 420px;
    margin: 0 auto
}

.difference-page__block-button:hover {
    background: #5198ec
}

.difference-page__block-button.m--white {
    color: #3f66ff;
    background: #fff
}

.difference-page__block-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .difference-page__block-button {
        min-width: auto
    }
}

.difference-page__block-examples {
    display: none
}

.difference-page__block-examples.is-show {
    display: block
}

.difference-page__block-examples ul {
    display: flex;
    flex-direction: column;
    list-style: none;
    gap: 2rem
}

.difference-page__block-examples ul li {
    position: relative;
    display: block;
    padding: .5rem 2.75rem;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: .675rem;
    background: linear-gradient(180deg, rgba(25, 185, 214, 0) 0, rgba(255, 255, 255, .15) 100%);
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.3
}

.difference-page__block-examples ul li:after,
.difference-page__block-examples ul li:before {
    content: "";
    position: absolute;
    display: block;
    margin-top: -.5rem;
    margin-left: 0;
    top: 1.375rem;
    left: .75rem;
    width: 1rem;
    height: 1rem;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjgiIGZpbGw9IiMwRjU0RTciLz4KPC9zdmc+Cg==);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    filter: blur(4px)
}

.difference-page__block-examples ul li:after {
    filter: blur(12.5px)
}

.difference-page__block-pics {
    display: none;
    gap: 1.75rem;
    flex-grow: 1;
    align-items: flex-start
}

@media screen and (max-width:1199.98px) {
    .difference-page__block-pics {
        align-items: flex-end
    }
}

.difference-page__block-pics.is-show {
    display: flex
}

.difference-page__block-pic {
    position: relative;
    width: calc(50% - .875rem);
    border-radius: 20px;
    border: 1px solid transparent;
    background-image: linear-gradient(#1d1b33, #1d1b33), linear-gradient(290deg, #09fbd3 0, #fe53bb 100%);
    background-origin: border-box;
    background-clip: content-box, border-box;
    overflow: hidden
}

.difference-page__block-pic:before {
    content: "";
    display: block;
    padding-top: 136%
}

@media screen and (max-width:1199.98px) {
    .difference-page__block-pic:before {
        padding-top: 165%
    }
}

@media screen and (max-width:991.98px) {
    .difference-page__block-pic:before {
        padding-top: 136%
    }
}

.difference-page__block-pic-inner {
    position: absolute;
    inset: 0
}

.difference-page__block-pic img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.difference-page__questions {
    margin-bottom: 7rem
}

.home-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.home-page__top {
    position: relative;
    display: flex;
    margin-bottom: 5rem
}

@media screen and (max-width:991.98px) {
    .home-page__top {
        flex-direction: column
    }
}

.home-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 2.25rem 0;
    width: 100%;
    max-width: 580px;
    min-height: calc(100vh - 145px)
}

@media screen and (max-width:991.98px) {
    .home-page__top-main {
        max-width: 720px;
        min-height: auto
    }
}

@media screen and (max-width:767.98px) {
    .home-page__top-main {
        max-width: none
    }
}

.home-page__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .home-page__top-animation {
        height: 420px
    }
}

@media screen and (max-width:575.98px) {
    .home-page__top-animation {
        display: none
    }
}

.home-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -435px;
    left: 50%;
    width: 1670px;
    height: 1660px;
    transform: translateX(-50%);
    opacity: .75;
    z-index: -1
}

.home-page__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    width: 400px;
    height: 700px;
    transform: translate(-50%, -50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .home-page__top-animation:after {
        max-width: 90%;
        height: 400px;
        background-size: 100% auto !important
    }
}

.home-page__top-title {
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 2.5rem;
    color: #e0e0e0;
    margin-bottom: 1.25rem
}

.home-page__top-menu {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.875rem
}

.home-page__top-menu-item.home-page__top-menu-item,
.home-page__top-menu-item.home-page__top-menu-item:visited {
    display: block;
    font-weight: 500;
    font-size: 3rem;
    line-height: 2.5rem;
    color: #f2f2f2;
    margin-bottom: 1.5rem;
    transition: all .25s ease !important
}

@media screen and (max-width:991.98px) {

    .home-page__top-menu-item.home-page__top-menu-item,
    .home-page__top-menu-item.home-page__top-menu-item:visited {
        font-size: 2.5rem
    }
}

@media screen and (max-width:767.98px) {

    .home-page__top-menu-item.home-page__top-menu-item,
    .home-page__top-menu-item.home-page__top-menu-item:visited {
        font-size: 2.25rem
    }
}

@media screen and (max-width:575.98px) {

    .home-page__top-menu-item.home-page__top-menu-item,
    .home-page__top-menu-item.home-page__top-menu-item:visited {
        font-size: 2rem
    }
}

@media screen and (max-width:479.98px) {

    .home-page__top-menu-item.home-page__top-menu-item,
    .home-page__top-menu-item.home-page__top-menu-item:visited {
        font-size: 1.75rem
    }
}

.home-page__top-menu-item.home-page__top-menu-item.m--yellow.is-active,
.home-page__top-menu-item.home-page__top-menu-item.m--yellow:hover {
    color: #f7b502;
    text-shadow: 0 0 15px rgba(247, 181, 2, .8)
}

.home-page__top-menu-item.home-page__top-menu-item.m--blue.is-active,
.home-page__top-menu-item.home-page__top-menu-item.m--blue:hover {
    color: #002ffe;
    text-shadow: 0 0 15px rgba(0, 47, 254, .8)
}

.home-page__top-menu-item.home-page__top-menu-item.m--cyan.is-active,
.home-page__top-menu-item.home-page__top-menu-item.m--cyan:hover {
    color: #01ffff;
    text-shadow: 0 0 15px rgba(1, 255, 255, .8)
}

.home-page__top-menu-item.home-page__top-menu-item.m--green.is-active,
.home-page__top-menu-item.home-page__top-menu-item.m--green:hover {
    color: #45ba62;
    text-shadow: 0 0 15px rgba(69, 186, 98, .8)
}

.home-page__top-menu-item.home-page__top-menu-item.m--pink.is-active,
.home-page__top-menu-item.home-page__top-menu-item.m--pink:hover {
    color: #fe53bb;
    text-shadow: 0 0 15px rgba(254, 83, 187, .8)
}

.home-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:767.98px) {
    .home-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.home-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.home-page__top-button:hover {
    background: #5198ec
}

.home-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.home-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .home-page__top-button {
        width: 100%
    }
}

.home-page__about,
.home-page__news,
.home-page__peoples,
.home-page__projects,
.home-page__stats {
    margin-bottom: 9rem
}

@media screen and (max-width:767.98px) {

    .home-page__about,
    .home-page__news,
    .home-page__peoples,
    .home-page__projects,
    .home-page__stats {
        margin-bottom: 7rem
    }
}

@media screen and (max-width:575.98px) {

    .home-page__about,
    .home-page__news,
    .home-page__peoples,
    .home-page__projects,
    .home-page__stats {
        margin-bottom: 5rem
    }
}

.home-page__advantages,
.home-page__banners,
.home-page__estimates {
    margin-bottom: 9rem
}

@media screen and (max-width:767.98px) {

    .home-page__advantages,
    .home-page__banners,
    .home-page__estimates {
        margin-bottom: 7rem
    }
}

@media screen and (max-width:575.98px) {

    .home-page__advantages,
    .home-page__banners,
    .home-page__estimates {
        margin-bottom: 5rem
    }
}

.home-page__advantages:after {
    content: "";
    position: absolute;
    top: -150px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    max-width: 1920px;
    height: 1470px;
    opacity: 1;
    z-index: -3
}

@media screen and (max-width:1455.98px) {
    .home-page__advantages:after {
        top: -30px;
        background-size: 290px auto
    }
}

@media screen and (max-width:1199.98px) {
    .home-page__advantages:after {
        display: none
    }
}

.home-page__more {
    margin-bottom: 5rem
}

.news-cat {
    position: relative;
    display: flex;
    flex-direction: column
}

.news-cat__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .news-cat__top {
        flex-direction: column
    }
}

.news-cat__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 530px;
    min-height: calc(60vh - 145px)
}

@media screen and (max-width:991.98px) {
    .news-cat__top-main {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .news-cat__top-main {
        min-height: auto;
        max-width: none
    }
}

.news-cat__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .news-cat__top-animation {
        height: 320px;
        margin-top: -4rem;
        margin-bottom: 4rem
    }
}

.news-cat__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -260px;
    left: 50%;
    width: 1400px;
    height: 930px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .news-cat__top-animation:before {
        top: -200px;
        background-size: contain !important;
        width: 900px;
        height: 780px
    }
}

.news-cat__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 527px;
    height: 527px;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .news-cat__top-animation:after {
        max-width: 360px;
        height: 360px;
        background-size: auto 100% !important
    }
}

.news-cat__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.news-cat__top-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: 1rem
}

.news-cat__block {
    margin-bottom: 7rem
}

@media screen and (max-width:767.98px) {
    .news-cat__block {
        margin-bottom: 4rem
    }
}

.news-cat__block:before {
    content: "";
    position: absolute;
    top: 780px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 920px;
    opacity: 1;
    z-index: -2
}

@media screen and (max-width:767.98px) {
    .news-cat__block:before {
        background: 0 0
    }
}

.news-cat__pagination {
    margin-bottom: 5rem
}

.news-cat__more {
    display: flex;
    justify-content: center;
    padding: 2rem 0;
    margin-bottom: 5rem
}

.news-cat__more-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.news-cat__more-button:hover {
    background: #5198ec
}

.news-cat__more-button.m--white {
    color: #3f66ff;
    background: #fff
}

.news-cat__more-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .news-cat__more-button {
        width: 100%
    }
}

.news-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.news-page__title {
    margin-bottom: 1.5rem
}

.news-page__top {
    position: relative;
    display: flex;
    gap: 5rem;
    margin-bottom: 2.25rem
}

@media screen and (max-width:767.98px) {
    .news-page__top {
        flex-direction: column;
        gap: 2.25rem
    }
}

.news-page__top-content {
    position: relative;
    display: flex;
    margin: 0;
    width: 100%;
    max-width: 530px
}

@media screen and (max-width:991.98px) {
    .news-page__top-content {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .news-page__top-content {
        min-height: auto;
        max-width: none
    }
}

.news-page__top-picture {
    flex-grow: 1;
    border-radius: 1.875rem;
    overflow: hidden;
    max-height: 360px
}

.news-page__top-picture img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.news-page__date {
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.25rem;
    color: #77afee;
    margin-bottom: 1.25rem
}

.news-page__tags {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: 2.25rem
}

.news-page__content {
    margin-bottom: 7rem
}

@media screen and (max-width:767.98px) {
    .news-page__content {
        margin-bottom: 4rem
    }
}

.news-page__block {
    margin-bottom: 7rem
}

@media screen and (max-width:767.98px) {
    .news-page__block {
        margin-bottom: 4rem
    }
}

.news-page__block:after {
    content: "";
    position: absolute;
    bottom: -600px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 1420px;
    opacity: .6;
    z-index: -3
}

@media screen and (max-width:767.98px) {
    .news-page__block:after {
        background: 0 0
    }
}

.page-404 {
    position: relative;
    display: flex;
    flex-direction: column
}

.page-404:before {
    content: "";
    position: absolute;
    display: block;
    top: -250px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 700px;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .page-404:before {
        display: none
    }
}

.page-404:after {
    content: "";
    position: absolute;
    display: block;
    bottom: -360px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 670px;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .page-404:after {
        display: none
    }
}

.page-404__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .page-404__top {
        flex-direction: column
    }
}

.page-404__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 480px;
    min-height: calc(70vh - 145px)
}

@media screen and (max-width:991.98px) {
    .page-404__top-main {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .page-404__top-main {
        min-height: auto;
        max-width: none
    }
}

.page-404__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .page-404__top-animation {
        height: 320px;
        margin-top: 3rem;
        margin-bottom: 0
    }
}

.page-404__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1470px;
    height: 870px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .page-404__top-animation:before {
        display: none
    }
}

.page-404__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 750px;
    height: 490px;
    background-size: 100% auto !important;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .page-404__top-animation:after {
        max-width: none;
        height: 360px;
        background-size: auto 100% !important
    }
}

.page-404__top-title {
    color: #f2f2f2;
    font-size: 8rem;
    line-height: normal;
    margin-bottom: 0
}

.page-404__top-subtitle {
    color: #f2f2f2;
    font-size: 3rem;
    line-height: normal;
    margin-bottom: 1.5rem
}

.portfolio-cat {
    position: relative;
    display: flex;
    flex-direction: column
}

.portfolio-cat:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1930px;
    height: 1490px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-cat:before {
        top: -360px
    }
}

.portfolio-cat__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .portfolio-cat__top {
        flex-direction: column
    }
}

.portfolio-cat__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 700px;
    min-height: calc(50vh - 145px)
}

@media screen and (max-width:991.98px) {
    .portfolio-cat__top-main {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-cat__top-main {
        min-height: auto;
        max-width: none
    }
}

.portfolio-cat__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .portfolio-cat__top-animation {
        height: 0
    }
}

.portfolio-cat__top-animation:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1490px;
    height: 1160px;
    transform: translateX(-50%);
    opacity: .45;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-cat__top-animation:before {
        display: none
    }
}

.portfolio-cat__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    width: 1250px;
    height: 768px;
    transform: translate(-50%, -50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-cat__top-animation:after {
        display: none
    }
}

.portfolio-cat__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.portfolio-cat__top-content {
    font-size: 1.25rem
}

.portfolio-cat__filters {
    margin-bottom: 7rem
}

@media screen and (max-width:1199.98px) {
    .portfolio-cat__filters {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:991.98px) {
    .portfolio-cat__filters {
        margin-bottom: 3rem
    }
}

.portfolio-cat__filters-content {
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 2.5rem;
    color: rgba(255, 255, 255, .4)
}

.portfolio-cat__tags {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 5rem;
    gap: 2rem
}

.portfolio-cat__tags-block {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1.75rem;
    margin-right: auto
}

.portfolio-cat__tags-item {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2.5rem;
    color: #fff
}

.portfolio-cat__tags-item.is-active {
    background-image: linear-gradient(290deg, #09fbd3 0, #fe53bb 100%);
    background-clip: text;
    text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.portfolio-cat__tags-search {
    position: relative;
    position: relative;
    display: block;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .75rem 1.5rem;
    color: #fff;
    background: rgba(255, 255, 255, .1);
    border: none;
    border-radius: 6px;
    padding: .5rem 1.5rem .5rem 3rem
}

.portfolio-cat__tags-search:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 6px;
    border: 1px solid transparent;
    background: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    transition: all .25s ease
}

.portfolio-cat__tags-search:focus-within:before {
    background: #f2f2f2
}

@media screen and (max-width:575.98px) {
    .portfolio-cat__tags-search {
        width: 100%
    }
}

.portfolio-cat__tags-search:after {
    content: "";
    position: absolute;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    left: .75rem;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iOS43OTA5OSIgY3k9IjEwLjA2MTUiIHI9IjcuMzExMDEiIHN0cm9rZT0iI0YyRjJGMiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz4KPHBhdGggZD0iTTE1LjQ1NDYgMTUuMDY1NEwyMC45MzkgMjAuNTQ5MyIgc3Ryb2tlPSIjRjJGMkYyIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain
}

.portfolio-cat__tags-search input {
    position: relative;
    width: 100%;
    border: none;
    line-height: 1rem;
    padding: .125rem 0;
    background: 0 0;
    color: #fff;
    font-weight: 400;
    z-index: 10
}

.portfolio-cat__block {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    column-gap: 1.25rem;
    row-gap: 5rem;
    margin-bottom: 7rem
}

.portfolio-cat__block.m--top:before {
    content: "";
    position: absolute;
    top: -680px;
    left: -1170px;
    width: 1850px;
    height: 2100px;
    opacity: .5;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .portfolio-cat__block.m--top:before {
        background: 0 0
    }
}

.portfolio-cat__block.m--bottom {
    margin-bottom: 2rem
}

.portfolio-cat__pagination {
    margin-bottom: 5rem
}

.portfolio-cat__more {
    display: flex;
    justify-content: center;
    padding: 2rem 0
}

.portfolio-cat__more-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.portfolio-cat__more-button:hover {
    background: #5198ec
}

.portfolio-cat__more-button.m--white {
    color: #3f66ff;
    background: #fff
}

.portfolio-cat__more-button.m--white:hover {
    background: #e0e0e0
}

.portfolio-cat__content {
    margin-bottom: 5rem
}

.portfolio-cat__projects {
    margin-bottom: 5rem
}

.portfolio-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.portfolio-page__top {
    position: relative;
    display: flex;
    margin-bottom: 1.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__top {
        flex-direction: column;
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__top {
        margin-bottom: 3.75rem
    }
}

.portfolio-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 750px
}

@media screen and (max-width:767.98px) {
    .portfolio-page__top-main {
        max-width: none
    }
}

.portfolio-page__top-block {
    display: flex;
    column-gap: 1rem;
    align-items: baseline;
    margin-bottom: 1rem
}

.portfolio-page__top-name {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: normal
}

.portfolio-page__top-site.portfolio-page__top-site {
    display: block;
    font-weight: 400;
    font-size: 1rem;
    line-height: normal;
    color: #3f66ff
}

.portfolio-page__top-site.portfolio-page__top-site:hover {
    color: #5198ec
}

.portfolio-page__top-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem
}

.portfolio-page__top-animation {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-grow: 1;
    padding: 0 2.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__top-animation {
        padding: 2.5rem 2.5rem 0;
        margin: 0
    }
}

.portfolio-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1670px;
    height: 1300px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-page__top-animation:before {
        top: -360px
    }
}

.portfolio-page__top-animation img {
    display: block;
    max-width: 100%;
    max-height: 100%
}

.portfolio-page__top-image {
    position: relative;
    display: block;
    width: 100%;
    max-width: 420px;
    margin-top: 1rem;
    margin-bottom: auto
}

.portfolio-page__top-image:before {
    content: "";
    position: relative;
    display: block;
    padding-top: 62.5%
}

.portfolio-page__top-image-inner {
    position: absolute;
    display: block;
    inset: 0
}

.portfolio-page__top-image-inner:after {
    content: "";
    position: absolute;
    display: block;
    top: -4%;
    left: -24%;
    right: -24%;
    bottom: -22%;
    background-size: contain !important
}

.portfolio-page__top-image img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.portfolio-page__top-params {
    display: flex;
    flex-wrap: wrap;
    gap: 0rem;
    width: 100%;
    margin-top: 4rem;
    max-width: 600px;
}

@media screen and (max-width:991.98px) {
    .portfolio-page__top-params {
        /*margin-left: -2.5rem;
        margin-right: -2.5rem;*/
        align-self: flex-start
    }
}

.portfolio-page__top-param {
    display: flex;
    flex-direction: column;
    min-width: 80px;
    max-width: 800px;
    flex-grow: 1;
    gap: .675rem;
    font-size: 1.125rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    color: #fff;
}

.portfolio-page__top-param span {
    font-size: 1rem;
    opacity: .4
}

.portfolio-page__top-title {
    color: #fff;
    margin-bottom: 1rem
}

.portfolio-page__top-content {
    margin-bottom: 1rem
}

.portfolio-page__tabs {
    margin-bottom: 3rem
}

.portfolio-page__block {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 7.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__block {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__block {
        margin-bottom: 3.75rem
    }
}

.portfolio-page__block.m--bg-ellipse-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -865px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    height: 1560px;
    opacity: 1;
    z-index: -1
}

.portfolio-page__block-title {
    max-width: 570px
}

.portfolio-page__block-inner {
    position: relative;
    display: flex;
    gap: 5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__block-inner {
        flex-direction: column;
        gap: 3rem
    }
}

.portfolio-page__block-laptop {
    position: relative;
    display: block;
    width: 100%;
    max-width: 640px;
    margin-left: 0;
    margin-right: 0
}

.portfolio-page__block-laptop:before {
    content: "";
    position: relative;
    display: block;
    padding-top: 61.1%
}

.portfolio-page__block-laptop:after {
    content: "";
    position: absolute;
    display: block;
    inset: 0;
    background-size: contain
}

.portfolio-page__block-laptop-inner {
    position: absolute;
    display: block;
    top: 16%;
    left: 32%;
    right: 15.25%;
    bottom: 15%;
    perspective: 180px
}

.portfolio-page__block-laptop img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
    transform: skew(-10deg, -2deg) rotateY(-3deg)
}

.portfolio-page__block-left {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-grow: 1;
    max-width: 640px;
    width: 40%
}

@media screen and (max-width:991.98px) {
    .portfolio-page__block-left {
        width: 100%;
        max-width: 100%
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__block-left {
        width: 100%
    }
}

.portfolio-page__block-left.m--width-100 {
    width: 100%
}

.portfolio-page__block-left img {
    display: block;
    max-width: 100%;
    max-height: 100%
}

.portfolio-page__block-right {
    max-width: 640px;
    width: 55%
}

@media screen and (max-width:991.98px) {
    .portfolio-page__block-right {
        width: 100%;
        max-width: 100%
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__block-right {
        width: 100%
    }
}

.portfolio-page__block-right.m--width-100 {
    width: 100%
}

.portfolio-page__block-right img {
    display: block;
    max-width: 100%;
    max-height: 100%
}

.portfolio-page__block-content.portfolio-page__block-content {
    color: #c6c5d4
}

.portfolio-page__block-content.portfolio-page__block-content.m--col-2 {
    columns: 2;
    column-gap: 7rem
}

.portfolio-page__block-content.portfolio-page__block-content.m--col-2 p {
    page-break-inside: avoid
}

@media screen and (max-width:991.98px) {
    .portfolio-page__block-content.portfolio-page__block-content.m--col-2 {
        columns: unset
    }
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) {
    list-style: none !important
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) ul {
    margin-left: 0
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li {
    margin-bottom: .75rem;
    padding-left: 1.5rem;
    position: relative
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li:after,
.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li:before {
    content: "";
    position: absolute;
    display: block;
    margin-left: 0;
    top: .75rem;
    left: 0;
    transform: translateY(-50%);
    width: .75rem;
    height: .75rem;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjgiIGZpbGw9IiMwOUZCRDMiLz4KPC9zdmc+Cg==);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li:before {
    filter: blur(12.5px);
    z-index: 1
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li:after {
    filter: blur(4px);
    z-index: 2
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li a {
    color: #01ffff
}

.portfolio-page__block-content.portfolio-page__block-content ul:not(.m--dot) li a:hover {
    color: #f2f2f2
}

.portfolio-page__block-description {
    margin-bottom: 1rem
}

.portfolio-page__design {
    position: relative;
    margin-bottom: 7.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__design {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__design {
        margin-bottom: 3.75rem
    }
}

.portfolio-page__design.m--bg-ellipse-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -865px;
    left: 50%;
    width: calc(100vw - 8px);
    height: 1560px;
    transform: translateX(-50%);
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-page__design.m--bg-ellipse-1:before {
        background: 0 0
    }
}

.portfolio-page__design.m--bg-spot-gradient-1:before {
    content: "";
    position: absolute;
    top: 0;
    margin-top: 0;
    left: 0;
    margin-left: 0;
    width: 680px;
    height: 920px;
    transform: translate(-35%, -40%);
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-page__design.m--bg-spot-gradient-1:before {
        background: 0 0
    }
}

.portfolio-page__design.m--bg-spot-gradient-2:after {
    content: "";
    position: absolute;
    top: 0;
    margin-top: -700px;
    left: 50%;
    margin-left: -50vw;
    width: calc(100vw - 8px);
    height: 1000px;
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .portfolio-page__design.m--bg-spot-gradient-2:after {
        background: 0 0
    }
}

.portfolio-page__results {
    position: relative;
    margin-bottom: 7.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__results {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__results {
        margin-bottom: 3.75rem
    }
}

.portfolio-page__other {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 7.5rem
}

@media screen and (max-width:991.98px) {
    .portfolio-page__other {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__other {
        margin-bottom: 3.75rem
    }
}

.portfolio-page__other-title {
    margin-bottom: 2.5rem;
    max-width: 570px
}

.portfolio-page__other-block {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem
}

@media screen and (max-width:767.98px) {
    .portfolio-page__other-block {
        flex-direction: column;
        align-items: center
    }
}

.portfolio-page__other-item {
    position: relative;
    display: flex;
    width: calc(33.3333333333% - 1.3333333333rem);
    min-width: 280px;
    border-radius: 20px
}

@media screen and (max-width:991.98px) {
    .portfolio-page__other-item {
        width: calc(50% - 1rem)
    }
}

@media screen and (max-width:767.98px) {
    .portfolio-page__other-item {
        width: 100%;
        max-width: 420px
    }
}

.portfolio-page__other-item:before {
    content: "";
    display: block;
    padding-top: 50%
}

.portfolio-page__other-item-picture {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, .05);
    border: none;
    border-radius: 20px;
    backdrop-filter: blur(21px);
    overflow: hidden
}

.portfolio-page__other-item-picture:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 20px;
    border: 2px solid transparent;
    background-image: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.portfolio-page__other-item-picture img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.projects-page__top {
    display: flex;
    margin-top: 9rem;
    gap: 2rem
}

.projects-page__top-left {
    width: 40%;
    min-width: 40%
}

.projects-page__top-right {
    flex-grow: 1
}

.projects-page__top-right img {
    max-width: 100%;
    height: auto
}

.projects-page__top-title {
    font-weight: 600;
    font-size: 3.375rem;
    line-height: 4.125rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: .115em
}

.projects-page__top-title span {
    display: block;
    color: #1d1b33;
    text-shadow: #fff -1px -1px 1px, #fff -1px 0 1px, #fff -1px 1px 1px, #fff 0 -1px 1px, #fff 0 1px 1px, #fff 1px -1px 1px, #fff 1px 0 1px, #fff 1px 1px 1px
}

.projects-page__top-description {
    font-weight: 500;
    font-size: 1.125rem;
    line-height: 1.375rem;
    margin-bottom: 2.25rem
}

.projects-page__top-description span {
    background: linear-gradient(290deg, #09fbd3 0, #fe53bb 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.projects-page__top-buttons {
    display: flex;
    gap: 36px;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.125rem
}

.projects-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    line-height: 1.25rem;
    padding: .815rem 1.25rem;
    text-align: center;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 6px
}

.projects-page__top-button:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    z-index: -1;
    border-radius: 6px;
    padding: 1px;
    background: linear-gradient(290deg, #09fbd3 0, #fe53bb 100%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 1;
    transition: all .7s ease
}

.projects-page__projects {
    margin-top: 12.5rem
}

.projects-page__stats {
    margin-top: 14.375rem
}

.projects-page__help {
    margin-top: 11.25rem
}

.projects-page__steps {
    margin-top: 6.625rem
}

.projects-page__deadlines {
    margin-top: 7.25rem
}

.projects-page__price {
    margin-top: 9.375rem
}

.projects-page__questions {
    margin-top: 15.25rem
}

.radio-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.radio-page__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .radio-page__top {
        flex-direction: column
    }
}

.radio-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 530px;
    min-height: calc(70vh - 145px)
}

@media screen and (max-width:991.98px) {
    .radio-page__top-main {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .radio-page__top-main {
        min-height: auto;
        max-width: none
    }
}

.radio-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:767.98px) {
    .radio-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.radio-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.radio-page__top-button:hover {
    background: #5198ec
}

.radio-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.radio-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .radio-page__top-button {
        width: 100%
    }
}

.radio-page__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .radio-page__top-animation {
        height: 320px;
        margin-top: 0;
        margin-bottom: 0
    }
}

.radio-page__top-animation:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 880px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .radio-page__top-animation:before {
        top: -240px
    }
}

.radio-page__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 527px;
    height: 527px;
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .radio-page__top-animation:after {
        max-width: 360px;
        height: 360px;
        background-size: auto 100% !important
    }
}

.radio-page__top-intro {
    position: relative;
    font-size: 1.125rem;
    line-height: 1.5rem;
    font-weight: 400;
    color: #fff;
    margin-top: 1rem
}

@media screen and (max-width:767.98px) {
    .radio-page__top-intro {
        margin-left: 2.25rem;
        margin-bottom: 3rem
    }
}

.radio-page__top-intro:before {
    content: "";
    position: absolute;
    top: 0;
    left: -2.25rem;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background: #fff;
    mask-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNCAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjY3MzIgMTkuNVYxNS4yOTAyQzEzLjY3MzIgMTIuNjQ2OSAxNC4yNzk4IDEwLjQ5MyAxNS40OTMgOC44Mjg2N0MxNi43MzggNy4xMzE3IDE4LjU3MzcgNi4wMjIxNCAyMSA1LjVWOC42ODE4MkMxOS45MTQ2IDguOTQyODkgMTkuMDUyNiA5LjQzMjQgMTguNDE0MSAxMC4xNTAzQzE3Ljc3NTYgMTAuODM1NyAxNy4zNjA2IDExLjY2NzggMTcuMTY5IDEyLjY0NjlIMjAuMDQyM1YxOS41SDEzLjY3MzJaTTQgMTkuNVYxNS4yOTAyQzQgMTIuNjQ2OSA0LjYwNjU3IDEwLjQ5MyA1LjgxOTcyIDguODI4NjdDNy4wNjQ3OSA3LjEzMTcgOC44ODQ1MSA2LjAyMjE0IDExLjI3ODkgNS41VjguNjgxODJDMTAuMTkzNCA4Ljk0Mjg5IDkuMzMxNDUgOS40MzI0IDguNjkyOTYgMTAuMTUwM0M4LjA1NDQ2IDEwLjgzNTcgNy42Mzk0NCAxMS42Njc4IDcuNDQ3ODkgMTIuNjQ2OUgxMC4zMjExVjE5LjVINFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
    mask-position: 50% 50%;
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNCAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjY3MzIgMTkuNVYxNS4yOTAyQzEzLjY3MzIgMTIuNjQ2OSAxNC4yNzk4IDEwLjQ5MyAxNS40OTMgOC44Mjg2N0MxNi43MzggNy4xMzE3IDE4LjU3MzcgNi4wMjIxNCAyMSA1LjVWOC42ODE4MkMxOS45MTQ2IDguOTQyODkgMTkuMDUyNiA5LjQzMjQgMTguNDE0MSAxMC4xNTAzQzE3Ljc3NTYgMTAuODM1NyAxNy4zNjA2IDExLjY2NzggMTcuMTY5IDEyLjY0NjlIMjAuMDQyM1YxOS41SDEzLjY3MzJaTTQgMTkuNVYxNS4yOTAyQzQgMTIuNjQ2OSA0LjYwNjU3IDEwLjQ5MyA1LjgxOTcyIDguODI4NjdDNy4wNjQ3OSA3LjEzMTcgOC44ODQ1MSA2LjAyMjE0IDExLjI3ODkgNS41VjguNjgxODJDMTAuMTkzNCA4Ljk0Mjg5IDkuMzMxNDUgOS40MzI0IDguNjkyOTYgMTAuMTUwM0M4LjA1NDQ2IDEwLjgzNTcgNy42Mzk0NCAxMS42Njc4IDcuNDQ3ODkgMTIuNjQ2OUgxMC4zMjExVjE5LjVINFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
    -webkit-mask-position: 50% 50%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain
}

.radio-page__top-intro p {
    margin-bottom: .625rem
}

.radio-page__top-intro p span {
    font-size: .875rem
}

.radio-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.radio-page__top-content {
    margin-bottom: 2.5rem
}

.radio-page__clients {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .radio-page__clients {
        margin-bottom: 7rem
    }
}

.radio-page__actions {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .radio-page__actions {
        margin-bottom: 7rem
    }
}

.radio-page__cases {
    position: relative;
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .radio-page__cases {
        margin-bottom: 7rem
    }
}

.radio-page__block {
    position: relative;
    display: flex;
    column-gap: 8rem;
    row-gap: 2rem;
    margin-bottom: 7rem
}

.radio-page__block.m--col {
    flex-direction: column;
    gap: 0
}

@media screen and (max-width:1199.98px) {
    .radio-page__block {
        column-gap: 4rem
    }
}

@media screen and (max-width:991.98px) {
    .radio-page__block {
        flex-direction: column;
        gap: 2rem
    }
}

.radio-page__block-left {
    width: 100%;
    max-width: 360px
}

@media screen and (max-width:1199.98px) {
    .radio-page__block-left {
        max-width: 320px
    }
}

@media screen and (max-width:991.98px) {
    .radio-page__block-left {
        max-width: none
    }
}

.radio-page__block-left.m--no-pic {
    max-width: none
}

.radio-page__block-right {
    width: 60%;
    margin-left: auto
}

@media screen and (max-width:991.98px) {
    .radio-page__block-right {
        width: 100%;
        margin-bottom: 2rem
    }
}

.radio-page__block-title {
    margin-bottom: 3rem
}

.radio-page__block-content {
    margin-bottom: 2rem
}

.radio-page__block-content p {
    margin-bottom: 1.5rem
}

.radio-page__block-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.radio-page__block-button:hover {
    background: #5198ec
}

.radio-page__block-button.m--white {
    color: #3f66ff;
    background: #fff
}

.radio-page__block-button.m--white:hover {
    background: #e0e0e0
}

.radio-page__block-picture {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-grow: 1;
    margin-bottom: 3rem;
    margin-left: -10rem;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .radio-page__block-picture {
        margin-left: 0;
        justify-content: center
    }
}

.radio-page__block-picture img {
    position: relative;
    display: block;
    max-width: 100%;
    height: auto
}

.radio-page__sales {
    margin-bottom: 7rem
}

.radio-page__banner {
    margin-bottom: 7rem
}

.radio-page__questions {
    position: relative;
    display: flex;
    margin-bottom: 7rem;
    gap: 2rem
}

@media screen and (max-width:991.98px) {
    .radio-page__questions {
        flex-direction: column
    }
}

@media screen and (max-width:767.98px) {
    .radio-page__questions {
        margin-bottom: 4rem
    }
}

.radio-page__questions-left {
    width: 30%;
    min-width: 30%
}

@media screen and (max-width:991.98px) {
    .radio-page__questions-left {
        width: 100%
    }
}

.radio-page__questions-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.radio-page__questions-button:hover {
    background: #5198ec
}

.radio-page__questions-button.m--white {
    color: #3f66ff;
    background: #fff
}

.radio-page__questions-button.m--white:hover {
    background: #e0e0e0
}

.radio-page__questions-block {
    flex-grow: 1
}

.search-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.search-page__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .search-page__top {
        flex-direction: column
    }
}

.search-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 5rem;
    width: 100%;
    max-width: 880px
}

@media screen and (max-width:991.98px) {
    .search-page__top-main {
        max-width: 720px
    }
}

@media screen and (max-width:767.98px) {
    .search-page__top-main {
        min-height: auto;
        max-width: none
    }
}

.search-page__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .search-page__top-animation {
        display: none
    }
}

.search-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1135px;
    height: 800px;
    transform: translateX(-50%);
    z-index: -1
}

.search-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.search-page__top-subtitle {
    font-weight: 400;
    margin-bottom: 1.25rem
}

.search-page__top-content {
    margin-bottom: 4rem
}

.search-page__count {
    margin-bottom: 1rem
}

.search-page__results {
    margin-bottom: 2rem
}

.search-page__list-item {
    margin-bottom: 1rem !important
}

.search-page__list-item-title.search-page__list-item-title {
    display: inline-block;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.5rem;
    color: #fff;
    margin-bottom: .5rem
}

.search-page__list-item-title.search-page__list-item-title:hover {
    color: #5198ec
}

.search-page__list-item-content {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.25rem;
    color: #c0c5d0
}

.search-page__pagination {
    margin-bottom: 5rem
}

.service-cat {
    position: relative;
    display: flex;
    flex-direction: column
}

.service-cat__top {
    position: relative;
    display: flex
}

@media screen and (max-width:767.98px) {
    .service-cat__top {
        flex-direction: column
    }
}

.service-cat__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 700px;
    min-height: calc(50vh - 145px);
    justify-content: center
}

@media screen and (max-width:991.98px) {
    .service-cat__top-main {
        max-width: 390px
    }
}

@media screen and (max-width:767.98px) {
    .service-cat__top-main {
        min-height: auto;
        max-width: none
    }
}

.service-cat__top-animation {
    position: relative;
    flex-grow: 1
}

@media screen and (max-width:767.98px) {
    .service-cat__top-animation {
        height: 0
    }
}

.service-cat__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1200px;
    height: 670px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .service-cat__top-animation:before {
        top: -360px
    }
}

.service-cat__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.service-cat__block {
    margin-bottom: 7rem
}

@media screen and (max-width:767.98px) {
    .service-cat__block {
        margin-bottom: 4rem
    }
}

.service-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.service-page__top {
    position: relative;
    display: flex;
    gap: 10rem
}

@media screen and (max-width:1199.98px) {
    .service-page__top {
        gap: 5rem
    }
}

@media screen and (max-width:991.98px) {
    .service-page__top {
        flex-direction: column;
        gap: 1rem
    }
}

@media screen and (max-width:767.98px) {
    .service-page__top {
        gap: 1rem
    }
}

.service-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 700px;
    min-height: calc(50vh - 145px);
    justify-content: center
}

@media screen and (max-width:991.98px) {
    .service-page__top-main {
        min-height: auto;
        max-width: none
    }
}

.service-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:991.98px) {
    .service-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.service-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.service-page__top-button:hover {
    background: linear-gradient(135deg, #3e59d3 0%, #552b7f 100%);
}

.service-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.service-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .service-page__top-button {
        width: 100%
    }
}

.service-page__top-animation {
    position: relative;
    display: flex;
    flex-grow: 1;
    min-width: 560px;
    min-height: calc(50vh - 145px);
    align-items: center
}

@media screen and (max-width:991.98px) {
    .service-page__top-animation {
        min-height: auto;
        max-width: none
    }
}

@media screen and (max-width:767.98px) {
    .service-page__top-animation {
        min-width: auto
    }
}

.service-page__top-animation.m--no-background:before {
    display: none
}

.service-page__top-animation.m--violet-spots:before,
.service-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1670px;
    height: 1300px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:991.98px) {

    .service-page__top-animation.m--violet-spots:before,
    .service-page__top-animation:before {
        top: -360px
    }
}

.service-page__top-animation.m--light-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 880px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .service-page__top-animation.m--light-spots:before {
        top: -240px
    }
}

.service-page__top-animation.m--white-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 820px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .service-page__top-animation.m--white-spots:before {
        top: -240px
    }
}

.service-page__top-picture {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 560px;
    height: 560px;
    margin-top: -50px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .service-page__top-picture {
        position: relative;
        top: auto;
        left: auto;
        max-width: none;
        height: 360px;
        margin-top: 0;
        background-size: auto 100% !important;
        transform: none
    }
}

.service-page__top-video {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 440px;
    height: 440px;
    margin-top: -50px;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .service-page__top-video {
        position: relative;
        top: auto;
        left: auto;
        max-width: none;
        height: 360px;
        margin-top: 0;
        transform: none
    }
}

.service-page__top-video video {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.service-page__top-intro {
    position: relative;
    font-size: 1.125rem;
    line-height: 1.5rem;
    font-weight: 400;
    color: #fff;
    margin-top: 1rem
}

@media screen and (max-width:991.98px) {
    .service-page__top-intro {
        margin-left: 2.25rem;
        margin-bottom: 3rem
    }
}

.service-page__top-intro:before {
    content: "";
    position: absolute;
    top: 0;
    left: -2.25rem;
    width: 1.5rem;
    height: 1.5rem;
    background: #fff;
    mask-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNCAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjY3MzIgMTkuNVYxNS4yOTAyQzEzLjY3MzIgMTIuNjQ2OSAxNC4yNzk4IDEwLjQ5MyAxNS40OTMgOC44Mjg2N0MxNi43MzggNy4xMzE3IDE4LjU3MzcgNi4wMjIxNCAyMSA1LjVWOC42ODE4MkMxOS45MTQ2IDguOTQyODkgMTkuMDUyNiA5LjQzMjQgMTguNDE0MSAxMC4xNTAzQzE3Ljc3NTYgMTAuODM1NyAxNy4zNjA2IDExLjY2NzggMTcuMTY5IDEyLjY0NjlIMjAuMDQyM1YxOS41SDEzLjY3MzJaTTQgMTkuNVYxNS4yOTAyQzQgMTIuNjQ2OSA0LjYwNjU3IDEwLjQ5MyA1LjgxOTcyIDguODI4NjdDNy4wNjQ3OSA3LjEzMTcgOC44ODQ1MSA2LjAyMjE0IDExLjI3ODkgNS41VjguNjgxODJDMTAuMTkzNCA4Ljk0Mjg5IDkuMzMxNDUgOS40MzI0IDguNjkyOTYgMTAuMTUwM0M4LjA1NDQ2IDEwLjgzNTcgNy42Mzk0NCAxMS42Njc4IDcuNDQ3ODkgMTIuNjQ2OUgxMC4zMjExVjE5LjVINFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
    mask-position: 50% 50%;
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNCAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjY3MzIgMTkuNVYxNS4yOTAyQzEzLjY3MzIgMTIuNjQ2OSAxNC4yNzk4IDEwLjQ5MyAxNS40OTMgOC44Mjg2N0MxNi43MzggNy4xMzE3IDE4LjU3MzcgNi4wMjIxNCAyMSA1LjVWOC42ODE4MkMxOS45MTQ2IDguOTQyODkgMTkuMDUyNiA5LjQzMjQgMTguNDE0MSAxMC4xNTAzQzE3Ljc3NTYgMTAuODM1NyAxNy4zNjA2IDExLjY2NzggMTcuMTY5IDEyLjY0NjlIMjAuMDQyM1YxOS41SDEzLjY3MzJaTTQgMTkuNVYxNS4yOTAyQzQgMTIuNjQ2OSA0LjYwNjU3IDEwLjQ5MyA1LjgxOTcyIDguODI4NjdDNy4wNjQ3OSA3LjEzMTcgOC44ODQ1MSA2LjAyMjE0IDExLjI3ODkgNS41VjguNjgxODJDMTAuMTkzNCA4Ljk0Mjg5IDkuMzMxNDUgOS40MzI0IDguNjkyOTYgMTAuMTUwM0M4LjA1NDQ2IDEwLjgzNTcgNy42Mzk0NCAxMS42Njc4IDcuNDQ3ODkgMTIuNjQ2OUgxMC4zMjExVjE5LjVINFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
    -webkit-mask-position: 50% 50%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain
}

.service-page__top-intro p {
    margin-bottom: .625rem
}

.service-page__top-intro p span {
    font-size: .875rem
}

.service-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.service-page__top-content {
    margin-bottom: 2.5rem
}

.service-page__actions,
/*.service-page__banner,*/
/*.service-page__block,*/
.service-page__cases,
.service-page__clients,
.service-page__estimates,
.service-page__facts,
.service-page__news,
.service-page__questions,
.service-page__top {
    position: relative;
    margin-bottom: 9rem
}

.service-page__block {
	margin-bottom: 4rem;
}

.service-page__banner {
	margin-bottom: 4rem;
}

@media screen and (max-width:767.98px) {

    .service-page__actions,
    .service-page__banner,
    .service-page__block,
    .service-page__cases,
    .service-page__clients,
    .service-page__estimates,
    .service-page__facts,
    .service-page__news,
    .service-page__questions,
    .service-page__top {
        margin-bottom: 7rem
    }
}

@media screen and (max-width:575.98px) {

    .service-page__actions,
    .service-page__banner,
    .service-page__block,
    .service-page__cases,
    .service-page__clients,
    .service-page__estimates,
    .service-page__facts,
    .service-page__news,
    .service-page__questions,
    .service-page__top {
        margin-bottom: 5rem
    }
}

.service-page__block {
    position: relative;
    display: flex;
    column-gap: 8rem;
    row-gap: 2rem
}

.service-page__block.m--padding {
    padding: 2.5rem;
    column-gap: 3rem
}

@media screen and (max-width:991.98px) {
    .service-page__block.m--padding {
        padding: 2rem
    }
}

@media screen and (max-width:767.98px) {
    .service-page__block.m--padding {
        padding: 1.5rem
    }
}

.service-page__block.m--bg-dark {
    border-radius: 1rem;
    background: #262342
}

.service-page__block.m--reverse {
    flex-direction: row-reverse
}

.service-page__block.m--col {
    flex-direction: column;
    gap: 0
}

.service-page__block.m--col.m--reverse {
    flex-direction: column-reverse
}

.service-page__block.m--wrap {
    flex-wrap: wrap
}

@media screen and (max-width:1199.98px) {
    .service-page__block {
        column-gap: 4rem
    }
}

@media screen and (max-width:991.98px) {
    .service-page__block {
        flex-direction: column;
        gap: 2rem
    }

    .service-page__block.m--reverse {
        flex-direction: column
    }
}

.service-page__block-left {
    max-width: 640px
}

@media screen and (max-width:1199.98px) {
    .service-page__block-left {
        max-width: 600px
    }
}

@media screen and (max-width:991.98px) {
    .service-page__block-left {
        max-width: none
    }
}

.service-page__block-left.m--no-pic {
    max-width: none;
    flex-grow: 1
}

.service-page__block-left.m--border-blue {
    padding: 1.25rem;
    border-radius: 1.25rem;
    border: 2px solid #3f66ff;
    margin-bottom: auto;
    min-width: 360px
}

@media screen and (max-width:479.98px) {
    .service-page__block-left.m--border-blue {
        min-width: auto
    }
}

.service-page__block-left.m--border-left-blue {
    padding: .375rem 0 .375rem 1.25rem;
    border-left: 2px solid #3f66ff;
    margin-bottom: auto;
    min-width: 360px
}

@media screen and (max-width:479.98px) {
    .service-page__block-left.m--border-left-blue {
        min-width: auto
    }
}

.service-page__block-left.m--middle {
    align-self: center
}

@media screen and (max-width:991.98px) {
    .service-page__block-left.m--middle {
        align-self: flex-start
    }
}

.service-page__block-left.m--border-blue .service-page__block-button {
    flex-grow: 1
}

@media screen and (max-width:991.98px) {
    .service-page__block-left.m--border-blue .service-page__block-button {
        flex-grow: 0
    }
}

@media screen and (max-width:767.98px) {
    .service-page__block-left.m--border-blue .service-page__block-button {
        flex-grow: 1
    }
}

.service-page__block-right {
    flex-grow: 1;
    margin-left: auto;
    max-width: calc(50% - 4rem)
}

@media screen and (max-width:1199.98px) {
    .service-page__block-right {
        max-width: calc(50% - 2rem)
    }
}

@media screen and (max-width:991.98px) {
    .service-page__block-right {
        width: 100%;
        max-width: 100%;
        margin-bottom: 2rem
    }
}

.service-page__block-title {
    margin-bottom: 3rem
}

.service-page__block-title.m--width-100 {
    width: 100%
}

@media screen and (max-width:767.98px) {
    .service-page__block-title {
        margin-bottom: 2rem
    }
}

@media screen and (max-width:575.98px) {
    .service-page__block-title {
        margin-bottom: 1rem
    }
}

.service-page__block.m--tab .service-page__block-title {
    margin-bottom: 1.25rem;
    font-size: 1.25rem
}

.service-page__block-content.m--subtitle {
    margin-top: -2.375rem;
    margin-bottom: 1.5rem
}

.service-page__block-content p:not(:last-child) {
    margin-bottom: 1.5rem
}

.service-page__block-buttons {
    padding-top: 2rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem
}

.service-page__block-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.service-page__block-button:hover {
    background: #5198ec
}

.service-page__block-button.m--white {
    color: #3f66ff;
    background: #fff
}

.service-page__block-button.m--white:hover {
    background: #e0e0e0
}

.service-page__block-buttons .service-page__block-button {
    width: auto;
    min-width: 250px
}

@media screen and (max-width:575.98px) {
    .service-page__block-buttons .service-page__block-button {
        width: 100%
    }
}

.service-page__block-picture {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-grow: 1;
    margin-left: -10rem;
    z-index: -1
}

@media screen and (max-width:1199.98px) {
    .service-page__block-picture {
        margin-left: -5rem
    }
}

@media screen and (max-width:991.98px) {
    .service-page__block-picture {
        margin-left: 0;
        justify-content: center
    }
}

.service-page__block-picture img {
    position: relative;
    display: block;
    max-width: 100%;
    height: auto
}

.service-page__block.m--tab .service-page__block-picture {
    margin-left: 0 !important;
    border-radius: 1rem;
    overflow: hidden;
    width: 100%;
    max-width: 720px;
    z-index: 1
}

.service-page__block-portfolio {
    padding-top: 2rem
}

.service-page__sales {
    margin-bottom: 7rem
}

.service-page__questions {
    position: relative;
    display: flex;
    gap: 2rem
}

@media screen and (max-width:991.98px) {
    .service-page__questions {
        flex-direction: column
    }
}

.service-page__questions-left {
    width: 30%;
    min-width: 30%
}

@media screen and (max-width:991.98px) {
    .service-page__questions-left {
        width: 100%
    }
}

.service-page__questions-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.service-page__questions-button:hover {
    background: #5198ec
}

.service-page__questions-button.m--white {
    color: #3f66ff;
    background: #fff
}

.service-page__questions-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .service-page__questions-button {
        width: 100%
    }
}

.service-page__questions-block {
    flex-grow: 1
}

.tenders-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.tenders-page__top {
    position: relative;
    display: flex
}

@media screen and (max-width:991.98px) {
    .tenders-page__top {
        flex-direction: column;
        margin-bottom: 7rem
    }
}

.tenders-page__top:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -1000px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    height: 2270px;
    opacity: 1;
    z-index: -1
}

.tenders-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
    max-width: 640px;
    min-height: calc(80vh - 145px);
    justify-content: center
}

@media screen and (max-width:991.98px) {
    .tenders-page__top-main {
        min-height: auto
    }
}

@media screen and (max-width:767.98px) {
    .tenders-page__top-main {
        max-width: none
    }
}

.tenders-page__top-animation {
    position: relative;
    flex-grow: 1;
    min-width: 440px
}

@media screen and (max-width:991.98px) {
    .tenders-page__top-animation {
        max-width: none;
        min-height: 320px;
        padding-right: 0;
        margin: 0
    }
}

@media screen and (max-width:767.98px) {
    .tenders-page__top-animation {
        min-width: auto
    }
}

.tenders-page__top-animation.m--no-background:before {
    display: none
}

.tenders-page__top-animation:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    max-width: 500px;
    width: 100%;
    height: 1100px;
    background-size: contain !important;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .tenders-page__top-animation:after {
        max-width: 360px;
        height: 480px;
        background-size: auto 100% !important
    }
}

.tenders-page__top-animation.m--violet-spots:before,
.tenders-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1670px;
    height: 1300px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:991.98px) {

    .tenders-page__top-animation.m--violet-spots:before,
    .tenders-page__top-animation:before {
        top: -360px
    }
}

.tenders-page__top-animation.m--light-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 880px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .tenders-page__top-animation.m--light-spots:before {
        top: -240px
    }
}

.tenders-page__top-animation.m--white-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 820px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .tenders-page__top-animation.m--white-spots:before {
        top: -240px
    }
}

.tenders-page__top-picture {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 440px;
    height: 440px;
    margin-top: -50px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .tenders-page__top-picture {
        position: relative;
        top: auto;
        left: auto;
        max-width: none;
        height: 360px;
        margin-top: 0;
        background-size: auto 100% !important;
        transform: none
    }
}

.tenders-page__top-video {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 440px;
    height: 440px;
    margin-top: -50px;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .tenders-page__top-video {
        position: relative;
        top: auto;
        left: auto;
        max-width: none;
        height: 360px;
        margin-top: 0;
        transform: none
    }
}

.tenders-page__top-video video {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.tenders-page__top-title {
    color: #f2f2f2;
    margin-bottom: 1rem
}

.tenders-page__top-content {
    margin-bottom: 2.5rem
}

.tenders-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.tenders-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.tenders-page__top-button:hover {
    background: #5198ec
}

.tenders-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.tenders-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .tenders-page__top-button {
        width: 100%
    }
}

.tenders-page__block {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__block {
        margin-bottom: 7rem
    }
}

.tenders-page__block.m--bg-ellipse-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -865px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    height: 1560px;
    opacity: 1;
    z-index: -1
}

.tenders-page__block.m--bg-ellipse-6:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -965px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    height: 2470px;
    opacity: 1;
    z-index: -1
}

.tenders-page__block.m--bg-stages:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -120px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    max-width: 1920px;
    height: 830px;
    opacity: .7;
    z-index: -1
}

@media screen and (max-width:991.98px) {
    .tenders-page__block.m--bg-stages:before {
        display: none
    }
}

.tenders-page__block-title {
    margin-bottom: 2.5rem;
    max-width: 570px
}

.tenders-page__block-title.m--width-100 {
    max-width: 100%
}

.tenders-page__block-content {
    position: relative;
    margin-bottom: 2.25rem
}

.tenders-page__block-content.m--col-2 {
    columns: 2;
    column-gap: 7rem
}

.tenders-page__block-content.m--col-2 p {
    page-break-inside: avoid
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--col-2 {
        columns: unset
    }
}

.tenders-page__block-content.m--left {
    padding-right: 45%
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--left {
        padding-right: 0
    }
}

.tenders-page__block-content.m--right {
    padding-left: 45%
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--right {
        padding-left: 0
    }
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--bg-content-1 {
        padding-top: 260px
    }
}

.tenders-page__block-content.m--bg-content-1:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -290px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    max-width: 1920px;
    height: 580px;
    background-size: contain !important;
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:1199.98px) {
    .tenders-page__block-content.m--bg-content-1:before {
        margin-top: -240px;
        height: 480px
    }
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--bg-content-1:before {
        margin-top: -60px;
        top: 0;
        background-position: 50% 0 !important
    }
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--bg-content-2 {
        padding-top: 260px
    }
}

.tenders-page__block-content.m--bg-content-2:before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -340px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 8px);
    max-width: 1920px;
    height: 680px;
    background-size: contain !important;
    opacity: 1;
    z-index: -1
}

@media screen and (max-width:1199.98px) {
    .tenders-page__block-content.m--bg-content-2:before {
        margin-top: -240px;
        height: 480px
    }
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-content.m--bg-content-2:before {
        margin-top: -60px;
        top: 0;
        background-position: 50% 0 !important
    }
}

.tenders-page__block-content .h1 {
    margin-top: 2.25rem;
    margin-bottom: 0
}

.tenders-page__block-description {
    color: #c6c5d4;
    margin-bottom: 1rem
}

.tenders-page__block-inner {
    position: relative;
    display: flex;
    gap: 5rem
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-inner {
        flex-direction: column;
        gap: 3rem
    }
}

.tenders-page__block-left {
    width: 40%
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-left {
        max-width: 580px;
        width: 100%
    }

    .tenders-page__block-left.m--no-max-width {
        max-width: 100%
    }
}

@media screen and (max-width:767.98px) {
    .tenders-page__block-left {
        width: 100%
    }
}

.tenders-page__block-right {
    width: 55%;
    display: block
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-right {
        width: 100%
    }
}

@media screen and (max-width:767.98px) {
    .tenders-page__block-right {
        width: 100%
    }
}

.tenders-page__block-card {
    border-radius: 20px;
    background: #262342;
    overflow: hidden;
    z-index: 1;
    padding: 2rem 2.5rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.tenders-page__block-picture {
    position: relative;
    margin-bottom: 4rem
}

.tenders-page__block-picture:before {
    content: "";
    display: block;
    padding-top: 64%
}

.tenders-page__block-picture-inner {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, .05);
    border: none;
    border-radius: 20px;
    backdrop-filter: blur(21px);
    overflow: hidden
}

.tenders-page__block-picture-inner:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 20px;
    border: 2px solid transparent;
    background-image: linear-gradient(290deg, rgba(9, 251, 211, .5) 0, rgba(254, 83, 187, .5) 100%);
    background-origin: border-box;
    background-clip: border-box;
    -webkit-mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    mask: linear-gradient(#f2f2f2 0 0) content-box, linear-gradient(#f2f2f2 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.tenders-page__block-picture-inner img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover
}

.tenders-page__block-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-buttons {
        padding-top: 2rem
    }
}

@media screen and (max-width:767.98px) {
    .tenders-page__block-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.tenders-page__block-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.tenders-page__block-button:hover {
    background: #5198ec
}

.tenders-page__block-button.m--white {
    color: #3f66ff;
    background: #fff
}

.tenders-page__block-button.m--white:hover {
    background: #e0e0e0
}

.tenders-page__block-list {
    padding-top: 1rem
}

.tenders-page__block-list ul {
    display: flex;
    flex-wrap: wrap;
    column-gap: 5rem;
    row-gap: 2.5rem;
    list-style: none
}

.tenders-page__block-list ul li {
    position: relative;
    color: #fff;
    padding-left: 4rem;
    width: calc(50% - 2.5rem);
    margin-bottom: auto
}

@media screen and (max-width:767.98px) {
    .tenders-page__block-list ul li {
        width: 100%
    }
}

.tenders-page__block-list ul li:after,
.tenders-page__block-list ul li:before {
    content: "";
    position: absolute;
    margin-top: -.5rem;
    margin-left: 0;
    top: 50%;
    left: 0;
    width: 1rem;
    height: 1rem;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjgiIGZpbGw9IiMwOUZCRDMiLz4KPC9zdmc+Cg==);
    background-position: 50% 50%;
    background-repeat: no-repeat
}

.tenders-page__block-list ul li:before {
    filter: blur(12.5px)
}

.tenders-page__block-list ul li:after {
    filter: blur(4px)
}

.tenders-page__block-why {
    padding-top: 1rem
}

.tenders-page__block-why ul {
    display: flex;
    flex-wrap: wrap;
    column-gap: 5rem;
    row-gap: 2.5rem;
    list-style: none
}

.tenders-page__block-why ul li {
    position: relative;
    display: flex;
    color: #fff;
    padding-left: 9rem;
    width: calc(50% - 2.5rem);
    margin-bottom: auto;
    min-height: 6rem
}

@media screen and (max-width:991.98px) {
    .tenders-page__block-why ul li {
        width: 100%;
        padding-left: 8rem
    }
}

@media screen and (max-width:575.98px) {
    .tenders-page__block-why ul li {
        padding-left: 6.5rem
    }
}

@media screen and (max-width:479.98px) {
    .tenders-page__block-why ul li {
        padding-left: 5rem
    }
}

.tenders-page__block-why ul li:before {
    content: "";
    position: absolute;
    display: block;
    top: .25rem;
    left: 0;
    width: 6rem;
    height: 6rem;
    border-radius: .625rem;
    overflow: hidden;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

@media screen and (max-width:575.98px) {
    .tenders-page__block-why ul li:before {
        width: 5rem;
        height: 5rem
    }
}

@media screen and (max-width:479.98px) {
    .tenders-page__block-why ul li:before {
        width: 4rem;
        height: 4rem
    }
}

.tenders-page__banner {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__banner {
        margin-bottom: 7rem
    }
}

.tenders-page__clients {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__clients {
        margin-bottom: 7rem
    }
}

.tenders-page__sales {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__sales {
        margin-bottom: 7rem
    }
}

.tenders-page__results {
    margin-bottom: 10rem
}

@media screen and (max-width:767.98px) {
    .tenders-page__results {
        margin-bottom: 7rem
    }
}

.vacancy-cat {
    position: relative;
    margin-bottom: 5rem
}

.vacancy-cat:after {
    content: "";
    position: absolute;
    top: -940px;
    right: -960px;
    width: 1660px;
    height: 2100px;
    opacity: .35;
    z-index: -1
}

@media screen and (max-width:1199.98px) {
    .vacancy-cat:after {
        background: 0 0
    }
}

.vacancy-cat__title {
    position: relative;
    margin-bottom: .75rem;
    color: #f2f2f2
}

.vacancy-cat__block {
    position: relative;
    padding-top: 4rem
}

@media screen and (max-width:767.98px) {
    .vacancy-cat__block {
        padding-top: 2rem
    }
}

.vacancy {
    position: relative;
    margin-bottom: 5rem
}

.vacancy__title {
    position: relative;
    display: flex;
    gap: .75rem;
    margin-bottom: 5rem;
    color: #fff
}

@media screen and (max-width:767.98px) {
    .vacancy__title {
        flex-direction: column;
        margin-bottom: 3rem
    }
}

.vacancy__title-name {
    display: flex;
    gap: 1rem
}

.vacancy__title-name h1 {
    margin-bottom: 0
}

.vacancy__title-back {
    width: 2rem;
    height: 2rem;
    align-self: center;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxNyAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjkzNjM1IDEuNzQ4ODVDNC45ODU3IDEuNjk5MzcgNS4wNDQzMiAxLjY2MDEyIDUuMTA4ODYgMS42MzMzNEM1LjE3MzQgMS42MDY1NiA1LjI0MjYgMS41OTI3NyA1LjMxMjQ3IDEuNTkyNzdDNS4zODIzNSAxLjU5Mjc3IDUuNDUxNTQgMS42MDY1NiA1LjUxNjA4IDEuNjMzMzRDNS41ODA2MyAxLjY2MDEyIDUuNjM5MjUgMS42OTkzNyA1LjY4ODYgMS43NDg4NUwxMi4wNjM2IDguMTIzODVDMTIuMTEzMSA4LjE3MzIgMTIuMTUyMyA4LjIzMTgyIDEyLjE3OTEgOC4yOTYzNkMxMi4yMDU5IDguMzYwOSAxMi4yMTk3IDguNDMwMSAxMi4yMTk3IDguNDk5OTdDMTIuMjE5NyA4LjU2OTg1IDEyLjIwNTkgOC42MzkwNCAxMi4xNzkxIDguNzAzNThDMTIuMTUyMyA4Ljc2ODEzIDEyLjExMzEgOC44MjY3NSAxMi4wNjM2IDguODc2MUw1LjY4ODYgMTUuMjUxMUM1LjU4ODg0IDE1LjM1MDkgNS40NTM1NSAxNS40MDY5IDUuMzEyNDcgMTUuNDA2OUM1LjE3MTQgMTUuNDA2OSA1LjAzNjEgMTUuMzUwOSA0LjkzNjM1IDE1LjI1MTFDNC44MzY1OSAxNS4xNTEzIDQuNzgwNTUgMTUuMDE2IDQuNzgwNTUgMTQuODc1QzQuNzgwNTUgMTQuNzMzOSA0LjgzNjU5IDE0LjU5ODYgNC45MzYzNSAxNC40OTg4TDEwLjkzNjMgOC40OTk5N0w0LjkzNjM1IDIuNTAxMUM0Ljg4Njg3IDIuNDUxNzUgNC44NDc2MiAyLjM5MzEzIDQuODIwODQgMi4zMjg1OEM0Ljc5NDA2IDIuMjY0MDQgNC43ODAyNyAyLjE5NDg1IDQuNzgwMjcgMi4xMjQ5N0M0Ljc4MDI3IDIuMDU1MSA0Ljc5NDA2IDEuOTg1OSA0LjgyMDg0IDEuOTIxMzZDNC44NDc2MiAxLjg1NjgyIDQuODg2ODcgMS43OTgyIDQuOTM2MzUgMS43NDg4NVoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    transform: rotateY(180deg);
    background-size: auto 100%
}

.vacancy__title-tags {
    margin-left: 3rem;
    align-self: center
}

@media screen and (max-width:767.98px) {
    .vacancy__title-tags {
        margin-left: 0;
        align-self: flex-start
    }
}

.vacancy__block {
    display: flex;
    gap: 4rem
}

@media screen and (max-width:1199.98px) {
    .vacancy__block {
        flex-direction: column;
        gap: 2rem
    }
}

.vacancy__form {
    width: 100%;
    max-width: 480px;
    border-radius: 20px;
    background: #262342;
    overflow: hidden;
    z-index: 1;
    padding: 1.5rem !important;
    margin-bottom: auto
}

.vacancy__form-title {
    margin-bottom: 2rem
}

.vacancy__form-block {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.vacancy__params {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2rem;
    row-gap: 1.25rem;
    margin-bottom: 2rem;
    border-radius: 20px;
    background: #262342;
    overflow: hidden;
    z-index: 1;
    padding: 1.5rem
}

.vacancy__params>div {
    flex-grow: 1
}

.vacancy__params>div strong {
    font-weight: 700
}

.vectors-page {
    position: relative;
    display: flex;
    flex-direction: column
}

.vectors-page__top {
    position: relative;
    display: flex;
    gap: 10rem;
    margin-bottom: 4rem
}

@media screen and (max-width:1199.98px) {
    .vectors-page__top {
        gap: 5rem
    }
}

@media screen and (max-width:991.98px) {
    .vectors-page__top {
        flex-direction: column;
        gap: 1rem;
        margin-bottom: 2rem
    }
}

@media screen and (max-width:767.98px) {
    .vectors-page__top {
        gap: 1rem
    }
}

.vectors-page__top-main {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
    text-align: center;
    gap: 2rem
}

@media screen and (max-width:991.98px) {
    .vectors-page__top-main {
        min-height: auto;
        max-width: none
    }
}

@media screen and (max-width:767.98px) {
    .vectors-page__top-main {
        text-align: left
    }
}

.vectors-page__top-buttons {
    display: flex;
    gap: 2.25rem
}

@media screen and (max-width:991.98px) {
    .vectors-page__top-buttons {
        flex-direction: column;
        gap: .625rem
    }
}

.vectors-page__top-button {
    position: relative;
    display: block;
    width: 250px;
    font-family: "Fira Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    padding: .875rem 1.25rem;
    text-align: center;
    color: #fff;
    background: #3f66ff;
    border: none;
    border-radius: 6px;
    transition: all .25s ease
}

.vectors-page__top-button:hover {
    background: #5198ec
}

.vectors-page__top-button.m--white {
    color: #3f66ff;
    background: #fff
}

.vectors-page__top-button.m--white:hover {
    background: #e0e0e0
}

@media screen and (max-width:575.98px) {
    .vectors-page__top-button {
        width: 100%
    }
}

.vectors-page__top-animation {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 560px
}

@media screen and (max-width:991.98px) {
    .vectors-page__top-animation {
        max-width: none
    }
}

@media screen and (max-width:767.98px) {
    .vectors-page__top-animation {
        min-width: auto
    }
}

.vectors-page__top-animation.m--no-background:before {
    display: none
}

.vectors-page__top-animation.m--violet-spots:before,
.vectors-page__top-animation:before {
    content: "";
    position: absolute;
    display: block;
    top: -180px;
    left: 50%;
    width: 1670px;
    height: 1300px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:991.98px) {

    .vectors-page__top-animation.m--violet-spots:before,
    .vectors-page__top-animation:before {
        top: -360px
    }
}

.vectors-page__top-animation.m--light-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 880px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .vectors-page__top-animation.m--light-spots:before {
        top: -240px
    }
}

.vectors-page__top-animation.m--white-spots:before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    width: 1250px;
    height: 820px;
    transform: translateX(-50%);
    z-index: -1
}

@media screen and (max-width:767.98px) {
    .vectors-page__top-animation.m--white-spots:before {
        top: -240px
    }
}

.vectors-page__top-title {
    color: #f2f2f2;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 0
}

.vectors-page__top-subtitle {
    color: #f2f2f2;
    font-size: 1.25rem;
    letter-spacing: .25rem;
    text-transform: uppercase
}

.vectors-page__top-content {
    padding: 5rem 0;
    font-size: 1.25rem
}

@media screen and (max-width:767.98px) {
    .vectors-page__top-content ul.m--inline li {
        display: block
    }
}

.vectors-page__block {
    position: relative;
    margin-bottom: 10rem
}

@media screen and (max-width:1199.98px) {
    .vectors-page__block {
        margin-bottom: 7rem
    }
}

@media screen and (max-width:991.98px) {
    .vectors-page__block {
        margin-bottom: 5rem
    }
}

@media screen and (max-width:767.98px) {
    .vectors-page__block {
        margin-bottom: 3rem
    }
}