._animatedBackground_1tpnf_1 {
    position: relative
}

._animatedBackground_1tpnf_1:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #fff;
    transition: transform .4s cubic-bezier(.4, 0, .1, 1);
    transform: scaleX(0);
    transform-origin: right
}

@media (hover: hover) and (pointer: fine) {
    ._animatedBackground_1tpnf_1:hover:before {
        transform: scaleX(1);
        transform-origin: left
    }
}

._heroHomeWrapper_1tpnf_23 {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 100vh;
    padding: 120px 0 0;
    overflow: hidden
}

@media (min-width: 48em) {
    ._heroHomeWrapper_1tpnf_23 {
        height: 100vh
    }
}

@media (min-width: 64em) {
    ._heroHomeWrapper_1tpnf_23 {
        height: auto;
        padding: calc(162px + var(--banner-height)) 0 0
    }
}

@media (min-width: 105em) {
    ._heroHomeWrapper_1tpnf_23 {
        padding: calc(202px + var(--banner-height)) 0 0
    }
}

._topContentWrapper_1tpnf_48 {
    position: relative;
    z-index: 1;
    margin-bottom: 43px
}

@media (min-width: 64em) {
    ._topContentWrapper_1tpnf_48 {
        display: flex;
        justify-content: space-between;
        height: -moz-fit-content;
        height: fit-content;
        margin-bottom: 36px
    }
}

._title_1tpnf_62 {
    max-width: 500px;
    margin-bottom: 24px;
    font-size: 2.625rem;
    line-height: 1;
    letter-spacing: -.02em
}

@media (min-width: 48em) {
    ._title_1tpnf_62 {
        max-width: 550px;
        font-size: 3.25rem
    }
}

@media (min-width: 64em) {
    ._title_1tpnf_62 {
        max-width: 500px;
        margin-bottom: 0;
        font-size: 4.5rem
    }
}

@media (min-width: 80em) {
    ._title_1tpnf_62 {
        max-width: 750px;
        font-size: 5.625rem
    }
}

._description_1tpnf_89 {
    max-width: 400px;
    font-size: 1.25rem;
    line-height: 1.8;
    color: #ffffffd9
}

@media (min-width: 48em) {
    ._description_1tpnf_89 {
        max-width: 500px;
        font-size: 1.125rem
    }
}

@media (min-width: 64em) {
    ._description_1tpnf_89 {
        max-width: 500px;
        margin-top: 55px;
        font-size: .9375rem
    }
}

@media (min-width: 105em) {
    ._description_1tpnf_89 {
        max-width: 620px;
        font-size: 1.125rem
    }
}

._backgroundWrapper_1tpnf_115 {
    position: relative;
    width: 100%;
    height: -moz-fit-content;
    height: fit-content;
    aspect-ratio: 1680/1008
}

._backgroundWrapper_1tpnf_115:after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 80%;
    pointer-events: none;
    content: "";
    background: linear-gradient(0deg, #0e0e0e00, #0e0e0ecc 90%)
}

@media (min-width: 64em) {
    ._backgroundWrapper_1tpnf_115:after {
        height: 20%;
        background: linear-gradient(0deg, #0e0e0e00, #0e0e0e 70%)
    }
}

._backgroundWrapper_1tpnf_115 video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 63.99em) {
    ._backgroundWrapper_1tpnf_115 video {
        margin-left: 50%;
        transform: translate3d(-50%, 0, 0)
    }
}

@media (min-width: 64em) {
    ._backgroundWrapper_1tpnf_115 video {
        width: 100%;
        margin: 0 auto
    }
}

@media (min-width: 105em) {
    ._backgroundWrapper_1tpnf_115 video {
        width: 90%
    }
}

@media (min-width: 120em) {
    ._backgroundWrapper_1tpnf_115 video {
        width: 100%
    }
}

._backgroundWrapper_1tpnf_115 ._hidden_1tpnf_168 {
    pointer-events: none;
    opacity: 0
}

._backgroundWrapper_1tpnf_115 ._loopingVideo_1tpnf_172 {
    opacity: 0
}

._backgroundWrapper_1tpnf_115 ._visible_1tpnf_175 {
    opacity: 1
}

._fullDivWrapper_1tpnf_179 {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100vh;
    pointer-events: none;
    transform: translate3d(-50%, 0, 0)
}

@media (min-width: 64em) {
    ._fullDivWrapper_1tpnf_179 {
        width: 100%
/*            min(1680px, 100% - 88px)*/
    }
}

@media (min-width: 105em) {
    ._fullDivWrapper_1tpnf_179 {
        width: 100%
/*        min(1680px, 100% - 176px)*/
    }
}

._scrollDownBtnWrapper_1tpnf_202 {
    position: relative;
    padding: 30px 0;
    pointer-events: all;
    border-top: 1px solid #323232
}

@media (min-width: 48em) {
    ._scrollDownBtnWrapper_1tpnf_202 {
        width: 100%;
        padding: 40px 0
    }
}

@media (min-width: 64em) {
    ._scrollDownBtnWrapper_1tpnf_202 {
        width: 100%;
        padding: 20px 0
    }
}

@media (min-width: 80em) {
    ._scrollDownBtnWrapper_1tpnf_202 {
        padding: 30px 0
    }
}

@media (min-width: 105em) {
    ._scrollDownBtnWrapper_1tpnf_202 {
        padding: 40px 0
    }
}

@media (min-width: 120em) {
    ._scrollDownBtnWrapper_1tpnf_202 {
        padding: 67px 0
    }
}

._scrollDownBtn_1tpnf_202 {
    position: relative
}

@media (min-width: 64em) {
    ._scrollDownBtn_1tpnf_202 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 94%;
        padding-left:20px;
    }
}

._scrollDownBtn_1tpnf_202 span {
    display: none
}

@media (min-width: 64em) {
    ._scrollDownBtn_1tpnf_202 span {
        display: block;
        margin-right: 85px;
        font-size: .75rem;
        line-height: 1.2;
        text-transform: uppercase
    }
}

._arrowWrapper_1tpnf_260 {
    position: relative;
    width: 22px;
    height: 22px;
    overflow: hidden
}

._arrowWrapper_1tpnf_260 svg {
    position: relative;
    display: block;
    width: 22px;
    height: 22px;
    color: #fff;
    transform: rotate(135deg)
}

._innerArrowWrapper_1tpnf_275 {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    justify-content: center;
    width: 100%;
    transition: transform .5s cubic-bezier(.4, 0, .1, 1);
    transform: translate3d(0, -32px, 0)
}

@media (hover: hover) and (pointer: fine) {
    ._innerArrowWrapper_1tpnf_275:hover {
        transform: translateZ(0)
    }
}