.hima-home-banner {
    background-color: #0e0d1c
}

.hima-home-banner .home-banner-wrap {
    width: 100%;
    height: 100vh;
    height: 100svh
}

.hima-home-banner .banner-swiper {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.hima-home-banner .banner-swiper.dark {
    --theme-font-color: #000;
    --theme-background-color: #000
}

.hima-home-banner .banner-list {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
    transform: translate3d(0px, 0px, 0px)
}

.hima-home-banner .banner-item {
    position: relative;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.hima-home-banner .banner-media,
.hima-home-banner .banner-picture {
    width: 100%;
    height: 100%
}

.hima-home-banner .banner-img,
.hima-home-banner .video-error-img,
.hima-home-banner .banner-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.hima-home-banner .video-error-img {
    display: none
}

.hima-home-banner.is-special-browser .video-error-img {
    display: block
}

.hima-home-banner.is-special-browser .banner-video,
.hima-home-banner.is-special-browser .video-mask {
    display: none
}

.hima-home-banner .video-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .2);
    transform: translateZ(0)
}

.hima-home-banner .banner-content {
    position: absolute;
    width: 100%;
    max-width: 680px;
    top: 160px;
    left: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    transform: translateX(-50%) translateZ(0)
}

.hima-home-banner .headline {
    text-align: center;
    font-size: 48px;
    line-height: 125%;
    font-weight: 400;
    color: var(--theme-font-color, #fff)
}

.hima-home-banner .intro {
    margin-top: 24px;
    font-size: 20px;
    line-height: 125%;
    font-weight: 400;
    letter-spacing: var(--custom-intro-ls);
    text-align: center;
    text-indent: var(--custom-intro-ls);
    color: var(--theme-font-color, #fff)
}

.hima-home-banner .banner-btn-group {
    margin-top: 32px
}

.hima-home-banner .banner-pagination {
    position: absolute;
    left: 0;
    bottom: 48px;
    width: 100%;
    z-index: 1;
    display: flex;
    justify-content: center
}

.hima-home-banner .banner-pagination.is-animated .progress-headline {
    opacity: 0;
    transform: translateY(8px)
}

.hima-home-banner .progress-container {
    margin: 0 10px
}

.hima-home-banner .progress-container.is-active .progress-headline {
    color: var(--theme-font-color, #fff)
}

.hima-home-banner .progress-container.is-active .progress-line {
    opacity: 1;
    transition-duration: .3s
}

@media (any-hover: hover) and (pointer: fine) {
    .hima-home-banner .progress-container:hover .progress-headline {
        opacity: 1;
        color: #fff;
        transform: translateY(0)
    }
}

.hima-home-banner .progress-headline {
    width: 79px;
    margin: 8px 0;
    color: var(--theme-font-color, #535760);
    font-size: 12px;
    line-height: 125%;
    white-space: pre;
    text-align: center;
    transition: all .3s ease;
    cursor: pointer
}

.hima-home-banner .progress-animation {
    position: relative;
    width: 79px;
    height: 2px;
    background-color: #535760
}

.hima-home-banner .progress-line {
    margin-top: -2px;
    height: 100%;
    opacity: 0;
    width: 100%;
    transform: scaleX(var(--progress-line, 0));
    transition-timing-function: linear;
    transition-property: transform;
    transition-duration: 0s;
    background-color: #fff;
    transform-origin: left
}

.hima-home-banner .hot-spot {
    position: absolute;
    left: 0;
    top: 0;
    cursor: pointer;
    position: absolute;
    left: 0;
    width: 100%;
    top: -9px;
    height: 20px
}

@media screen and (max-width: 1440.98px) {
    .hima-home-banner .headline {
        font-size: 40px
    }

    .hima-home-banner .intro {
        margin-top: 20px;
        font-size: 18px
    }

    .hima-home-banner .banner-btn-group {
        margin-top: 28px
    }
}

@media screen and (max-width: 1079.98px) {
    .hima-home-banner .banner-content {
        top: 108px;
        padding: 0 40px
    }

    .hima-home-banner .headline {
        font-size: 40px
    }

    .hima-home-banner .intro {
        margin-top: 20px;
        font-size: 18px;
        letter-spacing: var(--custom-intro-ls-pad, var(--custom-intro-ls));
        text-indent: var(--custom-intro-ls-pad, var(--custom-intro-ls))
    }

    .hima-home-banner .banner-btn-group {
        margin-top: 28px
    }

    .hima-home-banner .banner-pagination {
        bottom: 32px
    }

    .hima-home-banner .progress-container {
        margin: 0 6px
    }

    .hima-home-banner .progress-container.is-active .progress-headline,
    .hima-home-banner .progress-container.is-active .progress-animation {
        width: 40px
    }

    .hima-home-banner .progress-headline {
        display: none
    }

    .hima-home-banner .progress-animation {
        width: 24px;
        height: 2px;
        transition: all .5s ease-in-out
    }
}

@media screen and (max-width: 767.98px) {
    .hima-home-banner .banner-content {
        padding: 0 24px
    }

    .hima-home-banner .headline {
        font-size: 32px
    }

    .hima-home-banner .intro {
        font-size: 16px;
        margin-top: 16px;
        letter-spacing: var(--custom-intro-ls-mob, var(--custom-intro-ls));
        text-indent: var(--custom-intro-ls-mob, var(--custom-intro-ls))
    }

    .hima-home-banner .banner-btn-group {
        margin-top: 24px
    }

    .hima-home-banner .banner-pagination {
        bottom: 24px
    }

    .hima-home-banner .progress-container {
        margin: 0 4px
    }

    .hima-home-banner .progress-container.is-active .progress-headline,
    .hima-home-banner .progress-container.is-active .progress-animation {
        width: 32px
    }

    .hima-home-banner .progress-headline {
        display: none
    }

    .hima-home-banner .progress-animation {
        width: 16px;
        height: 2px;
        transition: all .5s ease-in-out
    }
}