@charset "utf-8";
/* 简化列表样式 */
.simple-list {
    margin-top: 20px;
}

.list-item {
    border-bottom: 1px solid #eee;
    padding: 15px 0;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.list-item:hover {
    background-color: #f9f9f9;
    padding-left: 10px;
}

.item-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.item-title {
    flex: 1;
}

.item-title a {
    color: #333;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.5;
    transition: color 0.3s ease;
}

.item-title a:hover {
    color: #0066cc;
}

.item-date {
    color: #666;
    font-size: 14px;
    min-width: 100px;
    text-align: right;
}

/* 如果需要更紧凑的布局 */
.compact-list .list-item {
    padding: 10px 0;
}

.compact-list .item-title a {
    font-size: 14px;
}

.compact-list .item-date {
    font-size: 13px;
    min-width: 80px;
}
/* pagination.css - 分页美化样式 */

/* 分页容器 - 添加弹性布局 */
.pagination-container {
    display: block !important;
    flex-direction: column;
    align-items: center;
    text-align: center !important;
    margin: 40px 0;
}



.pagination-wrapper {
    display: inline-block;
    vertical-align: middle;
}

/* 分页样式 */
.pagination {
    display: inline-flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    background: white !important;
    border: 1px solid #e8e8e8 !important;
}

.pagination li {
    margin: 0 !important;
    border-right: 1px solid #f0f0f0 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.pagination li:last-child {
    border-right: none !important;
}

.pagination li:hover {
    background-color: #fafafa !important;
}

.pagination a,
.pagination span {
    display: block !important;
    padding: 12px 18px !important;
    color: #555 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    min-width: 44px !important;
    text-align: center !important;
    transition: all 0.2s ease !important;
    background: white !important;
}

.pagination a:hover {
    color: #1890ff !important;
    background: #f5f8ff !important;
}

/* 当前页样式 */
.pagination li.active {
    background: linear-gradient(135deg, #1890ff, #096dd9) !important;
}

.pagination li.active span {
    color: white !important;
    font-weight: 600 !important;
    background: transparent !important;
}

/* 禁用状态 */
.pagination li.disabled {
    background: #f8f9fa !important;
}

.pagination li.disabled span {
    color: #adb5bd !important;
    cursor: not-allowed !important;
    background: transparent !important;
}

/* 箭头特殊样式 */
.pagination li:first-child a,
.pagination li:first-child span,
.pagination li:last-child a,
.pagination li:last-child span {
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 12px 16px !important;
}

/* 移动端响应式 */
@media (max-width: 768px) {
    .pagination-row {
        flex-direction: column !important;
        gap: 10px !important;
    }

    .pagination-info {
        margin: 0 0 5px 0 !important;  /* 移动端改为下边距 */
        text-align: center !important;
    }

    .page-jump-container {
        width: 100% !important;
        justify-content: center !important;
    }

    .pagination-container {
        margin: 30px 0 !important;
    }

    .pagination {
        border-radius: 6px !important;
    }

    .pagination a,
    .pagination span {
        padding: 10px 14px !important;
        min-width: 40px !important;
        font-size: 13px !important;
    }

    .pagination li:first-child a,
    .pagination li:first-child span,
    .pagination li:last-child a,
    .pagination li:last-child span {
        padding: 10px 12px !important;
        font-size: 14px !important;
    }
}

/* 添加一些微妙的动画 */
@keyframes paginationFadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

.pagination li {
    animation: paginationFadeIn 0.3s ease forwards;
    opacity: 0;
}

.pagination li:nth-child(1) { animation-delay: 0.05s; }
.pagination li:nth-child(2) { animation-delay: 0.1s; }
.pagination li:nth-child(3) { animation-delay: 0.15s; }
.pagination li:nth-child(4) { animation-delay: 0.2s; }
.pagination li:nth-child(5) { animation-delay: 0.25s; }
.pagination li:nth-child(6) { animation-delay: 0.3s; }
.pagination li:nth-child(7) { animation-delay: 0.35s; }

/* 悬停效果增强 */
.pagination li:not(.disabled):not(.active):hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(24, 144, 255, 0.15) !important;
    z-index: 1 !important;
}

/* 分页信息提示 */

.pagination-info {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 15px !important;
    margin-bottom: 0 !important;
    clear: both !important;
    font-size: 14px !important;
    color: #666 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
/* 页面跳转区域 */

.page-jump-container {
    display:  inline-block !important;  /* 改为inline-flex以便同行显示 */
    justify-content: center;
    align-items: center;
    gap: 8px !important;  /* 减少间距 */
    flex-wrap: nowrap !important;
    margin: 0 !important;  /* 移除上边距 */
    vertical-align: middle !important;
    margin-left: 20px !important;
}


.page-jump-container input {
    width: 60px;
    padding: 8px 12px;
    border: 1px solid #d9d9d9;
    border-radius: 4px;
    text-align: center;
    font-size: 14px;
    transition: all 0.3s;
}

.page-jump-container input:focus {
    outline: none;
    border-color: #1890ff;
    box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}

.page-jump-container button {
    padding: 8px 16px;
    background: #1890ff;
    color: white;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s;
}

.page-jump-container button:hover {
    background: #40a9ff;
}

.page-jump-container .error {
    border-color: #ff4d4f !important;
    box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.2) !important;
}

.page-jump-container .error-message {
    color: #ff4d4f;
    font-size: 12px;
    width: 100%;
    text-align: center;
    margin-top: 5px;
}

/* 分页行容器 - 新增样式 */
.pagination-row {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    margin-bottom: 10px !important;
    width: 100% !important;
}



/* 备用方案：适用于原有HTML结构 */

/*根据模板的内容调整位置*/
.work .img-wrap {
    max-width: 1600px;    /* 根据需要调整 */
    margin: 0 auto;       /* 确保居中 */
    padding: 0 15px;      /* 保留适当内边距 */
}



/* 网格列表容器 */
.grid-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px; /* 间距，可按需调整 */
    margin-bottom: 40px;
}

/* 每个网格项 */
.grid-item {
    position: relative; /* 为绝对定位的链接准备 */
    background: #fff;
    transition: all 0.3s;
}

.grid-item .pic {
    width: 100%;
    aspect-ratio: 16 / 9; /* 固定图片宽高比，防止变形 */
    overflow: visible;
    margin-bottom: 15px;
}

.grid-item .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 保持图片比例裁剪 */
    transition: transform 0.3s ease;/* 过渡所有变化属性 */
    display: block; /* 避免图片底部空隙 */
}


.grid-item:hover .pic img {
    transform: scale(1.03); /* 配合微小的放大比例 */
    box-shadow: 0 15px 25px rgba(0,0,0,0.15);
}




/* 日期样式（） */
.grid-item .info .date {
    display: flex;
    align-items: baseline;
    margin-bottom: 8px;
}

.grid-item .info .day {
    font-size: 36px;
    font-weight: bold;
    color: #333;
    line-height: 1;
    margin-right: 5px;
}

.grid-item .info .ym {
    font-size: 16px;
    color: #999;
}

/* 标题样式 */
.grid-item .info .title {
    font-size: 18px;
    line-height: 1.4;
    color: #333;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 限制最多两行，文字少一点 */
    -webkit-box-orient: vertical;
    max-height: 2.8em; /* 备用 */
}

.grid-item .a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    text-indent: -9999px;
}

/* 移动端适配：一行两个 */
@media (max-width: 768px) {
    .grid-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}

@media (max-width: 480px) {
    .grid-list {
        grid-template-columns: 1fr;
    }
}
/* ===== 党建动态专用布局样式 ===== */
/* 大标题区域：无下边距 */
.dj-section-title {
    margin-bottom: 0;
}
.dj-section-title .dj-wrapper {
    padding-bottom: 0;
}
.dj-section-title .title {
    font-size: 28px;
    font-weight: bold;
    color: #c8102e; /* 主题色 */
}
.dj-section-title .title_en {
    font-size: 16px;
    color: #666;
    text-transform: uppercase;
}

/* 新闻区域：无上边距，紧贴标题 */
.dj-news-section {
    margin-top: 0;
    padding-top: 0;
}
.dj-news-section .dj-wrapper {
    padding-top: 0;
}

/* 新闻列表容器 */
.dj-news-list {
    width: 100%;
}

/* 特色文章（第一条大图） */
.dj-featured-news {
    display: block;
    text-decoration: none;
    color: inherit;
    margin-bottom: 20px; /* 与后续列表的间距 */
}
.dj-featured-img {
    width: 100%;
    height: 480px;          /* 按需调整数值 */
    overflow: hidden;
    line-height: 0;
    margin-bottom: 0;
    background-color: #f0f0f0;
}
.dj-featured-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;      /* 裁切以填充容器，保持比例 */
    display: block;
}
.dj-featured-caption {
    margin-top: 0;
    padding-top: 8px;      /* 让标题有点呼吸感，可根据需求调整 */
    font-size: 18px;
    font-weight: bold;
    color: #222;
    line-height: 1.4;
    background: none;       /* 移除原有可能的背景 */
}

/* 普通新闻列表项 */
.dj-news-item {
    border-bottom: 1px solid #eee;
    padding: 12px 0;
}
.dj-news-item:last-child {
    border-bottom: none;
}
.dj-news-item a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #333;
}
.dj-news-item a:hover {
    color: #c8102e;
}
.dj-news-title {
    flex: 1;
    font-size: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 20px;
}
.dj-news-date {
    font-size: 14px;
    color: #999;
    white-space: nowrap;
}
/* 让第一条文章链接作为相对定位容器 */
.dj-featured-news {
    position: relative;
    display: block;
}

/* 标题绝对定位，覆盖在图片上 */
/*
.dj-featured-news .dj-section-title {
    position: absolute;
    top: 0;                       !* 顶端对齐 *!
    left: 0;                      !* 左边缘对齐，宽度100%确保填满 *!
    width: 100%;                  !* 与图片等宽 *!
    background: rgba(255, 0, 0, 0.6); !* 红色半透明 *!
    color: #FFD700;               !* 金色文字 *!
    text-align: center;           !* 文字居中 *!
    padding: 12px 0;              !* 上下留白，左右无内边距（因为宽度已100%） *!
    border-radius: 0;             !* 移除圆角，保持直角 *!
    box-sizing: border-box;       !* 确保padding不溢出宽度 *!
    white-space: nowrap;          !* 防止标题换行（若标题很长可改为normal） *!
    margin: 0;                    !* 清除外边距 *!
    z-index: 10;
}*/
/* 标题覆盖层 - 置于第一张图片上方，右侧垂直居中 */
.dj-featured-news .dj-section-title {
    position: absolute;
    top: 50%;                     /* 从顶部50%开始 */
    right: 20px;                   /* 距离右侧边缘20px，可根据需要调整 */
    transform: translateY(-50%);   /* 向上平移自身高度的一半，实现完美垂直居中 */
    width: auto;                   /* 宽度自适应内容 */
    max-width: 80%;                /* 防止标题过长超出图片，可选 */
    background: rgba(255, 0, 0, 0.6); /* 红色半透明背景 */
    color: #fff;                   /* 白色文字 */
    text-align: center;            /* 文字居中（如需右对齐可改为right） */
    padding: 18px 18px;             /* 内边距，让文字有呼吸空间 */
    border-radius: 0;              /* 直角，如需圆角可自行调整 */
    box-sizing: border-box;
    white-space: nowrap;           /* 强制单行显示，若标题过长可改为normal并调整max-width */
    margin: 0;
    z-index: 10;
}

/* 主标题放大 */
.dj-featured-news .dj-section-title .title {
    font-size: 42px;
    font-weight: bold;
    line-height: 1.2;
    color: inherit;                /* 继承白色 */
}

/* 英文副标题 */
.dj-featured-news .dj-section-title .title_en {
    font-size: 20px;
    opacity: 0.9;
    letter-spacing: 1px;
    color: inherit;
}


/* 确保原文章标题（.dj-featured-caption）不受影响，仍在图片下方 */
.dj-featured-news .dj-featured-caption {
    /* 保持原样，无需改动 */
}
/* 标题覆盖层 - 置于第一张图片上方 */


/* 主标题放大 */
.dj-featured-news .dj-section-title .title {
    font-size: 42px;
    font-weight: bold;
    line-height: 1.2;
    color: inherit;               /* 继承金色 */
}

/* 英文副标题 */
.dj-featured-news .dj-section-title .title_en {
    font-size: 20px;
    opacity: 0.9;
    letter-spacing: 1px;
    color: inherit;
}


/* 人物介绍类模板 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/*.container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 0px;
    padding-top: 122.333px;
}*/

.container {
    position: relative;
    margin-top: 123px;
    width: 100%;
    min-width: 1250px;
    /*overflow: hidden;*/
    height: 100vh;

}
.module-container {
    position: relative;
    margin: auto;
    width: 100%;
    min-width: 1250px;
    /*overflow: hidden;*/
    height: 100vh;

}
/* 标题区域 */
.page-header {

    margin-bottom: 30px;
    border-bottom: 2px solid #b31b1b;
    padding-bottom: 15px;
    text-align: center;
}
.page-header h1 {
    font-size: 2.4rem;
    font-weight: 500;
    color: #222;
}
.page-header .subtitle1 {
    font-size: 2.7rem;
    font-weight: 500;
    color: #b31b1b;
    margin-top: 5px;
}
.page-header .subtitle2 {
    font-size: 1.5rem;
    color: #666;
    margin-top: 8px;
}

/* 轮播容器 */
.carousel-container {
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* 可视窗口，隐藏滚动条 */
.carousel-track-wrapper {
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.carousel-track-wrapper::-webkit-scrollbar {
    display: none;
}

/* 卡片轨道 */
.carousel-track {
    display: flex;
    width: max-content;
    padding: 20px 0;
    margin: 0;
    list-style: none;
}

/* 单个卡片 */
.carousel-item {
    flex: 0 0 220px;          /* 卡片固定宽度，可调整 */
    margin-right: 20px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.2s;
}
.carousel-item:hover {
    transform: translateY(-5px);
}

.carousel-item .pic {
    width: 100%;
    height: 160px;
    overflow: hidden;
}
.carousel-item .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.carousel-item .name {
    padding: 12px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
}

/* 详情区域 */
.detail-section {
    margin-top: 30px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
}
.detail-name {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}
.detail-bio {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}



/*用于欣慰列表模块的css*/
/* 全局重置 & 基础字体 */
/** {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background: #f5f7fa;
    font-family: 'Segoe UI', Roboto, system-ui, -apple-system, sans-serif;
    line-height: 1.5;
    color: #1e293b;
    min-height: 100vh;
    display: flex;
    align-items: flex-start;    !* 顶部对齐，让左侧区域更明显 *!
    justify-content: flex-start; !* 整体靠左 *!
    padding: 2rem 1rem;         !* 给一点内边距，避免贴边太死板 *!
}*/
.module-default{
    width: 100%;
    height:100vh;
    margin: 0;
    padding: 0;
    max-width: 1400px;
}
/*.section{
    width: 100%;
    margin: 0;
    padding: 0;
}*/
.module {
    width: 100%;
    margin: 0;
    padding: 0;
    height: calc(100vh - 123px)
}
/* ----- 全新命名 (完全仿照原结构但重新定义class) ----- */
.edu-continuing-sectionC {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg3.png),
    url(../images/bg3.png); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
}
.edu-continuing-sectionD {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg4.png),
    url(../images/bg3.png); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px 30px 0 30px;
}
.edu-continuing-sectionE {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg5.png),
    url(../images/bg3.png); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
}
.edu-continuing-sectionF {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg6.png),
    url(../images/bg3.png); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
}
.edu-continuing-sectionG {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg7.jpg),
    url(../images/bg3.png); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
}
.edu-continuing-sectionI {
    width: 100%;
    height: 100%;
    background-image:  radial-gradient(circle at 20% 30%, rgba(200, 220, 190, 0.15) 0%, transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(160, 190, 150, 0.12) 0%, transparent 50%);
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
}
.edu-continuing-section {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg3.png),
    url(../images/bg3.png); /* 替换为实际图片路径 */
   /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */
    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px 0 0 0;
    box-sizing: border-box;
}
/* 主容器：宽度为屏幕70%，左侧对齐，右侧自然留白30% */
.ce-container {
    width: 80%;
    max-width: 1000px;          /* 大屏幕时限制最大宽，避免过宽 */
    margin-left: 15px;
    margin-right: auto;          /* 只向左看齐 */
    background: transparent;
    height: 100%;

}
.ce-center{
    width: 100%;
    height: 90%;
    display: flex;
    align-items: center;
}
/* 标题区 */
.ce-header {
   /* margin-bottom: 2rem;*/

    display: flex;
    align-items: center;
    justify-content: space-between;  /* 两组分居左右 */
    flex-wrap: wrap;
    gap: 1rem;
}


.title-group {
    display: flex;
    align-items: baseline;           /* 按基线对齐 */
    gap: 0.5rem;                     /* 主副标题间距 */
}

.ce-title-main {
    font-size: 2.2rem;
    margin: 0;
}

.ce-title-sub {
    font-size: 1rem;
    color: #5f6b7a;
    text-transform: uppercase;
    margin: 0;
}

.more_news {
    /* 样式同上 */
    text-decoration: none;
    font-weight: 600;

    display: inline-flex;
    align-items: center;
    gap: 0.2rem;

    font-size: 0.9rem;          /* 调小字体 */
    color: rgba(179, 27, 27, 0.5); /* 半透明红色 (原纯色 #b31b1b) */
    margin-top: 0.5rem;

}
.edu-continuing-sectionB {
    width: 100%;
    height:100vh;
    background-image:
    linear-gradient(rgba(255,255,255,0.7), rgba(255,255,255,0.7)),
    url(../images/bg2.jpg); /* 替换为实际图片路径 */
    /* background-size: cover;  */    /* 覆盖整个容器，可能裁剪 */

    background-repeat: no-repeat, no-repeat;
    background-position: right, left;
    background-size:  100% 100%,100% 100%,100%,100%;
    padding: 30px;
    display: flex;
    flex-direction: column;
}


/* 主容器：宽度为屏幕70%，左侧对齐，右侧自然留白30% */
.edu-continuing-sectionB .ce-container {
    width: 99%;
    max-width: 1200px;          /* 大屏幕时限制最大宽，避免过宽 */
    margin-left: 20px;
    margin-right: auto;          /* 只向左看齐 */
    background: transparent;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 183px); /* 确保高度继承，填满父容器 */
}

/* 标题区 */
/*.ce-header {
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;  !* 两组分居左右 *!
    flex-wrap: wrap;
    gap: 1rem;

}*/
#datalist {
    flex: 1;                /* 自动拉伸填满 */
    display: flex;
    flex-direction: column;
}
.simple-list {
    flex: 1;                /* 占满 #datalist */
    display: flex;
    flex-direction: column;
    justify-content: space-between;  /* 列表项等间距分布 */
    /* 如果希望顶部和底部也有间距，可改用 space-around */
}





.title-group {
    display: flex;
    align-items: baseline;           /* 按基线对齐 */
    gap: 0.5rem;                     /* 主副标题间距 */
}

.ce-title-main {
    font-size: 2.2rem;
    margin: 0;
}

.ce-title-sub {
    font-size: 1rem;
    color: #5f6b7a;
    text-transform: uppercase;
    margin: 0;
}

.more_news {
    /* 样式同上 */
    text-decoration: none;
    font-weight: 600;

    display: inline-flex;
    align-items: center;
    gap: 0.2rem;

    font-size: 0.9rem;          /* 调小字体 */
    color: rgba(179, 27, 27, 0.5); /* 半透明红色 (原纯色 #b31b1b) */
    margin-top: 0.5rem;

}



.ce-title-main {
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: 1px;
    color: #0f3b5e;
    line-height: 1.2;
    position: relative;
    display: inline-block;
}

.ce-title-main::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 60px;
    height: 4px;
    background: #b31b1b;
    border-radius: 4px;
}

.ce-title-sub {
    font-size: 1rem;
    font-weight: 400;
    color: #5f6b7a;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-top: 0.5rem;
}

/* 卡片网格 — 两列并排，gap清晰 */
/* ========== 卡片网格：上下布局，靠左 ========== */
.ce-grid {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;          /* 两张卡片间距，可根据视口微调 */
    width: 100%;
    padding-left:calc(6vw);
    padding-top: max(0px, calc(33vh - 245px));
}

/* ========== 卡片样式：高度限制在视口 35% 内，且保持 16:9 ========== */
.ce-card {
    position: relative;
    /* 核心：宽度 = 父容器宽度与 (33vh * 16/9) 中的较小值，从而保证高度 ≤ 35vh */
    width: min(100%, calc(33vh * 16 / 9));

    /* 保持 16:9 比例，高度自动 = width * 9/16 */
    aspect-ratio: 16 / 9;

    background: #ffffff;
    box-shadow: 0 20px 30px -10px rgba(0, 20, 30, 0.15);
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(0,0,0,0.02);
    border-radius: 0;

    /* 飞入动画 */

    animation: slideInLeft 1.5s cubic-bezier(0.2, 0.9, 0.4, 1.1) forwards;
    opacity: 0;
    transform: translateX(-20px);
}

/* 依次飞入延迟 */
.ce-card:first-child { animation-delay: 0.1s; }
.ce-card:last-child  { animation-delay: 0.3s; }

/* 飞入关键帧 */
@keyframes slideInLeft {
    0% { opacity: 0; transform: translateX(-40px); }
    100% { opacity: 1; transform: translateX(0); }
}

/* 卡片链接 */
.ce-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
    width: 100%;
    height: 100%;
}

/* 图片容器 — 填满卡片，无需 padding 技巧 */
.ce-card-figure {
    width: 100%;
    height: 100%;
    background-color: #e2e8f0;
    overflow: hidden;
    position: relative;
}

/* 图片 — 填满容器，保持比例裁剪 */
.ce-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s cubic-bezier(0.2, 0.9, 0.4, 1.1);
}

.ce-card-link:hover .ce-card-img {
    transform: scale(1.05);
}

/* 文字叠加层 — 浮于图片底部 */
.ce-card-label {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1rem;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.3) 60%, transparent);
    backdrop-filter: blur(2px);
    color: #ffffff;
    font-weight: 700;
    font-size: 1.2rem;
    line-height: 1.4;
    text-align: left;
    pointer-events: none;   /* 让文字不干扰点击 */
    transition: background 0.2s;
}

.ce-card-link:hover .ce-card-label {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.4));
}

/* 响应式：矮屏或小屏可适当减小间距和字号 */
@media (max-height: 700px) {
    .ce-grid {
        gap: 0;
    }
    .ce-card-label {
        font-size: 1rem;
        padding: 0.7rem;
    }
}

@media (max-height: 550px) {
    .ce-card {
        /* 进一步限制最大高度为 30vh，保证两张卡片完全可见 */
        width: min(100%, calc(30vh * 16 / 9));
    }
    .ce-card-label {
        font-size: 0.85rem;
        padding: 0.5rem;
    }
}
/*一附图片➕介绍的CSS*/

.hero-image-wrapper {
    position: relative;   /* 保持绝对定位文字的参考 */
    width: 100%;
    height: calc(100vh - 153px);         /* 关键：高度撑满父容器 */
    overflow: hidden;     /* 保险 */
}


/* 图片自适应填满，不变形 */
.hero-image-wrapper img {
    width:100%;

    height: 100%;
    object-fit: cover;     /*确保图片覆盖整个区域，可能裁剪边缘，适合背景图 */
    display: block;
}


/* 右侧文字浮层保持现有样式即可，无需改动 */
.hero-overlay {
    position: absolute;
    top: 183px;
    right: 30px;                    /* 改为固定像素，更可控 */
    transform: translateY(-50%);
    width: 480px;
    max-width: calc(100% - 60px);   /* 保证左右至少留有30px边距 */
    padding: 28px 30px;
    color: #333;                     /* 深色文字，与浅色背景对比 */
    background: rgba(255, 255, 255, 0.2); /* 半透明白色背景，0.85可调整 */
    backdrop-filter: blur(2px);      /* 轻微模糊效果，可选 */
    border-radius: 2px;              /* 可选圆角 */
    box-shadow: 0 4px 15px rgba(0,0,0,0.2); /* 增加层次感 */
    text-shadow: none;               /* 有了背景后不需要文字阴影，或保留很淡的阴影 */
}


/* 主标题：学校简介 */
.hero-overlay .main-title {
    font-size: 42px;           /* 调大 */
    font-weight: 700;
    margin-bottom: 5px;
    color: #ffc107;            /* 可保留或修改 */
    line-height: 1.2;
}

/* 拼音副标题：XueXiaoJianJie */
.hero-overlay .sub-title {
    font-size: 38px;           /* 比主标题更大 */
    font-weight: 600;
    margin-bottom: 15px;
    color: #570303;            /* 白色，更突出 */
    text-transform: uppercase; /* 可选：全大写 */
    letter-spacing: 2px;       /* 增加字间距 */
    line-height: 1.1;
}

/* 内容摘要 */
.hero-overlay .introduce-content {
    font-size: 14px;           /* 调大 */
    line-height: 1.7;
    margin-bottom: 25px;       /* 为按钮留出空间 */
    color: #4c1919;
}

/* 查看详情按钮 */
.hero-overlay .detail-btn {
    display: inline-block;
    padding: 12px 30px;
    background-color: #ffc107; /* 金色背景 */
    color: #333;               /* 深色文字 */
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 40px;       /* 圆角 */
    transition: all 0.3s ease;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    border: none;
    cursor: pointer;
}

/* 按钮悬停效果 */
.hero-overlay .detail-btn:hover {
    background-color: #e0a800;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.3);
}

/* 移动端适配 */
@media (max-width: 768px) {
    .hero-overlay {
        padding: 20px;
    }
    .hero-overlay .main-title {
        font-size: 28px;
    }
    .hero-overlay .sub-title {
        font-size: 36px;
    }
    .hero-overlay .introduce-content {
        font-size: 16px;
    }
    .hero-overlay .detail-btn {
        padding: 10px 25px;
        font-size: 16px;
    }
}



/*走马灯图片css */

     /* 全局重置 */
 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

body {
    font-family: "Microsoft YaHei", sans-serif;
    background: #f5f5f5;
    padding: 20px;
}

/* 轮播容器 */

.carousel-container {
    position: relative;
    width: 100%;
    max-width: 100%;       /* 不再限制最大宽度，但可通过 padding 留白 */
    height: 70vh;          /* 占据视口高度的 70%，可根据喜好调整（如 60vh） */
    margin: 0 auto;
    overflow: hidden;      /* 隐藏超出部分 */
    display: flex;
    flex-direction: column;
    justify-content: center; /* 垂直居中内部轨道 */
}

/* 可视窗口（滚动条容器）：高度由内容撑开，但受父容器限制 */
.carousel-track-wrapper {
    overflow-x: auto;
    overflow-y: hidden;    /* 禁止垂直滚动 */
    scroll-behavior: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* 宽度自适应，高度自动 */
    width: 100%;
    height: auto;
}

/* 图片轨道 - 使用 flex 对齐 */
.carousel-track {
    display: flex;
    width: max-content;
    padding: 0;            /* 移除上下内边距，让卡片紧贴容器 */
    list-style: none;
    align-items: center;   /* 让所有卡片在垂直方向居中对齐（如果卡片高度不一） */
}

/* 卡片：高度基于父容器（视口高度）的百分比，灵活适应 */
.carousel-item {
    flex: 0 0 auto;
    width: clamp(200px, 15vw, 320px);   /* 宽度仍相对视口宽度 */
    height: 85%;                         /* 卡片高度占轨道高度的 85%，留出上下间距 */
    margin-right: 1.5vw;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    overflow: hidden;
    transition: transform 0.3s ease;
    cursor: pointer;
    display: flex;
    flex-direction: column;              /* 内部图片和标题垂直排列 */
}

/* 图片区域：占据卡片大部分空间 */
.carousel-item .pic {
    width: 100%;
    flex: 1;              /* 自动填满除去标题后的剩余空间 */
    aspect-ratio: 3 / 4;
    overflow: hidden;
}


/* 图片本身：填满图片区域，保持比例裁剪 */
.carousel-item .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 标题区域：固定高度，不缩放 */
.carousel-item .title {
    padding: 12px;
    text-align: center;
    font-size: clamp(14px, 2vw, 18px);
    font-weight: 500;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 0;       /* 防止被压缩 */
}

/* 超大屏微调（可选） */
@media (min-width: 2560px) {
    .carousel-container {
        height: 65vh;      /* 稍降低比例，避免过高 */
    }
    .carousel-item {
        width: clamp(260px, 12vw, 380px);
    }
}
@media (min-width: 3840px) {
    .carousel-container {
        height: 60vh;
    }
    .carousel-item {
        width: 320px;      /* 固定合适宽度，或继续使用 clamp */
    }
}


/*
.carousel-track-wrapper {
    overflow-x: auto;
    scroll-behavior: auto;    !* 改为 auto 或直接删除 *!
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}*/


.carousel-track-wrapper::-webkit-scrollbar {
    display: none; /* Chrome/Safari隐藏滚动条 */
}

/* 图片轨道，宽度由内容撑开 */
/*.carousel-track {
    display: flex;
    width: max-content;
    padding: 25px 0;
    list-style: none;
}*/

/* 图片卡片 */


/* 卡片自适应宽度 */
/*.carousel-item {
    flex: 0 0 auto;
    width: clamp(240px, 12vw, 360px);
    margin-right: 1.5vw;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    overflow: hidden;
    transition: transform 0.3s ease;
    cursor: pointer;
}*/


.carousel-item:hover {
    transform: translateY(-5px);
}

/* 图片区域 */
/*.carousel-item .pic {
    width: 100%;
    height: 300px;
    overflow: hidden;
}

.carousel-item .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;        !* 保持比例，裁剪多余部分 *!
    display: block;
}

!* 图片容器保持比例 *!
.carousel-item .pic {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
}
.carousel-item .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

!* 超大屏微调 *!
@media (min-width: 2560px) {
    .carousel-item {
        width: clamp(300px, 9vw, 420px);
    }
}
@media (min-width: 3840px) {
    .carousel-container {
        padding: 20px 10vw;
    }
}




!* 图片标题 *!
.carousel-item .title {
    padding: 12px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
*/
/* 可选：加载提示 */
.loading {
    text-align: center;
    padding: 50px;
    font-size: 18px;
    color: #999;
}


/* ===== 基础重置 ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: system-ui, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
}

body {
    background: linear-gradient(145deg, #f1f5f9 0%, #f8fafc 100%);
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.5rem;
    overflow-x: hidden; /* 防止水平溢出 */
}

/* ===== 主容器 ===== */
.edu-wrapper {
    max-width: 1280px;  /* 调整为1200px，更常见 */
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(2px);
    border-radius: 2.5rem;
    box-shadow: 0 25px 50px -12px rgba(0, 20, 30, 0.25);
    padding: 2.5rem 2rem;
    border: 1px solid rgba(255, 255, 255, 0.7);
}

/* ===== 双列等高 flex 容器 ===== */
.edu-two-column {
    display: flex;
    align-items: stretch;
    gap: 2rem;
}

/* ===== 左侧列 ===== */
.edu-left-col {
    flex: 1.3;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* 标题块 */
.edu-title-block {
    border-left: 6px solid #1e3c5c;
    padding-left: 1.2rem;
    margin-bottom: 3rem;
}

.edu-title-block h1 {
    font-size: clamp(2.4rem, 6vw, 3.8rem);
    font-weight: 600;
    line-height: 1.1;
    color: #0b2b40;
    letter-spacing: -0.02em;
    margin-bottom: 0.5rem;
}

.edu-subtitle {
    font-size: 1rem;
    font-weight: 350;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: #3f5e75;
    word-break: keep-all;
    border-bottom: 1px dashed #a0c0d4;
    padding-bottom: 0.6rem;
    display: inline-block;
}

/* 左侧图片容器（整体下移） */
.edu-left-image-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 1.5rem;
}

/* 图片上方的信息行：标题和更多按钮 */
.edu-left-image-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
    padding: 0 0.2rem;
}

.edu-left-caption {
    font-size: 1.2rem;
    font-weight: 520;
    color: #183b52;
    letter-spacing: 0.5px;
    border-bottom: 2px dotted #9bb7d4;
    padding-bottom: 0.2rem;
}

/* 更多按钮 */
.edu-more-btn {
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(30, 60, 92, 0.25);
    padding: 0.3rem 1.4rem;
    border-radius: 40px;
    font-size: 0.95rem;
    font-weight: 500;
    color: #1e3c5c;
    letter-spacing: 0.8px;
    backdrop-filter: blur(4px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
    transition: all 0.2s;
    cursor: pointer;
    display: inline-block;
    line-height: 1.4;
    text-decoration: none;
}

.edu-more-btn:hover {
    background: rgba(255, 255, 255, 1);
    border-color: #1e3c5c;
    box-shadow: 0 6px 14px rgba(30, 60, 92, 0.15);
    transform: translateY(-1px);
}

.edu-more-btn:after {
    content: " →";
    font-size: 1rem;
    margin-left: 4px;
    opacity: 0.8;
    transition: margin 0.2s;
}

.edu-more-btn:hover:after {
    margin-left: 8px;
    opacity: 1;
}

/* 左侧图片占位符（16:9，无圆角，仅阴影） */
.edu-left-image-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: linear-gradient(135deg, #d9e2ec, #b6c9da);
    box-shadow: 0 12px 24px -10px rgba(20, 50, 70, 0.2);
    overflow: hidden; /* 防止图片溢出 */
    display: block;   /* 改为块级，避免flex干扰 */
    border: none;
}

.edu-left-image-placeholder a,
.edu-left-image-placeholder img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; /* 确保图片填充且不变形 */
}

.edu-left-image-placeholder:hover {
    transform: scale(1.01);
    box-shadow: 0 20px 28px -12px #1e3c5c66;
}

/* ===== 右侧列：上下两张图片，间距0.8rem ===== */
.edu-right-col {
    flex: 1.0;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

/* 右侧卡片（无框） */
.edu-right-card {
    flex: 1;
    display: flex;
    flex-direction: column;
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
}

/* 右侧图片标题（胶囊，放在图片上方） */
.edu-right-caption {
    font-size: 1.1rem;
    font-weight: 520;
    color: #153e57;
    letter-spacing: 0.5px;
    background: rgba(255, 255, 255, 0.7);
    padding: 0.2rem 1rem;
    border-radius: 40px;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.3rem;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}

/* 右侧图片占位符（16:9，无圆角，仅阴影） */
.edu-right-image-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: linear-gradient(145deg, #cbdbe9, #b0c6da);
    box-shadow: 0 6px 14px -6px #1f3f57;
    overflow: hidden;
    display: block;
    border: none;
}

.edu-right-image-placeholder a,
.edu-right-image-placeholder img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.edu-right-image-placeholder:hover {
    transform: scale(1.01);
    box-shadow: 0 20px 28px -12px #1e3c5c66;
}

/* 占位元素（用于第一张卡片） */
.edu-flex-filler {
    flex: 1;
    min-height: 0;
}

/* 第二张卡片：图片底部对齐卡片底部 */
.edu-right-card:last-child .edu-right-image-placeholder {
    margin-top: auto;
}

/* ===== 脚注 ===== */
.edu-footnote {
    margin-top: 2.5rem;
    text-align: right;
    opacity: 0.4;
    font-size: 0.85rem;
    color: #2d4f6c;
    border-top: 1px dashed #b3cbd9;
    padding-top: 1rem;
}

/* ===== 响应式优化 ===== */
@media (max-width: 900px) {
    .edu-two-column {
        gap: 1.5rem;
    }
    .edu-left-col {
        flex: 1.2;
    }
    .edu-right-col {
        flex: 1.0;
    }
}

@media (max-width: 800px) {
    .edu-two-column {
        flex-direction: column;
    }
    .edu-right-col {
        gap: 0.8rem;
    }
    /* 确保图片容器宽度不受影响 */
    .edu-left-image-placeholder,
    .edu-right-image-placeholder {
        max-width: 100%;
    }
}

@media (max-width: 550px) {
    .edu-title-block h1 {
        font-size: 2.8rem;
    }
    .edu-subtitle {
        letter-spacing: 4px;
        font-size: 0.9rem;
    }
    body {
        padding: 1rem;
    }
    .edu-wrapper {
        padding: 1.5rem 1rem;
    }
}

/*配套模块CSS*/

.gl-wrapper {
    max-width: 1200px;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(2px);
    border-radius: 2.5rem;
    box-shadow: 0 25px 50px -12px rgba(0, 20, 30, 0.25);
    padding: 2.5rem 2rem;
    border: 1px solid rgba(255, 255, 255, 0.7);
}

.gl-header {
    border-left: 6px solid #1e3c5c;
    padding-left: 1.2rem;
    margin-bottom: 3rem;
}

.gl-header h1 {
    font-size: clamp(2.4rem, 6vw, 3.8rem);
    font-weight: 600;
    line-height: 1.1;
    color: #0b2b40;
    letter-spacing: -0.02em;
    margin-bottom: 0.5rem;
}

.gl-subtitle {
    font-size: 1rem;
    font-weight: 350;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: #3f5e75;
    word-break: keep-all;
    border-bottom: 1px dashed #a0c0d4;
    padding-bottom: 0.6rem;
    display: inline-block;
}

.gl-row {
    margin-top: 5px;
    width: 100%;
    display: flex;
    gap: 1.8rem;
    flex-wrap: wrap;
}

.gl-item {
    flex: 1 1 280px;
    display: flex;
    flex-direction: column;
    background: rgba(255, 255, 255, 0.4);
    border-radius:0.5rem;
    padding: 1rem 1rem 1.5rem 1rem;
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.9);
    box-shadow: 0 8px 18px -6px rgba(20, 40, 60, 0.12);
    transition: all 0.2s;
}

.gl-item:hover {
    background: rgba(255, 255, 255, 0.7);
    border-color: #c3d9ec;
}

.gl-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: linear-gradient(135deg, #d9e2ec, #b6c9da);
    box-shadow: 0 12px 24px -10px rgba(20, 50, 70, 0.2);
    overflow: hidden;
    display: block;
    border: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gl-image:hover {
    transform: scale(1.01);
    box-shadow: 0 20px 28px -12px #1e3c5c66;
}

.gl-image a,
.gl-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gl-caption {
    text-align: center;
    margin-top: 0.5rem;
    font-size: 1.2rem;
    font-weight: 520;
    color: #183b52;
    letter-spacing: 0.5px;
    border-bottom: 2px dotted #9bb7d4;
    padding-bottom: 0.4rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.gl-top-caption {
    text-align: center;
    margin-top: 0.5rem;
    font-size: 1.5rem;
    font-weight: 520;
    color: #670202;
    letter-spacing: 0.5px;
    border-bottom: 2px dotted #9bb7d4;
    padding-bottom: 0.2rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.gl-footnote {
    margin-top: 3rem;
    text-align: right;
    opacity: 0.4;
    font-size: 0.85rem;
    color: #2d4f6c;
    border-top: 1px dashed #b3cbd9;
    padding-top: 1rem;
}

@media (max-width: 800px) {
    .gl-row {
        gap: 1.2rem;
    }
}

@media (max-width: 650px) {
    .gl-item {
        flex: 1 1 100%;
    }
    .gl-header h1 {
        font-size: 2.8rem;
    }
    .gl-subtitle {
        letter-spacing: 4px;
        font-size: 0.9rem;
    }
    body {
        padding: 1rem;
    }
    .gl-wrapper {
        padding: 1.5rem 1rem;
    }
}
/* 双列卡片网格 */
.grid-duo {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin: 1.5rem 0 1rem;
}


/* 一行三列网格 */
.grid-trio {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    /*margin:  calc(50vh - 60px - 55px - 110px)) 0 1rem;*/
    margin: max(0px,calc((100vh - 191px - (calc(((100vw - 60px - 48px) / 3) * 9 / 16) )) / 2)) 0 1rem;
}

/* 响应式：小屏时自动换行（保持可读性） */
@media (max-width: 800px) {
    .grid-trio {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}
/* 单个卡片 */
.card-item {
    flex: 1 1 280px;
    min-width: 240px;
    background: #fff;
    transition: all 0.3s ease;
    box-shadow: 0 12px 28px -10px rgba(0, 30, 40, 0.12);
    border: 1px solid rgba(200, 212, 230, 0.4);
    overflow: visible;
}

/* 可点击链接区域 */
.card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    height: 100%;
    overflow: hidden;
    transition: background 0.2s;
}
.card-link:hover {
    background: #f9fcff;
}
.card-link:hover .card-image img {
    transform: scale(1.03);
    transition: transform 0.25s ease;
}

/* 图片容器 */
.card-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background-color: #e3e9f2;

}

/* 图片基本样式 */
.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    will-change: transform;
}


/* 卡片日期样式 - 靠左对齐 */
.card-date {
    display: flex;
    align-items: baseline;
    justify-content: flex-start;    /* 改为靠左 */
    padding: 0 1rem 1rem 1rem;
    background-color: #fff;
    gap: 4px;
}

/* 日期数字和年月样式保持不变 */
.card-date .day {
    font-size: 36px;
    font-weight: bold;
    color: #2c3e4e;
    line-height: 1;
    margin-right: 4px;
}

.card-date .ym {
    font-size: 16px;
    color: #7f8c8d;
}

/* 鼠标悬停时日期区域背景微调（可选） */
.card-link:hover .card-date {
    background-color: #f9fcff;
}
/* 卡片标题样式 */

/* 卡片标题样式 - 调高容器 */
.card-title {
    padding: 0.8rem 0 0.5rem 0;   /* 上下内边距增加，使容器更高 */
    font-size: 1.1rem;           /* 大号字体 */
    font-weight: 600;
    color: #2c3e4e;
    text-align: center;
    line-height: 1.4;
    background-color: #f0f4ea;
    border-radius: 0 0 0 0;
    border-top: 1px solid #eef2f7;
    min-height: 3em;              /* 保证至少两行高度，避免过矮 */
}

.card-link:hover .card-title {
    background-color: #f9fcff;
}




.card-link:hover .card-title {
    background-color: #f9fcff;
}

/* 限制标题最多两行，超出省略（可选） */
.card-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* ===== 随机动画库 ===== */
@keyframes slideInLeft {
    0% { transform: translateX(-100%); opacity: 0.3; }
    100% { transform: translateX(0); opacity: 1; }
}
@keyframes slideInRight {
    0% { transform: translateX(100%); opacity: 0.3; }
    100% { transform: translateX(0); opacity: 1; }
}
@keyframes slideInUp {
    0% { transform: translateY(100%); opacity: 0.3; }
    100% { transform: translateY(0); opacity: 1; }
}
@keyframes slideInDown {
    0% { transform: translateY(-100%); opacity: 0.3; }
    100% { transform: translateY(0); opacity: 1; }
}
@keyframes fadeInScale {
    0% { opacity: 0; transform: scale(0.8); }
    100% { opacity: 1; transform: scale(1); }
}

/* 动画类绑定 */
.slideInLeft { animation-name: slideInLeft; }
.slideInRight { animation-name: slideInRight; }
.slideInUp { animation-name: slideInUp; }
.slideInDown { animation-name: slideInDown; }
.fadeInScale { animation-name: fadeInScale; }

.animated {
    animation-duration: 0.7s;
    animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    animation-fill-mode: both;
}

/* 隐藏的图片数据源 */
.image-data-source {
    display: none;
}

/* 小屏适配 */
@media (max-width: 700px) {
    .research-carousel {
        padding: 1.2rem 1rem;
        margin-top: 100px;
    }
    .section-header {
        flex-wrap: wrap;      /* 小屏时允许换行 */
        gap: 0.5rem;
    }
    .more-link {
        margin-left: 0;
    }
    .grid-duo {
        flex-direction: column;
        gap: 1.2rem;
    }
    .card-item {
        width: 100%;
    }
}

/* ==================== 修改后的通知通告css ==================== */
/* 修改：左侧置顶通告，右侧公共列表，通过色块显示错落优雅感 */
/* 如果导航栏实际高度不同，请调整这里的值 */


/* 主内容：无外边距，无间隙，左右紧贴 */
/* 主容器：强制不换行 */
.main-content {
    height: calc(100vh - 123px);
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0;
    padding: 0;
    margin: 0;
    background: #f2efe7;
    overflow: hidden;
    width: 100%;
}

/* 左侧面板 */
.left-panel {
    flex: 0 0 61.8%;
    max-width: 61.8%;
    display: flex;
    flex-direction: column;
    height: 100%;
    background: transparent;
    overflow: hidden;
    min-width: 0;
}

.article-headline {
    background: #ffffff;
    border-radius:  0;
    margin: 0;
    padding: 28px 28px 28px 28px;
    box-shadow: 0 8px 20px -8px rgba(0, 0, 0, 0.05);
}
.article-headline .section-tag {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #b5452c;
    font-weight: 700;
    background: #fef1e6;
    display: inline-block;
    padding: 3px 12px;
    border-radius: 50px;
    margin-bottom: 10px;
}
.article-headline h2 {
    font-size: 1.8rem;
    font-weight: 700;
    color: #1f2a2e;
    letter-spacing: -0.3px;
    line-height: 1.2;
    margin-bottom: 0;
    word-break: break-word;
}

.feature-image-card {
    position: relative;
    flex: 1;
    margin: 0;
    border-radius: 0 ;
    overflow: hidden;
    box-shadow: 0 20px 35px -12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    background-color: #2e1c1a;
    min-height: 0;
}
.feature-image-card .bg-img-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../images/bg8.png');
    background-size: cover;
    background-position: center 30%;
    background-repeat: no-repeat;
    z-index: 0;
    transition: transform 0.5s ease;
}
.feature-image-card .overlay-red {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(110, 25, 25, 0.72);
    z-index: 1;
    backdrop-filter: brightness(0.94);
}
.image-content {
    position: relative;
    z-index: 2;
    padding: 42px 36px;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: white;
}
.image-content .badge-star {
    background: rgba(255, 215, 140, 0.2);
    backdrop-filter: blur(8px);
    width: fit-content;
    padding: 6px 16px;
    border-radius: 60px;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 1px;
    border: 0.5px solid rgba(255,245,210,0.5);
    margin-bottom: 12px;
}
.image-content h3 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 12px;
    text-shadow: 0 2px 5px rgba(0,0,0,0.3);
    word-break: break-word;
}
.image-content .excerpt {
    font-size: 1rem;
    opacity: 0.92;
    line-height: 1.5;
    margin-bottom: 20px;
    max-width: 90%;
}
.image-content .meta {
    font-size: 0.85rem;
    display: flex;
    gap: 18px;
    opacity: 0.8;
    border-top: 1px solid rgba(255,255,210,0.3);
    padding-top: 14px;
    margin-top: 8px;
}
.image-content .read-more {
    margin-top: 8px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
    font-size: 0.9rem;
    border-bottom: 1px solid rgba(255,255,210,0.7);
    width: fit-content;
    transition: 0.2s;
    text-decoration: none;
    color: white;
}
.feature-image-card:hover .read-more {
    border-bottom-color: #ffdf9c;
    transform: translateX(5px);
}
.feature-image-card:hover {
    transform: translateY(-4px);
}
.feature-image-card:hover .bg-img-layer {
    transform: scale(1.05);
}

/* 右侧面板 */
.right-panel {
    flex: 0 0 38.2%;
    max-width: 38.2%;
    background: #f9eedb;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    box-shadow: -4px 0 16px -8px rgba(0, 0, 0, 0.05);
    margin: 0;
    padding: 28px 28px 32px 28px;
    border-radius: 0;
    min-width: 0;
}
.right-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-bottom: 2px solid #c2a06e;
    margin-bottom: 20px;
    padding-bottom: 10px;
}
.right-header .title_ch {
    font-size: 1.9rem;
    font-weight: 700;
    color: #2d2b24;
    letter-spacing: -0.2px;
    position: relative;
    padding-left: 30px;
}
.right-header .title_ch:after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 5px;
    height: 40px;
    background: #880404;
    border-radius: 0;
}
.right-header .more-link {
    font-size: 0.85rem;
    color: #8f6a3c;
    text-decoration: none;
    font-weight: 500;
    transition: 0.2s;
    display: flex;
    align-items: center;
    gap: 6px;
}
.right-header .more-link:hover {
    color: #ab601f;
    gap: 10px;
}

.bulletin-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}
.list-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    border-bottom: 1px solid #e2cfb0;
    padding-bottom: 8px;
    transition: transform 0.2s, border-bottom-color 0.2s;
    /* 确保背景永不改变 */
    background-color: transparent;
}
/* 悬停时只移动和改变边框颜色，背景绝对不变 */
.list-item:hover {
    transform: translateX(6px);
    border-bottom-color: #c8a97c;
    background-color: transparent;
}
.list-item .item-title {
    font-size: 0.95rem;
    font-weight: 600;
    color: #2b2a24;
    line-height: 1.35;
    flex: 1;
    word-break: break-word;
}
.list-item .item-title a {
    text-decoration: none;
    color: inherit;
    background-color: transparent;
    transition: color 0.2s;
}
/* 链接悬停时只改变文字颜色，背景无任何变化 */
.list-item .item-title a:hover {
    color: #b45f2b;
    background-color: transparent;
}
.list-item .date {
    font-size: 0.7rem;
    color: #8a7658;
    white-space: nowrap;
    font-weight: 450;
    background: rgba(190, 150, 100, 0.15);
    padding: 2px 6px;
    border-radius: 20px;
}

.more-bottom {
    margin-top: 24px;
    text-align: right;
}
.more-bottom .more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #886e48;
    font-weight: 500;
    text-decoration: none;
    font-size: 0.8rem;
    border-bottom: 1px solid #dabb92;
    padding-bottom: 2px;
    transition: 0.2s;
}
.more-bottom .more:hover {
    color: #aa6f39;
    gap: 10px;
}
.right-panel::-webkit-scrollbar {
    width: 5px;
}
.right-panel::-webkit-scrollbar-track {
    background: #e7ddcf;
    border-radius: 10px;
}
.right-panel::-webkit-scrollbar-thumb {
    background: #bc9a6b;
    border-radius: 10px;
}

/* 移动端适配：窄屏时垂直排列，但不影响背景悬停 */
@media (max-width: 720px) {
    .main-content {
        flex-direction: column;
        height: auto;
        min-height: calc(100vh - 123px);
    }
    .left-panel, .right-panel {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .right-panel {
        margin-top: 0;
    }
}

/* ==================== 修改：添加顶部间距避免被导航栏遮挡 ==================== */
/* 修改：为内容主体添加顶部内边距，假设导航栏高度为80px */
/* 如果导航栏实际高度不同，请调整这里的值 */


.department-container {
    /* padding: 0px 0 30px 0; 修改：添加顶部内边距40px，底部保持30px */
    padding-top: 0;
    min-height: auto;
}

/* 修改：调整标题区的上边距，因为容器已经有padding了 */
.department-header {
    text-align: center;
    margin-bottom: 40px;
    padding-top: 0; /* 修改：从20px改为0，因为容器已经有padding了 */
}

/* 标题样式保持不变 */
.department-header .title {
    font-size: 34px;
    color: #222;
    font-weight: 700;
    margin-bottom: 8px;
    letter-spacing: 1px;
}

.department-header .title_en {
    font-size: 14px;
    color: #888;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-weight: 400;
}

/* 主容器保持不变 */
.department-wrapper {
    display: flex;
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
}

/* 左侧：图片展示区（文字重叠） */
.department-left {
    flex: 0 0 60%;
    position: sticky;
    top: 60px;
    height: fit-content;
}

.image-container {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1);
    aspect-ratio: 15/ 8;
    min-height: 200px;
    height: auto; /* 固定高度 */
}

.image-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
}

.image-wrapper:hover .main-image {
    transform: scale(1.05);
}

/* 文字叠加在图片上 */
.image-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 30px;
    background: linear-gradient(transparent, rgba(0,0,0,0.7));
    color: white;
    z-index: 2;
}

.image-info h3 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 10px;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.image-info p {
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 20px;
    opacity: 0.9;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3);
}

/* 查看详情按钮在图片内 - 加大 */
.view-more {
    padding-top: 15px;
    border-top: 1px solid rgba(255,255,255,0.2);
}

.view-btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 24px; /* 增加padding */
    background: rgba(255,255,255,0.95);
    color: #c7254e;
    text-decoration: none;
    border-radius: 24px; /* 更大的圆角 */
    font-weight: 600;
    font-size: 16px; /* 字体加大 */
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.view-btn:hover {
    background: white;
    transform: translateX(3px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}

.view-btn .icon {
    margin-left: 8px; /* 图标间距加大 */
    font-size: 18px; /* 箭头图标加大 */
    transition: transform 0.3s ease;
}

.view-btn:hover .icon {
    transform: translateX(4px);
}

/* 右侧：专业列表（极简风格） */
.department-right {
    flex: 0 0 35%;

}


.department-list {
    max-height: max(330px , calc(100vh - 123px - 70px ) ) ;        /* 根据三项总高度调整，可先用此值测试 */
    overflow-y: auto;         /* 超出时显示垂直滚动条 */
    padding-right: 10px;      /* 为滚动条预留空间，避免内容被遮挡（可选） */
    scrollbar-gutter: stable; /* 现代浏览器：滚动条占位不抖动 */
}
/* 删除专业列表标题，改用简单的顶部分隔线 */
.department-list {
    border-top: 1px solid #eee;
    padding-top: 10px;
}

.department-list::-webkit-scrollbar {
    width: 4px;
}
.department-list::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}
.department-list::-webkit-scrollbar-thumb {
    background: #c7254e;
    border-radius: 4px;
}
.department-list::-webkit-scrollbar-thumb:hover {
    background: #a01d40;
}

/* 专业项样式 - 极简设计 */
.department-item {
    border-bottom: 1px solid #eee;
    transition: all 0.2s ease;
    position: relative;
}

.department-item:last-child {
    border-bottom: none;
}

.department-item.active {
    background-color: rgba(199, 37, 78, 0.03);
}

.department-item:hover {
    background-color: rgba(199, 37, 78, 0.02);
}

.item-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.item-contentr {
    display: flex;
    align-items: center;
    padding: 15px 0; /* 增加内边距 */
    min-height: 50px; /* 增加最小高度 */
}

/* 移除了图标，改为更简洁的数字序号 */
.item-contentr::before {
    content: attr(data-index);
    font-size: 14px; /* 数字加大 */
    color: #999;
    width: 24px; /* 宽度加大 */
    text-align: center;
    margin-right: 15px;
    flex-shrink: 0;
    font-weight: 500; /* 数字加粗 */
}

.item-info {
    flex: 1;
}

.item-info h4 {
    font-size: 18px; /* 专业名称加大 */
    color: #222;
    font-weight: 600;
    margin-bottom: 5px; /* 增加间距 */
    line-height: 1.3;
}

.en-name {
    font-size: 14px; /* 英文名称加大 */
    color: #666;
    margin-bottom: 4px; /* 增加间距 */
    font-style: italic;
    display: block;
}

.brief {
    font-size: 14px; /* 描述文字加大 */
    color: #888;
    margin: 0;
    line-height: 1.5; /* 增加行高 */
    display: -webkit-box;
    -webkit-line-clamp: 1; /* 显示两行 */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* 简洁的箭头指示 */
.item-arrow {
    margin-left: auto;
    padding-left: 15px; /* 增加左边距 */
}

.arrow {
    font-size: 20px; /* 箭头加大 */
    color: #c7254e;
    opacity: 0.6;
    transition: all 0.3s ease;
}

.department-item:hover .arrow {
    opacity: 1;
    transform: translateX(3px);
}

.department-item.active .arrow {
    opacity: 1;
}

/* 图片切换动画 */
@keyframes fadeIn {
    from { opacity: 0.8; }
    to { opacity: 1; }
}

.main-image.fade-in {
    animation: fadeIn 0.5s ease;
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .department-wrapper {
        flex-direction: column;
        gap: 30px;
    }

    .department-left,
    .department-right {
        flex: none;
        width: 100%;
    }

    .department-left {
        position: static;
    }

    .image-container {
        height: 350px;
    }

    .department-list {
        max-height: 400px;
    }
}

@media (max-width: 768px) {
    .department-container {
        /*padding: 30px 0;  保持响应式下的内边距 */
        padding-top: 0
    }

    .department-header .title {
        font-size: 28px;
    }

    .department-header .title_en {
        font-size: 12px;
        letter-spacing: 2px;
    }

    .image-container {
        aspect-ratio: 16 / 7.5;  /* 宽高比16:9，高度自动适应宽度 */
        height: auto;
        min-height: 200px;

    }

    .image-info {
        padding: 20px;
    }

    .image-info h3 {
        font-size: 22px;
    }

    .image-info p {
        font-size: 14px;
    }

    .view-btn {
        padding: 8px 20px;
        font-size: 15px;
    }

    .item-contentr {
        padding: 16px 0; /* 移动端保持较大内边距 */
    }

    .item-info h4 {
        font-size: 16px; /* 移动端保持较大字体 */
    }

    .en-name, .brief {
        font-size: 13px; /* 移动端保持较大字体 */
    }

    .department-list {
        max-height: 380px;
    }

}

/* 触摸设备优化 */
@media (hover: none) {
    .department-item:hover {
        background-color: transparent;
    }

    .arrow {
        opacity: 1;
    }
}

/* 滚动条美化 */
.department-list {
    overflow-y: auto;
    padding-right: 8px;
}

.department-list::-webkit-scrollbar {
    width: 3px;
}

.department-list::-webkit-scrollbar-track {
    background: #f5f5f5;
    border-radius: 2px;
}

.department-list::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 2px;
}

.department-list::-webkit-scrollbar-thumb:hover {
    background: #ccc;
}

/* 右侧列表计数（可选效果） */
.department-item:nth-child(odd) .item-contentr::before {
    color: #c7254e;
    font-weight: 600;
}

.department-item:nth-child(even) .item-contentr::before {
    color: #666;
}

/* 专业列表悬停效果增强 */
.department-item:hover .item-info h4 {
    color: #c7254e;
    transition: color 0.2s ease;
}

.department-item:hover .brief {
    color: #666;
    transition: color 0.2s ease;
}

/* 激活状态增强 */
.department-item.active {
    border-left: 3px solid #c7254e;
    padding-left: 5px;
}

.department-item.active .item-info h4 {
    color: #c7254e;
}
/* 备用方案：适用于原有HTML结构 */




/* ==================== 左列表右图布局（用于特定页面） ==================== */
/* 使用时需在 department-wrapper 上添加类名 layout-right-image */

/* 左侧列表（原右侧列表样式）占40% */
.layout-right-image .department-left {
    flex: 0 0 40%;
    position: static; /* 列表不需要粘性定位 */
}

/* 右侧图片（原左侧图片样式）占60%，保留粘性定位 */
.layout-right-image .department-right {
    flex: 0 0 60%;
    position: sticky;
    top: 60px;
    height: fit-content;
}

/* 响应式覆盖：小屏时改为纵向排列 */
@media (max-width: 1200px) {
    .layout-right-image .department-wrapper {
        flex-direction: column;
    }
    .layout-right-image .department-left,
    .layout-right-image .department-right {
        flex: none;
        width: 100%;
    }
    .layout-right-image .department-right {
        position: static; /* 取消粘性 */
    }
}

/* ==================== 修复滚动条导致列表偏移 ==================== */
.department-list {
    scrollbar-gutter: stable; /* 现代浏览器：自动预留滚动条空间，避免内容跳动 */
    padding-right: 15px;      /* 为滚动条预留足够空间（兼容旧浏览器） */
    box-sizing: border-box;   /* 确保内边距包含在宽度内，不撑大容器 */
}

/* 将滚动条移到左侧（仅适用于左列表右图布局） */
.layout-right-image .department-list {
    direction: rtl;                 /* 改变滚动条位置到左侧 */
    padding-left: 15px;             /* 为滚动条在左侧预留空间（原padding-right改为padding-left） */
    padding-right: 0;               /* 移除右侧预留空间 */
}

.layout-right-image .department-list .department-item {
    direction: ltr;                 /* 内部内容恢复从左到右，不影响阅读 */
}

/* 简化左侧列表（仅保留标题，隐藏英文名和简介） */
.layout-right-image .department-list .en-name,
.layout-right-image .department-list .brief {
    display: none;
}

.layout-right-image .department-list .item-info h4 {
    font-size: 18px;
    margin-bottom: 0;
    font-weight: 600;
    color: #222;
}

.layout-right-image .department-list .item-contentr {
    padding: 15px 0;
    min-height: auto;
}

/* 如果希望隐藏箭头，取消下面注释 */

/*.layout-right-image .department-list .item-arrow {
    display: none;
}*/


/* ----- 重置 & 基础 ----- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* 科研模块容器 - 缩小尺寸并向下移动避开导航 */
.research-carousel {
    max-width: 1400px;
    width: 100%;
    background: #ffffff;

    box-shadow: 0 30px 60px -15px rgba(0, 20, 30, 0.2);
    padding: 1.5rem 1.5rem;
    transition: box-shadow 0.3s;
    margin-top: 123px;           /* 避开上方导航菜单 */
}

/* 标题区 - 改为flex布局，使标题组和更多按钮同行 */
.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.8rem;
    border-left: 5px solid #b22222;
    padding-left: 1.2rem;
}

/* 标题组（主标题+副标题） */
.title-group {
    flex: 1;
}
.title-group .main-title {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 1px;
    color: #0b1e2f;
    line-height: 1.2;
}
.title-group .sub-title {
    font-size: 0.9rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #5e6f88;
    margin-top: 0.2rem;
    letter-spacing: 1.5px;
}

/* 更多链接样式 - 简洁、半透明红色、小字号 */
.more-link {
    font-size: 0.9rem;
    color: rgba(179, 27, 27, 0.6);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    transition: color 0.2s;
    white-space: nowrap;
    margin-left: 1rem; /* 与标题保持间距 */
}
.more-link:hover {
    color: rgba(179, 27, 27, 1);
}
.more-link .icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    background: currentColor;
    mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/></svg>') no-repeat center/contain;
    -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/></svg>') no-repeat center/contain;
    background-color: currentColor;
}


/* 更多链接样式 - 简洁、半透明红色、小字号 */
.more-link {
    font-size: 0.9rem;
    color: rgba(179, 27, 27, 0.6);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    transition: color 0.2s;
    white-space: nowrap;
    margin-left: 1rem; /* 与标题保持间距 */
}
.more-link:hover {
    color: rgba(179, 27, 27, 1);
}
.more-link .icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    background: currentColor;
    mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/></svg>') no-repeat center/contain;
    -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/></svg>') no-repeat center/contain;
    background-color: currentColor;
}
/* 标题组（主标题+副标题） */
.title-group {
    flex: 1;
}
.title-group .main-title {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 1px;
    color: #0b1e2f;
    line-height: 1.2;
}
.title-group .sub-title {
    font-size: 0.9rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #5e6f88;
    margin-top: 0.2rem;
    letter-spacing: 1.5px;
}

/* 标签样式 - 可根据实际调整 */
.tab-buttons {
    text-align: center;
    margin: 20px 0 30px;
    border-bottom: 2px solid #eee;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}
.tab-btn {
    background: #f5f5f5;
    border: none;
    padding: 10px 30px;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s;
    border-radius: 10px 10px 0 0;
    font-weight: 500;
}
.tab-btn.active {
    background:#8B0000; /* #2c7cb6;*/
    color: #fff;
    border-bottom: 2px solid #ffa500;
}
.list-container {
    display: none;
}
.list-container.active-list {
    display: block;
}
/* 保留原有列表样式 */
.list .li {
    position: relative;
}
.pagination-wrapper {
    text-align: center;
}

/* 两张图片栏目的样式*/
/* 卡片容器 */
/* 唯一类名，全局安全 */
/* 确保父容器宽度足够 */
.coop-cards-wrapper {
    margin-top: 30px;
    width: 100%;
}

.coop-cards-grid {
    display: flex;
    flex-wrap: nowrap;      /* 强制不换行 */
    gap: 30px;
    justify-content: space-between;
    width: 100%;
}

.coop-card {
    flex: 1;                /* 等分剩余宽度 */
    min-width: 0;           /* 防止内容溢出撑开 */
    cursor: pointer;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.coop-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.12);
}
.coop-card-image {
    position: relative;
    width: 100%;
    padding-top: 66.67%; /* 3:2 比例，可按需调整 */
    overflow: hidden;
}
.coop-card-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.coop-card:hover .coop-card-image img {
    transform: scale(1.05);
}
.coop-card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.85), rgba(0,0,0,0.4) 70%, transparent);
    padding: 20px 20px 25px;
    color: #fff;
    transition: all 0.3s ease;
}
.coop-card-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.coop-card-desc {
    font-size: 0.9rem;
    line-height: 1.5;
    opacity: 0.9;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.coop-card-link {
    display: inline-block;
    font-size: 0.85rem;
    font-weight: 500;
    color: #ffd966;
    border-bottom: 1px solid #ffd966;
    padding-bottom: 2px;
    transition: color 0.2s, border-color 0.2s;
}
.coop-card:hover .coop-card-link {
    color: #ffc107;
    border-bottom-color: #ffc107;
}
@media (max-width: 768px) {
    .coop-cards-grid {
        flex-direction: column;
        gap: 20px;
    }
    .coop-card-overlay {
        padding: 15px 15px 20px;
    }
    .coop-card-title {
        font-size: 1.1rem;
    }
}