.tieleh1 {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.ym-stats-scope {
    width: 100%;
    font-family: "Microsoft YaHei";
}

/* 自带局部的外边距重置，防止被外部父级列表样式干扰 */
.ym-stats-scope ul,
.ym-stats-scope li {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* --- 模块 1 专属样式 --- */
.ym-stats-bar {
    width: 100%;
    background: linear-gradient(135deg, #0854ff 0%, #0b213d 100%);
    padding: 20px;
    display: flex;
    justify-content: center;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.ym-stats-bar::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 20px 20px;
    pointer-events: none;
}

.ym-stats-container {
    width: 100%;
    max-width: 1240px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    z-index: 2;
}

.ym-neon-logo-box {
    display: flex;
    align-items: center;
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ymgkimg1 {
    width: 120px;
}

.ym-neon-seal {
    padding: 8px 12px;
    border: 2px solid #44a8ef;
    border-radius: 12px;
    color: #a5c8fc;
    font-size: 14px;
    font-weight: bold;
    writing-mode: vertical-lr;
    text-orientation: upright;
    letter-spacing: 4px;
    background: rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 15px rgba(68, 152, 239, 0.4);
    box-sizing: border-box;
}

.ym-stats-data-list {
    display: flex;
    flex: 1;
    justify-content: space-around;
}

.ym-stats-data-item {
    text-align: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 20px 15px;
    border-radius: 16px;
    min-width: 140px;
    backdrop-filter: blur(4px);
    box-sizing: border-box;
}

.ym-data-label {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
    margin: 8px;
    display: block;
}

.ym-crypto-num {
    font-size: 30px;
    font-weight: 800;
    color: #ffffff;
    font-family: "Microsoft YaHei";
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.2);
}

/* --- 模块 2 专属样式 --- */
.ym-honor-wall {
    padding: 0px 10px;
    width: 100%;
    max-width: 1340px;
    margin: 70px auto;
    box-sizing: border-box;
}

.ym-honor-title-area {
    text-align: center;
    margin-bottom: 50px;
}

.ym-sub-badge {
    display: inline-block;
    background: #fef2f2;
    color: #1876f2;
    font-size: 12px;
    font-weight: 800;
    padding: 5px 15px;
    border-radius: 30px;
    margin-bottom: 15px;
    border: 1px solid #fee2e2;
}

.ym-wall-heading {
    font-size: 30px;
    font-weight: 800;
    color: #0f172a;
    margin: 0;
}

.ym-wall-heading em {
    font-style: normal;
    font-size: 36px;
    background: #1876f2;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ym-honor-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.ym-honor-card {
    background: #ffffff;
    border: 1px solid #eef2f6;
    border-radius: 20px;
    padding: 35px 20px;
    text-align: center;
    transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.3s ease;
    opacity: 0;
    transform: translateY(40px);
    box-sizing: border-box;
    /* box-shadow: 0 -2px 8px rgba(59, 130, 246, 0.08), 0 0 20px rgba(59, 130, 246, 0.1), 0 8px 32px rgba(59, 130, 246, 0.18), 0 16px 48px rgba(37, 99, 235, 0.12); */
    box-shadow: 0 -2px 8px rgba(59, 130, 246, 0.08), 0 0 10px rgba(59, 130, 246, 0.1), 0 4px 16px rgba(59, 130, 246, 0.18), 0 8px 24px rgba(37, 99, 235, 0.12);
}

.ym-honor-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.06);
    border-color: #1876f2;
}

.ym-score-val {
    font-size: 40px;
    font-weight: 900;
    color: #1876f2;
    font-family: "Microsoft YaHei";
    margin-bottom: 8px;
}

.ym-score-val span {
    font-size: 16px;
    margin-left: 2px;
}

.ym-honor-tag {
    font-size: 14px !important;
    display: inline-block;
    border: 1.5px solid #1876f2;
    color: #1876f2;
    font-size: 12px;
    font-weight: 800;
    padding: 3px 12px;
    border-radius: 6px;
    margin-bottom: 18px;
}

.ym-honor-card:hover .ym-honor-tag {
    background: #1876f2;
    color: #fff;
}

.ym-exam-info {
    font-size: 16px;
    color: #64748b;
    font-weight: 500;
    line-height: 1.5;
}

/* --- 动画激活状态类 --- */
.ym-stats-scope .is-visible.ym-stats-bar .ym-neon-logo-box {
    opacity: 1;
    transform: scale(1);
}

.ym-stats-scope .is-visible.ym-honor-wall .ym-honor-card {
    opacity: 1;
    transform: translateY(0);
}

/* 独立延迟器 */
.ym-honor-card:nth-child(1) {
    transition-delay: 0.0s;
}

.ym-honor-card:nth-child(2) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(3) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(4) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(5) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(6) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(7) {
    transition-delay: 0.1s;
}

.ym-honor-card:nth-child(8) {
    transition-delay: 0.1s;
}

.ym-marquee-scope {
    max-width: 1340px;
    /* padding: 50px 0; */
    /* background-color: #f8fafc; */
    font-family: "Microsoft YaHei";
    overflow: hidden;
    box-sizing: border-box;
}

.ym-marquee-header {
    text-align: center;
    margin-bottom: 35px;
}

.ym-marquee-badge {
    display: inline-block;
    background: #e0f2fe;
    color: #1876f2;
    font-size: 11px;
    font-weight: 800;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 10px;
    border: 1.5px solid #bae6fd;
}

.ym-marquee-title {
    font-size: 26px;
    font-weight: 800;
    color: #0f172a;
    margin: 0;
}

.ym-marquee-title span {
    background: linear-gradient(135deg, #1876f2 0%, #0284c7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ym-marquee-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    position: relative;
}

.ym-marquee-track {
    display: flex;
    user-select: none;
    gap: 24px;
    width: 100%;
    overflow: visible;
    padding: 14px 0;
}

.ym-marquee-group {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding-right: 24px;
    min-width: 100%;
}

/* 动画逻辑 */
.ym-track-to-left .ym-marquee-group {
    animation: ymScrollLeftBlue 26s linear infinite;
}

.ym-delay-track .ym-marquee-group {
    animation-duration: 30s;
}

.ym-marquee-track:hover .ym-marquee-group {
    animation-play-state: paused !important;
}

/* PC端默认胶囊卡片样式 */
.ym-marquee-item {
    display: flex;
    margin: 0px 20px;
    align-items: center;
    box-sizing: border-box !important;
    background-color: rgba(201, 219, 253, 0.85) !important;
    padding: 12px 24px;
    border-radius: 40px;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
    transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
    /* cursor: pointer; */
    white-space: nowrap;
}

/* PC端Hover状态 */
.ym-marquee-item:hover {
    transform: translateY(-3px);
    border-top-color: #1876f2 !important;
    border-bottom-color: #1876f2 !important;
    border-left-color: #1876f2 !important;
    border-right-color: #1876f2 !important;
    box-shadow: 0 10px 24px rgba(24, 118, 242, 0.3) !important;
}

/* 内部核心字体排版元素 */
.ym-badge-icon {
    margin-right: 10px;
    font-size: 18px;
}

.ym-student-name {
    font-weight: 800;
    color: #0f172a;
    margin-right: 12px;
    font-size: 15px;
}

.ym-job-info {
    color: #334155;
    font-size: 14px;
    margin-right: 18px;
    font-weight: 600;
}

.ym-student-score {
    background: #073583;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
    padding: 4px 14px;
    border-radius: 20px;
    font-family: "Microsoft YaHei";
    letter-spacing: 0.5px;
}

.ym-marquee-item:hover .ym-student-score {
    background: #073583;
}

@keyframes ymScrollLeftBlue {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-100% - 24px));
    }
}

/* ==========================================
   百度SEO精品课程模块 - 专属安全隔离CSS
   ========================================== */
.baidu-seo-course-module {
    min-height: 750px;
    width: 1340px;
    /* margin: 30px auto; */
    box-sizing: border-box;
}

.baidu-seo-course-module *,
.baidu-seo-course-module *::before,
.baidu-seo-course-module *::after {
    box-sizing: border-box !important;
}

.baidu-seo-course-module .section-header {
    text-align: center;
    margin-bottom: 35px;
}

.baidu-seo-course-module .section-title {
    font-size: 22px;
    color: #1876f2;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
}

.baidu-seo-course-module .section-title::before,
.baidu-seo-course-module .section-title::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 3px;
    background-color: #1876f2;
    border-radius: 2px;
}

.baidu-seo-course-module .course-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* 1. 基础样式：只保留位移和阴影过度，去掉 will-change / backface-visibility */
.baidu-seo-course-module .course-card {
    background: #f8fafc;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #cbd5e1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 0 8px rgba(0, 0, 0, 0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    text-decoration: none;
    display: block;
}

/* 2. Hover 状态：移除 scale，加大 translateY 的距离来增强“浮起感” */
.baidu-seo-course-module .course-card:hover {
    transform: translateY(-6px);
    /* 用明显的上浮代替缩放，视觉效果更精致且文字绝对清晰 */
    border-color: #1876f2;
    box-shadow: 0 12px 24px rgba(24, 118, 242, 0.18), 0 4px 12px rgba(24, 118, 242, 0.1);
}

.baidu-seo-course-module .card-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    background-color: #1876f2;
    overflow: hidden;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.baidu-seo-course-module .card-image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.baidu-seo-course-module .card-content {
    padding: 10px;
    background: #f8fafc;
    text-align: left;
}

.baidu-seo-course-module .course-title {
    font-size: 16px;
    color: #1e293b;
    font-weight: 700;
    margin: 0 0 8px 0;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.3s ease;
}

.baidu-seo-course-module .course-card:hover .course-title {
    color: #1876f2;
}

.baidu-seo-course-module .course-teacher {
    font-size: 14px;
    color: #000000;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.course-desc {
    font-size: 14px;
    padding-top: 5px;
    color: #696969;
}

.ax-exp-wrapper {
    --theme-color: #1876f2;
    font-family: "Microsoft YaHei";
    background-color: #f8fafc;
    padding: 40px 20px;
    box-sizing: border-box;
}

.ax-exp-wrapper *,
.ax-exp-wrapper *::before,
.ax-exp-wrapper *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.ax-exp-wrapper .experience-section {
    max-width: 1340px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    text-align: left;
}

.ax-exp-wrapper .section-title {
    font-size: 24px;
    font-weight: 700;
    color: #1e293b;
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
    position: relative;
    line-height: 1.2;
}

.ax-exp-wrapper .section-title::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 22px;
    background-color: var(--theme-color);
    border-radius: 4px;
    margin-right: 10px;
    flex-shrink: 0;
}

.ax-exp-wrapper .experience-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 30px;
    list-style: none !important;
    margin: 0;
    padding: 0;
}

.ax-exp-wrapper .experience-item {
    position: relative;
    padding-left: 20px;
    margin: 0;
    list-style-type: none !important;
}

.ax-exp-wrapper .experience-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background-color: var(--theme-color);
    border-radius: 1px;
}

.ax-exp-wrapper .experience-link {
    font-size: 15px;
    color: #475569;
    text-decoration: none !important;
    line-height: 1.6;
    display: inline-block;
    transition: all 0.25s ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    border: none;
    background: none;
}

.ax-exp-wrapper .experience-link:hover {
    color: var(--theme-color) !important;
    text-decoration: underline !important;
    transform: translateX(4px);
}

.experience-section {
    max-width: 1340px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 12px;
    padding-top: 30px;
    /* box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03); */
}

.section-title {
    font-size: 24px;
    font-weight: 700;
    color: #1e293b;
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
    position: relative;
}

.section-title::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 22px;
    background-color: #1876f2;
    border-radius: 4px;
    margin-right: 10px;
}

.experience-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 30px;
    list-style: none;
}

.experience-item {
    position: relative;
    padding-left: 20px;
}

.experience-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background-color: #1876f2;
    border-radius: 1px;
}

.experience-link {
    font-size: 16px;
    color: #475569;
    text-decoration: none;
    line-height: 1.6;
    display: inline-block;
    transition: all 0.25s ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

.experience-link:hover {
    color: #1876f2;
    text-decoration: underline;
    transform: translateX(4px);
}

/* 师资 */
.teacher-module {
    font-family: "Microsoft YaHei";
    /* background-color: #f0f4fa; */
    color: #333333;
    line-height: 1.5;
    width: 100%;
    overflow-x: hidden;
}

.teacher-module *,
.teacher-module *::before,
.teacher-module *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.teacher-module .container.pages {
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
}

.teacher-module .page-header {
    text-align: center;
    margin-bottom: 30px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.teacher-module .page-title {
    font-size: 36px;
    color: #1876f2;
    font-weight: 600;
    margin-bottom: 12px;
    letter-spacing: 1px;
}

.teacher-module .page-subtitle {
    font-size: 16px;
    color: #666666;
    position: relative;
    display: inline-block;
    padding-bottom: 15px;
}

.teacher-module .page-subtitle::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 3px;
    background-color: #0052cc;
    border-radius: 2px;
}

.teacher-module .teacher-container {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding: 15px 0;
}

.teacher-module .teacher-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 5px 5px rgba(0, 82, 204, 0.15);
    /* box-shadow: 0 15px 35px rgba(0, 82, 204, 0.15); */
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 82, 204, 0.15);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    width: 100%;
}

.teacher-module .teacher-card a {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.teacher-module .teacher-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 2px 4px rgba(0, 82, 204, 0.25);
    border-color: rgba(0, 82, 204, 0.4);
}

.teacher-module .image-wrapper {
    position: relative;
    width: 100%;
    height: 300px;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background-color: #e6f0ff;
}

.teacher-module .image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.teacher-module .teacher-card:hover .image-wrapper img {
    transform: scale(1.05);
}

.teacher-module .info-wrapper {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-grow: 1;
}

.teacher-module .teacher-meta {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    flex-wrap: wrap;
    gap: 8px;
}

.teacher-module .teacher-name {
    font-size: 18px;
    color: #111111;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.teacher-module .teacher-name::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 16px;
    background-color: #0052cc;
    margin-right: 8px;
    border-radius: 2px;
}

.teacher-module .teacher-tag {
    background-color: #fff8ec;
    color: #d48806;
    border: 1px solid #ffe58f;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
}

.teacher-module .teacher-tag::before {
    content: '👑';
    margin-right: 4px;
    font-size: 11px;
}

.teacher-module .teacher-quote {
    font-size: 14px;
    color: #555555;
    line-height: 1.6;
    font-style: italic;
    background-color: #f7faff;
    padding: 12px;
    border-radius: 8px;
    border-left: 3px solid #0052cc;
    margin-top: auto;
}

/* 开课现场 */
.sac-section1 {
    height: 600px !important;
}

.sac-section2 {
    height: 500px !important;
}

.sac-honor-section {
    box-sizing: border-box;
}

.sac-honor-section *,
.sac-honor-section *::before,
.sac-honor-section *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.sac-honor-section .sac-seo-title {
    text-align: center;
    font-size: 36px;
    color: #1876f2;
    margin-bottom: 25px;
    font-weight: 600;
    padding-top: 20px;
}

.sac-honor-section .sac-honor-bg-wrapper {
    background-size: cover;
    background-position: center;
    width: 100%;
    /* padding: 30px 0; */
    isolation: isolate;
}

.sac-honor-section .sac-honor-wall-container {
    max-width: 1300px;
    margin: 0 auto;
    overflow: hidden;
    padding: 12px 0;
    background: transparent;
}

.sac-honor-section .sac-honor-row {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.sac-honor-section .sac-honor-track {
    height: 200px;
    display: flex;
    width: max-content;
    animation: sacMarqueeLeft 25s linear infinite;
    animation-play-state: paused;
}

@media (min-width: 769px) {
    .sac-honor-section .sac-honor-row:hover .sac-honor-track {
        animation-play-state: running;
    }
}

.sac-honor-section .sac-row-offset .sac-honor-track::before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 100px;
}

.sac-honor-section .sac-row-offset .sac-honor-track::after {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 100px;
}

.sac-honor-section .sac-img-card {
    flex-shrink: 0;
    width: 320px;
    margin: 0 8px;
    background: transparent;
    padding: 0;
    overflow: hidden;
    border: 6px solid #ffffff;
    border-radius: 4px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.sac-honor-section .sac-img-card img {
    width: 100%;
    height: 220px;
    display: block;
    object-fit: cover;
    transform: scale(1.15);
}

.sac-honor-section .sac-dontaicuowei {
    width: 100%;
    padding-left: 200px;
}

@keyframes sacMarqueeLeft {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* ==========================================
   我们是谁 & 我们的使命 - 精简低矮版样式
   ========================================== */
.custom-about-h2 {
    font-size: 25px;
}

.custom-about-section .custom-about-reveal {
    /* 保持你的激活控制基类 */
}

.custom-about-section .custom-about-seo-title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.custom-about-section {
    display: block !important;
    position: relative !important;
    padding: 100px 20px !important;
    /* background-color: #e8e9fd !important; */
    background-color: #8bc3ff24 !important;
    margin: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.custom-about-section .custom-about-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 100px !important;
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.custom-about-section .custom-about-row {
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.custom-about-section .custom-about-row .custom-about-img-box {
    display: block !important;
    position: relative !important;
    width: 55% !important;
    height: 380px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06) !important;
    box-sizing: border-box !important;
}

.custom-about-section .custom-about-row .custom-about-img-box img.custom-about-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
}

.custom-about-section .custom-about-row .custom-about-text-card {
    display: block !important;
    width: 44% !important;
    background: #ffffff !important;
    padding: 35px 40px !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08) !important;
    position: absolute !important;
    right: 4% !important;
    left: auto !important;
    z-index: 2 !important;
    margin: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.custom-about-section .custom-about-row .custom-about-text-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12) !important;
}

.custom-about-section .custom-about-row.custom-about-reverse {
    flex-direction: row-reverse !important;
}

.custom-about-section .custom-about-row.custom-about-reverse .custom-about-text-card {
    right: auto !important;
    left: 4% !important;
}

.custom-about-section .custom-about-text-card span.custom-about-tag {
    display: block !important;
    font-size: 0.8rem !important;
    text-transform: uppercase !important;
    color: #007aff !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    background: none !important;
}

.custom-about-section .custom-about-text-card h2.custom-about-h2 {
    display: block !important;
    font-size: 25px !important;
    color: #111111 !important;
    font-weight: 700 !important;
    margin: 0 0 15px 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    border: none !important;
    background: none !important;
    letter-spacing: normal !important;
}

.custom-about-section .custom-about-text-card p.custom-about-p {
    display: block !important;
    font-size: 15px !important;
    color: #555555 !important;
    line-height: 1.75 !important;
    text-align: justify !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    letter-spacing: normal !important;
}

/* 高性能入场动画：默认PC端基础隐藏设定 */
.custom-about-section .custom-about-img-box,
.custom-about-section .custom-about-text-card {
    opacity: 0;
    will-change: transform, opacity;
    transition: opacity 1.2s cubic-bezier(0.25, 1, 0.5, 1), transform 1.2s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.custom-about-row:not(.custom-about-reverse) .custom-about-img-box {
    transform: translateX(-150px);
}

.custom-about-row:not(.custom-about-reverse) .custom-about-text-card {
    transform: translateX(150px);
}

.custom-about-row.custom-about-reverse .custom-about-img-box {
    transform: translateX(150px);
}

.custom-about-row.custom-about-reverse .custom-about-text-card {
    transform: translateX(-150px);
}

/* 完美触发区：双重类名匹配机制，确保 JS 触发无差错恢复 */
.custom-about-section .custom-about-row.custom-about-active .custom-about-img-box,
.custom-about-section .custom-about-row.custom-about-active .custom-about-text-card,
.custom-about-section .custom-about-row.custom-about-reveal.custom-about-active .custom-about-img-box,
.custom-about-section .custom-about-row.custom-about-reveal.custom-about-active .custom-about-text-card {
    opacity: 1;
    transform: translateX(0) !important;
}

.custom-about-section .custom-about-row.custom-about-active .custom-about-text-card {
    transition-delay: 0.1s !important;
}

/* 有墨历程 */
/* 1. 变成全屏通铺容器，负责整行的背景色 */
.tt-section {
    font-family: Microsoft YaHei;
    position: relative;
    /* background-color: #030712; */
    background-color: #108cc1;
    /* 确保深色背景铺满整个屏幕宽度 */
    width: 100%;
    overflow-x: hidden;
    padding: 6rem 0;
    /* 上下保持留白，左右由内部容器控制 */
    box-sizing: border-box;
}

.tt-sections {
    font-family: Microsoft YaHei;
    position: relative;
    /* background-color: #030712; */
    background-color: #108cc1;
    /* 确保深色背景铺满整个屏幕宽度 */
    width: 100%;
    overflow-x: hidden;
    padding: 6rem 0;
    /* 上下保持留白，左右由内部容器控制 */
    box-sizing: border-box;
}

/* 2. 新增内部包裹容器，负责限制内容宽度并居中 */
.tt-container {
    margin-bottom: 40px;
    border-radius: 20px;
    max-width: 1200px;
    background-color: #108cc1;
    max-width: 80rem;
    /* 1280px，保持原本合理的阅读宽度 */
    margin: 0 auto;
    padding: 0 1rem;
    box-sizing: border-box;
    position: relative;
    /* width: 100%; */
}

/* 模块内锁定 border-box */
.tt-section *,
.tt-section *::before,
.tt-section *::after {
    box-sizing: border-box;
}

/* 背景氛围灯效光晕 - 修改定位基于 tt-container 避免大屏漂移 */
.tt-glow-1 {
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translateX(-50%);
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background-color: #dbeaf9;
    opacity: 0.03;
    filter: blur(120px);
    pointer-events: none;
}

.tt-glow-2 {
    position: absolute;
    bottom: 40px;
    left: 40px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background-color: #3b82f6;
    opacity: 0.02;
    filter: blur(100px);
    pointer-events: none;
}

/* 头部标题区域 */
.tt-header {
    text-align: center;
    margin-bottom: 6rem;
    position: relative;
    z-index: 10;
}

.tt-subtitle {
    font-size: 0.75rem;
    letter-spacing: 0.3em;
    color: #dbeaf9;
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0.75rem;
}

.tt-title {
    font-family: Microsoft YaHei;
    font-size: 36px;
    font-weight: 900;
    letter-spacing: -0.05em;
    background: linear-gradient(to right, #ffffff, #f1f5f9, #dbeaf9);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin: 0;
}

.tt-divider {
    width: 4rem;
    height: 2px;
    background-color: #dbeaf9;
    margin: 1.5rem auto 0;
    box-shadow: 0 0 10px #dbeaf9;
}

/* 栅格布局框架 */
.tt-main-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 4rem;
    align-items: start;
}

/* 左侧固定卡片 */
.tt-left-panel {
    position: relative;
    z-index: 20;
}

.tt-card-glow {
    position: absolute;
    inset: -4px;
    background: linear-gradient(to right, rgba(219, 234, 249, 0.3), rgba(59, 130, 246, 0.3));
    border-radius: 1.5rem;
    filter: blur(8px);
    opacity: 0.75;
    transition: opacity 0.7s;
}

.tt-left-panel:hover .tt-card-glow {
    opacity: 1;
}

.tt-image-card {
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background-color: #020617;
}

.tt-image-card img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    /* filter: grayscale(100%);
    opacity: 0.8;
    transition: transform 0.7s, filter 0.7s, opacity 0.7s; */
}

.tt-left-panel:hover .tt-image-card img {
    filter: grayscale(0%);
    transform: scale(1.05);
    opacity: 1;
}

.tt-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, #030712, transparent, transparent);
}

.tt-card-content {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
}

.tt-card-tag {
    font-size: 0.75rem;
    color: #dbeaf9;
    font-weight: 700;
    letter-spacing: 0.05em;
    display: block;
    margin-bottom: 0.25rem;
}

.tt-card-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
}

/* 右侧时间轴区域 */
.tt-right-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 6rem;
    padding-left: 1rem;
}

.tt-timeline-line {
    position: absolute;
    left: 0;
    top: 1rem;
    bottom: 1rem;
    width: 1px;
    background: linear-gradient(to bottom, rgba(219, 234, 249, 0.5), #ffffff, transparent);
}

.tt-timeline-item {
    position: relative;
    scroll-margin-top: 7rem;
    padding-left: 2rem;
}

.tt-timeline-dot {
    position: absolute;
    left: -4px;
    top: 1rem;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #dbeaf9;
    box-shadow: 0 0 15px #dbeaf9;
    outline: 4px solid rgba(219, 234, 249, 0.2);
    transition: transform 0.3s;
}

.tt-timeline-item:hover .tt-timeline-dot {
    transform: scale(1.5);
}

/* 右侧悬浮大年份数字 */
.tt-text-stroke {
    position: absolute;
    right: 0;
    top: -3rem;
    font-size: 4.5rem;
    font-weight: 900;
    font-family: "Microsoft YaHei";
    user-select: none;
    pointer-events: none;
    -webkit-text-stroke: 2px rgba(219, 234, 249, 0.15);
    color: transparent;
    transition: -webkit-text-stroke 0.5s, text-shadow 0.5s;
}

.tt-timeline-item:hover .tt-text-stroke {
    -webkit-text-stroke: 1px rgba(219, 234, 249, 0.6);
    text-shadow: 0 0 20px rgba(219, 234, 249, 0.3);
}

/* 历程文字内容 */
.tt-item-detail {
    position: relative;
    z-index: 10;
}

.tt-phase-tag {
    font-size: 0.75rem;
    font-family: "Microsoft YaHei";
    font-weight: 700;
    color: #dbeaf9;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.tt-item-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffffff;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    transition: color 0.3s;
}

.tt-timeline-item:hover .tt-item-title {
    color: #dbeaf9;
}

.tt-item-desc {
    color: #fbfdff;
    font-size: 15px;
    line-height: 1.625;
    max-width: 36rem;
    margin: 0;
}

/* 科研成果 */
/* ==================== 独占域：名师教研成果模块 ==================== */
#edu-achievement-section {
    /* 局部变量，防止污染全局变量 */
    --edu-primary: #0052cc;
    --edu-primary-hover: #0040a3;
    --edu-text-dark: #2d3748;
    --edu-text-gray: #718096;
    --edu-bg-light: #f7fafc;
    --edu-white: #ffffff;
    --edu-transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);

    background-color: var(--edu-bg-light);
    display: block;
    width: 100%;
    box-sizing: border-box;
}

/* 让模块内所有子元素强制继承 border-box 盒子模型，不影响外部 */
#edu-achievement-section *,
#edu-achievement-section *::before,
#edu-achievement-section *::after {
    box-sizing: border-box;
}

/* 容器样式 */
#edu-achievement-section .edu-container {
    font-family: Microsoft YaHei;
    max-width: 1340px;
    margin: 0 auto;
    padding: 60px 20px;
}

/* 头部标题区 */
#edu-achievement-section .edu-section-header {
    text-align: center;
    /* margin-bottom: 60px; */
}

#edu-achievement-section .edu-section-header h2 {
    font-size: 36px;
    color: #1876f2;
    margin-bottom: 15px;
    position: relative;
    display: inline-block;
    padding-bottom: 12px;
    line-height: 1.4;
}

#edu-achievement-section .edu-section-header h2::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background-color: var(--edu-primary);
    border-radius: 2px;
}

#edu-achievement-section .edu-section-header p {
    font-size: 15px;
    color: var(--edu-text-gray);
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.6;
}

/* 卡片网格布局 */
#edu-achievement-section .edu-achievement-grid {
    padding-top: 40px;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 30px;
}

/* 卡片整体 */
#edu-achievement-section .edu-achievement-card {
    background-color: var(--edu-white);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 -2px 8px rgb(103 101 101 / 8%), 0 0 20px rgb(49 50 51 / 10%), 0 8px 32px rgb(141 141 141 / 18%), 0 16px 48px rgb(159 159 159 / 12%);
    transition: var(--edu-transition);
    display: flex;
    flex-direction: column;
    border: 1px solid #edf2f7;
}

#edu-achievement-section .edu-achievement-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 -2px 8px rgb(103 101 101 / 8%), 0 0 20px rgb(49 50 51 / 10%), 0 8px 32px rgb(141 141 141 / 18%), 0 16px 48px rgb(159 159 159 / 12%);
}

/* 图片容器 */
#edu-achievement-section .edu-card-image {
    width: 100%;
    height: 220px;
    background-color: #e2e8f0;
    overflow: hidden;
    position: relative;
}

#edu-achievement-section .edu-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--edu-transition);
    border: none;
    display: block;
}

#edu-achievement-section .edu-achievement-card:hover .edu-card-image img {
    transform: scale(1.05);
}

/* 卡片内容区 */
#edu-achievement-section .edu-card-body {
    padding: 20px 24px;
    display: flex;
    flex-direction: column;
}

#edu-achievement-section .edu-card-body h3 {
    font-size: 18px;
    color: var(--edu-text-dark);
    margin-bottom: 8px;
    line-height: 1.4;
    font-weight: bold;
}

/* 统一段落高度并限制为 3 行 */
#edu-achievement-section .edu-card-body p {
    color: var(--edu-text-gray);
    font-size: 14px;
    line-height: 1.6;
    /* margin-bottom: 16px; */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 4.8em;
    /* 1.6 line-height * 3 行 */
}

/* 链接样式 */
#edu-achievement-section .edu-card-link {
    align-self: flex-start;
    color: var(--edu-primary);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    transition: var(--edu-transition);
    display: inline-flex;
    align-items: center;
    background: transparent;
    border: none;
    cursor: pointer;
}

#edu-achievement-section .edu-card-link:hover {
    color: var(--edu-primary-hover);
}

#edu-achievement-section .edu-card-link span {
    margin-left: 5px;
    transition: var(--edu-transition);
}

#edu-achievement-section .edu-card-link:hover span {
    transform: translateX(5px);
}

/* 四川总校 */
/* 1. 局部基础重置（代替全局的 * 选择器，避免污染外部页面） */
.zy-embed-wrapper,
.zy-embed-wrapper * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.zy-embed-wrapper {
    font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Microsoft YaHei", sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #f8fafc;
    width: 100%;
}

/* 2. 局部标签重置 */
.zy-embed-wrapper a {
    text-decoration: none;
    color: inherit;
}

.zy-embed-wrapper img {
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}

.zy-embed-wrapper .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* 3. Header 导航栏 */
.zy-embed-wrapper header {
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.zy-embed-wrapper .nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
}

.zy-embed-wrapper .logo {
    font-size: 24px;
    font-weight: bold;
    color: #1876f2;
}

.zy-embed-wrapper .nav-links {
    display: flex;
    list-style: none;
    gap: 20px;
}

.zy-embed-wrapper .nav-links a {
    font-size: 15px;
    font-weight: 500;
    transition: color 0.3s;
}

.zy-embed-wrapper .nav-links a:hover,
.zy-embed-wrapper .nav-links a.active {
    color: #1876f2;
}

/* 4. Banner 首屏黄金区 */
.zy-embed-wrapper .banner {
    background: linear-gradient(135deg, #1876f2 0%, #0052cc 100%);
    color: #fff;
    padding: 80px 0;
}

.zy-embed-wrapper .banner-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 40px;
    align-items: center;
}

.zy-embed-wrapper .banner-text h1 {
    font-size: 36px;
    margin-bottom: 20px;
    line-height: 1.3;
}

.zy-embed-wrapper .banner-text h2 {
    font-size: 36px;
    margin-bottom: 20px;
    line-height: 1.3;
}

.zy-embed-wrapper .banner-text p {
    font-size: 18px;
    margin-bottom: 30px;
    opacity: 0.9;
}

.zy-embed-wrapper .badge-group {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.zy-embed-wrapper .badge {
    background-color: rgba(255, 255, 255, 0.2);
    padding: 6px 15px;
    border-radius: 20px;
    font-size: 14px;
}

/* 5. 预约表单 */
.zy-embed-wrapper .appointment-card {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    color: #333;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.zy-embed-wrapper .appointment-card h3 {
    margin-bottom: 15px;
    color: #1876f2;
    text-align: center;
}

.zy-canguan {
    font-size: 24px;
    margin-bottom: 15px;
    color: #1876f2;
    text-align: center;
}

.zy-embed-wrapper .form-group {
    margin-bottom: 15px;
}

.zy-embed-wrapper .form-group input {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
}

.zy-embed-wrapper .form-group input:focus {
    outline: none;
    border-color: #1876f2;
}

.zy-embed-wrapper .submit-btn {
    width: 100%;
    background-color: #1876f2;
    color: #fff;
    border: none;
    padding: 12px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: bold;
    /* cursor: pointer; */
    transition: background 0.3s;
}

.zy-embed-wrapper .submit-btn:hover {
    background-color: #115bc7;
}

/* 6. Section 通用样式 */
.zy-embed-wrapper section {
    padding: 30px 0;
}

.zy-embed-wrapper .section-title {
    display: block !important;
    text-align: center !important;
    margin: 0 auto 50px auto !important;
    padding: 0 !important;
    /* width: 100% !important; */
    float: none !important;
    clear: both !important;
    position: relative !important;
    flex: none !important;
    /* 彻底切断外部 flex 布局控制 */
    grid-area: auto !important;
    /* 彻底切断外部 grid 布局控制 */
}

.zy-embed-wrapper .section-title1 {
    display: block !important;
    text-align: center !important;
    /* margin: 0 auto 50px auto !important; */
    padding: 0 !important;
    /* width: 100% !important; */
    float: none !important;
    clear: both !important;
    position: relative !important;
    flex: none !important;
    /* 彻底切断外部 flex 布局控制 */
    grid-area: auto !important;
    /* 彻底切断外部 grid 布局控制 */
}

.zy-embed-wrapper .section-title h2 {
    display: inline-block !important;
    /* 必须是 inline-block，下划线才能居中 */
    font-size: 26px !important;
    /* 稍微调小一点，更适合移动端 */
    color: #1e293b !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    position: relative !important;
    float: none !important;
}

/* 重新精准生成下方的蓝色短线 */
.zy-embed-wrapper .section-title h2::after {
    content: '' !important;
    display: block !important;
    width: 60px !important;
    height: 4px !important;
    background-color: #1876f2 !important;
    margin: 10px auto 0 auto !important;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
}

/* 强制描述文字在任何屏幕下都必须换行 */
.zy-embed-wrapper .section-title p {
    display: block !important;
    /* 强制换行 */
    color: #64748b !important;
    font-size: 14px !important;
    /* 移动端字号优化 */
    margin: 15px 0 0 0 !important;
    padding: 0 15px !important;
    /* 移动端两侧留点边距防贴边 */
    float: none !important;
    clear: both !important;
    width: 100% !important;
}

/* 7. 左右交替图文排版 */
.zy-embed-wrapper .row-item {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 80px;
}

.zy-embed-wrapper .row-item:last-child {
    margin-bottom: 0;
}

.zy-embed-wrapper .row-item.reverse .img-box {
    order: 2;
}

.zy-embed-wrapper .row-item.reverse .text-box {
    order: 1;
}

.zy-embed-wrapper .text-box h3 {
    font-size: 26px;
    color: #1e293b;
    /* margin-bottom: 20px; */
    font-weight: bold;
}

.zy-embed-wrapper .text-box h3 span {
    color: #1876f2;
}

.zy-embed-wrapper .text-box p {
    color: #475569;
    margin-bottom: 25px;
    font-size: 15px;
    line-height: 1.8;
}

.zy-embed-wrapper .feature-list {
    list-style: none;
}

.zy-embed-wrapper .feature-list li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 15px;
    font-size: 15px;
    color: #334155;
}

.zy-embed-wrapper .feature-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #1876f2;
    font-weight: bold;
    font-size: 16px;
}

/* 8. 实景图片容器 */
.zy-embed-wrapper .img-container {
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    overflow: hidden;
}

.zy-embed-wrapper .img-placeholder {
    background-color: #e2e8f0;
    border: 1px solid #cbd5e1;
    aspect-ratio: 16 / 10;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    font-weight: bold;
    text-align: center;
    /* padding: 20px; */
}

/* 9. 学习空间网格 */
.zy-embed-wrapper .space-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 20px;
}

.zy-embed-wrapper .space-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    border: 1px solid #f1f5f9;
    transition: transform 0.3s, box-shadow 0.3s;
}

.zy-embed-wrapper .space-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(24, 118, 242, 0.12);
}

.zy-embed-wrapper .space-card-body {
    padding: 24px;
}

.zy-embed-wrapper .space-card-body h3 {
    font-size: 18px;
    color: #1e293b;
    margin-bottom: 12px;
    font-weight: bold;
}

.zy-embed-wrapper .space-card-body p {
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

/* 10. FAQ Section */
.zy-embed-wrapper .faq-section {
    background-color: #fff;
}

.zy-embed-wrapper .faq-container {
    max-width: 1200px;
    margin: 0 auto;
}

.zy-embed-wrapper details {
    background-color: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    margin-bottom: 15px;
    padding: 16px 20px;
    transition: all 0.3s ease;
}

.zy-embed-wrapper details[open] {
    border-color: #1876f2;
    background-color: #fff;
    box-shadow: 0 4px 12px rgba(24, 118, 242, 0.08);
}

.zy-embed-wrapper summary {
    font-weight: bold;
    font-size: 16px;
    color: #1e293b;
    cursor: pointer;
    outline: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.zy-embed-wrapper summary::-webkit-details-marker {
    display: none;
}

.zy-embed-wrapper summary::after {
    content: "+";
    color: #1876f2;
    font-size: 20px;
}

.zy-embed-wrapper details[open] summary::after {
    content: "−";
}

.zy-embed-wrapper details p {
    margin-top: 12px;
    color: #475569;
    font-size: 14px;
    line-height: 1.7;
    border-top: 1px solid #f1f5f9;
    padding-top: 12px;
}

.zy-embed-wrapper details p strong {
    color: #1876f2;
}

/* 11. Footer */
.zy-embed-wrapper footer {
    background-color: #0f172a;
    color: #94a3b8;
    padding: 40px 0;
    font-size: 14px;
}

.zy-embed-wrapper .footer-grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

/* 校区环境导航栏 */
.tbiaojianju {
    margin-bottom: 0px;
}

.edu-campus-has-mega {
    position: static !important;
    /* 必须强行静止，确保下拉满屏 */
}

.zhusuhuanjing {
    display: flex;
    justify-content: center;
    align-items: center;
}

.zhusuhuanjing img {
    padding-right: 15px;
}

.zhusuhuanjings {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.zhusuhuanjings img {
    padding-right: 15px;
}

.zonxiaotbjianju {
    margin: 0 0 50px 0 !important;
}

.edu-campus-has-mega>a.edu-campus-trigger {
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
}

.edu-campus-has-mega .edu-campus-arrow {
    font-size: 10px !important;
    margin-left: 4px !important;
    transition: transform 0.3s ease !important;
    display: inline-block !important;
}

/* 下拉主面板 */
.edu-campus-has-mega .edu-campus-full-panel {
    position: absolute !important;
    top: 100% !important;
    /* 对齐导航栏底部 */
    left: 0 !important;
    width: 100% !important;
    background-color: #ffffff !important;
    /* box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06) !important; */
    box-shadow: 0 8px 32px rgba(59, 130, 246, 0.18), 0 16px 48px rgba(37, 99, 235, 0.12) !important;
    border-top: 1px solid #f0f0f0 !important;
    padding: 40px 4% !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    z-index: 99999 !important;
}

.edu-campus-has-mega .edu-campus-mobile-header {
    display: none !important;
}

.edu-campus-has-mega .edu-campus-inner-scroll {
    display: flex !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* PC端悬停联动 */
@media (min-width: 769px) {
    .edu-campus-has-mega:hover .edu-campus-full-panel {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
    }

    .edu-campus-has-mega:hover .edu-campus-arrow {
        transform: rotate(180deg) !important;
        color: #1265ff !important;
    }
}

/* 5列网格布局 */
.edu-campus-has-mega .edu-campus-links-grid {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 30px !important;
}

.edu-campus-has-mega .edu-campus-region-group span {
    font-size:18px !important;
    color: #1265ff !important;
    margin: 0 0 15px 0 !important;
    padding: 0 0 5px 0 !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #eaeaea !important;
    letter-spacing: 1px !important;
}

.edu-campus-has-mega .edu-campus-list {
    list-style: none !important;
    padding: 10px 0 0 0 !important;
    margin: 0 !important;
}

.edu-campus-has-mega .edu-campus-list li {
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.edu-campus-has-mega .edu-campus-list li a {
    
    text-decoration: none !important;
    color: #444444 !important;
    font-size: 18px !important;
    transition: all 0.2s !important;
    display: inline-block !important;
    background: none !important;
}

.edu-campus-has-mega .edu-campus-list li p {
    text-decoration: none !important;
    color: #444444 !important;
    font-size: 18px !important;
    transition: all 0.2s !important;
    display: inline-block !important;
    background: none !important;
}

.edu-campus-has-mega .edu-campus-list li a:hover {
    color: #1265ff !important;
    padding-left: 4px !important;
}

.edu-campus-has-mega .edu-campus-list li p:hover {
    color: #1265ff !important;
    padding-left: 4px !important;
}

/* 咨询列表 */
.zixunquanbuanniuyingchang {
    display: none !important;
}

.sn-news-container,
.sn-news-container * {
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* 最外层容器 */
.sn-news-container {
    padding-top: 40px !important;
    display: flex;
    gap: 24px;
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 16px;
    text-align: left;
}

/* ================= 2. PC 端完整样式保留 ================= */
/* 左侧分类栏 */
.sn-news-container .sn-news-module {
    width: 280px;
    flex-shrink: 0;
    background-color: #ffffff;
    font-size: 16px;
    border-radius: 4px;
    overflow: hidden;
    /* box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); */
}

.sn-news-container .sn-module-title {
    background-color: #1876f2;
    color: #ffffff;
    padding: 12px 20px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    border: none;
}

.sn-news-container .sn-news-nav-list {
    list-style: none;
    padding: 12px 0;
}

.sn-news-container .sn-news-nav-list li a {
    display: block;
    padding: 10px 20px;
    color: #2c3e50;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.sn-news-container .sn-news-nav-list li a:hover {
    background-color: #f5f5f7;
    color: #1876f2;
}

/* 右侧文章内容区 */
.sn-news-container .sn-news-content-area {
    flex: 1;
    min-height: 500px;
    background-color: #ffffff;
    /* border: 2px dashed #e0e0e0; */
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
}

.sn-news-container .sn-news-list {
    border-bottom: 2px dashed #e0e0e0;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    color: #333333;
}

/* 单条卡片 Flex 三栏布局 - 移除 transition: all 解决布局切换抖动 */
.sn-news-container .sn-news-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px !important;
    margin-bottom: 16px !important;
    background-color: #ffffff !important;
    border-radius: 8px !important;
    border: 1px solid #eef2f7 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
    /* 只对视觉交互做过度，严禁对 layout/all 属性做 transition */
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
    list-style: none !important;
    will-change: transform;
}

.sn-news-container .sn-news-item:hover {
    border-color: #1876f2 !important;
    box-shadow: 0 4px 16px rgba(24, 118, 242, 0.12) !important;
    transform: translateY(-2px);
}

/* 缩略图 */
.sn-news-container .sn-news-left {
    flex-shrink: 0 !important;
    width: 160px !important;
    height: 100px !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    margin-right: 20px !important;
    background-color: #f0f0f0 !important;
}

.sn-news-container .sn-news-left a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    text-decoration: none !important;
}

.sn-news-container .sn-news-left img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border: none !important;
    transition: transform 0.3s ease !important;
}

.sn-news-container .sn-news-item:hover .sn-news-left img {
    transform: scale(1.05);
}

/* 标题与描述 */
.sn-news-container .sn-news-center {
    flex-grow: 1 !important;
    margin-right: 20px !important;
    overflow: hidden !important;
}

.sn-news-container .sn-news-title {
    margin: 0 0 8px 0 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
}

.sn-news-container .sn-news-title a {
    color: #222222 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    display: inline !important;
}

.sn-news-container .sn-news-item:hover .sn-news-title a {
    color: #1876f2 !important;
}

.sn-news-container .sn-news-desc {
    font-size: 14px !important;
    color: #666666 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* 时间 */
.sn-news-container .sn-news-right {
    flex-shrink: 0 !important;
    font-size: 13px !important;
    color: #999999 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.sn-news-container .sn-news-right time {
    display: inline !important;
}

/* 默认文字颜色 */
.sn-news-nav-list li a {
    color: #333;
    /* 默认暗灰色，可根据需要调整 */
    text-decoration: none;
}

/* 当子栏目处于选中状态（active）时，字体变成蓝色 */
.sn-news-nav-list li.active a,
.sn-news-nav-list li.active a span {
    color: #007bff;
    /* 这里的蓝色值可以替换为你的主题蓝色 */
    /* font-weight: bold; */
    /* 可选：加粗让高亮更明显 */
}

/* 顶级“全部”处于选中状态时的蓝色处理（按需调整） */
.sn-module-title-link.active .sn-module-title {
    color: #ffffff;
    /* 如果顶级“全部”背景是蓝色，字保留白色 */
}

/* 网页底部样式 */
.youmo-footer,
.youmo-footer * {
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
}

.youmo-footer {
    background-color: #1a1e26;
    color: #a0aec0;
    font-size: 14px;
    line-height: 1.6;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    padding: 40px 20px 25px;
    width: 100%;
    text-align: left;
    overflow: hidden;
    /* 防止任何子元素溢出容器 */
}

/* 2. 自适应网格容器：无需媒体查询，根据容器实际宽度自动切换单/双列 */
.youmo-footer .footer-container {
    max-width: 1340px;
    margin: 0 auto;
    display: grid;
    /* 核心逻辑：单列最小保证 280px，能放下就双列，放不下自动切单列 */
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

/* 3. 栏目样式 */
.youmo-footer .footer-column {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    /* 防止子元素撑开 Flex 容器 */
}

.youmo-footer .footer-title {
    color: #ffffff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
    padding-bottom: 8px;
    position: relative;
    letter-spacing: 0.5px;
    line-height: 1.4;
}

.youmo-footer .footer-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 30px;
    height: 3px;
    background-color: #3b82f6;
    border-radius: 2px;
}

/* 4. 列表与排版 */
.youmo-footer .footer-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.youmo-footer .footer-item {
    display: flex;
    align-items: flex-start;
    font-size: 14px;
    line-height: 1.6;
    font-style: normal;
}

.youmo-footer .label-text {
    font-weight: 500;
    color: #cbd5e1;
    flex-shrink: 0;
    width: 75px;
    white-space: nowrap;
}

.youmo-footer .info-content {
    color: #a0aec0;
    flex: 1;
    min-width: 0;
    word-break: break-all;
    /* 防止超长文本强行撑开屏幕 */
}

.youmo-footer .info-content a {
    word-break: break-all;
}

/* 5. 链接交互 */
.youmo-footer a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}

.youmo-footer a:hover {
    color: #3b82f6;
}

/* 6. 版权栏 */
.youmo-footer .footer-copyright {
    max-width: 960px;
    margin: 35px auto 0;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    text-align: center;
    color: #718096;
    font-size: 13px;
    line-height: 1.6;
}

.youmo-footer .footer-copyright p {
    margin: 0;
    padding: 0;
}

/* 搜索框容器 */
.yidonduanssuokuang {
    display: none !important;
}

.pcssuokuang {
    display: flex !important;
}


.custom-search-box {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 320px;
    background-color: #ffffff;
    border-radius: 24px;
    padding: 5px 6px 5px 16px;
    border: 1.5px solid #e5e7eb;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: all 0.25s ease;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* 容器内部所有元素的盒模型重置 */
.custom-search-box * {
    box-sizing: border-box;
}

/* 悬停效果 */
.custom-search-box:hover {
    border-color: #d1d5db;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* 聚焦（点击输入）效果 */
.custom-search-box:focus-within {
    border-color: #1876f2;
    box-shadow: 0 0 0 3px rgba(24, 118, 242, 0.18);
}

/* 放大镜图标 */
.custom-search-icon {
    width: 18px;
    height: 18px;
    fill: #9ca3af;
    margin-right: 10px;
    flex-shrink: 0;
    transition: fill 0.25s ease;
}

.custom-search-box:focus-within .custom-search-icon {
    fill: #1876f2;
}

/* 文本输入框 */
.custom-search-input {
    flex: 1;
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
    padding: 0;
    margin: 0;
    font-size: 14px;
    color: #1f2937;
    line-height: 1.5;
}

.custom-search-input::placeholder {
    color: #9ca3af;
}

/* 搜索按钮 */
.custom-search-button {
    width: 67px;
    background-color: #1876f2;
    color: #ffffff;
    border: none;
    outline: none;
    border-radius: 18px;
    padding: 6px 14px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
    /* cursor: pointer; */
    /* cursor: url('{label:shubiaoshou}') 3 3, pointer; */
    white-space: nowrap;
    flex-shrink: 0;
    margin: 0;
    transition: background-color 0.2s ease, transform 0.1s ease;
}

.custom-search-button:hover {
    background-color: #0f64d0;
}

.custom-search-button:active {
    transform: scale(0.96);
}

/* ip形象图片模块 */
/* 有墨历程 */
.youmolicheng_div {
    display: flex;
    justify-content: center;
    align-items: center;
}

.youmolicheng_div img {
    height: 100px;
    margin-bottom: 6rem;
}

.youmokechengliebiaoimg {
    width: 90px;
}

.yinanwentiimg {
    width: 70px;
}

.yinanwentiimgs {
    width: 100px;
}

.shizidiv {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.shizidivyi {
    display: flex;
    margin-top: 10px;
    justify-content: center;
    background: rgba(255, 255, 255, 0);
    align-items: center;
    flex-direction: row;
    visibility: visible;
    animation-name: fadeInDown;
}

.kechengxiangqingimg {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.kechengxiangqingimgs {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background: #FFF;
    padding: 15px;
    border-radius: 4px 4px 0 0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.kechengxiangqingimgs img {
    width: 80px;
}

.kechengxiangqingimg img {
    width: 80px;
}

/* 网页查看更多 */
.cm-footer-container {
    color: #1890ff !important;
    background-color: rgba(24, 144, 255, 0.06);
    /* 基础重置，隔离宿主影响 */
    all: unset;
    display: block;
    box-sizing: border-box;

    position: relative;
    text-align: center;
    margin-top: 20px;
    padding: 20px 16px 0 16px;
    /* 增加左右 padding 防贴边 */
    width: 100%;
}

/* 顶部的渐变消隐线 */
.cm-footer-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    max-width: 600px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(24, 144, 255, 0.3), transparent);
}

/* 2. 链接主元素：强制重置 a 标签样式，防止被全局 a 样式破坏 */
.cm-inline-ghost-link {
    /* 强行重置可能继承的全局 a 标签样式 */
    color: #1890ff !important;
    background-color: rgba(24, 144, 255, 0.06);
    text-decoration: none !important;
    outline: none;
    box-sizing: border-box;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #4b5563 !important;
    /* 加 !important 覆写全局 a { color } */
    padding: 10px 20px;
    /* 增大点击区域，适配手持设备 */
    border-radius: 20px;
    transition: all 0.3s ease;

    /* 移动端专属优化 */
    -webkit-tap-highlight-color: transparent;
    /* 移除 iOS/Android 点击灰色背景框 */
    max-width: 100%;
}

.cm-link-text {
    color: #1890ff !important;
    line-height: 1.5;
    white-space: nowrap;
    /* 避免文字意外折行 */
}

.cm-gradient-arrow {
    color: #1890ff !important;
    transition: transform 0.3s ease;
    display: inline-block;
    font-family: inherit;
    line-height: 1;
}

@media (hover: hover) {
    .cm-inline-ghost-link:hover {
        color: #1890ff !important;
        background-color: rgba(24, 144, 255, 0.06);
    }

    .cm-inline-ghost-link:hover .cm-gradient-arrow {
        transform: translateX(6px);
    }
}

/* 移动端按压反馈 */
.cm-inline-ghost-link:active {
    color: #1890ff !important;
    background-color: rgba(24, 144, 255, 0.12);
}

/* 联系样式 */
.ym-campus-section,
.ym-campus-section * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

/* 布局与排版 */
.ym-campus-section {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
    color: #333333;
    line-height: 1.6;
}

.ym-campus-section .ym-section-header {
    text-align: center;
    margin-bottom: 30px;
}

.ym-campus-section .ym-section-header h2 {
    font-size: 32px;
    color: #1a1a1a;
    margin-bottom: 8px;
    font-weight: bold;
}

.ym-campus-section .ym-section-header p {
    color: #666666;
    font-size: 15px;
}

/* 总校区卡片 */
.ym-campus-section .ym-main-campus {
    background: linear-gradient(135deg, #ffffff 0%, #f0f7ff 100%);
    border: 2px solid #0066cc;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 30px;
    position: relative;
}

.ym-campus-section .ym-badge-main {
    position: absolute;
    top: 0;
    right: 20px;
    background: #0066cc;
    color: #ffffff;
    padding: 4px 12px;
    font-size: 12px;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    font-weight: bold;
}

.ym-campus-section .ym-main-campus h3 {
    font-size: 22px;
    color: #0066cc;
    margin-bottom: 12px;
    font-weight: bold;
}

.ym-campus-section .ym-info-list {
    list-style: none;
    margin-bottom: 16px;
}

.ym-campus-section .ym-info-list li {
    margin-bottom: 8px;
    font-size: 15px;
}

.ym-campus-section .ym-info-list a {
    color: #0066cc;
    text-decoration: none;
    font-weight: bold;
}

.ym-campus-section .ym-action-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* 按钮通用与具体变体 */
.ym-campus-section .ym-btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    text-align: center;
    /* cursor: pointer; */
    border: none;
    outline: none;
    transition: background 0.2s;
    line-height: 1.4;
}

.ym-campus-section .ym-btn-primary {
    background-color: #0066cc;
    color: #ffffff !important;
}

.ym-campus-section .ym-btn-outline {
    background-color: #ffffff;
    color: #0066cc !important;
    border: 1px solid #0066cc;
}

/* 分校网格 */
.ym-campus-section .ym-sub-campuses-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
}

.ym-campus-section .ym-sub-campus-card {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
}

.ym-campus-section .ym-sub-campus-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #333333;
    font-weight: bold;
}

/* ==================== 地图弹窗 CSS ==================== */
.ym-map-modal-mask {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    box-sizing: border-box;
}

.ym-map-modal-mask * {
    box-sizing: border-box;
}

.ym-map-modal-mask.active {
    opacity: 1;
    visibility: visible;
}

.ym-map-modal-content {
    background: #ffffff;
    width: 92%;
    max-width: 480px;
    border-radius: 20px;
    padding: 16px 18px 20px 18px;
    margin-bottom: 20px;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.ym-map-modal-mask.active .ym-map-modal-content {
    transform: translateY(0);
}

.ym-map-drag-handle {
    width: 36px;
    height: 4px;
    background: #e0e0e0;
    border-radius: 2px;
    margin: 0 auto 12px auto;
}

.ym-map-modal-title {
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 12px;
    color: #8e8e93;
    letter-spacing: 0.5px;
}

.ym-map-options-group {
    background: #f8f9fa;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 12px;
}

.ym-map-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 13px 16px;
    background: transparent;
    border: none;
    border-bottom: 1px solid #eef0f2;
    color: #1c1c1e;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.2s;
    -webkit-tap-highlight-color: transparent;
}

.ym-map-option:last-child {
    border-bottom: none;
}

.ym-map-option:active {
    background-color: #eaebee;
}

.ym-map-option-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ym-map-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    color: #ffffff;
}

.ym-icon-gaode {
    background: linear-gradient(135deg, #2575fc, #1a51a8);
}

.ym-icon-baidu {
    background: linear-gradient(135deg, #ea4335, #c5221f);
}

.ym-icon-tencent {
    background: linear-gradient(135deg, #00c853, #009624);
}

.ym-map-option-arrow {
    color: #c7c7cc;
    font-size: 14px;
}

.ym-map-option-cancel {
    display: block;
    width: 100%;
    padding: 12px;
    background: #f8f9fa;
    border: none;
    border-radius: 12px;
    color: #ff3b30;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.2s;
    -webkit-tap-highlight-color: transparent;
}

.ym-map-option-cancel:active {
    background-color: #eaebee;
}

@media (max-width: 768px) {
    .ym-campus-section .ym-action-btns .ym-btn {
        flex: 1;
    }
}

/* 宜宾校区页面样式 */
.campus-env-scope {
    --ce-blue-primary: #0066ff;
    --ce-blue-hover: #0052cc;
    --ce-blue-soft: #f4f8fc;
    --ce-text-title: #0a142f;
    --ce-text-body: #4a5568;
    --ce-text-light: #718096;
    --ce-border-light: #e2e8f0;

    width: 100%;
    background-color: #ffffff;
    color: var(--ce-text-body);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    line-height: 1.7;
    -webkit-tap-highlight-color: transparent;
    -webkit-font-smoothing: antialiased;
    text-align: left;
    box-sizing: border-box;
}

/* 内部全元素盒模型重置 */
.campus-env-scope *,
.campus-env-scope *::before,
.campus-env-scope *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* Container 限制 */
.campus-env-scope .ce-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
    width: 100%;
}

/* ==================== 1. Hero 头部 ==================== */
.campus-env-scope .ce-hero-banner {
    width: 100%;
    background: linear-gradient(180deg, #edf4ff 0%, #ffffff 100%);
    padding: 80px 0 50px;
    text-align: center;
}

.campus-env-scope .ce-hero-tag {
    display: inline-block;
    color: var(--ce-blue-primary);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 16px;
    background: rgba(0, 102, 255, 0.08);
    padding: 4px 12px;
    border-radius: 50px;
}

.campus-env-scope .ce-hero-title {
    font-size: 44px;
    font-weight: 900;
    color: var(--ce-text-title);
    letter-spacing: -0.5px;
    margin-bottom: 16px;
    line-height: 1.25;
    border: none;
}

.campus-env-scope .ce-hero-desc {
    font-size: 18px;
    color: var(--ce-text-body);
    max-width: 800px;
    margin: 0 auto;
    font-weight: 400;
}

/* ==================== 2. 通栏内容模块（PC端左右交替布局） ==================== */
.campus-env-scope .ce-section-block {
    padding: 70px 0;
    width: 100%;
}

.campus-env-scope .ce-section-block.alt-bg {
    background-color: var(--ce-blue-soft);
}

.campus-env-scope .ce-section-content {
    display: flex;
    gap: 60px;
    align-items: center;
}

/* 控制 PC 端平分宽度 */
.campus-env-scope .ce-text-holder,
.campus-env-scope .ce-media-holder {
    flex: 1;
    width: 50%;
}

/* 关键修复：PC端的交替显隐逻辑 */
/* 默认格式 (01, 03)：左文右图 (不调整顺序) */
.campus-env-scope .ce-section-content {
    flex-direction: row;
}

/* 反转格式 (02, 04)：左图右文 */
.campus-env-scope .ce-section-content.reverse {
    flex-direction: row-reverse;
}

/* 媒体/占位图 */
.campus-env-scope .ce-media-holder {
    height: 360px;
    background: linear-gradient(135deg, #dbeafe 0%, #eff6ff 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ce-blue-primary);
    font-size: 16px;
    font-weight: 700;
    /* border: 2px dashed #bfdbfe; */
    box-shadow: 0 12px 30px rgba(0, 102, 255, 0.05);
    /* padding: 20px; */
    text-align: center;
}

.campus-env-scope .ce-media-holder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 14px;
    display: block;
}

.campus-env-scope .ce-text-holder .ce-section-num {
    font-size: 13px;
    font-weight: 900;
    color: var(--ce-blue-primary);
    letter-spacing: 2px;
    margin-bottom: 10px;
    display: block;
}

.campus-env-scope .ce-text-holder h2 {
    font-size: 32px;
    font-weight: 800;
    color: var(--ce-text-title);
    margin-bottom: 16px;
    line-height: 1.3;
    border: none;
}

.campus-env-scope .ce-text-holder p {
    font-size: 16px;
    color: var(--ce-text-body);
    margin-bottom: 24px;
    line-height: 1.75;
}

/* 列表样式 */
.campus-env-scope .ce-feature-bullets {
    list-style: none !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 !important;
    margin: 0 !important;
}

.campus-env-scope .ce-feature-bullets li {
    font-size: 15px;
    font-weight: 700;
    color: var(--ce-text-title);
    display: flex;
    align-items: flex-start;
    gap: 10px;
    list-style: none !important;
}

.campus-env-scope .ce-feature-bullets li::before {
    content: "✓";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: #dbeafe;
    color: var(--ce-blue-primary);
    border-radius: 50%;
    font-size: 12px;
    flex-shrink: 0;
    margin-top: 2px;
}
.honor-slider-scope {
    /* 私有 CSS 变量定义 */
    --hs-blue-primary: #0066ff;
    --hs-text-title: #0a142f;
    --hs-text-light: #718096;
    --hs-border-light: #e2e8f0;

    /* 重置并限定容器属性 */
    width: 100%;
    padding: 80px 0;
    background: #ffffff;
    box-sizing: border-box;
    line-height: 1.8;
    color: #4a5568;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
    position: relative;
    overflow: hidden;
}

/* 彻底隔离：重置内部所有元素的盒模型和基础边距 */
.honor-slider-scope *,
.honor-slider-scope *::before,
.honor-slider-scope *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* 头部样式 */
.honor-slider-scope .section-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 40px;
}

.honor-slider-scope .section-header .section-tag {
    font-size: 14px;
    font-weight: 800;
    color: var(--hs-blue-primary);
    letter-spacing: 2px;
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px;
}

.honor-slider-scope .section-header h2 {
    font-size: 38px;
    font-weight: 800;
    color: var(--hs-text-title);
    margin-bottom: 12px;
    line-height: 1.3;
}

.honor-slider-scope .section-header p {
    font-size: 16px;
    color: var(--hs-text-light);
}

/* 轮播主体结构 */
.honor-slider-scope .slider-wrapper {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
}

.honor-slider-scope .slider-track-container {
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid var(--hs-border-light);
    box-shadow: 0 12px 32px rgba(10, 20, 47, 0.06);
    touch-action: pan-y; /* 允许页面纵向滑动，拦截横向手势 */
}

.honor-slider-scope .slider-track {
    display: flex;
    list-style: none;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
}

.honor-slider-scope .slide-item {
    flex: 0 0 100%;
    width: 100%;
}

/* 纯图片容器 */
.honor-slider-scope .photo-holder {
    width: 100%;
    height: 520px;
    background: #111827;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.honor-slider-scope .photo-holder img {
    width: 56%;
    height: 100%;
    object-fit: cover;
    display: block;
    user-select: none;
    -webkit-user-drag: none;
}

/* 左右方向控制按钮 */
.honor-slider-scope .slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid var(--hs-border-light);
    border-radius: 50%;
    color: var(--hs-text-title);
    font-size: 18px;
    cursor: pointer;
    z-index: 5;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    outline: none;
}

.honor-slider-scope .slider-btn:hover {
    background: var(--hs-blue-primary);
    color: #ffffff;
    border-color: var(--hs-blue-primary);
}

.honor-slider-scope .prev-btn { left: -20px; }
.honor-slider-scope .next-btn { right: -20px; }

/* 分页指示器圆点 */
.honor-slider-scope .slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}

.honor-slider-scope .dot {
    width: 10px;
    height: 10px;
    background: #cbd5e1;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
}

.honor-slider-scope .dot.active {
    width: 28px;
    background: var(--hs-blue-primary);
    border-radius: 6px;
}
/* 绵阳校区 */
.youmo-wrapper,
.youmo-wrapper * {
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    -webkit-tap-highlight-color: transparent;
}

/* 2. 组件根命名空间变量定义 */
.youmo-wrapper {
    --ym-primary: #1876f2;
    --ym-primary-glow: rgba(24, 118, 242, 0.5);
    --ym-accent-gold: #fbbf24;
    --ym-bg-light: #f8fafc;
    --ym-text-title: #0f172a;
    --ym-text-body: #334155;
    --ym-text-muted: #64748b;
    --ym-white: #ffffff;
    --ym-radius-xl: 20px;
    --ym-radius-lg: 14px;

    display: block;
    background-color: var(--ym-bg-light);
    color: var(--ym-text-body);
    line-height: 1.7;
    font-size: 15px;
    overflow-x: hidden;
    width: 100%;
}

/* 滚动入场 */
.youmo-wrapper .ym-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.youmo-wrapper .ym-reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* Hero 区域 */
.youmo-wrapper .ym-hero-section {
    background: linear-gradient(135deg, #0a192f 0%, #0d2a4a 40%, #154585 75%, #1876f2 100%);
    color: #fff;
    padding: 80px 20px 60px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.youmo-wrapper #ym-particle-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

.youmo-wrapper .ym-hero-content {
    max-width: 1050px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.youmo-wrapper .ym-hero-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 6px 16px;
    border-radius: 30px;
    font-size: 13px;
    color: #e0f2fe;
    margin-bottom: 20px;
    backdrop-filter: blur(10px);
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
}

.youmo-wrapper .ym-hero-title {
    font-size: 48px;
    font-weight: 900;
    letter-spacing: 1px;
    line-height: 1.25;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #ffffff 0%, #bae6fd 40%, #fef08a 80%, #ffffff 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    color: transparent;
    animation: ymShineText 6s linear infinite;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3));
}

@keyframes ymShineText {
    0% {
        background-position: 0% center;
    }

    100% {
        background-position: 200% center;
    }
}

.youmo-wrapper .ym-hero-subtitle {
    font-size: 16px;
    color: #e2e8f0;
    max-width: 850px;
    margin: 0 auto;
    line-height: 1.8;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* 布局主容器 */
.youmo-wrapper .ym-main-container {
    max-width: 1300px;
    margin: 30px auto 60px;
    padding: 0 16px;
    position: relative;
    z-index: 10;
}

.youmo-wrapper .ym-block-card {
    background: var(--ym-white);
    border-radius: var(--ym-radius-xl);
    padding: 40px 28px;
    margin-bottom: 30px;
    box-shadow: 0 10px 40px -10px rgba(15, 23, 42, 0.05);
    border: 1px solid #e2e8f0;
}

.youmo-wrapper .ym-block-header {
    text-align: center;
    margin-bottom: 32px;
}

.youmo-wrapper .ym-block-tag {
    color: var(--ym-primary);
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 6px;
    display: block;
}

.youmo-wrapper .ym-block-title {
    font-size: 28px;
    color: var(--ym-text-title);
    font-weight: 800;
    margin-bottom: 10px;
}

.youmo-wrapper .ym-block-desc {
    color: var(--ym-text-muted);
    font-size: 14px;
    max-width: 700px;
    margin: 0 auto;
}

/* 3D倾斜卡片 */
.youmo-wrapper .ym-tilt-card {
    position: relative;
    background: #ffffff;
    border-radius: var(--ym-radius-lg);
    border: 1px solid #e2e8f0;
    overflow: hidden;
    transform-style: preserve-3d;
    perspective: 1000px;
    transition: transform 0.15s ease-out, box-shadow 0.3s ease, border-color 0.3s ease;
    cursor: pointer;
    touch-action: manipulation;
}

.youmo-wrapper .ym-tilt-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1.5px;
    background: radial-gradient(300px circle at var(--laser-x, 50%) var(--laser-y, 50%), #1876f2, transparent 70%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.youmo-wrapper .ym-tilt-card:hover {
    box-shadow: 0 15px 30px -10px rgba(24, 118, 242, 0.15);
    border-color: rgba(24, 118, 242, 0.3);
}

.youmo-wrapper .ym-tilt-card:hover::after {
    opacity: 1;
}

/* 网格与内容组件 */
.youmo-wrapper .ym-env-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.youmo-wrapper .ym-img-box-large {
    width: 100%;
    height: 380px;
    background: #f1f5f9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #475569;
    font-weight: 600;
    font-size: 14px;
    position: relative;
    border-bottom: 1px solid #e2e8f0;
    overflow: hidden;
}

.youmo-wrapper .ym-zoom-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    background: rgba(15, 23, 42, 0.85);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 11px;
    backdrop-filter: blur(6px);
    transition: all 0.3s;
}

.youmo-wrapper .ym-env-info {
    padding: 20px;
}

.youmo-wrapper .ym-env-info h3 {
    font-size: 18px;
    color: var(--ym-text-title);
    font-weight: 700;
    margin-bottom: 6px;
}

.youmo-wrapper .ym-env-info p {
    color: var(--ym-text-body);
    font-size: 13.5px;
    line-height: 1.6;
}

/* 课程体系 */
.youmo-wrapper .ym-course-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.youmo-wrapper .ym-course-card {
    background: #f8fafc;
    border-radius: var(--ym-radius-lg);
    padding: 24px 20px;
    border-top: 4px solid var(--ym-primary);
    transition: all 0.3s ease;
}

.youmo-wrapper .ym-course-card:hover {
    background: #fff;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    transform: translateY(-5px);
    border-top-color: var(--ym-accent-gold);
}

.youmo-wrapper .ym-course-icon {
    font-size: 28px;
    margin-bottom: 12px;
}

.youmo-wrapper .ym-course-card h3 {
    font-size: 17px;
    color: var(--ym-text-title);
    margin-bottom: 10px;
    font-weight: 700;
}

.youmo-wrapper .ym-course-card ul {
    list-style: none;
}

.youmo-wrapper .ym-course-card ul li {
    font-size: 13px;
    color: var(--ym-text-body);
    margin-bottom: 6px;
    padding-left: 16px;
    position: relative;
}

.youmo-wrapper .ym-course-card ul li::before {
    content: "✓";
    color: var(--ym-primary);
    position: absolute;
    left: 0;
    font-weight: bold;
}

.youmo-wrapper .ym-course-highlight-box {
    margin-top: 24px;
    background: #eff6ff;
    border-radius: var(--ym-radius-lg);
    padding: 20px;
    border: 1px dashed rgba(24, 118, 242, 0.4);
}

.youmo-wrapper .ym-course-highlight-box h4 {
    color: var(--ym-primary);
    font-size: 16px;
    margin-bottom: 6px;
    font-weight: 700;
}

.youmo-wrapper .ym-course-highlight-box p {
    font-size: 13.5px;
    color: var(--ym-text-body);
    line-height: 1.7;
}

/* 核心优势 */
.youmo-wrapper .ym-advantage-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.youmo-wrapper .ym-adv-item {
    display: flex;
    gap: 16px;
    background: #fff;
    padding: 20px;
    border-radius: var(--ym-radius-lg);
    border: 1px solid #edf2f7;
    transition: all 0.3s;
}

.youmo-wrapper .ym-adv-num {
    font-size: 28px;
    font-weight: 900;
    color: var(--ym-primary);
    line-height: 1;
}

.youmo-wrapper .ym-adv-text h3 {
    font-size: 16px;
    color: var(--ym-text-title);
    margin-bottom: 4px;
    font-weight: 700;
}

.youmo-wrapper .ym-adv-text p {
    font-size: 14px;
    color: var(--ym-text-muted);
    line-height: 1.5;
}

/* 资料库 */
.youmo-wrapper .ym-material-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.youmo-wrapper .ym-material-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    padding: 20px;
    border-radius: var(--ym-radius-lg);
    transition: all 0.3s;
}

.youmo-wrapper .ym-material-card h3 {
    font-size: 15px;
    color: var(--ym-primary);
    margin-bottom: 8px;
    font-weight: 700;
    border-bottom: 2px solid #e0e7ff;
    padding-bottom: 6px;
}

.youmo-wrapper .ym-material-card p {
    font-size: 13px;
    color: var(--ym-text-body);
    line-height: 1.5;
}

/* 锦旗区域 */
.youmo-wrapper .ym-banner-three-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

.youmo-wrapper .ym-banner-img-box {
    width: 100%;
    height: 280px;
    background: #f1f5f9;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid #e2e8f0;
    color: #64748b;
    font-weight: bold;
    text-align: center;
    /* padding: 16px; */
}

.youmo-wrapper .ym-banner-desc-box {
    padding: 18px;
}

.youmo-wrapper .ym-banner-tag {
    display: inline-block;
    background: #fef3c7;
    color: #b45309;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 10px;
    font-weight: bold;
    margin-bottom: 6px;
}

.youmo-wrapper .ym-banner-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--ym-text-title);
    margin-bottom: 4px;
}

.youmo-wrapper .ym-banner-sub {
    font-size: 12.5px;
    color: var(--ym-text-muted);
    line-height: 1.5;
}

/* 校区地图 */
.youmo-wrapper .ym-location-wrapper {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 24px;
    align-items: center;
}

.youmo-wrapper .ym-location-details h3 {
    font-size: 22px;
    color: var(--ym-text-title);
    margin-bottom: 10px;
    font-weight: 800;
}

.youmo-wrapper .ym-bus-routes {
    background: #f1f5f9;
    padding: 14px 16px;
    border-radius: var(--ym-radius-lg);
    font-size: 15px;
    color: var(--ym-text-body);
    margin: 16px 0;
    border-left: 4px solid var(--ym-primary);
}

/* .youmo-wrapper .ym-phone-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
} */

/* .youmo-wrapper .ym-phone-btn {
    flex: 1 1 auto;
    justify-content: center;
    background: var(--ym-primary);
    color: #fff;
    padding: 12px 18px;
    border-radius: 10px;
    font-weight: bold;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.3s;
    font-size: 13.5px;
    box-shadow: 0 4px 12px rgba(24, 118, 242, 0.25);
} */

/* 灯箱 Modal */
.youmo-wrapper .ym-lightbox-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(10, 25, 47, 0.88);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    z-index: 99999;
    justify-content: center;
    align-items: center;
    padding: 16px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.youmo-wrapper .ym-lightbox-modal.show {
    opacity: 1;
}

.youmo-wrapper .ym-lightbox-box {
    background: #fff;
    max-width: 800px;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    border-radius: var(--ym-radius-xl);
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4);
    transform: scale(0.95);
    transition: transform 0.3s ease;
}

.youmo-wrapper .ym-lightbox-modal.show .ym-lightbox-box {
    transform: scale(1);
}

.youmo-wrapper .ym-lightbox-header {
    padding: 16px 20px;
    background: #0f172a;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
}

.youmo-wrapper .ym-lightbox-header h3 {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}

.youmo-wrapper .ym-lightbox-close {
    background: none;
    border: none;
    color: #fff;
    font-size: 26px;
    cursor: pointer;
    padding: 0 8px;
    line-height: 1;
}

.youmo-wrapper .ym-lightbox-body {
    padding: 20px;
    text-align: center;
    overflow-y: auto;
}

.youmo-wrapper .ym-lightbox-img-demo {
    width: 100%;
    height: 100%;
    background: #e2e8f0;
    border: 2px dashed #94a3b8;
    border-radius: var(--ym-radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ym-text-muted);
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 12px;
    padding: 10px;
}

.youmo-wrapper #ymLightboxDesc {
    color: var(--ym-text-body);
    font-size: 13.5px;
    text-align: left;
    line-height: 1.7;
}

/* 1. 彻底禁用卡片整体的 transform 缩放与模糊 */
.youmo-wrapper .ym-tilt-card {
    transform: none !important;
    /* 强制重置 transform，防止 JS 放大整张卡片 */
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

/* 2. 鼠标移入时只加深阴影，不缩放整张卡片 */
.youmo-wrapper .ym-tilt-card:hover {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    border-color: #1876f2;
}

/* 3. 动效转移：鼠标移入时，只放大内部图片（文字在外面，不受任何影响，绝对清晰） */
.youmo-wrapper .ym-tilt-card .ym-img-box-large img {
    transition: transform 0.4s ease;
}

.youmo-wrapper .ym-tilt-card:hover .ym-img-box-large img {
    transform: scale(1.05);
    /* 👈 只放大图片，保留高级动效 */
}

/* 4. 确保文字渲染最清晰 */
.youmo-wrapper .ym-env-info h3,
.youmo-wrapper .ym-env-info p {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* ==========================================
   移动端响应式适配区 (max-width: 768px)
   ========================================== */
@media (max-width: 768px) {

    /* 上岸经验字体 样式开始*/
    .experience-link {
        font-size: 14px;
        color: #475569;
        text-decoration: none;
        line-height: 1.6;
        display: inline-block;
        transition: all 0.25s ease;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 100%;
    }

    /* 上岸经验字体 样式结束*/
    .ym-honor-tag {
        font-size: 12px;
    }

    .ym-stats-container {
        flex-direction: column;
        gap: 25px;
    }

    .ym-neon-logo-box {
        writing-mode: horizontal-tb;
        transform: scale(0.9) !important;
    }

    .ymgkimg1 {
        width: 80px;
    }

    .ym-neon-seal {
        writing-mode: horizontal-tb;
        padding: 6px 20px;
        width: auto;
        height: auto;
        letter-spacing: 2px;
    }

    .ym-stats-data-list {
        width: 100%;
        flex-wrap: wrap;
        gap: 12px;
    }

    .ym-stats-data-item {
        width: calc(50% - 6px);
        min-width: auto;
        padding: 15px 5px;
    }

    .ym-stats-data-list .ym-stats-data-item:last-child {
        width: 100%;
    }

    .ym-wall-heading {
        font-size: 20px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .ym-wall-heading em {
        font-size: 24px;
    }

    .ym-honor-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .ym-honor-card {
        padding: 17px 8px;
        border-radius: 14px;
    }

    .ym-score-val {
        font-size: 28px;
    }

    .ym-marquee-scope {
        padding: 30px 0;
    }

    .ym-marquee-header {
        margin-bottom: 20px;
    }

    .ym-marquee-title {
        font-size: 16px;
    }

    .ym-marquee-container {
        gap: 6px;
    }

    .ym-marquee-track {
        gap: 12px;
        padding: 10px 0;
    }

    .ym-marquee-group {
        gap: 12px;
    }

    .ym-marquee-item {
        padding: 6px 12px !important;
        border-radius: 25px !important;
        border-top-width: 1.5px !important;
        border-bottom-width: 1.5px !important;
        border-left-width: 1.5px !important;
        border-right-width: 1.5px !important;
    }

    .ym-badge-icon {
        font-size: 13px;
        margin-right: 5px;
    }

    .ym-student-name {
        font-size: 12px;
        margin-right: 6px;
    }

    .ym-job-info {
        font-size: 11px;
        margin-right: 10px;
    }

    .ym-student-score {
        font-size: 10px;
        padding: 2px 8px;
        border-radius: 12px;
    }

    .ym-marquee-item:hover {
        /* cursor: url({label:shubiaoshou}) 3 3,pointer; */
        transform: translateY(-1.5px);
    }

    .ym-track-to-left .ym-marquee-group {
        animation-duration: 18s;
    }

    .ym-delay-track .ym-marquee-group {
        animation-duration: 21s;
    }

    /* 课程模块 */
    .baidu-seo-course-module {
        padding: 0 10px;
    }

    .baidu-seo-course-module {
        min-height: 200px;
        width: 1340px;
        /* margin: 30px auto; */
        box-sizing: border-box;
    }

    .baidu-seo-course-module .course-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 14px;
    }

    .baidu-seo-course-module .course-title {
        font-size: 15px;
    }

    .baidu-seo-course-module .course-teacher {
        color: #000000;
        font-size: 12px;
    }

    .course-desc {
        font-size: 12px;
        padding-top: 5px;
        color: #696969;
    }

    .baidu-seo-course-module .course-card:hover {
        transform: none;
        border-color: #cbd5e1;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 0 8px rgba(0, 0, 0, 0.04);
    }

    .baidu-seo-course-module .course-card:active {
        opacity: 0.9;
        background-color: #f1f5f9;
    }

    .ax-exp-wrapper {
        padding: 20px 10px;
    }

    .ax-exp-wrapper .experience-list {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .ax-exp-wrapper .experience-section {
        padding: 20px 15px;
    }

    .ax-exp-wrapper .section-title {
        font-size: 20px;
    }

    .experience-list {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .experience-section {
        padding: 20px 15px;
    }

    .section-title {
        font-size: 20px;
    }

    /* 师资 */
    .sac-seo-title {
        font-size: 24px !important;
        text-align: center;
        color: #1876f2;
        margin-bottom: 25px;
        font-weight: 600;
        padding-top: 20px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .teacher-module {
        padding: 40px 0;
    }

    .teacher-module .container.pages {
        padding: 0 12px;
    }

    .teacher-module .page-header {
        margin-bottom: 25px;
    }

    .teacher-module .page-title {
        font-size: 24px !important;
    }

    .teacher-module .teacher-container {
        grid-template-columns: repeat(1, 1fr);
        gap: 12px;
        padding: 25px 0;
    }

    .teacher-module .image-wrapper img {
        width: 50%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    }

    .teacher-module .teacher-card {
        border-radius: 12px;
        box-shadow: 0 8px 22px rgba(0, 82, 204, 0.1);
    }

    .teacher-module .image-wrapper {
        aspect-ratio: 1 / 1;
    }

    .teacher-module .info-wrapper {
        padding: 10px !important;
        align-items: center;
        text-align: center;
    }

    .teacher-module .teacher-meta {
        justify-content: center !important;
        gap: 4px !important;
        margin-bottom: 6px !important;
        width: 100%;
    }

    .teacher-module .teacher-name {
        font-size: 15px !important;
    }

    .teacher-module .teacher-name::before {
        display: none !important;
    }

    .teacher-module .image-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        width: 100%;
        height: 180px;
        aspect-ratio: 4 / 3;
        overflow: hidden;
        background-color: #e6f0ff;
    }

    .teacher-module .teacher-tag {
        font-size: 10px !important;
        padding: 1px 5px !important;
    }

    .teacher-module .teacher-decr {
        font-size: 13px !important;
        text-align: left !important;
    }

    .teacher-module .teacher-tag::before {
        font-size: 9px !important;
    }

    .teacher-module .teacher-quote {
        display: -webkit-box !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        font-size: 11px !important;
        padding: 6px 8px !important;
        line-height: 1.4 !important;
        border-left: 2px solid #0052cc !important;
        width: 100%;
        text-align: left;
    }

    .teacher-module .teacher-quote p,
    .teacher-module .teacher-quote div {
        margin: 0 !important;
        padding: 0 !important;
        display: inline !important;
    }

    /* 开课现场 */
    .sac-section1 {
        height: 450px !important;
    }

    .sac-section2 {
        height: 400px !important;
    }

    .sac-honor-section .sac-dontaicuowei {
        width: 100%;
        padding-left: 20px;

    }

    .sac-honor-section .sac-honor-wall-container {
        padding: 6px 0;
        background: transparent;
    }

    .sac-honor-section .sac-honor-row {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        padding-bottom: 8px;
    }

    .sac-honor-section .sac-honor-row::-webkit-scrollbar {
        display: none;
    }

    .sac-honor-section .sac-honor-track {
        height: 150px;
        animation: none !important;
        padding: 0 15px;
    }

    .sac-honor-section .sac-row-offset .sac-honor-track::before,
    .sac-honor-section .sac-row-offset .sac-honor-track::after {
        display: none;
    }

    .sac-honor-section .sac-img-card {
        height: 155px;
        width: 260px;
        margin: 0 6px;
        scroll-snap-align: start;
        border: 4px solid #ffffff;
    }

    .sac-honor-section .sac-img-card img {
        height: 155px;
        transform: scale(1.15);
    }

    /* 我们是谁移动端适配触发状态 */
    .custom-about-section {
        padding: 50px 15px !important;
    }

    .custom-about-section .custom-about-container {
        gap: 50px !important;
    }

    .custom-about-section .custom-about-row,
    .custom-about-section .custom-about-row.custom-about-reverse {
        flex-direction: column !important;
        position: static !important;
    }

    .custom-about-section .custom-about-row .custom-about-img-box,
    .custom-about-section .custom-about-row .custom-about-text-card {
        width: 100% !important;
        position: static !important;
    }

    .custom-about-section .custom-about-img-box,
    .custom-about-section .custom-about-row .custom-about-text-card {
        transition: opacity 0.4s ease, transform 0.4s ease !important;
    }

    .custom-about-section .custom-about-row .custom-about-img-box {
        height: 220px !important;
        margin-bottom: -30px !important;
        border-radius: 14px !important;
    }

    .custom-about-section .custom-about-row .custom-about-text-card {
        padding: 25px 20px !important;
        border-radius: 14px !important;
    }

    .custom-about-row:not(.custom-about-reverse) .custom-about-img-box,
    .custom-about-row:not(.custom-about-reverse) .custom-about-text-card,
    .custom-about-row.custom-about-reverse .custom-about-img-box,
    .custom-about-row.custom-about-reverse .custom-about-text-card {
        transform: translateY(40px) !important;
    }

    .custom-about-section .custom-about-row.custom-about-active .custom-about-img-box,
    .custom-about-section .custom-about-row.custom-about-active .custom-about-text-card,
    .custom-about-section .custom-about-row.custom-about-reveal.custom-about-active .custom-about-img-box,
    .custom-about-section .custom-about-row.custom-about-reveal.custom-about-active .custom-about-text-card {
        transform: translateY(0) !important;
    }

    /* 有墨历程 */
    .tt-container {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .tt-title {
        font-size: 24px;
    }

    .tt-right-panel {
        padding-left: 2.5rem;
    }

    .tt-timeline-item {
        padding-left: 3rem;
    }

    .tt-text-stroke {
        font-size: 8rem;
    }

    /* 科研成果 */
    #edu-achievement-section .edu-container {
        padding: 40px 15px;
    }

    #edu-achievement-section .edu-section-header h2 {
        font-size: 1.8rem;
    }

    #edu-achievement-section .edu-achievement-grid {
        gap: 20px;
    }

    #edu-achievement-section .edu-card-image {
        height: 180px;
    }

    #edu-achievement-section .edu-card-body {
        padding: 20px 20px 24px 20px;
    }

    /* 四川总校 */
    .zy-embed-wrapper .banner-grid,
    .zy-embed-wrapper .row-item,
    .zy-embed-wrapper .space-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .zy-embed-wrapper .row-item.reverse .img-box {
        order: 0;
    }

    .zy-embed-wrapper .row-item.reverse .text-box {
        order: 0;
    }

    .zy-embed-wrapper .nav-links {
        display: none;
    }

    .zy-embed-wrapper .banner {
        padding: 40px 0;
    }

    .zy-embed-wrapper .banner-text h1 {
        font-size: 28px;
    }

    /* 校区环境导航栏 */
    .edu-campus-has-mega .edu-campus-full-panel {

        position: fixed !important;

        top: 0 !important;

        left: 100% !important;

        /* 藏在侧边栏右侧之外 */

        width: 100% !important;

        height: 100% !important;

        min-height: 100vh !important;

        padding: 0 !important;

        box-shadow: none !important;

        border-top: none !important;

        transform: none !important;

        opacity: 1 !important;

        visibility: visible !important;

        display: flex !important;

        flex-direction: column !important;

        transition: left 0.3s ease-in-out !important;

    }



    /* 滑入激活 */

    .edu-campus-has-mega .edu-campus-full-panel.edu-campus-active {

        left: 0 !important;

    }



    .edu-campus-has-mega .edu-campus-mobile-header {

        display: flex !important;

        align-items: center !important;

        justify-content: space-between !important;

        padding: 16px 20px !important;

        border-bottom: 1px solid #eeeeee !important;

        background-color: #f8f9fa !important;

        box-sizing: border-box !important;

    }



    .edu-campus-has-mega .edu-campus-back-btn {

        font-size: 14px !important;

        color: #1265ff !important;

        cursor: pointer !important;

        font-weight: bold !important;

    }



    .edu-campus-has-mega .edu-campus-mobile-title {

        font-size: 15px !important;

        font-weight: bold !important;

        color: #333333 !important;

    }



    /* 核心垂直滚动条，保障50个校区顺畅滑动不溢出 */

    .edu-campus-has-mega .edu-campus-inner-scroll {

        flex: 1 !important;

        overflow-y: auto !important;

        -webkit-overflow-scrolling: touch !important;

        flex-direction: column !important;

        padding: 15px 20px !important;

    }



    .edu-campus-has-mega .edu-campus-links-grid {

        grid-template-columns: 1fr !important;

        gap: 20px !important;

    }



    .edu-campus-has-mega .edu-campus-region-group span {

        margin-bottom: 5px !important;

        font-size: 15px !important;

        color: #1265ff !important;

        background: #fdfaf4 !important;

        padding: 4px 8px !important;

        border-radius: 4px !important;

        border-bottom: none !important;

    }



    .edu-campus-has-mega .edu-campus-list li {

        border-bottom: 1px solid #fafafa !important;

        margin-bottom: 0 !important;

    }



    .edu-campus-has-mega .edu-campus-list li a {

        font-size: 15px !important;

        display: block !important;

        padding: 12px 0 !important;

        color: #222222 !important;

        white-space: nowrap !important;

        overflow: hidden !important;

        text-overflow: ellipsis !important;

        /* 强制单行且超长省略 */

    }

    .edu-campus-has-mega .edu-campus-list li p {

        font-size: 16px !important;

        display: block !important;

        padding: 12px 0 !important;

        color: #222222 !important;

        white-space: nowrap !important;

        overflow: hidden !important;

        text-overflow: ellipsis !important;

        /* 强制单行且超长省略 */

    }



    /* 咨询列表 */
    .zixunquanbuanniuyingchang {
        display: block !important;
    }

    .sn-news-container {
        flex-direction: column;
        gap: 12px;
        padding: 0 !important;
    }

    .sn-news-container .sn-news-module {
        width: 100%;
        border-radius: 0;
        box-shadow: none;
        border-bottom: 1px solid #e0e0e0;
        position: sticky;
        top: 0;
        z-index: 10;
    }

    .sn-news-container .sn-module-title {
        display: none;
    }

    .sn-news-container .sn-news-nav-list {
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        padding: 10px 12px;
        gap: 8px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .sn-news-container .sn-news-nav-list::-webkit-scrollbar {
        display: none;
    }

    .sn-news-container .sn-news-nav-list li a {
        padding: 6px 14px;
        background-color: #f3f4f6;
        border-radius: 20px;
        font-size: 14px;
    }

    .sn-news-container .sn-news-nav-list li a:hover {
        background-color: #1876f2;
        color: #ffffff;
    }

    .sn-news-container .sn-news-content-area {
        width: 100%;
        min-height: auto;
        border: none;
        background-color: transparent;
        padding: 0 12px;
    }

    .sn-news-container .sn-news-item {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 12px !important;
    }

    .sn-news-container .sn-news-left {
        width: 100% !important;
        height: 180px !important;
        margin-right: 0 !important;
        margin-bottom: 12px !important;
    }

    .sn-news-container .sn-news-center {
        margin-right: 0 !important;
        margin-bottom: 10px !important;
        width: 100% !important;
    }

    .sn-news-container .sn-news-right {
        align-self: flex-end !important;
    }

    /* 网页底部样式 */
    /* 搜索框 */
    .pcssuokuang {
        display: none !important;
    }

    .yidonduanssuokuang {
        display: flex !important;
    }

    .custom-search-box {
        max-width: 100%;
        /* 手机端宽度撑满父级容器，更易点击 */
        padding: 4px 5px 4px 14px;
    }

    .custom-search-button {
        padding: 6px 12px;
        /* 适当缩小按钮间距，给输入区域留空间 */
    }

    /* 校区环境 移动端字体样式  */
    .zy-embed-wrapper .section-title h2 {
        display: inline-block !important;
        /* 必须是 inline-block，下划线才能居中 */
        font-size: 20px !important;
        /* 稍微调小一点，更适合移动端 */
        color: #1e293b !important;
        margin: 0 0 10px 0 !important;
        padding: 0 !important;
        position: relative !important;
        float: none !important;
    }

    .zy-embed-wrapper .text-box h3 {
        font-size: 20px;
        color: #1e293b;
        /* margin-bottom: 20px; */
        font-weight: bold;
    }

    .zhusuhuanjing {
        flex-direction: column;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

    .zonxiaotbjianju {
        margin: 0 0 20px 0 !important;
    }

    .tbiaojianju {
        margin-bottom: 20px;
    }

    /* ip形象图片模块 */
    /* 有墨历程 */
    .youmolicheng_div {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .youmolicheng_div img {
        height: 100px;
        margin-bottom: 0px;
    }

    .kechengxiangqingimg img {
        width: 50px;
    }

    .kechengxiangqingimg h2 {
        font-size: 18px;
    }

    .kechengxiangqingimgs img {
        width: 50px;
    }

    .kechengxiangqingimgs h2 {
        font-size: 18px;
    }


    .youmokechengliebiaoimg {
        width: 50px;
    }

    .yinanwentiimg {
        width: 60px;
    }

    .yinanwentiimgs {
        width: 80px;
    }

    .shizidiv {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }

    .shizidivyi {
        display: flex;
        margin-top: 10px;
        justify-content: center;
        background: rgba(255, 255, 255, 0);
        align-items: center;
        flex-direction: column;
        visibility: visible;
        animation-name: fadeInDown;
    }

    .kcshoujiimg {
        /* width: 90%; */
        height: 80% !important;
        width: auto;
    }

    /* 查看更多 */
    .cm-footer-container {
        margin-top: 24px;
        /* 移动端缩小上边距 */
        padding-top: 16px;
    }

    .cm-inline-ghost-link {
        font-size: 14px;
        /* 移动端适当缩小字号 */
        padding: 8px 16px;
        /* 微调内边距 */
    }

    /* 联系样式 */
    .ym-map-modal-mask {
        align-items: center;
    }

    .ym-map-modal-content {
        width: 100%;
        border-radius: 20px;
        padding: 24px;
        margin-bottom: 0;
        transform: scale(0.9);
        opacity: 0;
        transition: transform 0.25s ease, opacity 0.25s ease;
    }

    .ym-map-modal-mask.active .ym-map-modal-content {
        transform: scale(1);
        opacity: 1;
    }

    .ym-map-drag-handle {
        display: none;
    }

    /* 宜宾校区样式 */
    .honor-slider-scope {
        padding: 50px 0;
    }

    .honor-slider-scope .section-header {
        margin-bottom: 24px;
    }

    .honor-slider-scope .section-header h2 {
        font-size: 26px;
    }

    .honor-slider-scope .photo-holder {
        height: 280px; /* 移动端自适应大图高度 */
    }

    .honor-slider-scope .slider-track-container {
        border-radius: 12px;
    }

    .honor-slider-scope .prev-btn { left: 8px; width: 36px; height: 36px; font-size: 14px; }
    .honor-slider-scope .next-btn { right: 8px; width: 36px; height: 36px; font-size: 14px; }
    .campus-env-scope .ce-hero-banner {
        padding: 40px 0 30px;
    }

    .campus-env-scope .ce-hero-title {
        font-size: 24px;
        margin-bottom: 10px;
    }

    .campus-env-scope .ce-hero-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .campus-env-scope .ce-section-block {
        padding: 36px 0;
    }

    /* 手机端变为上下单列，并且无论PC是左是右，手机端一律【图片在上，文字在下】 */
    .campus-env-scope .ce-section-content,
    .campus-env-scope .ce-section-content.reverse {
        flex-direction: column-reverse;
        /* 子元素倒序排列：使得写在后面的图片显示在顶部 */
        gap: 20px;
    }

    .campus-env-scope .ce-text-holder,
    .campus-env-scope .ce-media-holder {
        width: 100%;
    }

    .campus-env-scope .ce-media-holder {
        height: 200px;
        font-size: 13px;
    }

    .campus-env-scope .ce-text-holder h2 {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .campus-env-scope .ce-text-holder p {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .campus-env-scope .ce-feature-bullets li {
        font-size: 14px;
    }

    /* 绵阳校区样式 */
    .youmo-wrapper .ym-hero-section {
        padding: 50px 16px 40px;
    }

    .youmo-wrapper .ym-hero-badge {
        font-size: 11.5px;
        padding: 4px 12px;
    }

    .youmo-wrapper .ym-hero-title {
        font-size: 24px;
        letter-spacing: 0;
        margin-bottom: 12px;
    }

    .youmo-wrapper .ym-hero-subtitle {
        font-size: 13.5px;
        line-height: 1.6;
    }

    .youmo-wrapper .ym-main-container {
        padding: 0 10px;
        margin-top: 20px;
    }

    .youmo-wrapper .ym-block-card {
        padding: 24px 16px;
        border-radius: 16px;
        margin-bottom: 20px;
    }

    .youmo-wrapper .ym-block-title {
        font-size: 20px;
    }

    .youmo-wrapper .ym-block-desc {
        font-size: 13px;
    }

    .youmo-wrapper .ym-env-grid-2,
    .youmo-wrapper .ym-course-grid-4,
    .youmo-wrapper .ym-advantage-grid,
    .youmo-wrapper .ym-material-grid,
    .youmo-wrapper .ym-banner-three-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .youmo-wrapper .ym-img-box-large,
    .youmo-wrapper .ym-banner-img-box {
        height: 300px;
        width: 100%
    }

    .youmo-wrapper .ym-lightbox-img-demo {
        height: 200px;
    }

    /* .youmo-wrapper .ym-phone-btn {
        width: 100%;
    } */

    /* 2. 图片容器：限制固定高度（与后两个卡片保持一致） */
    .youmo-wrapper .ym-img-box-large {
        width: 100%;
        height: 260px;
        /* 👈 关键：指定确切高度（可根据需要调整为 280px 或 300px） */
        flex-shrink: 0;
        /* 👈 防止图片挤压下方文字区域 */
        position: relative;
        overflow: hidden;
    }

    /* 3. 图片本身：自适应铺满容器 */
    .youmo-wrapper .ym-img-box-large img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        /* 👈 关键：按比例铺满容器，超出部分自动裁切，绝不拉伸 */
        display: block;
    }

    /* 4. 下方文字区域：自动占满剩余空间 */
    .youmo-wrapper .ym-env-info {
        padding: 20px;
        background: #ffffff;
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }

    /* 1. 彻底禁用卡片整体的 transform 缩放与模糊 */
    .youmo-wrapper .ym-tilt-card {
        transform: none !important;
        /* 强制重置 transform，防止 JS 放大整张卡片 */
        transition: box-shadow 0.3s ease, border-color 0.3s ease;
    }

    /* 2. 鼠标移入时只加深阴影，不缩放整张卡片 */
    .youmo-wrapper .ym-tilt-card:hover {
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
        border-color: #1876f2;
    }

    /* 3. 动效转移：鼠标移入时，只放大内部图片（文字在外面，不受任何影响，绝对清晰） */
    .youmo-wrapper .ym-tilt-card .ym-img-box-large img {
        transition: transform 0.4s ease;
    }

    .youmo-wrapper .ym-tilt-card:hover .ym-img-box-large img {
        transform: scale(1.05);
        /* 👈 只放大图片，保留高级动效 */
    }

    /* 4. 确保文字渲染最清晰 */
    .youmo-wrapper .ym-env-info h3,
    .youmo-wrapper .ym-env-info p {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-rendering: optimizeLegibility;
    }
}

/* 绵阳校区样式 */
@media (max-width: 1024px) {
    .youmo-wrapper .ym-hero-title {
        font-size: 36px;
    }

    .youmo-wrapper .ym-course-grid-4,
    .youmo-wrapper .ym-material-grid,
    .youmo-wrapper .ym-banner-three-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .youmo-wrapper .ym-location-wrapper {
        grid-template-columns: 1fr;
    }
}

/* 宜宾校区样式 */
@media (max-width: 992px) {
    .campus-env-scope .ce-container {
        padding: 0 20px;
    }

    .campus-env-scope .ce-hero-banner {
        padding: 60px 0 40px;
    }

    .campus-env-scope .ce-hero-title {
        font-size: 34px;
    }

    .campus-env-scope .ce-hero-desc {
        font-size: 16px;
    }

    .campus-env-scope .ce-section-block {
        padding: 50px 0;
    }

    .campus-env-scope .ce-section-content {
        gap: 36px;
    }

    .campus-env-scope .ce-text-holder h2 {
        font-size: 26px;
    }

    .campus-env-scope .ce-media-holder {
        height: 300px;
    }
}


/* 有墨历程pc专属样式2 */
@media (min-width: 1024px) {
    .tt-container {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .tt-main-grid {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .tt-left-panel {
        grid-column: span 5 / span 5;
        position: sticky;
        top: 4rem;
    }

    .tt-right-panel {
        grid-column: span 7 / span 7;
    }

    .tt-right-panel .tt-timeline-line {
        left: 1rem;
    }

    .tt-right-panel .tt-timeline-dot {
        left: 12px;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1440px) {
    body {
        /* 方案A：使用 zoom（主流浏览器已全面支持，极佳的布局适应性） */
        zoom: 0.85;
        /* 按 85% 等比缩放，可根据效果自行调整为 0.9 或 0.8 */
    }
}

/* ==========================================
   终极防抖安全补丁（配合页面的 resize 监听）
   ========================================== */
body.resize-none,
body.resize-none *,
body.resize-none *::before,
body.resize-none *::after {
    transition: none !important;
    animation: none !important;
}