:root {
    --spacing-s: 20px;
    --spacing-l: 20px;
    --scale: 1px;
    --col: calc(100vw / 2)
}

@media screen and (min-width: 980px) and (max-width:1440px) {
    :root {
        --scale:calc(0.5px + 0.5 * ((100vw - 980px) / 460));
        --spacing-s: 20px;
        --spacing-l: calc(20px + 30 * ((100vw - 980px) / 460))
    }
}

@media screen and (min-width: 1440px) and (max-width:1920px) {
    :root {
        --spacing-s:calc(20px + 10 * ((100vw - 1440px) / 480));
        --spacing-l: calc(50px + 20 * ((100vw - 1440px) / 480));
    }
}

@media only screen and (min-width: 980px) {
    :root {
        --col:calc(100vw / 6)
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    :root {
        --spacing-s:30px;
        --spacing-l: 70px
    }
}

@media print {
    :root {
        --spacing-s: 20px;
        --spacing-l: 50px
    }
}

:root {
    --transition-duration: 0.4s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99)
}

.animation--image-in {
    pointer-events: none;
    overflow: hidden;
    overflow: clip
}

.animation--image-in,.animation--image-in img {
    transition-property: transform;
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing)
}

.animation--image-in--inactive {
    transform: translateY(100%)
}

.animation--image-in--inactive img {
    transform: translateY(-100%)
}

.animation--image-in-left,.animation--image-in-right,.animation--image-out-left,.animation--image-out-right {
    pointer-events: none;
    overflow: hidden;
    overflow: clip;
    --transition-duration: 0.8s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-property: transform,opacity;
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing)
}

.animation--image-in-left--inactive,.animation--image-out-left--active {
    transform: translateX(-100px);
    opacity: 0
}

.animation--image-in-right--inactive,.animation--image-out-right--active {
    transform: translateX(100px);
    opacity: 0
}

.animation--image-clip-in-left,.animation--image-clip-in-right,.animation--image-clip-out-left,.animation--image-clip-out-right {
    --transition-duration: 0.8s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-property: -webkit-clip-path;
    transition-property: clip-path;
    transition-property: clip-path,-webkit-clip-path;
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing);
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0)
}

.animation--image-clip-in-left img,.animation--image-clip-in-right img,.animation--image-clip-out-left img,.animation--image-clip-out-right img {
    --transition-duration: 0.8s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-property: transform;
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing)
}

.animation--image-clip-in-left--inactive,.animation--image-clip-out-left--active {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0)
}

.animation--image-clip-in-right--inactive,.animation--image-clip-out-right--active {
    -webkit-clip-path: inset(0 0 0 100%);
    clip-path: inset(0 0 0 100%)
}

.animation--image-clip-in-left--inactive img,.animation--image-clip-in-right--inactive img {
    transform: scale(1.1)
}

.owl-carousel {
    display: none;
    width: 100%;
    -webkit-tap-highlight-color: transparent;
    position: relative;
    z-index: 1
}

.owl-carousel .owl-stage {
    position: relative;
    touch-action: manipulation;
    -moz-backface-visibility: hidden
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    overflow: clip;
    transform: translateZ(0)
}

.owl-carousel .owl-item,.owl-carousel .owl-wrapper {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0)
}

.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none
}

.owl-carousel .owl-item img {
    display: block;
    width: 100%
}

.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled {
    display: none
}

.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0!important;
    font: inherit
}

.owl-carousel.owl-loaded {
    display: block
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block
}

.owl-carousel.owl-hidden {
    opacity: 0
}

.owl-carousel.owl-refresh .owl-item {
    visibility: hidden
}

.owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: grab
}

.owl-carousel.owl-rtl {
    direction: rtl
}

.owl-carousel.owl-rtl .owl-item {
    float: right
}

.no-js .owl-carousel {
    display: block
}

.owl-height {
    transition: height .5s cubic-bezier(.55,0,.1,1)
}

.carousel-owl .carousel-owl__fallback,.carousel-owl .owl-stage {
    display: flex;
    align-items: flex-start
}

.carousel-owl .owl-stage,.carousel-owl .owl-stage-outer {
    width: 100%
}

.carousel-owl .owl-nav {
    display: none
}

.carousel-owl .owl-drag,.carousel-owl .owl-drag .card__overlay {
    cursor: move;
    cursor: grab;
    cursor: -webkit-grab
}

.carousel-owl .owl-grab,.carousel-owl .owl-grab .btn-container,.carousel-owl .owl-grab .card__overlay {
    cursor: grabbing;
    cursor: -webkit-grabbing
}

.carousel-owl-item {
    width: 100%
}

.carousel-owl-item img,.carousel-owl-item picture {
    width: 100%;
    height: auto;
    min-height: 1px
}

@media (max-width: 567px) and (max-aspect-ratio:13/9),(max-width:667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .with-modal.is-safari .carousel-owl-item img,.with-modal.is-safari .carousel-owl-item picture {
        transform:translateZ(0)
    }
}

.carousel-owl--ready {
    position: relative
}

.carousel-owl--full .owl-stage-outer {
    overflow: visible
}

.carousel-owl__side-content {
    position: relative;
    z-index: 2
}

.carousel-owl__side-content a,.carousel-owl__side-content h2,.carousel-owl__side-content h3,.carousel-owl__side-content p {
    position: relative
}

.carousel-owl__side-background {
    position: relative;
    z-index: 1
}

.carousel-owl__side-background:before {
    content: "";
    position: absolute;
    z-index: 0;
    right: 0;
    top: -1px;
    height: calc(100% + 2px);
    width: 100vw;
    background: var(--t-background)
}

.carousel-owl--not-ready .is-hidden--not-ready {
    display: none!important
}

.row {
    display: flex;
    flex-wrap: wrap
}

.col {
    flex: 1;
    max-width: 100%
}

.col--xs-1 {
    flex: 0 1 50vw;
    width: 50vw
}

@-moz-document url-prefix() {
    .col--xs-1 {
        max-width: 50vw
    }
}

.offset--xs-1 {
    margin-left: 50vw
}

.col--xs-2 {
    flex: 0 1 100vw;
    width: 100vw
}

@-moz-document url-prefix() {
    .col--xs-2 {
        max-width: 100vw
    }
}

.offset--xs-2 {
    margin-left: 100vw
}

.col--xs-full {
    flex: 0 1 100%;
    width: 100%
}

@-moz-document url-prefix() {
    .col--xs-full {
        max-width: 100%
    }
}

.offset--xs-0 {
    margin-left: 0
}

.col--xs-auto {
    flex: 0 0 auto;
    width: auto
}

@-moz-document url-prefix() {
    .col--xs-auto {
        max-width: none
    }
}

.col--xs-fill {
    flex: 1 1 auto;
    width: auto
}

@-moz-document url-prefix() {
    .col--xs-fill {
        max-width: none
    }
}

@media (min-aspect-ratio: 13/9),only screen and (min-width:568px) {
    .col--sm-1 {
        flex:0 1 50vw;
        width: 50vw
    }

    @-moz-document url-prefix() {
        .col--sm-1 {
            max-width: 50vw
        }
    }

    .offset--sm-1 {
        margin-left: 50vw
    }

    .col--sm-2 {
        flex: 0 1 100vw;
        width: 100vw
    }

    @-moz-document url-prefix() {
        .col--sm-2 {
            max-width: 100vw
        }
    }

    .offset--sm-2 {
        margin-left: 100vw
    }

    .col--sm-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--sm-full {
            max-width: 100%
        }
    }

    .offset--sm-0 {
        margin-left: 0
    }

    .col--sm-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--sm-auto {
            max-width: none
        }
    }

    .col--sm-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--sm-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .col--md-1 {
        flex:0 1 50vw;
        width: 50vw
    }

    @-moz-document url-prefix() {
        .col--md-1 {
            max-width: 50vw
        }
    }

    .offset--md-1 {
        margin-left: 50vw
    }

    .col--md-2 {
        flex: 0 1 100vw;
        width: 100vw
    }

    @-moz-document url-prefix() {
        .col--md-2 {
            max-width: 100vw
        }
    }

    .offset--md-2 {
        margin-left: 100vw
    }

    .col--md-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--md-full {
            max-width: 100%
        }
    }

    .offset--md-0 {
        margin-left: 0
    }

    .col--md-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--md-auto {
            max-width: none
        }
    }

    .col--md-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--md-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 980px) {
    .col--lg-1 {
        flex:0 1 16.6666vw;
        width: 16.6666vw
    }

    @-moz-document url-prefix() {
        .col--lg-1 {
            max-width: 16.6666vw
        }
    }

    .offset--lg-1 {
        margin-left: 16.6666vw
    }

    .col--lg-2 {
        flex: 0 1 33.3333vw;
        width: 33.3333vw
    }

    @-moz-document url-prefix() {
        .col--lg-2 {
            max-width: 33.3333vw
        }
    }

    .offset--lg-2 {
        margin-left: 33.3333vw
    }

    .col--lg-3 {
        flex: 0 1 50vw;
        width: 50vw
    }

    @-moz-document url-prefix() {
        .col--lg-3 {
            max-width: 50vw
        }
    }

    .offset--lg-3 {
        margin-left: 50vw
    }

    .col--lg-4 {
        flex: 0 1 66.6666vw;
        width: 66.6666vw
    }

    @-moz-document url-prefix() {
        .col--lg-4 {
            max-width: 66.6666vw
        }
    }

    .offset--lg-4 {
        margin-left: 66.6666vw
    }

    .col--lg-5 {
        flex: 0 1 83.3333vw;
        width: 83.3333vw
    }

    @-moz-document url-prefix() {
        .col--lg-5 {
            max-width: 83.3333vw
        }
    }

    .offset--lg-5 {
        margin-left: 83.3333vw
    }

    .col--lg-6 {
        flex: 0 1 100vw;
        width: 100vw
    }

    @-moz-document url-prefix() {
        .col--lg-6 {
            max-width: 100vw
        }
    }

    .offset--lg-6 {
        margin-left: 100vw
    }

    .col--lg-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--lg-full {
            max-width: 100%
        }
    }

    .offset--lg-0 {
        margin-left: 0
    }

    .col--lg-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--lg-auto {
            max-width: none
        }
    }

    .col--lg-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--lg-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 1200px) and (min-height:600px) {
    .col--xl-1 {
        flex:0 1 16.6666vw;
        width: 16.6666vw
    }

    @-moz-document url-prefix() {
        .col--xl-1 {
            max-width: 16.6666vw
        }
    }

    .offset--xl-1 {
        margin-left: 16.6666vw
    }

    .col--xl-2 {
        flex: 0 1 33.3333vw;
        width: 33.3333vw
    }

    @-moz-document url-prefix() {
        .col--xl-2 {
            max-width: 33.3333vw
        }
    }

    .offset--xl-2 {
        margin-left: 33.3333vw
    }

    .col--xl-3 {
        flex: 0 1 50vw;
        width: 50vw
    }

    @-moz-document url-prefix() {
        .col--xl-3 {
            max-width: 50vw
        }
    }

    .offset--xl-3 {
        margin-left: 50vw
    }

    .col--xl-4 {
        flex: 0 1 66.6666vw;
        width: 66.6666vw
    }

    @-moz-document url-prefix() {
        .col--xl-4 {
            max-width: 66.6666vw
        }
    }

    .offset--xl-4 {
        margin-left: 66.6666vw
    }

    .col--xl-5 {
        flex: 0 1 83.3333vw;
        width: 83.3333vw
    }

    @-moz-document url-prefix() {
        .col--xl-5 {
            max-width: 83.3333vw
        }
    }

    .offset--xl-5 {
        margin-left: 83.3333vw
    }

    .col--xl-6 {
        flex: 0 1 100vw;
        width: 100vw
    }

    @-moz-document url-prefix() {
        .col--xl-6 {
            max-width: 100vw
        }
    }

    .offset--xl-6 {
        margin-left: 100vw
    }

    .col--xl-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--xl-full {
            max-width: 100%
        }
    }

    .offset--xl-0 {
        margin-left: 0
    }

    .col--xl-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xl-auto {
            max-width: none
        }
    }

    .col--xl-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xl-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 1440px) and (min-height:750px) {
    .col--xxl-1 {
        flex:0 1 240px;
        width: 240px
    }

    @-moz-document url-prefix() {
        .col--xxl-1 {
            max-width: 240px
        }
    }

    .offset--xxl-1 {
        margin-left: 240px
    }

    .col--xxl-2 {
        flex: 0 1 480px;
        width: 480px
    }

    @-moz-document url-prefix() {
        .col--xxl-2 {
            max-width: 480px
        }
    }

    .offset--xxl-2 {
        margin-left: 480px
    }

    .col--xxl-3 {
        flex: 0 1 720px;
        width: 720px
    }

    @-moz-document url-prefix() {
        .col--xxl-3 {
            max-width: 720px
        }
    }

    .offset--xxl-3 {
        margin-left: 720px
    }

    .col--xxl-4 {
        flex: 0 1 960px;
        width: 960px
    }

    @-moz-document url-prefix() {
        .col--xxl-4 {
            max-width: 960px
        }
    }

    .offset--xxl-4 {
        margin-left: 960px
    }

    .col--xxl-5 {
        flex: 0 1 1200px;
        width: 1200px
    }

    @-moz-document url-prefix() {
        .col--xxl-5 {
            max-width: 1200px
        }
    }

    .offset--xxl-5 {
        margin-left: 1200px
    }

    .col--xxl-6 {
        flex: 0 1 1440px;
        width: 1440px
    }

    @-moz-document url-prefix() {
        .col--xxl-6 {
            max-width: 1440px
        }
    }

    .offset--xxl-6 {
        margin-left: 1440px
    }

    .col--xxl-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--xxl-full {
            max-width: 100%
        }
    }

    .offset--xxl-0 {
        margin-left: 0
    }

    .col--xxl-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xxl-auto {
            max-width: none
        }
    }

    .col--xxl-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xxl-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .col--xxxl-1 {
        flex:0 1 240px;
        width: 240px
    }

    @-moz-document url-prefix() {
        .col--xxxl-1 {
            max-width: 240px
        }
    }

    .offset--xxxl-1 {
        margin-left: 240px
    }

    .col--xxxl-2 {
        flex: 0 1 480px;
        width: 480px
    }

    @-moz-document url-prefix() {
        .col--xxxl-2 {
            max-width: 480px
        }
    }

    .offset--xxxl-2 {
        margin-left: 480px
    }

    .col--xxxl-3 {
        flex: 0 1 720px;
        width: 720px
    }

    @-moz-document url-prefix() {
        .col--xxxl-3 {
            max-width: 720px
        }
    }

    .offset--xxxl-3 {
        margin-left: 720px
    }

    .col--xxxl-4 {
        flex: 0 1 960px;
        width: 960px
    }

    @-moz-document url-prefix() {
        .col--xxxl-4 {
            max-width: 960px
        }
    }

    .offset--xxxl-4 {
        margin-left: 960px
    }

    .col--xxxl-5 {
        flex: 0 1 1200px;
        width: 1200px
    }

    @-moz-document url-prefix() {
        .col--xxxl-5 {
            max-width: 1200px
        }
    }

    .offset--xxxl-5 {
        margin-left: 1200px
    }

    .col--xxxl-6 {
        flex: 0 1 1440px;
        width: 1440px
    }

    @-moz-document url-prefix() {
        .col--xxxl-6 {
            max-width: 1440px
        }
    }

    .offset--xxxl-6 {
        margin-left: 1440px
    }

    .col--xxxl-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--xxxl-full {
            max-width: 100%
        }
    }

    .offset--xxxl-0 {
        margin-left: 0
    }

    .col--xxxl-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xxxl-auto {
            max-width: none
        }
    }

    .col--xxxl-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xxxl-fill {
            max-width: none
        }
    }
}

@media only screen and (min-width: 1440px) and (min-height:750px) {
    .col--lg-1 {
        flex:0 1 240px;
        width: 240px
    }

    @-moz-document url-prefix() {
        .col--lg-1 {
            max-width: 240px
        }
    }

    .offset--lg-1 {
        margin-left: 240px
    }

    .col--lg-2 {
        flex: 0 1 480px;
        width: 480px
    }

    @-moz-document url-prefix() {
        .col--lg-2 {
            max-width: 480px
        }
    }

    .offset--lg-2 {
        margin-left: 480px
    }

    .col--lg-3 {
        flex: 0 1 720px;
        width: 720px
    }

    @-moz-document url-prefix() {
        .col--lg-3 {
            max-width: 720px
        }
    }

    .offset--lg-3 {
        margin-left: 720px
    }

    .col--lg-4 {
        flex: 0 1 960px;
        width: 960px
    }

    @-moz-document url-prefix() {
        .col--lg-4 {
            max-width: 960px
        }
    }

    .offset--lg-4 {
        margin-left: 960px
    }

    .col--lg-5 {
        flex: 0 1 1200px;
        width: 1200px
    }

    @-moz-document url-prefix() {
        .col--lg-5 {
            max-width: 1200px
        }
    }

    .offset--lg-5 {
        margin-left: 1200px
    }

    .col--lg-6 {
        flex: 0 1 1440px;
        width: 1440px
    }

    @-moz-document url-prefix() {
        .col--lg-6 {
            max-width: 1440px
        }
    }

    .offset--lg-6 {
        margin-left: 1440px
    }

    .col--lg-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--lg-full {
            max-width: 100%
        }
    }

    .offset--lg-0 {
        margin-left: 0
    }

    .col--lg-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--lg-auto {
            max-width: none
        }
    }

    .collg-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .collg-fill {
            max-width: none
        }
    }

    .col--xl-1 {
        flex: 0 1 240px;
        width: 240px
    }

    @-moz-document url-prefix() {
        .col--xl-1 {
            max-width: 240px
        }
    }

    .offset--xl-1 {
        margin-left: 240px
    }

    .col--xl-2 {
        flex: 0 1 480px;
        width: 480px
    }

    @-moz-document url-prefix() {
        .col--xl-2 {
            max-width: 480px
        }
    }

    .offset--xl-2 {
        margin-left: 480px
    }

    .col--xl-3 {
        flex: 0 1 720px;
        width: 720px
    }

    @-moz-document url-prefix() {
        .col--xl-3 {
            max-width: 720px
        }
    }

    .offset--xl-3 {
        margin-left: 720px
    }

    .col--xl-4 {
        flex: 0 1 960px;
        width: 960px
    }

    @-moz-document url-prefix() {
        .col--xl-4 {
            max-width: 960px
        }
    }

    .offset--xl-4 {
        margin-left: 960px
    }

    .col--xl-5 {
        flex: 0 1 1200px;
        width: 1200px
    }

    @-moz-document url-prefix() {
        .col--xl-5 {
            max-width: 1200px
        }
    }

    .offset--xl-5 {
        margin-left: 1200px
    }

    .col--xl-6 {
        flex: 0 1 1440px;
        width: 1440px
    }

    @-moz-document url-prefix() {
        .col--xl-6 {
            max-width: 1440px
        }
    }

    .offset--xl-6 {
        margin-left: 1440px
    }

    .col--xl-full {
        flex: 0 1 100%;
        width: 100%
    }

    @-moz-document url-prefix() {
        .col--xl-full {
            max-width: 100%
        }
    }

    .offset--xl-0 {
        margin-left: 0
    }

    .col--xl-auto {
        flex: 0 0 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .col--xl-auto {
            max-width: none
        }
    }

    .colxl-fill {
        flex: 1 1 auto;
        width: auto
    }

    @-moz-document url-prefix() {
        .colxl-fill {
            max-width: none
        }
    }
}

.js .accordion__content[aria-hidden=true] {
    display: none
}

.tabs-contents {
    position: relative;
    overflow: visible!important
}

.tabs-contents__content[aria-hidden=true] {
    display: none
}

.tabs-contents__content--animating-in {
    position: absolute!important;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    min-height: 100%
}

.tabs-contents__content--animating-top {
    z-index: 2
}

.tabs-contents__content[aria-hidden=false]:not(.tabs-contents__content--animating-in)~.tabs-contents__content[aria-hidden=false] {
    position: absolute!important;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    min-height: 100%
}

.tabs-contents--bottom .tabs-contents__content--animating-in,.tabs-contents--bottom .tabs-contents__content[aria-hidden=false]:not(.tabs-contents__content--animating-in)~.tabs-contents__content[aria-hidden=false] {
    position: absolute!important;
    z-index: 1;
    left: 0;
    top: auto;
    bottom: 0;
    width: 100%;
    min-height: 0
}

.sticky {
    --sticky-content-height: 0px;
    --sticky-full-height: 0px;
    --sticky-margin: min(0px,calc(var(--sticky-content-height) / 2 - var(--viewport-height) / 2));
    --sticky-padding: max(0px,calc(var(--viewport-height) / 2 - var(--sticky-content-height) / 2));
    position: relative;
    margin-top: var(--sticky-margin);
    margin-bottom: var(--sticky-margin);
    height: var(--sticky-full-height)
}

.sticky__sticky {
    position: sticky;
    top: 0;
    height: var(--viewport-height);
    padding-top: var(--sticky-padding);
    padding-bottom: var(--sticky-padding);
    overflow: hidden;
    overflow: clip
}

.has-scroll-smooth .sticky__sticky {
    position: relative
}

@media (max-width: 567px) and (max-aspect-ratio:13/9),(max-width:667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .sticky--md-up {
        margin-top:0;
        margin-bottom: 0;
        height: auto
    }

    .sticky--md-up .sticky__sticky {
        position: relative;
        padding-top: 0;
        padding-bottom: 0;
        height: auto;
        overflow: visible
    }
}

@media only screen and (max-width: 979px) {
    .sticky--lg-up {
        margin-top:0;
        margin-bottom: 0;
        height: auto
    }

    .sticky--lg-up .sticky__sticky {
        position: relative;
        padding-top: 0;
        padding-bottom: 0;
        height: auto;
        overflow: visible
    }
}

.no-hover .sticky--has-hover {
    margin-top: 0;
    margin-bottom: 0;
    height: auto
}

.no-hover .sticky--has-hover .sticky__sticky {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
    height: auto
}

.image-comparison {
    contain: style
}

.image-comparison,.image-comparison__content {
    position: relative;
    height: 100%;
    border-radius: 50%
}

.image-comparison__content {
    overflow: hidden;
    overflow: clip;
    transform: translateZ(0)
}

@media only screen and (max-width: 979px) {
    .image-comparison__content {
        min-height:calc(100vw / 360 * 260)
    }
}

.image-comparison picture {
    display: block;
    width: 100%;
    height: 100%;
    will-change: transform
}

.image-comparison picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.image-comparison__item {
    overflow: hidden;
    overflow: clip;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%
}

.image-comparison__item~.image-comparison__item {
    transform: translateX(50%)
}

.image-comparison__item~.image-comparison__item:before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    height: 100%;
    border-left: 1px solid var(--c-cold-2)
}

.image-comparison__item~.image-comparison__item picture {
    transform: translateX(-50%)
}

.image-comparison__control {
    position: absolute;
    left: 50%;
    top: -15px;
    bottom: -15px;
    border-left: 1px solid var(--c-cold-2)
}

.image-comparison__control--primary {
    border-left: 1px solid var(--t-primary)
}

.image-comparison__control__button {
    cursor: move;
    cursor: ew-resize;
    position: absolute;
    left: -1px;
    top: 50%;
    margin: -15px 0 0 -15px
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .image-comparison__control__button {
        margin:-20px 0 0 -20px
    }
}

@media only screen and (min-width: 980px) {
    .image-comparison {
        overflow:hidden;
        overflow: clip
    }

    .has-hover .image-comparison--vertical .image-comparison__item~.image-comparison__item {
        transform: translateY(50%)
    }

    .has-hover .image-comparison--vertical .image-comparison__item~.image-comparison__item:before {
        content: "";
        position: absolute;
        z-index: 1;
        left: 0;
        top: 0;
        width: 100%;
        border-top: 1px solid var(--c-cold-2)
    }

    .has-hover .image-comparison--vertical .image-comparison__item~.image-comparison__item picture {
        transform: translateY(-50%)
    }
}

.image-comparison__item.image-comparison__item--transition,.image-comparison__item.image-comparison__item--transition picture {
    transition-property: transform;
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing)
}

.about-tabs {
    margin-top: -1px
}

.about-tabs__title {
    width: 100%;
    position: relative;
    padding: calc(var(--spacing-l) * 2) 0
}

.about-tabs__title:after {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    content: "";
    position: absolute;
    border-bottom: 1px solid var(--t-line)
}

.about-tabs__title span {
    display: block
}

.about-tabs__title__right {
    text-align: right
}

.about-tabs__container {
    overflow: hidden
}

.about-tabs__slider {
    position: relative;
    z-index: 1
}

.about-tabs__tabs {
    margin-top: 20px;
    position: relative;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--t-line);
    height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l))
}

.about-tabs__tabs--no-border-bottom {
    border-bottom: 1px solid transparent
}

.about-tabs__tabs__tab {
    display: flex
}

.about-tabs__tabs__col-left {
    flex: 0 0 calc(100vw / 3.5 + 20px);
    border-right: 1px solid var(--t-line)
}

.about-tabs__tabs__col-left,.about-tabs__tabs__col-right {
    height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l) - 20px)
}

.about-tabs__tabs__col-right {
    flex: 1 1 auto
}

.about-tabs__tabs__text,.about-tabs__tabs__title {
    height: 20%;
    padding-right: 20px;
    padding-top: 40px;
}

.about-tabs__tabs__title {
    text-transform: uppercase;
    border-bottom: 1px solid var(--t-line);
}

.about-tabs__tabs__title span {
    max-width: 350px;
    display: inline-block
}

.about-tabs__tabs__text {
    padding-top: 20px
}

.about-tabs__tabs__text span {
    max-width: 420px;
    display: inline-block
}

.about-tabs__tabs__picture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding-left: 20px;
    max-height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-s))
}

.about-tabs__tabs__picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 100%;
    object-position: 50% 100%
}

.about-tabs__tabs__nav {
    bottom: 20px;
    position: absolute;
    z-index: 2
}

.about-tabs__tabs .row,.about-tabs__tabs__tab {
    height: 100%
}

.about-tabs .owl-stage {
    z-index: 2
}

.about-tabs .owl-stage:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    top: 0;
    height: 200vh
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9),only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
    .about-tabs {
        min-height:0;
        padding-bottom: calc(var(--spacing-l) * 2)
    }
}

@media (min-width: 980px) and (max-height:599px),(min-width:1200px) and (min-height:600px) and (max-height:749px),only screen and (min-width:980px) and (max-width:1199px),only screen and (min-width:1200px) and (min-height:600px) and (max-width:1439px) {
    .about-tabs__tabs__picture img {
        will-change:transform
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-tabs {
        min-height:calc(var(--viewport-height) - var(--header-height))
    }

    .about-tabs__title {
        padding: 84px 0 26px
    }
}

.benefits-gallery {
    margin-top: -1px
}

.benefits-gallery__container {
    overflow: hidden;
    padding-top: 1px
}

.benefits-gallery__wrap {
    position: relative
}

.benefits-gallery__nav {
    position: absolute;
    top: calc(100vw / 360 * 320 - (var(--spacing-l) * 2));
    left: var(--spacing-l);
    z-index: 3
}

.benefits-gallery__nav__group {
    transform: translateY(-50%)
}

.benefits-gallery__slider {
    position: relative;
    z-index: 1
}

.benefits-gallery__counter {
    position: absolute;
    top: calc(100vw / 360 * 320 - var(--spacing-l));
    right: var(--spacing-l);
    z-index: 3;
    transform: translateY(-100%);
    margin-top: 4px
}

.benefits-gallery__title {
    width: 100%;
    position: relative;
    padding: calc(var(--spacing-l) * 2) 0
}

.benefits-gallery__title:after {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    content: "";
    position: absolute;
    border-bottom: 1px solid var(--t-line)
}

.benefits-gallery__title span {
    display: block
}

.benefits-gallery__title__right {
    text-align: right
}

.benefits-gallery__tabs {
    margin-top: 20px;
    position: relative;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--t-line);
    height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l))
}

.benefits-gallery__tabs--no-border-bottom {
    border-bottom: 1px solid transparent
}

.benefits-gallery__tabs__tab {
    display: flex
}

.benefits-gallery__tabs__col-left {
    flex: 0 0 calc(100vw / 3.5 + 20px);
    border-right: 1px solid var(--t-line)
}

.benefits-gallery__tabs__col-left,.benefits-gallery__tabs__col-right {
    height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l) - 20px)
}

.benefits-gallery__tabs__col-right {
    flex: 1 1 auto
}

.benefits-gallery__tabs__text,.benefits-gallery__tabs__title {
    height: 50%;
    padding-right: 20px
}

.benefits-gallery__tabs__title {
    text-transform: uppercase;
    border-bottom: 1px solid var(--t-line)
}

.benefits-gallery__tabs__title span {
    max-width: 350px;
    display: inline-block
}

.benefits-gallery__tabs__text {
    padding-top: 20px
}

.benefits-gallery__tabs__text span {
    max-width: 420px;
    display: inline-block
}

.benefits-gallery__tabs__picture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding-left: 20px;
    max-height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-s))
}

.benefits-gallery__tabs__picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.benefits-gallery__tabs__nav {
    bottom: 20px;
    position: absolute
}

.benefits-gallery__tabs .row,.benefits-gallery__tabs__tab {
    height: 100%
}

.benefits-gallery .owl-stage {
    z-index: 2
}

.benefits-gallery .owl-stage:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    top: 0;
    height: 200vh
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9),only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
    .benefits-gallery {
        min-height:0;
        padding-bottom: calc(var(--spacing-l) * 2)
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .benefits-gallery__title {
        padding:84px 0 26px
    }
}

.infra-features {
    margin-top: -1px;
    padding-bottom: calc(var(--spacing-s) * 4)
}

@media only screen and (min-width: 980px) {
    .infra-features {
        padding-bottom:0
    }
}

.benefits-sticky {
    --sticky-content-height: var(--viewport-height);
    --sticky-full-height: calc(var(--viewport-height) * 10);
    --sticky-margin: 0;
    --sticky-padding: 0
}

.has-hover .benefits-sticky {
    overflow: hidden
}

.benefits-sticky__inner {
    display: flex;
    padding-bottom: 30px
}

.has-hover .benefits-sticky__inner {
    position: relative
}

.benefits-sticky__inner .tabs-contents {
    position: relative;
    flex: 0 0 calc(100vw / 3 - 20px)
}

.benefits-sticky__inner .tabs-contents:before {
    position: absolute;
    content: "";
    right: 0;
    top: calc(var(--header-height) + var(--spacing-s));
    bottom: 0;
    border-right: 1px solid var(--t-line)
}

.benefits-sticky__inner .tabs-contents:after {
    position: absolute;
    content: "";
    right: 20px;
    left: 0;
    top: calc(var(--header-height) / 2 + 50%);
    border-bottom: 1px solid var(--t-line)
}

.benefits-sticky__tabs {
    position: relative;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    padding: calc(var(--header-height) + var(--spacing-s)) 0 30px 20px;
    pointer-events: none
}

.benefits-sticky__tabs picture {
    margin-bottom: 20px
}

.benefits-sticky__tabs picture:last-child {
    margin-bottom: 30px
}

.benefits-sticky__overlay {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    background-color: var(--t-background);
    height: var(--header-height);
    z-index: 3
}

.benefits-sticky__item {
    height: var(--viewport-height);
    padding: calc(var(--header-height) + var(--spacing-s)) 0 30px 0;
    display: flex;
    flex-wrap: nowrap
}

.benefits-sticky__item__group {
    padding: 0 var(--spacing-s) 0 0;
    display: flex;
    flex-direction: column;
    width: 100%;
}

.benefits-sticky__item__text {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
    padding-top: var(--spacing-s);
    font-size: 2rem;
    line-height: 1.4;
}

.infra-text,.infra-text__text {
    padding-bottom: calc(var(--spacing-s) * 2)
}

@media only screen and (max-width: 979px) {
    .infra-text {
        margin-top:calc(var(--spacing-s) * -5.2)
    }
}

@media only screen and (min-width: 980px) {
    .infra-text {
        padding-top:calc(var(--spacing-l) / 50 * 140);
        padding-bottom: 10px
    }

    .infra-text__text {
        text-align: center;
        padding-bottom: 2px;
        margin: 0 auto;
        max-width: calc(var(--spacing-l) * 19)
    }
}

@media (min-width: 980px) and (max-height:599px) and (max-width:1180px),only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px) and (max-width:1180px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) and (max-width:1180px),only screen and (min-width:980px) and (max-width:1199px) and (max-width:1180px) {
    .infra-text__text {
        max-width:calc(100vw / 1.5)
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .infra-text__text {
        max-width:calc(var(--spacing-l) * 18)
    }
}

.about-intro {
    --transition-duration: 1.6s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing);
    transition-property: margin-bottom
}

.about-intro__title {
    top: calc(var(--header-height) + var(--spacing-l));
    left: 0;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: calc(100vw - var(--spacing-l) * 2);
    filter: grayscale(1);
    color: #fff;
}

.about-intro__title img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain
}

.about-intro__title:after {
    content: "";
    bottom: calc(var(--spacing-l) * -1);
    position: absolute;
    left: 0;
    right: 0;
    border-bottom: 1px solid var(--t-line)
}

.about-intro__text {
    opacity: 0;
    text-transform: none;
    z-index: 1;
    color: #fff;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: calc(100vw / 1.8);
    font-size: 2rem;
    line-height: 1.25em;
    --lh: 1.25em;
    letter-spacing: .02em;
    --transition-duration: 1.6s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing)
}

@media only screen and (min-width: 980px) {
    .about-intro__text {
        font-size:4rem;
        line-height: 1.125em;
        --lh: 1.125em;
        letter-spacing: 0
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .about-intro__text {
        font-size:5.4rem;
        line-height: 1.11111em;
        --lh: 1.11111em;
        letter-spacing: 0
    }
}

.about-intro__text--showed {
    opacity: 1
}

.about-intro__deco {
    opacity: 1;
    z-index: 1;
    position: absolute;
    pointer-events: none;
    --transition-duration: 1.6s;
    --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
    transition-duration: var(--transition-duration);
    transition-timing-function: var(--transition-easing);
    transition-delay: 1s
}

.about-intro__deco img {
    width: 100%;
    height: 100%
}

.about-intro__deco--hidden {
    opacity: 0;
    transition-delay: .1s
}

@media only screen and (max-width: 979px) {
    .about-intro {
        overflow:hidden;
        padding-top: calc(var(--header-height) + var(--spacing-s))
    }

    .about-intro__title {
        top: auto
    }

    .about-intro__title:after {
        bottom: 10px
    }

    .about-intro__title--en:after {
        bottom: -20px
    }

    .about-intro__background {
        position: relative;
        z-index: 1
    }

    .about-intro__background picture {
        position: relative
    }

    .about-intro__background picture:after {
        top: 0;
        content: "";
        right: 0;
        position: absolute;
        /* background-color: rgb(48 48 48); */
    }

    .about-intro__background img,.about-intro__background picture:after {
        width: 25vw;
        height: 50vw;
        display: block;
        border-radius: 50vw 0 0 50vw;
    }

    .about-intro__background img {
        margin: calc(var(--spacing-l) * -1) auto 0;
        -o-object-fit: cover;
        object-fit: cover
    }

    .about-intro__text {
        opacity: 1;
        margin: 40px auto 40px;
        width: calc(100vw - var(--spacing-l) * 4)
    }

    .about-intro__deco-1 {
        top: 27vh;
        left: 5vw
    }

    .about-intro__deco-2 {
        top: 65vh;
        right: 5vw
    }

    .about-intro__deco-1,.about-intro__deco-2 {
        width: calc(var(--spacing-s) * 4);
        height: calc(var(--spacing-s) * 4);
        z-index: 1
    }
}

@media (max-width: 667px) and (min-aspect-ratio:13/9) and (orientation:landscape),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) and (orientation:landscape) {
    .about-intro__deco-1 {
        top:50vh
    }

    .about-intro__deco-2 {
        top: 71vh
    }

    .about-intro__deco-1,.about-intro__deco-2 {
        z-index: 1
    }
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .about-intro__title:after {
        bottom:-20px
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
    .about-intro__background picture:after {
        width:calc(100% - 40vw);
        left: 20vw
    }

    .about-intro__background img {
        width: calc(100% - 40vw)
    }

    .about-intro__deco-1 {
        top: 23vh;
        left: 10vw
    }

    .about-intro__deco-2 {
        top: 55vh;
        right: 10vw
    }

    .about-intro__deco-1 {
        width: calc(100vw / 5.3);
        height: calc(100vw / 5.3)
    }

    .about-intro__deco-2 {
        width: calc(100vw / 7.6);
        height: calc(100vw / 7.6)
    }
}

@media only screen and (min-width: 980px) {
    .about-intro {
        --clip-path-y:65%;
        --clip-path-w: 24.3vw;
        --clip-path-h: 50vh
    }

    .about-intro__sticky,.has-scroll-smooth .about-intro {
        height: calc(100vh + 400px);
    }

    .about-intro__sticky {
        position: sticky;
        top: 0
    }

    .has-scroll-smooth .about-intro__sticky {
        position: relative
    }

    .about-intro__background {
        position: absolute;
        overflow: hidden;
        -webkit-clip-path: ellipse(50% 50% at center);
        clip-path: ellipse(50% 50% at center);
        top: 0;
        left: 0;
        -webkit-clip-path: ellipse(25% 40% at 50% var(--clip-path-y));
        clip-path: ellipse(25% 40% at 50% var(--clip-path-y));
        width: 100%;
        height: 150vh;
        --transition-duration: 1.6s;
        --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
        transition-duration: var(--transition-duration);
        transition-timing-function: var(--transition-easing);
        transition-property: top,-webkit-clip-path;
        transition-property: clip-path,top;
        transition-property: clip-path,top,-webkit-clip-path
    }

    .about-intro__background img {
        width: 50%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        --transition-duration: 1.6s;
        --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
        transition-duration: var(--transition-duration);
        transition-timing-function: var(--transition-easing);
        transition-delay: .4s;
        transition-duration: 1.4s;
        -o-object-position: 50% 100%;
        object-position: 50% 100%
    }

    .about-intro__background picture {
        display: flex;
        align-items: center;
        /* justify-content: center; */
    }

    .about-intro__background:after,.about-intro__background picture {
        width: 100%;
        height: 100%;
        --transition-duration: 1.6s;
        --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
        transition-duration: var(--transition-duration);
        transition-timing-function: var(--transition-easing);
        filter: grayscale(1) brightness(1.5);
    }

    .about-intro__background:after {
        position: absolute;
        content: "";
        opacity: 0;
        left: 0;
        top: 0;
        background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.5));
        transition-property: opacity
    }

    .about-intro__background--clipped {
        transition-delay: .4s;
        -webkit-clip-path: ellipse(100% 100% at 50% var(--clip-path-y));
        clip-path: ellipse(100% 100% at 50% var(--clip-path-y))
    }

    .about-intro__background--clipped img {
        width: 100%;
        height: 150vh;
        transition-delay: 0s
    }

    .about-intro__background--clipped:after {
        opacity: 1
    }

    .about-intro__clipped,.about-intro__fixed {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%
    }

    .about-intro__clipped--non-interactive,.about-intro__fixed--non-interactive {
        pointer-events: none
    }

    .about-intro__deco-1 {
        top: 77vh;
        left: 25vw;
        width: calc(100vw / 5.3);
        height: calc(100vw / 5.3)
    }

    .about-intro__deco-2 {
        right: calc(var(--spacing-l) * 4);
        bottom: 0;
        width: calc(100vw / 7.6);
        height: calc(100vw / 7.6)
    }

    .about-intro__clipped {
        overflow: hidden;
        overflow: clip
    }

    .about-intro__clipped__content {
        position: static;
        height: auto
    }

    .about-intro__down {
        --transition-duration: 1.6s;
        --transition-easing: cubic-bezier(0.25,0.74,0.22,0.99);
        transition-duration: var(--transition-duration);
        transition-timing-function: var(--transition-easing);
        transition-property: opacity,transform
    }

    .about-intro__down--invisible {
        opacity: 0;
        transform: scale(2);
        transform-origin: right top;
        pointer-events: none
    }

    .about-intro__text {
        top: calc(50% - 6em);
        padding-top: 9em;
    }
}

.about-intro-2__info {
    display: flex;
    flex-wrap: nowrap;
    margin-top: var(--spacing-l);
    padding-top: var(--spacing-s);
    margin-bottom: var(--spacing-l);
    flex-direction: column-reverse
}

.about-intro-2__info__col {
    display: flex;
    position: relative;
    flex-direction: column
}

.about-intro-2__info__col:first-child {
    min-height: calc(100vw - var(--spacing-l) * 4)
}

.about-intro-2__info__title {
    margin-top: var(--spacing-s);
    padding-top: var(--spacing-s);
    border-top: 1px solid var(--t-line)
}

.about-intro-2__info__building {
    right: 0;
    bottom: calc(var(--spacing-l) * -1);
    position: absolute;
    width: calc(100vw - var(--spacing-l) * 2);
}

.about-intro-2__info__building img {
    width: 100%;
    height: auto
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .about-intro-2__info__col:first-child {
        min-height:25vw
    }

    .about-intro-2__info__col:last-child {
        max-height: var(--viewport-height-actual)
    }

    .about-intro-2__info__col:last-child>picture,.about-intro-2__info__col:last-child img {
        width: 100%;
        height: 100%;
        max-height: var(--viewport-height-actual)
    }

    .about-intro-2__info__col:last-child img {
        -o-object-fit: cover;
        object-fit: cover
    }

    .about-intro-2__info__col>p:not(:first-child) {
        max-width: 50vw
    }

    .about-intro-2__info__building {
        width: 50vw
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
    .about-intro-2__info__col:first-child {
        min-height:calc(100vw / 1.75)
    }

    .about-intro-2__info__col>p:not(:first-child) {
        max-width: 50vw
    }

    .about-intro-2__info__building {
        width: calc(100vw - var(--spacing-l) * 5)
    }
}

@media only screen and (min-width: 980px) {
    .about-intro-2__info {
        flex-direction:row;
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l))
    }

    .about-intro-2__info__col {
        margin-top: 0;
        flex-basis: 100%;
        padding: 0 var(--spacing-s);
        /* justify-content: space-between; */
        border-left: 1px solid var(--t-line);
        color: #fff;
        font-size: 1.4em;
        line-height: 1.4;
    }

    .about-intro-2__info__col:first-child {
        border-left: none;
        min-height: 0;
        margin-top: 0
    }

    .about-intro-2__info__number,.about-intro-2__info__number img {
        width: auto;
        height: 100%
    }

    .about-intro-2__info__title {
        margin-top: 40px;
        padding-top: 0;
        border-top: none;
        color: #fff;
        text-transform: none;
        font-size: 1.5em;
        line-height: 1.2;
        padding-bottom: 50px;
    }

    .about-intro-2__info__building {
        --building-image-height: calc(var(
        --viewport-height) - var(--header-height) - var(--spacing-l));
        z-index: 1;
        height: var(--building-image-height);
        bottom: calc(var(--spacing-l) * -1);
        right: calc(var(--building-image-height) / 750 * -210);
    }

    .about-intro-2__info__building img {
        width: auto;
        height: 100%
    }
}

@media (min-width: 980px) and (max-height:599px),only screen and (min-width:980px) and (max-width:1199px) {
    .about-intro-2__info__building {
        height:calc(var(--viewport-height) - var(--header-height) - var(--spacing-l) * 5)
    }
}

.about-architecture {
    margin-top: -1px;
    padding-bottom: calc(var(--spacing-s) * 4)
}

.about-architecture__mobile-tabs {
    position: relative
}

.about-architecture__mobile-tabs__deco {
    right: calc(var(--spacing-l) * -2);
    z-index: 1;
    width: 120px;
    height: 120px;
    position: absolute;
    top: -20px
}

.about-architecture__mobile-tabs__deco img {
    width: 100%
}

.about-architecture__mobile-tabs__nav {
    display: flex;
    position: relative;
    z-index: 0;
    padding: var(--spacing-l) 0;
    flex-direction: row-reverse;
    margin-top: var(--spacing-l);
    justify-content: space-around;
    border-top: 1px solid var(--t-line)
}

.about-architecture__mobile-tabs__nav .btn:not(.is-active) {
    color: var(--t-accent)
}

.about-architecture__mobile-tabs__nav .btn:not(.is-active):after {
    display: none
}

.about-architecture__mobile-tabs__nav .btn-splitter {
    border-right: 1px solid var(--t-line)
}

.about-architecture__mobile-tabs__image img,.about-architecture__mobile-tabs__image picture {
    width: 100%;
    height: calc(100vw - var(--spacing-l) * 8);
    max-height: var(--viewport-height-actual);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: bottom;
    object-position: bottom
}

.about-architecture__mobile-tabs__title {
    z-index: 1;
    position: relative
}

@media only screen and (min-width: 980px) {
    .about-architecture {
        padding-bottom:0
    }
}

.features-sticky {
    position: relative;
    height: var(--viewport-height)
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .features-sticky {
        overflow:hidden;
        padding-top: var(--header-height);
        margin-top: calc(var(--header-height) * -1);
        padding-bottom: var(--spacing-l);
        --sticky-content-height: calc(var(--viewport-height) - var(--header-height));
        --sticky-full-height: calc(var(--viewport-height) * 3.5);
        --sticky-margin: 0;
        --sticky-padding: 0
    }

    .features-sticky__inner {
        position: relative
    }

    .features-sticky__inner:after {
        right: 220px
    }

    .features-sticky__inner:after,.features-sticky__inner:before {
        position: absolute;
        content: "";
        top: var(--spacing-s);
        border-right: 1px solid var(--t-line);
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) * 3.3)
    }

    .features-sticky__inner:before {
        left: calc(calc(calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) - var(--spacing-l)) / 730 * 650) + var(--spacing-s))
    }

    .features-sticky__inner .tabs-contents {
        position: relative
    }

    .features-sticky__tabs {
        position: absolute;
        z-index: 2;
        right: 0;
        top: 0;
        bottom: var(--spacing-l);
        display: flex;
        flex-direction: column;
        padding: var(--spacing-s) 1px 0 0;
        justify-content: space-between;
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) * 2)
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9) and (min-aspect-ratio:9/5),only screen and (min-width:668px) and (min-height:416px) and (min-aspect-ratio:9/5),only screen and (min-width:980px) and (min-aspect-ratio:9/5) {
    .features-sticky__tabs {
        justify-content:space-around
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .features-sticky__tabs .btn-wrapper {
        display:flex;
        flex-direction: column;
        align-items: center;
        position: relative
    }

    .features-sticky__tabs .btn-wrapper>span {
        margin-top: var(--spacing-s);
        width: 100px;
        align-self: flex-start;
        text-align: left
    }

    .features-sticky__tabs .btn-wrapper:last-child>span:after {
        display: none
    }

    .features-sticky__tabs .btn-wrapper .btn:not(.is-active) {
        color: var(--t-accent)
    }

    .features-sticky__tabs .btn-wrapper .btn:not(.is-active):after {
        display: none
    }

    .features-sticky__tabs .btn+.btn {
        margin-top: calc(var(--spacing-s) * .5)
    }

    .features-sticky__delim {
        border-bottom: 1px solid var(--t-line);
        width: 100%
    }

    .features-sticky__deco {
        position: absolute;
        left: 0;
        bottom: calc(var(--spacing-l) * 3);
        z-index: 2
    }

    .features-sticky__deco,.features-sticky__deco img {
        width: calc(100vw / 1440 * 180);
        height: calc(100vw / 1440 * 180)
    }

    .features-sticky__item {
        height: calc(var(--viewport-height) - var(--header-height));
        padding: 0 220px var(--spacing-l) 0;
        display: flex;
        flex-wrap: nowrap
    }

    .features-sticky__item__image {
        padding: var(--spacing-s) var(--spacing-l);
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) - var(--spacing-l));
        min-width: calc(calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) - var(--spacing-l)) / 730 * 650)
    }

    .features-sticky__item__image img,.features-sticky__item__image picture {
        width: 100%;
        height: 100%
    }

    .features-sticky__item__image img {
        -o-object-fit: cover;
        object-fit: cover;
        border-radius: 50%
    }

    .features-sticky__item__group {
        padding: 0 var(--spacing-s);
        display: flex;
        flex-direction: column;
        width: 100%
    }

    .features-sticky__item__title {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        padding: var(--spacing-s);
        max-width: 300px;
        height: calc(calc(var(--viewport-height) - var(--header-height) - var(--spacing-s) - var(--spacing-l)) * .6)
    }

    .features-sticky__item__text {
        flex-grow: 1;
        display: flex;
        align-items: flex-end;
        padding: var(--spacing-s) var(--spacing-s) 0
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .features-sticky__item__text {
        flex-grow:1;
        display: flex;
        align-items: flex-end;
        padding-top: var(--spacing-s)
    }

    .features-sticky__item__text>p {
        max-width: calc(var(--spacing-l) * 8)
    }

    .features-sticky__deco,.features-sticky__deco img {
        width: calc(100vw / 1440 * 160);
        height: calc(100vw / 1440 * 160)
    }
}

.about-atmosphere__title {
    width: 100%;
    position: relative;
    padding: calc(var(--spacing-l) * 2) 0
}

.about-atmosphere__title span {
    display: block
}

.about-atmosphere__title span:last-child {
    text-align: right
}

.about-atmosphere__title__rings {
    top: 50px;
    z-index: 1;
    right: 33vw;
    position: absolute;
    width: calc(100vw / 1.8)
}

.about-atmosphere__title__rings img,.about-atmosphere__title__rings picture {
    width: 100%;
    height: auto
}

.about-atmosphere__background {
    padding: 19px 0;
    border-top: 1px solid var(--t-line);
    border-bottom: 1px solid var(--t-line)
}

.about-atmosphere__background img,.about-atmosphere__background picture {
    width: 100%;
    max-height: 700px;
    -o-object-fit: cover;
    object-fit: cover;
    height: calc(100vw + var(--spacing-l) * 2);
    max-height: var(--viewport-height-actual)
}

.about-atmosphere__subtitle {
    z-index: 2;
    width: 100%;
    position: relative;
    text-transform: uppercase;
    padding-top: var(--spacing-l);
    font-size: 2.7rem;
    line-height: 1.2963em;
    --lh: 1.2963em;
    letter-spacing: .02em;
    color: #fff;
}

@media only screen and (min-width: 980px) {
    .about-atmosphere__subtitle {
        font-size:8rem;
        line-height: 1em;
        --lh: 1em;
        letter-spacing: 0
    }
}

.about-atmosphere__elipsis {
    z-index: 1;
    height: 160px;
    position: relative
}

.about-atmosphere__elipsis picture {
    position: absolute;
    pointer-events: none;
    top: calc(var(--spacing-l) * -2);
    left: calc(50vw - 100vw / 2.7)
}

.about-atmosphere__elipsis picture img {
    height: auto;
    border-radius: 50%;
    width: calc(100vw / 1.6)
}

.about-atmosphere__cards {
    padding: 20px 0;
    margin-top: 14px;
    border-top: 1px solid var(--t-line)
}

.about-atmosphere__card {
    display: flex;
    position: relative;
    flex-direction: column;
    padding: var(--spacing-l);
    justify-content: space-between;
    margin-bottom: calc(var(--spacing-l) * 2);
    height: calc(100vw - var(--spacing-l) * 2)
}

.about-atmosphere__card:after {
    left: 0;
    content: "";
    height: 1px;
    width: 100%;
    bottom: -20px;
    display: block;
    position: absolute;
    background-color: rgba(var(--c-cold-1-rgb),.15)
}

.about-atmosphere__card--right {
    margin-bottom: var(--spacing-l)
}

.about-atmosphere__card__title small {
    font-weight: 500;
    font-size: 2.7rem;
    line-height: 1.2963em;
    --lh: 1.2963em;
    letter-spacing: .02em
}

@media only screen and (min-width: 980px) {
    .about-atmosphere__card__title small {
        font-size:4rem;
        line-height: 1.125em;
        --lh: 1.125em;
        letter-spacing: 0
    }
}

.about-atmosphere__card__text {
    height: 3em;
    max-width: 150px;
    font-weight: 500
}

.about-atmosphere__card__elipse {
    height: 100px;
    position: relative;
    text-align: center;
    line-height: 100px
}

.about-atmosphere__card__elipse p {
    line-height: 100px
}

.about-atmosphere__card__elipse:after {
    content: "";
    height: 120px;
    position: absolute;
    border-radius: 50%;
    top: calc(var(--spacing-l) * -.5);
    left: calc(var(--spacing-l) * 1.5);
    border: 1px solid var(--t-primary);
    width: calc(100% - var(--spacing-l) * 3)
}

.about-atmosphere__lamp {
    width: 100%;
    height: 100%;
    position: relative
}

.about-atmosphere__lamp picture {
    right: 0;
    bottom: -20px;
    position: absolute
}

.about-atmosphere__lamp img {
    height: auto;
    width: calc(100vw / 5.5)
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .about-atmosphere__title__rings {
        top:0;
        right: auto;
        left: 0;
        transform: translateY(25%)
    }
}

@media (max-width: 567px) and (max-aspect-ratio:13/9),(max-width:667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .about-atmosphere__row {
        flex-direction:column-reverse
    }

    .about-atmosphere__deco-xs {
        top: -50px;
        max-width: 60vw;
        position: relative;
        left: calc(40vw - var(--spacing-l) * 2)
    }
}

@media (max-width: 667px) and (min-aspect-ratio:13/9) and (orientation:landscape),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) and (orientation:landscape) {
    .about-atmosphere__elipsis picture {
        left:25vw
    }

    .about-atmosphere__elipsis picture img {
        width: 50vw
    }

    .about-atmosphere__deco-xs {
        max-width: 40vw;
        left: auto;
        margin-left: auto
    }

    .about-atmosphere__title__rings {
        top: -25px;
        right: 0;
        width: calc(100vw / 2.2)
    }

    .about-atmosphere__cards {
        display: flex;
        justify-content: space-between
    }

    .about-atmosphere__card {
        flex-basis: calc(50% - 10px);
        height: calc(60vw - var(--spacing-l) * 2)
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-atmosphere {
        position:relative
    }

    .about-atmosphere:after {
        content: "";
        position: absolute;
        bottom: -2px;
        right: var(--spacing-l);
        left: var(--spacing-l);
        border-bottom: 1px solid var(--t-line)
    }

    .about-atmosphere__row {
        position: relative
    }

    .about-atmosphere__row:before {
        content: "";
        position: absolute;
        top: calc(var(--spacing-s) * -1);
        left: 0;
        right: 0;
        border-bottom: 1px solid var(--t-line)
    }

    .about-atmosphere__background img,.about-atmosphere__background picture {
        width: 100%;
        height: auto;
        max-height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l))
    }

    .about-atmosphere__crop-1 {
        max-width: 282px;
        display: inline-block
    }

    .about-atmosphere__title {
        padding: calc(var(--spacing-l) * 1.5) 0 var(--spacing-s)
    }

    .about-atmosphere__title__rings {
        top: 0;
        right: 180px;
        width: calc(100vw / 3)
    }

    .about-atmosphere__elipsis {
        height: 238px;
        margin-bottom: 20px;
        position: relative
    }

    .about-atmosphere__elipsis picture {
        top: calc(var(--spacing) * -1);
        left: calc(50vw - 100vw / 5)
    }

    .about-atmosphere__elipsis picture img {
        width: calc(100vw / 2.9)
    }

    .about-atmosphere__lamp {
        position: absolute;
        bottom: 0;
        right: var(--spacing-l);
        pointer-events: none
    }

    .about-atmosphere__cards {
        margin-top: 20px;
        display: flex
    }

    .about-atmosphere__card {
        flex: 0 0 calc(100vw / 3.5);
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l) * 3.5);
        margin-bottom: 0;
        padding: var(--spacing-l);
        max-height: calc(100vw / 3)
    }

    .about-atmosphere__card:after {
        top: 0;
        left: auto;
        width: 1px;
        right: -20px;
        bottom: auto;
        height: 100%
    }

    .about-atmosphere__card--left {
        margin-right: 20px
    }

    .about-atmosphere__card--right {
        margin-left: 20px
    }

    .about-atmosphere__card__text {
        max-width: 150px;
        font-weight: 400
    }

    .about-atmosphere__card__elipse {
        position: relative;
        text-align: center
    }

    .about-atmosphere__card__elipse:after {
        left: 0;
        top: calc(100vw / 1440 * -80 + 50px);
        width: 100%;
        content: "";
        position: absolute;
        border-radius: 50%;
        height: calc(100vw / 1440 * 168);
        border: 1px solid var(--t-primary)
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
    .about-atmosphere__card {
        height:calc(50vw - 20px);
        flex-basis: calc(50% - 20px)
    }
}

.about-technical {
    padding-top: 34px
}

.about-technical__head {
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 38px;
    border-bottom: 1px solid var(--t-line)
}

.about-technical__head__nav {
    left: 0;
    bottom: -55px;
    position: absolute
}

.about-technical__head__counter {
    position: absolute;
    white-space: nowrap;
    bottom: -32px;
    right: 0
}

.about-technical__carousel {
    overflow: hidden;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--t-line)
}

.carousel-card {
    display: flex;
    padding: 0 20px;
    min-height: 254px;
    position: relative;
    flex-direction: column-reverse;
    justify-content: space-between
}

.carousel-card__picture {
    position: relative;
    align-self: center;
    width: calc(100vw / var(--spacing-l) * 8)
}

.carousel-card__picture:before {
    top: 90px;
    left: 9vw;
    width: 50vw;
    content: "";
    height: 100px;
    position: absolute;
    border-radius: 50%;
    background-color: var(--t-background)
}

.carousel-card__picture img,.carousel-card__picture picture {
    width: 100%;
    height: auto;
    position: relative
}

.carousel-card__title {
    max-width: 170px;
    position: relative;
    font-weight: 500;
    left: calc(var(--spacing-l) * -1)
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .carousel-card__picture {
        width:40vw
    }

    .carousel-card__picture:before {
        width: 30vw;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%)
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-technical {
        padding-top:92px
    }

    .about-technical__carousel {
        padding-bottom: 20px
    }

    .about-technical__head {
        margin-bottom: 20px
    }

    .about-technical__head__nav {
        right: 0;
        left: auto;
        bottom: var(--spacing-l)
    }

    .carousel-card {
        min-height: 410px;
        padding: 0 20px;
        flex-direction: column;
        justify-content: flex-start
    }

    .carousel-card__picture {
        width: calc(100vw / 6)
    }

    .carousel-card__picture:before {
        top: calc(100% - 100vw / 12 - var(--spacing-s) * 2);
        left: 10px;
        width: calc(100vw / 6 - var(--spacing-s));
        height: calc(100vw / 12 - var(--spacing-s))
    }

    .carousel-card__title {
        left: 0;
        max-width: 260px;
        min-height: 100px;
        font-weight: 400;
        left: calc(var(--spacing) * -1)
    }

    .carousel-card:after {
        top: 0;
        width: 1px;
        opacity: 0;
        right: -1px;
        content: "";
        height: 100%;
        position: absolute;
        transition-delay: .2s;
        background-color: var(--t-line)
    }

    .active .carousel-card:after {
        opacity: 1
    }
}

.about-flats {
    margin: 0 var(--spacing-l);
    display: flex;
    flex-flow: column;
    position: relative;
    border-bottom: 1px solid var(--t-line);
    padding-bottom: calc(var(--spacing-s) * 6)
}

.about-flats__left {
    flex: 1 1 auto;
    order: 2;
    z-index: 3
}

.about-flats__title {
    padding-bottom: calc(var(--spacing-s) / 20 * 25)
}

.about-flats__right {
    position: relative;
    flex: 1 1 auto;
    order: 1;
    height: calc(280 / 320 * (100vw - var(--spacing-l) * 2))
}

.about-flats__right:after {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    height: 100%;
    background: linear-gradient(180deg,transparent 62.68%,rgba(0,0,0,.5));
    z-index: 2;
    pointer-events: none
}

.about-flats__right .tabs-contents {
    height: 100%
}

.about-flats__gallery__control {
    position: relative;
    width: 100%;
    padding: 50px 50px 230px;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.about-flats__gallery__control__top {
    display: flex;
    flex-wrap: nowrap
}

.about-flats__gallery__control__title {
    position: absolute;
    left: var(--spacing-s);
    right: var(--spacing-s);
    bottom: 100%;
    padding-bottom: var(--spacing-s);
    z-index: 3;
    color: var(--t-text);
    font-size: 1.4rem;
    line-height: 1.42857em;
    --lh: 1.42857em;
    letter-spacing: 0
}

@media only screen and (min-width: 980px) {
    .about-flats__gallery__control__title {
        font-size:2.7rem;
        line-height: 1.2963em;
        --lh: 1.2963em;
        letter-spacing: .02em
    }
}

@media only screen and (max-width: 979px) {
    .about-flats__gallery__control__title .tabs-contents__content {
        min-height:100px;
        display: flex;
        align-items: flex-end
    }

    .about-flats__gallery__control__title .tabs-contents__content[aria-hidden=true] {
        display: none
    }
}

.about-flats__gallery__control__button {
    margin: var(--spacing-s) auto calc(var(--spacing-s) * 2.5 - var(--spacing-l));
    display: flex
}

.about-flats__gallery__control__image {
    position: absolute;
    width: 160px;
    right: 50%;
    bottom: calc(var(--spacing-s) * -2);
    z-index: 1;
    pointer-events: none
}

.about-flats__gallery__control__image img {
    display: block;
    width: 100%;
    height: auto
}

.about-flats__gallery__control__counter {
    color: var(--c-warm-3);
    margin-left: auto;
    font-size: 1.2rem;
    line-height: 1.25em;
    --lh: 1.25em;
    letter-spacing: .02em
}

.about-flats__gallery__item {
    height: 100%;
    overflow: hidden
}

.about-flats__gallery__item picture {
    height: 100%;
    width: calc(100% + 2px)
}

.about-flats__gallery__item img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-flats {
        flex-wrap:nowrap;
        flex-flow: row;
        border-bottom: none;
        padding-bottom: 0;
        height: calc(var(--viewport-height) - var(--header-height))
    }

    .about-flats:after {
        display: none
    }

    .about-flats__title {
        position: absolute;
        max-width: 280px;
        left: 0;
        top: 0
    }

    .about-flats__left {
        flex: 1 1 calc(460 / 1440 * 100vw);
        order: 2
    }

    .about-flats__right {
        width: auto;
        flex-grow: 0;
        order: 1;
        flex-basis: calc(66.66% - var(--spacing-s) - 100vw / 1440 * 164);
        max-width: calc(66.66% - var(--spacing-s) - 100vw / 1440 * 164);
        height: calc(860 / 1440 * 100vw);
        margin: 0 var(--spacing-s);
        max-height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l));
        position: relative;
        min-width: calc(66.66% - var(--spacing-s) - 100vw / 1440 * 164)
    }

    .about-flats__right:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        right: calc(var(--spacing-s) * -1);
        border-left: 1px solid var(--t-line)
    }

    .about-flats__gallery__control {
        position: absolute;
        right: 0;
        bottom: 0;
        width: calc(560 / 1440 * 100vw);
        z-index: 3;
        height: calc(530 / 1440 * 100vw);
        max-height: 60vh
    }

    .about-flats__gallery__control__title {
        margin-right: auto;
        position: static;
        font-weight: 400;
        text-transform: uppercase;
        color: var(--t-text);
        flex-grow: 1;
        max-width: 280px
    }

    .about-flats__gallery__control__button {
        margin: 0;
        position: absolute;
        left: 50%;
        top: 55%;
        transform: translate(-50%,-50%)
    }

    .about-flats__gallery__control__image {
        width: calc(var(--spacing-l) / 40 * 214);
        left: -9vw;
        bottom: 0
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) and (max-height:1050px) {
    .about-flats__gallery__control {
        max-height:calc(var(--spacing-l) * 9);
        min-height: calc(var(--spacing-l) * 9)
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .about-flats__gallery__control__image {
        width:calc(var(--spacing-l) / 40 * 180);
        left: -8vw;
        bottom: var(--spacing-s)
    }
}

@media screen and (min-width: 2460px) {
    .about-flats__gallery__control__image {
        width:calc(var(--spacing-l) / 40 * 214);
        left: -7vw
    }
}

.about-houses__row {
    position: relative
}

.about-houses__title {
    width: 100%;
    padding: 30px 0 50px
}

.about-houses__title span {
    display: block;
    font-size: calc(100vh / 8)
}

.about-houses__picture {
    padding: 0 20px
}

.about-houses__picture picture {
    max-width: 100%;
    position: relative;
    height: calc(var(--viewport-height) - var(--spacing-l))
}

.about-houses__picture img {
    width: 100%;
    height: 100%;
    margin-top: -3px;
    -o-object-fit: contain;
    object-fit: contain
}

.about-houses__picture picture:after {
    top: 0;
    content: "";
    right: -20px;
    height: 100%;
    position: absolute;
    border-right: 1px solid var(--t-line)
}

.about-houses__card {
    position: relative
}

.about-houses__overlay {
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    padding: 0 20px 15px
}

.about-houses__overlay span {
    position: relative;
    z-index: 1
}

.about-houses__overlay:before {
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    width: 100%;
    content: "";
    height: 120px;
    position: absolute;
    background: linear-gradient(180deg,transparent 64.38%,rgba(0,0,0,.8))
}

.about-houses__content {
    right: 0;
    bottom: 0;
    position: absolute;
    padding: 50px 50px 230px;
    min-width: calc(100vw / 2.6)
}

.about-houses__content__title {
    max-width: 250px;
    padding-bottom: 120px
}

.about-houses__content__button {
    width: 100%;
    text-align: center
}

.about-houses__nav {
    right: 50px;
    bottom: 490px;
    position: absolute
}

.about-houses__deco {
    top: -63px;
    z-index: 2;
    position: absolute;
    pointer-events: none;
    width: calc(100vw / 2);
    left: calc(50% - var(--spacing-s))
}

.about-houses__deco img {
    width: 100%;
    height: auto
}

@media (max-width: 667px) and (min-aspect-ratio:13/9) and (orientation:landscape),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) and (orientation:landscape) {
    .about-houses__deco {
        width:calc(100vw / 3);
        left: calc(60% - var(--spacing-s))
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-houses__title {
        padding:0;
        height: calc(var(--viewport-height) - var(--header-height) - var(--spacing-l));
        position: relative;
        width: calc(100vw / 1440 * 150);
        border-right: 1px solid var(--t-line)
    }

    .about-houses__title img,.about-houses__title picture {
        width: auto;
        height: 100%;
        pointer-events: none
    }
}

.about-outro {
    padding: 70px 0;
    position: relative
}

.about-outro:after {
    bottom: 2px;
    content: "";
    display: block;
    position: absolute;
    left: var(--spacing-l);
    right: var(--spacing-l);
    border-bottom: 1px solid var(--t-line)
}

.about-outro__content {
    width: 100%;
    display: flex;
    position: relative;
    align-items: center;
    flex-direction: column
}

.about-outro__title {
    z-index: 2;
    max-width: 100%;
    position: relative;
    font-size: 5.4rem;
    line-height: .92593em;
    --lh: 0.92593em;
    letter-spacing: 0
}

@media (min-aspect-ratio: 13/9),only screen and (min-width:568px) {
    .about-outro__title {
        font-size:8rem;
        line-height: 1em;
        --lh: 1em;
        letter-spacing: 0
    }
}

@media only screen and (min-width: 980px) {
    .about-outro__title {
        font-size:10.8rem;
        line-height: 1.01852em;
        --lh: 1.01852em;
        letter-spacing: -.02em
    }
}

@media only screen and (min-width: 1200px) and (min-height:600px) {
    .about-outro__title {
        font-size: 9rem;
        line-height: 1em;
        --lh: 1em;
        letter-spacing: -.04em
    }
}

.about-outro__title span {
    white-space: nowrap;
    display: block;
    margin-left: -20px
}

.about-outro__hr {
    z-index: 0;
    width: 100%;
    margin-top: calc(1em + var(--spacing-s) * .5);
    position: absolute;
    font-size: 5.4rem;
    line-height: .92593em;
    --lh: 0.92593em;
    letter-spacing: 0
}

@media (min-aspect-ratio: 13/9),only screen and (min-width:568px) {
    .about-outro__hr {
        font-size:8rem;
        line-height: 1em;
        --lh: 1em;
        letter-spacing: 0
    }
}

@media only screen and (min-width: 980px) {
    .about-outro__hr {
        font-size:10.8rem;
        line-height: 1.01852em;
        --lh: 1.01852em;
        letter-spacing: -.02em
    }
}

@media only screen and (min-width: 1200px) and (min-height:600px) {
    .about-outro__hr {
        font-size:16rem;
        line-height: 1em;
        --lh: 1em;
        letter-spacing: -.04em
    }
}

.about-outro__background {
    z-index: 1;
    position: relative;
    top: calc(var(--spacing-l) * -1);
    width: calc(100% - var(--spacing-l) * 5)
}

.about-outro__background img {
    width: 100%;
    height: calc(100vw / 2.74);
    border-radius: 50%;
    object-fit: cover;
}

.about-outro__text {
    z-index: 2;
    position: relative;
    text-align: center;
    margin-bottom: 40px;
    font-size: 2rem;
    margin-top: 30px;
    line-height: 1.25em;
    --lh: 1.25em;
    letter-spacing: .02em;
    text-transform: none;
}

@media only screen and (min-width: 980px) {
    .about-outro__text {
        font-size: 2.5rem;
        line-height: 1.5;
        --lh: 1.125em;
        letter-spacing: 0
    }
}

@media only screen and (min-width: 1920px) and (min-height:750px) {
    .about-outro__text {
        font-size:5.4rem;
        line-height: 1.11111em;
        --lh: 1.11111em;
        letter-spacing: 0
    }
}

.about-outro__deco-1 {
    top: 30%;
    left: 20%;
    z-index: 2;
    width: calc(100vw / 3.5)
}

.about-outro__deco-1 img {
    width: 100%;
    height: auto
}

.about-outro__deco-2 {
    top: 55%;
    left: 70%;
    z-index: 2;
    width: calc(100vw / 6.5)
}

.about-outro__deco-2 img {
    width: 100%;
    height: auto
}

@media only screen and (max-width: 567px) and (max-aspect-ratio:13/9) {
    .about-outro__title {
        font-size:calc(100vw / 6.5);
        left: -2vw
    }
}

@media (max-width: 667px) and (min-aspect-ratio:13/9),only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
    .about-outro__title {
        margin-left:auto;
        text-align: right;
        max-width: 50vw
    }

    .about-outro__title span {
        white-space: normal
    }

    .about-outro__hr {
        margin-top: calc(2em + var(--spacing-s))
    }
}

@media (min-width: 980px) and (max-height:599px),only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px),only screen and (min-width:668px) and (min-height:416px) and (max-width:979px),only screen and (min-width:980px) and (max-width:1199px) {
    .about-outro__title {
        margin-left:auto;
        text-align: right;
        max-width: 50vw
    }
}

@media only screen and (min-width: 568px) and (max-aspect-ratio:13/9),only screen and (min-width:668px) and (min-height:416px),only screen and (min-width:980px) {
    .about-outro {
        padding:100px 0 calc(var(--spacing-l) * 2)
    }

    .about-outro__title {
        top: 0;
        left: 0;
        right: 0;
        text-align: left;
        position: absolute;
        align-self: flex-end;
        padding-bottom: var(--spacing-s)
    }

    .about-outro__title span {
        max-width: 50vw;
        white-space: normal;
        display: inline-block
    }

    .about-outro__hr {
        margin-top: calc(2em + var(--spacing-s))
    }

    .about-outro__text {
        max-width: calc(100vw / 2)
    }

    .about-outro__background {
        width: calc(100vw / 2.74);
        top: auto;
    }

    .about-outro__deco-1 {
        top: 33%;
        left: 28%;
        width: calc(100vw / 6)
    }

    .about-outro__deco-2 {
        top: calc(var(--spacing-l) * 2);
        left: calc(var(--spacing-l) * 4);
        width: calc(100vw / 10)
    }
}

.about-outro+footer {
    margin-top: -1px
}
.flex.values {
    display: flex;
    justify-content: space-between;
    padding: 50px;
}

.value img {
    height: 200px;
    margin: 0 auto;
    display: block;
    border-radius: 5px;
    margin-bottom: 25px;
    width: 180px;
    object-fit: cover;
}

.value {
    margin-top: 50px;
    width: 25%;
    text-align: center;
    margin-bottom: 40px;
}

.value h4 {
    margin-bottom: 33px;
}
@media screen and (max-width:990px){
    .h1, h1 {
    font-size: 5rem;
}

.about-intro__fixed.about-intro__fixed--non-interactive {
    margin-top: 30px;
}

.about-intro-2__info__title {
    font-size: 2rem;
    color: #fff;
}

.about-intro-2__info__col p.leading-trim {
    color: #fff;
}

.about-tabs__title span {
    transform: none!important;
}

.flex.values {
    flex-wrap: wrap;
}

.value {
    width: 100%;
}

.about-outro__title {
    font-size: 3rem;
    margin-bottom: 80px;
}

.about-outro__background img,.about-outro__background {
    width: 50vw;
    height: 50vw;
    margin: 0 auto;
}

}