.page.index .swiper {
    height: calc(803 * var(--px));
}

.page.index .swiper .swiper-slide>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page.index .swiper .swiper-slide__section {
    /* max-width: 1600px; */
    width: 100%;
    height: 100%;
    padding-top: calc(260 * var(--px));
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.page.index .swiper .swiper-slide__section>.title {
    color: #fff;
    font-size: calc(82 * var(--px));
    line-height: 1.2;
}

.page.index .swiper .swiper__bottom {
    /* max-width: calc(100vw - ((100vw - var(--root-page-max-content-width)) / 2)); */
    width: 100%;
    height: max-content;
    color: #fff;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    z-index: 2;
}

.page.index .swiper .swiper__bottom .swiper-pagition {
    font-size: calc(18 * var(--px));
    line-height: 1.2;
}

.page.index .swiper .swiper-pagition .current-slide__num {
    font-size: calc(28 * var(--px));
}

.page.index .swiper .swiper-pagition .swiper-pagition__fun {
    padding-top: calc(12 * var(--px));
    gap: calc(26 * var(--px));
    margin-bottom: calc(30 * var(--px));
}

.page.index .swiper .swiper__bottom .scroll-down {
    width: calc(960 / 1920 * 100vw);
    height: calc(100 * var(--px));
    padding: calc(36 * var(--px)) calc(36 * var(--px)) 0;
    flex: 0 0 auto;
    background-color: rgba(0, 0, 0, .5);
    border-top-left-radius: calc(20 * var(--px));
    margin-top: calc(10 * var(--px));
    align-self: flex-end;
}

.page.index .programs-nav {
    /* height: calc(358 * var(--px)); */
    text-align: center;
    background-image: linear-gradient(to bottom, #4572ff, #72a3f4);
}

.page.index .programs-nav .programs-nav__content {
    width: 100%;
    /* height: 100%; */
    height: calc(358 * var(--px));
}

.page.index .programs-nav .nav-item {
    padding: calc(30 * var(--px)) 0;
    position: relative;
}

.page.index .programs-nav .nav-item>a,
.page.index .programs-nav .nav-item>.nav-item__title {
    color: #fff;
    font-size: calc(28 * var(--px));
    font-weight: bold;
    line-height: 1.5;
    cursor: pointer;
}

.page.index .programs-nav .nav-item>.nav-item__title>.icon {
    display: none;
}

.page.index .programs-nav .nav-item .nav-item__main {
    height: 0;
    overflow: hidden;
}

.page.index .programs-nav .nav-item .icon-plus {
    display: block;
    margin: calc(16 * var(--px)) auto 0;
}

.page.index .programs-nav .nav-item.active {
    height: 100%;
    min-width: calc(235 * var(--px));
    flex: 0 0 auto;
    background-image: linear-gradient(-90deg, #113cc1, #4e7fdf);
    padding: calc(24 * var(--px)) calc(24 * var(--px));
}

.page.index .programs-nav .nav-item.active .nav-item__title {
    padding-bottom: calc(28 * var(--px));
}

.page.index .programs-nav .nav-item.active .nav-item__menu {
    color: #fff;
    font-size: calc(18 * var(--px));
    padding: calc(32 * var(--px)) 0;
    border-top: 1px solid rgba(255, 255, 255, .5);
    border-bottom: 1px solid rgba(255, 255, 255, .5);
}

.page.index .programs-nav .nav-item.active li {
    width: max-content;
    padding: calc(15 * var(--px)) 0;
    margin: auto;
}

.page.index .programs-nav .nav-item.active li:hover a {
    font-weight: bold;
    transition: font .3s linear;
}

.page.index .programs-nav .nav-item:has(>a)::after,
.page.index .programs-nav .nav-item.active li::after {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--secondary);
    box-shadow: 1px 1px 1px rgba(0, 0, 0, .5);
    transform: scale(0);
    transform-origin: center;
    transition: transform .3s linear;
}

.page.index .programs-nav .nav-item:has(>a):hover:after,
.page.index .programs-nav .nav-item.active li:hover:after {
    transform: scale(1);
}

.page.index .programs-nav .nav-item.active .icon-plus {
    display: none;
}

.page.index .change {
    background: url(../images/bg1.jpg) no-repeat center calc(-120 * var(--px)) / 100%;
    padding-bottom: calc(84 * var(--px));
    position: relative;
}

.page.index .change::after {
    content: '';
    width: 100%;
    height: 100%;
    background-image: linear-gradient(2deg, #e5ebf8, rgba(255, 255, 255, 0));
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.page.index .change__content {
    position: relative;
    z-index: 2;
}

.page.index .change .header {
    padding-bottom: calc(88 * var(--px));
}

.page.index .change .header .title {
    color: #fff;
    font-size: calc(58 * var(--px));
    letter-spacing: -1px;
    word-spacing: -1px;
    line-height: 1.2;
    text-align: center;
    gap: calc(60 * var(--px));
    padding: calc(142 * var(--px)) 0 calc(78 * var(--px));
}

.page.index .change .header .btn {
    height: calc(75 * var(--px));
    font-size: calc(24 * var(--px));
    font-weight: 600;
    margin: auto;
    /* background-color: var(--thirdary); */
}

.page.index .change .main {
    background-color: rgba(255, 255, 255, .8);
    border-radius: calc(20 * var(--px));

}

.page.index .change .main .change-desc {
    text-align: center;
    border-bottom: 1px solid #7f8d9b;
    padding: calc(94 * var(--px)) calc(26 * var(--px)) calc(68 * var(--px));
    overflow: hidden;
}

.page.index .change .change-desc .title {
    width: max-content;
    color: var(--primary);
    font-variation-settings: normal;
    /* font-size: calc(100 * var(--px)); */
    font-size: calc(80 * var(--px));
    font-weight: bold;
    line-height: 1;
    padding-left: calc(18 * var(--px));
    position: relative;
    margin: auto;
}

.page.index .change .change-desc .title sup {
    font-size: calc(30 * var(--px));
    position: absolute;
    top: 0;
    left: 0;
}

.page.index .change .change-desc .desc-item {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
}

.page.index .change .change-desc .desc-item .label {
    /* font-size: calc(18 * var(--px)); */
    font-size: calc(16 * var(--px));
    line-height: 1.5;
    color: rgba(0, 0, 0, .7);
    flex: 1 0 0;
    border-right: 2px solid #7f8d9b;
    padding: 0 calc(12 * var(--px));
}

.page.index .change .change-desc .desc-item .value {
    /* font-size: calc(30 * var(--px)); */
    font-size: calc(20 * var(--px));
    line-height: 1.4;
}

.page.index .change .change-desc .desc-item:nth-last-of-type(1) .label {
    border-right: none;
}

.page.index .change .change-date {
    padding: calc(46 * var(--px)) 0;
}

.page.index .change .change-date .date-item {
    min-width: calc(330 * var(--px));
    color: #4e5562;
    font-size: calc(24 * var(--px));
    line-height: 1.2;
    display: flex;
    align-items: center;
}

.page.index .change .change-date .date-item>img {
    width: calc(68 * var(--px));
    width: calc(67 * var(--px));
}

.page.index .change .change-date .date-item>section {
    padding-left: calc(12 * var(--px));
}

.page.index .change .change-date .date-item .label {
    font-weight: bold;
}

.page.index .news {
    margin-bottom: calc(60 * var(--px));
}

.page.index .news .layer-header .more {
    color: var(--primary);
    font-size: calc(24 * var(--px));
    font-weight: bold;
}

.page.index .news .layer-header .more p {
    color: var(--primary);
    border-bottom: 1px solid var(--primary);
    transition: all .3s linear;
}

.page.index .news .layer-header .more:hover p {
    color: var(--thirdary);
    border-color: var(--thirdary);
}

.page.index .news .layer-header .more:hover .icon {
    background-image: url(../images/icon-right-f0a000@2x.png);
}

.page.index .news .layer-header .more .icon {
    margin-left: calc(8 * var(--px));
}

.page.index .news .news-list {
    min-height: calc(580 * var(--px));
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: calc(30 * var(--px));
}

.page.index .news .news-list .new {
    height: 100%;
}

.page.index .news .news-list .new-img {
    height: calc(320 * var(--px));
    border-radius: calc(var(--round-16) * var(--px));
    overflow: hidden;
}

.page.index .news .news-list .new-img img {
    width: 100%;
    transition: transform .3s linear;
}

.page.index .news .news-list .new:hover .new-img img {
    transform: scale(1.2);
}

.page.index .news .news-list .new__content {
    color: #666666;
    flex: 1 0 0;
}

.page.index .news .news-list .new__content .new-time {
    padding: calc(20 * var(--px)) 0 calc(20 * var(--px));
    font-size: calc(18 * var(--px));
    line-height: 1.5;
}

.page.index .news .news-list .new__content .new-title {
    color: #000;
    font-weight: bold;
    font-size: calc(28 * var(--px));
    line-height: 1.2;
    flex: 1 1 0;
}

.page.index .news .news-list .new__content .more {
    font-size: calc(18 * var(--px));
    padding-top: calc(20 * var(--px));
    padding-bottom: calc(28 * var(--px));
    text-align: left;
}

.page.index .news .news-list .new__content .more-text {
    display: inline-flex;
    border-bottom: 1px solid #666;
    margin-right: calc(20 * var(--px));
}

.page.index .news .news-list .new__content .solid {
    height: calc(10 * var(--px));
    background-color: var(--primary);
    position: relative;
}

.page.index .news .news-list .new__content .solid::after {
    content: '';
    position: absolute;
    width: 25%;
    height: 100%;
    background-color: var(--secondary);
    top: 0;
    bottom: 0;
    left: 0;
    transition: width .3s linear;
    z-index: 1;
}

.page.index .news .news-list .new:hover .solid::after {
    width: 100%;
}

.page.index .layer-main>.btn {
    width: calc(249 * var(--px));
    height: calc(75 * var(--px));
    margin: calc(40 * var(--px)) auto 0;
}

.page.index .event-module {
    padding-top: calc(30 * var(--px));
    margin-bottom: calc(60 * var(--px));
}

.page.index .event-module .more {
    color: var(--primary);
    font-size: calc(24 * var(--px));
    font-weight: bold;
    padding: calc(30 * var(--px)) 0;
}

.page.index .event-module .more .icon {
    margin-left: calc(8 * var(--px));
}

.page.index .event-module .more p {
    color: var(--primary);
    border-bottom: 1px solid var(--primary);
    transition: all .3s linear;
}

.page.index .event-module .more:hover p {
    color: var(--thirdary);
    border-color: var(--thirdary);
}

.page.index .event-module .more:hover .icon {
    background-image: url(../images/icon-right-f0a000@2x.png);
}

.page.index .event-module .events__content {
    position: relative;
}

.page.index .event-module .layer-header {
    display: none;
}

.page.index .event-module .events {
    width: 100%;
    height: 100%;
    padding: calc(50 * var(--px)) calc(0 * var(--px)) 0 calc(70 * var(--px));
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.page.index .event-module .events .events-title {
    flex: 0 0 auto;
    color: #fff;
    /* font-size: calc(90 * var(--px)); */
    font-size: calc(60 * var(--px));
    margin-right: calc(120 * var(--px));
}

.page.index .event-module .events .event-list {
    flex: 1 1 0;
    display: grid;
    grid-template-rows: repeat(4, 1fr);
}

.page.index .event-module .event {
    margin-bottom: calc(30 * var(--px));
}

.page.index .event-module .event:nth-last-of-type(1) {
    margin-bottom: 0;
}

.page.index .event-module .event .time {
    --l: 80;
    width: calc(var(--l) * var(--px));
    height: calc(var(--l) * var(--px));
    text-align: center;
    color: var(--secondary);
    font-size: calc(18 * var(--px));
    font-weight: bold;
    line-height: 1.2;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--secondary);
    flex: 0 0 auto;
}

.page.index .event-module .event .time>p {
    width: max-content;
    border-bottom: 2px solid var(--secondary);
}

.page.index .event-module .event .title {
    flex: 1 1 0;
    /* width: calc(340 / 1920 * 100vw); */
    font-size: calc(24 * var(--px));
    font-weight: 500;
    line-height: 1.2;
    font-variation-settings: normal;
    margin-left: calc(32 * var(--px));
}

.page.index .event-module .event .desc {
    flex: 1 1 0;
    /* width: calc(458 / 1920 * 100vw); */
    color: #666;
    font-size: calc(24 * var(--px));
    font-weight: 500;
    line-height: 1.5;
    margin-left: calc(20 * var(--px));
    padding-right: calc(12 * var(--px));
}

.page.index .event-module .layer-content .layer-main>.btn {
    margin: calc(40 * var(--px)) auto calc(30 * var(--px));
}

.page.index .event-module .event .btn {
    height: calc(48 * var(--px));
    padding: 0 calc(32 * var(--px));
}

.page.index .event-module .event .btn .icon-right {
    margin-left: 0;
}

.page.index .event-module .events__bg,
.page.index .event-module .events__bg_2 {
    width: 100%;
    display: block;
    margin: auto;
}

.page.index .event-module .events__bg_2 {
    display: none;
}

.page.index .campuses .layer-header {
    /* padding-bottom: calc(26 * var(--px)); */
    padding-bottom: calc(12 * var(--px));
}

.page.index .campuses .layer-header::after {
    display: none;
}

.page.index .campuses .campuse-title {
    font-size: calc(28 * var(--px));
    line-height: 1.2;
    font-weight: bold;
    margin-top: calc(48 * var(--px));
    margin-bottom: calc(26 * var(--px));
}

.page.index .campuses .campuse-title::before {
    content: '';
    display: inline-block;
    width: calc(4 * var(--px));
    height: calc(28 * var(--px));
    background-color: var(--secondary);
    margin-right: calc(16 * var(--px));
}

.page.index .campuses .campuse .swiper {
    height: calc(274 * var(--px));
}

.page.index .campuses .campuse .swiper-slide {
    border-radius: calc(var(--round-16)* var(--px));
    overflow: hidden;
}

.page.index .campuses .campuse .swiper-slide img {
    transition: transform .3s linear;
}

.page.index .campuses .campuse .swiper-slide:hover img {
    transform: scale(1.1);
}

.page.index .campuses .campuse .progress-bar {
    width: calc(206 * var(--px));
    height: calc(4 * var(--px));
    border-radius: 999px;
    margin: calc(40 * var(--px)) auto 0;
    overflow: hidden;
}

.page.index .campuses .campuse .progress-bar__outer,
.page.index .campuses .campuse .progress-bar__inner {
    height: 100%;
}

.page.index .campuses .campuse .progress-bar__outer {
    background-color: #c4cde5;
}

.page.index .campuses .campuse .progress-bar__inner {
    width: 0;
    background-color: #8395c7;
    transition: width .3s linear;
}

.fullscreen-banner {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2025;
    clip-path: circle(200vw at right top);
    transition: clip-path 2s ease-in-out;
}

.fullscreen-banner.close {
    clip-path: circle(0 at right top);
}

.fullscreen-banner .fullscreen-banner__section {
    width: 100%;
    height: 100%;
    padding-top: calc(260 * var(--px));
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.fullscreen-banner .fullscreen-banner__section>.title {
    color: #fff;
    font-size: calc(82 * var(--px));
    line-height: 1.2;
}

@media screen and (max-width: 1600px) {
    .page.index .event-module .events__bg,
    .page.index .event-module .events__bg_2 {
        /* max-width: var(--root-page-max-content-width); */
        max-width: 1600px;
        width: 100%;
    }

    /* .page.index .swiper .swiper__bottom {
        padding-left: calc(120 * var(--px));
    } */
}

@media screen and (max-width: 1400px) {
    .page.index .event-module .events {
        padding: calc(50 * var(--px)) 0 0 calc(80 * var(--px));
    }
}

@media screen and (max-width: 1200px) {
    .page.index .event-module .events .events-title {
        /* font-size: calc(72* var(--px)); */
        margin-right: calc(120* var(--px));
    }

    .page.index .swiper .swiper__bottom {
        padding-left: calc(24 * var(--px));
    }

    .page.index .event-module .events {
        padding: calc(40 * var(--px)) 0 0 calc(70 * var(--px));
    }

    .page.index .event-module .event .time {
        --l: 100;
        font-size: calc(20 * var(--px));
    }
}

@media screen and (max-width: 1024px) {
    .page.index .news .news-list {
        min-height: calc(300 * var(--px));
    }

    .page.index .programs-nav .programs-nav__content {
        align-items: center;
        height: auto;
        min-height: calc(200 * var(--px));
        display: grid;
        grid-template-columns: repeat(5, 1fr);
    }


    .page.index .programs-nav .programs-nav__content .nav-item {
        /* min-width: 25%; */
    }

    .page.index .programs-nav .nav-item.active {
        padding: calc(20 * var(--px)) calc(24 * var(--px));
    }

    .page.index .programs-nav .nav-item.active .nav-item__title {
        padding-bottom: calc(20 * var(--px));
    }

    .page.index .programs-nav .nav-item>a,
    .page.index .programs-nav .nav-item>.nav-item__title {
        font-size: calc(24 * var(--px));
        font-weight: 500;
    }

    .page.index .programs-nav .nav-item>.nav-item__title>.icon {
        width: calc(18 * var(--px));
        height: calc(18 * var(--px));
        display: inline-block;
        margin-left: calc(10 * var(--px));
    }

    .page.index .programs-nav .nav-item>.nav-item__title~.icon {
        display: none;
    }

    .page.index .programs-nav .nav-item.active .nav-item__menu {
        padding: calc(20 * var(--px)) 0;
    }

    .page.index .change .header {
        padding-bottom: calc(44 * var(--px));
    }

    .page.index .change .header .title {
        font-size: calc(48 * var(--px));
        padding: calc(60* var(--px)) 0 calc(40* var(--px));
    }

    .page.index .change .main .change-desc {
        padding: calc(60* var(--px)) calc(24* var(--px)) calc(48* var(--px));
    }

    .page.index .change .change-desc .desc-item .value {
        font-size: calc(24 * var(--px));
    }

    .page.index .change .change-desc .title {
        font-size: calc(65 * var(--px));
    }

    .page.index .page-content {
        padding-bottom: calc(60 * var(--px));
    }

    .page.index .change {
        /* padding-bottom: calc(100 * var(--px)); */
    }

    .page.index .change .change-desc {
        flex-wrap: wrap;
        justify-content: center;
        gap: calc(24 * var(--px)) 0;
    }

    .page.index .change .change-desc .desc-item {
        flex: 0 1 calc(100% / 3);
    }
}

@media screen and (max-width: 768px) {
    .page.index .event-module .events {
        padding-left: 24%;
    }
    .page.index .more-box {
        padding: 0 calc(40 * var(--px));
    }

    .page.index .swiper .swiper-slide__section>.title {
        font-size: calc(60 * var(--px));
    }

    .page.index .event-module .events .events-title {
        display: none;
    }

    .page.index .event-module .layer-header {
        display: block;
    }

    .page.index .event-module .event .time {
        --l: 95;
        font-size: calc(20 * var(--px));
    }

    .page.index .event-module .events {
        
    }

    /* .page.index .event-module .events .event-list {
        padding-left: 20%;
    } */

    .page.index .event-module .event .title,
    .page.index .event-module .event .desc {
        margin-right: calc(30 * var(--px));
    }

    .page.index .event-module .events__bg {
        display: none;
    }

    .page.index .event-module .events__bg_2 {
        display: block;
    }
}

@media screen and (max-width: 550px) {
    .page.index .swiper {
        height: auto;
    }

    .page.index .swiper .swiper-slide__section>.title {
        font-size: calc(40 * var(--px));
    }

    .page.index .swiper .swiper-slide__section {
        /* padding-top: calc(30 * var(--px)); */
        padding: 0 calc(24 * var(--px));
        display: flex;
        /* justify-content: center; */
        align-items: center;
    }

    .page.index .swiper .swiper__bottom .scroll-down {
        width: calc(600 / 1920 * 100vw);
    }

    .page.index .swiper .swiper-slide>img {
        height: auto;
        object-fit: unset;
        display: block;
    }

    .page.index .news .news-list {
        grid-template-columns: repeat(1, 1fr);
        gap: calc(20 * var(--px));
    }

    .page.index .event-module .events {
        padding: 3.5% calc(40 * var(--px)) 0;
    }

    .page.index .event-module .events .event-list {
        padding-left: 20%;
    }

    .page.index .event-module .event {
        padding-left: calc(20 * var(--px));
        margin-bottom: calc(24 * var(--px));
    }

    .page.index .event-module .event .time {
        --l: 60;
        font-size: calc(12 * var(--px));
        border-width: 1px;
    }

    .page.index .event-module .event .time>p {
        border-width: 1px;
    }

    .page.index .event-module .event .title {
        font-size: calc(18 * var(--px));
        /* width: calc(320 * var(--px)); */
        margin-left: calc(20 * var(--px));
        margin-right: 0;
    }

    .page.index .event-module .event .desc {
        /* width: calc(528 / 1920* 100vw); */
        font-size: calc(18 * var(--px));
        margin-left: calc(20 * var(--px));
        margin-right: 0;
    }

    .page.index .event-module .event .btn {
        width: calc(80 * var(--px));
        height: calc(50 * var(--px));
    }
}

@media screen and (max-width: 500px) {
    .page.index .change .header .title {
        font-size: calc(30 * var(--px));
    }
}