/* FLICKITY */
#cursor {
    position: absolute;
    will-change: transform;
    pointer-events: none;
    z-index: 10101;
    /* width: 6rem;
    height: 6rem; */
    opacity: 0;
    -webkit-transition: opacity 0.5s cubic-bezier(0.6, 1.46, 0.53, 0.92);
    -o-transition: opacity 0.5s cubic-bezier(0.6, 1.46, 0.53, 0.92);
    transition: opacity 0.5s cubic-bezier(0.6, 1.46, 0.53, 0.92);
    -webkit-transform: translate(-100%);
        -ms-transform: translate(-100%);
            transform: translate(-100%);
}
@media(min-width: 1200px) {
    #cursor .btn-arrow {
        width: 90px;
        height: 90px;
        padding: 23px;
        background: var(--color-blue);
    }
}
#cursor.hide {
    opacity: 0!important;
}
#cursor .cursor-container {
    -webkit-transform: translate(-70%, -70%);
        -ms-transform: translate(-70%, -70%);
            transform: translate(-70%, -70%);
}
#cursor .close, #cursor.close .arrow {
    display: none;
}
#cursor.close .close {
    display: block;
}
.layout-vslider .vcarousel-wrapper {
    /* height: 100vh; */
    min-height: calc(var(--vh, 1vh) * 100);
    /* overflow: hidden; */
    /* max-height: 100vh; */
}
.layout-vslider .vcarousel-f {
    aspect-ratio: 16 / 9;
    width: 100%;
}
.layout-vslider .carousel-container {
    height: 63%;
}
@media(min-width: 992px) {
    .layout-vslider .vcarousel-wrapper {
        height: 100vh;
    }
    .layout-vslider .carousel-container {
        height: calc(80% - 25px);
    }
    .layout-vslider .content-wrapper {
        padding-bottom: 115px;
    }
}
@media (min-width: 1024px) and (max-width: 1366px) and (-webkit-min-device-pixel-ratio: 2) {
    .layout-vslider .content-wrapper {
        padding-bottom: 40px;
    }
}
@media(min-width: 1200px) {
    .layout-vslider .vcarousel-wrapper {
        height: 100vh;
    }
    .layout-vslider .carousel-container {
        height: calc(100% - 25px);
    }
    .layout-vslider .content-wrapper {
        padding-bottom: 120px;
    }
}
@media(min-width: 1800px) {
    .layout-vslider .content-wrapper {
        padding-bottom: 200px;
    }
}
.layout-vslider .flickity-viewport {
    height: 100% !important;
}
.layout-vslider .img-container.single {
    width: 100%;
    height: 100%;
    background: var(--color-white);
}
.layout-vslider .img-container.double {
    height: 100%;
    background: var(--color-white);
}
.layout-vslider .img-container.single img, .layout-vslider .img-container.double img {
    /* position: absolute; */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom;
}
.layout-vslider .img-container.double img {
    object-fit: contain;
    object-position: bottom;
}
/* NAVIGATION ARROWS */
.layout-vslider .vcarousel-arrows {
    display: inline-block;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid var(--color-dgray);
    background: transparent;
    transition: background .3s ease-out;
}
.layout-vslider .vcarousel-arrows.carousel-prev {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.74 40.66'%3E%3Cpolygon points='45.74 23.22 45.74 17.35 11.02 17.44 24.41 4.13 20.19 0 0 20.29 20.19 40.66 24.42 36.53 11.02 23.22 11.02 23.22 45.74 23.22' style='fill:%23010101;'/%3E%3C/svg%3E") no-repeat center / 11px;
}
.layout-vslider .vcarousel-arrows.carousel-prev:hover {
    background: var(--color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.74 40.66'%3E%3Cpolygon points='45.74 23.22 45.74 17.35 11.02 17.44 24.41 4.13 20.19 0 0 20.29 20.19 40.66 24.42 36.53 11.02 23.22 11.02 23.22 45.74 23.22' style='fill:%23010101;'/%3E%3C/svg%3E") no-repeat center / 11px;
}
.vcarousel-next-wrapper {
    position: relative;
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.layout-vslider .vcarousel-next-wrapper .carousel-next {
    position: relative;
    z-index: 2;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.74 40.66'%3E%3Cpolygon points='25.55 0 21.33 4.13 34.73 17.44 34.73 17.44 0 17.44 0 23.31 34.73 23.22 21.33 36.53 25.55 40.66 45.74 20.37 25.55 0' style='fill:%23010101;'/%3E%3C/svg%3E") no-repeat center / 11px;
}
.layout-vslider .vcarousel-arrows.carousel-next:hover {
    background: var(--color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.74 40.66'%3E%3Cpolygon points='25.55 0 21.33 4.13 34.73 17.44 34.73 17.44 0 17.44 0 23.31 34.73 23.22 21.33 36.53 25.55 40.66 45.74 20.37 25.55 0' style='fill:%23010101;'/%3E%3C/svg%3E") no-repeat center / 11px;
}
@media(min-width: 1200px) {
    .layout-vslider .vcarousel-arrows {
        width: 60px;
        height: 60px;
    }
    .vcarousel-next-wrapper {
        width: 64px;
        height: 64px;
    }
}
.progress-ring {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transform: rotate(-90deg);
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.progress-ring__circle {
    fill: none;
    stroke: black;
    stroke-width: 3;
    stroke-dasharray: 176; /* 2πr */
    stroke-dashoffset: 176;
}
.flickity-progress-bar {
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;
    z-index: 1;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
}
.expanded .flickity-progress-bar, .expanded .content {
    opacity: 0;
    visibility: hidden;
}
.progress {
    position: absolute;
    left: 0;
    height: 5px;
    background-color: var(--color-black);
    width: 100%;
    transform-origin: left;
}
@media(min-width: 1200px) {
    .flickity-progress-bar {
        height: 5px;
    }
}
/* VIDEO & MODAL */
.videoFallback {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: var(--color-black);
    z-index: 0;
}
.video {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--color-black);
}
.video iframe {
    position: absolute;
    width: 100vw !important;
    min-height: 100% !important;
    min-width: 100% !important;
    height: auto !important;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0 !important;
    padding: 0 !important;
    display: block;
    pointer-events: none;
}
.btn-modal {
    position: absolute;
    bottom: 15px;
    right: 15px;
    width: 32px;
    height: auto;
    display: inline-block;
    margin: 0;
    padding: 0;
    border: none !important;
    box-shadow: none !important;
    background: transparent;
}
.btn-modal #screen {
    transform-origin: center center;
    transition: transform .4s ease-in;
}
.btn-modal:hover #screen {
    transform: scale(1.3);
}
@media(min-width: 1200px) {
    .btn-modal {
        bottom: 30px;
        right: 30px;
    }
}
/* CUSTOM VIDEO CONTROLS */
.customControls {
    position: absolute;
    bottom: 0;
    left: calc(var(--vs-gutter-x)* .5);
    width: calc(100% - var(--vs-gutter-x));
    height: auto;
    cursor: pointer;
    -webkit-transform: translateY(20vh);
        -ms-transform: translateY(20vh);
            transform: translateY(20vh);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .7s, visibility .7s, -webkit-transform .7s;
    transition: opacity .7s, visibility .7s, -webkit-transform .7s;
    -o-transition: opacity .7s, visibility .7s, transform .7s;
    transition: opacity .7s, visibility .7s, transform .7s;
    transition: opacity .7s, visibility .7s, transform .7s, -webkit-transform .7s;
    -webkit-transition-timing-function: ease-in-out;
         -o-transition-timing-function: ease-in-out;
            transition-timing-function: ease-in-out;
}
.expanded .customControls.active {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    visibility: visible;
    z-index: 1;
}
/* .is-safari .expanded .customControls.active {
    -webkit-transform: translateY(-150%);
        -ms-transform: translateY(-150%);
            transform: translateY(-150%);
} */
/* @media (min-width: 744px) {
    .video-container {
        max-height: 1010px;
    }
} */
@media(min-width: 1200px) {
    .expanded .customControls {
        -webkit-transform: translateY(20vh);
            -ms-transform: translateY(20vh);
                transform: translateY(20vh);
        opacity: 0;
        visibility: hidden;
    }
    .expanded .customControls.active {
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0);
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 1s, visibility 1s, -webkit-transform 1s;
        transition: opacity 1s, visibility 1s, -webkit-transform 1s;
        -o-transition: opacity 1s, visibility 1s, transform 1s;
        transition: opacity 1s, visibility 1s, transform 1s;
        transition: opacity 1s, visibility 1s, transform 1s, -webkit-transform 1s;
        -webkit-transition-timing-function: ease-in-out;
             -o-transition-timing-function: ease-in-out;
                transition-timing-function: ease-in-out;
    }
}
/* video seeker */
.customControls .video-track {
    position: relative;
    width: 100%;
    height: 21px;
}
.customControls .video-track-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--color-white);
    /* -webkit-transition: width 0.5s linear;
    -o-transition: width 0.5s linear;
    transition: width 0.5s linear; */
}
.customControls .video-seeker {
    position: absolute;
    top: 10px;
    background: var(--color-dgray);
    width: 100%;
    height: 1px;
}
.customControls .play_head {
    position: absolute;
    width: 8px;
    height: 8px;
    background: var(--color-white);
    border-radius: 50%;
    top: -4px;
    left: 100%;
}
/* .customControls .play_time {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    font-size: 20px;
    color: var(--color-white);
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transform: translate(-50%, -100%);
        -ms-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
} */
/* video seeker */
/* video buttons */
.video-container .customControls .btn-play {
    position: relative;
    /* margin-left: 50%; */
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    display: inline-block;
    width: 22px;
    height: 22px;
    padding: 0;
    border: none !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 47'%3E%3Crect width='4' height='47' style='fill:%23ffffff;'/%3E%3Crect x='12' width='4' height='47' style='fill:%23ffffff;'/%3E%3C/svg%3E") no-repeat center / 100%;
    background-size: contain;
    outline: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}
.video-container .btn-play.paused {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 86.6'%3E%3Cpolygon points='75 43.3 0 0 0 86.6 75 43.3' style='fill:%23ffffff;'/%3E%3C/svg%3E") no-repeat center / 100%;
    background-size: contain;
}
.video-container .btn-mute {
    width: 40px;
    height: 40px;
    /* height: auto; */
    -webkit-transform: translateY(0vh);
    -ms-transform: translateY(0vh);
    transform: translateY(0vh);
    opacity: 1;
    padding: 0.3rem;
    visibility: visible;
    background: transparent;
    border: 1px solid rgb(255, 255, 255, 0.3);
    border-radius: 50%;
    /* background: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M17.5648 1.02072L16.7629 0.21875L11.9662 5.01543V1.01092L6.31863 5.51233H2.02722L2.02448 9.11471L2.02707 9.1173V12.517H4.46463L0 16.9816L0.802821 17.7844L6.06943 12.5178H6.08804L7.0025 11.6023L6.99249 11.5939L10.8338 7.75258V7.77112L11.9679 6.63708V6.61853L17.5648 1.02072ZM6.71728 6.64637L10.8338 3.3642V5.71266L10.8345 6.14876L5.59951 11.3838H3.16279V6.64637H6.71728Z" fill="white"/%3E%3Cpath d="M12.6449 17.8729L12.6459 7.52691L11.4686 8.70282V12.2355L11.4677 13.0127V15.4533L7.68619 12.4853L6.84713 13.3244L12.6449 17.8729Z" fill="white"/%3E%3C/svg%3E') no-repeat center;
    background-size: contain; */
    transition: backdrop-filter 0.3s ease-in-out;
}
/* .video-container .btn-mute.active {
    background: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="11" height="17" viewBox="0 0 11 17" fill="none"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M9.96614 3.99164V0.0117188L4.31857 4.51313H0.0271575L0.0244141 8.11552L0.0270054 8.11811V11.5178H2.43999L3.57318 10.3846H1.16273V5.64717H4.71722L8.83378 2.36499V4.71346L8.83445 5.12333L9.96614 3.99164ZM10.6458 6.52771L10.6448 16.8737L4.84707 12.3252L5.68613 11.4861L9.46766 14.4541V12.0135L9.46855 11.2363V7.70362L10.6458 6.52771Z" fill="white"/%3E%3C/svg%3E') no-repeat center;
    background-size: contain;
} */
.video-container .btn-mute:hover {
    backdrop-filter: blur(4px);
}
.video-container .customControls .inner-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 744px) {
    .video-container .customControls .btn-play {
        width: 30px;
        height: 30px;
    }
    .video-container .btn-mute {
        width: 50px;
        height: 50px;
        padding: 0.6rem;
    }
}
@media(min-width: 1200px) {
    .video-container .customControls .btn-play {
        width: 46px;
        height: 46px;
    }
    .video-container .btn-mute {
        width: 60px;
        height: 60px;
        padding: 1rem;
    }
}
.customControls .inner-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.videoButtons {
    -webkit-transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
}
.expanded .videoButtons {
    opacity: 0;
    visibility: hidden;
}
.video_wrapper .videoClose {
    position: absolute;
    top: 20px;
    right: 20px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .5s, visibility .5s;
    -o-transition: opacity .5s, visibility .5s;
    transition: opacity .5s, visibility .5s;
    -webkit-transition-timing-function: cubic-bezier(0,.5,.5,1);
         -o-transition-timing-function: cubic-bezier(0,.5,.5,1);
            transition-timing-function: cubic-bezier(0,.5,.5,1);
}
@media(max-width: 1199px) {
    .video_wrapper.expanded .videoClose {
        opacity: 1;
        visibility: visible;
    }
}
.video iframe {
    position: absolute;
    width: 100vw !important;
    min-height: 100% !important;
    min-width: 100% !important;
    height: auto !important;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    margin: 0 !important;
    padding: 0 !important;
    display: block;
    pointer-events: none;
}
/* END FLICKITY */


/* HERO SLIDER FADE */
.layout-vslider .flickity-slider {
    transform: none !important;
}
.layout-vslider .vcarousel-cell {
    left: 0 !important;
    transform: translate(0, 0) !important;
    opacity: 0!important;
    visibility: hidden!important;
    transition: opacity .3s ease-in-out;
}
.layout-vslider .vcarousel-cell.is-selected {
    opacity: 1!important;
    visibility: visible!important;
}
.video_wrapper:has(.customControls) .overlay {
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
}
.video_wrapper:has(.customControls.active) .overlay {
    opacity: 1;
    visibility: visible;
}