/* @group classes */

.wk-position-absolute {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 200;
}

.wk-position-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 200;
}

.wk-bg-transparent {
    background: transparent;
}

/* @end */

/* @group General */

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    overflow: hidden!important;
    top: 0;
    left: 0;
    background: #FFFFFF;
}

.swiper-slide, .swiper-wrapper {
    position: relative;
    height: 100%;
    width: 100%
}

.swiper-container-no-flexbox .swiper-slide {
    float: left
}

.swiper-container-vertical>.swiper-wrapper {
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    z-index: 1;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    -ms-transition-property: -ms-transform;
    transition-property: transform;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    -webkit-transform: translate3d(0,0,0);
    -moz-transform: translate3d(0,0,0);
    -o-transform: translate(0,0);
    -ms-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0)
}

.swiper-container-multirow>.swiper-wrapper {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

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

.swiper-slide {
    -webkit-flex-shrink: 0;
    -ms-flex: 0 0 auto;
    flex-shrink: 0
}

.swiper-slide img {
    display: block;
    width: 100vw;
    height: 100vh;
    object-fit: cover
}

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

.swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-transition-property: -webkit-transform,height;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    -ms-transition-property: -ms-transform;
    transition-property: transform,height
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-wp8-horizontal {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-wp8-vertical {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

/* @end */

/* @group Navigation */

.swiper-nav-btn.hide {
    display: none;
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    margin-top: -22px;
    cursor: pointer;
    -moz-background-size: 27px 44px;
    -webkit-background-size: 27px 44px;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next {
    height: 15px;
    width: 15px;
    border: 10px solid #fff;
    border-width: 2px 2px 0 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 40px;
    z-index: 1
}

.swiper-button-next:hover, .swiper-button-prev:hover {
    opacity: .7;
    transition: opacity .5s ease
}

.swiper-button-prev {
    height: 15px;
    width: 15px;
    border: 10px solid #fff;
    border-width: 0 0 2px 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 40px;
    z-index: 1
}

/* @end */

/* @group 3D etc */

.swiper-container-3d {
    -webkit-perspective: 1200px;
    -moz-perspective: 1200px;
    -o-perspective: 1200px;
    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 {
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    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: -webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));
    background-image: -webkit-linear-gradient(right,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -moz-linear-gradient(right,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -o-linear-gradient(right,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));
    background-image: -webkit-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -moz-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -o-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));
    background-image: -webkit-linear-gradient(bottom,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -moz-linear-gradient(bottom,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -o-linear-gradient(bottom,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));
    background-image: -webkit-linear-gradient(top,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -moz-linear-gradient(top,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: -o-linear-gradient(top,rgba(0,0,0,.5),rgba(0,0,0,0));
    background-image: linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
    -ms-perspective: 1200px
}

.swiper-container-cube, .swiper-container-flip {
    overflow: visible
}

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.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, .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;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-slide {
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.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-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .6;
    -webkit-filter: blur(50px);
    filter: blur(50px);
    z-index: 0
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    -moz-transition-timing-function: ease-out;
    -ms-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    -moz-transition-property: opacity;
    -o-transition-property: opacity;
    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-zoom-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: 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%;
    object-fit: contain
}

.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-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    -moz-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s steps(12,end) infinite;
    -moz-animation: swiper-preloader-spin 1s steps(12,end) infinite;
    animation: swiper-preloader-spin 1s steps(12,end) infinite
}

@-webkit-keyframes swiper-preloader-spin {
    100% {
        -webkit-transform: rotate(360deg)
    }
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg)
    }
}

.swiper-container {
    width: 100%;
    height: 100vh
}

.slide-inner, .slide-inner--image {
    width: 100%;
    height: 100%;
    position: absolute
}

.swiper-slide {
    overflow: hidden
}

.slide-inner {
    left: 0;
    top: 0;
    background: #000
}

.slide-inner--image {
    background-size: cover;
    background-position: center;
}

.tm-image-zoom {
    opacity: .2;
    transform: scale(1.07);
    -webkit-transition: opacity .6s ease-in-out,transform 2s ease .7s;
    -moz-transition: opacity .6s ease-in-out,transform 2s ease .7s;
    transition: opacity .6s ease-in-out,transform 2s ease .7s
}

.swiper-slide-active .slide-inner--image, .swiper-slide-duplicate-active .slide-inner--image {
    opacity: 1;
    transform: scale(1)
}

/* @end */

/* @group Info */

.slide-inner--info {
    position: absolute;
    left: 40px;
    width: auto;
    width: calc(100% - 100px);
    min-height: 50px;
    bottom: 1em;
    padding-left: 0;
    margin: 0 auto;
    text-align: left;
    color: #fff;
    z-index: 300;
    opacity: 0;
    transition: opacity 1s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}


.slide-inner--info.info-centered {
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    margin: 40vh auto;
    text-align: center;
}

@media only screen and (max-width:805px) {
    .slide-inner--info {
        padding: 7px
    }
    .slide-inner--info.info-centered {
        margin: 0 auto;
    }
}

.swiper-slide-active .slide-inner--info {
    opacity: 1;
    transition: opacity 1s ease 1s
}

.slide-inner--info h1 {
    margin: 10px -3px;
    line-height: 1em;
    font-size: 3em;
    color: #FFFFFF;
    transition: text-align .3s ease-in-out;
    transition: font-size .3s ease-in-out
}

.slide-inner--info h1.sans-link {
    margin-bottom: 25px !important;
}

.slide--info__link {
    text-transform: uppercase;
    color: #fff;
    text-decoration: none;
    border-bottom: solid 2px
}

/* @end */

/* @group Pagination */

.swiper-pagination {
    position: absolute;
    text-align: center;
    -webkit-transition: .3s;
    -moz-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    -webkit-transform: translate3d(0,0,0);
    -ms-transform: translate3d(0,0,0);
    -o-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    z-index: 99999;
}

.swiper-pagination.hide {
    display: none;
}

.swiper-pagination.show {
    display: block!important;
}

.swiper-pagination-progress {
    background: rgba(0,0,0,.25)
}

.swiper-pagination-progress .swiper-pagination-progressbar {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    -moz-transform-origin: left top;
    -ms-transform-origin: left top;
    -o-transform-origin: left top;
    transform-origin: left top;
    z-index: 99999;
}

.expanded-timeline {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: 999;
    height: 4px;
    margin: 0;
}

.swiper-pagination {
    width: 100vw
}

.expanded-timeline__counter {
    position: absolute;
    bottom: 3em;
    right: 40px;
    text-align: right;
    color: #fff
}

.expanded-timeline__counter span {
    margin-left: 10px;
    margin-right: 0;
    color: #fff
}

.expanded-timeline__counter span:nth-child(1) {
    margin-left: 0;
    margin-right: 10px
}

.expanded-timeline__counter.hide-counter {
    display: none!important;
}

.swiper-pagination.hide {
    display: none;
}

.swiper-pagination-progress {
    z-index: 4;
    width: calc(100% - 30px); /*ugly I know*/
    left: 15px;
    right: 0;
    height: 4px;
    margin: 0;
}

.swiper-pagination-progressbar{
    left: 0;
    margin: 0;
    padding: 0;
}

.scroll-message {
    position: absolute;
    right: 0;
    color: #fff;
    opacity: .5;
    font-size: 12px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    letter-spacing: .15em
}

.scroll-svg {
    width: 24px;
    margin: 0 auto 1.2em;
    display: block
}

/* @end */

/* @group Link */

.btn--link {
    text-decoration: none;
    position: relative;
    display: block;
    visibility: visible;
    padding-bottom: 30px;
    width: 100%;
    margin: 0 auto;
    letter-spacing: .15em
}

.btn--link.hide, .close-box.hide {
    display: none
}

/* @end */

/* @group Close Box */

.close-box {
    position: absolute;
    display: inline-block;
    top: 50px;
    z-index: 999;
    right: 30px;
    width: 30px;
    height: 20px;
    vertical-align: middle
}

.close-box_line_1, .close-box_line_2 {
    position: absolute;
    width: 30px;
    height: 3px;
    margin: 0;
    background-color: #fff;
    transition: background-color .3s ease
}

.close-box_line_1 {
    top: 8px;
    -webkit-transform: translate3d(0,-8px,0) rotate(45deg);
    transform: translate3d(0,-8px,0) rotate(45deg)
}

.close-box_line_2 {
    top: 8px;
    -webkit-transform: translate3d(0,-8px,0) rotate(-45deg);
    transform: translate3d(0,-8px,0) rotate(-45deg)
}

/* @end */

/* @group Media Queries */
    
@media only screen and (max-width:805px) {
    .swiper-button-next, .swiper-button-prev {
        bottom: 1.4em;
        top: auto;
        z-index: 100;
    }
    
    .expanded-timeline {
        display: none
    }
    
    .slide-inner--info {
        text-align: center;
        min-height: 50px;
        bottom: 10vh!important;
        left: 0;
        right: 0;
        margin: 0 auto;
        color: #fff;
        z-index: 1;
        opacity: 0;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: text-align .3s ease-in-out
    }
    
    .slide-inner--info h1 {
        font-size: 2em!important;
        transition: font-size .3s ease-in-out
    }
    
    .btn--link {
        margin: 0 auto;
        display: inline-block;
        letter-spacing: .15em;
        padding: .5em 0
    }
    
    .btn--link {
        background: #FFFFFF;
    }
    
    .btn--link::before {
        content: '';
        display: none;
        width: 0
    }
    
    .scrollToTop {
        visibility: hidden;
    }
}

@media only screen and (min-width:806px) {
    .btn--link {
        background: transparent!important;
    }
}
    
/* @end */