@media (max-width:760px) {
    .mobile-invisible {
        display: none
    }
}

@font-face {
    font-display: block;
    font-family: Raptor V2;
    font-style: normal;
    font-weight: 600;
    src: url(../../fonts/raptor2-semibold.woff2) format("woff2"), url(../../fonts/raptor2-semibold.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: ObjectSans;
    font-style: normal;
    font-weight: 400;
    src: url(../../fonts/objectsans-regular.woff2) format("woff2"), url(../../fonts/objectsans-regular.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: ObjectSans;
    font-style: normal;
    font-weight: 700;
    src: url(../../fonts/objectsans-bold.woff2) format("woff2"), url(../../fonts/objectsans-bold.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: ObjectSans;
    font-style: italic;
    font-weight: 700;
    src: url(../../fonts/objectsans-bold-italic.woff2) format("woff2"), url(../../fonts/objectsans-bold-italic.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: ObjectSans;
    font-style: italic;
    font-weight: 400;
    src: url(../../fonts/objectsans-italic.woff2) format("woff2"), url(../../fonts/objectsans-italic.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: ObjectSans;
    font-style: normal;
    font-weight: 500;
    src: url(../../fonts/objectsans-medium.woff2) format("woff2"), url(../../fonts/objectsans-medium.woff) format("woff")
}

@font-face {
    font-family: swiper-icons;
    font-style: normal;
    font-weight: 400;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff")
}

:root {
    --swiper-theme-color: #007aff
}

.swiper-container {
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%;
    z-index: 1
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-direction: column;
    flex-wrap: wrap
}

.swiper-container-free-mode>.swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out
}

.swiper-container-pointer-events {
    touch-action: pan-y
}

.swiper-container-pointer-events.swiper-container-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-css-mode>.swiper-wrapper {
    -ms-overflow-style: none;
    overflow: auto;
    scrollbar-width: none
}

.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

* {
    -webkit-tap-highlight-color: transparent;
    outline: none
}

html {
    font-family: ObjectSans, sans-serif;
    font-size: calc(12px + .6vw);
    font-weight: 400;
    line-height: 1.4
}

*,
:after,
:before {
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    box-sizing: border-box
}

body,
html {
    height: auto;
    margin: 0;
    min-height: 100%;
    overflow-anchor: none;
    padding: 0
}

body {
    display: flex;
    flex-direction: column
}

.__loaded {
    scroll-behavior: auto
}

::-moz-selection {
    background-color: #40b0e5;
    color: #fff
}

::selection {
    background-color: #40b0e5;
    color: #fff
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
p:first-child {
    margin-top: 0
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child {
    margin-bottom: 0
}

ul {
    list-style: none;
    margin: 0;
    padding: 0
}

a {
    text-decoration: none
}

a,
button {
    color: inherit
}

button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0
}

.page-wrap {
    flex: 1 0 auto;
    padding-top: 120px
}

@media (max-width:760px) {
    .page-wrap {
        padding-top: 80px
    }
}

.page-wrap--full {
    padding-top: 0
}

.__menu-open {
    overflow: hidden
}

._nobr {
    white-space: nowrap
}

@media (max-width:760px) {
    ._br-not-mob br {
        display: none
    }
}

@media (min-width:981px) {
    ._nobr-desktop {
        white-space: nowrap
    }
}

.h1,
.h2,
.h3 {
    font-family: Raptor V2, sans-serif
}

.h1 {
    font-size: calc(25px + 7.5vw);
    line-height: 1;
    margin-left: -.05em
}

[lang=en] .h1 {
    letter-spacing: -.02em;
    line-height: 1.12
}

@media (min-width:1903px) {
    .h1 {
        font-size: 168px
    }
}

.h2 {
    font-size: calc(21px + 4.8vw);
    line-height: 1;
    margin-left: -.065em
}

[lang=en] .h2 {
    letter-spacing: -.02em;
    line-height: 1.12
}

.h3 {
    font-size: calc(19px + 1.8vw);
    line-height: 1.1
}

[lang=en] .h3 {
    letter-spacing: -.02em
}

@media (min-width:1903px) {
    .h3 {
        font-size: 53px
    }
}

.h4 {
    font-size: 13px
}

.h5 {
    font-size: calc(11px + .2vw)
}

[lang=en] .h1-en {
    font-size: calc(25px + 7.5vw);
    line-height: 1;
    margin-left: -.05em
}

[lang=en] [lang=en] .h1-en {
    letter-spacing: -.02em;
    line-height: 1.12
}

@media (min-width:1903px) {
    [lang=en] .h1-en {
        font-size: 168px
    }
}

.i-arrow {
    background-image: url(../../img/svg/arrow_bottom.svg);
    background-repeat: no-repeat;
    background-size: contain;
    height: 18px;
    width: 15px
}

.i-arrow--white {
    background-image: url(../../img/svg/arrow_white.svg)
}

.i-arrow--right {
    background-image: url(../../img/svg/arrow_r.svg);
    height: 15px;
    width: 18px
}

.i-arrow--left {
    background-image: url(../../img/svg/arrow_l.svg);
    height: 15px;
    width: 18px
}

.i-search {
    height: 16px;
    position: relative;
    width: 16px
}

.i-search:after,
.i-search:before {
    content: "";
    position: absolute
}

.i-search:before {
    border: 1px solid #000;
    border-radius: 50%;
    height: 13px;
    left: 0;
    top: 0;
    width: 13px
}

.i-search:after {
    background-color: #000;
    bottom: 0;
    height: 1px;
    right: 0;
    transform: rotate(45deg);
    transform-origin: right center;
    width: 6px
}

.i-curve-arrow {
    align-self: flex-end;
    background-image: url(../../img/svg/arrow-about.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    height: 20px;
    margin-right: 20px;
    width: 26px
}

.i-cross {
    height: 16px;
    position: relative;
    width: 16px
}

.i-cross:after,
.i-cross:before {
    background-color: #000;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    top: 50%;
    width: 19px
}

.i-cross:before {
    transform: rotate(45deg)
}

.i-cross:after {
    transform: rotate(-45deg)
}

.ratio {
    position: relative
}

.ratio-4x3 {
    padding-bottom: 75%
}

.ratio-3x4 {
    padding-bottom: 125%
}

.ratio-3x2 {
    padding-bottom: 66.66%
}

.ratio-2x1 {
    padding-bottom: 50%
}

.ratio-7x5 {
    padding-bottom: 140%
}

.ratio-2x3 {
    padding-bottom: 150%
}

.ratio__img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    transition: transform .8s cubic-bezier(.35, .7, .4, 1);
    width: 100%
}

.padding-xxs {
    padding: calc(8px + .5vw) !important
}

.padding-xs {
    padding: calc(10px + 1.4vw) !important
}

.padding-s {
    padding: calc(13px + 1.9vw) !important
}

.padding {
    padding: calc(20px + 2.8vw) !important
}

.padding-l {
    padding: calc(27px + 3.7vw) !important
}

.padding-xl {
    padding: calc(47px + 3.7vw) !important
}

.padding-xxl {
    padding: min(calc(93px + 7.4vw), 200px) !important
}

.padding-none {
    padding: 0 !important
}

.padding-top-xxs {
    padding-top: calc(8px + .5vw) !important
}

.padding-top-xs {
    padding-top: calc(10px + 1.4vw) !important
}

.padding-top-s {
    padding-top: calc(13px + 1.9vw) !important
}

.padding-top {
    padding-top: calc(20px + 2.8vw) !important
}

.padding-top-l {
    padding-top: calc(27px + 3.7vw) !important
}

.padding-top-xl {
    padding-top: calc(47px + 3.7vw) !important
}

.padding-top-xxl {
    padding-top: min(calc(93px + 7.4vw), 200px) !important
}

.padding-top-none {
    padding-top: 0 !important
}

.padding-right-xxs {
    padding-right: calc(8px + .5vw) !important
}

.padding-right-xs {
    padding-right: calc(10px + 1.4vw) !important
}

.padding-right-s {
    padding-right: calc(13px + 1.9vw) !important
}

.padding-right {
    padding-right: calc(20px + 2.8vw) !important
}

.padding-right-l {
    padding-right: calc(27px + 3.7vw) !important
}

.padding-right-xl {
    padding-right: calc(47px + 3.7vw) !important
}

.padding-right-xxl {
    padding-right: min(calc(93px + 7.4vw), 200px) !important
}

.padding-right-none {
    padding-right: 0 !important
}

.padding-bottom-xxs {
    padding-bottom: calc(8px + .5vw) !important
}

.padding-bottom-xs {
    padding-bottom: calc(10px + 1.4vw) !important
}

.padding-bottom-s {
    padding-bottom: calc(13px + 1.9vw) !important
}

.padding-bottom {
    padding-bottom: calc(20px + 2.8vw) !important
}

.padding-bottom-l {
    padding-bottom: calc(27px + 3.7vw) !important
}

.padding-bottom-xl {
    padding-bottom: calc(47px + 3.7vw) !important
}

.padding-bottom-xxl {
    padding-bottom: min(calc(93px + 7.4vw), 200px) !important
}

.padding-bottom-none {
    padding-bottom: 0 !important
}

.padding-v-xxs {
    padding-bottom: calc(8px + .5vw) !important;
    padding-top: calc(8px + .5vw) !important
}

.padding-v-xs {
    padding-bottom: calc(10px + 1.4vw) !important;
    padding-top: calc(10px + 1.4vw) !important
}

.padding-v-s {
    padding-bottom: calc(13px + 1.9vw) !important;
    padding-top: calc(13px + 1.9vw) !important
}

.padding-v {
    padding-bottom: calc(20px + 2.8vw) !important;
    padding-top: calc(20px + 2.8vw) !important
}

.padding-v-l {
    padding-bottom: calc(27px + 3.7vw) !important;
    padding-top: calc(27px + 3.7vw) !important
}

.padding-v-xl {
    padding-bottom: calc(47px + 3.7vw) !important;
    padding-top: calc(47px + 3.7vw) !important
}

.padding-v-xxl {
    padding-bottom: min(calc(93px + 7.4vw), 200px) !important;
    padding-top: min(calc(93px + 7.4vw), 200px) !important
}

.padding-v-none {
    padding-bottom: 0 !important;
    padding-top: 0 !important
}

.text-menu {
    font-size: calc(10px + .5vw)
}

.text-p-special {
    font-family: Raptor V2, sans-serif;
    font-size: calc(9px + 3.5vw);
    line-height: 1.1
}

[lang=en] .text-p-special {
    letter-spacing: -.02em
}

.text-p-big {
    font-size: calc(15px + .8vw)
}

@media (min-width:1903px) {
    .text-p-big {
        font-size: 30px
    }
}

.text-p {
    font-size: calc(12px + .6vw)
}

.text-p-sm {
    font-size: calc(9px + .7vw)
}

.text-btn {
    font-size: calc(11px + .4vw);
    text-transform: uppercase
}

[lang=ru] .text-indent--ru {
    text-indent: 60px
}

@media (max-width:760px) {
    [lang=ru] .text-indent--ru {
        text-indent: 40px
    }
}

.center {
    display: flex;
    justify-content: center
}

.counter-reset {
    counter-reset: count count2
}

.padding-page-top {
    padding-top: 180px
}

@media (max-width:760px) {
    .padding-page-top {
        padding-top: 140px
    }
}

.about-pics__item {
    margin-left: calc(10px + 2.8vw) !important;
    margin-right: calc(10px + 2.8vw) !important
}

.about-pics__item:nth-child(odd) .about-pics__pic {
    padding-bottom: 66%;
    width: calc(230px + 36.1vw)
}

.about-pics__item:nth-child(2n) .about-pics__pic {
    padding-bottom: 150%;
    width: calc(123px + 19.3vw)
}

.about-pics__pic {
    border-radius: 20px;
    overflow: hidden;
    width: 100%
}

.about-pics__pic,
.article-card {
    position: relative
}

.article-card._hover .article-card__img {
    transform: scale(1.08)
}

.article-card._hide {
    display: none
}

.article-card__image {
    border-radius: 20px;
    overflow: hidden;
    position: relative
}

.article-card__author {
    font-size: calc(11px + .2vw);
    padding: calc(8px + .5vw) 0
}

.article-card__text {
    padding-top: calc(13px + 1.9vw);
    position: relative
}

.article-card__link {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.article-card__img:before {
    background-image: linear-gradient(180deg, #cad1da, #def1f5);
    content: " ";
    display: block;
    height: 100%;
    position: absolute;
    width: 100%
}

.article,
.article__container {
    position: relative
}

.article__back-container {
    bottom: 0;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0
}

.article__header {
    padding-bottom: calc(47px + .9vw);
    padding-top: calc(60px + 8.3vw)
}

.article__back {
    padding-top: calc(60px + 8.3vw);
    top: 0;
    width: 100%
}

@media (max-width:980px) {
    .article__back {
        display: none
    }
}

.article__back-mob {
    padding-bottom: 80px
}

@media (min-width:981px) {
    .article__back-mob {
        display: none
    }
}

.article__heading {
    font-family: Raptor V2, sans-serif;
    font-size: calc(9px + 3.5vw);
    line-height: 1.1;
    margin: 0;
    padding-bottom: calc(27px + 3.7vw)
}

[lang=en] .article__heading {
    letter-spacing: -.02em
}

@media (min-width:1675px) {
    .container-grid .article__heading {
        font-size: 80px
    }
}

.article__sub {
    -moz-column-gap: calc(20px + 2.8vw);
    column-gap: calc(20px + 2.8vw);
    display: flex;
    flex-wrap: wrap;
    padding-bottom: calc(8px + .5vw);
    row-gap: calc(13px + 1.9vw)
}

.article__author {
    font-size: calc(10px + .5vw)
}

.article__author:before {
    content: url(../../img/svg/author.svg);
    display: inline-block;
    padding-right: 12px
}

.article__solution {
    font-size: calc(10px + .5vw)
}

@media (max-width:760px) {
    .article__solution {
        align-self: flex-end;
        display: flex
    }
}

[lang=en] .article__cover {
    border-radius: 20px 0 0 20px;
    overflow: hidden;
    position: relative
}

@media (max-width:980px) {
    [lang=en] .article__cover {
        border-radius: 0
    }
}

@media (min-width:1675px) {
    [lang=en] .article__cover {
        border-radius: 20px
    }
}

.article__summary {
    font-size: calc(15px + .8vw);
    padding-bottom: calc(20px + 2.8vw)
}

@media (min-width:1903px) {
    .article__summary {
        font-size: 30px
    }
}

.article__footer {
    border-top: 1px solid #000;
    padding-top: calc(8px + .5vw)
}

.back {
    align-items: center;
    display: inline-flex;
    font-size: calc(11px + .4vw);
    pointer-events: auto;
    text-transform: uppercase
}

@media (pointer:fine) {
    .back:hover .back__icon {
        -webkit-animation-name: button-arrow-translate-reverse;
        animation-name: button-arrow-translate-reverse
    }
}

.back__icon {
    align-items: center;
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
    -webkit-animation-duration: .4s;
    animation-duration: .4s;
    -webkit-animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    display: inline-flex;
    margin-right: 20px;
    transform: translateX(0)
}

.burger {
    height: 40px;
    position: relative;
    width: 40px
}

.burger__container {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.burger__burger {
    opacity: 1;
    position: relative;
    transition: opacity .3s;
    width: 30px
}

.burger__burger:after,
.burger__burger:before {
    background-color: #000;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%
}

.burger__burger:before {
    top: calc(50% - 6px)
}

.burger__burger:after {
    top: calc(50% + 6px)
}

.burger._active .burger__burger {
    opacity: 0
}

.burger__cross {
    height: 21px;
    opacity: 0;
    position: absolute;
    transform: rotate(45deg);
    transition: opacity .3s;
    width: 21px
}

.burger__cross:after,
.burger__cross:before {
    background-color: #000;
    content: "";
    position: absolute
}

.burger__cross:before {
    height: 100%;
    left: calc(50% - 1px);
    top: 0;
    width: 1px
}

.burger__cross:after {
    height: 1px;
    left: 0;
    top: 50%;
    width: 100%
}

.burger._active .burger__cross {
    opacity: 1
}

.button {
    align-items: center;
    display: inline-flex
}

.button__text {
    font-size: calc(11px + .4vw);
    text-transform: uppercase
}

.button__arrow {
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
    -webkit-animation-duration: .4s;
    animation-duration: .4s;
    -webkit-animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    background-image: url(../../img/svg/arrow_r.svg);
    background-repeat: no-repeat;
    background-size: contain;
    height: 15px;
    transform: translateX(0);
    width: 18px
}

.button__text+.button__arrow {
    margin-left: 1.1em
}

@media (pointer:fine) {
    .button:hover .button__arrow {
        -webkit-animation-name: button-arrow-translate;
        animation-name: button-arrow-translate
    }
}

@-webkit-keyframes button-arrow-translate {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(100%)
    }

    71% {
        opacity: 0;
        transform: translateX(-60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes button-arrow-translate {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(100%)
    }

    71% {
        opacity: 0;
        transform: translateX(-60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@-webkit-keyframes button-arrow-translate-reverse {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(-100%)
    }

    71% {
        opacity: 0;
        transform: translateX(60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes button-arrow-translate-reverse {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(-100%)
    }

    71% {
        opacity: 0;
        transform: translateX(60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.contacts__grid {
    grid-row-gap: calc(20px + 2.8vw);
    display: grid;
    grid-template-columns: 28% 1fr 28%
}

@media (min-width:761px) and (max-width:980px) {
    .contacts__grid {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:760px) {
    .contacts__grid {
        grid-template-columns: 1fr
    }
}

.contacts__address-text,
.contacts__link,
.contacts__share {
    font-size: calc(15px + .8vw)
}

@media (min-width:1903px) {

    .contacts__address-text,
    .contacts__link,
    .contacts__share {
        font-size: 30px
    }
}

.contacts__link-subtext {
    font-size: calc(10px + .5vw);
    margin-top: 8px
}

.contacts__list-item:not(:last-child) {
    margin-bottom: calc(13px + 1.9vw)
}

@media (min-width:981px) {
    .contacts__address {
        margin: 0 auto;
        width: 65%
    }
}

.contacts__address-text {
    margin-bottom: 15px
}

.contacts__maps {
    -moz-column-gap: 30px;
    column-gap: 30px;
    font-size: calc(10px + .5vw)
}

.contacts__arrow {
    margin-left: 1.1em
}

[lang=ru] .contacts__outro {
    padding-bottom: min(calc(93px + 7.4vw), 200px)
}

[lang=en] .contacts__outro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh
}

.contacts__outro-container {
    width: 100%
}

.container-grid {
    display: grid;
    grid-template-columns: calc(7px + 2.3vw) calc(-150px + 31.3vw) 1fr calc(-150px + 31.3vw) calc(7px + 2.3vw);
    margin: 0 auto;
    max-width: 1674px
}

@media (max-width:980px) {
    .container-grid {
        grid-template-columns: calc(7px + 2.3vw) 1fr calc(7px + 2.3vw)
    }
}

@media (min-width:1675px) {
    .container-grid {
        grid-template-columns: 37px 350px 1fr 350px 37px
    }
}

.container-grid__cell-1 {
    grid-column-end: 3;
    grid-column-start: 2
}

.container-grid__cell-2 {
    grid-column-end: 4;
    grid-column-start: 3;
    min-width: 0
}

@media (max-width:980px) {
    .container-grid__cell-2 {
        grid-column-end: 3;
        grid-column-start: 2;
        width: 100%
    }
}

.container-grid__cell-3 {
    grid-column-end: 5;
    grid-column-start: 3
}

@media (max-width:980px) {
    .container-grid__cell-3 {
        grid-column-end: 3;
        grid-column-start: 2
    }
}

.container-grid__cell-4 {
    grid-column-end: 6;
    grid-column-start: 3
}

@media (max-width:980px) {
    .container-grid__cell-4 {
        grid-column-end: 4;
        grid-column-start: 1
    }
}

@media (min-width:1675px) {
    .container-grid__cell-4 {
        grid-column-end: 5;
        grid-column-start: 3
    }
}

.container {
    margin: 0 auto;
    max-width: 1902px;
    padding-left: calc(7px + 2.3vw);
    padding-right: calc(7px + 2.3vw)
}

@media (min-width:1903px) {
    .container {
        padding-left: 51px;
        padding-right: 51px
    }
}

.container--s {
    max-width: 1360px
}

@media (min-width:1361px) {
    .container--s {
        padding-left: 38px;
        padding-right: 38px
    }
}

.container--l {
    max-width: unset
}

.container--left-xl {
    padding-left: 26%
}

.container--left-desktop-l {
    max-width: unset
}

@media (min-width:1451px) {
    .container--left-desktop-l {
        padding-left: calc(-680px + 50vw)
    }
}

@media (min-width:1666px) {
    .content {
        font-size: 22px
    }
}

.content figure:first-child,
.content h2:first-child,
.content h3:first-child,
.content h4:first-child,
.content ol:first-child,
.content p:first-child,
.content ul:first-child {
    margin-top: 0
}

.content figure:last-child,
.content h2:last-child,
.content h3:last-child,
.content h4:last-child,
.content ol:last-child,
.content p:last-child,
.content ul:last-child {
    margin-bottom: 0
}

.content p {
    margin-bottom: calc(10px + 1.3vw);
    margin-top: calc(10px + 1.3vw)
}

.content ol,
.content ul {
    margin-bottom: calc(13px + 1.9vw);
    margin-top: calc(13px + 1.9vw);
    padding-left: 40px
}

@media (max-width:760px) {

    .content ol,
    .content ul {
        padding-left: 0
    }
}

.content ol li,
.content ul li {
    margin-bottom: calc(7px + .9vw);
    margin-top: calc(7px + .9vw);
    position: relative
}

.content ol li:last-child,
.content ul li:last-child {
    margin-bottom: 0
}

.content li,
.content ul {
    list-style: none
}

.content ul>li {
    padding-left: 27px
}

@media (max-width:760px) {
    .content ul>li {
        padding-left: 25px
    }
}

.content ul>li:before {
    background-color: currentColor;
    content: "";
    display: block;
    height: 8px;
    left: 0;
    position: absolute;
    top: .5em;
    width: 8px
}

@media (max-width:760px) {
    .content ul>li:before {
        height: 6px;
        top: .4em;
        width: 6px
    }
}

.content ol {
    counter-reset: content-ol
}

.content ol>li {
    padding-left: 37px
}

@media (max-width:760px) {
    .content ol>li {
        padding-left: 32px
    }
}

.content ol>li:before {
    content: counter(content-ol) ".";
    counter-increment: content-ol;
    left: 0;
    position: absolute;
    top: 0
}

.content h2 {
    font-size: calc(16px + 1.1vw);
    font-weight: 500;
    line-height: 1.1;
    margin-bottom: calc(20px + 2.8vw);
    margin-top: calc(27px + 3.7vw)
}

.content h3 {
    font-size: calc(15px + .8vw);
    margin-bottom: calc(10px + 1.4vw)
}

.content h3,
.content h4 {
    font-weight: 500;
    line-height: 1.4;
    margin-top: calc(20px + 2.8vw)
}

.content h4 {
    font-size: calc(12px + .6vw);
    margin-bottom: calc(13px + 1.9vw)
}

.content a {
    background: linear-gradient(0deg, currentColor, currentColor) no-repeat 0 100%;
    background-size: 100% 1px
}

.content a:visited {
    color: grey
}

.content img {
    height: auto;
    max-width: 100%
}

.content figure {
    margin: calc(20px + 2.8vw) 0 1.4vw;
    max-width: 100%
}

.content figure img {
    display: block
}

.content figcaption {
    font-size: calc(11px + .3vw);
    margin-bottom: 1.4vw;
    margin-top: 1.4vw
}

.content .table-wrap {
    max-width: 100%;
    overflow: auto
}

.content table {
    border-collapse: collapse;
    font-size: calc(11px + .4vw);
    min-width: 100%
}

@media (min-width:1666px) {
    .content table {
        font-size: 18px
    }
}

.content thead {
    background-color: #000;
    color: #fff
}

.content td,
.content th {
    border: 1px solid #000;
    padding: 8px 12px
}

.down {
    align-items: center;
    border-radius: 50%;
    display: flex;
    height: 50px;
    justify-content: center;
    width: 100px
}

[data-enter-scale] {
    overflow: hidden;
    position: relative
}

.enter-scale {
    transform: scale(1.08);
    transition: transform 1.3s cubic-bezier(.35, .7, .4, 1) .1s
}

[data-enter-scale].in-view .enter-scale {
    transform: scale(1)
}

.filters__item:not(:last-child) {
    margin-bottom: 50px
}

.filters__row {
    display: flex;
    flex-wrap: wrap;
    margin: -5px
}

.filters__filter {
    padding: 5px
}

.filters__count {
    font-size: calc(9px + .7vw)
}

.footer {
    flex-shrink: 0;
    overflow: hidden;
    position: relative
}

.footer__top {
    display: flex;
    padding-bottom: calc(27px + 3.7vw)
}

@media (max-width:760px) {
    .footer__top {
        flex-direction: column
    }
}

.footer__middle {
    display: flex
}

.footer__bottom {
    display: flex;
    font-size: 16px;
    padding: calc(13px + 1.9vw) 0
}

@media (max-width:760px) {
    .footer__bottom {
        font-size: 11px
    }
}

.footer__col {
    width: 50%
}

.footer__col:first-child {
    padding-right: calc(10px + 1.4vw)
}

@media (max-width:760px) {
    .footer__col--mob-100 {
        width: 100%
    }

    .footer__col--mob-100:not(:first-child) {
        padding-top: calc(13px + 1.9vw)
    }
}

.footer__logo {
    display: inline-block
}

.footer__logo img {
    display: block;
    height: 64px;
    width: auto
}

@media (max-width:760px) {
    .footer__logo img {
        height: 48px
    }
}

.footer__social {
    display: inline-block;
    padding-top: 10px
}

.footer__social:not(:last-child) {
    padding-right: 45px
}

@media (max-width:760px) {
    .footer__social:not(:last-child) {
        padding-right: 30px
    }
}

.footer__social img {
    display: block
}

.footer__contacts {
    padding-right: 20px;
    width: 50%
}

@media (min-width:761px) {
    .footer__contacts {
        padding-right: 50px
    }
}

@media (max-width:350px) {
    .footer__contacts {
        width: 65%
    }
}

.footer__address {
    margin-bottom: 10px
}

.footer__maps {
    font-size: calc(11px + .2vw);
    gap: 30px
}

@media (max-width:760px) {
    .footer__maps {
        flex-direction: column;
        gap: 12px
    }
}

.footer__nav {
    width: 50%
}

@media (max-width:350px) {
    .footer__nav {
        width: 35%
    }
}

.footer__nav-item {
    padding-bottom: calc(9px + .2vw)
}

.gradient {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -2
}

.grid {
    display: grid
}

.grid--articles {
    gap: calc(27px + 3.7vw) calc(13px + 1.9vw);
    grid-template-columns: repeat(3, 1fr)
}

@media (max-width:980px) {
    .grid--articles {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:760px) {
    .grid--articles {
        grid-template-columns: 1fr
    }
}

.header {
    background-color: #fff;
    left: 0;
    position: fixed;
    top: 0;
    transform: translateY(0);
    transition: background-color .3s linear, transform .3s ease;
    width: 100%;
    z-index: 1000
}

.__header-top .header {
    background-color: transparent
}

.__header-hide .header {
    transform: translateY(-100%)
}

.__menu-open .header {
    transform: translateY(0)
}

[lang=en] .header {
    background-color: transparent
}

.header__container {
    align-items: center;
    display: flex;
    height: 72px;
    justify-content: space-between
}

@media (max-width:760px) {
    .header__container {
        height: 80px
    }
}

.header__logo,
.header__logo>img {
    display: block
}

.header__right {
    align-items: center;
    display: flex;
    height: 120px
}

@media (max-width:760px) {
    .header__right {
        height: 80px
    }
}

@media (max-width:1130px) {
    .header__nav {
        display: none
    }
}

.header__ul {
    display: flex
}

.header__li {
    position: relative
}

.header__li:not(:last-child) {
    margin-right: 10px
}

.header__li._hover:before {
    bottom: -60%;
    content: "";
    display: block;
    height: 60%;
    position: absolute;
    width: 100%
}

.header__link {
    display: block;
    padding: 1em 20px
}

.header__link:hover .header__link-text--hover-stroked:before {
    transform: scaleX(1)
}

.header__link-text--hover-stroked {
    display: inline-block;
    position: relative
}

.header__link-text--hover-stroked:before {
    background-color: currentColor;
    bottom: .05em;
    content: " ";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .25s;
    width: 100%
}

.header__link-arrow {
    align-items: center;
    border: 1px solid #000;
    border-radius: 50%;
    display: inline-flex;
    height: 18px;
    justify-content: center;
    margin-left: 10px;
    transition: background-color .3s linear;
    width: 18px
}

[lang=en] .header__link:hover .header__link-arrow {
    background-color: #000
}

.header__link-arrow-icon {
    stroke: #000;
    transition: stroke .3s linear
}

[lang=en] .header__link:hover .header__link-arrow-icon {
    stroke: #fff
}

.header__search-hide {
    background: #fff;
    height: 36px;
    opacity: 0;
    position: absolute;
    top: -100%;
    transition: transform .2s;
    width: 36px
}

.__menu-open .header__search-hide {
    opacity: 1;
    pointer-events: none;
    transform: translateY(100%)
}

.header__search {
    display: grid;
    margin: 0 10px 0 70px;
    overflow: hidden;
    padding: 10px;
    position: relative
}

@media (max-width:1130px) {
    .header__search {
        margin-right: 20px
    }
}

.__menu-open .header__search {
    pointer-events: none
}

.header__search-cross,
.header__search-icon {
    grid-area: 1/2;
    transition: transform .3s cubic-bezier(.35, .755, .42, .95), opacity .3s cubic-bezier(.35, .755, .42, .95)
}

.header__search-icon {
    opacity: 1;
    transform: translateY(0)
}

.header__search._active .header__search-icon {
    opacity: 0;
    transform: translateY(-36px)
}

.header__search-cross {
    opacity: 0;
    transform: translateY(36px)
}

.header__search._active .header__search-cross {
    opacity: 1;
    transform: translateY(0)
}

.header__lang {
    font-size: 17px;
    margin-right: 24px;
    padding: 10px
}

@media (min-width:1131px) {
    .header__lang {
        display: none
    }
}

.header__lang.__hide {
    display: none
}

@media (min-width:1131px) {
    .header__burger {
        display: none
    }
}

@media (min-width:761px) {
    .history__header {
        width: 60%
    }
}

.history__heading {
    font-family: Raptor V2, sans-serif;
    font-size: calc(19px + 1.8vw);
    line-height: 1.1;
    margin-bottom: calc(47px + 3.7vw)
}

@media (min-width:1903px) {
    .history__heading {
        font-size: 53px
    }
}

[lang=en] .history__heading {
    letter-spacing: -.02em
}

.history__invite {
    display: flex;
    font-size: calc(11px + .4vw);
    margin-bottom: calc(27px + 3.7vw);
    padding-left: 25%;
    text-transform: uppercase
}

.history__grid {
    display: grid;
    grid-template-columns: 1fr 3fr
}

@media (max-width:760px) {
    .history__grid {
        grid-template-columns: 1fr
    }

    .history__left {
        display: none
    }
}

.history__num:before {
    content: "19";
    opacity: 1;
    position: relative;
    transform: translateY(0)
}

.history__num:after,
.history__num:before {
    -webkit-text-stroke: 4px transparent;
    background: #000;
    -webkit-background-clip: text;
    color: #fff;
    display: block;
    font-size: calc(36px + 7.9vw);
    line-height: .85;
    text-align: right;
    transition: .2s cubic-bezier(.45, .05, .55, .95)
}

.history__num:after {
    content: "20";
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(70%)
}

.history__num.__ready:before {
    opacity: 0;
    transform: translateY(-70%)
}

.history__num.__ready:after {
    opacity: 1;
    transform: translateY(0)
}

.history__century-wrapper {
    position: -webkit-sticky;
    position: sticky;
    top: calc(50vh - 18px - 3.95vw)
}

.history__right {
    grid-gap: calc(18px + 2.9vw);
    display: grid;
    will-change: transform
}

.history__right-item-wrapper-1 {
    height: 70vh
}

@media (max-width:760px) {
    .history__right-item-wrapper-1 {
        height: unset
    }
}

.history__right-item-wrapper-2 {
    height: 100%;
    position: relative;
    width: 100%
}

@media (max-width:760px) {
    .history__right-item-wrapper-2 {
        height: unset;
        width: unset
    }
}

.history__right-item-wrapper {
    position: -webkit-sticky;
    position: sticky;
    top: calc(50vh - 18px - 3.95vw);
    will-change: transform
}

@media (max-width:760px) {
    .history__right-item-wrapper {
        position: unset;
        top: unset;
        will-change: unset
    }
}

.history__right-item {
    display: grid;
    grid-template-columns: repeat(3, 1fr)
}

@media (max-width:760px) {
    .history__right-item {
        grid-row-gap: calc(20px + 2.8vw)
    }
}

.history__year {
    font-size: calc(36px + 7.9vw);
    line-height: .85
}

@media (min-width:761px) {
    .history__year-century {
        display: none
    }
}

.history__text {
    border-bottom: 1px solid #000;
    font-size: calc(15px + .8vw);
    grid-column-end: 4;
    grid-column-start: 2;
    padding-bottom: calc(20px + 2.8vw)
}

@media (min-width:1903px) {
    .history__text {
        font-size: 30px
    }
}

@media (max-width:760px) {
    .history__text {
        grid-column-start: 1
    }
}

.hr {
    background-color: #000;
    height: 1px
}

.hr.hr__animated {
    transform: scaleX(.6);
    transition: transform .45s ease-out
}

.hr.hr__animated.is-inview {
    transform: scaleX(1)
}

.hr--limited {
    max-width: 1360px
}

.intro {
    position: relative
}

.intro--full {
    min-height: calc(var(--vh, 1vh)*120)
}

.intro__content {
    position: relative;
    z-index: 0
}

.intro__content--full {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: calc(var(--vh, 1vh)*100)
}

.intro__top {
    padding-top: calc(127px + 3.7vw)
}

.intro__slogan {
    padding-bottom: min(calc(93px + 7.4vw), 200px)
}

.intro__h,
.intro__slogan {
    margin-bottom: 0;
    margin-top: 0
}

.intro__slogan--s {
    max-width: 800px
}

.intro__h {
    padding-bottom: calc(13px + 1.9vw)
}

.intro__bottom {
    position: relative
}

.intro__scroll {
    bottom: 64px;
    position: absolute
}

[lang=en] .intro__scroll {
    align-items: center;
    display: flex;
    height: 120px;
    opacity: 0;
    position: absolute;
    right: calc(7px + 2.3vw);
    top: calc(var(--vh)*100 - 120px);
    transition: opacity .3s
}

@media (max-width:760px) {
    [lang=en] .intro__scroll {
        height: 80px;
        top: calc(var(--vh)*100 - 80px)
    }
}

.__loaded .intro__scroll {
    opacity: 1
}

.intro__down-text {
    display: inline-block;
    font-size: calc(11px + .4vw);
    margin-right: calc(8px + .5vw);
    text-transform: uppercase
}

.intro__down-arrow {
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
    -webkit-animation-duration: 1.6s;
    animation-duration: 1.6s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: button-arrow-translate-y;
    animation-name: button-arrow-translate-y;
    -webkit-animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    animation-timing-function: cubic-bezier(.7, .12, .41, .76)
}

[lang=en] .intro__down-arrow {
    display: inline-block;
    flex-shrink: 0
}

@-webkit-keyframes button-arrow-translate-y {
    0% {
        opacity: 1;
        transform: translateY(0)
    }

    5% {
        opacity: 1
    }

    19% {
        opacity: 0;
        transform: translateY(100%)
    }

    20% {
        opacity: 0;
        transform: translateY(-60%)
    }

    25% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes button-arrow-translate-y {
    0% {
        opacity: 1;
        transform: translateY(0)
    }

    5% {
        opacity: 1
    }

    19% {
        opacity: 0;
        transform: translateY(100%)
    }

    20% {
        opacity: 0;
        transform: translateY(-60%)
    }

    25% {
        opacity: 1;
        transform: translateY(0)
    }
}

.intro__author {
    display: flex;
    font-size: calc(10px + .5vw)
}

.intro__author-name {
    padding-left: 15px
}

.intro__author-name:before {
    content: url(../../img/svg/author.svg);
    display: inline-block;
    padding-right: 12px
}

.introduction__header {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: none;
    padding-bottom: min(calc(93px + 7.4vw), 200px);
    padding-top: min(calc(13px + 13vw), 200px);
    position: relative
}

.introduction__heading {
    font-family: Raptor V2, sans-serif;
    font-size: calc(9px + 3.5vw);
    line-height: 1.1;
    margin: 0 auto;
    max-width: 1440px;
    padding-bottom: calc(47px + 3.7vw);
    position: relative;
    text-align: center
}

[lang=en] .introduction__heading {
    letter-spacing: -.02em
}

@media (min-width:1601px) {
    .introduction__heading {
        font-size: 65px
    }
}

.introduction__wall {
    padding-top: calc(47px + 3.7vw)
}

.map-links {
    display: flex
}

.map-links__link {
    font-size: inherit
}

.map-links__link:hover .map-links__arrow {
    background-color: #000
}

.map-links__link path {
    transition: stroke .5s
}

.map-links__link:hover path {
    stroke: #fff
}

.map-links__arrow {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 50%;
    display: inline-flex;
    margin-left: 6px;
    transition: background-color .5s
}

.map-links__segment {
    align-items: center;
    display: inline-flex
}

.member__photo {
    border-radius: 20px;
    overflow: hidden;
    position: relative
}

.member__name,
.member__photo {
    margin-bottom: calc(8px + .5vw)
}

.member__name {
    border-bottom: 1px solid #000;
    flex: 1 1 auto;
    padding-bottom: calc(8px + .5vw)
}

.member__position {
    font-size: 13px
}

.member__img-hover {
    opacity: 0;
    transition: .2s
}

.member:hover .member__img-hover {
    opacity: 1
}

.menu {
    position: fixed;
    z-index: 799
}

@media (min-width:1131px) {
    .menu {
        display: none
    }
}

.menu__inner {
    background-color: #fff;
    min-height: 53vh;
    padding-bottom: 120px;
    padding-top: 120px
}

@media (max-width:760px) {
    .menu__inner {
        padding-bottom: 0px;
        padding-top: 111px
    }
}

[lang=en] .menu__inner {
    align-items: center;
    display: flex
}

[lang=en] .menu__inner>* {
    width: 100%
}

.menu__list {
    margin-bottom: 40px
}

.menu__list-item {
    padding-bottom: .7em;
    padding-top: .5em
}

.menu__link {
    display: block;
    font-family: Raptor V2, sans-serif;
    font-size: 40px
}

[lang=en] .menu__link {
    letter-spacing: -.02em
}

.menu__submenu {
    display: none;
    padding-bottom: .5em;
    padding-top: 1em
}

.menu__submenu-item {
    padding-bottom: .3em;
    padding-top: .3em
}

.menu__submenu-link {
    display: block;
    font-size: 14px;
    padding-bottom: .5em;
    padding-top: .5em
}

.outro {
    position: relative
}

.outro--bordered {
    border-top: 1px solid #000
}

.outro__container {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding: min(calc(93px + 7.4vw), 200px) calc(7px + 2.3vw)
}

@media (min-width:761px) {
    .outro__container {
        max-width: 80%
    }
}

[lang=en] .outro__container {
    justify-content: center;
    min-height: 100vh
}

.outro__caption {
    font-size: calc(11px + .4vw);
    padding-bottom: calc(10px + 1.4vw);
    text-transform: uppercase
}

.outro__h {
    line-height: 1;
    text-align: center;
    width: 100%
}

[lang=en] .outro__h {
    font-size: calc(21px + 4.2vw)
}

@media (min-width:761px) {
    .outro__half {
        width: 50%
    }
}

.outro__btn {
    padding: calc(10px + 1.4vw)
}

.pixeljam__link {
    color: #000;
    text-decoration: none
}

.pixeljam__can {
    display: inline-block;
    margin-left: 6px
}

.pixeljam__can-body,
.pixeljam__can-cap {
    display: block;
    width: 11px
}

.pixeljam__can-body {
    background: linear-gradient(97.7deg, #a773ec 5.96%, #0fa9cb 94.04%);
    height: 9px
}

.pixeljam__can-cap {
    background-color: #000;
    height: 2px;
    margin-bottom: 2px;
    transform: translateZ(0) rotate(0deg);
    transform-origin: right center;
    transition: .2s
}

a:hover .pixeljam__can-cap {
    transform: translate3d(1px, -2px, 0) rotate(22deg)
}

.rail-container {
    overflow: hidden;
    padding: calc(27px + 3.7vw) 0;
    position: relative
}

@media (max-width:760px) {
    .rail-container {
        padding-bottom: calc(20px + 2.8vw)
    }
}

.rail-perspective {
    perspective: 1000px
}

.rail:after,
.rail:before {
    background: currentColor;
    content: " ";
    display: block;
    height: 1px;
    position: absolute
}

.rail:before {
    top: 0
}

.rail:after {
    bottom: 0
}

.rail+.rail:before {
    display: none
}

.rail__row,
.rail__wrap {
    display: flex
}

.rail__row {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.rail__item {
    align-items: center;
    display: flex;
    margin-left: calc(20px + 2.8vw);
    margin-right: calc(20px + 2.8vw)
}

.screen {
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    transition: visibility 0s .5s;
    visibility: hidden;
    width: 100%
}

.screen._open {
    transition: visibility 0s 0s;
    visibility: visible
}

.screen--search {
    z-index: 800
}

.screen__underlay {
    background-color: #000;
    cursor: pointer;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .5s;
    width: 100%
}

.screen._open .screen__underlay {
    opacity: .1
}

.screen._open .screen__underlay--dark {
    opacity: .25
}

.screen__content {
    background-color: #fff;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    max-height: 100vh;
    overflow-y: auto;
    position: relative;
    transition-duration: 0s;
    width: 100%
}

.screen._animating .screen__content {
    transition-duration: .5s
}

.screen._open .screen__content {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0)
}

.screen._animating:not(._open) .screen__content {
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0)
}

.search-dropdown {
    padding-top: 120px
}

@media (max-width:760px) {
    .search-dropdown {
        padding-top: 80px
    }
}

.search-dropdown__form {
    padding-bottom: calc(13px + 1.9vw)
}

.search-dropdown__label {
    align-items: center;
    display: flex
}

.search-dropdown__input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-size: calc(15px + .8vw);
    line-height: normal;
    margin-left: calc(8px + .5vw);
    padding: 0;
    width: 100%
}

@media (min-width:1903px) {
    .search-dropdown__input {
        font-size: 30px
    }
}

.search-dropdown__input::-moz-placeholder {
    color: #999;
    opacity: 1
}

.search-dropdown__input::placeholder {
    color: #999;
    opacity: 1
}

.search-dropdown__list {
    padding-left: 16px
}

.search-dropdown__list a {
    display: inline-block;
    font-size: calc(15px + .8vw);
    position: relative
}

@media (min-width:1903px) {
    .search-dropdown__list a {
        font-size: 30px
    }
}

.search-dropdown__list a:before {
    background-color: currentColor;
    bottom: .05em;
    content: " ";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .25s;
    width: 100%
}

.search-dropdown__list a:focus:before,
.search-dropdown__list a:hover:before {
    transform: scaleX(1)
}

.search-dropdown__list li {
    padding-bottom: calc(8px + .5vw);
    padding-left: calc(8px + .5vw)
}

.search-dropdown__list li:last-child {
    padding-bottom: calc(20px + 2.8vw)
}

.search-field {
    display: block
}

.search-field__input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-family: Raptor V2, sans-serif;
    font-size: calc(9px + 3.5vw);
    line-height: 1.1;
    line-height: normal;
    padding: 0;
    width: 100%
}

[lang=en] .search-field__input {
    letter-spacing: -.02em
}

.search-field__input::-moz-placeholder {
    color: #b3b3b3;
    opacity: 1
}

.search-field__input::placeholder {
    color: #b3b3b3;
    opacity: 1
}

.search-results__info {
    padding-bottom: calc(47px + 3.7vw);
    padding-top: calc(10px + 1.4vw)
}

.search-results__count {
    font-size: calc(10px + .5vw);
    margin: 0
}

.search-results__count+.search-results__empty {
    margin-top: calc(47px + 3.7vw)
}

.search-results__empty {
    font-size: calc(15px + .8vw);
    margin: 0;
    padding-bottom: calc(13px + 1.9vw);
    text-align: center
}

@media (min-width:1903px) {
    .search-results__empty {
        font-size: 30px
    }
}

.search-results__heading {
    font-weight: 400;
    margin-bottom: calc(10px + 1.4vw)
}

.search-results__heading,
.search-results__solution-list {
    font-size: calc(9px + .7vw)
}

.search-results__solution-list a {
    display: inline-block;
    position: relative
}

.search-results__solution-list a:before {
    background-color: currentColor;
    bottom: .05em;
    content: " ";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .25s;
    width: 100%
}

.search-results__solution-list a:focus:before,
.search-results__solution-list a:hover:before {
    transform: scaleX(1)
}

.share--sm {
    font-size: calc(9px + .7vw)
}

.share--big {
    font-size: calc(15px + .8vw)
}

@media (min-width:1903px) {
    .share--big {
        font-size: 30px
    }
}

.share__title {
    display: inline-block;
    padding-right: 1em
}

.share__links {
    align-items: flex-end;
    display: inline-flex
}

.share__links-item:not(:last-child) {
    margin-right: 1em
}

.share__link {
    align-items: flex-end;
    display: flex;
    height: 36px;
    justify-content: center;
    width: 36px
}

.share__img {
    display: block
}

.slider__container {
    padding-bottom: calc(47px + 3.7vw)
}

.slider__navigation {
    display: flex;
    justify-content: center;
    padding-bottom: calc(20px + 2.8vw);
    padding-top: calc(10px + 1.4vw)
}

.slider__slide {
    margin: 0 25px;
    max-width: 600px;
    width: calc(213px + 19.9vw)
}

@media (max-width:760px) {
    .slider__slide {
        margin: 0 10px
    }
}

.slider__slide:first-child {
    margin-left: 0
}

.slider__slide:last-child {
    margin-right: 0
}

.slider__button-arrow {
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
    -webkit-animation-duration: .4s;
    animation-duration: .4s;
    -webkit-animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    animation-timing-function: cubic-bezier(.7, .12, .41, .76);
    transform: translateX(0)
}

.slider__button {
    align-items: center;
    display: flex;
    height: 36px;
    justify-content: center;
    position: relative;
    transition: opacity .3s linear;
    width: 70px
}

@media (max-width:760px) {
    .slider__button {
        height: 28px;
        width: 54px
    }
}

.slider__button._disabled {
    opacity: .3
}

.slider__button+.slider__button {
    margin-left: calc(10px + 1.4vw)
}

@media (pointer:fine) {
    .slider__button--next:not(._disabled):hover .slider__button-arrow {
        -webkit-animation-name: slider-arrow-translate-next;
        animation-name: slider-arrow-translate-next
    }

    .slider__button--prev:not(._disabled):hover .slider__button-arrow {
        -webkit-animation-name: slider-arrow-translate-prev;
        animation-name: slider-arrow-translate-prev
    }
}

@-webkit-keyframes slider-arrow-translate-next {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(100%)
    }

    71% {
        opacity: 0;
        transform: translateX(-60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes slider-arrow-translate-next {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(100%)
    }

    71% {
        opacity: 0;
        transform: translateX(-60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@-webkit-keyframes slider-arrow-translate-prev {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(-100%)
    }

    71% {
        opacity: 0;
        transform: translateX(60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes slider-arrow-translate-prev {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    30% {
        opacity: 1
    }

    70% {
        opacity: 0;
        transform: translateX(-100%)
    }

    71% {
        opacity: 0;
        transform: translateX(60%)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.solution__outer {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 20px;
    display: block;
    max-width: 100%;
    overflow: hidden;
    padding-bottom: 128%;
    position: relative
}

.solution__inner {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.solution__content {
    padding: 20px;
    position: relative;
    z-index: 1
}

@media (max-width:760px) {
    .solution__content {
        padding: 15px
    }
}

.solution__num {
    display: block;
    font-size: 15px;
    height: 36px;
    margin-bottom: 20px;
    position: relative
}

@media (max-width:760px) {
    .solution__num {
        font-size: 11px;
        height: 26px
    }
}

.solution__num:before {
    content: "0" counter(count);
    counter-increment: count;
    display: inline-block;
    transform: translateY(0);
    transition: .25s cubic-bezier(.45, .05, .55, .95)
}

.solution__inner:hover .solution__num:before {
    opacity: 0;
    transform: translateY(-80%)
}

.solution__num:after {
    content: "0" counter(count2);
    counter-increment: count2;
    display: inline-block;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: translateY(80%);
    transition: .25s cubic-bezier(.45, .05, .55, .95)
}

.solution__inner:hover .solution__num:after {
    opacity: 1;
    transform: translateY(0)
}

.solution__name {
    font-size: calc(19px + 1.8vw);
    line-height: 1.1;
    line-height: 1
}

[lang=en] .solution__name {
    letter-spacing: -.02em
}

@media (min-width:1903px) {
    .solution__name {
        font-size: 53px
    }
}

@media (min-width:1361px) {
    .solution__name {
        font-size: 43px
    }
}

.solution__image {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 76%;
    bottom: 0;
    left: 0;
    padding-bottom: 75%;
    position: absolute;
    width: 100%
}

.solution__canvas,
.solution__figure {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%
}

.solutions__header {
    border-bottom: calc(27px + 3.7vw);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: min(calc(2px + 7.4vw), 2px);
}

.solutions__body {
    opacity: 0;
    padding-top: calc(27px + 3.7vw);
    position: relative;
    z-index: 1
}

.solutions__body._ready {
    opacity: 1
}

.solutions__heading {
    padding-bottom: calc(20px + 2.8vw);
    text-align: center
}

.solutions__content {
    margin: 0 auto;
    max-width: 800px;
    padding: 40px 0;
    text-align: center;
    width: 100%
}

.solutions__item,
.solutions__list {
    margin: 0;
    padding: 0
}

.solutions__list {
    grid-gap: 40px;
    display: grid;
    list-style: none
}

@media (max-width:360px) {
    .solutions__list {
        grid-template-columns: 1fr;
        padding-bottom: calc(20px + 2.8vw)
    }
}

@media (min-width:361px) and (max-width:740px) {
    .solutions__list {
        grid-template-columns: 1fr;
        padding-bottom: calc(20px + 2.8vw)
    }
}

@media (min-width:741px) and (max-width:1439px) {
    .solutions__list {
        grid-template-columns: repeat(2, 1fr);
        margin: auto;
        max-width: 884px
    }
}

@media (min-width:1440px) {
    .solutions__list {
        grid-template-columns: repeat(3, 1fr)
    }
}

.solutions__item {
    transform: translate3d(0, 300px, 0);
    transition: transform 1.5s cubic-bezier(.07, .51, .25, .99);
    width: 100%
}

@media (min-width:361px) and (max-width:740px) {
    .solutions__item {
        max-width: 370px;
        width: 75%
    }

    .solutions__item:nth-child(2n) {
        margin-left: auto
    }

    .solutions__item:nth-child(odd) {
        margin-right: auto
    }
}

.spirograph {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1
}

.spirograph__canvas {
    height: 100%;
    max-width: 100%;
    opacity: .95;
    width: 100%
}

@media (max-width:760px) {
    .spirograph__canvas {
        opacity: .88
    }

    .spirograph__canvas--up-mob {
        margin-top: -40vw
    }
}

@media (min-width:761px) {

    .splitter,
    [data-splitter] {
        opacity: 0
    }

    .splitter.is-inview,
    [data-splitter].is-inview {
        opacity: 1
    }
}

.splitter__shift .splitter__outer {
    display: flex
}

.splitter__shift .splitter__outer:first-child {
    text-indent: calc(20px + 2.8vw)
}

.splitter__outer {
    display: block;
    overflow: hidden;
    position: relative
}

.splitter__outer:first-child .splitter__inner {
    transition-delay: .1s
}

.splitter__outer:nth-child(2) .splitter__inner {
    transition-delay: .2s
}

.splitter__outer:nth-child(3) .splitter__inner {
    transition-delay: .3s
}

.splitter__outer:nth-child(4) .splitter__inner {
    transition-delay: .4s
}

.splitter__outer:nth-child(5) .splitter__inner {
    transition-delay: .5s
}

.splitter__outer:nth-child(6) .splitter__inner {
    transition-delay: .6s
}

.splitter__outer:nth-child(7) .splitter__inner {
    transition-delay: .7s
}

.splitter__outer:nth-child(8) .splitter__inner {
    transition-delay: .8s
}

.splitter__inner {
    display: inline-block;
    transform: translateY(100%);
    transform-origin: center;
    transition: transform .75s;
    transition-delay: .9s;
    white-space: nowrap
}

.is-inview>.splitter__outer>.splitter__inner {
    transform: translateY(0) !important
}

.stroked {
    display: inline-block;
    position: relative
}

.stroked:before {
    background-color: currentColor;
    bottom: .05em;
    content: " ";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    width: 100%
}

.stroked--slower:before {
    transition: transform .4s !important
}

.stroked--on-hover:before {
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .25s
}

.stroked--on-hover:focus:before,
.stroked--on-hover:hover:before {
    transform: scaleX(1)
}

.unstroked--on-hover:before {
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .25s
}

.unstroked--on-hover:focus:before,
.unstroked--on-hover:hover:before {
    transform: scaleX(0)
}

.unstroked--on-hover.is-inview:before {
    transform: scaleX(1);
    transition-delay: unset
}

.unstroked--on-hover:hover:before {
    transform: scaleX(0)
}

.stroked--bold:before {
    bottom: -2px
}

@media (max-width:760px) {
    .stroked--bold:before {
        height: 2px
    }
}

@media (min-width:761px) {
    .stroked--bold:before {
        height: 4px
    }
}

.submenu {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    transition: visibility 0s .5s;
    visibility: hidden;
    width: 100%;
    z-index: 999
}

.submenu._closing,
.submenu._open {
    transition: visibility 0s 0s;
    visibility: visible
}

@media (max-width:1130px) {
    .submenu {
        display: none
    }
}

.submenu__underlay {
    background-color: #000;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: .5s linear;
    width: 100%
}

.submenu._open .submenu__underlay {
    opacity: .1
}

.submenu__list {
    background-color: #fff;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    font-size: calc(10px + .5vw);
    padding-bottom: 60px;
    padding-top: 120px;
    position: relative;
    transition-duration: 0s
}

.submenu._open .submenu__list {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0)
}

.submenu._closing .submenu__list,
.submenu._open .submenu__list {
    transition: -webkit-clip-path .5s ease;
    transition: clip-path .5s ease;
    transition: clip-path .5s ease, -webkit-clip-path .5s ease
}

.submenu._closing .submenu__list {
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0)
}

.submenu__item:not(:last-child) {
    margin-bottom: 10px
}

.submenu__link {
    display: inline-block;
    padding: 10px 20px;
    position: relative
}

.submenu__link:before {
    content: url(../../img/svg/arrow_r.svg);
    left: -14px;
    opacity: 0;
    position: absolute;
    transform: translateX(-100%);
    transition: transform 0s .3s, opacity .3s ease-out
}

.submenu__link:hover:before {
    opacity: 1;
    transform: translateX(0);
    transition: all .3s ease-out
}

.tag__body {
    display: block;
    font-size: calc(11px + .4vw);
    overflow: hidden;
    position: relative;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.tag__input {
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    position: absolute;
    width: 1px
}

.tag__content {
    background-color: transparent;
    border: 1px solid #000;
    border-radius: 50px;
    color: #000;
    cursor: pointer;
    display: block;
    line-height: 1;
    padding: 11px 20px 9px;
    transition: background-color .2s, background .4s ease-in-out, opacity .3s, color .3s
}

.tag._active .tag__content,
.tag__input:checked+.tag__content {
    background-color: #000;
    color: #fff
}

.tag__mask {
    display: flex;
    overflow: hidden;
    padding: 6px 0;
    position: relative
}

.tag__text,
.tag__text-copy {
    transition: transform 0s, opacity 0s
}

.tag__text {
    transform: translateY(0)
}

.tag__text-copy {
    opacity: 0;
    position: absolute;
    transform: translateY(120%)
}

@media (pointer:fine) {

    .tag--link .tag__content:hover .tag__text,
    .tag__input:not(:checked)+.tag__content:hover .tag__text {
        opacity: 0;
        transform: translateY(-120%);
        transition: transform .7s cubic-bezier(.23, 1, .32, 1), opacity .4s cubic-bezier(.23, 1, .32, 1)
    }

    .tag--link .tag__content:hover .tag__text-copy,
    .tag__input:not(:checked)+.tag__content:hover .tag__text-copy {
        opacity: 1;
        transform: translateY(0);
        transition: transform .7s cubic-bezier(.23, 1, .32, 1), opacity .4s cubic-bezier(.23, 1, .32, 1)
    }
}

.tags__item:not(:last-child) {
    margin-bottom: 50px
}

.tags__row {
    display: flex;
    flex-wrap: wrap;
    margin: -5px
}

.tags__tag {
    padding: 5px
}

@media (max-width:760px) {
    .team {
        padding-bottom: calc(47px + 3.7vw)
    }
}

.team__heading {
    font-family: Raptor V2, sans-serif;
    font-size: calc(19px + 1.8vw);
    line-height: 1.1;
    margin-bottom: calc(47px + 3.7vw)
}

@media (min-width:1903px) {
    .team__heading {
        font-size: 53px
    }
}

[lang=en] .team__heading {
    letter-spacing: -.02em
}

@media (max-width:760px) {
    .team__heading {
        text-indent: calc(20px + 2.8vw)
    }
}

.team__meet {
    display: flex;
    font-size: calc(11px + .4vw);
    margin-bottom: 125px;
    padding-left: 50%;
    text-transform: uppercase
}

@media (max-width:760px) {
    .team__meet {
        margin-bottom: calc(27px + 3.7vw)
    }
}

.team__members {
    grid-gap: calc(27px + 3.7vw) calc(10px + 1.4vw);
    grid-row-gap: calc(27px + 3.7vw);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    justify-content: space-between;
    opacity: 0
}

.team__members._ready {
    opacity: 1
}

@media (min-width:981px) {
    .team__members {
        margin-bottom: calc(20px + 2.8vw)
    }

    [lang=en] .team__members {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width:980px) {
    .team__members {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width:760px) {
    .team__members {
        grid-template-columns: repeat(2, 1fr)
    }
}

.team__member {
    display: flex;
    flex-direction: column
}

.team__members._ready .team__member {
    transition: transform 1.5s cubic-bezier(.07, .51, .25, .99)
}

[data-under-scroll] {
    overflow: hidden;
    position: relative
}

.wall {
    display: flex;
    opacity: 0
}

.wall._ready {
    opacity: 1
}

@media (max-width:760px) {
    .wall {
        flex-direction: column;
        padding-bottom: calc(47px + 3.7vw)
    }
}

.wall._ready .wall__item {
    transition: transform 1.5s cubic-bezier(.07, .51, .25, .99)
}

@media (max-width:760px) {
    .wall__item+.wall__item {
        margin-top: calc(47px + 3.7vw)
    }
}

[lang=en] .wall__image {
    border-radius: 20px;
    overflow: hidden;
    position: relative
}

.wall__item--l {
    width: 50%
}

@media (max-width:760px) {
    .wall__item--l {
        width: 87%
    }
}

.wall__item--s {
    width: 35%
}

@media (max-width:760px) {
    .wall__item--s {
        width: 76%
    }
}

.wall__item--right {
    margin-left: auto
}

@media (min-width:761px) {
    .wall__item--shifted {
        margin-top: 20%
    }
}