


/* banner */
.swiper-pagination-bullet {
    width: 68px;
    height: 4px;
    border-radius: 6px;
    background: #fff}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 48px;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 10px;
}

.swiper-pagination-bullet-active {
    background: #fff
}




@media(min-width:1025px) {
    .indMore:hover span {
        color: #158bda;
    }

    .indMore:hover i {
        border-color: #158bda;
        /*margin-left: 21px;*/
    }
    /*.indMorea:hover span{*/
        /*padding-left: 35px;*/
     /*}*/

    .indMore:hover path {
        fill: #158bda !important;
    }
}

.pepMore {
    display: inline-block;
    border-radius: 38px;
    border: 1px solid #333;
    text-transform: uppercase;
    font-size: 13px;
    line-height: 1;
    padding: 10px 15px;
    letter-spacing: 1px;
    margin-top: 35px;
    font-weight: 300;
    transition: all 0.48s;
}

.pepMore.white {
    border-color: #fff;
    color: #fff;
}

.pepMore.hover,
.pepMore:hover {
    border-color: #1b4588;
    background: #1b4588;
    color: #fff;

}

/*  */
.pepPage {
    margin-top: 68px;
    text-align: center;
}

.pepPage a {
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 38px;
    padding: 10px 28px;
    line-height: 1;
    margin: 0 5px;
    text-transform: uppercase;
}

.pepPage a:hover,
.pepPage a.on {
    border-color: #1b4588;
    color: #fff;
    background: #1b4588;

}




/* banner */
.banner {
    position: relative;
    width: 100%;
    height:85vh;
}

.banImg {
    position: relative;
    width: 100%;
    height:85vh;
}

.banImg::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #1c2e41;
    /* background: #3f428e; */
    opacity: 0.1;
}

.banImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}

.banTxt {
    position: absolute;
    top: 34%;
    left: 7%; width:45%;
}

.banTxt .pepMore {
    border-color: #fff;
    color: #fff;
    background: transparent;
}

.banTxt>span {
    display: block;
    font-weight: bold;
    text-transform: capitalize;
    color: #fff;
    font-size: 34px;
    line-height: 1.2;
    letter-spacing: 0px;
    text-shadow: 0 0px 0px #333; font-family:; margin-top:10px;
}
@font-face {
	font-family:Helvetica-Neue-2;
	src: url('../fonts/Helvetica-Neue-2.ttf'); }




.banTxt>p {
color:#fff; font-family:; text-transform:uppercase; font-size:20px;
    text-shadow: 0 0px 0px #000;

}

.banner .swiper-wrapper {
    transition: 2s cubic-bezier(0.68, -0.4, 0.27, 1.34) 0.2s;
}

.swiper-slide-active .banTxt {
    -webkit-transition-timing-function: cubic-bezier(0.6, 4, 0.3, 0.8);
    transition-timing-function: cubic-bezier(0.6, 4, 0.3, 0.8);
    -webkit-animation: fadeInRightBig 1.2s 1s 1;
    animation: fadeInRightBig 1.2s 1s 1;
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(300px);
        transform: translateX(300px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(300px);
        transform: translateX(300px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.scroll {
    padding-bottom: 160px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 50px;
    z-index: 100;
}

.scroll span.txt {
    display: block;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.01em;
    transform: rotate(90deg);
    margin-top: 1em;
    margin-left: 0.5em;
}

.scroll span.line {
    display: block;
    width: 1px;
    height: 140px;
    background-color: #729295;
    position: absolute;
    left: 50%;
    bottom: 0;
    overflow: hidden;
}

.scroll span.line::before {
    content: "";
    display: block;
    width: 1px;
    height: 120px;
    background-color: #fff;
    position: relative;
    animation-name: scrollLine;
    animation-duration: 3s;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
}

@keyframes scrollLine {
    0% {
        top: -100%;
    }

    50% {
        top: 0;
    }

    100% {
        top: 100%;
    }
}

/* 手机端 Banner */
@media screen and (max-width: 812px) {
    .banner.banner-mobile,
    .banner.banner-mobile .swiper-container {
        width: 100% !important;
        height: 50vh !important;
        min-height: 300px !important;
        max-height: 420px !important;
        overflow: hidden !important;
        position: relative !important;
        background: transparent;
    }

    .banner.banner-mobile .swiper-wrapper {
        transform: none !important;
        -webkit-transform: none !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        position: relative !important;
    }

    .banner.banner-mobile .swiper-slide {
        width: 100% !important;
        height: 100% !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        opacity: 0;
        visibility: hidden;
        z-index: 1;
        transition: opacity 0.9s ease-in-out;
        -webkit-transition: opacity 0.9s ease-in-out;
        pointer-events: none;
    }

    .banner.banner-mobile .swiper-slide.is-active {
        opacity: 1;
        visibility: visible;
        z-index: 2;
        pointer-events: auto;
    }

    .banner.banner-mobile .banImg {
        position: relative !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 300px !important;
        overflow: hidden !important;
        background: transparent;
    }

    .banner.banner-mobile .banImg img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
        z-index: 0;
        opacity: 1;
    }

    /* 第一张：优先展示左侧文字，右侧配图可裁切 */
    .banner.banner-mobile .swiper-slide:first-child .banImg img {
        object-position: left 42% !important;
    }

    .banner.banner-mobile .swiper-slide:first-child .banImg::after {
        display: none;
    }

    .banner.banner-mobile .swiper-slide:first-child .banImg.mb-anim img {
        transform-origin: left center;
        animation: mbBanImgInLeft 1.2s cubic-bezier(0.68, -0.4, 0.27, 1.34) both;
        -webkit-animation: mbBanImgInLeft 1.2s cubic-bezier(0.68, -0.4, 0.27, 1.34) both;
    }

    @keyframes mbBanImgInLeft {
        0% {
            transform: scale(1.03);
        }
        100% {
            transform: scale(1);
        }
    }

    @-webkit-keyframes mbBanImgInLeft {
        0% {
            -webkit-transform: scale(1.03);
            transform: scale(1.03);
        }
        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    .banner.banner-mobile .banImg::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 60%;
        background: linear-gradient(to top, rgba(28, 46, 65, 0.9) 0%, rgba(28, 46, 65, 0.3) 70%, transparent 100%);
        z-index: 1;
        pointer-events: none;
    }

    .banner.banner-mobile .swiper-slide-active .banTxt:not(.mb-anim) {
        animation: none !important;
        -webkit-animation: none !important;
    }

    .banner.banner-mobile .banTxt {
        position: absolute !important;
        top: auto !important;
        bottom: 40px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        padding: 0 16px !important;
        box-sizing: border-box;
        z-index: 3;
        opacity: 0;
        visibility: hidden;
        transform: translateX(100px);
        -webkit-transform: translateX(100px);
        pointer-events: none;
    }

    .banner.banner-mobile .banTxt[style*="display: none"] {
        display: none !important;
    }

    .banner.banner-mobile .banImg.mb-anim img {
        animation: mbBanImgIn 1.2s cubic-bezier(0.68, -0.4, 0.27, 1.34) both;
        -webkit-animation: mbBanImgIn 1.2s cubic-bezier(0.68, -0.4, 0.27, 1.34) both;
    }

    .banner.banner-mobile .swiper-slide-active .banTxt.mb-anim,
    .banner.banner-mobile .banTxt.mb-anim {
        visibility: visible;
        pointer-events: auto;
        animation: fadeInRightBigMb 1.2s 0.5s cubic-bezier(0.6, 4, 0.3, 0.8) forwards;
        -webkit-animation: fadeInRightBigMb 1.2s 0.5s cubic-bezier(0.6, 4, 0.3, 0.8) forwards;
    }

    .banner.banner-mobile .banTxt.mb-show {
        opacity: 1;
        visibility: visible;
        transform: translateX(0);
        -webkit-transform: translateX(0);
    }

    @keyframes mbBanImgIn {
        0% {
            transform: scale(1.03);
        }
        100% {
            transform: scale(1);
        }
    }

    @-webkit-keyframes mbBanImgIn {
        0% {
            -webkit-transform: scale(1.03);
            transform: scale(1.03);
        }
        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }

    @keyframes fadeInRightBigMb {
        0% {
            opacity: 0;
            transform: translateX(100px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        }
    }

    @-webkit-keyframes fadeInRightBigMb {
        0% {
            opacity: 0;
            -webkit-transform: translateX(100px);
            transform: translateX(100px);
        }
        100% {
            opacity: 1;
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }
    }

    .banner.banner-mobile .banTxt span {
        font-size: 17px !important;
        line-height: 1.45 !important;
        display: block;
        word-break: break-word;
        white-space: normal;
        color: #fff;
        font-weight: bold;
    }

    .banner.banner-mobile .banTxt span:first-of-type {
        font-size: 19px !important;
    }

    .banner.banner-mobile .banTxt p {
        font-size: 13px !important;
        line-height: 1.5 !important;
        color: #fff;
        margin-top: 8px;
    }

    .banner.banner-mobile .banTxt .pepMore {
        font-size: 12px;
        padding: 8px 18px;
        margin-top: 10px;
        display: inline-block;
        border-color: #fff;
        color: #fff;
    }

    .banner.banner-mobile .scroll {
        display: none !important;
    }

    .banner.banner-mobile .swiper-pagination {
        position: absolute !important;
        bottom: 10px !important;
        left: 0 !important;
        width: 100% !important;
        z-index: 5;
    }

    .banner.banner-mobile .swiper-pagination-bullet {
        width: 28px !important;
        height: 3px !important;
        margin: 0 4px !important;
        cursor: pointer;
    }
}

@media screen and (max-width: 480px) {
    .banner.banner-mobile,
    .banner.banner-mobile .swiper-container,
    .banner.banner-mobile .banImg {
        height: 46vh !important;
        min-height: 260px !important;
        max-height: 380px !important;
    }

    .banner.banner-mobile .banTxt {
        bottom: 32px !important;
    }

    .banner.banner-mobile .banTxt span {
        font-size: 15px !important;
    }

    .banner.banner-mobile .banTxt span:first-of-type {
        font-size: 16px !important;
    }

    .banner.banner-mobile .swiper-slide:first-child .banImg img {
        object-position: left 38% !important;
    }
}
