/* ========== Reset & Base ========== */
* { margin: 0; padding: 0; box-sizing: border-box; }
:root {
    --purple: #7c4397;
    --purple-d: #5d2d80;
    --purple-l: #9a63bd;
    --red: #e60012;
    --text: #333;
    --gray: #888;
    --bg: #f4f3f6;
    --radius: 16px;
    --transition: all .35s ease;
    --header-h: 100px; /* 顶部导航高度，与 .header .container 保持一致 */
}
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 10px); }
body {
    
    color: var(--text); background: #fff; line-height: 1.7; overflow-x: hidden;
    /* 顶部导航改为固定浮层，用等高内边距占位，避免内容被遮挡 */
    padding-top: var(--header-h);
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
img { max-width: 100%; display: block; border: 0; }
a { text-decoration: none; color: inherit; }
ul, li { list-style: none; }
.container { max-width: 1600px; margin: 0 auto; padding: 0 24px; width: 100%; }

/* ========== 顶部导航（固定浮层，页面下拉时始终浮在上层；滚动后背景半透明磨砂） ========== */
.header {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100; width: 100%;
    background: #fff;
    transition: background-color .35s ease, box-shadow .35s ease, backdrop-filter .35s ease;
}
/* 向下滚动后：半透明 + 毛玻璃 + 轻投影 */
.header.scrolled {
    background: rgba(255, 255, 255, .72);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    backdrop-filter: saturate(180%) blur(14px);
    box-shadow: 0 6px 24px rgba(93, 45, 128, .12);
}
.header .container { display: flex; align-items: center; justify-content: space-between; height: 100px; }
.logo img { height: 52px; width: auto; }
.nav { display: flex; align-items: center; gap: 42px; }
.nav a { position: relative; font-size: 19px; color: #333; padding: 6px 0; transition: var(--transition); }
.nav a:hover { color: var(--purple); }
/* 当前项下方小横条（宽度与文字一致） */
.nav a::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: -5px;
    height: 3px; border-radius: 3px; background: var(--purple);
    transform: scaleX(0); transform-origin: center;
    transition: var(--transition);
}
.nav a:hover::after { transform: scaleX(.5); }
.nav a.active { color: var(--purple); font-weight: 700; }
.nav a.active::after { transform: scaleX(1); }
.menu-btn { display: none; flex-direction: column; gap: 5px; background: none; border: 0; cursor: pointer; padding: 8px; }
.menu-btn span { width: 24px; height: 2.5px; background: var(--purple); border-radius: 3px; transition: var(--transition); }
.menu-btn.open span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
.menu-btn.open span:nth-child(2) { opacity: 0; }
.menu-btn.open span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }

/* ========== 幻灯通用 ========== */
.slider { position: relative; width: 100%; height: 100%; overflow: hidden; }
.slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1s ease, visibility 1s; }
.slide.active { opacity: 1; visibility: visible; }
.slide.active img { animation: slowZoom 6s ease-out both; }
.slide img { width: 100%; height: 100%; object-fit: cover; }
@keyframes slowZoom { from { transform: scale(1.06); } to { transform: scale(1); } }
/* 幻灯左右箭头 */
.slider-arrow {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 6;
    width: 54px; height: 54px; border: 0; border-radius: 50%; cursor: pointer;
    background: rgba(255, 255, 255, .72); /* 半透明白，底图微微透出 */
    color: #6d1b8a; font-size: 18px;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
    transition: var(--transition);
}
.slider-arrow i { line-height: 1; }
.slider-arrow:hover { background: rgba(255, 255, 255, .95); transform: translateY(-50%) scale(1.1); box-shadow: 0 12px 28px rgba(0, 0, 0, .28); }
.slider-arrow:active { transform: translateY(-50%) scale(.96); }
.slider-arrow.prev { left: 26px; }
.slider-arrow.next { right: 26px; }

/* 幻灯底部指示进度条 */
.slider-bars {
    position: absolute; left: 50%; bottom: 26px; transform: translateX(-50%); z-index: 6;
    display: flex; align-items: center; gap: 10px;
}
.slider-bars .bar {
    display: block; width: 48px; height: 4px; border-radius: 4px;
    background: rgba(109, 27, 138, .22); overflow: hidden; cursor: pointer;
    transition: var(--transition);
}
.slider-bars .bar:hover { background: rgba(109, 27, 138, .4); }
.slider-bars .bar i { display: block; width: 0; height: 100%; background: #6d1b8a; border-radius: 4px; }
.slider-bars .bar.active i { animation: barGrow linear forwards; }
@keyframes barGrow { from { width: 0; } to { width: 100%; } }

/* 幻灯只有一张图片时：无指示条、无左右箭头、无任何动效 */
.slider-single .slider-arrow { display: none; }
.slider-single .slide { transition: none; }
.slider-single .slide.active img { animation: none; }

/* ========== 滚动进入动效 ========== */
.reveal { opacity: 0; transform: translateY(46px); transition: opacity .9s ease, transform .9s cubic-bezier(.25, .8, .25, 1); }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .12s; }
.reveal-delay-2 { transition-delay: .24s; }
/* 左右方向滑入（左右不同时出现，更灵动） */
.reveal-left { transform: translateX(-60px); }
.reveal-left.visible { transform: translateX(0); }
.reveal-right { transform: translateX(60px); }
.reveal-right.visible { transform: translateX(0); }
/* 未启用 JS 时直接显示，避免内容不可见 */
html:not(.js) .reveal { opacity: 1; transform: none; }
/* 系统“减弱动效”偏好 */
@media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
    .slide.active img { animation: none; }
}

/* ========== 首屏（按幻灯原图 1920:800 完整显示，不裁切） ========== */
.hero { position: relative; width: 100%; aspect-ratio: 1920 / 800; background: #ebebee; }

/* ========== 关于我们（白底，左图右文，无卡片） ========== */
.about { background: #fff; padding: 90px 0; }
.about-wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 60px; align-items: center; }
.about-wrap > * { min-width: 0; }
.about-pic { border-radius: 14px; overflow: hidden; }
.about-pic img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.about-wrap:hover .about-pic img { transform: scale(1.04); }
.about-txt h2 {
    font-size: 36px; font-weight: 800; letter-spacing: 2px; margin-bottom: 26px;
    background: linear-gradient(90deg, #93309f, #6d1b8a);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: #6d1b8a;
}
.about-txt p { font-size: 19px; color: #444; line-height: 2; margin-bottom: 8px; }
.about-txt p b { color: #222; font-weight: 700; }

/* ========== 数据展示 ========== */
.stats { background: #f1f0f3; padding: 70px 0; }
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); row-gap: 56px; }
.stats-grid li { text-align: center; position: relative; }
.stats-grid li:not(:nth-child(3n))::after {
    content: ""; position: absolute; right: 0; top: 12%; height: 76%; width: 1px; background: #ddd9e0;
}
.stats-grid .num {
    font-size: 72px; font-weight: 500; line-height: 1.1; letter-spacing: 1px;
    background: linear-gradient(180deg, #9257bd, var(--purple-d));
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: var(--purple-d);
}
.stats-grid .num span { display: inline-block; min-width: 1ch; }
.stats-grid .num small {
    font-size: 22px; font-weight: 400; margin-left: 2px;
    color: #4a4a4a; -webkit-text-fill-color: #4a4a4a;
}
.stats-grid p { font-size: 14px; color: #999; margin-top: 10px; letter-spacing: 2px; }

/* ========== 团队幻灯 ========== */
.team { position: relative; aspect-ratio: 1920 / 800; min-height: 200px; }

/* ========== 品牌理念横幅 ========== */
.banner { line-height: 0; }
.banner img { width: 100%; height: auto; }

/* ========== 企业动态 ========== */
.news { padding: 84px 0 90px; background: #f0f0f0; }
.news-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 44px; }
.news-head h2 { font-size: 42px; color: var(--purple);   letter-spacing: 3px;  font-weight: 450;}
/* 标题下方白色装饰线 */
.news-head-line { height: 1px; border-radius: 4px; background: #fff; margin-bottom: 44px; box-shadow: 0 1px 4px rgba(0, 0, 0, .06); }

/* 立体胶囊按钮（白描边 + 内阴影 + 外投影） */
.more-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 14px;
    min-width: 240px; height: 64px; padding: 0 34px;
    font-size: 23px; letter-spacing: 1px; color: #4d4d4d; font-weight: 500; text-align: center; line-height: 1;
    background: linear-gradient(180deg, #e6e8ea 0%, #eef0f1 45%, #fbfbfc 100%);
    border: 5px solid #fff; border-radius: 999px;
    box-shadow:
        0 14px 24px rgba(0, 0, 0, .12),
        0 3px 6px rgba(0, 0, 0, .06),
        inset 0 9px 14px rgba(140, 145, 152, .20),
        inset 0 -7px 12px rgba(255, 255, 255, .95);
    transition: var(--transition);
}
.more-btn span { font-size: 20px; line-height: 1; transition: var(--transition); }
.more-btn:hover {
    color: var(--purple); transform: translateY(-3px);
    box-shadow:
        0 20px 30px rgba(0, 0, 0, .16),
        inset 0 9px 14px rgba(140, 145, 152, .16),
        inset 0 -7px 12px #fff;
}
.more-btn:hover span { transform: translateX(4px); }
.more-btn:active { transform: translateY(0) scale(.98); }

/* 新闻卡片：标题 → 简介一行 → 大圆角图片 */
.news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; }
.news-card { display: block; min-width: 0; }
.news-card h3 {
    font-size: 23px; color: #222; font-weight: 700; line-height: 1.5; letter-spacing: .5px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: var(--transition);
}
.news-card:hover h3 { color: var(--purple); }
.news-desc {
    font-size: 15px; color: #9a9a9a; margin: 12px 0 20px; letter-spacing: .5px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.news-thumb {
    aspect-ratio: 548 / 305; border-radius: 26px; overflow: hidden;
    background: #f0eff2; transition: var(--transition);
}
.news-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.25, .8, .25, 1); }
.news-card:hover .news-thumb { box-shadow: 0 18px 40px rgba(93, 45, 128, .18); }
.news-card:hover .news-thumb img { transform: scale(1.06); }

/* 企业动态列表页（newlist.html）：白底 + 栏目标题细线 + 图在上 */
.news-list { background: #fff; }
.news-list .news-head { padding-bottom: 22px; border-bottom: 1px solid #e8e6ec; margin-bottom: 44px; }
.news-list .news-card h3 { margin: 18px 0 0; font-size: 21px; }
.news-list .news-desc {
    margin: 10px 0 0; font-size: 15px; color: #9a9a9a;
    white-space: normal; overflow: hidden;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.news-list .news-thumb { background: #f2f1f4; }
@media (max-width: 820px) {
    .news-list .news-head { padding-bottom: 16px; margin-bottom: 28px; }
    .news-list .news-card h3 { margin-top: 14px; font-size: 18px; }
    .news-list .news-desc { margin-top: 8px; font-size: 13.5px; }
}

/* ========== 页脚 ========== */
.footer { background: #6d1b8a; text-align: center; padding: 34px 16px 28px; }
.f-slogan { font-size: 26px; font-weight: 300; color: #fbf9fc; letter-spacing: 10px; margin-bottom: 14px; }
.f-copy { font-size: 18px; color: #bfa7c7; letter-spacing: 2px; }
.f-copy a { color: #bfa7c7; }
.f-copy a:hover { color: #fff; }

/* ========== 平板 ≤1024px ========== */
@media (max-width: 1024px) {
    .nav { gap: 26px; }
    .nav a { font-size: 17px; }
    .about-wrap { grid-template-columns: 1fr 1fr; gap: 36px; }
    .about-txt h2 { font-size: 30px; }
    .about-txt p { font-size: 17px; }
    .stats-grid .num { font-size: 50px; }
    .stats-grid .num small { font-size: 22px; }
    .news-card h3 { font-size: 20px; }
    .more-btn { min-width: 200px; height: 62px; font-size: 17px; border-width: 6px; }
    .news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}

/* ========== 大屏手机/小平板 ≤820px ========== */
@media (max-width: 820px) {
    :root { --header-h: 68px; }
    .header .container { height: 68px; padding: 0 18px; }
    .logo img { height: 38px; }
    .nav {
        position: fixed; top: 0; right: -100%; width: min(300px, 78vw); height: 100vh;
        background: #fff; flex-direction: column; justify-content: center; gap: 14px;
        box-shadow: -10px 0 40px rgba(93, 45, 128, .18);
        transition: right .4s cubic-bezier(.25, .8, .25, 1); z-index: 101;
    }
    .nav.open { right: 0; }
    .nav a { font-size: 17px; padding: 12px 30px; width: 100%; text-align: center; }
    .nav a::after { left: 50%; right: auto; width: 22px; transform: translateX(-50%) scaleX(0); }
    .nav a:hover::after { transform: translateX(-50%) scaleX(.5); }
    .nav a.active::after { transform: translateX(-50%) scaleX(1); }
    .menu-btn { display: flex; position: relative; z-index: 102; }
    /* 手机/平板：幻灯显示左右箭头，尺寸缩小并贴近两侧 */
    .slider-arrow { width: 42px; height: 42px; font-size: 16px; }
    .slider-arrow.prev { left: 10px; }
    .slider-arrow.next { right: 10px; }
    /* 手机/平板：幻灯按 1920:800 原比例完整显示（不裁切） */
    .hero { aspect-ratio: 1920 / 800; min-height: 0; }
    .about { padding: 60px 0; }
    .about-wrap { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .about-txt h2 { font-size: 24px; }
    .about-txt p { font-size: 16px; line-height: 1.9; }
    .stats { padding: 50px 0; }
    .stats-grid { row-gap: 36px; }
    .stats-grid .num { font-size: 38px; }
    .stats-grid .num small { font-size: 17px; }
    .stats-grid p { font-size: 12px; letter-spacing: 1px; }
    .team { aspect-ratio: 1920 / 800; height: auto; min-height: 0; }
    .news { padding: 56px 0 64px; }
    .news-head { margin-bottom: 30px; align-items: center; }
    .news-head h2 { font-size: 24px; }
    .more-btn { min-width: 168px; height: 52px; font-size: 15px; letter-spacing: 1px; gap: 8px; border-width: 5px; padding: 0 24px; }
    .more-btn span { font-size: 16px; }
    .news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
    .news-card h3 { font-size: 19px; }
    .news-desc { font-size: 14px; margin: 10px 0 16px; }
    .news-thumb { border-radius: 20px; }
    .f-slogan { font-size: 16px; letter-spacing: 2px; }
    .f-copy { font-size: 12.5px; padding: 0 10px; }
}

/* ========== 竖屏手机 ≤640px ========== */
@media (max-width: 640px) {
    .container { padding: 0 18px; }
    .news-head { flex-wrap: wrap; gap: 16px; }
    .news-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
    .news-card h3 { font-size: 17px; letter-spacing: 0; }
    .news-desc { font-size: 13px; margin: 8px 0 14px; }
    .news-thumb { border-radius: 16px; }
    .news-head h2 { font-size: 22px; }
    .about-txt h2 { font-size: 22px; margin-bottom: 18px; }
    .about-txt p { font-size: 15px; }
    .stats { padding: 44px 0; }
    .stats-grid { row-gap: 28px; }
    .stats-grid .num { font-size: 32px; }
    .stats-grid .num small { font-size: 15px; }
    .stats-grid p { font-size: 11.5px; letter-spacing: 0; }
    .f-slogan { font-size: 15px; letter-spacing: 1px; }
    .f-copy { font-size: 11.5px; }
}

/* ========== 手机 ≤480px ========== */
@media (max-width: 480px) {
    .hero { aspect-ratio: 1920 / 800; }
    .more-btn { min-width: 118px; height: 40px; font-size: 12.5px; gap: 6px; padding: 0 16px; border-width: 4px; }
    .more-btn span { font-size: 13px; }
    .news-head h2 { font-size: 20px; letter-spacing: 2px; }
    .news-card h3 { font-size: 15.5px; }
    .news-desc { font-size: 12.5px; }
    .about-txt h2 { font-size: 20px; }
    .about-txt p { font-size: 14px; line-height: 1.85; }
    .stats-grid .num { font-size: 28px; }
    .stats-grid p { font-size: 11px; }
    /* 手机站：幻灯保留左右箭头，尺寸再缩小、更贴边 */
    .slider-arrow { width: 34px; height: 34px; font-size: 13px; }
    .slider-arrow.prev { left: 8px; }
    .slider-arrow.next { right: 8px; }
    .stats-grid li:not(:nth-child(3n))::after { display: none; }
    .stats-grid .num { font-size: 30px; }
    .stats-grid .num small { font-size: 14px; }
    .stats-grid p { font-size: 11px; }
}

/* ==========================================================
   内页通用板块（about.html 等使用）
   ========================================================== */
/* ========== 全屏大图 ========== */
.full-img { line-height: 0; background: #ebebee; }
.full-img img { width: 100%; height: auto; max-height: 100vh; object-fit: cover; display: block; }

/* ========== 分院列表（通栏左右图文交替） ========== */
.branches { background: #fff; }
.branch-row {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch; min-height: 580px;
}
.branch-pic { overflow: hidden; min-width: 0; }
.branch-pic img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s cubic-bezier(.25, .8, .25, 1); }
/* 分院图片轮播：单列/移动端也保证容器有高度，多图轮播不塌陷 */
.branch-pic.slider { aspect-ratio: 16 / 10; min-height: 220px; }
.branch-row:hover .branch-pic img { transform: scale(1.04); }
.branch-txt {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    text-align: center; padding: 70px 60px;
}
.branch-txt h2 {
    font-size: 36px; font-weight: 400; letter-spacing: 2px; margin-bottom: 18px;
    background: linear-gradient(90deg, #93309f, #6d1b8a);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: #6d1b8a;
}
.branch-txt .branch-sub { font-size: 20px; color: #555; margin-bottom: 20px; }
.branch-txt p { font-size: 19px; color: #444; line-height: 1.95; }
/* 图片在右：奇偶交替 */
.branch-row.rev .branch-pic { order: 2; }
.branch-row.rev .branch-txt { order: 1; }
/* 一左一右交替排版（第1条图左、第2条图右，依此类推） */
.branches .branch-row:nth-child(even) .branch-pic { order: 2; }
.branches .branch-row:nth-child(even) .branch-txt { order: 1; }
/* 手机/平板单列时不交替，保持图片在上、文字在下 */
@media (max-width: 820px) {
    .branches .branch-row:nth-child(even) .branch-pic,
    .branches .branch-row:nth-child(even) .branch-txt { order: initial; }
}

@media (max-width: 1024px) {
    .branch-row { min-height: 470px; }
    .branch-txt { padding: 52px 40px; }
    .branch-txt h2 { font-size: 29px; }
    .branch-txt .branch-sub { font-size: 17px; }
    .branch-txt p { font-size: 16.5px; }
}
@media (max-width: 820px) {
    .branch-row { grid-template-columns: minmax(0, 1fr); min-height: auto; }
    .branch-pic { height: 56vw; min-height: 200px; }
    .branch-row.rev .branch-pic { order: 0; }
    .branch-row.rev .branch-txt { order: 1; }
    .branch-txt { padding: 36px 22px 46px; }
    .branch-txt h2 { font-size: 25px; }
    .branch-txt .branch-sub { font-size: 16px; }
    .branch-txt p { font-size: 15px; line-height: 1.9; }
}
@media (max-width: 640px) {
    .full-img img { max-height: 62vh; }
    .branch-txt h2 { font-size: 21px; margin-bottom: 12px; }
    .branch-txt .branch-sub { font-size: 14.5px; margin-bottom: 14px; }
    .branch-txt p { font-size: 14px; }
}

/* ==========================================================
   文章详情页（new.html）：模糊背景大图 + 正文
   ========================================================== */
/* 全屏模糊背景 + 大标题 */
.art-banner {
    position: relative; width: 100%; height: min(74vh, 620px); min-height: 340px;
    overflow: hidden; background: #2b1a3c;
    display: flex; align-items: center; justify-content: center;
}
.art-banner .ab-bg {
    position: absolute; inset: -26px;
    background-position: center; background-size: cover;
    filter: blur(7px) saturate(1.05); transform: scale(1.06);
}
.art-banner::after {
    content: ""; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(180deg, rgba(43, 22, 58, .48), rgba(43, 22, 58, .34));
}
.art-banner .ab-inner { position: relative; z-index: 2; width: 100%; padding: 0 24px; text-align: center; color: #fff; }
.art-banner h1 {
    font-size: clamp(28px, 3.6vw, 54px); font-weight: 400; letter-spacing: .08em;
    text-shadow: 0 6px 28px rgba(0, 0, 0, .35);
}
.art-banner .ab-line {
    width: 78px; height: 4px; margin: 24px auto 0; border-radius: 4px;
    background: linear-gradient(90deg, #cb8abb, #8861a4);
}
.art-banner .ab-crumb { margin-top: 18px; font-size: 14px; color: rgba(255, 255, 255, .82); letter-spacing: .08em; }
.art-banner .ab-crumb a:hover { color: #fff; }

/* 正文 */
.article { background: #fff; padding: 70px 0 90px; }
.article-wrap { max-width: 1280px; margin: 0 auto; }
.article-head {
    display: flex; align-items: baseline; justify-content: space-between;
    gap: 24px; flex-wrap: wrap;
}
.article-head h2 {
    flex: 1; min-width: 0;
    font-size: 34px; font-weight: 700; line-height: 1.45; letter-spacing: .01em; color: #8e2f9e;
}
.article-date { font-size: 15px; color: #9a9a9a; white-space: nowrap; letter-spacing: .02em; }
.article-sub {
    font-size: 17px; color: #8a8a8a;  
    padding-bottom: 24px; border-bottom: 1px solid #eceaf0;
}
.article-body { margin-top: 30px; }
.article-body p { font-size: 17px; color: #444; line-height: 2.15; margin-bottom: 14px; text-align: justify; }
.article-body p.hl { color: #8e2f9e; font-weight: 700; }
.article-body h3 {
    font-size: 21px; font-weight: 700; color: #8e2f9e;
    letter-spacing: .01em; margin: 30px 0 14px;
}
.article-body img { border-radius: 16px; margin: 16px 0; }

/* 上一篇 / 下一篇 */
.art-nav {
    display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
    margin-top: 52px; padding-top: 40px; border-top: 1px solid #eceaf0;
}
.art-nav-item {
    display: flex; flex-direction: column; gap: 9px;
    padding: 22px 26px; border-radius: 14px;
    background: #f8f6fb; border: 1px solid #efeaf4;
    transition: var(--transition);
}
.art-nav-item:hover {
    background: #fff; border-color: #d9c9e4;
    box-shadow: 0 12px 28px rgba(120, 100, 145, .14);
    transform: translateY(-3px);
}
.art-nav-label { font-size: 13.5px; color: #9a9a9a; letter-spacing: .05em; }
.art-nav-label i { font-size: 12px; margin: 0 4px; }
.art-nav-title {
    font-size: 16.5px; color: #333; font-weight: 600; line-height: 1.6;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: var(--transition);
}
.art-nav-item:hover .art-nav-title { color: #8e2f9e; }
.art-nav-item.next { text-align: right; align-items: flex-end; }
@media (max-width: 820px) {
    .art-nav { grid-template-columns: 1fr; gap: 14px; margin-top: 34px; padding-top: 26px; }
    .art-nav-item { padding: 18px 20px; }
    .art-nav-item.next { text-align: left; align-items: flex-start; }
    .art-nav-title { font-size: 15px; }
}

@media (max-width: 820px) {
    .art-banner { height: 26vh; min-height: 220px; }
    .art-banner .ab-bg { inset: -16px; filter: blur(5px); }
    .art-banner h1 { letter-spacing: .04em; }
    .art-banner .ab-line { margin-top: 16px; }
    .art-banner .ab-crumb { margin-top: 12px; font-size: 12.5px; }
    .article { padding: 46px 0 64px; }
    .article-head { display: block; }
    .article-head h2 { font-size: 22px; }
    .article-date { display: block; margin-top: 12px; }
    .article-sub { font-size: 15px; padding-bottom: 18px; }
    .article-body { margin-top: 22px; }
    .article-body p { font-size: 15px; line-height: 2; }
    .article-body h3 { font-size: 17.5px; margin: 24px 0 12px; }
}
@media (max-width: 640px) {
    .article-head h2 { font-size: 19px; }
    .article-body p { font-size: 14.5px; }
}

/* ==========================================================
   全屏背景大图 + 图上定位文字（hx.html）
   图片按原比例铺满宽度（不裁切），文字用百分比/ vw 定位，
   任何屏幕下文字与图片内容始终一一对应。
   ========================================================== */
.hx-sec { position: relative; width: 100%; overflow: hidden; background: #eef0f4; line-height: 0; }
/* .hx-bg 为 <picture>：电脑站用内部 img（hxa/hxb），手机站在内部 source 中切换为移动端整图 */
.hx-sec > .hx-bg { display: block; width: 100%; }
.hx-sec > .hx-bg img { width: 100%; height: auto; display: block; }

/* 左半白卡（美胸如初·特色） */
.hx-card {
    position: absolute; left: 4.6%; top: 25.5%; width: 89.4%; height: 68%;
    line-height: 1.6; text-align: left;
    background: none; border: 0; box-shadow: none;
    padding: 1.7vw 4vw;
    box-sizing: border-box;
}
/* 细体 + 竖向渐变标题（上 #cb8abb → 下 #8861a4） */
.hx-card h3, .hx-text h3 {
    font-weight: 300; letter-spacing: .02em;
    background: linear-gradient(180deg, #cb8abb 0%, #8861a4 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: #8861a4;
}
.hx-card h3 { font-size: 2.8vw; margin-bottom: .4vw; }
.hx-cols { display: flex; gap: 2.4vw; }
.hx-col { min-width: 0; }
/* 左列固定较窄，右列整体左移，避开右侧人物 */
.hx-col:first-child { flex: 0 0 30vw; }
.hx-col:last-child { flex: 1 1 auto; }
.hx-col li {
    position: relative; padding-left: 1.7vw;
    font-size: 1.55vw; color: #3b3b3b; line-height: 2.05; letter-spacing: .01em;
}
.hx-col li::before {
    content: ""; position: absolute; left: .45vw; top: .95em;
    width: .38vw; height: .38vw; min-width: 4px; min-height: 4px; border-radius: 50%;
    background: linear-gradient(135deg, #cb8abb, #8861a4);
}

/* 右侧文字块（私美如初·特色） */
.hx-text {
    position: absolute; left: 47.5%; right: 3%; top: 11.5%;
    line-height: 1.6; text-align: center;
}
.hx-text h3 { font-size: 3vw; letter-spacing: .03em; margin-bottom: .9vw; }
.hx-text .en { font-size: 1vw; color: #a9a9a9; letter-spacing: .5em; margin-bottom: 1.5vw; }
.hx-text .stars { font-size: 1.35vw; margin-bottom: 1.5vw; display: flex; justify-content: center; gap: 1.6vw; flex-wrap: wrap; }
.hx-text .stars span { white-space: nowrap; color: #4a4a4a; font-weight: 500; letter-spacing: .02em; }
.hx-text .stars i {
    font-style: normal; margin-right: .18em;
    background: linear-gradient(180deg, #e0b44f, #b8832a);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
/* 私美如初：说明条目（自动居中排布，条内不折行） */
.hx-text .hx-lines {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline;
    column-gap: 3.2vw; row-gap: .45vw;
    font-size: 1.12vw; color: #4a4a4a; line-height: 1.95; letter-spacing: .01em;
}
.hx-text .hx-item { white-space: nowrap; }
.hx-text .hx-num { font-style: normal; font-weight: 600; margin-right: .22em; color: #8e2f9e; }
.hx-text .hx-item b { font-weight: 600; color: #8e2f9e; }

/* 平板 / 手机：图片完整显示，文字卡片排在图片下方（不重叠、不裁切） */
@media (max-width: 820px) {
    .hx-sec { line-height: normal; overflow: visible; }
    /* 手机站：整个 hx-sec 只显示移动端专用整图（hx.html 中 <source> 已切换为 {label:b1}/{label:b2}），
       原来的图文卡片不再展示；下方这些卡片样式保留作回退（移除此两行即可恢复） */
    .hx-sec > .hx-card, .hx-sec > .hx-text { display: none; }
    .hx-card, .hx-text {
        position: static; left: auto; right: auto; top: auto;
        width: calc(100% - 9vw); height: auto;
        margin: 5vw auto 0; padding: 6vw 5.5vw;
        border-radius: 4vw;
        background: #fff;
        box-shadow: 0 2vw 7vw rgba(120, 100, 145, .14);
        border: 0;
        text-align: center;  
    }
    .hx-card { margin-top: 4vw; }
    .hx-card h3, .hx-text h3 { font-size: 5.6vw; margin-bottom: 3.4vw; }
    /* 美胸如初：单列要点 */
    .hx-cols { display: block; }
    .hx-col + .hx-col { margin-top: 0; }
    .hx-col li {
        font-size: 3.6vw; line-height: 2.1; padding-left: 0; text-align: center;
    }
    .hx-col li::before { display: none; }
    /* 私美如初：★ 两列、说明逐条换行 */
    .hx-text .en { font-size: 2.5vw; letter-spacing: .4em; margin-bottom: 3.4vw; }
    .hx-text .stars {
        display: grid; grid-template-columns: repeat(2, auto); justify-content: center;
        gap: 1.4vw 7vw; font-size: 3.6vw; margin-bottom: 3.4vw;
    }
    .hx-text .hx-lines { display: block; font-size: 3.5vw; line-height: 1.95; }
    .hx-text .hx-item { display: block; white-space: normal; margin-bottom: 1.2vw; }
    .hx-text .hx-item:last-child { margin-bottom: 0; }
}
@media (max-width: 640px) {
    .hx-card h3, .hx-text h3 { font-size: 5.4vw; margin-bottom: 3vw; }
    .hx-col li, .hx-text .hx-lines { font-size: 3.7vw; }
}




#hides {display:none;}

 .pagebar .pagination {
   --pg: #1A7FFF;
   --pg-dark: #0066E0;
   --pg-soft: rgba(26, 127, 255, 0.10);
   --pg-shadow: rgba(26, 127, 255, 0.30);
   display: flex;
   justify-content: center;
   align-items: center;
   margin: 44px 0 48px;
   gap: 10px;
   flex-wrap: wrap;
 }

 .pagination a {
   background: #ffffff;
   border: 1px solid #e2e8f0;
   color: #475569;
   font-size: 14px;
   font-weight: 600;
   padding: 0 16px;
   margin: 0;
   border-radius: 12px;
   height: 44px;
   line-height: 42px;
   min-width: 44px;
   text-align: center;
   text-decoration: none;
   transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
   position: relative;
   overflow: hidden;
   box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
 }

 .pagination a::before {
   content: '';
   position: absolute;
   top: 0;
   left: -120%;
   width: 100%;
   height: 100%;
   background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.45), transparent);
   transition: left 0.55s;
 }

 .pagination a:hover::before { left: 120%; }

 .pagination a:hover {
   color: #ffffff;
   background: var(--pg);
   border-color: var(--pg);
   transform: translateY(-2px);
   box-shadow: 0 10px 24px var(--pg-shadow);
 }

 .pagination a.page-num-current {
   color: #ffffff;
   background: linear-gradient(135deg, #1A7FFF, #0066E0);
   border-color: var(--pg-dark);
   font-weight: 700;
   transform: translateY(-1px);
   box-shadow: 0 8px 20px var(--pg-shadow);
   position: relative;
 }

 .pagination a.page-num-current:hover {
   background: linear-gradient(135deg, #0066E0, #0052b8);
 }

 .pagination a.page-num:not(.page-num-current):hover {
   background: linear-gradient(135deg, #4A9EFF, #1A7FFF);
   border-color: var(--pg);
   box-shadow: 0 8px 18px var(--pg-shadow);
 }

 .pagination span {
   color: #94a3b8;
   font-size: 13px;
   padding: 0 12px;
   margin: 0 8px;
   font-weight: 500;
   background: #f1f5f9;
   border-radius: 8px;
   height: 36px;
   line-height: 36px;
   border: 1px solid #e2e8f0;
   display: inline-flex;
   align-items: center;
 }

 .pagination a.hidden-sm { display: inline-flex; }

 /* 特殊按钮样式 */
 .pagination a[title*="首页"], .pagination a[title*="尾页"] { font-weight: 700; letter-spacing: 1px; }
 .pagination a[title*="上一页"], .pagination a[title*="下一页"] { font-weight: 700; }

 /* 加载动画效果 */
 @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.7; } }
 .pagination a.loading { animation: pulse 1.5s infinite; }

 .page { text-align: center; padding: 60px 20px; color: #64748b; font-size: 16px; background: #f8fafc; border-radius: 12px; margin: 40px 0; border: 2px dashed #e2e8f0; }

 /* 响应式设计 */
 @media (max-width: 768px) {
   .pagebar .pagination { margin: 30px 0; gap: 6px; }
   .pagination a { padding: 0 12px; height: 40px; line-height: 38px; min-width: 40px; font-size: 13px; border-radius: 10px; }
   .pagination span { padding: 0 8px; height: 32px; line-height: 32px; font-size: 12px; margin: 0 4px; }
   .pagination a.hidden-sm { display: none; }
 }
 @media (max-width: 480px) {
   .pagebar .pagination { gap: 4px; }
   .pagination a { padding: 0 10px; height: 36px; line-height: 34px; min-width: 36px; font-size: 12px; margin: 2px; }
   .pagination span { padding: 0 6px; height: 28px; line-height: 28px; margin: 2px; font-size: 11px; }
 }
 