 .web-body{
    max-width: 1200px;
    min-height: 800px !important;
    background-color: #ffffff!important;
     margin-top: 20px;
}

.banner{
    width: 1200px;
    height: 360px;
    margin: 0 auto;
    margin-bottom: 20px;

}
 .swiper-container{
     width: 1200px !important;
 }
.wrapper .swiper-container .swiper-pagination {
    bottom: 25px;
}
 wrapper .swiper-container .swiper-pagination img{
     width: 100%;
     display: table;
 }

.wrapper .swiper-container .swiper-pagination-bullet {
    opacity: 1;
    position: relative;
    width: 10px;
    height: 10px;
    border-radius:50% !important;
    margin: 0 4px;
    background-color: rgba(0,0,0,0.5);
    transition: background-color .3s ease;
}

.wrapper .swiper-container .swiper-pagination-bullet::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    transform: scaleX(0);
    transform-origin: 0 0;
    border-radius:50% !important;
}

.wrapper .swiper-container .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    animation: sliderPagination 0.1s linear forwards
}

.wrapper .swiper-container .swiper-pagination-bullet:hover {
    background-color: #fff;
    border-radius:50% !important;
}

@keyframes sliderPagination {
    100% {
        transform: scaleX(1);
        opacity: 1;
    }
}

.course-list{
    width: 1200px;
    margin: 0 auto;
    margin-top: 20px;
    background: #FFFFFF !important;
    border-radius: 10px;
    display: table;
}
.course-list .category-title{
    width: 1200px;
    height: 68px;
    border-radius: 12px 12px 0px 0px;
    background-color: #6c7eff;
}
.course-list .category-title .category-left{
    width: 500px;
    float: left;
}
.course-list .category-title .category-left .category-name{
    margin-top: 20px;
    margin-left: 20px;
    font-size: 20px;
    font-weight: 500;
    color: #FFFFFF;
}
.course-list .category-title .category-left .category-icon{
     position: relative;
     left: 50px;
     bottom: -5px;
}
.course-list .category-title .category-right{
    width: 500px;
    float: right;
    text-align: right;
    line-height: 55px;
    background-image: url(/statics/images/pc/btn_home_gengduo.png);
    background-repeat: no-repeat;
    background-position:96% 50%;
    font-size: 14px;
    font-weight: 400;
    color: #FFFFFF;
    margin-top: 10px;
    padding-right: 50px;
}

.category-content{
    width:98%;
    margin: 0 auto;
    margin-top: 30px;
    margin-left: 15px;
}
.category-content .label-list{
    width: 280px;
    float: left;
    margin-left: 10px;
}
.category-content  .label-list .number-and-price{
    width: 280px;
    margin-top: 10px;
    padding-left: 15px;
}
.category-content  .label-list .number-and-price .number{
    width: 150px;
    float: left;
    height: 16px;
    font-size: 12px;
    font-weight: 400;
    color: #999999;
    line-height: 30px;
    padding-left: 5px;
}
.category-content  .label-list .number-and-price .price{
    float: right;
    height: 25px;
    background: #FFFFFF;
    border-radius: 6px;
    border: 1px solid #FF6B2E;
    padding: 5px 5px 5px 5px;
    color: #FF6B2E;
    line-height: 12px;
    margin-right: 15px;
}
.category-content  .label-list .course-name{
    width: 280px;
    height: 30px;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    float: left;
    margin-top: 5px;
    margin-bottom:10px;
    padding-left: 20px;
}
.lecturer-box{
    width: 1200px;
    margin: 0 auto;
    background-color: #fff;
    border-radius: 10px;
    display: table;
    margin-top: 30px;
}
.lecturer-box .title{
    font-size: 26px;
    font-weight: 500;
    color: #000000;
    line-height: 50px;
    padding: 20px 0 30px 0;
}
 .lecturer-box .title img{
     margin-right: 5px;
     vertical-align: center;
 }
.lecturer-box .lecturer-list{
    width: 243px;
    margin-left: 30px;
    display: table;
    float: left;
    margin-right: 25px;
    border-radius: 10px;
}
.lecturer-box .lecturer-list .lecturer-image{
    width: 243px!important;
}
.lecturer-box .lecturer-list .lecturer-image img{
    width: 243px;
    height: 243px;
    border-radius: 5px 5px 0px 0px;
}
.lecturer-box .lecturer-list .info{
    width: 243px;
    float: left;
    line-height: 35px;
    background-color: #f7f7f7;
    padding-left: 10px;
    margin-bottom: 20px;
    border-radius: 0px 0px 10px 10px;
}
.lecturer-box .lecturer-list .info .lecturer-name{
    width: 230px;
    float: left;
    text-align: left;
    font-size: 16px;
    color: #000;
}
.lecturer-box .lecturer-list .info .lecturer-buess{
    width: 230px;
    float: left;
    text-align: left;
    font-size: 13px;
    color: #666;
    line-height: 25px;
}
 .lecturer-box .lecturer-list .info .lecturer-desc{
     width: 230px;
     float: left;
     text-align: left;
     font-size: 13px;
     color: #333 !important;
     line-height: 20px;
     padding-bottom: 10px;
 }
.news{
    width: 1200px;
    height: 469px;
    background: #FFFFFF;
    border-radius: 8px;
    margin: 0 auto;
    margin-top: 10px;
    display: table;
}
.news h3{
    height: 25px;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
    margin-top: 20px;
    width: 1200px;
    display: table;
    padding-left: 20px;
}

.news .news-list{
    width: 273px;
    float: left;
    height: 374px;
    background: #FFFFFF;
    box-shadow: 0px 2px 15px 2px rgba(0,0,0,0.0600);
    border-radius: 10px;
    margin-top: 20px;
    margin-left: 20px;
}
.news .news-list .new-img img{
    width: 273px;
    height: 160px;
    border-bottom: 1px solid #fafafa;
}
.news .news-list .new-title{
    margin-top: 20px;
    margin-left: 20px;
    font-size: 16px;
    font-weight: bold;
    color: #666;
}
.news .news-list .new-desc{
    width: 200px;
    height: 96px;
    font-size: 14px;
    font-weight: 400;
    color: #999999;
    margin-left: 20px;
    margin-top: 10px;
    text-align: left;
    letter-spacing: 0.2px;
    line-height: 30px;
}
.news .news-list .new-desc .more{
    width: 273px;
}
.news .news-list .more img{
    float: right;
    margin-top: 10px;
    text-align: right;
}

 .more{
     color: #333;
     float: right;
     text-align: right !important;
 }
 .more a{
     text-decoration: none;
     color: #333;
 }

 .lecturer-box .title {
     width:1200px;
     height: 40px;
     display: table;
 }
 .lecturer-box .title  h3{
     font-size: 18px;
     width:500px;
     text-indent: 10px;
     text-align: left;
     font-weight: 500;
     color: #000000;
     margin-top: 20px;
     float: left;
 }
 a,a:hover{color: #fff;}

 .count-down{
     font-size: 24px;
     text-align: center;
     width: 1200px;
     margin-top: 20px;
 }
 .category-content .label-list .number-and-price .price {
     border: none !important;
 }

 /* 核心：让外层100%占满 */
 .course-list {
     width: 100%;
     box-sizing: border-box;
     padding: 0;
     margin: 0;
     margin-top: 20px;
     background-color: #F7F7F7;
 }
 /* 每一行课程容器：强制三列均分 */
 .course-row {
     display: flex;
     flex-wrap: wrap;
     gap: 20px; /* 卡片之间间距，和截图一致 */
     width: 100%;
     margin-left: 20px;
 }
 /* 单个课程卡片：严格四列，100%撑开 */
 .background-set {
     flex: 1 1 calc(33.333% - 16px);
     width: 274px!important; /* 防止太窄 */
     padding: 15px 15px 15px 15px;
     height: 235px !important;
     position: relative;
     border: 1px solid #F5F5F5 !important;
 }
 /* 课程标题 */
 .card-title {
     font-size: 17px;
     margin: 0 0 8px 0;
     line-height: 1.5;
     font-weight:bold;
 }
 /* 课程简介 */
 .card-text span {
     font-size: 12px;
     color: #888;
 }
 .content-hightlights {
     margin: 12px 0;
 }
 .hightlight.orange {
     display: inline-block;
     padding: 3px 8px;
     background: #F4F5FF;
     color: #2A398A;
     font-size: 12px;
     border-radius: 4px;
     margin-right: 6px;
 }
 /* 讲师横向排列 */
 .lecturer-content-panel {
     display: flex;
     justify-content: space-between;
     align-items: flex-end;
     margin-top: 40px;

 }
 .lecturer-group {
     display: flex;
     gap: 10px;
     align-items: center;
 }
 .lecturer-group .card {
     display: flex;
     flex-direction: column;
     align-items: center;
 }
 .lecturer-group img.rounded-circle {
     border-radius: 50%;
     object-fit: cover;
 }
 .lecturer-group .card-text {
     font-size: 12px !important;
     color: #666;
     margin: 4px 0 0;
     white-space: nowrap;
 }

 /* 讲师列表 */
 .lecturer-box {
     width: 1200px;
     padding: 0 20px;
     box-sizing: border-box;
 }
 /* 标题栏左右对齐 */
 .lecturer-box .title {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 10px;
     margin-top: 10px;

 }
 .lecturer-box .title h3 {
     font-size: 26px;
     color: #222;
     margin: 0;
     font-weight: bold;
     padding: 20px 0 30px 0;
 }
 .lecturer-box .title .more a {
     text-decoration: none;
 }

 /* 四列弹性布局，等分四栏 */
 .lecturer-wrap {
     display: flex;
     gap: 20px;

 }
 .lecturer-item {
     flex: 1;
     text-decoration: none;
     color: inherit;
     border: 1px solid #eee;
 }

 /* 讲师头像样式，圆角矩形 */
 .lecturer-image img {
     width: 100%;
     height: auto;
     display: block;
     border-radius: 6px 6px 0px 0px;
     margin-bottom: 18px;
 }

 /* 姓名左侧蓝色竖线 */
 .lecturer-name {
     display: flex;
     align-items: center;
     font-size: 18px;
     font-weight: 500;
     color: #111;
     margin-bottom: 10px;
     padding-left: 10px;
 }
 .name-line {
     display: inline-block;
     width: 4px;
     height: 22px;
     background-color: #2848b8;
     margin-right: 10px;
 }

 /* 职位文本 */
 .lecturer-buess {
     font-size: 15px;
     color: #666;
     margin-bottom: 12px;
     padding-left: 10px;
 }

 /* 简介文字排版 */
 .lecturer-desc {
     font-size: 14px;
     color: #333;
     line-height: 1.6;
     padding-left: 10px;
     padding-bottom: 10px;
 }
 .background-set .card-block{
     padding: 0 !important;
 }
 /* 价格靠右 */
 .float-right {
     text-align: right;
 }
 .original_price {
     color: #aaa;
     text-decoration: line-through;
     font-size: 13px !important;
     margin-right: 0px!important;
     font-weight: normal !important;
     display: grid;
     align-items: end;
 }
 .old-price {
     font-size: 18px;
     font-weight: bold;
     color: #ff6b00;
     width: auto !important;
     display: grid;
     align-items: end;
 }
 .dingjin {
     font-size: 18px;
     color: #ff6b00;
 }
 .active-price {
     font-size: 14px;
     font-weight: bold;
     color: #e8be44;
 }
 /* 底部：开课时间 + 购买人数 */
 .has-extra-info-block {
     display: flex;
     justify-content: space-between;
     font-size: 12px;
     border-top: 2px solid #F7F7F7;
     line-height: 35px;
 }
 .class-name {
     color: #ff6b00;
     padding-left: 0px !important;
 }
 .has-extra-info-block div:last-child {
     color: #888;
 }
 /* 清除a标签默认样式 */
 .course-list a {
     text-decoration: none;
     color: inherit;
     display: block;
 }

 .index-new {
     display: flex;
     gap: 10px;
     width: 380px;
     margin-right: 20px;
     margin-top: 10px;
 }
 .col {
     flex: 1;
     padding: 0px 20px 20px 0px;
     max-width: 380px;
     margin-left: 20px;
 }
 .col-title {
     font-size: 16px;
     font-weight: bold;
     display: flex;
     align-items: center;
     text-indent: 10px !important;
     margin-top: 10px;
     margin-bottom: 5px;

 }
 .col-content {
     padding: 5px;
     margin: 0 auto;
     margin-left: 5px;
 }

 .item {
     font-size: 16px;
     line-height: 28px;
     white-space: nowrap;
     list-style-type: none;
     display: -webkit-box;
     -webkit-box-orient: vertical;
     -webkit-line-clamp: 2; /* 限制行数为2 */
     overflow: hidden;
     /* 固定宽度 可自行修改 */
     width: 370px;
     /* 超出隐藏 */
     overflow: hidden;
     /* 超出显示省略号... */
     text-overflow: ellipsis;
     /* 兼容老浏览器 */
     display: block;
     padding: 2px;
 }
 .item a {
     color: #888;
 }
 /* 兼容老旧浏览器 */
 @media screen and (max-width:768px) {
     .container {
         flex-direction: column;
     }
 }
 .lecturer-title-panel{
     height: 80px;
 }
 .price-panel{
     display: flex;
     flex-direction: row;
     justify-content: flex-end;font-size: 18px;
 }
 .background-set:hover {
     transform: translateY(-1px);
     box-shadow: 0 8px 8px hsla(0,0%,60%,.2);
 }
 span{
     /*display: inline !important;*/
 }
 .card-text{
     font-size: 12px !important;
     margin-top: 0!important;
 }
 .tips {
     background-color: #f60 !important;
     color: #fff;
     font-size: 12px !important;
     margin-right: 10px;
     width: 55px;
     text-align: center;
     padding: 2px 4px 2px 4px;
 }
 .card-price{
     overflow: hidden;
     display: flex;
     float: right;
 }

 .page-content{
     max-width:1200px;
     margin:0 auto;
 }
 .page-content h1{
     color:#222;
     margin-bottom:16px;
 }
 .page-content p{
     color:#666;
     line-height:1.8;
 }
 .index-new-title{
     width: 100%;
     font-size: 26px;
     display: table;
     margin: 20px 20px 20px 20px;
     font-weight: bold!important;
     padding: 10px 0 10px 0 !important;
 }
 .index-new-title img{
    margin-right: 5px;
     vertical-align: center;
 }
 /*企业动态样式*/
 .dynamic-box{
     padding: 20px 0px 20px 0px;
     margin: 0 auto;
     width: 1200px;
 }
 .dynamic-title{
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 20px;
 }
 .dynamic-title h3{
     font-size: 26px;
     color: #333;
     font-weight: bold;
     padding: 10px 0 10px 0;
 }
 .dynamic-title img{
     margin-right: 5px;
     vertical-align: center;
 }
 .dynamic-row{
     display: flex;
     gap: 20px;
 }
 .dynamic-item{
     flex: 1;
 }
 .dy-img img{
     width: 100%;
     height: auto;
     display: block;
 }
 .dy-info{
     padding: 0px 12px 12px 12px;
 }
 .dy-title{
     font-size: 16px;
     font-weight: 600;
     color: #222;
     margin: 8px 0;
     line-height: 1.4;
 }
 .dy-time{
     font-size: 13px;
     color: #999;
     margin-bottom: 10px;
 }
 .dy-desc{
     font-size: 14px;
     color: #666;
     line-height: 1.6;
 }

 .school-wrap {
     width: 1200px;
     margin: 0px auto;
     box-sizing: border-box;
     margin-top: 20px;

 }
 .school-top {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 15px;
     padding-left: 20px;
 }
 .school-title {
     font-size: 26px;
     margin: 0;
     color: #222;
     font-weight: bold;
     padding: 10px 0 10px 0;
 }
 .school-title img{
     margin-right: 5px;
     vertical-align: center;
 }
 .school-more {
     color: #999 !important;
     font-size: 14px;
     text-decoration: none;
     padding-right: 15px;
 }

 /*城市标签按钮*/
 .city-tab {
     display: flex;
     flex-wrap: wrap;
     gap: 12px;
     margin-bottom: 30px;
     padding-left: 20px;
 }
 .city-btn {
     padding: 6px 20px;
     border: 1px solid #ddd;
     background: #fff;
     border-radius: 4px;
     font-size: 15px;
     cursor: pointer;
 }
 .city-btn.active {
     background: #2540b3;
     color: #fff;
     border-color: #2540b3;
 }

 /*左右分栏主体*/
 .school-main {
     display: flex;
     gap: 30px;
 }
 .school-left {
     width: 34%;
 }
 .school-right {
     flex: 1;
 }

 /*左侧分校卡片*/
 .school-item {
     padding: 5px;
     background: #fff;
     border-radius: 8px;
     margin-bottom: 16px;
     box-shadow: 0 1px 4px rgba(0,0,0,0.06);
 }
 .school-item h3 {
     font-size: 22px;
     margin: 0 0 16px;
     font-weight: 500;
 }
 .school-item p {
     font-size: 16px;
     color: #333;
     margin: 10px 0;
 }


 .download-tab-btn.active{
     background: var(--primary-color) !important;
     color:#fff !important;
     border-color: var(--primary-color) !important;
 }
 .download-item{
     display:flex;
     align-items:center;
     background:#fff;
     padding:16px;
     transition:0.2s;
     border-bottom: 1px solid #eee;
 }
 .download-item:hover{
     /*box-shadow:0 3px 12px rgba(0,0,0,0.08);*/
 }
 .download-icon{
     width:40px;
     height:40px;
     flex-shrink:0;
     margin-right:14px;
 }
 .download-info{
     flex:1;
 }
 .download-title{
     font-size:15px;color:#333;line-height:1.5;margin-bottom:4px;
 }
 .download-meta{
     font-size:13px;color:#999;
 }
 .download-free{
     color:#f54747;
     margin-right:12px;
 }
 .download-btn{
     padding:8px 22px;background:var(--primary-bg-color);color:var(--primary-color);border:none;border-radius:20px;cursor:pointer;font-size:14px;
     transition:0.2s;
 }
 .download-btn:hover{
     background: var(--primary-color);
     color:#fff;
 }

 /*隐藏滚动条（可选，美观）*/
 .lecturer-scroll-view::-webkit-scrollbar{
     height:4px;
 }
 .lecturer-scroll-view::-webkit-scrollbar-thumb{
     background:#ccc;
     border-radius:4px;
 }
 .lecturer-scroll-view::-webkit-scrollbar-track{
     background:#f1f1f1;
 }
 .scroll-prev:hover,.scroll-next:hover{
     background: #999 !important;
     color:#fff !important;
     font-size: 16px;
     opacity: 0.5;
     /*border-color:var(--primary-color) !important;*/
 }
 .scroll-prev:hover,.scroll-next:hover{
     background: #999 !important;
     color:#fff !important;
     font-size: 16px;
     opacity: 0.5;
     /*border-color:var(--primary-color) !important;*/
 }
 .dynamic-container {
     display: flex;
     gap: 30px;
     margin-top: 30px;
 }
 /* 左右两个区块，均分宽度 */
 .dynamic-block {
     flex: 1;
 }
 /* 标题栏：左标题，右MORE */
 .block-header {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 22px;
 }
 .block-header h3 {
     display: flex;
     align-items: center;
     font-size: 28px;
     font-weight: bold;
     margin: 0;
     color: #222;
     padding-left: 20px;
 }
 .block-header h3 img {
     margin-right: 8px;
 }
 .block-header .more a {
     font-size: 16px;
     color: #666;
     text-decoration: none;
 }

 /* 左侧视频卡片 */
 .video-card {
     position: relative;
     border-radius: 14px;
     overflow: hidden;
     padding: 20px;
 }
 .video-card img {
     width: 100%;
     display: block;
 }
 .play-circle {
     position: absolute;
     left: 50%;
     top: 50%;
     transform: translate(-50%, -50%);
     width: 80px;
     height: 80px;
     background: #fff;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
 }
 .play-circle::after {
     content: "";
     border-left: 24px solid #222;
     border-top: 14px solid transparent;
     border-bottom: 14px solid transparent;
 }

 /* 右侧资讯容器 白底圆角 */
 .news-wrap {
     background: #ffffff;
     border-radius: 14px;
     padding: 24px;
 }
 .dynamic-item {
     display: flex;
     gap: 18px;
     /*padding: 10px 0;*/
 }
 .dynamic-item:first-child {
     padding-top: 0;
 }
 .dynamic-item:last-child {
     padding-bottom: 0;
 }
 .dynamic-item > a {
     display: flex;
     gap: 18px;
     width: 100%;
     text-decoration: none;
 }
 .dy-img {
     width: 130px;
     height: 90px;
     flex-shrink: 0;
     border-radius: 6px;
     overflow: hidden;
 }
 .dy-img img {
     width: 100%;
     height: 100%;
     object-fit: cover;
 }
 .dy-info .dy-title {
     font-size: 16px;
     color: #222;
     margin: 0 0 8px;
     font-weight: 600;
 }
 .dy-info .dy-desc {
     font-size: 14px;
     color: #999;
     margin: 0;
     line-height: 1.6;
 }
 /* 移动端自适应 */
 @media(max-width:768px){
     .dynamic-container{
         flex-direction: column;
     }
 }

 .campus-module {
     width: 100%;
 }
 .module-head {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 30px;
 }
 .module-title {
     font-size: 42px;
     font-weight: bold;
     margin: 0;
     color: #222;
 }
 .more-link {
     font-size: 20px;
     color: #444;
     text-decoration: none;
 }

 .campus-card-wrap {
     display: flex;
     flex-wrap: wrap; /* 超出自动换行 */
     gap: 24px;       /* 卡片之间间距 */
     margin-left: 20px;
 }
 .campus-card {
     /* 这里设置你想要的固定宽度，例如 380px，可以自行修改 */
     width: 370px;
     flex-shrink: 0; /* ✅ 关键：禁止卡片被挤压缩小 */
     background: #fff;
     border-radius: 20px;
     /*overflow: hidden;*/
     box-shadow: 0 2px 16px rgba(0,0,0,0.05);
 }
 .card-img img {
     width: 100%;
     object-fit: cover;
     display: block;
 }
 .card-img{
     border-radius: initial !important;
 }
 .card-bottom {
     display: flex;
     justify-content: space-between;
     align-items: flex-start;
     padding: 20px;
     gap: 18px;
 }
 .card-info {
     flex: 1;
 }
 .campus-name {
     font-size: 24px;
     font-weight: bold;
     margin: 0 0 12px;
 }
 .campus-tel, .campus-addr {
     font-size: 16px;
     color: #333;
     margin: 9px 0;
     line-height: 1.5;
 }
 .card-qrcode img {
     width: 110px;
     height: 110px;
     display: block;
 }
 .school-item {
     width: 100%;
     padding: 40px;
     text-align: center;
     font-size:16px;
     color:#666;
 }
 .lecturer-wrap {
     width: 100%;
 }
 .lecturer-track {
     display: flex;
     animation: scrollMove 40s linear infinite;
 }
 /* 鼠标移入暂停动画 */
 .lecturer-wrap:hover .lecturer-track {
     animation-play-state: paused;
 }
 .lecturer-item {
     flex: 0 0 calc(25% - 12px); /* 一行4个，自动计算宽度，间距16px */
     margin-right: 16px;
 }
 .lecturer-image img {
     width: 100%;
     height: auto;
     display: block;
 }
 /* 滚动动画 */
 @keyframes scrollMove {
     0% {
         transform: translateX(0);
     }
     100% {
         transform: translateX(-50%);
     }
 }

 .gk-resource-box { padding: 40px 0; background: #f7f7f7; }
 .gk-main-title { margin-bottom: 32px; }
 .gk-main-title h2 {
     font-size: 26px; font-weight: bold; color: #222;
     position: relative; display: inline-block; padding: 0px;
 }
 .gk-main-title h2 span.line-left {
     position: absolute; left: -30px; top: 50%;
     width: 24px; height: 3px; background: #2A398A; transform: translateY(-50%);
 }
 .gk-main-title h2 span.dot-left {
     position: absolute; left: -34px; top: 50%;
     width: 8px; height: 8px; background: #2A398A; transform: translateY(-50%) rotate(45deg);
 }
 .gk-main-title h2 span.line-right {
     position: absolute; right: -30px; top: 50%;
     width: 24px; height: 3px; background: #2A398A; transform: translateY(-50%);
 }
 .gk-main-title h2 span.dot-right {
     position: absolute; right: -34px; top: 50%;
     width: 8px; height: 8px; background: #2A398A; transform: translateY(-50%) rotate(45deg);
 }
 .gk-resource-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
 .gk-card { background: #fff; border-radius: 6px; padding: 20px; }
 .gk-card-head {
     display: flex; justify-content: space-between; align-items: flex-end;
     border-bottom: 2px solid #2A398A; margin-bottom: 14px; position: relative;
 }
 .gk-card-title-tag {
     background: #2A398A; color: #fff; font-size: 18px; font-weight: bold;
     padding: 6px 16px; clip-path: polygon(0 0, 95% 0, 100% 100%, 0 100%);
 }
 .gk-card-title-tag img { width: 20px; height: 20px; }
 .gk-card-more { font-size: 14px; color: #999 !important; margin-bottom: 10px; }
 .gk-item {
     display: flex; justify-content: space-between; align-items: center;
     margin-bottom: 15px; font-size: 16px; margin-top: 5px; cursor: pointer;
 }
 .gk-item-text { color: #444; }
 .gk-btn-view {
     border: 1px solid #2A398A; color: #2A398A; background: #fff;
     border-radius: 20px; padding: 2px 10px; font-size: 12px; cursor: pointer;
 }
 @media (max-width:768px) {
     .gk-resource-grid { grid-template-columns: 1fr; }
     .gk-main-title h2 { font-size: 22px; }
 }
 .col-title { display: block !important; text-align: left !important; line-height: 30px; }
 .col-title img { vertical-align: middle; margin-right: 5px; }
 .news-more {
     float: right !important; font-size: 14px; color: #999 !important;
     font-weight: initial !important; line-height: 30px;
 }
 .news-more:hover { color: #999 !important; }
 .col { margin-left: 10px !important; }

 /* ================================================================
    【全国分校模块 - 修复版】
    1. 去掉 loop 循环模式，防止 slide 偏移裁切
    2. 箭头用 Unicode 字符，不依赖 Swiper 字体
    3. 外层留 44px padding，箭头不与卡片重叠
    ================================================================ */
 .school-wrap {
     margin: 20px 0;
     padding: 0 10px;              /* 左右边距 25px */
 }
 .school-top {
     display: flex; justify-content: space-between; align-items: center;
     margin-bottom: 16px; padding: 0 20px;
 }
 .city-tab {
     display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 20px; padding: 0 20px;
 }

 /* 外层：左右各留 44px 给箭头 */
 .school-swiper {
     margin-top: 20px;
     position: relative;
     padding: 0 20px;              /* 【关键】箭头占位空间 */
     overflow: visible;
 }
 /* 滚动容器：严格裁切 */
 .school-swiper .school-swiper-container {
     overflow: hidden;
     position: relative;
     width: 100%;
 }
 .school-swiper .swiper-wrapper {
     display: flex;
     align-items: stretch;
 }
 .school-swiper .swiper-slide {
     flex-shrink: 0 !important;
     box-sizing: border-box;
 }

 /* ========== 自定义箭头 ========== */
 .school-swiper .swiper-button-prev,
 .school-swiper .swiper-button-next {
     position: absolute;
     top: 45%;
     transform: translateY(-50%);
     width: 40px;
     height: 40px;
     border-radius: 50%;
     background: #333;
     opacity: 0.5;
     color: #fff;
     z-index: 10;
     margin-top: 0;
     outline: none;
     transition: all 0.2s ease;
     display: flex;
     align-items: center;
     justify-content: center;
 }
 .school-swiper .swiper-button-prev { left: 10px; }
 .school-swiper .swiper-button-next { right: 10px; }
 .school-swiper .swiper-button-prev:hover,
 .school-swiper .swiper-button-next:hover {
 }
 /* 【关键】用 Unicode 箭头，不依赖 Swiper 字体图标 */
 .school-swiper .swiper-button-prev:after {
     content: "\2039";   /* ‹ 左箭头 */
     font-size: 36px;
     padding-bottom: 5px;
 }
 .school-swiper .swiper-button-next:after {
     content: "\203A";   /* › 右箭头 */
     font-size: 36px;
 }
 /* 到边界时箭头变灰禁用 */
 .school-swiper .swiper-button-prev.swiper-button-disabled,
 .school-swiper .swiper-button-next.swiper-button-disabled {
     opacity: 0.35;
     cursor: not-allowed;
     pointer-events: none;
 }

 .campus-card {
     border: 1px solid #eee; border-radius: 8px !important; overflow: hidden;
     background: #fff; height: 100%;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }
 .campus-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,0.12); }
 .card-img { width: 100%; height: 300px; overflow: hidden; }
 .card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
 .campus-card:hover .card-img img { transform: scale(1.05); }
 .card-bottom { padding: 16px 12px; }
 .campus-name {
     font-size: 16px; font-weight: 600; color: #222; margin-bottom: 6px;
     white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
 }
 .campus-tel, .campus-addr {
     font-size: 13px; color: #888; line-height: 1.6; margin: 2px 0;
     white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
 }
 .campus-addr { font-size: 12px; color: #aaa; }
 .school-item { font-size: 14px; color: #999; text-align: center; padding: 30px 0; }

 /* 移动端适配 */
 @media (max-width: 992px) {

 }
 @media (max-width: 576px) {
     .school-wrap { padding: 0 12px; }
     .school-swiper { padding: 0 36px; }
 }
 .swiper-container{
     width: auto!important;
 }
 .dy-img img{
     width: 150px !important;
     height: 100px !important;
 }
 .video-card{
     margin-left: 30px !important;
 }
 .news-wrap{
     padding:0 !important;
     margin-bottom: 20px !important;
 }
 .dynamic-item{
     margin-bottom: 20px !important;
 }
 .dynamic-container{
     margin-bottom: 30px;
 }

 .school-swiper .school-swiper-container {
     overflow: hidden !important;
     position: relative;
     width: 100%;
 }

 .school-swiper .swiper-wrapper {
     display: flex !important;
     flex-wrap: nowrap !important;
     align-items: stretch;
     width: max-content !important;
     transition: none !important;
     will-change: transform;
 }

 .school-swiper .school-loop-slide {
     flex-shrink: 0 !important;
     box-sizing: border-box;
 }

 .school-loop-slide .campus-card {
     height: 100%;
 }
 .course-nav-title{
     text-indent: 20px;
     font-size: 26px;
     font-weight: bold;
     padding: 10px 0 10px 0;
 }
 .banner{
     margin-bottom: 0px !important;
 }
 .course-list{
     margin-top: 10px;
 }
 .background-set{
     margin-bottom: 15px;
 }
 .block-header h3{
     font-size:26px !important;
 }
 .hightlight.orange{
     margin-bottom: 5px;
 }
 .rounded-circle{
     object-fit: cover !important;
     object-position: top !important;
 }

