@charset "utf-8";

/* 滚动条样式 */
@media screen and (min-width:1025px) {
    body::-webkit-scrollbar {
        width: 0;
        height: 0;
    }

    body::-webkit-scrollbar-track {
        width: 0;
        background: rgba(0, 0, 0, 0);
        -webkit-border-radius: 2em;
        -moz-border-radius: 2em;
        border-radius: 2em;
    }

    body::-webkit-scrollbar-thumb {
        background-color: #D0B27E;
        background-clip: padding-box;
        min-height: 28px;
        -webkit-border-radius: 2em;
        -moz-border-radius: 2em;
        border-radius: 2em;
    }

    body::-webkit-scrollbar-thumb:hover {
        background-color: #ef9e12
    }


}

body {
    background: #054db2;
}

.gradient-stroke {
    font-size: 60px;
    font-weight: bold;
    position: relative;
    color: transparent;
    /* 主文字透明 */
}

/* 第一层：渐变边框（放大一层做描边） */
.gradient-stroke::before {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
    /* 渐变背景 */
    background: linear-gradient(90deg, #ff0080, #00bfff, #ff0080);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-stroke: 3px transparent;
    /* 边框宽度 */
    z-index: 1;
}

/* 第二层：白色文字填充（盖住中间，只留边框） */
.gradient-stroke::after {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    /* 中间文字颜色 */
    z-index: 2;
}


.banner.ani #downPage {
    opacity: 1;
}


.welcome {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 99999;
    /* display: none; */
    opacity: 0;
}

.welcome.hide {
    pointer-events: none;
}

.welcome .bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: url(../images/welcome-bg.png) no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: -1;
}

.welcome-c {
    text-align: center;
    transform: translateY(2rem);
    opacity: 0;
    transition: all 1s;
    width: 100%;
    padding: 0 .15rem;
}

.welcome-c.show {
    transform: translateY(0);
    opacity: 1;
}

.welcome-c h1 {
    font-family: PangMenZhengDao;
    font-size: 0.8rem;
    font-weight: normal;
    line-height: .8rem;
    color: #ffffff;
}

.welcome-c div {
    width: 8.13rem;
    height: 2px;
    background: linear-gradient(0deg, #054fb9 1%, #105ece 26%, #1a6ce2 51%, #054fb9 100%);
    position: relative;
    margin: .35rem auto;
    border-radius: 50%;
    max-width: 90%;
}

.welcome-c div b {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    bottom: 0;
    background: url(../images/welcome-gx.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 3.9rem;
    height: 1.73rem;

    animation: welcomeMove 3.5s linear infinite;
}

.welcome-c h3 {
    font-family: PangMenZhengDao;
    font-size: 0.18rem;
    font-weight: normal;
    font-stretch: normal;
    letter-spacing: 0.1rem;
    color: #ffffff;
    line-height: .2rem;
}
.i_entiti {
    /* letter-spacing: 0.07rem !important; */
}
.welcome-t {
    opacity: 1;
    clip-path: inset(0 0 49% 0);
    transition: all 1.2s cubic-bezier(0.2, 0.6, 0.75, 0.98);
}

.welcome-t.hide {
    clip-path: inset(0 0 100% 0);
}

.welcome-b {
    opacity: 1;
    clip-path: inset(49% 0 0 0);
    transition: all 1.2s cubic-bezier(0.2, 0.6, 0.75, 0.98);
}

.welcome-b.hide {
    clip-path: inset(100% 0 0 0);
}

/* .welcome-c div b 动画，持续从父级.welcome-c div的左侧移动到右侧，开始位置要再左侧0 - 自身的宽度,透明度开始时为0，结束位置要再右侧0 + 自身的宽度，透明度结束时为0，中间20%-80%为1,速度匀速，是个循环动画，循环次数无限次，每次间隔1.5秒,动画完成后，重置位置为左侧 */
@keyframes welcomeMove {
    0% {
        left: 0;
        transform: translateX(-50%) translateY(-50%);
        opacity: 0;
    }

    15% {
        opacity: 1;
    }

    25% {
        opacity: .7;
    }

    35% {
        opacity: .9;
    }

    45% {
        opacity: .7;
    }

    55% {
        opacity: .85;
    }

    65% {
        opacity: .75;
    }

    75% {
        opacity: 1;
    }

    90% {
        left: 100%;
        transform: translateX(-50%) translateY(-50%);
        opacity: 0;
    }

    100% {
        left: 0;
        transform: translateX(-50%) translateY(-50%);
        opacity: 0;
    }
}

.banner {
    position: relative;
    z-index: 999;
    left: 0;
    top: 0;
    /* width: 100%;
    height: 100vh; */
}

.banner a {
    display: block;
}

.banner>img {
    display: block;
    width: 100%;
}

.banner .slick {
    position: relative;
    z-index: 9;
}

.banner-more {
    font-size: .18rem;
    color: #fff;
    padding-left: .15rem;
}

.banner .slick-slide a {
    display: block;
    position: relative;
}

.banner .slick-slide a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.9;
    height: 1.86rem;
    background: linear-gradient(180deg, rgba(2, 12, 37, 0) 0%, rgba(2, 12, 37, 0.5) 100%);
}

.banner .slick-slide a>img,
.banner .slick-slide a>video {
    display: block;
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

.banner .slick-slide a .item-des {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%) !important;
    max-width: 100%;
    z-index: 9;
}

.banner .slick-slide a .item-des img {
    max-width: 90vw;
    display: block;
    width: 12.11rem;
    margin:0 auto;
}

.banner .slick-slide a p {
    position: absolute;
    left: 1.6rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    bottom: .35rem;
    font-size: 0.3rem;
    font-weight: normal;
    line-height: 0.35rem;
    letter-spacing: 0rem;
    color: #ffffff;
    z-index: 9;
    /* width: 0; */
    right: 6.6rem;
}

.banner .slick-slide.slick-current a>img {
    animation: img_scale linear 8s;
}

.banner .slick-slide.slick-current a p {
    /* width: calc(50% - 1.6rem); */
    transition: all 5s;
}

@keyframes img_scale {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }

}

.banner .slick .slick-dots {
    position: absolute;
    left: 50%;
    bottom: 0.25rem;
    z-index: 9;
    width: auto;
    transform: translateX(-50%);
}


.banner .slick .slick-dots li {
    display: none;
    width: auto;
    height: auto;
}

.banner .slick .slick-dots li div {
    display: flex;
    align-items: flex-end;
}

.banner .slick .slick-dots li div span {
    font-size: 0.36rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.3rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.banner .slick .slick-dots li div i {
    height: 0.34rem;
    border-left: solid 1px #fff;
    margin: 0 .05rem;
    transform: rotateZ(20deg);
    margin-bottom: -.05rem;
}

.banner .slick .slick-dots li div b {
    font-size: 0.18rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.2rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.banner .slick .slick-dots li.slick-active {
    display: block;
}

.b-btm {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 9;
}

.b-btm .bbtmline1 {
    background: url(../images/colorbck1.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 3.41rem;
    height: 0.35rem;
    position: absolute;
    left: 0;
    bottom: -.2rem;
}

.b-btm .bbtmline2 {
    background: url(../images/colorbck2.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 3.63rem;
    height: 0.35rem;
    position: absolute;
    left: 1.56rem;
    bottom: 0;
}

.b-btm .bbtmline3 {
    background: url(../images/colorbck3.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 5.41rem;
    height: 0.73rem;
    position: absolute;
    right: 0;
    bottom: -.38rem;
}





.tab-bd {
    position: relative;
    /* overflow: hidden; */
}

.tab-bd>div {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    opacity: 0;
    z-index: -9;
    transform: scale(0.6);
    transform: translateY(1rem);
    filter: blur(0.2rem);
    transform-origin: center bottom;
    transition: all .5s;
    pointer-events: none;
}

.tab-bd>div.on {
    position: relative;
    z-index: 9;
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
    transform: scale(1);
    /* transition: all .5s; */
    pointer-events: auto;
}

/* index */
.index {
    position: relative;
    z-index: 99;
    /* padding-top: .5rem; */
    font-size: 0;
    /* position: fixed;
    top: 100%;
    left: 0;
    right: 0;
    bottom: 0; */
    z-index: 99;
    overflow: hidden;
    /* background: linear-gradient(#f2f2f9, #ffffff, #f2f2f9); */
    background: #034eba;
}


.sline {
    margin: 0 auto;
    width: 0.06rem;
}

.sline div {
    height: 1.54rem;
    background-color: #e21f26;
}

.s1 {
    position: relative;
    z-index: 0;
    padding-bottom: 1.04rem;
}

/* s1 底层斜线纹理（原 s1-zzc.png 的等效代码实现，静态无动画） */

.s1::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    z-index: -1;
    background: url(../images/s1-bg.png) repeat-x;
    background-position: center center;
    background-size: 100% 100%;
    width: 19.2rem;
    height: 14.4rem;
    z-index: -1;
    pointer-events: none;
}

.s1-tit {
    text-align: center;
    margin-top: .45rem;
}

.s1-tit h2 {
    font-family: PangMenZhengDao;
    font-size: 0.6rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.75rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.s1-tit div {
    margin-top: .4rem;
}

.s1-tit div h4 {
    font-size: 0.2rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.38rem;
    letter-spacing: 0rem;
    color: #d6d6d6;
}

.s1-c {
    margin-top: 1.1rem;
}

.s1-c ul {
    display: flex;
    border-top: 1px solid #1c68d6;
    border-bottom: 1px solid #1c68d6;
}

.s1-c ul li {
    flex: 1;
    min-width: 0;
}

.s1-c ul li a {
    display: block;
    text-align: center;
    padding: .4rem 0;
    position: relative;
}

.s1-c ul li+li a::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55rem;
    right: 0;
    bottom: .65rem;
    border-left: 1px solid #1c68d6;
}

.s1-c ul li a div {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Impact;
    font-size: 1.1rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 1.1rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.s1-c ul li a div b {
    font-weight: normal;
}

.s1-c ul li a div span {
    font-weight: normal;
}

.s1-c ul li a p {
    font-size: 0.16rem;
    font-weight: normal;
    line-height: 0.38rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.tit {
    display: flex;
    justify-content: center;
    align-items: center;
}

.tit div {}

/* 小标题两侧装饰：还原为原模板的背景图 tit-bef.png */
.tit div.bef {
    background: url(../images/tit-bef.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 0.62rem;
    height: 0.55rem;
}

.tit div.aft {
    background: url(../images/tit-bef.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 0.62rem;
    height: 0.55rem;
}

.tit h2 {
    font-family: PangMenZhengDao;
    font-size: 0.6rem;
    font-weight: normal;
    font-style: italic;
    font-stretch: normal;
    line-height: 0.75rem;
    letter-spacing: 0rem;
    color: #ffffff;
    margin: 0 .15rem;
}


.s2 {
    position: relative;
    padding-top: .4rem;
    padding-bottom: 1.2rem;
}

.s2 .s2-bzm {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    background: url(../images/IVFC.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 19.2rem;
    height: 7.28rem;
    z-index: -1;
    pointer-events: none;
}

.s2-c {
    display: flex;
    margin-top: .6rem;
}

.s2-l {
    flex: 1;
    min-width: 0;
}

.s2-l .slick ul li a {
    display: block;
    position: relative;
    overflow: hidden;
}

.s2-l .slick ul li a .pics {
    position: relative;
}

.s2-l .slick ul li a .pics .pic {
    padding-top: 65%;
}

.s2-l .slick ul li a .pics span {
    font-family: Arial-ItalicMT;
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.24rem;
    letter-spacing: 0rem;
    color: #ffffff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
    padding: 0 .2rem 0 .1rem;
}

.s2-l .slick ul li a .pics span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #e21f26;
    opacity: 0.8;
    transform-origin: left top;
    transform: skewX(-30deg);
    z-index: -1;
}


.s2-l .slick ul li a .info {
    padding-top: .22rem;
}

.s2-l .slick ul li a .info h3 {
    font-size: 0.28rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.38rem;
    letter-spacing: 0rem;
    color: #ffffff;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: .76rem;
}

.s2-l .slick ul li a .info p {
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.26rem;
    letter-spacing: 0rem;
    color: #d6d6d6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: .52rem;
    margin-top: .17rem;
}

.s2-m {
    width: 3.86rem;
    margin-left: .28rem;
}

.s2-m ul {}

.s2-m ul li+li {
    margin-top: .35rem;
}

.s2-m ul li a {
    display: block;
    overflow: hidden;
}

.s2-m ul li a .pics {
    position: relative;
}

.s2-m ul li a .pics .pic {
    padding-top: 65%;
}

.s2-m ul li a .pics span {
    font-family: Arial-ItalicMT;
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.24rem;
    letter-spacing: 0rem;
    color: #ffffff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
    padding: 0 .2rem 0 .1rem;
}

.s2-m ul li a .pics span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #1065f2;
    opacity: 0.9;
    transform-origin: left top;
    transform: skewX(-30deg);
    z-index: -1;
}

.s2-m ul li a .info {
    padding-top: .2rem;
}

.s2-m ul li a .info h3 {
    font-size: 0.22rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.3rem;
    letter-spacing: 0rem;
    color: #ffffff;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: .6rem;
}

.s2-r {
    width: 3.87rem;
    margin-left: .5rem;
    position: relative;
}

.s2-r::before {
    content: "";
    position: absolute;
    left: -.28rem;
    top: 0;
    bottom: 0.2rem;
    width: 1px;
    background: #1c68d6;
}

.s2-r ul {
    background-color: rgba(13, 86, 189, .5);
    border-radius: 0.05rem;
    border: solid 1px #1c68d6;
    box-shadow: inset 0 0 0.1rem rgba(31, 107, 214, .42);
}

.s2-r ul li {
    padding: 0 .17rem;
}

.s2-r ul li+li {
    border-top: 1px solid #1c68d6;
}

.s2-r ul li a {
    display: block;
    padding: .23rem 0 .2rem 0;
}

.s2-r ul li a div {
    display: flex;
}

.s2-r ul li a div b {
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.2rem;
    letter-spacing: 0rem;
    color: #ffffff;
    padding: 0 .1rem;
    position: relative;
    z-index: 1;
}

.s2-r ul li a div b::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #1065f2;
    opacity: 0.8;
    transform: skewX(-20deg);
    z-index: -1;
    transition: all .5s;
}

.s2-r ul li a h3 {
    font-size: 0.2rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.26rem;
    letter-spacing: 0rem;
    color: #ffffff;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: .52rem;
    margin-top: .15rem;
}

.s2-r ul li a p {
    font-size: 0.15rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.22rem;
    letter-spacing: 0rem;
    color: #d6d6d6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    height: 0.66rem;
    margin-top: .1rem;
    display: none;
}


.s3 {
    position: relative;
    padding-bottom: 1rem;
    padding-top: .7rem;
}

.s3line1 {
    position: absolute;
    background: url(../images/s3line1.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 4.25rem;
    height: 0.73rem;
    top: -0.43rem;
    left: 0;
    pointer-events: none;
    z-index: -1;
}

.s3line2 {
    position: absolute;
    background: url(../images/s3line2.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 6.32rem;
    height: 0.73rem;
    bottom: 100%;
    left: 1.63rem;
    pointer-events: none;
    z-index: -2;
}

.s3::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    background: url(../images/s3-bg.png) no-repeat;
    background-position: center center;
    background-size: cover;
    width: 100%;
    padding-top: 52.34375%;
    z-index: -1;
    pointer-events: none;
}

.s3-t {
    display: flex;
    justify-content: center;
    margin-top: .15rem;
}

.s3-t ul {
    display: flex;
    border: 1px solid rgba(241, 250, 255, 0.2);
    box-shadow: 0 0 .13rem rgba(255, 255, 255, .08);
    padding: .1rem;
    border-radius: .3rem;
    position: relative;
    z-index: 1;
}

.s3-t ul li {
    margin: 0 .15rem;
}

.s3-t ul li a {
    display: block;
    font-size: 0.2rem;
    line-height: .3rem;
    font-weight: normal;
    font-stretch: normal;
    letter-spacing: 0rem;
    color: #ffffff;
    padding: 0 .22rem;
    border-radius: 0.15rem;
}

.s3-t ul .bg {
    position: absolute;
    top: .1rem;
    left: 0;
    height: 0.3rem;
    background-color: #e21f26;
    border-radius: 0.15rem;
    z-index: -1;
    pointer-events: none;
}

.s3-t ul .bg::before {
    content: "";
    background: #e21f26;
}


.s3-b {
    margin-top: .5rem;
}

.s3-b .swiper-container {
    padding-right: 3rem;
    margin-right: -1.6rem;
    overflow: visible;
}

.s3-b .swiper-container .swiper-slide {}

.s3-b .swiper-container .swiper-slide a {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: .05rem;
    box-shadow: 0rem 0.03rem 0.07rem 0rem rgba(0, 0, 0, 0.35);
}

.s3-b .swiper-container .swiper-slide a .pic {}

.s3-b .swiper-container .swiper-slide a .pics {}

.s3-b .swiper-container .swiper-slide a .pics img {
    display: block;
    width: 100%;
}

.s3-b .swiper-container .swiper-slide a .bigimg {
    position: absolute;
    width: 0.46rem;
    height: 0.46rem;
    background: #2351e5 url(../images/icon-quanp.png) no-repeat;
    background-position: center center;
    background-size: .18rem auto;
    border-radius: 0.23rem;
    right: 0.16rem;
    bottom: 0.12rem;

}

.s3-b .swiper-container .swiper-slide a .play {
    position: absolute;
    width: 0.46rem;
    height: 0.46rem;
    background: #2351e5 url(../images/icon-play.png) no-repeat;
    background-position: center center;
    background-size: .13rem auto;
    border-radius: 0.23rem;
    right: 0.16rem;
    bottom: 0.12rem;
}

.s3-barr {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: .444rem;
}

.s3-barr .s3-prev {
    background: url(../images/icon-prev.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 0.17rem;
    height: 0.13rem;
    cursor: pointer;
}

.s3-barr .s3-next {
    background: url(../images/icon-next.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 0.17rem;
    height: 0.13rem;
    cursor: pointer;
}

.s3-barr .s3-dots {
    display: flex;
    align-items: center;
    margin: 0 .1rem;
}

.s3-barr .s3-dots::before {
    content: "";
    display: block;
    width: 0.06rem;
    height: 0.06rem;
    background-color: #ffffff;
    border-radius: 50%;
}

.s3-barr .s3-dots::after {
    content: "";
    display: block;
    width: 0.06rem;
    height: 0.06rem;
    background-color: #ffffff;
    border-radius: 50%;
}

.s3-barr .swiper-pagination {
    display: flex;
    align-items: center;
    width: 2.19rem;
    height: 1px;
    background-color: #ffffff;
    position: relative;
    margin: 0 .1rem;
}

.s3-barr .swiper-pagination .swiper-pagination-progressbar-fill {
    background: #c51c22;
    transition: all .5s;
}

.s4 {
    padding-top: .83rem;
    padding-bottom: 1.48rem;
    background: url(../images/s4-bg.png) no-repeat;
    background-position: center top;
    background-size: cover;
    position: relative;
    z-index: 1;
}

.s4line1 {
    position: absolute;
    background: url(../images/s4line1.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 4rem;
    height: 0.55rem;
    top: -0.29rem;
    right: 0;
    pointer-events: none;
    z-index: -2;
}

.s4line2 {
    position: absolute;
    background: url(../images/s4line2.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 5.69rem;
    height: 0.55rem;
    top: 0;
    right: 1.13rem;
    pointer-events: none;
    z-index: -1;
}

.s4-c {
    display: flex;
    margin-top: .64rem;
}

.s4-l {
    width: 5.95rem;
    margin-right: .12rem;
    background: url(../images/s4-lbg.png) no-repeat;
    background-position: center center;
    background-size: cover;
    padding: .5rem 1.68rem .65rem .42rem;
}

.s4-l h2 {
    font-family: Impact;
    font-size: 0.8rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.8rem;
    letter-spacing: 0.05rem;
    color: #ffffff;
}

.s4-l h3 {
    font-size: 0.28rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.38rem;
    letter-spacing: 0rem;
    color: #ffffff;
    margin-top: .47rem;
}

.s4-l div {
    margin-top: .12rem;
}

.s4-l div p {
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.26rem;
    letter-spacing: 0rem;
    color: #d6d6d6;
}

.s4-l ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -.1rem;
    padding-top: .22rem;
    margin-top: .4rem;
    border-top: 1px solid #293dad;
}

.s4-l ul li {
    line-height: 0.33rem;
    border-radius: 0.16rem;
    margin: 0 .1rem;
    color: #fff;
    font-size: 0.16rem;
    padding: 0 .16rem;
    margin-top: .2rem;
}

.s4-r {
    flex: 1;
    min-width: 0;
}

.s4-r ul {}

.s4-r ul li {
    border: solid 1px #1c68d6;
    border-radius: 0.05rem;
    overflow: hidden;
}

.s4-r ul li:nth-child(1) {
    background: url(../images/s4-ritembg1.png) no-repeat;
    background-position: center bottom;
    background-size: cover;
}

.s4-r ul li:nth-child(2) {
    background: url(../images/s4-ritembg2.png) no-repeat;
    background-position: center bottom;
    background-size: cover;
}

.s4-r ul li:nth-child(3) {
    background: url(../images/s4-ritembg3.png) no-repeat;
    background-position: center bottom;
    background-size: cover;
}

.s4-r ul li:nth-child(4) {
    background: url(../images/s4-ritembg4.png) no-repeat;
    background-position: center bottom;
    background-size: cover;
}

.s4-r ul li+li {
    margin-top: .12rem;
}

.s4-r ul li a {
    display: flex;
    height: 1.2rem;
    align-items: center;
    padding: 0 .28rem;

}

.s4-r ul li a h3 {
    font-family: Impact;
    font-size: 0.3rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.42rem;
    letter-spacing: 0.02rem;
    color: #ffffff;
    margin-right: .5rem;
}

.s4-r ul li a div {
    font-size: 0.28rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.38rem;
    letter-spacing: 0rem;
    color: #ffffff;
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
}

.s4-r ul li a div b {
    flex: 1;
    min-width: 0;
}

.s4-r ul li a span {
    font-size: 0.16rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.26rem;
    letter-spacing: 0rem;
    color: #d6d6d6;
    margin-left: .3rem;
}

.s5 {
    background: url(../images/s5-bg.png) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    z-index: 1;
}

.s5line1 {
    position: absolute;
    background: url(../images/s5line1.png) no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    width: 4.04rem;
    height: 0.73rem;
    top: -0.33rem;
    right: 0;
    pointer-events: none;
    z-index: -2;
}

.s5-tit {
    margin-top: .45rem;
    text-align: center;
}

.s5-tit h2 {
    font-family: PangMenZhengDao;
    font-size: 0.6rem;
    font-weight: normal;
    font-stretch: normal;
    line-height: 0.66rem;
    letter-spacing: 0rem;
    color: #ffffff;
}

.s5-car {}

.s5-car img {
    display: block;
    margin: 0 auto;
    width: 5.38rem;
}

.s5-c {
    padding-bottom: 1.35rem;
}

.s5-c ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -.1rem;
}

.s5-c ul li {
    width: 33%;
    margin-top: .55rem;
}

.s5-c ul li a {
    display: block;
    margin: 0 .1rem;
}

.s5-c ul li a .pics {
    height: 0.75rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.s5-c ul li a .pics img {
    max-width: 100%;
    max-height: 100%;
}



/* =====================================================================
   GSAP 配套样式（js/gsap-index.js / js/public.js）
   仅新增，不改动原有布局；统一 .gs- 前缀 / gs- 变量，避免与模板冲突
   ===================================================================== */

/* ---------- 1. 首屏入场动画的预隐藏 ----------
   极短的加载窗口内先藏住元素，避免闪现。
   脚本执行后会立即移除 html.anim-on，另有 prefers-reduced-motion 兜底 */
html.anim-on .head .head-top,
html.anim-on .banner .item-des img,
html.anim-on .banner .slick-dots {
    opacity: 0;
}

@media (prefers-reduced-motion: reduce) {

    html.anim-on .head .head-top,
    html.anim-on .banner .item-des img,
    html.anim-on .banner .slick-dots {
        opacity: 1;
    }
}

/* ---------- 2. 磁性元素：位移全交给 GSAP，关掉自身 transition ---------- */
.gs-magnet {
    transition-property: none !important;
    will-change: transform;
}

/* ---------- 3. 卡片 3D 倾斜：容器内跟随光标的高光 ---------- */
.gs-tilt {
    position: relative;
    transform-style: preserve-3d;
    will-change: transform;
}

.gs-tilt::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    pointer-events: none;
    opacity: 0;
    transition: opacity .45s;
    background: radial-gradient(circle at var(--gs-gx, 50%) var(--gs-gy, 50%),
            rgba(255, 255, 255, .22),
            rgba(255, 255, 255, .05) 38%,
            rgba(255, 255, 255, 0) 62%);
    z-index: 6;
}

.gs-tilt:hover::after {
    opacity: 1;
}

/* ---------- 4. 年份 tab 的红色指示块：位置 / 尺寸全部由 public.js 计算 ---------- */
.s3-t ul .bg {
    top: 0;
    left: 0;
}

/* =====================================================================
   CSS 动画（不依赖 JS，简单的循环动效都在这里，方便后期调整）
   ===================================================================== */

/* ---------- 5. 竖向装饰线 .sline：线身上的游走光点（s1 / s5 各一条） ---------- */
.sline div {
    position: relative;
    overflow: hidden;
}

.sline div::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: .5rem;
    pointer-events: none;
    opacity: .9;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0),
            #ffffff,
            rgba(255, 255, 255, 0));
    animation: gs-lineRun 2.8s cubic-bezier(.45, 0, .55, 1) infinite;
}

@keyframes gs-lineRun {

    0% {
        transform: translateY(-120%);
    }

    100% {
        transform: translateY(420%);
    }
}

/* ---------- 6. 循环呼吸类（html.gs-ready 在首屏入场播完后加上，
   避免和 GSAP 的入场动画抢 transform / opacity） ---------- */
html.gs-ready .banner .item-des img {
    animation: gs-breathe 3.6s ease-in-out infinite;
}

@keyframes gs-breathe {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.02);
    }
}

/* s4 第一名序号的红色呼吸光 */
.s4-l h2 {
    animation: gs-glowRed 2.2s ease-in-out infinite;
}

@keyframes gs-glowRed {

    0%,
    100% {
        text-shadow: 0 0 0 rgba(226, 31, 38, 0);
    }

    50% {
        text-shadow: 0 0 22px rgba(226, 31, 38, .85);
    }
}

/* s1 数据文字的白色呼吸光 */
.s1-c ul li a div {
    animation: gs-glowWhite 2.4s ease-in-out infinite;
}

.s1-c ul li:nth-child(2) a div {
    animation-delay: .3s;
}

.s1-c ul li:nth-child(3) a div {
    animation-delay: .6s;
}

.s1-c ul li:nth-child(4) a div {
    animation-delay: .9s;
}

@keyframes gs-glowWhite {

    0%,
    100% {
        text-shadow: 0 0 0 rgba(255, 255, 255, 0);
    }

    50% {
        text-shadow: 0 0 18px rgba(255, 255, 255, .5);
    }
}

/* ---------- 7. 简单 hover 效果（原来在 JS 里，现在交给 CSS，更顺滑） ---------- */

/* 顶部导航英文副标题上浮 */


/* 页脚栏目标题：hover 下划线由左向右展开 */
.foot-r dl dt a {
    position: relative;
}

.foot-r dl dt a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    pointer-events: none;
    background-image: linear-gradient(90deg, rgba(226, 31, 38, .1) 0%, #e21f26 100%);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .45s cubic-bezier(.22, .61, .36, 1);
}

.foot-r dl dt a:hover::after {
    transform: scaleX(1);
}

/* 页脚文字链接右移 */
.foot-r dl dd a {
    display: inline-block;
    transition: transform .35s cubic-bezier(.22, .61, .36, 1);
}

.foot-r dl dd a:hover {
    transform: translateX(5px);
}

/* s5 机构 logo：整体抬升 + 图片放大 */
.s5-c ul li a,
.s5-c ul li a .pics {
    transition: transform .4s cubic-bezier(.22, .61, .36, 1);
}

.s5-c ul li a:hover {
    transform: translateY(-8px);
}

.s5-c ul li a:hover .pics {
    transform: scale(1.1);
}

/* s3 图集：图片推近 + 角标弹出 */
.s3-b .swiper-slide a .pics img {
    transition: transform .7s cubic-bezier(.22, .61, .36, 1);
}

.s3-b .swiper-slide a:hover .pics img {
    transform: scale(1.07);
}

.s3-b .swiper-slide a .bigimg,
.s3-b .swiper-slide a .play {
    transition: transform .5s cubic-bezier(.34, 1.56, .64, 1);
}

.s3-b .swiper-slide a:hover .bigimg,
.s3-b .swiper-slide a:hover .play {
    transform: scale(1.16) rotate(12deg);
}

/* ---------- 触屏设备不启用鼠标类特效 ---------- */
@media (hover: none) {

    .gs-tilt::after {
        display: none;
    }
}




@media screen and(-ms-high-contrast:active),
(-ms-high-contrast:none) {}


@media screen and (min-width: 1025px) {

    .s2-r ul li.on a div b::before {
        background-color: #e21f26;
    }
}

@media screen and (max-width: 1024px) {
    .welcome-c h1{font-size: .34rem;line-height: .4rem;letter-spacing: 0;}
    .welcome-c h3{font-size: .14rem;letter-spacing: 0;}


    .banner .slick .slick-dots li div span {
        font-size: .24rem;
    }

    .banner .slick .slick-dots li div i {
        height: .26rem;
        margin-bottom: 0;
    }

    .banner .slick .slick-dots li div b {
        font-size: .16rem;
    }



    .banner .slick .slick-dots {
        bottom: .5rem;
    }

    .banner .slick-slide a img {
        height: auto !important;
    }

    .banner .slick-dots li:before {
        margin: 0 .05rem;
    }

    .banner .slick-dots li::after {
        margin: 0 .05rem;
    }

    .banner .slick-dots li span {}

    .banner .slick-dots li span::before {
        margin-right: .4rem;
    }

    .banner .slick-dots li.slick-active span::before {
        width: .4rem;
    }

    .banner .slick-dots li.slick-active span::after {
        width: 0.4rem;
    }


    .index {
        position: static;
        padding-top: 0;
        overflow: hidden;
    }

    .b-btm .bbtmline1 {
        width: 1.2rem;
        height: 0.18rem;
        bottom: -0.1rem;
    }

    .b-btm .bbtmline2 {
        width: 1.82rem;
        height: 0.18rem;
        left: .78rem;
    }

    .b-btm .bbtmline3 {
        width: 2.7rem;
        height: 0.36rem;
        bottom: -0.19rem;
    }

    .s1-tit h2,
    .s5-tit h2 {
        font-size: .3rem;
        line-height: .4rem;
    }

    .s1-tit div h4 {
        font-size: .16rem;
        line-height: .3rem;
    }

    .s1-c ul {
        flex-wrap: wrap;
    }

    .s1-c ul li a {
        padding: .2rem 0;
    }

    .s1-c ul li a div {
        font-size: .5rem;
        line-height: .5rem;
    }

    .s1-c ul li {
        flex: none;
        width: 50%;
    }

    .s1-c ul li+li a::before {
        top: .4rem;
        bottom: 0.4rem;
    }

    .tit h2 {
        font-size: .3rem;
        line-height: .5rem;
    }

    .tit div.bef,
    .tit div.aft {
        width: .31rem;
        height: 0.28rem;
    }

    .sline div {
        height: 1rem;
    }

    .s2-m ul {
        display: flex;
        justify-content: space-between;
    }

    .s2-m ul li {
        width: 49%;
    }

    .s2-m ul li+li {
        margin-top: 0;
    }

    .s2-r {
        width: auto;
        margin-left: 0;
    }

    .s2-r ul li a p {
        display: none !important;
    }

    .s2-r ul li a h3 {
        height: auto;
        max-height: .52rem;
    }

    .s3-t ul li {
        margin: 0 .06rem;
    }

    .s3-t ul li a {
        padding: 0 .1rem;
        font-size: .16rem;
    }

    .s3-b .swiper-container {
        padding-right: 0;
        margin-right: 0;
    }

    .s4line1 {
        width: 2rem;
        height: 0.27rem;
        top: -.15rem;
    }

    .s4line2 {
        width: 2.85rem;
        height: 0.28rem;
        right: 0.56rem;
    }

    .s4-l h2 {
        font-size: .5rem;
        line-height: .5rem;
    }

    .s4-l h3 {
        font-size: .24rem;
        margin-top: .3rem;
    }

    .s4-l ul {
        padding-top: .2rem;
        margin: 0 -.05rem;
        margin-top: .2rem;
    }

    .s4-l ul li {
        margin: .05rem;
    }

    .s4-r ul li a {
        padding: .2rem;
        height: auto;
        min-height: .8rem;
    }

    .s4-r ul li a h3 {
        font-size: .18rem;
        margin-right: .2rem;
    }

    .s4-r ul li a div {
        font-size: .18rem;
        line-height: .3rem;
    }

    .s4-r ul li a span {
        margin-left: .15rem;
    }

    .s5-car img {
        width: 3.5rem;
        max-width: 100%;
    }

    .s5-c ul li {
        width: 50%;
        margin-top: .15rem;
    }

    .s5-c {
        padding-bottom: .5rem;
    }





    .s2-c,
    .s4-c {
        display: block;
    }

    .s4-l {
        width: auto;
        padding: .35rem 1rem .4rem .3rem;
        margin-right: 0;
        margin-bottom: .2rem;
    }

    .s2-m {
        width: auto;
        margin: .3rem 0;
    }


    .s2-m ul li a .info h3,
    .s2-r ul li a h3 {
        font-size: .18rem;
    }

    .s2-l .slick ul li a .info h3 {
        font-size: .18rem;
        line-height: .32rem;
        height: 0.64rem;
    }

    .s1-tit,
    .s1-tit div,
    .s2-c,
    .s3-b,
    .s4-c,
    .s5-tit {
        margin-top: .3rem;
    }

    .s1-c {
        margin-top: .5rem;
    }

    .s1 {
        padding-bottom: .5rem;
    }

    .s2,
    .s3 {
        padding-top: 0;
        padding-bottom: .5rem;
    }

    .s4 {
        padding: .5rem 0;
    }


}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 480px) {}