a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

    blockquote:after, blockquote:before, q:after, q:before {
        content: "";
        content: none
    }

table {
    border-collapse: collapse;
    border-spacing: 0
}

 
html {
    font-size: .73206442vw
}

@media only screen and (min-width:1921px) {
    html {
        font-size: .5952381vw
    }
}

@media only screen and (min-width:768px) and (max-width:1365px) {
    html {
        font-size: 10px
    }
}

@media only screen and (max-width:767px) {
    html {
        font-size: 2.41545894vw
    }
}

@media only screen and (max-width:767px) and (orientation:landscape) {
    html {
        font-size: 1.47058824vw
    }
}

@media only screen and (max-width:519px) {
    html {
        font-size: 3.125vw
    }
}

@media only screen and (max-width:519px) and (orientation:landscape) {
    html {
        font-size: 1.92678227vw
    }
}

* {
    box-sizing: border-box
}

html {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    height: var(--vh);
    overflow: hidden
}

body, html {
    width: 100vw
}

body {
    font-family: Aileron-Regular;
    font-size: 1.4rem;
    line-height: 1.28571429;
    background-color: #ededed;
    color: #333;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-overflow-scrolling: touch;
    overflow-x: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

a {
    text-decoration: none;
    -webkit-appearance: none
}

.no-touchevents a:hover, a {
    color: inherit
}

button {
    background: none;
    border: 0;
    outline: none;
    -webkit-appearance: none;
    border-radius: 0
}

a, button, input {
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

input {
    -webkit-appearance: none;
    background: none
}

/*.no-cursor:not(:-webkit-full-screen), .no-cursor :not(:-webkit-full-screen) {
    cursor: none !important
}

.no-cursor:not(:-ms-fullscreen), .no-cursor :not(:-ms-fullscreen) {
    cursor: none !important
}

.no-cursor:not(:fullscreen), .no-cursor :not(:fullscreen) {
    cursor: none !important
}*/

:-webkit-full-screen {
    pointer-events: all !important;
    cursor: pointer !important
}

:-ms-fullscreen {
    pointer-events: all !important;
    cursor: pointer !important
}

:fullscreen {
    pointer-events: all !important;
    cursor: pointer !important
}

[data-scroll-direction=horizontal] [data-scroll-section] {
    display: flex !important
}

.preload {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: all !important
}

.transition-wrapper {
    opacity: 1;
    transition: opacity .35s ease
}

.menu-open .transition-wrapper {
    opacity: 0
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .has-scroll-smooth .home [data-scroll-container] {
        min-height: unset !important;
        height: var(--vh)
    }
}

.please-rotate {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    overflow: hidden;
    background-color: #ededed;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 999999999999999;
    padding: 1.5rem;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

@media only screen and (max-width:899px) and (orientation:landscape) {
    .please-rotate {
        opacity: 1;
        visibility: visible
    }
}

.h1, h1 {
    font-family: Aileron-Regular;
    font-size: 7.2rem;
    line-height: 1;
    letter-spacing: -.005em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .h1, h1 {
        font-size: 4.5rem;
        line-height: 1;
        letter-spacing: .01em
    }
}

.h2, h2 {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 6.4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .h2, h2 {
        font-size: 3.8rem;
        line-height: 1.1
    }
}

.h3, h3 {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .h3, h3 {
        font-size: 3rem;
        line-height: 1.1
    }
}

.h4, h4 {
    font-family: Aileron-Regular;
    font-size: 2rem;
    line-height: 120%;
    letter-spacing: .01em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .h4, h4 {
        font-size: 1.8rem
    }
}

li, p {
    font-weight: 400;
    line-height: 130%;
    letter-spacing: .01em;
    color: #333
}

button, li, p {
    font-size: 1.3rem
}

button {
    font-family: Aileron-Regular
}

a {
    color: #a5a5a5
}

html.js {
    overflow-x: hidden
}

    html.js :where(img) {
        max-width: unset
    }

main {
    height: 100%
}

canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    z-index: 9999999999;
    pointer-events: none
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-vertical > .swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.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-wrap: wrap;
    flex-direction: column
}

.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.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 {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        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 {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: 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 {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/44*27);
    height: var(--swiper-navigation-size);
    margin-top: calc(var(--swiper-navigation-size)*-1/2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color,var(--swiper-theme-color))
}

    .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
        opacity: .35;
        cursor: auto;
        pointer-events: none
    }

    .swiper-button-next:after, .swiper-button-prev:after {
        font-family: swiper-icons;
        font-size: var(--swiper-navigation-size);
        text-transform: none !important;
        letter-spacing: 0;
        text-transform: none;
        font-variant: normal
    }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

    .swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
        content: "prev"
    }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

    .swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {
        content: "next"
    }

    .swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
        --swiper-navigation-color: #fff
    }

    .swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black {
        --swiper-navigation-color: #000
    }

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity .3s;
    transform: translateZ(0);
    z-index: 10
}

    .swiper-pagination.swiper-pagination-hidden {
        opacity: 0
    }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
        transform: scale(.33);
        position: relative
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
        transform: scale(1)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
        transform: scale(.66)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
        transform: scale(.33)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
        transform: scale(.66)
    }

    .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
        transform: scale(.33)
    }

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color,var(--swiper-theme-color))
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0,-50%,0)
}

    .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 6px 0;
        display: block
    }

    .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
        top: 50%;
        transform: translateY(-50%);
        width: 8px
    }

        .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
            display: inline-block;
            transition: transform .2s,top .2s
        }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
}

    .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
        transition: transform .2s,left .2s
    }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s,right .2s
}

.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}

    .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
        background: var(--swiper-pagination-color,var(--swiper-theme-color));
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        transform: scale(0);
        transform-origin: left top
    }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

    .swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
        width: 4px;
        height: 100%;
        left: 0;
        top: 0
    }

.swiper-pagination-white {
    --swiper-pagination-color: #fff
}

.swiper-pagination-black {
    --swiper-pagination-color: #000
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0,0,0,.1)
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0,0,0,.5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

    .swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
        max-width: 100%;
        max-height: 100%;
        -o-object-fit: contain;
        object-fit: contain
    }

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s linear infinite;
    animation: swiper-preloader-spin 1s linear infinite;
    box-sizing: border-box;
    border-radius: 50%;
    border: 4px solid var(--swiper-preloader-color,var(--swiper-theme-color));
    border-top: 4px solid transparent
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@-webkit-keyframes swiper-preloader-spin {
    to {
        transform: rotate(1turn)
    }
}

@keyframes swiper-preloader-spin {
    to {
        transform: rotate(1turn)
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

    .swiper-container-fade .swiper-slide .swiper-slide {
        pointer-events: none
    }

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

    .swiper-container-cube .swiper-slide {
        pointer-events: none;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        z-index: 1;
        visibility: hidden;
        transform-origin: 0 0;
        width: 100%;
        height: 100%
    }

        .swiper-container-cube .swiper-slide .swiper-slide {
            pointer-events: none
        }

    .swiper-container-cube.swiper-container-rtl .swiper-slide {
        transform-origin: 100% 0
    }

    .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
        pointer-events: auto
    }

    .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
        pointer-events: auto;
        visibility: visible
    }

    .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
        z-index: 0;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }

    .swiper-container-cube .swiper-cube-shadow {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        background: #000;
        opacity: .6;
        filter: blur(50px);
        z-index: 0
    }

.swiper-container-flip {
    overflow: visible
}

    .swiper-container-flip .swiper-slide {
        pointer-events: none;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        z-index: 1
    }

        .swiper-container-flip .swiper-slide .swiper-slide {
            pointer-events: none
        }

    .swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
        pointer-events: auto
    }

    .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
        z-index: 0;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }

/*! locomotive-scroll v4.1.0 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */ html.has-scroll-smooth {
    overflow: hidden
}

html.has-scroll-dragging {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.has-scroll-smooth body {
    overflow: hidden
}

.has-scroll-smooth [data-scroll-container] {
    min-height: 100vh;
    min-height: var(--vh)
}

[data-scroll-direction=horizontal] [data-scroll-container] {
    height: 100vh;
    height: var(--vh);
    display: inline-block;
}

[data-scroll-direction=horizontal] [data-scroll-section] {
    display: inline-block;
    vertical-align: top;
    height: 100%
}

.c-scrollbar {
    position: absolute;
    right: 0;
    top: 0;
    width: 11px;
    height: 100%;
    transform-origin: center right;
    transition: transform .3s,opacity .3s;
    opacity: 0
}

    .c-scrollbar:hover {
        transform: scaleX(1.45)
    }

    .c-scrollbar:hover, .has-scroll-dragging .c-scrollbar, .has-scroll-scrolling .c-scrollbar {
        opacity: 1
    }

[data-scroll-direction=horizontal] .c-scrollbar {
    width: 100%;
    height: 10px;
    top: auto;
    bottom: 0;
    transform: scaleY(1)
}

    [data-scroll-direction=horizontal] .c-scrollbar:hover {
        transform: scaleY(1.3)
    }

.c-scrollbar_thumb {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #000;
    opacity: .5;
    width: 7px;
    border-radius: 10px;
    margin: 2px;
    cursor: -webkit-grab;
    cursor: grab
}

.has-scroll-dragging .c-scrollbar_thumb {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

[data-scroll-direction=horizontal] .c-scrollbar_thumb {
    right: auto;
    bottom: 0
}

[data-inview-delay="1"] {
    transition-delay: .1s;
    -webkit-animation-delay: .1s;
    animation-delay: .1s
}

[data-inview-delay="2"] {
    transition-delay: .15s;
    -webkit-animation-delay: .15s;
    animation-delay: .15s
}

[data-inview-delay="3"] {
    transition-delay: .2s;
    -webkit-animation-delay: .2s;
    animation-delay: .2s
}

[data-inview-delay="4"] {
    transition-delay: .25s;
    -webkit-animation-delay: .25s;
    animation-delay: .25s
}

[data-inview-delay="5"] {
    transition-delay: .3s;
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

[data-inview-delay="6"] {
    transition-delay: .35s;
    -webkit-animation-delay: .35s;
    animation-delay: .35s
}

[data-inview-delay="7"] {
    transition-delay: .4s;
    -webkit-animation-delay: .4s;
    animation-delay: .4s
}

[data-inview-delay="8"] {
    transition-delay: .45s;
    -webkit-animation-delay: .45s;
    animation-delay: .45s
}

[data-inview-delay="9"] {
    transition-delay: .5s;
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

[data-inview-delay="10"] {
    transition-delay: .55s;
    -webkit-animation-delay: .55s;
    animation-delay: .55s
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    [data-inview-delay], [data-inview] {
        -webkit-animation-delay: 0ms !important;
        animation-delay: 0ms !important;
        transition-delay: 0ms !important
    }
}

[data-inview=fade] {
    opacity: 0;
    transition-property: opacity;
    transition-duration: .45s;
    transition-timing-function: ease-in-out
}

.is-ready .is-inview [data-inview=fade], .is-ready [data-inview=fade].is-inview {
    opacity: 1
}

[data-inview=fade-long] {
    opacity: 0;
    transition-property: opacity;
    transition-duration: .7s;
    transition-timing-function: ease-in-out
}

.is-ready .is-inview [data-inview=fade-long], .is-ready [data-inview=fade-long].is-inview {
    opacity: 1
}

[data-inview=fade-to-op] {
    opacity: 0 !important;
    transition-property: opacity;
    transition-duration: .45s;
    transition-timing-function: ease-in-out;
    will-change: opacity
}

    [data-inview=fade-to-op].is-visible {
        opacity: .8 !important
    }

[data-inview=bottom] {
    opacity: 0;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready [data-inview=bottom].is-inview {
    -webkit-animation-name: appear-up;
    animation-name: appear-up
}

[data-inview=bottom-short] {
    opacity: 0;
    will-change: opacity,transform;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 1.4s;
    animation-duration: 1.4s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready .is-inview [data-inview=bottom-short], .is-ready [data-inview=bottom-short].is-inview {
    -webkit-animation-name: appear-up-short;
    animation-name: appear-up-short
}

[data-inview=up-short] {
    opacity: 0;
    will-change: opacity,transform;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 1.4s;
    animation-duration: 1.4s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready .is-inview [data-inview=up-short], .is-ready [data-inview=up-short].is-inview {
    -webkit-animation-name: appear-down-short;
    animation-name: appear-down-short
}

[data-inview=clipping] {
    opacity: 0;
    will-change: clip-path;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 1.6s;
    animation-duration: 1.6s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready [data-inview=clipping].is-inview {
    -webkit-animation-name: clipping;
    animation-name: clipping
}

[data-inview=appear-right] {
    opacity: 0;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 1.8s;
    animation-duration: 1.8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

    .is-ready .is-inview [data-inview=appear-right], .is-ready [data-inview=appear-right].is-inview, [data-inview=appear-right].lazy-loaded {
        -webkit-animation-name: appear-right;
        animation-name: appear-right
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .is-ready .is-inview [data-inview=appear-right], .is-ready [data-inview=appear-right].is-inview, [data-inview=appear-right].lazy-loaded {
        -webkit-animation-name: appear-bottom-long;
        animation-name: appear-bottom-long
    }
}

[data-inview=appear-left] {
    opacity: 0;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

    .is-ready [data-inview=appear-left].is-inview, [data-inview=appear-left].lazy-loaded {
        -webkit-animation-name: appear-left;
        animation-name: appear-left
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .is-ready [data-inview=appear-left].is-inview, [data-inview=appear-left].lazy-loaded {
        -webkit-animation-name: appear-bottom-long;
        animation-name: appear-bottom-long
    }
}

[data-inview=info-appear-left] {
    opacity: 0;
    -webkit-animation-timing-function: cubic-bezier(.19,1,.22,1);
    animation-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready .is-inview [data-inview=info-appear-left] {
    -webkit-animation-name: appear-left;
    animation-name: appear-left
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .is-ready .is-inview [data-inview=info-appear-left] {
        -webkit-animation-name: appear-bottom-long;
        animation-name: appear-bottom-long
    }
}

[data-inview=appear-left-long-img], [data-inview=appear-left-long] {
    opacity: 0;
    -webkit-animation-timing-function: cubic-bezier(.215,.61,.355,1);
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    -webkit-animation-duration: 1.75s;
    animation-duration: 1.75s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready .is-inview [data-inview=appear-left-long-img], .is-ready .is-inview [data-inview=appear-left-long], .is-ready [data-inview=appear-left-long-img].is-inview, .is-ready [data-inview=appear-left-long].is-inview {
    -webkit-animation-name: appear-left-long;
    animation-name: appear-left-long
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .is-ready .is-inview [data-inview=appear-left-long-img], .is-ready .is-inview [data-inview=appear-left-long], .is-ready [data-inview=appear-left-long-img].is-inview, .is-ready [data-inview=appear-left-long].is-inview {
        -webkit-animation-name: appear-bottom-long;
        animation-name: appear-bottom-long
    }
}

[data-inview=pointer-events] {
    pointer-events: none;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-ready [data-inview=pointer-events].is-inview {
    -webkit-animation-name: pointer-events;
    animation-name: pointer-events
}

@-webkit-keyframes appear {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes appear {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes pointer-events {
    0% {
        pointer-events: none
    }

    99% {
        pointer-events: none
    }

    to {
        pointer-events: all
    }
}

@keyframes pointer-events {
    0% {
        pointer-events: none
    }

    99% {
        pointer-events: none
    }

    to {
        pointer-events: all
    }
}

@-webkit-keyframes appear-up {
    0% {
        opacity: 0;
        transform: translateY(4rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-up {
    0% {
        opacity: 0;
        transform: translateY(4rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-up-short {
    0% {
        opacity: 0;
        transform: translateY(1rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-up-short {
    0% {
        opacity: 0;
        transform: translateY(1rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-down-short {
    0% {
        opacity: 0;
        transform: translateY(-1rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-down-short {
    0% {
        opacity: 0;
        transform: translateY(-1rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes clipping {
    0% {
        opacity: 1;
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0)
    }

    to {
        opacity: 1;
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }
}

@keyframes clipping {
    0% {
        opacity: 1;
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0)
    }

    to {
        opacity: 1;
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }
}

@-webkit-keyframes appear-right {
    0% {
        opacity: 0;
        transform: translate(-2.5rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-right {
    0% {
        opacity: 0;
        transform: translate(-2.5rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-left {
    0% {
        opacity: 0;
        transform: translate(1.5rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-left {
    0% {
        opacity: 0;
        transform: translate(1.5rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-left-long {
    0% {
        opacity: 0;
        transform: translate(4rem)
    }

    75% {
        opacity: 1
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-left-long {
    0% {
        opacity: 0;
        transform: translate(4rem)
    }

    75% {
        opacity: 1
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-bottom-long {
    0% {
        opacity: 0;
        transform: translateY(2.5rem)
    }

    75% {
        opacity: 1
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-bottom-long {
    0% {
        opacity: 0;
        transform: translateY(2.5rem)
    }

    75% {
        opacity: 1
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@-webkit-keyframes appear-left-long-img {
    0% {
        opacity: 0;
        transform: scale(1.05)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes appear-left-long-img {
    0% {
        opacity: 0;
        transform: scale(1.05)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .visually-hidden.focusable:active, .visually-hidden.focusable:focus {
        clip: auto;
        height: auto;
        margin: 0;
        overflow: visible;
        position: static;
        width: auto;
        white-space: inherit
    }

.wrapper {
    margin: 0 4rem
}

@media only screen and (max-width:767px) {
    .wrapper {
        margin: 0 1.5rem
    }
}


.showcase {
    display: inline-block;
    height: 100vh;
}

@media only screen and (max-width:1199px) {
    .showcase {
        display: flex;
        align-items: flex-end
    }
}


@media only screen and (max-width:1199px) {
    .showcase__container {
        flex: 1
    }
}

.showcase__wrapper {
    display: flex;
    height: 86vh;
}

@media only screen and (max-width:1199px) {
    .showcase__wrapper {
        align-items: flex-end;
        height: calc(88.6vh - var(--offs));
        padding-left: 1.6rem
    }
}

.showcase__inner {
    display: flex;
    height: 100%;
}

@media only screen and (max-width:1199px) {
    .showcase__inner {
        height: 48vh
    }
}

.showcase__item {
    width: auto;
    margin-right: 2.8rem;
    height: 100%
}

@media only screen and (max-width:1199px) {
    .showcase__item {
        margin-right: 1.6rem;
        max-width: calc(100vw - 1.6rem);
        -o-object-fit: cover;
        object-fit: cover
    }
}

.showcase__item.featured {
    width: 100vw;
    margin-right: 2.8rem;
    text-align: right
}

@media only screen and (max-width:1199px) {
    .showcase__item.featured {
        width: calc(100vw - 1.6rem);
        margin-right: 1.6rem
    }
}

@media only screen and (min-width:1200px) {
    .showcase__item.featured img {
        max-width: 80vw;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.showcase__item img {
    width: auto;
    height: 100%
}

@media only screen and (max-width:1199px) {
    .showcase__item img {
        max-width: calc(100vw - 1.6rem);
        -o-object-fit: cover;
        object-fit: cover
    }
}

.showcase__text {
    position: absolute;
    left: 0;
    top: 91.7vh;
    display: flex;
    width: 100vw;
    font-size: 1.4rem;
    line-height: 1.3;
    opacity: 0;
    will-change: opacity;
    transition: opacity .4s linear
}

@media only screen and (max-width:1199px) {
    .showcase__text {
        top: calc(91.4vh - var(--offs));
        padding: 0;
        pointer-events: none;
        font-size: 1.8rem
    }
}

.showcase__text .wrapper {
    width: 100%
}

@media only screen and (max-width:1199px) {
    .showcase__text .wrapper {
        width: calc(100vw - 3.2rem)
    }
}

.showcase__text .inner {
    width: 74.6%;
    margin-left: auto
}

@media only screen and (max-width:1199px) {
    .showcase__text .inner {
        display: flex;
        width: 100%;
        flex-wrap: wrap
    }
}

.showcase__text span {
    display: block;
    font-weight: 500
}

.showcase__text .desc {
    pointer-events: none;
    white-space: normal
}

@media only screen and (max-width:1199px) {
    .showcase__text .desc {
        width: 100%;
        white-space: normal;
        padding-bottom: 3.7rem;
        opacity: 0;
        transition: opacity .25s ease
    }
}

.is-more-visible .showcase__text .desc, .is-ready .showcase__text {
    opacity: 1
}

.flip .showcase__text, .hide-info .showcase__text {
    opacity: 0
}

.showcase__more {
    display: none;
    padding: 0;
    margin: 0;
    outline: none;
    border: 0;
    pointer-events: all;
    position: relative;
    z-index: 9999
}

    .showcase__more:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        padding: 1.5rem 4rem;
        transform: translate(-50%,-50%)
    }

@media only screen and (max-width:1199px) {
    .showcase__more {
        display: block;
        margin-left: auto;
        font-size: 1.8rem
    }
}

.showcase__next {
    width: 45.8rem;
    margin-right: 0;
    background-color: #dadada;
    transition: background-color .5s ease .25s;
    position: relative
}

@media only screen and (max-width:1199px) {
    .showcase__next:before {
        bottom: 0;
        right: 0;
        height: 200%;
        z-index: -1
    }
}

@media only screen and (max-width:1199px) {
    .showcase__next:after, .showcase__next:before {
        content: "";
        position: absolute;
        width: calc(100% + 1.6rem);
        background-color: #dadada
    }

    .showcase__next:after {
        top: 100%;
        left: -1.6rem;
        height: 100%;
        z-index: 9
    }
}

@media only screen and (max-width:1199px) {
    .showcase__next {
        display: flex;
        align-items: flex-end
    }
}

.showcase__next a {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    padding-left: 13.1rem;
    padding-bottom: 4.9rem
}

@media only screen and (max-width:1199px) {
    .showcase__next a {
        height: 200%;
        padding-left: 8.8rem;
        padding-bottom: 0
    }
}

.no-touchevents .showcase__next a:hover figure img {
    transform: scale(1.05)
}

.no-touchevents .showcase__next a:hover span:after {
    transform: scaleX(1);
    transform-origin: left
}

.showcase__next figure {
    display: flex;
    width: 100%;
    margin-bottom: 1.6rem;
    margin-right: 0;
    overflow: hidden
}

@media only screen and (max-width:1199px) {
    .showcase__next figure {
        order: 2;
        align-items: flex-end
    }
}

.showcase__next img {
    width: 100%;
    transition: transform 1.3s cubic-bezier(.19,1,.22,1);
    transition-delay: 0ms !important
}

@media only screen and (max-width:1199px) {
    .showcase__next img {
        height: auto;
        -o-object-fit: contain;
        object-fit: contain
    }
}

.showcase__next .showcase__next__title {
    display: block;
    transition: opacity .5s ease .25s
}

@media only screen and (max-width:1199px) {
    .showcase__next .showcase__next__title {
        order: 3
    }
}

.showcase__next button {
    margin-top: 4.9rem;
    font-size: 1.6rem;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 2.8rem 0 0;
    text-transform: uppercase;
    cursor: pointer;
    transition: opacity .5s ease .25s
}

@media only screen and (max-width:1199px) {
    .showcase__next button {
        align-items: center;
        margin-bottom: 3.3rem;
        font-size: 1.4rem;
        order: 1
    }
}

.showcase__next button span {
    position: relative
}

@media only screen and (max-width:1199px) {
    .showcase__next button span {
        margin-right: 3.4rem
    }
}

.showcase__next button span:after {
    content: "";
    position: absolute;
    bottom: -.2rem;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .4s ease-in-out;
    pointer-events: none
}

@media only screen and (max-width:1199px) {
    .showcase__next button svg {
        width: 4rem;
        height: 4rem
    }
}

.showcase__next.flip-item {
    background-color: #ededed
}

    .showcase__next.flip-item .showcase__next__title, .showcase__next.flip-item button {
        opacity: 0
    }

.showcase.flip .showcase__next figure {
    position: absolute;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100vh
}

.showcase.flip .showcase__next img {
    position: absolute;
    top: 0;
    right: 0;
    height: 86vh;
    width: auto;
    max-width: 80vw;
    -o-object-fit: cover;
    object-fit: cover
}

.footer__links {
    width: calc(100% - 8rem);
    display: flex;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
    position: absolute;
    left: 4rem;
    bottom: 3rem;
    z-index: 9
}

@media only screen and (max-width:1023px) {
    .page-template-default .footer__links, .page-template-page-contact .footer__links {
        position: relative;
        left: unset;
        bottom: unset;
        width: 100%;
        padding: 8rem 4rem 15.5rem;
        -moz-column-gap: 0;
        column-gap: 0;
        justify-content: space-between;
        flex-direction: column
    }
}

@media only screen and (max-width:767px) {
    .page-template-default .footer__links, .page-template-page-contact .footer__links {
        padding: 3.8rem 1.5rem 8.2rem;
        margin-top: auto
    }
}

.error404 .footer__links {
    display: none
}

.footer__links__item {
    font-size: 1.3rem;
    color: #333
}

@media only screen and (max-width:1023px) {
    .footer__links__item:first-child {
        position: absolute;
        bottom: 5.5rem;
        left: 4rem
    }
}

@media only screen and (max-width:767px) {
    .footer__links__item:first-child {
        left: 1.5rem;
        bottom: 1.5rem
    }
}

@media only screen and (max-width:1023px) {
    .footer__links__item {
        margin-bottom: 2.4rem
    }

        .footer__links__item:last-of-type {
            margin-bottom: 0
        }
}

@media only screen and (max-width:767px) {
    .footer__links__item {
        margin-bottom: 1.6rem
    }
}

.footer__links a {
    transition: color .2s linear
}

.no-touchevents .footer__links a:hover {
    color: #a5a5a5
}

.grid {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    display: flex;
    align-items: center;
    justify-content: center
}

.grid__row {
    position: relative;
    width: 100%;
    height: 100%;
    will-change: transform;
    z-index: -1;
    top: 4vw
}

.grid__item {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 30rem;
    min-height: 35rem;
    transition: opacity cubic-bezier(.445,.05,.55,.95);
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: center
}

@media only screen and (max-width:1199px) {
    .grid__item {
        min-width: 25rem;
        min-height: 30rem
    }
}

@media only screen and (max-width:767px) {
    .grid__item {
        min-width: 12rem;
        min-height: 12rem
    }
}

.touchevents .grid__item {
    pointer-events: all
}

.grid__item:first-child {
    z-index: 1
}

    .grid__item:first-child img {
        transition-duration: 1576ms;
        transition-delay: 1299ms
    }

.grid__item:nth-child(2) {
    z-index: 2
}

    .grid__item:nth-child(2) img {
        transition-duration: 1077ms;
        transition-delay: 179ms
    }

.grid__item:nth-child(3) {
    z-index: 3
}

    .grid__item:nth-child(3) img {
        transition-duration: 1.11s;
        transition-delay: 1019ms
    }

.grid__item:nth-child(4) {
    z-index: 4
}

    .grid__item:nth-child(4) img {
        transition-duration: 1341ms;
        transition-delay: 235ms
    }

.grid__item:nth-child(5) {
    z-index: 5
}

    .grid__item:nth-child(5) img {
        transition-duration: 1065ms;
        transition-delay: 796ms
    }

.grid__item:nth-child(6) {
    z-index: 6
}

    .grid__item:nth-child(6) img {
        transition-duration: 1061ms;
        transition-delay: 446ms
    }

.grid__item:nth-child(7) {
    z-index: 7
}

    .grid__item:nth-child(7) img {
        transition-duration: 1245ms;
        transition-delay: 1247ms
    }

.grid__item:nth-child(8) {
    z-index: 8
}

    .grid__item:nth-child(8) img {
        transition-duration: 1526ms;
        transition-delay: 148ms
    }

.grid__item:nth-child(9) {
    z-index: 9
}

    .grid__item:nth-child(9) img {
        transition-duration: 1168ms;
        transition-delay: 1013ms
    }

.grid__item:nth-child(10) {
    z-index: 10
}

    .grid__item:nth-child(10) img {
        transition-duration: 1429ms;
        transition-delay: 702ms
    }

.grid__item:nth-child(11) {
    z-index: 11
}

    .grid__item:nth-child(11) img {
        transition-duration: 1047ms;
        transition-delay: 453ms
    }

.grid__item:nth-child(12) {
    z-index: 12
}

    .grid__item:nth-child(12) img {
        transition-duration: 1333ms;
        transition-delay: 1229ms
    }

.grid__item:nth-child(13) {
    z-index: 13
}

    .grid__item:nth-child(13) img {
        transition-duration: 1538ms;
        transition-delay: 869ms
    }

.grid__item:nth-child(14) {
    z-index: 14
}

    .grid__item:nth-child(14) img {
        transition-duration: 1.23s;
        transition-delay: 579ms
    }

.grid__item:nth-child(15) {
    z-index: 15
}

    .grid__item:nth-child(15) img {
        transition-duration: 1151ms;
        transition-delay: 455ms
    }

.grid__item:nth-child(16) {
    z-index: 16
}

    .grid__item:nth-child(16) img {
        transition-duration: 1389ms;
        transition-delay: .73s
    }

.grid__item:nth-child(17) {
    z-index: 17
}

    .grid__item:nth-child(17) img {
        transition-duration: 1.54s;
        transition-delay: 803ms
    }

.grid__item:nth-child(18) {
    z-index: 18
}

    .grid__item:nth-child(18) img {
        transition-duration: 1469ms;
        transition-delay: 667ms
    }

.grid__item:nth-child(19) {
    z-index: 19
}

    .grid__item:nth-child(19) img {
        transition-duration: 1.02s;
        transition-delay: 1s
    }

.grid__item:nth-child(20) {
    z-index: 20
}

    .grid__item:nth-child(20) img {
        transition-duration: 1178ms;
        transition-delay: 1115ms
    }

.grid__item:nth-child(21) {
    z-index: 21
}

    .grid__item:nth-child(21) img {
        transition-duration: 1351ms;
        transition-delay: 683ms
    }

.grid__item:nth-child(22) {
    z-index: 22
}

    .grid__item:nth-child(22) img {
        transition-duration: 1539ms;
        transition-delay: 559ms
    }

.grid__item:nth-child(23) {
    z-index: 23
}

    .grid__item:nth-child(23) img {
        transition-duration: 1168ms;
        transition-delay: 457ms
    }

.grid__item:nth-child(24) {
    z-index: 24
}

    .grid__item:nth-child(24) img {
        transition-duration: 1512ms;
        transition-delay: 1s
    }

.grid__item:nth-child(25) {
    z-index: 25
}

    .grid__item:nth-child(25) img {
        transition-duration: 1323ms;
        transition-delay: 768ms
    }

.grid__item:nth-child(26) {
    z-index: 26
}

    .grid__item:nth-child(26) img {
        transition-duration: 1389ms;
        transition-delay: 897ms
    }

.grid__item:nth-child(27) {
    z-index: 27
}

    .grid__item:nth-child(27) img {
        transition-duration: 1168ms;
        transition-delay: 1004ms
    }

.grid__item:nth-child(28) {
    z-index: 28
}

    .grid__item:nth-child(28) img {
        transition-duration: 1084ms;
        transition-delay: 433ms
    }

.grid__item:nth-child(29) {
    z-index: 29
}

    .grid__item:nth-child(29) img {
        transition-duration: 1.54s;
        transition-delay: 396ms
    }

.grid__item:nth-child(30) {
    z-index: 30
}

    .grid__item:nth-child(30) img {
        transition-duration: 1.46s;
        transition-delay: 613ms
    }

.grid__item:nth-child(31) {
    z-index: 31
}

    .grid__item:nth-child(31) img {
        transition-duration: 1355ms;
        transition-delay: 449ms
    }

.grid__item:nth-child(32) {
    z-index: 32
}

    .grid__item:nth-child(32) img {
        transition-duration: 1449ms;
        transition-delay: 342ms
    }

.grid__item:nth-child(33) {
    z-index: 33
}

    .grid__item:nth-child(33) img {
        transition-duration: 1.35s;
        transition-delay: 455ms
    }

.grid__item:nth-child(34) {
    z-index: 34
}

    .grid__item:nth-child(34) img {
        transition-duration: 1266ms;
        transition-delay: 264ms
    }

.grid__item:nth-child(35) {
    z-index: 35
}

    .grid__item:nth-child(35) img {
        transition-duration: 1.13s;
        transition-delay: 1219ms
    }

.grid__item:nth-child(36) {
    z-index: 36
}

    .grid__item:nth-child(36) img {
        transition-duration: 1412ms;
        transition-delay: 731ms
    }

.grid__item:nth-child(37) {
    z-index: 37
}

    .grid__item:nth-child(37) img {
        transition-duration: 1577ms;
        transition-delay: 1238ms
    }

.grid__item:nth-child(38) {
    z-index: 38
}

    .grid__item:nth-child(38) img {
        transition-duration: 1582ms;
        transition-delay: 602ms
    }

.grid__item:nth-child(39) {
    z-index: 39
}

    .grid__item:nth-child(39) img {
        transition-duration: 1319ms;
        transition-delay: 575ms
    }

.grid__item:nth-child(40) {
    z-index: 40
}

    .grid__item:nth-child(40) img {
        transition-duration: 1149ms;
        transition-delay: 167ms
    }

.grid__item:nth-child(41) {
    z-index: 41
}

    .grid__item:nth-child(41) img {
        transition-duration: 1003ms;
        transition-delay: 1238ms
    }

.grid__item:nth-child(42) {
    z-index: 42
}

    .grid__item:nth-child(42) img {
        transition-duration: 1068ms;
        transition-delay: 663ms
    }

.grid__item:nth-child(43) {
    z-index: 43
}

    .grid__item:nth-child(43) img {
        transition-duration: 1571ms;
        transition-delay: 577ms
    }

.grid__item:nth-child(44) {
    z-index: 44
}

    .grid__item:nth-child(44) img {
        transition-duration: 1s;
        transition-delay: 1122ms
    }

.grid__item:nth-child(45) {
    z-index: 45
}

    .grid__item:nth-child(45) img {
        transition-duration: 1052ms;
        transition-delay: 396ms
    }

.grid__item:nth-child(46) {
    z-index: 46
}

    .grid__item:nth-child(46) img {
        transition-duration: 1235ms;
        transition-delay: 1078ms
    }

.grid__item:nth-child(47) {
    z-index: 47
}

    .grid__item:nth-child(47) img {
        transition-duration: 1088ms;
        transition-delay: 1032ms
    }

.grid__item:nth-child(48) {
    z-index: 48
}

    .grid__item:nth-child(48) img {
        transition-duration: 1406ms;
        transition-delay: .19s
    }

.grid__item:nth-child(49) {
    z-index: 49
}

    .grid__item:nth-child(49) img {
        transition-duration: 1498ms;
        transition-delay: 335ms
    }

.grid__item:nth-child(50) {
    z-index: 50
}

    .grid__item:nth-child(50) img {
        transition-duration: 1027ms;
        transition-delay: 652ms
    }

.grid__item:nth-child(51) {
    z-index: 51
}

    .grid__item:nth-child(51) img {
        transition-duration: 1358ms;
        transition-delay: 752ms
    }

.grid__item:nth-child(52) {
    z-index: 52
}

    .grid__item:nth-child(52) img {
        transition-duration: 1335ms;
        transition-delay: 824ms
    }

.grid__item:nth-child(53) {
    z-index: 53
}

    .grid__item:nth-child(53) img {
        transition-duration: 1074ms;
        transition-delay: 749ms
    }

.grid__item:nth-child(54) {
    z-index: 54
}

    .grid__item:nth-child(54) img {
        transition-duration: 1112ms;
        transition-delay: 308ms
    }

.grid__item:nth-child(55) {
    z-index: 55
}

    .grid__item:nth-child(55) img {
        transition-duration: 1587ms;
        transition-delay: 1228ms
    }

.grid__item:nth-child(56) {
    z-index: 56
}

    .grid__item:nth-child(56) img {
        transition-duration: 1229ms;
        transition-delay: 149ms
    }

.grid__item:nth-child(57) {
    z-index: 57
}

    .grid__item:nth-child(57) img {
        transition-duration: 1381ms;
        transition-delay: 1256ms
    }

.grid__item:nth-child(58) {
    z-index: 58
}

    .grid__item:nth-child(58) img {
        transition-duration: 1489ms;
        transition-delay: 561ms
    }

.grid__item:nth-child(59) {
    z-index: 59
}

    .grid__item:nth-child(59) img {
        transition-duration: 1081ms;
        transition-delay: 171ms
    }

.grid__item:nth-child(60) {
    z-index: 60
}

    .grid__item:nth-child(60) img {
        transition-duration: 1345ms;
        transition-delay: 773ms
    }

.grid__item:nth-child(61) {
    z-index: 61
}

    .grid__item:nth-child(61) img {
        transition-duration: 1518ms;
        transition-delay: 245ms
    }

.grid__item:nth-child(62) {
    z-index: 62
}

    .grid__item:nth-child(62) img {
        transition-duration: 1256ms;
        transition-delay: 261ms
    }

.grid__item:nth-child(63) {
    z-index: 63
}

    .grid__item:nth-child(63) img {
        transition-duration: 1.51s;
        transition-delay: 587ms
    }

.grid__item:nth-child(64) {
    z-index: 64
}

    .grid__item:nth-child(64) img {
        transition-duration: 1226ms;
        transition-delay: 1012ms
    }

.grid__item:nth-child(65) {
    z-index: 65
}

    .grid__item:nth-child(65) img {
        transition-duration: 1496ms;
        transition-delay: 678ms
    }

.grid__item:nth-child(66) {
    z-index: 66
}

    .grid__item:nth-child(66) img {
        transition-duration: 1288ms;
        transition-delay: 268ms
    }

.grid__item:nth-child(67) {
    z-index: 67
}

    .grid__item:nth-child(67) img {
        transition-duration: 1532ms;
        transition-delay: 508ms
    }

.grid__item:nth-child(68) {
    z-index: 68
}

    .grid__item:nth-child(68) img {
        transition-duration: 1.49s;
        transition-delay: 1256ms
    }

.grid__item:nth-child(69) {
    z-index: 69
}

    .grid__item:nth-child(69) img {
        transition-duration: 1497ms;
        transition-delay: 944ms
    }

.grid__item:nth-child(70) {
    z-index: 70
}

    .grid__item:nth-child(70) img {
        transition-duration: 1073ms;
        transition-delay: 1266ms
    }

.grid__item:nth-child(71) {
    z-index: 71
}

    .grid__item:nth-child(71) img {
        transition-duration: 1.12s;
        transition-delay: 436ms
    }

.grid__item:nth-child(72) {
    z-index: 72
}

    .grid__item:nth-child(72) img {
        transition-duration: 1159ms;
        transition-delay: 429ms
    }

.grid__item:nth-child(73) {
    z-index: 73
}

    .grid__item:nth-child(73) img {
        transition-duration: 1085ms;
        transition-delay: 613ms
    }

.grid__item:nth-child(74) {
    z-index: 74
}

    .grid__item:nth-child(74) img {
        transition-duration: 1026ms;
        transition-delay: 169ms
    }

.grid__item:nth-child(75) {
    z-index: 75
}

    .grid__item:nth-child(75) img {
        transition-duration: 1539ms;
        transition-delay: 1068ms
    }

.grid__item:nth-child(76) {
    z-index: 76
}

    .grid__item:nth-child(76) img {
        transition-duration: 1491ms;
        transition-delay: 529ms
    }

.grid__item:nth-child(77) {
    z-index: 77
}

    .grid__item:nth-child(77) img {
        transition-duration: 1452ms;
        transition-delay: 625ms
    }

.grid__item:nth-child(78) {
    z-index: 78
}

    .grid__item:nth-child(78) img {
        transition-duration: 1327ms;
        transition-delay: 157ms
    }

.grid__item:nth-child(79) {
    z-index: 79
}

    .grid__item:nth-child(79) img {
        transition-duration: 1408ms;
        transition-delay: 827ms
    }

.grid__item:nth-child(80) {
    z-index: 80
}

    .grid__item:nth-child(80) img {
        transition-duration: 1349ms;
        transition-delay: 742ms
    }

.grid__item:nth-child(81) {
    z-index: 81
}

    .grid__item:nth-child(81) img {
        transition-duration: 1583ms;
        transition-delay: 1039ms
    }

.grid__item:nth-child(82) {
    z-index: 82
}

    .grid__item:nth-child(82) img {
        transition-duration: 1096ms;
        transition-delay: 665ms
    }

.grid__item:nth-child(83) {
    z-index: 83
}

    .grid__item:nth-child(83) img {
        transition-duration: 1186ms;
        transition-delay: 361ms
    }

.grid__item:nth-child(84) {
    z-index: 84
}

    .grid__item:nth-child(84) img {
        transition-duration: 1513ms;
        transition-delay: 299ms
    }

.grid__item:nth-child(85) {
    z-index: 85
}

    .grid__item:nth-child(85) img {
        transition-duration: 1097ms;
        transition-delay: 285ms
    }

.grid__item:nth-child(86) {
    z-index: 86
}

    .grid__item:nth-child(86) img {
        transition-duration: 1419ms;
        transition-delay: 359ms
    }

.grid__item:nth-child(87) {
    z-index: 87
}

    .grid__item:nth-child(87) img {
        transition-duration: 1588ms;
        transition-delay: 247ms
    }

.grid__item:nth-child(88) {
    z-index: 88
}

    .grid__item:nth-child(88) img {
        transition-duration: 1168ms;
        transition-delay: 685ms
    }

.grid__item:nth-child(89) {
    z-index: 89
}

    .grid__item:nth-child(89) img {
        transition-duration: 1505ms;
        transition-delay: 541ms
    }

.grid__item:nth-child(90) {
    z-index: 90
}

    .grid__item:nth-child(90) img {
        transition-duration: 1509ms;
        transition-delay: 806ms
    }

.grid__item:nth-child(91) {
    z-index: 91
}

    .grid__item:nth-child(91) img {
        transition-duration: 1261ms;
        transition-delay: 461ms
    }

.grid__item:nth-child(92) {
    z-index: 92
}

    .grid__item:nth-child(92) img {
        transition-duration: 1284ms;
        transition-delay: 629ms
    }

.grid__item:nth-child(93) {
    z-index: 93
}

    .grid__item:nth-child(93) img {
        transition-duration: 1183ms;
        transition-delay: 748ms
    }

.grid__item:nth-child(94) {
    z-index: 94
}

    .grid__item:nth-child(94) img {
        transition-duration: 1393ms;
        transition-delay: 657ms
    }

.grid__item:nth-child(95) {
    z-index: 95
}

    .grid__item:nth-child(95) img {
        transition-duration: 1404ms;
        transition-delay: 145ms
    }

.grid__item:nth-child(96) {
    z-index: 96
}

    .grid__item:nth-child(96) img {
        transition-duration: 1361ms;
        transition-delay: 551ms
    }

.grid__item:nth-child(97) {
    z-index: 97
}

    .grid__item:nth-child(97) img {
        transition-duration: 1086ms;
        transition-delay: 1233ms
    }

.grid__item:nth-child(98) {
    z-index: 98
}

    .grid__item:nth-child(98) img {
        transition-duration: 1249ms;
        transition-delay: 335ms
    }

.grid__item:nth-child(99) {
    z-index: 99
}

    .grid__item:nth-child(99) img {
        transition-duration: 1595ms;
        transition-delay: 184ms
    }

.grid__item:hover {
    z-index: 9999
}

.grid-visible .grid__item {
    opacity: 1
}

.grid__item:first-child {
    transform: translate(-50%,-50%);
    z-index: 99 !important
}

    .grid__item:first-child figure {
        transform: translate(-9rem,-7rem)
    }

.grid__item:nth-child(25n+8) {
    transform: translate(-50%,calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+8) {
        transform: translate(-50%,calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+8) {
        transform: translate(-50%,calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+4) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+4) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+4) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+4) figure {
    transform: translate(3rem,10rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+4) figure {
        transform: translate(1rem,8rem)
    }
}

.grid__item:nth-child(25n+2) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),-50%)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+2) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),-50%)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+2) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),-50%)
    }
}

.grid__item:nth-child(25n+2) figure {
    transform: translate(-17rem,7rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+2) figure {
        transform: translate(-8rem,5rem)
    }
}

.grid__item:nth-child(25n+5) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+5) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+5) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+5) figure {
    transform: translate(8rem,-42rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+5) figure {
        transform: translate(-10rem,-41rem)
    }
}

.grid__item:nth-child(25n+6) {
    transform: translate(-50%,calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+6) {
        transform: translate(-50%,calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+6) {
        transform: translate(-50%,calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+6) figure {
    transform: translate(26rem,-17rem)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+6) figure {
        transform: translate(13rem,-2rem)
    }
}

.grid__item:nth-child(25n+7) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+7) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+7) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+7) figure {
    transform: translate(5rem,-3rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+7) figure {
        transform: translate(12rem,-3rem)
    }
}

.grid__item:nth-child(25n+3) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),-50%)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+3) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),-50%)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+3) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),-50%)
    }
}

.grid__item:nth-child(25n+3) figure {
    transform: translate(-8rem,13rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+3) figure {
        transform: translate(-2rem,23rem)
    }
}

.grid__item:nth-child(25n+9) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+9) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+9) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+9) figure {
    transform: translate(-17rem,21rem)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .grid__item:nth-child(25n+9) figure {
        transform: translate(-2rem,8rem)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+9) figure {
        transform: translate(-4rem,17rem)
    }
}

.grid__item:nth-child(25n+16) {
    transform: translate(-50%,calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+16) {
        transform: translate(-50%,calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+16) {
        transform: translate(-50%,calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+16) figure {
    transform: translate(-17rem,10rem)
}

.grid__item:nth-child(25n+12) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+12) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+12) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+12) figure {
    transform: translate(2rem,54rem)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+12) figure {
        transform: translate(-44rem,-5rem)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+12) figure {
        transform: translate(-38rem,13rem)
    }
}

.grid__item:nth-child(25n+10) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),-50%)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+10) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),-50%)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+10) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),-50%)
    }
}

.grid__item:nth-child(25n+10) figure {
    transform: translate(-6rem,32rem)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .grid__item:nth-child(25n+10) figure {
        transform: translate(-14rem,37rem)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+10) figure {
        transform: translate(-8rem,19rem)
    }
}

.grid__item:nth-child(25n+13) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+13) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+13) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+13) figure {
    transform: translate(-20rem,13rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+13) figure {
        transform: translate(-25rem)
    }
}

.grid__item:nth-child(25n+14) {
    transform: translate(-50%,calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+14) {
        transform: translate(-50%,calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+14) {
        transform: translate(-50%,calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+15) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+15) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+15) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+15) figure {
    transform: translate(-10rem,10rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+15) figure {
        transform: translate(25rem,10rem)
    }
}

.grid__item:nth-child(25n+11) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),-50%)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+11) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),-50%)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+11) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),-50%)
    }
}

.grid__item:nth-child(25n+11) figure {
    transform: translate(25rem,-11rem)
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+11) figure {
        transform: translate(29rem,-50rem)
    }
}

@media only screen and (max-width:1199px) and (orientation:landscape) {
    .grid__item:nth-child(25n+11) figure {
        transform: translate(32rem,-27rem)
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .grid__item:nth-child(25n+11) figure {
        transform: translate(66rem,-50rem)
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+11) figure {
        transform: translate(41rem,-18rem)
    }
}

.grid__item:nth-child(25n+17) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+17) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+17) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+17) figure {
    transform: translate(0)
}

.grid__item:nth-child(25n+18) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)/2),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+18) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)/2),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+18) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)/2),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+23) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% - 35rem*var(--multiplier)/2))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+23) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% - 30rem*var(--multiplier)/2))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+23) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% - 12rem*var(--multiplier)/2))
    }
}

.grid__item:nth-child(25n+21) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)),calc(-50% + 35rem))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+21) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)),calc(-50% + 30rem))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+21) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)),calc(-50% + 12rem))
    }
}

.grid__item:nth-child(25n+21) figure {
    transform: translate(15rem,10rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+21) figure {
        transform: translate(9rem,1rem)
    }
}

.grid__item:nth-child(25n+25) {
    transform: translate(calc(-50% + 30rem*var(--multiplier)/2),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+25) {
        transform: translate(calc(-50% + 25rem*var(--multiplier)/2),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+25) {
        transform: translate(calc(-50% + 12rem*var(--multiplier)/2),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+22) {
    transform: translate(calc(-50% - 30rem),calc(-50% + 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+22) {
        transform: translate(calc(-50% - 25rem),calc(-50% + 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+22) {
        transform: translate(calc(-50% - 12rem),calc(-50% + 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+22) figure {
    transform: translate(-15rem,6rem)
}

.grid__item:nth-child(25n+19) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% + 35rem*var(--multiplier)/2))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+19) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% + 30rem*var(--multiplier)/2))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+19) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% + 12rem*var(--multiplier)/2))
    }
}

.grid__item:nth-child(25n+24) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)),calc(-50% - 35rem))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+24) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)),calc(-50% - 30rem))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+24) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)),calc(-50% - 12rem))
    }
}

.grid__item:nth-child(25n+20) {
    transform: translate(calc(-50% - 30rem*var(--multiplier)/2),calc(-50% - 35rem*var(--multiplier)))
}

@media only screen and (max-width:1199px) {
    .grid__item:nth-child(25n+20) {
        transform: translate(calc(-50% - 25rem*var(--multiplier)/2),calc(-50% - 30rem*var(--multiplier)))
    }
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+20) {
        transform: translate(calc(-50% - 12rem*var(--multiplier)/2),calc(-50% - 12rem*var(--multiplier)))
    }
}

.grid__item:nth-child(25n+20) figure {
    transform: translateY(-17rem)
}

@media only screen and (max-width:767px) {
    .grid__item:nth-child(25n+20) figure {
        transform: translate(-5rem,-2rem)
    }
}

.grid__item figure {
    display: flex;
    align-items: center;
    justify-content: center
}

    .grid__item figure div {
        pointer-events: none;
        cursor: pointer;
        transform-origin: center;
        transform: scale(var(--scale));
        transition: transform 1.6s cubic-bezier(.23,1,.32,1);
        overflow: hidden;
        will-change: transform
    }

.touchevents .grid__item figure div {
    pointer-events: all
}

.grid__item figure img {
    pointer-events: none;
    cursor: pointer;
    transform-origin: center;
    opacity: 0;
    will-change: opacity
}

.touchevents .grid__item figure img {
    pointer-events: all
}

.grid__item figure img.lazy-loaded {
    opacity: 1
}

.grid__item .portrait--s img {
    width: 13rem;
    height: 19rem
}

@media only screen and (max-width:1199px) {
    .grid__item .portrait--s img {
        width: 12rem;
        height: 16.2rem
    }
}

@media only screen and (max-width:767px) {
    .grid__item .portrait--s img {
        width: 6.6rem;
        height: 9rem
    }
}

.grid__item .landscape--s img {
    width: 17.8rem;
    height: 13.1rem
}

@media only screen and (max-width:1199px) {
    .grid__item .landscape--s img {
        width: 16.4rem;
        height: 12.1rem
    }
}

@media only screen and (max-width:767px) {
    .grid__item .landscape--s img {
        width: 9rem;
        height: 6.6rem
    }
}

.grid__item a {
    display: block;
    transform-origin: center;
    transition: opacity .3s linear,transform 1.2s cubic-bezier(.23,1,.32,1);
    pointer-events: none
}

.grid__item.is-active a, .grid__item.is-active img {
    pointer-events: all
}

.grid__nav {
    position: fixed;
    left: 50%;
    bottom: 3rem;
    transform: translateX(-50%);
    opacity: 1;
    transition: opacity .3s linear .6s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

@media only screen and (max-width:1366px) {
    .grid__nav {
        bottom: 5rem
    }
}

@media only screen and (max-width:767px) {
    .grid__nav {
        bottom: 3rem
    }
}

.grid__nav .menu {
    display: flex;
    justify-content: center;
    -moz-column-gap: 2rem;
    column-gap: 2rem
}

@media only screen and (min-width:1921px) {
    .grid__nav {
        bottom: 3rem
    }
}

.grid-visible .grid__nav, .is-ready.page-template-page-produkte .grid__nav, .is-ready .page-template-page-produkte .grid__nav, .is-ready.page-template-page-projekte .grid__nav, .is-ready .page-template-page-projekte .grid__nav {
    opacity: 1;
    z-index: 9999999
}

.menu-open .grid__nav, .nav-open .grid__nav {
    opacity: 0;
    pointer-events: none;
    z-index: -1
}

.grid__nav .current-menu-item a {
    color: #333;
    pointer-events: none
}

.grid__nav a, .grid__nav button {
    color: #838383;
    padding: 0;
    cursor: pointer;
    transition: color .2s linear;
    font-size: 1.4rem
}

@media only screen and (max-width:1366px) {
    .grid__nav a, .grid__nav button {
        font-size: 14px
    }
}

.grid__nav a.is-active, .grid__nav button.is-active, .no-touchevents .grid__nav a:hover, .no-touchevents .grid__nav button:hover {
    color: #333
}

.grid__title {
    display: none
}

.touchevents .grid__title {
    display: block;
    text-align: center;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-size: 3.4rem;
    line-height: 1.2;
    font-weight: 600;
    font-family: Aileron-Regular;
    letter-spacing: .01em;
    color: #333;
    pointer-events: none;
}

@media only screen and (max-width:767px) {
    .touchevents .grid__title {
        font-size: 2rem
    }
}

.grid__title span {
    position: absolute;
    left: calc(100% + .4rem);
    top: .1rem;
    font-size: .8rem;
    font-family: Aileron-Regular;
    font-style: normal;
    letter-spacing: .01em
}

.about {
    padding: 12.8rem 0 25.2rem
}

@media only screen and (max-width:767px) {
    .about {
        padding: 26.4rem 0 16.4rem
    }
}

.about__row {
    display: grid;
    grid-template-columns: repeat(12,1fr);
    -moz-column-gap: 2.8rem;
    column-gap: 2.8rem
}

@media only screen and (max-width:767px) {
    .about__row {
        display: block
    }
}

.about__lead {
    font-family: Aileron-Regular;
    font-size: 7.2rem;
    line-height: 1;
    letter-spacing: -.005em;
    color: #333;
    grid-column: 4/13;
    margin-bottom: 8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .about__lead {
        font-size: 4.5rem;
        line-height: 1;
        letter-spacing: .01em
    }
}

@media only screen and (max-width:767px) {
    .about__lead {
        display: block;
        margin-bottom: 20rem
    }
}

.about__content {
    grid-column: 7/13;
    margin-bottom: 6.4rem
}

@media only screen and (max-width:767px) {
    .about__content {
        display: block;
        margin-bottom: 4rem
    }
}

.about__content h3, .about__content p {
    margin-bottom: 1.6rem
}

.about__content strong {
    font-weight: 500
}

.about__team {
    grid-column: 4/13;
    margin-top: 5.6rem
}

@media only screen and (max-width:767px) {
    .about__team {
        display: block;
        margin-top: 0
    }
}

.team__row {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    -moz-column-gap: 3.1rem;
    column-gap: 3.1rem
}

@media only screen and (max-width:1199px) {
    .team__row {
        grid-template-columns: repeat(2,1fr);
        -moz-column-gap: 1.5rem;
        column-gap: 1.5rem
    }
}

.team__title {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333;
    margin-bottom: 1.6rem;
    text-transform: uppercase
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .team__title {
        font-size: 3rem;
        line-height: 1.1
    }
}

.team__item {
    width: 100%;
    margin-bottom: 5.6rem
}

@media only screen and (max-width:1199px) {
    .team__item {
        margin-bottom: 3.2rem
    }
}

.team__item figure {
    position: relative;
    margin-bottom: 1.6rem
}

@media only screen and (max-width:1199px) {
    .team__item figure {
        margin-bottom: .8rem
    }
}

.team__item figure:before {
    content: "";
    display: block;
    padding-top: 122%
}

.team__item figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.team__item p {
    margin-bottom: 1em
}

@media only screen and (max-width:1199px) {
    .team__item p {
        margin-bottom: 0
    }
}

.team__item a {
    display: block;
    opacity: 0;
    transform: translateY(10px);
    transition: .6s cubic-bezier(.19,1,.22,1);
    transition-property: opacity,transform;
    will-change: transform,opacity
}

@media only screen and (max-width:1199px) {
    .team__item a {
        transform: none;
        opacity: 1;
        font-size: 1.3rem
    }
}

.no-touchevents .team__item:hover a {
    opacity: 1;
    transform: none
}

.intro {
    width: calc(52vw + 40rem);
    min-height: 100%;
    height: 100vh;
    height: var(--vh);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .intro {
        height: 90rem;
        width: 100vw
    }
}

@media only screen and (max-width:767px) {
    .intro {
        height: 41rem
    }
}

.intro figure {
    width: 52vw;
    position: relative;
    height: auto;
    opacity: 0;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 6rem;
    overflow: hidden
}

    .intro figure:before {
        content: "";
        display: block;
        padding-top: 56%
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .intro figure {
        width: 101vw
    }
}

@media only screen and (max-width:767px) {
    .intro figure {
        margin-top: 3rem
    }
}

.intro figure video {
    position: absolute;
    top: 0;
    left: 0;
    width: 101%;
    height: 101%;
    -o-object-fit: cover;
    object-fit: cover
}

.intro.is-visible figure {
    opacity: 1
}

.intro .mask {
    overflow: hidden
}

.intro svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 8.5rem;
    opacity: 0
}

.intro__nav {
    padding: 1.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 6rem
}

@media only screen and (max-width:767px) {
    .intro__nav {
        margin-top: 4rem
    }
}

.intro__nav button {
    font-size: 1.3rem;
    letter-spacing: .01em;
    color: #838383;
    margin: 0 1rem;
    padding: 0;
    transition: color .2s linear;
    position: relative
}

.no-touchevents .intro__nav button:hover {
    color: #333
}

    .no-touchevents .intro__nav button:hover svg line, .no-touchevents .intro__nav button:hover svg path {
        stroke: #a5a5a5
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .intro__nav button {
        padding: 0 1rem
    }
}

.intro__nav button.intro__sound:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    padding: 2rem;
    width: 1px;
    height: 1px
}

.intro__nav button.intro__fullscreen {
    margin: 0 2rem;
    color: #333
}

.no-touchevents .intro__nav button.intro__fullscreen:hover {
    color: #a5a5a5
}

.intro__nav button .sound-on-icon {
    width: 1.95rem;
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(calc(-50% - .05rem),-50%)
}

    .intro__nav button .sound-on-icon line, .intro__nav button .sound-on-icon path {
        transition: stroke .3s ease
    }

.intro__nav button .sound-off-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 2.3rem;
    opacity: 0;
    pointer-events: none
}

.intro__nav button.is-sound .sound-off-icon {
    opacity: 1 !important
}

.intro__nav button.is-sound .sound-on-icon {
    opacity: 0 !important
}

.cursor, .cursor-title {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    z-index: 9999999999;
    visibility: hidden;
    pointer-events: none
}

.touchevents .cursor, .touchevents .cursor-title {
    display: none
}

.cursor-title .cursor__minus, .cursor-title .cursor__plus, .cursor .cursor__minus, .cursor .cursor__plus {
    display: block;
    transform: translate(var(--cursor-x),var(--cursor-y));
    visibility: hidden;
    mix-blend-mode: unset;
    position: absolute;
    top: 0;
    left: 0
}

.no-touchevents .is-zoom-el .cursor, .no-touchevents .is-zoom-el .cursor .cursor__plus, .no-touchevents .is-zoom-img .cursor, .no-touchevents .is-zoom-img .cursor .cursor__minus {
    visibility: visible
}

.cursor-title span {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 6.4rem;
    line-height: 1;
    letter-spacing: .02em;
    line-height: 1.3;
    display: inline-block;
    font-style: normal;
    color: #333;
    transform: translate(-.25rem,20%);
    text-align: center;
    transition: opacity .25s ease .75s;
    opacity: 0;
    will-change: opacity;
    position: relative
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .cursor-title span {
        font-size: 3.8rem;
        line-height: 1.1
    }
}

.cursor-title span small {
    position: absolute;
    left: calc(100% + .8rem);
    top: 1em;
    font-size: 1.2rem;
    font-family: Aileron-Regular;
    font-style: normal
}

.grid-visible .cursor-title.is-title-visible span {
    opacity: 1;
    transition-delay: 0ms
}

.page-out .cursor-title {
    opacity: 0 !important;
    transition-delay: 0
}

.single {
    display: inline-block;
    height: 100vh;
    height: var(--vh);
    overflow: hidden
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single {
        display: block;
        height: auto;
        width: 100vw;
        white-space: normal
    }
}

.single__container {
    display: flex;
    height: 100vh;
    height: var(--vh);

}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__container {
        display: block;
        height: auto;
        width: 100vw;
      
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__container [data-scroll-section] {
        display: flex;
        flex-direction: column
    }
}

@media only screen and (max-width:768px) and (orientation:landscape) {
    .single--about .single__container [data-scroll-section] {
        display: block;
        height: auto;
        width: 100vw;
        white-space: normal
    }
}

.single__label {
    position: fixed;
    top: 4.2rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 1.4rem;
    z-index: 9;
    opacity: 0;
    transition: opacity .25s linear .3s;
    font-family: Aileron-Regular
}

@media only screen and (max-width:767px) {
    .single__label {
        top: 1.7rem
    }
}

.single__label h1, .single__label h2, .single__label h3, .single__label h4, .single__label h5, .single__label h6, .single__label p {
    font-size: 1.4rem;
    font-style: normal;
    font-family: Aileron-Regular;
    font-weight: 600;
    color: #333
}

    .single__label h1 em, .single__label h2 em, .single__label h3 em, .single__label h4 em, .single__label h5 em, .single__label h6 em, .single__label p em {
        font-style: italic
    }

@media only screen and (max-width:1199px) {
    .single__label h1, .single__label h2, .single__label h3, .single__label h4, .single__label h5, .single__label h6, .single__label p {
        font-size: 1.4rem
    }
}

.is-ready.is-scrolled .single__label, .is-ready .is-scrolled .single__label {
    opacity: 1
}

.single__overlay {
    display: none
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        height: var(--vh);
        padding: 10rem 1.5rem 1.5rem;
        z-index: 9999999999;
        background: #ededed;
        overflow-y: scroll;
        overflow-x: hidden;
        display: block;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: 375ms ease;
        transition-property: opacity,visibility
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__overlay.is-visible {
        opacity: 1;
        visibility: visible;
        pointer-events: all
    }
}

.single__overlay__close.burger {
    position: fixed;
    top: 2.3rem;
    right: 1.5rem
}

.single__overlay > .single__intro {
    padding: 0;
    width: 100%
}

    .single__overlay > .single__intro .single__heading {
        margin-bottom: 4.3rem;
        order: 1
    }

    .single__overlay > .single__intro .single__description {
        order: 3
    }

    .single__overlay > .single__intro .single__info {
        order: 2;
        margin-left: 0;
        margin-bottom: 11.5rem
    }

    .single__overlay > .single__intro .single__description, .single__overlay > .single__intro .single__info {
        display: block
    }

.single__intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 76.6rem;
    height: 100vh;
    height: var(--vh);
    padding: 4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__intro {
        width: 100vw;
        height: auto;
        padding: 10rem 4rem 4rem
    }
}

@media only screen and (max-width:767px) {
    .single__intro {
        padding: 10rem 1.5rem 1.5rem
    }
}

.single--about .single__intro {
    justify-content: center;
    padding-left: 8rem;
    margin-right: 8rem
}

@media only screen and (min-width:1921px) {
    .single--about .single__intro {
        width: 105.6rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__intro {
        order: 1;
        padding: 17rem 4rem 5rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__intro {
        order: 1;
        padding: 10rem 1.5rem 4rem
    }
}

.single .rich-text h1, .single .rich-text h2, .single .rich-text h3, .single .rich-text h4, .single .rich-text h5, .single .rich-text h6 {
    font-family: Aileron-Regular;
    font-size: 2rem;
    line-height: 120%;
    letter-spacing: .01em;
    color: #333;
    margin-bottom: 2rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single .rich-text h1, .single .rich-text h2, .single .rich-text h3, .single .rich-text h4, .single .rich-text h5, .single .rich-text h6 {
        font-size: 1.8rem
    }
}

.single .rich-text strong {
    color: #a5a5a5;
    width: 5.5rem;
    height: 2em;
    font-family: Aileron-Regular;
    font-weight: 600;
    float: left
}

.single .rich-text p a {
    color: #a5a5a5;
    transition: color .25s ease
}

.no-touchevents .single .rich-text p a:hover {
    color: #333
}

@media only screen and (max-width:767px) {
    .single.single--about .rich-text strong {
        width: 3.8rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single.single--about .rich-text {
        max-width: 42rem;
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .single.single--about .rich-text {
        width: 100%;
        max-width: 100%
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single.single--about .rich-text h4 {
        max-width: 42rem;
        width: 100%;
        font-size: 2rem
    }
}

@media only screen and (max-width:767px) {
    .single.single--about .rich-text h4 {
        width: 85%;
        max-width: 85%
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single.single--about .rich-text p {
        font-size: 1.4rem
    }
}

@media only screen and (max-width:767px) {
    .single.single--about .rich-text p {
        font-size: 1.2rem
    }
}

.single__hero {
    width: 53rem;
    height: 100vh;
    height: var(--vh);
    overflow: hidden
}

@media only screen and (min-width:1921px) {
    .single__hero {
        width: auto
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__hero {
        width: 100vw;
        height: auto
    }
}

.single__hero img {
    width: auto;
    max-width: 100%;
    height: 100vh;
    height: var(--vh);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

@media only screen and (min-width:1921px) {
    .single__hero img {
        max-width: unset
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__hero img {
        min-height: auto;
        height: auto;
        width: 49.2rem;
        margin-right: 4rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__hero {
        order: 2;
        text-align: right
    }
}

.single__info {
    margin-left: 50%;
    white-space: normal
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__info {
        width: calc(50% - 4rem);
        margin-bottom: 4.2rem
    }
}

@media only screen and (max-width:767px) {
    .single__info {
        width: 100%;
        order: 2;
        margin-left: 0;
        margin-bottom: 8rem
    }
}

.single__info li {
    display: flex;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    font-size: 1.3rem;
    line-height: 1.15384615;
    margin-bottom: .4rem ;
    font-family:  Aileron-Regular;
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__info li {
        -moz-column-gap: 2.5rem;
        column-gap: 2.5rem
    }
}

.single__info li .label {
    width: 11rem;
    font-family: Aileron-light;
    color: #838383;
    letter-spacing: .02em;
}

.single__info li .value {
    flex: 1
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__heading {
        margin-bottom: 18rem
    }
}

@media only screen and (max-width:767px) {
    .single__heading {
        margin-bottom: 3.7rem;
        order: 1
    }
}

.single__heading span {
    display: inline-block;
    margin-bottom: .4rem;
    color: #a5a5a5;
    font-size: 1.3rem
}

.single__heading .h1 {
    position: relative;
    text-transform: unset;
}

    .single__heading .h1 h1, .single__heading .h1 h2, .single__heading .h1 h3, .single__heading .h1 h4, .single__heading .h1 h5, .single__heading .h1 h6, .single__heading .h1 p {
        font-family: Aileron-light;
        font-size: 7.2rem;
        line-height: 1;
        letter-spacing: 0;
        color: #333;
        font-style: normal
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__heading .h1 h1, .single__heading .h1 h2, .single__heading .h1 h3, .single__heading .h1 h4, .single__heading .h1 h5, .single__heading .h1 h6, .single__heading .h1 p {
        font-size: 4.5rem;
        line-height: 1;
        letter-spacing: .01em
    }
}

.single__heading .h1 h1 em, .single__heading .h1 h2 em, .single__heading .h1 h3 em, .single__heading .h1 h4 em, .single__heading .h1 h5 em, .single__heading .h1 h6 em, .single__heading .h1 p em {
    font-style: italic
}

.single__heading .h1 small {
    position: absolute;
    left: calc(100% + .8rem);
    top: 0;
    font-size: 1.3rem;
    font-family: Aileron-Regular;
    font-style: normal;
    letter-spacing: .01em
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__heading .h1 small {
        left: calc(100% + .4rem)
    }
}

.single__heading .h3 {
    position: relative
}

    .single__heading .h3 h1, .single__heading .h3 h2, .single__heading .h3 h3, .single__heading .h3 h4, .single__heading .h3 h5, .single__heading .h3 h6, .single__heading .h3 p {
        font-family: Aileron-Regular;
        font-style: italic;
        font-size: 4rem;
        line-height: 1;
        letter-spacing: .02em;
        color: #333;
        font-style: normal
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__heading .h3 h1, .single__heading .h3 h2, .single__heading .h3 h3, .single__heading .h3 h4, .single__heading .h3 h5, .single__heading .h3 h6, .single__heading .h3 p {
        font-size: 3rem;
        line-height: 1.1
    }
}

.single__heading .h3 h1 em, .single__heading .h3 h2 em, .single__heading .h3 h3 em, .single__heading .h3 h4 em, .single__heading .h3 h5 em, .single__heading .h3 h6 em, .single__heading .h3 p em {
    font-style: italic
}

.single__heading .h3 small {
    position: absolute;
    left: calc(100% + .8rem);
    top: 0;
    font-size: 1.3rem;
    font-family: Aileron-Regular;
    font-style: normal
}

.single__heading .h3 strong {
    color: #a5a5a5
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__heading {
        margin-bottom: 0
    }
}

.single__description {
    white-space: normal;
    font-size: 1.3rem
}

@media only screen and (max-width:767px) {
    .single__description {
        order: 3
    }
}

.single__description a {
    color: #a5a5a5;
    transition: color .2s linear
}

.single__description p:first-child {
    text-indent: 3em
}

.single__item {
    margin-left: .8rem;
    overflow: hidden
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item {
        margin-left: 0;
        margin-bottom: .4rem
    }
}

.single__item--image img {
    height: 100vh;
    height: var(--vh);
    width: auto
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--image img {
        height: auto;
        width: 100vw
    }
}

.single__item--layout_1 {
    width: 73.1rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_1 {
        width: 100vw
    }
}

.single--about .single__item--layout_1 {
    width: 50rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_1 {
        width: 100vw
    }
}

.single__item--layout_2 {
    width: 58rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_2 {
        width: 100vw
    }
}

.single__item--layout_3 {
    width: 73.1rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_3 {
        width: 100vw
    }
}

.single__item--layout_4 {
    width: 89.5rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_4 {
        width: 100vw
    }
}

.single__item--layout_5 {
    width: 72.7rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_5 {
        width: 100vw
    }
}

.single__item--layout_6 {
    width: 87.4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6 {
        width: 100vw
    }
}

.single__item--layout_7 {
    width: 89.5rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_7 {
        width: 100vw
    }
}

.single__item--layout_8 {
    width: 69.2rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_8 {
        width: 100vw;
        padding-top: 5rem;
        padding-bottom: 1rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_8 .head {
        margin-top: 17rem
    }
}

.single__item--layout_1 figure, .single__item--layout_2 figure, .single__item--layout_5 figure, .single__item--layout_6 figure, .single__item--layout_7 figure, .single__item--layout_8 figure {
    display: inline-block
}

.single__item--layout_1 img, .single__item--layout_2 img, .single__item--layout_5 img, .single__item--layout_6 img, .single__item--layout_7 img, .single__item--layout_8 img {
    width: 23.5rem;
    height: 32.1rem;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:767px) {
    .single__item--layout_1 img, .single__item--layout_2 img, .single__item--layout_5 img, .single__item--layout_6 img, .single__item--layout_7 img, .single__item--layout_8 img {
        width: 15.2rem;
        height: 20.7rem
    }
}

.single__item--layout_3 img {
    width: 25.9rem;
    height: 19rem;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:767px) {
    .single__item--layout_3 img {
        width: 15.2rem;
        height: 11.1rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_1, .single__item--layout_3 {
        padding-top: 5rem;
        padding-bottom: 1rem
    }
}

.single__item--layout_1 .head, .single__item--layout_3 .head {
    padding-left: 14.8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_1 .head, .single__item--layout_3 .head {
        padding-left: 0;
        padding-top: 17rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_1, .single--about .single__item--layout_3 {
        padding: 11rem 4rem 6rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_1, .single--about .single__item--layout_3 {
        padding: 8rem 4rem 1rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_1 .single__layout__row:first-child {
        margin-bottom: 4rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_2 {
        padding-top: 5rem;
        padding-bottom: 1rem
    }
}

.single__item--layout_2 .parag {
    padding-left: 15.8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_2 .parag {
        padding-left: 0;
        padding-top: 17rem;
        max-width: 21.4rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 {
        padding: 0 0 4rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_4 {
        padding-top: 5rem
    }
}

.single__item--layout_4 .single__layout__row:first-child img {
    width: 25.9rem;
    height: 19rem;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:767px) {
    .single__item--layout_4 .single__layout__row:first-child img {
        width: 15.2rem;
        height: 11.1rem
    }
}

.single__item--layout_4 .single__layout__row:nth-child(2) {
    display: flex;
    justify-content: flex-end;
    align-items: center
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_4 .single__layout__row:nth-child(2) {
        display: block
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_4 .single__layout__row:nth-child(2) figure {
        text-align: right
    }
}

.single__item--layout_4 .single__layout__row:nth-child(2) img {
    width: 23.5rem;
    height: 32.1rem;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:767px) {
    .single__item--layout_4 .single__layout__row:nth-child(2) img {
        width: 15.2rem;
        height: 20.7rem
    }
}

.single__item--layout_4 .single__layout__row:nth-child(2) .parag {
    padding-left: 15.8rem;
    padding-right: 8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_4 .single__layout__row:nth-child(2) .parag {
        padding: .5rem 0 11.3rem;
        max-width: 21.4rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_5 {
        padding-top: 5rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_5 .head {
        margin-bottom: 14rem
    }
}

.single__item--layout_5 figure {
    margin-left: auto
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_5 figure {
        text-align: right
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6, .single__item--layout_7 {
        padding-top: 5rem
    }
}

.single__item--layout_6 .parag, .single__item--layout_7 .parag {
    width: 27.8rem;
    margin-left: auto
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6 .parag, .single__item--layout_7 .parag {
        margin-left: 0;
        width: 21.4rem;
        margin-top: 2rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6 .single__layout__row:first-child, .single__item--layout_7 .single__layout__row:first-child {
        order: 2
    }
}

.single__item--layout_6 .single__layout__row:nth-child(2), .single__item--layout_7 .single__layout__row:nth-child(2) {
    display: flex
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6 .single__layout__row:nth-child(2), .single__item--layout_7 .single__layout__row:nth-child(2) {
        display: block;
        order: 1
    }
}

.single__item--layout_6 .single__layout__row .head, .single__item--layout_7 .single__layout__row .head {
    padding-right: 7rem
}
.single__item--layout_6 .single__layout__row .head {
    width: 33vw;
}

    @media only screen and (max-width:1023px) and (orientation:portrait) {
        .single__item--layout_6 .single__layout__row .head, .single__item--layout_7 .single__layout__row .head {
        padding-right: 0;
        padding-bottom: 8rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_6 .single__layout__row figure, .single__item--layout_7 .single__layout__row figure {
        text-align: right
    }
}

.single__item--layout_7 .single__layout {
    flex-direction: column-reverse
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_7 .single__layout {
        flex-direction: column
    }
}

.single__item--layout_7 .single__layout .single__layout__row {
    align-items: flex-end
}

.single__item--layout_7 .single__layout .parag {
    margin-left: 15.8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_7 .single__layout .parag {
        margin-left: 0
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item {
        order: 2
    }
}

.single--about .single__item--layout_1 .single__layout {
    padding-top: 12rem;
    padding-bottom: 4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_1 .single__layout {
        padding: 0
    }
}

.single--about .single__item--layout_1 img {
    width: 32.1rem;
    height: 23.5rem
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_1 img {
        width: 13.7rem;
        height: 10rem
    }
}

.single--about .single__item--layout_2 {
    width: 56.2rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 {
        width: 100vw
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 .single__layout__row {
        text-align: right
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 .rich-text {
        text-align: left
    }
}

.single--about .single__item--layout_2 figure {
    text-align: right;
    margin-left: auto
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 figure {
        margin-bottom: 4rem
    }
}

.single--about .single__item--layout_2 img {
    width: 23.5rem;
    height: 32.7rem
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_2 img {
        width: 19rem;
        height: 26.5rem;
        margin-right: -1.5rem
    }
}

.single--about .single__item--layout_2 .single__layout {
    padding-top: 8rem;
    padding-bottom: 4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 .single__layout {
        padding-left: 4rem;
        padding-right: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_2 .single__layout {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
}

.single--about .single__item--layout_2 .single__layout.img-align-left figure {
    text-align: left
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 .single__layout.img-align-left figure {
        margin-bottom: 2rem
    }
}

.single--about .single__item--layout_2 .single__layout.img-align-left figure img {
    margin-top: -8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_2 .single__layout.img-align-left figure img {
        margin-top: 0;
        margin-left: -1.5rem
    }
}

.single--about .single__item--layout_3 {
    width: 62.8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_3 {
        width: 100vw
    }
}

.single--about .single__item--layout_3 .single__layout {
    padding-top: 20rem;
    padding-bottom: 4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_3 .single__layout {
        padding: 0
    }
}

.single--about .single__item--layout_3 .head {
    padding-left: 0
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_3 .head {
        padding-top: 0;
        max-width: 32.2rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_3 .head br {
        display: none
    }
}

.single--about .single__item--layout_3 figure {
    text-align: right
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_3 figure {
        margin-top: 10rem
    }
}

.single--about .single__item--layout_3 img {
    width: 19rem;
    height: 25.9rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_3 img {
        width: 23rem;
        height: 32rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_3 img {
        width: 13.8rem;
        height: 18.8rem
    }
}

.single--about .single__item--layout_4 {
    width: 90.8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 {
        width: 100vw
    }
}

.single--about .single__item--layout_4 .single__layout {
    justify-content: flex-end;
    padding-bottom: 0;
    padding-left: 0
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 .single__layout {
        padding: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_4 .single__layout {
        padding-bottom: 4rem;
        padding-left: 1.5rem
    }
}

.single--about .single__item--layout_4 .single__layout__row {
    display: flex
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 .single__layout__row {
        display: block
    }
}

.single--about .single__item--layout_4 .single__layout__row > .head {
    display: none
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 .single__layout__row > .head {
        display: block;
        width: 60%;
        margin-bottom: 6rem
    }
}

.single--about .single__item--layout_4 figure {
    display: grid;
    margin-right: 8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 figure {
        margin-right: 0;
        margin-left: auto;
        margin-bottom: 4rem;
        display: flex;
        justify-content: flex-end
    }
}

.single--about .single__item--layout_4 .head {
    margin-bottom: 15rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 .head {
        margin-bottom: 2rem
    }
}

.single--about .single__item--layout_4 img {
    width: 36rem !important;
    height: 49.2rem !important
}

@media only screen and (max-width:767px) {
    .single--about .single__item--layout_4 img {
        width: 21.4rem !important;
        height: 29.3rem !important
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__item--layout_4 .col > .head {
        display: none
    }
}

.single__item--spacer {
    margin-left: 0
}

.single__layout {
    padding: 8rem 7.2rem 7.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    white-space: normal
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__layout {
        padding: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single__layout {
        padding: 1.5rem
    }
}

.single--about .single__layout {
    padding: 4rem 8rem
}

@media only screen and (max-width:767px) {
    .single--about .single__layout {
        padding: 1.5rem
    }
}

.single__layout .head h1, .single__layout .head h2, .single__layout .head h3, .single__layout .head h4, .single__layout .head h5, .single__layout .head p {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333;
    font-style: normal
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__layout .head h1, .single__layout .head h2, .single__layout .head h3, .single__layout .head h4, .single__layout .head h5, .single__layout .head p {
        font-size: 3rem;
        line-height: 1.1
    }
}

.single__layout .head h1 em, .single__layout .head h2 em, .single__layout .head h3 em, .single__layout .head h4 em, .single__layout .head h5 em, .single__layout .head p em {
    /*font-style: italic*/
}

.single__layout .head h1 strong, .single__layout .head h2 strong, .single__layout .head h3 strong, .single__layout .head h4 strong, .single__layout .head h5 strong, .single__layout .head p strong {
    color: #a5a5a5
}

.single__item--layout_8 .single__layout .head h1, .single__item--layout_8 .single__layout .head h2, .single__item--layout_8 .single__layout .head h3, .single__item--layout_8 .single__layout .head h4, .single__item--layout_8 .single__layout .head h5, .single__item--layout_8 .single__layout .head p {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 6.4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__item--layout_8 .single__layout .head h1, .single__item--layout_8 .single__layout .head h2, .single__item--layout_8 .single__layout .head h3, .single__item--layout_8 .single__layout .head h4, .single__item--layout_8 .single__layout .head h5, .single__item--layout_8 .single__layout .head p {
        font-size: 3.8rem;
        line-height: 1.1
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single--about .single__layout .head h1, .single--about .single__layout .head h2, .single--about .single__layout .head h3, .single--about .single__layout .head h4, .single--about .single__layout .head h5, .single--about .single__layout .head p {
        font-size: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single--about .single__layout .head h1, .single--about .single__layout .head h2, .single--about .single__layout .head h3, .single--about .single__layout .head h4, .single--about .single__layout .head h5, .single--about .single__layout .head p {
        font-size: 3rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__layout .head br {
        display: none
    }
}

.single__layout .parag {
    font-size: 1.3rem;
    line-height: 1.33333333;
    letter-spacing: .01em
}

.single__next {
    width: auto;
    height: 100vh;
    height: var(--vh);
    display: flex;
    justify-content: center;
    padding-left: 38rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next {
        width: 100vw;
        height: auto;
        padding-left: 0;
        margin-left: 0;
        padding-top: 25rem
    }
}

@media only screen and (max-height:600px) {
    .single__next {
        padding-top: 15rem
    }
}

.single__next a {
    width: 100%;
    display: flex;
    align-items: center
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next a {
        display: block;
        padding-bottom: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single__next a {
        padding-bottom: 2rem
    }
}

.no-touchevents .single__next a:hover img {
    transform: scale(1.15)
}

.single__next img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: right;
    object-position: right;
    transform-origin: right center;
    transition: transform 1.8s cubic-bezier(.23,1,.32,1)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next img {
        -o-object-position: right bottom;
        object-position: right bottom
    }
}

.single__next img.portrait {
    width: 23.5rem;
    height: 32.1rem
}

.single__next img.landscape {
    width: 32.1rem;
    height: 23.5rem
}

.single__next figure {
    margin-left: auto
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next figure {
        display: flex;
        justify-content: flex-end;
        margin-top: 10.5rem
    }
}

@media only screen and (max-width:1199px) {
    .single__next figure.img-landscape img {
        max-width: unset;
        max-height: unset;
        width: 36.2rem;
        height: 26.5rem
    }
}

@media only screen and (max-width:767px) {
    .single__next figure.img-landscape img {
        max-width: unset;
        max-height: unset;
        width: 207px;
        height: 152px
    }
}

@media only screen and (max-width:1199px) {
    .single__next figure.img-portrait img {
        max-width: unset;
        max-height: unset;
        width: 26.5rem;
        height: 36.2rem
    }
}

@media only screen and (max-width:767px) {
    .single__next figure.img-portrait img {
        max-width: unset;
        max-height: unset;
        width: 152px;
        height: 207px
    }
}

.single__next .head {
    padding-right: 4rem;
    width: 250px;
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next .head {
        padding-left: 4rem
    }
}

@media only screen and (max-width:767px) {
    .single__next .head {
        padding-left: 1.5rem
    }
}

.single__next .head span {
    display: inline-block;
    color: #a5a5a5;
    font-size: 1.2rem;
    letter-spacing: .01em
}

@media only screen and (max-width:767px) {
    .single__next .head span {
        font-size: 1.4rem
    }
}

.single__next .head .h3, .single__next .head .h3 p {
    position: relative;
    letter-spacing: 1px;
    color: #333;
    font-family: 'Schnyder Cond M Light';
    font-style: italic;
    font-weight: 400;
    font-size: 3.5rem !important;
     text-transform: unset !important;
}

    .single__next .head .h3 h1, .single__next .head .h3 h2, .single__next .head .h3 h3, .single__next .head .h3 h4, .single__next .head .h3 h5, .single__next .head .h3 h6, .single__next .head .h3 p {
    
        font-style: italic;
        font-size: 3rem;
        line-height: 1;
        letter-spacing: .02em;
        color: #333;
 
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next .head .h3 h1, .single__next .head .h3 h2, .single__next .head .h3 h3, .single__next .head .h3 h4, .single__next .head .h3 h5, .single__next .head .h3 h6, .single__next .head .h3 p {
        font-size: 3rem;
        line-height: 1.1
    }
}

.single__next .head .h3 h1 em, .single__next .head .h3 h2 em, .single__next .head .h3 h3 em, .single__next .head .h3 h4 em, .single__next .head .h3 h5 em, .single__next .head .h3 h6 em, .single__next .head .h3 p em {
    font-style: italic
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__next .head .h3 h1, .single__next .head .h3 h2, .single__next .head .h3 h3, .single__next .head .h3 h4, .single__next .head .h3 h5, .single__next .head .h3 h6, .single__next .head .h3 p {
        font-size: 4rem
    }
}

.single__next .head .h3 small {
    position: absolute;
    left: calc(100% + .8rem);
    top: 0;
    font-size: 1.3rem;
 
    font-style: normal
}

.single__presse {
    width: 85.7rem;
    padding: 4rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse {
        order: 3;
        width: 100vw;
        padding: 6.8rem 1.5rem 2rem;
        min-height: 100vh;
        min-height: var(--vh);
        display: flex
    }
}

.single__presse__container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: flex-start;
    position: relative
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse__container {
        height: auto
    }
}

.single__presse__nav {
    flex: 0;
    white-space: normal;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex-wrap: wrap;
    align-self: flex-start
}

.no-touchevents .single__presse__nav:hover a:first-of-type {
    color: #a5a5a5
}

    .no-touchevents .single__presse__nav:hover a:first-of-type + figure {
        opacity: 0
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse__nav {
        margin-top: 0;
        width: 50%
    }
}

.single__presse__nav a {
    transition: color .25s ease;
    margin-right: 2.8rem;
    line-height: 130%;
    letter-spacing: .01em;
    width: 16rem
}

.no-touchevents .single__presse__nav a:hover {
    color: #333 !important
}

    .no-touchevents .single__presse__nav a:hover + figure {
        opacity: 1 !important
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse__nav a {
        font-size: 1.3rem;
        line-height: 1.3
    }
}

.single__presse__nav a:first-of-type {
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse__nav a:first-of-type {
        color: #a5a5a5
    }
}

.single__presse h3 {
    margin-top: auto;
    margin-bottom: auto;
    width: 20rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse h3 {
        width: 50%
    }
}

.single__presse figure {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 4rem;
    transform: translateY(-50%);
    transition: opacity .4s ease;
    width: 14rem;
    height: 18.3rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__presse figure {
        display: none
    }
}

.single__presse figure:first-of-type {
    opacity: 1
}

.single__presse figure figcaption {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    font-size: 1rem;
    line-height: 1.2;
    color: #838383;
    margin-top: .5rem
}

.single__presse img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: left top;
    object-position: left top;
    width: 100%;
    height: 100%
}

.single__trigger__overlay {
    font-family: Aileron-Regular;
    font-weight: 600;
    color: #838383;
    font-style: italic;
    letter-spacing: .02em;
    font-size: 1.3rem;
    line-height: 1.3;
    margin-left: 0;
    padding: 0;
    border: 0;
    outline: none;
    align-self: flex-end;
    display: none
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .single__trigger__overlay {
        display: block
    }
}

.eotp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden
}

.eotp__image, .eotp__image img {
    width: 100%;
    height: 100%
}

    .eotp__image img {
        -o-object-fit: cover;
        object-fit: cover
    }

.eotp__text {
    position: absolute;
    left: 4rem;
    bottom: 4rem;
    width: 50%;
    z-index: 1
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .eotp__text {
        left: 1.5rem;
        bottom: 2rem;
        width: 100%;
        padding-right: 3rem
    }
}

.eotp__text:before {
    content: "";
    display: inline-block;
    width: 3.8rem;
    height: 1px
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .eotp__text br {
        display: none
    }
}

.eotp__heading {
    position: absolute;
    left: 4rem;
    top: 50%;
    transform: translateY(-50%);
    width: 50%;
    z-index: 1
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .eotp__heading {
        left: 1.5rem;
        top: 10rem;
        transform: none
    }
}

.contact {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    overflow: hidden;
    display: flex
}

@media only screen and (max-width:1023px) {
    .contact {
        position: relative;
        top: unset;
        left: unset;
        height: auto;
        min-height: 100vh;
        flex-direction: row-reverse;
        margin-bottom: -30rem
    }
}

@media only screen and (max-width:767px) {
    .contact {
        flex-direction: column-reverse;
        margin-bottom: 0
    }
}

.contact__image {
    width: 56.1rem;
    height: 100vh;
    height: var(--vh)
}

@media only screen and (max-width:1023px) {
    .contact__image {
        width: 56vw;
        height: 100%;
        position: relative;
        margin-top: 39.5rem
    }
}

@media only screen and (max-width:767px) {
    .contact__image {
        width: 100vw;
        height: auto;
        margin-top: 0
    }
}

@media only screen and (max-width:1023px) {
    .contact__image:before {
        content: "";
        display: block;
        padding-top: 136%
    }
}

.contact__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:1023px) {
    .contact__image img {
        position: absolute;
        top: 0;
        left: 0
    }
}

.contact__content {
    padding: 12rem 4rem 4rem 8rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

@media only screen and (max-width:1023px) {
    .contact__content {
        flex: 1;
        padding-left: 4rem;
        padding-top: 18rem;
        justify-content: flex-start
    }
}

.contact__content p:not(:last-child) {
    margin-bottom: 1em
}

@media only screen and (max-width:767px) {
    .contact__content {
        padding: 10rem 1.5rem 8rem
    }
}

.contact__text {
    margin-top: 6rem
}

@media only screen and (max-width:1023px) {
    .contact__text {
        margin-top: 18rem
    }
}

@media only screen and (max-width:767px) {
    .contact__text {
        margin-top: 6rem
    }
}

.default {
    padding: 12rem 5.2rem 12rem 60rem
}

@media only screen and (max-width:1199px) {
    .default {
        padding-left: 0
    }
}

@media only screen and (max-width:1023px) {
    .default {
        padding: 18rem 0 0
    }
}

@media only screen and (max-width:767px) {
    .default {
        padding: 10rem 0 0
    }
}

.default__heading {
    margin-bottom: 12.7rem
}

@media only screen and (max-width:1023px) {
    .default__heading {
        margin-bottom: 18rem
    }
}

@media only screen and (max-width:767px) {
    .default__heading {
        margin-bottom: 6rem
    }
}

.default__content h1 {
    font-family: Aileron-Regular;
    font-size: 7.2rem;
    line-height: 1;
    letter-spacing: -.005em;
    color: #333
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .default__content h1 {
        font-size: 4.5rem;
        line-height: 1;
        letter-spacing: .01em
    }
}

.default__content > ol > li:before {
    font-size: 2rem
}

.default__content h1, .default__content h2, .default__content h3, .default__content h4, .default__content h5 {
    margin-bottom: 2rem;
    font-family: Aileron-Regular;
    font-weight: 400
}

.default__content ul {
    margin-bottom: 2rem
}

    .default__content ul li {
        position: relative;
        padding-left: 2rem
    }

        .default__content ul li:before {
            content: "";
            display: inline-block;
            width: 4px;
            height: 4px;
            border-radius: 50%;
            background-color: #333;
            margin-right: 1.5rem;
            margin-left: .5rem;
            position: absolute;
            left: 0;
            top: .5em
        }

.default__content p {
    margin-bottom: 2rem
}

.default__content a {
    color: #a5a5a5;
    transition: color .3s ease
}

.no-touchevents .default__content a:hover {
    color: #333
}

.burger {
    width: 40px;
    height: 14px;
    position: relative;
    cursor: pointer;
    z-index: 9;
    pointer-events: all;
    transform: translateZ(2px)
}

@media only screen and (min-width:1921px) {
    .burger {
        width: 60px;
        height: 14px
    }
}

@media only screen and (max-width:767px) {
    .burger {
        width: 30px;
        height: 13px
    }
}

.burger:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    padding: 4rem
}

@media only screen and (max-width:1023px) {
    .burger:before {
        padding: 2rem
    }
}

.burger__wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

    .burger__wrapper:after, .burger__wrapper:before {
        content: "";
        transform-origin: center;
        transition: transform .35s cubic-bezier(.165,.84,.44,1),background-color .4s ease;
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #333;
        will-change: transform
    }

@media only screen and (min-width:1921px) {
    .burger__wrapper:after, .burger__wrapper:before {
        height: 4px
    }
}

@media only screen and (max-width:767px) {
    .burger__wrapper:after, .burger__wrapper:before {
        height: 3px
    }
}

.burger__wrapper:before {
    top: 0
}

.burger__wrapper:after {
    bottom: 0
}

.menu-open .burger__wrapper:before, .single__overlay.is-visible .burger__wrapper:before {
    transform: translateY(7px) rotate(45deg)
}

@media only screen and (min-width:1921px) {
    .menu-open .burger__wrapper:before, .single__overlay.is-visible .burger__wrapper:before {
        transform: translateY(7px) rotate(45deg)
    }
}

.menu-open .burger__wrapper:after, .single__overlay.is-visible .burger__wrapper:after {
    transform: translateY(-3px) rotate(-45deg)
}

.no-touchevents .burger:hover .burger__wrapper:after, .no-touchevents .burger:hover .burger__wrapper:before {
    background-color: #a5a5a5
}

request-form {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    height: var(--vh);
    width: auto;
    z-index: 9999999999999;
    transform: translateX(10rem);
    transition: transform .8s cubic-bezier(.645,.045,.355,1);
    pointer-events: none
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    request-form {
        transform: translateY(10rem);
        width: 100vw
    }
}

.is-ready request-form {
    transform: none
}

.menu-open request-form {
    transform: translateX(10rem)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .menu-open request-form {
        transform: translateY(10rem)
    }
}

request-form:before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    background-color: #000;
    opacity: 0;
    transition: opacity .6s ease;
    pointer-events: none
}

.is-request-visible request-form:before {
    opacity: .4;
    pointer-events: all
}

.request {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    height: var(--vh);
    width: 91.1rem;
    background-color: #ededed;
    z-index: 9999999999999;
    transform: translateX(101%);
    transition: transform .6s cubic-bezier(.645,.045,.355,1);
    pointer-events: none;
    will-change: transform
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request {
        width: 100vw;
        height: calc(100vh - 5rem);
        height: calc(var(--vh) - 5rem);
        transform: translateY(calc(var(--vh) - 5rem));
        top: 5rem
    }
}

.is-request-visible .request {
    transform: none;
    pointer-events: all;
    transition-timing-function: cubic-bezier(.23,1,.32,1);
    transition-duration: .8s
}

.request__close {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -6rem;
    padding: 0;
    outline: none;
    border: 0;
    opacity: 0;
    pointer-events: none;
    transform-origin: center;
    transition: opacity .3s ease;
    will-change: transform,opacity
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__close {
        top: unset;
        bottom: calc(100% - .5rem);
        transform: translateX(-50%);
        left: 50%;
        z-index: 9
    }
}

.request__close:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    height: 100vh;
    width: 100vw
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__close:after {
        top: unset;
        bottom: -.5rem;
        height: 5rem;
        transform: translateX(-50%);
        left: 50%;
        right: unset
    }
}

.request__close svg {
    width: 4.7rem;
    height: 4.7rem;
    transform-origin: center;
    transition: transform .6s cubic-bezier(.445,.05,.55,.95)
}

.is-request-visible .request__close {
    opacity: 1;
    pointer-events: all
}

.no-touchevents .request__close:hover svg {
    transform: rotate(-90deg)
}

.request__trigger {
    position: fixed;
    top: 50%;
    transform: translateY(-50%) translateX(.2rem);
    right: 0;
    z-index: 9999;
    padding: 1.1rem 3rem 1rem 1.2rem;
    background: #ededed;
    color: #333;
    font-family: Aileron-Regular;
    font-size: 15px;
    font-style: italic;
    letter-spacing: .02em;
    line-height: 1.2;
    font-weight: 600;
    transition: transform .6s cubic-bezier(.215,.61,.355,1);
    pointer-events: all
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__trigger {
        right: unset;
        left: 50%;
        transform: translate(-50%,-99%);
        top: 100vh;
        top: var(--vh);
        padding: 1rem
    }
}

@media only screen and (max-width:767px) {
    .request__trigger {
        font-size: 14px
    }
}

.request__trigger:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    height: 100vh;
    width: 5rem;
    transform: translateY(-50%) translateX(-.1rem);
    background: #ededed
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__trigger:after {
        display: none
    }
}

.no-touchevents .request__trigger:hover {
    transform: translateY(-50%) translateX(-2rem)
}

.hide-form .request__trigger {
    transform: translateY(-50%) translateX(100%)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .hide-form .request__trigger {
        transform: translate(-50%,100%)
    }
}

.request__wrapper {
    height: 100%;
    padding: 8rem 9.4rem 8rem 18.4rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__wrapper {
        padding: 6rem 1.5rem 8rem;
        justify-content: flex-start;
        overflow-y: scroll
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__wrapper:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 4.4rem;
        background-color: #ededed;
        z-index: 2
    }
}

.request .wpcf7-response-output {
    position: absolute;
    bottom: 8rem;
    right: 9.4rem
}

.request__label {
    position: absolute;
    top: 50%;
    left: 4rem;
    transform: translateY(-50%);
    color: #333;
    font-family: Aileron-Regular;
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 1.2;
    font-weight: 600;
    font-style: italic
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__label {
        top: 2rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 3
    }
}

@media only screen and (max-width:767px) {
    .request__label {
        font-size: 14px
    }
}

.request__info {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__info {
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
        margin-bottom: 8rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__info figure {
        margin-bottom: 4rem;
        text-align: right;
        width: 100%
    }
}

.request__info .landscape--s img {
    width: 17.8rem;
    height: 13.1rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__info .landscape--s img {
        width: 12.6rem;
        height: 9.3rem
    }
}

.request__info .portrait--s img {
    width: 19rem;
    height: 25.9rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__info .portrait--s img {
        width: 9.9rem;
        height: 13.5rem
    }
}

.request__heading span {
    display: inline-block;
    margin-bottom: .4rem;
    color: #a5a5a5;
    font-size: 1.3rem
}

.request__heading h3 {
    position: relative
}

    .request__heading h3 p {
        font-family: Aileron-Regular;
        font-style: italic;
        font-size: 4rem;
        line-height: 1;
        letter-spacing: .02em;
        color: #333
    }

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__heading h3 p {
        font-size: 3rem;
        line-height: 1.1
    }
}

.request__heading h3 em {
    font-style: italic
}

.request__heading h3 small {
    position: absolute;
    left: calc(100% + .8rem);
    top: 0;
    font-size: 1.3rem;
    font-family: Aileron-Regular;
    font-style: normal;
    letter-spacing: .01em
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .request__heading h3 small {
        left: calc(100% + .4rem)
    }
}

.wpcf7 .request__form {
    display: grid;
    grid-template-areas: "firstname lastname" "tel email" "textarea textarea" "submit submit";
    row-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    position: relative;
    transition: opacity 125ms ease 125ms
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__form {
        display: block
    }
}

.wpcf7 .request__form .input-group {
    position: relative
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__form .input-group {
        margin-bottom: 2rem
    }
}

.wpcf7 .request__form .input-group--firstname {
    grid-area: firstname
}

.wpcf7 .request__form .input-group--lastname {
    grid-area: lastname
}

.wpcf7 .request__form .input-group--tel {
    grid-area: tel
}

.wpcf7 .request__form .input-group--email {
    grid-area: email
}

.wpcf7 .request__form .input-group--textarea {
    grid-area: textarea
}

.wpcf7 .request__form .input-group input[type=email], .wpcf7 .request__form .input-group input[type=tel], .wpcf7 .request__form .input-group input[type=text], .wpcf7 .request__form .input-group textarea {
    font-family: Aileron-Regular;
    font-weight: 400;
    width: 100%;
    border: 0;
    background: none;
    color: #333;
    padding: 0 0 1rem;
    font-size: 1.3rem;
    line-height: 1.3;
    letter-spacing: .01em;
    border-bottom: 1px solid #a5a5a5;
    outline: none;
    box-shadow: 0;
    resize: none;
    -webkit-appearance: none;
    border-radius: 0
}

    .wpcf7 .request__form .input-group input[type=email]::-webkit-input-placeholder, .wpcf7 .request__form .input-group input[type=tel]::-webkit-input-placeholder, .wpcf7 .request__form .input-group input[type=text]::-webkit-input-placeholder, .wpcf7 .request__form .input-group textarea::-webkit-input-placeholder {
        color: #a5a5a5
    }

.wpcf7 .request__form .input-group textarea {
    max-height: 10rem
}

.wpcf7 .request__form .input-group input:-webkit-autofill, .wpcf7 .request__form .input-group input:-webkit-autofill:active, .wpcf7 .request__form .input-group input:-webkit-autofill:focus, .wpcf7 .request__form .input-group input:-webkit-autofill:hover {
    -webkit-box-shadow: 0 0 0 30px #ededed inset !important
}

.wpcf7 .request__form .input-group input:-webkit-autofill {
    -webkit-text-fill-color: #333 !important
}

.wpcf7 .request__form .input-group .wpcf7-not-valid-tip {
    position: absolute;
    right: 0;
    top: .6rem;
    color: #d20404;
    font-size: .8rem;
    line-height: 1.2;
    letter-spacing: .01em;
    opacity: 0;
    transition: opacity .25s ease
}

.wpcf7 .request__form .request__submit {
    grid-area: submit;
    display: flex;
    align-items: center;
    position: relative
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__form .request__submit {
        align-items: flex-start
    }
}

.wpcf7 .request__form .request__submit input[type=checkbox] {
    opacity: 0;
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox;
    margin: 0;
    padding: 0;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    z-index: 1
}

.wpcf7 .request__form .request__submit .acceptance {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    z-index: 1;
    width: 2.5rem;
    height: 150%
}

.wpcf7 .request__form .copy {
    font-size: 1rem;
    line-height: 1.2;
    color: #333;
    padding-left: 2.5rem;
    position: relative;
    margin-right: auto;
    letter-spacing: .02em;
    white-space: normal;
    max-width: 47rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__form .copy {
        padding-right: 2rem
    }
}

.wpcf7 .request__form .copy:before {
    content: "";
    width: 1rem;
    height: 1rem;
    position: absolute;
    left: 0;
    top: .1rem;
    border: 1px solid #a5a5a5;
    box-sizing: border-box;
    transition: 225ms ease;
    transition-property: border-color,background-color
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__form .copy:before {
        top: .2rem;
        transform: none
    }
}

.accept-checked .wpcf7 .request__form .copy:before {
    background-color: #333;
    border-color: #333
}

.wpcf7 .request__form .copy a {
    position: relative;
    display: inline-block;
    color: #333
}

    .wpcf7 .request__form .copy a:after {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
        bottom: 0;
        height: 1px;
        background-color: #333
    }

.wpcf7 .wpcf7-form-control-wrap {
    position: static
}

.wpcf7 .wpcf7-list-item-label {
    display: none
}

.wpcf7 .wpcf7-spinner {
    display: none !important
}

.wpcf7 .wpcf7-list-item {
    display: block
}

.wpcf7 .wpcf7-submit {
    outline: none;
    -webkit-appearance: none;
    border: 0;
    padding: 0;
    margin: 0;
    color: #333;
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 1.4rem;
    line-height: 1.2;
    letter-spacing: .02em;
    transition: opacity .25s ease;
    opacity: .5
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .wpcf7-submit {
        margin-top: 6.5rem
    }
}

.accept-checked .wpcf7 .wpcf7-submit {
    opacity: 1
}

.wpcf7 .wpcf7-response-output {
    position: absolute;
    right: 0;
    top: calc(100% + 2rem);
    color: #d20404;
    font-size: .8rem;
    line-height: 1.2;
    letter-spacing: .01em;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0;
    text-align: right;
    transition: opacity .25s ease
}

.wpcf7 .wpcf7-form {
    position: relative
}

    .wpcf7 .wpcf7-form.invalid .wpcf7-not-valid-tip, .wpcf7 .wpcf7-form.invalid .wpcf7-response-output {
        opacity: 1
    }

    .wpcf7 .wpcf7-form.resetting .request__form, .wpcf7 .wpcf7-form.sent .request__form, .wpcf7 .wpcf7-form.submitting .request__form {
        opacity: 0
    }

    .wpcf7 .wpcf7-form.sent .request__success {
        opacity: 1
    }

.wpcf7 .request__success {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% + 4rem);
    z-index: 9;
    background-color: #ededed;
    opacity: 0;
    pointer-events: none;
    will-change: opacity;
    transition: opacity .45s ease-in-out;
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333;
    color: #a5a5a5;
    white-space: normal;
    font-style: normal
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__success {
        font-size: 3rem;
        line-height: 1.1;
        font-family: Aileron-Regular;
        font-size: 2rem;
        line-height: 120%;
        letter-spacing: .01em;
        color: #333;
        color: #a5a5a5
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) and (max-width:1023px) and (orientation:portrait) {
    .wpcf7 .request__success {
        font-size: 1.8rem
    }
}

.wpcf7 .request__success span {
    display: block;
    color: #333;
    font-style: italic
}

.zoom-img {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    z-index: 9999999;
    opacity: 0;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

    .zoom-img:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #000;
        opacity: .4;
        z-index: -1;
        pointer-events: all
    }

    .zoom-img div {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none;
        position: relative;
        z-index: 1
    }

    .zoom-img img {
        transform-origin: center;
        transform: scale(1.5);
        min-width: 100vw;
        min-height: 100vh;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center
    }

    .zoom-img.is-visible {
        pointer-events: all
    }

.zoom-close {
    display: none
}

.touchevents .zoom-close {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='27' height='30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23333' d='M0 0h26.25v30H0z'/%3E%3Cpath d='M4.375 15h17.5' stroke='%23F4F4F4' stroke-width='2'/%3E%3C/svg%3E");
    position: fixed;
    right: 1.5rem;
    top: 1.5rem;
    width: 2.7rem;
    height: 3rem;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 5
}

.zoom-close:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    padding: 2rem;
    transform: translate(-50%,-50%)
}

[data-zoom-wrapper] {
    position: relative
}

    [data-zoom-wrapper] picture {
        display: flex
    }

    [data-zoom-wrapper]:after {
        content: "";
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='27' height='30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23333' d='M0 0h26.25v30H0z'/%3E%3Cpath d='M4.375 15h17.5M13.125 25V5' stroke='%23F4F4F4' stroke-width='2'/%3E%3C/svg%3E");
        position: absolute;
        background-repeat: no-repeat;
        background-size: contain;
        mix-blend-mode: unset;
        right: 1.5rem;
        bottom: 1.5rem;
        width: 2.7rem;
        height: 3rem;
        pointer-events: none;
        z-index: 9;
        display: none
    }

.touchevents [data-zoom-wrapper]:after {
    display: block
}

linked-products {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    height: var(--vh);
    width: auto;
    z-index: 9999999999999;
    transform: translateX(10rem);
    transition: transform .8s cubic-bezier(.645,.045,.355,1);
    pointer-events: none
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    linked-products {
        transform: translateY(10rem);
        width: 100vw
    }
}

.is-zoom-visible linked-products {
    transform: none
}

.is-linked-visible linked-products {
    pointer-events: all
}

linked-products:before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    background-color: #000;
    opacity: 0;
    transition: opacity .6s ease;
    pointer-events: none
}

.is-linked-visible linked-products:before {
    opacity: .4;
    pointer-events: all
}

.linked {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    height: var(--vh);
    width: auto;
    background-color: #ededed;
    z-index: 9999999999999;
    transform: translateX(101%);
    transition: transform .6s cubic-bezier(.645,.045,.355,1);
    pointer-events: none;
    will-change: transform
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked {
        width: 100vw;
        height: 26rem;
        transform: translateY(26rem);
        top: calc(100vh - 26rem);
        top: calc(var(--vh) - 26rem)
    }
}

@media only screen and (max-width:767px) {
    .linked {
        width: 100vw;
        height: 16rem;
        transform: translateY(16rem);
        top: calc(100vh - 16rem);
        top: calc(var(--vh) - 16rem)
    }
}

.is-linked-visible .linked {
    transform: none;
    pointer-events: all;
    transition-timing-function: cubic-bezier(.23,1,.32,1);
    transition-duration: .8s
}

.linked__close {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -6rem;
    padding: 0;
    outline: none;
    border: 0;
    opacity: 0;
    pointer-events: none;
    transform-origin: center;
    transition: opacity .3s ease;
    will-change: transform,opacity;
    mix-blend-mode: difference
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__close {
        top: unset;
        bottom: calc(100% - .5rem);
        transform: translateX(-50%);
        left: 50%
    }
}

.linked__close:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    height: 100vh;
    width: 100vw
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__close:after {
        top: unset;
        bottom: -.5rem;
        height: calc(100vh - 26rem);
        transform: translateX(-50%);
        left: 50%;
        right: unset
    }
}

@media only screen and (max-width:1199px) {
    .linked__close:after {
        height: calc(100vh - 16rem)
    }
}

.linked__close svg {
    width: 4.7rem;
    height: 4.7rem;
    transform-origin: center;
    transition: transform .6s cubic-bezier(.445,.05,.55,.95);
    mix-blend-mode: difference
}

.is-linked-visible .linked__close {
    opacity: 1;
    pointer-events: all
}

.no-touchevents .linked__close:hover svg {
    transform: rotate(-90deg)
}

.linked__trigger {
    position: fixed;
    top: 50%;
    transform: translateY(-50%) translateX(.2rem);
    right: 0;
    z-index: 9999;
    padding: 1.1rem 3rem 1rem 1.2rem;
    background: #ededed;
    color: #333;
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 1.2;
    font-weight: 600;
    transition: transform .6s cubic-bezier(.215,.61,.355,1)
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__trigger {
        right: unset;
        left: 50%;
        transform: translate(-50%,-99%);
        top: 100vh;
        top: var(--vh);
        padding: 1rem
    }
}

@media only screen and (max-width:767px) {
    .linked__trigger {
        font-size: 14px
    }
}

.linked__trigger:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    height: 100vh;
    width: 5rem;
    transform: translateY(-50%) translateX(-.1rem);
    background: #ededed
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__trigger:after {
        display: none
    }
}

.no-touchevents .linked__trigger:hover {
    transform: translateY(-50%) translateX(-2rem)
}

.is-zoom-visible .linked__trigger {
    pointer-events: all
}

.linked__wrapper {
    height: 100%;
    padding: 8rem 9.4rem 8rem 18.4rem;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__wrapper {
        padding: 1.5rem;
        justify-content: flex-start;
        overflow-x: scroll;
        align-items: flex-end
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__wrapper:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 4.4rem;
        background-color: #ededed;
        z-index: 2
    }
}

.linked__label {
    position: absolute;
    top: 50%;
    left: 4rem;
    transform: translateY(-50%);
    color: #333;
    font-family: Aileron-Regular;
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 1.3;
    font-weight: 600;
    font-style: italic
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__label {
        top: 2rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 3
    }
}

@media only screen and (max-width:767px) {
    .linked__label {
        font-size: 14px
    }
}

.linked__list {
    display: grid;
    grid-template-columns: auto;
    grid-auto-flow: column;
    -moz-column-gap: .8rem;
    column-gap: .8rem
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .linked__list.is-centered {
        margin: 0 auto
    }
}

.linked__item {
    display: inline-block;
    position: relative;
    transition: opacity .8s ease;
    will-change: opacity
}

    .linked__item img {
        height: 16.7rem;
        width: 12.4rem;
        transform-origin: center;
        pointer-events: none;
        transition: transform 2s cubic-bezier(.23,1,.32,1);
        -o-object-fit: cover;
        object-fit: cover
    }

        .linked__item img.horizontal {
            width: 22.7rem
        }

@media only screen and (max-width:767px) {
    .linked__item img.horizontal {
        width: auto
    }
}

@media only screen and (max-width:767px) {
    .linked__item img {
        height: 6.7rem;
        width: auto
    }
}

.no-touchevents .linked__item:hover {
    opacity: 1 !important;
    z-index: 99;
    transform: translateZ(1px)
}

    .no-touchevents .linked__item:hover img {
        transform: scale(1.45)
    }

.overview {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: var(--vh);
    display: flex;
    align-items: center;
    justify-content: center
}

.overview--presse {
    position: relative;
    top: unset;
    left: unset;
    width: 85.7rem;
    overflow: hidden
}

@media only screen and (max-width:1199px) {
    .overview--presse {
        height: auto;
        padding: 20rem 0 28rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .overview--presse {
        order: 3;
        width: 100vw
    }
}

@media only screen and (max-width:767px) {
    .overview--presse {
        padding: 20rem 0
    }
}

@media only screen and (max-width:500px) {
    .overview--presse {
        padding: 10rem 0;
        min-height: 100vh
    }
}

@media only screen and (max-width:400px) {
    .overview--presse {
        padding: 5rem 0 0
    }
}

.overview--presse .swiper-slide img {
    -o-object-fit: contain !important;
    object-fit: contain !important
}

@media only screen and (max-width:767px) {
    .overview--presse .swiper-slide img {
        height: 16.5rem !important
    }
}

.overview__row {
    display: flex;
    align-items: center;
    width: 100%;
    display: grid;
    grid-template-columns: 27rem calc(100% - 27rem);
    grid-auto-flow: column;
    position: relative
}

@media only screen and (max-width:767px) {
    .overview__row {
        margin-top: -3rem
    }
}

@media only screen and (max-width:1199px) {
    .overview--presse .overview__row {
        display: block
    }
}

@media only screen and (max-width:767px) {
    .overview__row {
        margin-top: 0
    }
}

.overview__title {
    font-family: Aileron-Regular;
    font-style: italic;
    font-size: 6.4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333;
    font-size: 3.8rem;
    position: absolute;
    display: none;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    bottom: unset;
    top: 70vh
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .overview__title {
        font-size: 3.8rem;
        line-height: 1.1
    }
}

@media only screen and (max-width:1199px) {
    .overview__title {
        top: unset;
        bottom: 0
    }
}

@media only screen and (max-width:767px) {
    .overview__title {
        font-size: 3.6rem
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .overview__title {
        -webkit-animation-delay: .55s !important;
        animation-delay: .55s !important;
        transition-delay: .55s !important
    }
}

.overview__title small {
    position: absolute;
    left: calc(100% + .8rem);
    top: .1em;
    font-size: 1.2rem;
    font-family: Aileron-Regular;
    font-style: normal
}

.touchevents .overview__title {
    display: inline-block
}

.overview--presse .overview__title {
    top: 70vh;
    font-size: 14px;
    font-family: Aileron-Regular;
    font-weight: 400;
    font-style: normal
}

@media only screen and (max-width:1199px) {
    .overview--presse .overview__title {
        top: unset;
        bottom: 0
    }
}

@media only screen and (max-width:400px) {
    .overview--presse .overview__title {
        bottom: 2rem
    }
}

.overview__heading {
    padding-left: 10rem;
    letter-spacing: .01em;
 
    font-size: 4rem;
    line-height: 1;
    letter-spacing: .02em;
    color: #333;
    font-size: 2rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99;
    position: relative;
    transform: translateZ(1px);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .overview__heading {
        font-size: 3rem;
        line-height: 1.1
    }
}

@media only screen and (max-width:1199px) {
    .overview__heading {
        display: none
    }
}

.overview--presse .overview__heading {
    font-size: 4rem
}

@media only screen and (max-width:1199px) {
    .overview--presse .overview__heading {
        display: block;
        font-size: 4rem;
        margin-bottom: 11rem;
        margin-right: -25vw
    }
}

@media only screen and (max-width:767px) {
    .overview--presse .overview__heading {
        margin-bottom: 3.2rem;
        font-size: 3rem;
        padding-left: 1.5rem
    }
}

.overview__slider {
    overflow: hidden;
    margin-bottom: -3.6rem;
    position: relative;
    z-index: 1;
    margin-left: -5rem;
    padding-left: 5rem;
    padding-top: 10rem;
    padding-bottom: 10rem
}

@media only screen and (max-width:1366px) {
    .overview__slider {
        padding-left: 0;
        padding-top: 0;
        margin-left: -15vw;
        height: 100vh;
        display: flex;
        align-items: center
    }
}

@media only screen and (max-width:1199px) {
    .overview__slider {
        width: 100vw;
        margin-left: 0;
        height: auto
    }
}

@media only screen and (max-width:767px) {
    .overview__slider {
        padding-bottom: 8rem
    }
}

@media only screen and (max-width:1199px) {
    .overview--presse .overview__slider {
        width: auto
    }
}

@media only screen and (max-width:1366px) {
    .overview--presse .overview__slider:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100vh;
        transform: translate(-50%,-50%)
    }
}

@media only screen and (max-width:400px) {
    .overview--presse .overview__slider {
        padding-bottom: 5rem
    }
}

@media only screen and (max-width:1366px) {
    .overview__slider:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 10rem;
        height: 100vh;
        z-index: 9;
        transform: translateY(-50%);
        background-color: #ededed;
        pointer-events: none
    }
}

@media only screen and (max-width:1199px) {
    .overview__slider:after {
        display: none
    }
}

@media only screen and (max-width:1023px) and (orientation:portrait) {
    .overview__slider {
        margin-bottom: 0;
        -webkit-animation-name: appear-left-long !important;
        animation-name: appear-left-long !important
    }
}

.overview__nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 2rem;
    padding-right: 3rem
}

@media only screen and (max-width:1366px) {
    .overview__nav {
        position: absolute;
        top: calc(50% + 11rem);
        right: 0
    }
}

@media only screen and (max-width:1199px) {
    .overview__nav {
        top: calc(50% + 8rem)
    }
}

@media only screen and (max-width:767px) {
    .overview__nav {
        display: none
    }
}

.overview__nav .next, .overview__nav .prev {
    display: flex;
    align-items: center;
    width: 4.4rem;
    padding: 0 1rem;
    position: relative;
    transition: opacity .3s ease
}

    .overview__nav .next:before, .overview__nav .prev:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        padding: 2rem
    }

    .overview__nav .next.swiper-button-disabled, .overview__nav .prev.swiper-button-disabled {
        opacity: 0
    }

    .overview__nav .next svg, .overview__nav .prev svg {
        width: 100%
    }

        .overview__nav .next svg line, .overview__nav .prev svg line {
            transition: stroke .3s ease
        }

.no-touchevents .overview__nav .next:hover line, .no-touchevents .overview__nav .prev:hover line {
    stroke: #333
}

.overview__nav .prev {
    transform-origin: center;
    transform: rotate(180deg)
}

.overview .swiper-wrapper {
    will-change: transform;
    transition-timing-function: ease;
    height: auto
}

@media only screen and (max-width:1366px) {
    .overview .swiper-wrapper {
        margin-bottom: -8rem
    }
}

@media only screen and (max-width:1199px) {
    .overview .swiper-wrapper {
        margin-bottom: 0
    }
}

.overview .swiper-slide {
    width: auto;
    height: 20rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

    .overview .swiper-slide.portrait, .overview .swiper-slide.portrait img {
        width: 14.7rem
    }

    .overview .swiper-slide.landscape, .overview .swiper-slide.landscape img {
        width: 27rem
    }

    .overview .swiper-slide.is-scaling {
        z-index: 5
    }

    .overview .swiper-slide figure {
        display: flex
    }

    .overview .swiper-slide img {
        height: 20rem;
        width: auto;
        -o-object-fit: cover;
        object-fit: cover;
        opacity: 0;
        transition: opacity .25s ease;
        transform-origin: center;
        transition: transform 2s cubic-bezier(.23,1,.32,1)
    }

.is-ready .overview .swiper-slide img.lazy-loaded {
    opacity: 1
}

.overview .swiper-slide:last-child {
    margin-right: 8.5rem
}

@media only screen and (max-width:1199px) {
    .overview .swiper-slide:last-child {
        margin-right: 0
    }
}

.no-touchevents .overview .swiper-slide:hover {
    opacity: 1 !important;
    z-index: 99;
    transform: translateZ(1px)
}

    .no-touchevents .overview .swiper-slide:hover img {
        transform: scale(1.45)
    }

.overview--presse .no-touchevents .overview .swiper-slide:hover img {
    transform: scale(1.175)
}
/*# sourceMappingURL=main.css.map*/

@media only screen and (min-width:980px) {
    .footer__links {
        display:none;
    }
    .img_width img {
        width: 80vw !important;
    }

}

