/* ============================================================
   苏州泵业官网 · 官网前台样式 v2.0（复刻 en.sourcepump.com 视觉 · 响应式）
   2026-09 全站视觉复刻：目标站设计事实（运行时计算样式提取）
   - 主色 --sp-acc #0132cb / 辅色 --sp-acc2 #0656a9（搜索按钮）
   - 正文 #595959 / 区隔浅灰 #f8f8f8 / 标题近黑
   - 标题字体 Oswald（拉丁/数字，本地 woff2 内置），正文 Arial 系
   - 全宽 hero 大图轮播 + 页码计数 + 圆形箭头；导航首页透明悬浮于
     hero 之上（滚动转白底）；页脚深蓝"超级菜单"式多列+联系条
   手写源样式文件，勿编辑压缩产物
   ============================================================ */

/* ---------- 字体（Oswald：拉丁/数字，中文回退系统字体） ---------- */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/oswald-latin-400.woff2') format('woff2');
}
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/oswald-latin-500.woff2') format('woff2');
}
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/oswald-latin-600.woff2') format('woff2');
}
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/oswald-latin-700.woff2') format('woff2');
}

:root {
    /* 品牌蓝阶（藏青 → 钢蓝） */
    --sp-ink: #05193a;            /* 墨蓝：页脚深底 / hero 渐变起点 */
    --sp-deep: #0d3b7c;           /* 主深蓝：导航/页头/标题 */
    --sp-deep2: #0a2e5e;          /* 更深深蓝 */
    --sp-midblue: #17468f;        /* 中蓝：渐变过渡 */
    --sp-acc: #0132cb;            /* 强调蓝（目标站主色）：按钮/遮罩/tab */
    --sp-acc2: #0656a9;           /* 目标站辅蓝：搜索按钮/hover */
    --sp-acc-light: #2e78c2;      /* 亮蓝：hover 边框/图标 */
    --sp-acc-bg: #eef3ff;         /* 浅蓝底 */
    --sp-sky: #7db6f7;            /* 深色底上的图标亮蓝 */

    /* 中性灰阶（对齐目标站） */
    --sp-bg-band: #f8f8f8;        /* 交替区块底（目标站 contentBoxB） */
    --sp-border: #e8e8e8;         /* 通用边框 */
    --sp-soft: #f8f8f8;           /* 浅底/占位 */
    --sp-text: #595959;           /* 正文（目标站 body 色） */
    --sp-title: #10151f;          /* 标题近黑 */
    --sp-muted: #8a97ab;          /* 弱化文字/日期 */
    --sp-footer-text: #a9c0de;    /* 页脚文字 */

    /* 渐变 */
    --sp-grad-brand: linear-gradient(135deg, var(--sp-acc) 0%, var(--sp-deep) 100%);
    --sp-grad-dark: linear-gradient(120deg, var(--sp-ink) 0%, var(--sp-deep2) 55%, var(--sp-midblue) 100%);
    --sp-grad-line: linear-gradient(90deg, var(--sp-acc) 0%, var(--sp-acc-light) 100%);

    /* 阴影 */
    --sp-shadow-soft: 0 4px 18px rgba(13, 59, 124, .08);
    --sp-shadow-lift: 0 14px 36px rgba(13, 59, 124, .16);
    --sp-shadow-btn: 0 8px 20px rgba(1, 50, 203, .28);

    /* 圆角 */
    --sp-radius: 8px;
    --sp-radius-lg: 12px;

    /* 字体栈 */
    --sp-font-head: "Oswald", "Arial Narrow", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", sans-serif;
    --sp-font-body: "Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", sans-serif;

    /* 缓动 */
    --sp-ease: cubic-bezier(.4, 0, .2, 1);
}

/* ---------- 基础 ---------- */
.site-body {
    font-family: var(--sp-font-body);
    font-size: 15px;
    line-height: 1.75;
    color: var(--sp-text);
    background: #fff;
    padding-top: 76px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
.site-body ::selection { background: rgba(1, 50, 203, .85); color: #fff; }
.site-body h1, .site-body h2, .site-body h3, .site-body h4 {
    color: var(--sp-title);
    font-weight: 600;
    line-height: 1.4;
}
a { color: var(--sp-acc); transition: color .25s ease; }
a:hover { color: var(--sp-deep); }
a:focus-visible, button:focus-visible {
    outline: 2px solid var(--sp-acc-light);
    outline-offset: 2px;
}

/* 容器加宽（目标站宽排版） */
.site-body .container {
    width: auto;
    max-width: 1400px;
    padding-left: 20px;
    padding-right: 20px;
}
@media (min-width: 768px)  { .site-body .container { width: auto; } }
@media (min-width: 992px)  { .site-body .container { width: auto; } }
@media (min-width: 1200px) { .site-body .container { width: auto; } }

/* ---------- 首页板块明暗节奏（白 / 深蓝 / 浅灰交替） ---------- */
.sec-block { position: relative; padding: 72px 0; overflow: hidden; }
.sec-block > .container { position: relative; z-index: 1; }
.sec-white { background: #fff; }
.sec-gray { background: var(--sp-bg-band); }
.sec-dark {
    background: var(--sp-ink);
    background-image: linear-gradient(120deg, var(--sp-ink) 0%, var(--sp-deep2) 55%, var(--sp-midblue) 100%);
    color: #dbe7f5;
}
.sec-dark::before {
    content: '';
    position: absolute;
    left: 0; right: 0; top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(111, 179, 245, .9), transparent);
    pointer-events: none;
}
/* 板块序号水印（Oswald 超大淡字） */
.sec-num {
    position: absolute;
    right: 2%;
    top: 12px;
    font-family: var(--sp-font-head);
    font-size: 128px;
    font-weight: 600;
    line-height: 1;
    color: rgba(1, 50, 203, .05);
    pointer-events: none;
    user-select: none;
}
.sec-dark .sec-num { color: rgba(255, 255, 255, .045); }

/* 板块标题组（左对齐编辑式） */
.sec-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 42px;
}
.sec-head .sh-en {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-family: var(--sp-font-head);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 3.5px;
    text-transform: uppercase;
    color: var(--sp-acc);
    margin-bottom: 10px;
}
.sec-head .sh-en::before {
    content: '';
    width: 34px;
    height: 2px;
    background: var(--sp-grad-line);
}
.sec-head h2 {
    font-family: var(--sp-font-head);
    font-size: 34px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--sp-title);
    margin: 0;
}
.sec-head .sh-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 22px;
    border: 1px solid var(--sp-acc);
    border-radius: 22px;
    font-size: 13.5px;
    font-weight: 600;
    letter-spacing: .5px;
    color: var(--sp-acc);
    white-space: nowrap;
    transition: background .25s ease, color .25s ease, box-shadow .25s ease;
}
.sec-head .sh-more:hover {
    background: var(--sp-acc);
    color: #fff;
    box-shadow: 0 8px 20px rgba(1, 50, 203, .28);
    text-decoration: none;
}
.sec-head .sh-more i { transition: transform .3s var(--sp-ease); }
.sec-head .sh-more:hover i { transform: translateX(4px); }
.sec-head .sh-desc {
    margin: 12px 0 0;
    font-size: 14px;
    line-height: 1.7;
    color: var(--sp-muted);
    max-width: 520px;
}
.sec-dark .sec-head h2 { color: #fff; }
.sec-dark .sec-head .sh-en { color: var(--sp-sky); }
.sec-dark .sec-head .sh-en::before { background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 100%); }
.sec-dark .sec-head .sh-more {
    color: #fff;
    border-color: rgba(255, 255, 255, .55);
}
.sec-dark .sec-head .sh-more:hover {
    background: #fff;
    color: var(--sp-deep);
    box-shadow: 0 8px 22px rgba(5, 25, 58, .35);
}
.sec-dark .sec-head .sh-desc { color: rgba(207, 224, 244, .82); }

/* 首页分区底图与纹理 */
#products.sec-white {
    background-color: #fff;
    background-image:
        linear-gradient(0deg, transparent 23px, rgba(13, 59, 124, .04) 24px),
        linear-gradient(90deg, transparent 23px, rgba(13, 59, 124, .04) 24px);
    background-size: 24px 24px, 24px 24px;
}
#cases.sec-dark {
    background-color: var(--sp-ink);
    background-image:
        linear-gradient(120deg, rgba(5, 25, 58, .55) 0%, rgba(10, 46, 94, .52) 55%, rgba(23, 70, 143, .46) 100%),
        url('../../uploads/album/2026-09-22/case_bg_dusk_20260922.jpg');
    background-size: auto, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
}
@media (min-width: 1200px) {
    #cases.sec-dark { background-attachment: scroll, fixed; }
}
#advantage.sec-gray {
    background-color: var(--sp-bg-band);
    background-image: radial-gradient(rgba(13, 59, 124, .06) 1px, transparent 1.5px);
    background-size: 26px 26px;
}
#honors.sec-gray {
    background-color: var(--sp-bg-band);
    background-image: radial-gradient(rgba(13, 59, 124, .04) 1px, transparent 1.5px);
    background-size: 26px 26px;
}

/* 产品分类链接行：胶囊 chip（移动端横向滑动） */
.cat-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 38px;
}
.cat-row-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 17px;
    border-radius: 20px;
    background: #f2f5fa;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .4px;
    color: #3d4a5c;
    white-space: nowrap;
    transition: background .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.cat-row-link i { font-size: 11px; color: #8fa1bd; transition: transform .25s ease, color .25s ease; }
.cat-row-link:hover {
    background: #fff;
    border-color: #c9d6ea;
    color: var(--sp-acc);
    box-shadow: 0 6px 16px rgba(13, 59, 124, .1);
    text-decoration: none;
}
.cat-row-link:hover i { transform: translateX(3px); }
.cat-row-all {
    background: #fff;
    border-color: var(--sp-acc);
    color: var(--sp-acc);
    font-weight: 600;
}
.cat-row-all:hover {
    background: var(--sp-acc);
    border-color: var(--sp-acc);
    color: #fff;
}

/* ---------- 产品中心：列表页 ---------- */
.prod-filter { margin: 34px 0 6px; }
.prod-filter .cat-row { margin-bottom: 16px; }
.cat-row-link { position: relative; }
.cat-row-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 17px;
    height: 17px;
    padding: 0 5px;
    margin-left: 3px;
    border-radius: 9px;
    background: rgba(13, 59, 124, .1);
    color: var(--sp-midblue);
    font-size: 11px;
    font-weight: 600;
    transition: background .25s ease, color .25s ease;
}
.cat-row-link:hover .cat-row-badge,
.cat-row-all .cat-row-badge { background: var(--sp-acc); color: #fff; }
.prod-stats {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 22px;
    padding: 0 2px;
    font-size: 13.5px;
    color: var(--sp-muted);
}
.prod-stats .ps-cur { color: var(--sp-acc2); font-weight: 600; }
.prod-grid .prod-card { margin-bottom: 30px; }
.prod-empty {
    padding: 70px 0;
    text-align: center;
    color: var(--sp-muted);
    font-size: 15px;
}

/* ---------- 产品中心：详情页 ---------- */
.product-detail { margin: 34px 0 8px; }
.pd-gallery .pd-main {
    position: relative;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius-lg);
    box-shadow: var(--sp-shadow-soft);
    overflow: hidden;
    cursor: zoom-in;
}
.pd-gallery .pd-main img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}
.pd-zoom {
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(13, 59, 124, .78);
    color: #fff;
    font-size: 15px;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .3s ease, transform .3s var(--sp-ease), background .3s ease;
    pointer-events: none;
}
.pd-gallery .pd-main:hover .pd-zoom { opacity: 1; transform: translateY(0); }
.pd-thumbs {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    flex-wrap: wrap;
}
.pd-thumb {
    flex: none;
    width: 84px;
    height: 63px;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid var(--sp-border);
    background: var(--sp-soft);
    transition: border-color .25s ease, box-shadow .25s ease;
}
.pd-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pd-thumb:hover { border-color: var(--sp-acc-light); }
.pd-thumb.active { border-color: var(--sp-acc); box-shadow: 0 4px 12px rgba(1, 50, 203, .22); }

.pd-info {
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius-lg);
    box-shadow: var(--sp-shadow-soft);
    padding: 28px 30px 24px;
    height: 100%;
}
.pd-title {
    font-size: 25px;
    font-weight: 700;
    color: var(--sp-title);
    line-height: 1.35;
    margin: 0 0 6px;
    letter-spacing: .5px;
}
.pd-sub {
    font-family: var(--sp-font-head);
    font-size: 13px;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: var(--sp-acc2);
    margin-bottom: 14px;
}
.pd-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--sp-border);
}
.pd-chip {
    padding: 3px 12px;
    border-radius: 13px;
    background: var(--sp-acc-bg);
    color: var(--sp-acc);
    font-size: 12px;
    font-weight: 600;
}
.pd-meta-item { font-size: 12.5px; color: var(--sp-muted); }
.pd-meta-item i { margin-right: 5px; color: var(--sp-midblue); }
.pd-line {
    width: 46px;
    height: 3px;
    border-radius: 2px;
    background: var(--sp-grad-line);
    margin: 16px 0 14px;
}
.pd-desc {
    font-size: 14.5px;
    line-height: 1.95;
    color: #3d4652;
    text-align: justify;
    margin-bottom: 18px;
}
.pd-desc p { margin-bottom: 10px; }
.pd-params-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--sp-midblue);
    margin: 0 0 10px;
}
.pd-params-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
    margin-bottom: 20px;
}
.pd-params-table th,
.pd-params-table td {
    padding: 9px 14px;
    border: 1px solid #e6ebf2;
    text-align: left;
}
.pd-params-table th {
    width: 108px;
    background: var(--sp-soft);
    color: #44506a;
    font-weight: 600;
    white-space: nowrap;
}
.pd-params-table td { color: var(--sp-text); }
.pd-action { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.pd-btn-consult {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 34px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 600;
    box-shadow: var(--sp-shadow-btn);
}
.pd-btn-consult i { font-size: 14px; }
.pd-contact { line-height: 1.9; }
.pd-contact p { margin: 0; font-size: 13.5px; }
.pd-contact a { color: var(--sp-text); }
.pd-contact a:hover { color: var(--sp-acc); text-decoration: none; }
.pd-contact .contact-ico { width: 20px; }

.related-block { margin-top: 34px; }
/* 相关产品等区块标题（产品页此前缺失该样式定义） */
.section-title {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 20px;
}
.section-title h2 {
    font-size: 23px;
    font-weight: 700;
    color: var(--sp-title);
    margin: 0;
    letter-spacing: .5px;
    white-space: nowrap;
}
.section-line {
    flex: 1;
    height: 2px;
    border-radius: 1px;
    background: linear-gradient(90deg, var(--sp-acc-light) 0%, rgba(46, 120, 194, .08) 90%);
    opacity: .55;
}
#pd-lightbox .modal-body img { max-height: 78vh; display: inline-block; }

/* ---------- 产品中心 响应式 ---------- */
@media (max-width: 991px) {
    .product-detail { margin: 26px 0 6px; }
    .pd-info { padding: 22px 22px 20px; }
    .pd-title { font-size: 22px; }
}
@media (max-width: 767px) {
    .prod-filter { margin: 22px 0 4px; }
    .prod-filter .cat-row { flex-wrap: nowrap; overflow-x: auto; margin: 0 -6px 14px; padding: 0 6px 6px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
    .prod-filter .cat-row::-webkit-scrollbar { display: none; }
    .prod-filter .cat-row-link { flex: none; }
    .prod-grid .prod-card { margin-bottom: 22px; }
    .product-detail { margin: 20px 0 4px; }
    .pd-thumbs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
    .pd-thumbs::-webkit-scrollbar { display: none; }
    .pd-thumb { width: 76px; height: 57px; }
    .pd-info { margin-top: 20px; padding: 20px 18px 18px; height: auto; }
    .pd-title { font-size: 20px; }
    .pd-desc { font-size: 14px; }
    .pd-params-table th { width: 96px; }
    .pd-action { gap: 16px; }
    .pd-btn-consult { padding: 11px 26px; font-size: 14px; }
    .related-block { margin-top: 26px; }
    .section-title h2 { font-size: 20px; }
}

/* 顶部固定容器（原顶栏联系条已移除，仅剩固定导航） */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
}

/* ---------- 导航（内页白底；首页 ≥1200px 透明悬浮于 hero） ---------- */
.navbar-site {
    background: #fff;
    border: none;
    border-bottom: 1px solid var(--sp-border);
    border-radius: 0;
    min-height: 76px;
    margin-bottom: 0;
    position: static;
    box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 10px 26px rgba(13, 59, 124, .05);
}
.navbar-site .navbar-brand {
    color: var(--sp-deep);
    height: 76px;
    line-height: 46px;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: .4px;
    padding-top: 15px;
    padding-bottom: 15px;
}
.navbar-site .site-logo {
    display: inline-block;
    width: 46px;
    height: 46px;
    margin-right: 12px;
    margin-top: 2px;
    vertical-align: middle;
    object-fit: contain;
    transition: transform .3s var(--sp-ease);
}
.navbar-site .navbar-brand:hover .site-logo { transform: scale(1.04); }
.navbar-site .brand-name {
    display: inline-block;
    vertical-align: middle;
    max-width: 56vw;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.navbar-site .navbar-nav > li > a {
    color: #3d4a5c;
    font-size: 15px;
    font-weight: 500;
    line-height: 46px;
    padding-top: 15px;
    padding-bottom: 15px;
    position: relative;
    transition: color .25s ease;
    background: transparent !important;
}
.navbar-site .navbar-nav > li > a::after {
    content: '';
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 10px;
    height: 3px;
    border-radius: 2px;
    background: var(--sp-grad-line);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .35s var(--sp-ease);
}
.navbar-site .navbar-nav > li > a:hover::after,
.navbar-site .navbar-nav > li.open > a::after,
.navbar-site .navbar-nav > li.active > a::after {
    transform: scaleX(1);
}
.navbar-site .navbar-nav > li > a:hover,
.navbar-site .navbar-nav > li > a:focus,
.navbar-site .navbar-nav > li.open > a {
    color: var(--sp-acc);
}
.navbar-site .navbar-nav > li.active > a {
    color: var(--sp-acc);
    font-weight: 600;
}
/* 下拉：卡片化双栏（2026-09-23 升级，参考 zjshjkj.com 基调 + 品牌卡片质感） */
.navbar-site .navbar-nav .dropdown-menu {
    background: #fff;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 24px 30px;
    min-width: 460px;
}
.navbar-site .navbar-nav .dropdown-menu.sp-dropdown {
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: 14px;
    box-shadow: 0 22px 50px rgba(13, 59, 124, .16), 0 3px 10px rgba(13, 59, 124, .06);
    padding: 24px;
    min-width: 640px;
    animation: sp-dd-in .18s ease-out;
}
.navbar-site .navbar-nav .dropdown-menu.sp-dropdown::before {
    content: '';
    position: absolute;
    top: 0;
    left: 24px;
    right: 24px;
    height: 2px;
    border-radius: 0 0 2px 2px;
    background: var(--sp-grad-brand);
    pointer-events: none;
}
@keyframes sp-dd-in {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}
/* 产品下拉：在菜单项正下方水平居中（≥992 屏宽足够；768-991 保持左对齐防溢出） */
@media (min-width: 992px) {
    .navbar-site .navbar-nav > li.dropdown > .dropdown-menu.sp-dropdown-center {
        left: 50%;
        width: 690px;
        min-width: 690px;
        margin-left: -345px;
    }
}
/* 桌面 hover 展开；触屏由 Bootstrap JS 通过 .open 展开 */
.navbar-site .navbar-nav > li.dropdown:hover > .dropdown-menu { display: block; }
@media (min-width: 768px) {
    .navbar-site .navbar-nav > li.dropdown.open > .dropdown-menu.sp-dropdown,
    .navbar-site .navbar-nav > li.dropdown:hover > .dropdown-menu.sp-dropdown {
        display: flex;
        gap: 28px;
    }
}
/* 左栏：两列分类链接 */
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l {
    flex: 1;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(170px, 1fr));
    gap: 6px 14px;
    align-content: start;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a {
    display: flex;
    align-items: center;
    color: #333;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    padding: 12px 16px;
    border-radius: 8px;
    background: transparent !important;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a:hover,
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a:focus {
    color: var(--sp-acc);
    background: var(--sp-acc-bg) !important;
    transform: translateX(2px);
}
/* 悬停浮现的指向箭头 */
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a::after {
    content: '\f105';
    font-family: FontAwesome;
    font-size: 12px;
    margin-left: auto;
    padding-left: 8px;
    color: var(--sp-acc);
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity .18s ease, transform .18s ease;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a:hover::after,
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a:focus::after {
    opacity: 1;
    transform: translateX(0);
}
/* 「全部产品」整行强调 */
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a.sp-all {
    grid-column: 1 / -1;
    background: var(--sp-acc-bg) !important;
    color: var(--sp-acc);
    font-weight: 600;
    margin-top: 4px;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a.sp-all::after { opacity: 1; transform: translateX(0); }
.navbar-site .navbar-nav .dropdown-menu .sp-dd-l a.sp-all:hover { background: #e2eaff !important; }
/* 右栏：可点击图卡 + CTA */
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r {
    display: block;
    width: 250px;
    flex-shrink: 0;
    text-decoration: none;
    color: inherit;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r img {
    display: block;
    width: 100%;
    height: 156px;
    object-fit: cover;
    border-radius: 10px;
    margin-bottom: 12px;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-kicker {
    display: block;
    font-family: var(--sp-font-head);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2.5px;
    color: var(--sp-acc);
    margin-bottom: 4px;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r h3 {
    font-size: 16px;
    font-weight: 600;
    color: var(--sp-title);
    margin: 0 0 8px;
    transition: color .2s ease;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r:hover h3,
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r:focus h3 { color: var(--sp-acc); }
.navbar-site .navbar-nav .dropdown-menu .sp-dd-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
    color: var(--sp-acc);
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-cta i {
    font-size: 12px;
    transition: transform .25s ease;
}
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r:hover .sp-dd-cta i,
.navbar-site .navbar-nav .dropdown-menu .sp-dd-r:focus .sp-dd-cta i { transform: translateX(4px); }
.navbar-site .navbar-toggle {
    border-color: #c3d0e2;
    margin-top: 13px;
    border-radius: 6px;
    transition: border-color .25s ease;
}
.navbar-site .navbar-toggle:hover { border-color: var(--sp-acc); }
.navbar-site .navbar-toggle .icon-bar { background: var(--sp-deep); }

/* 首页透明悬浮（≥1200px；<1200px 始终白底，避免菜单拥挤） */
@media (min-width: 1200px) {
    .home-page.site-body { padding-top: 0; }
    .home-page .site-header .navbar-site {
        background: transparent;
        border-bottom: none;
        box-shadow: none;
        transition: background .35s ease, box-shadow .35s ease, min-height .35s ease;
    }
    .home-page .site-header .navbar-site .navbar-brand,
    .home-page .site-header .navbar-site .brand-name { color: #fff; }
    .home-page .site-header .navbar-site .navbar-nav > li > a {
        color: rgba(255, 255, 255, .92);
    }
    .home-page .site-header .navbar-site .navbar-nav > li > a:hover,
    .home-page .site-header .navbar-site .navbar-nav > li > a:focus,
    .home-page .site-header .navbar-site .navbar-nav > li.open > a,
    .home-page .site-header .navbar-site .navbar-nav > li.active > a { color: #fff; }
    .home-page .site-header .navbar-site .navbar-nav > li > a::after {
        background: linear-gradient(90deg, #fff 0%, var(--sp-sky) 100%);
    }
    .home-page .site-header .navbar-site .navbar-toggle .icon-bar { background: #fff; }
    .home-page .site-header .navbar-site .navbar-toggle { border-color: rgba(255, 255, 255, .55); }

    /* 首页滚动态：转白底深字 */
    .home-page .site-header.is-scrolled .navbar-site {
        background: #fff;
        border-bottom: 1px solid var(--sp-border);
        box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 16px 40px rgba(13, 59, 124, .16);
    }
    .home-page .site-header.is-scrolled .navbar-site .navbar-brand,
    .home-page .site-header.is-scrolled .navbar-site .brand-name { color: var(--sp-deep); }
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li > a,
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li > a:hover,
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li > a:focus,
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li.open > a,
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li.active > a { color: #3d4a5c; }
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li.active > a { color: var(--sp-acc); }
    .home-page .site-header.is-scrolled .navbar-site .navbar-nav > li > a::after {
        background: var(--sp-grad-line);
    }
    .home-page .site-header.is-scrolled .navbar-site .navbar-toggle .icon-bar { background: var(--sp-deep); }
    .home-page .site-header.is-scrolled .navbar-site .navbar-toggle { border-color: #c3d0e2; }
}

/* ---------- 导航内搜索框（≥1200px 显示） ---------- */
.navbar-site .nav-search-li { display: none; }
@media (min-width: 1200px) { .navbar-site .nav-search-li { display: block; } }
.navbar-search {
    position: relative;
    margin: 17px 0 17px 14px;
    width: 180px;
}
.navbar-search .ns-input {
    width: 100%;
    height: 40px;
    border: 1px solid #dfe6ef;
    border-radius: 6px;
    background: #f8f9fb;
    color: var(--sp-text);
    font-size: 13.5px;
    padding: 0 44px 0 14px;
    outline: none;
    transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.navbar-search .ns-input:focus {
    border-color: var(--sp-acc-light);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(1, 50, 203, .12);
}
.navbar-search .ns-btn {
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 42px;
    border: none;
    border-radius: 0 6px 6px 0;
    background: var(--sp-acc);
    color: #fff;
    font-size: 15px;
    cursor: pointer;
    transition: background .25s ease;
}
.navbar-search .ns-btn:hover { background: var(--sp-acc2); }
.home-page .navbar-search .ns-input {
    background: rgba(255, 255, 255, .14);
    border-color: rgba(255, 255, 255, .42);
    color: #fff;
}
.home-page .navbar-search .ns-input::placeholder { color: rgba(255, 255, 255, .72); }
.home-page .navbar-search .ns-input:focus { background: rgba(255, 255, 255, .22); border-color: rgba(255, 255, 255, .8); box-shadow: none; }
.home-page .site-header.is-scrolled .navbar-search .ns-input {
    background: #f8f9fb;
    border-color: #dfe6ef;
    color: var(--sp-text);
}
.home-page .site-header.is-scrolled .navbar-search .ns-input::placeholder { color: #9aa7ba; }

/* ---------- 导航内语言切换（胶囊按钮 + 下拉，替代已移除的顶栏） ---------- */
.nav-lang-li { display: block; }
.navbar-site .navbar-nav > li.nav-lang-li > .nav-lang-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    margin-top: 19px;
    padding: 0 16px;
    line-height: 1;
    border: 1px solid #dfe6ef;
    border-radius: 20px;
    background: #f7f9fd !important;
    color: var(--sp-deep);
    font-size: 13.5px;
    font-weight: 500;
    letter-spacing: .3px;
    white-space: nowrap;
    transition: border-color .25s ease, color .25s ease, background .25s ease;
}
.navbar-site .navbar-nav > li.nav-lang-li > .nav-lang-btn::after { display: none; }
.navbar-site .navbar-nav > li.nav-lang-li > .nav-lang-btn:hover {
    border-color: var(--sp-acc-light);
    background: #fff !important;
    color: var(--sp-acc);
}
.nav-lang-btn .fa-globe { color: var(--sp-acc); font-size: 14px; }
.nav-lang-btn .nav-lang-caret { font-size: 11px; color: #8fa1bd; transition: transform .25s ease; }
.nav-lang-li.open .nav-lang-caret,
.nav-lang-mobile.open .nav-lang-caret { transform: rotate(180deg); }
.nav-lang-menu {
    min-width: 0;
    width: 150px;
    margin-top: 10px;
    padding: 6px;
    border: 1px solid #e3e9f2;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(13, 59, 124, .14);
    font-size: 13.5px;
}
.navbar-site .navbar-nav .dropdown-menu.nav-lang-menu { min-width: 0; padding: 6px; }
.nav-lang-menu > li > a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 8px;
    color: #3d4a5c;
    font-size: 13.5px;
    line-height: 1.5;
    transition: background .2s ease, color .2s ease;
}
.nav-lang-menu > li > a:hover { background: #f2f6fc; color: var(--sp-acc); }
.nav-lang-menu > li.active > a { background: #fff; color: var(--sp-acc); font-weight: 600; }
.nav-lang-menu > li.active > a::before {
    content: '\f00c';
    font-family: FontAwesome;
    font-size: 12px;
    color: var(--sp-acc);
}
/* 首页 ≥1200px 透明悬浮态：半透明白胶囊 */
@media (min-width: 1200px) {
    .home-page .site-header:not(.is-scrolled) .navbar-site .navbar-nav > li.nav-lang-li > .nav-lang-btn {
        background: rgba(255, 255, 255, .12) !important;
        border-color: rgba(255, 255, 255, .42);
        color: #fff;
    }
    .home-page .site-header:not(.is-scrolled) .navbar-site .navbar-nav > li.nav-lang-li > .nav-lang-btn:hover {
        background: rgba(255, 255, 255, .24) !important;
        border-color: rgba(255, 255, 255, .75);
    }
    .home-page .site-header:not(.is-scrolled) .nav-lang-btn .fa-globe { color: var(--sp-sky); }
    .home-page .site-header:not(.is-scrolled) .nav-lang-btn .nav-lang-caret { color: rgba(255, 255, 255, .75); }
}
/* 移动端：汉堡旁紧凑按钮（导航内 li 隐藏，避免重复入口） */
.nav-lang-mobile { display: none; position: relative; }

/* ---------- 首页 Hero 轮播（全宽大图 · 目标站风格） ---------- */
.home-hero { position: relative; margin-bottom: 10px; }
.home-banner .carousel-inner > .item { height: 720px; background: var(--sp-deep) center center / cover no-repeat; }
.home-banner .banner-slide {
    position: relative;
    height: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: var(--sp-deep);
}
/* 深蓝渐变遮罩：左侧压暗保证白字对比度 */
.home-banner .banner-slide::before {
    content: '';
    position: absolute;
    left: 0; right: 0; top: 0; bottom: 0;
    background:
        radial-gradient(ellipse at 74% 34%, rgba(46, 120, 194, .16), transparent 58%),
        linear-gradient(115deg, rgba(5, 25, 58, .86) 0%, rgba(5, 25, 58, .62) 40%, rgba(13, 59, 124, .32) 72%, rgba(13, 59, 124, .18) 100%);
    z-index: 0;
}
/* Ken Burns 慢速缩放 */
@keyframes sp-kenburns {
    from { background-size: 132% auto; background-position: center 46%; }
    to   { background-size: 112% auto; background-position: center 40%; }
}
.home-banner .carousel-inner > .item.active .banner-slide {
    animation: sp-kenburns 9s ease-out both;
    will-change: background-size, background-position;
}
.home-banner .banner-text {
    position: absolute;
    left: 0; right: 0;
    top: 50%;
    transform: translateY(-54%);
    color: #fff;
    text-align: left;
    z-index: 1;
}
/* 标题文字阴影强化：保障高光背景下的字边缘完整 */
.home-banner .banner-text .banner-slogan,
.home-banner .banner-text h2,
.home-banner .banner-text p {
    text-shadow: 0 2px 16px rgba(0, 10, 30, .62), 0 0 8px rgba(0, 10, 30, .38);
}
.home-banner .banner-text .container { position: relative; max-width: 760px; margin-left: 0; padding-left: 92px; }
.home-banner .banner-text .banner-slogan {
    display: block;
    font-family: var(--sp-font-head);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 5px;
    color: #cfe0f4;
    margin-bottom: 26px;
    text-transform: uppercase;
}
.home-banner .banner-text .banner-slogan::before {
    content: '';
    display: inline-block;
    width: 40px;
    height: 2px;
    background: linear-gradient(90deg, #fff, rgba(255, 255, 255, 0));
    vertical-align: middle;
    margin-right: 16px;
}
.home-banner .banner-text h2 {
    font-family: var(--sp-font-head);
    font-size: 54px;
    margin: 0 0 22px;
    max-width: 840px;
    font-weight: 600;
    color: #fff;
    letter-spacing: .5px;
    line-height: 1.26;
}
.home-banner .banner-text p {
    font-size: 17px;
    font-weight: 400;
    opacity: .92;
    margin: 0;
    letter-spacing: .5px;
    max-width: 620px;
}
.home-banner .banner-text h2::after {
    content: '';
    display: block;
    margin-top: 22px;
    width: 72px;
    height: 3px;
    border-radius: 2px;
    background: var(--sp-acc-light);
    animation: sp-line-grow .7s var(--sp-ease) .55s both;
}
.home-banner .carousel-indicators { bottom: 28px; z-index: 3; margin-right: 96px; }
.home-banner .carousel-indicators li {
    width: 30px;
    height: 3px;
    margin: 0 4px;
    border: 0;
    border-radius: 2px;
    background: rgba(255, 255, 255, .4);
    transition: background .3s ease, width .3s ease;
}
.home-banner .carousel-indicators .active {
    width: 44px;
    background: #fff;
}
/* 页码计数（右下角，Oswald） */
.hero-count {
    position: absolute;
    right: 26px;
    bottom: 40px;
    z-index: 3;
    font-family: var(--sp-font-head);
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, .88);
    text-shadow: 0 1px 8px rgba(0, 10, 30, .5);
}
.hero-count .hc-cur { color: #fff; }
.hero-count i { font-style: normal; margin: 0 4px; opacity: .6; }
/* 圆形箭头（常显，hover 变实心白） */
.home-banner .carousel-control {
    width: 48px;
    height: 48px;
    top: 50%;
    margin-top: -24px;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 50%;
    background: rgba(5, 25, 58, .28);
    background-image: none;
    color: #fff;
    opacity: .62;
    text-shadow: none;
    transition: opacity .3s ease, background .3s ease, color .3s ease;
}
.home-banner .carousel-control.left { left: 26px; }
.home-banner .carousel-control.right { right: 26px; }
.home-banner .carousel-control:hover,
.home-banner .carousel-control:focus {
    opacity: 1;
    background: #fff;
    color: var(--sp-deep);
}
.home-banner .carousel-control .glyphicon { color: inherit; }

/* ---------- 通用区块（内页仍用） ---------- */
.section-block { padding: 52px 0 16px; }

/* 按钮（实底蓝 · 目标站风格） */
.btn-site {
    background: var(--sp-acc);
    border: none;
    color: #fff !important;
    border-radius: 6px;
    padding: 10px 28px;
    font-size: 14.5px;
    font-weight: 600;
    letter-spacing: .5px;
    box-shadow: var(--sp-shadow-btn);
    transition: background .25s ease, transform .3s var(--sp-ease), box-shadow .3s ease;
}
.btn-site:hover,
.btn-site:focus {
    background: var(--sp-acc2);
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(1, 50, 203, .38);
}
.btn-site i, .btn-outline-site i { transition: transform .3s var(--sp-ease); }
.btn-site:hover i, .btn-outline-site:hover i { transform: translateX(3px); }
.btn-outline-site {
    background: #fff;
    border: 1px solid var(--sp-acc);
    color: var(--sp-acc);
    border-radius: 6px;
    padding: 9px 26px;
    font-size: 14.5px;
    font-weight: 500;
    letter-spacing: .5px;
    transition: all .3s var(--sp-ease);
}
.btn-outline-site:hover {
    background: var(--sp-acc);
    border-color: var(--sp-acc);
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: var(--sp-shadow-btn);
}

/* 卡片（通用） */
.card-link {
    display: block;
    color: var(--sp-title);
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    margin-bottom: 24px;
    overflow: hidden;
    box-shadow: var(--sp-shadow-soft);
    transition: all .3s var(--sp-ease);
}
.card-link:hover {
    color: var(--sp-title);
    text-decoration: none;
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
    border-color: rgba(1, 50, 203, .35);
}
.card-link .card-img {
    display: block;
    width: 100%;
    height: 190px;
    background: var(--sp-soft) center center / cover no-repeat;
    transition: transform .6s var(--sp-ease);
}
.card-link:hover .card-img { transform: scale(1.06); }
.card-link .card-body { padding: 15px 17px; }
.card-link .card-title {
    font-size: 15px;
    font-weight: 600;
    color: var(--sp-title);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .25s ease;
}
.card-link:hover .card-title { color: var(--sp-acc); }
.card-link .card-meta {
    color: var(--sp-muted);
    font-size: 12.5px;
    margin-top: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 产品遮罩横卡（hover 蓝色遮罩 + 圆形 "+"） */
.prod-card {
    position: relative;
    display: block;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 28px;
    background: var(--sp-soft);
    box-shadow: 0 4px 16px rgba(13, 59, 124, .08);
    transition: box-shadow .35s var(--sp-ease), transform .35s var(--sp-ease);
}
.prod-card:hover {
    text-decoration: none;
    box-shadow: 0 18px 40px rgba(13, 59, 124, .18);
    transform: translateY(-6px);
}
.prod-card .pc-img {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: var(--sp-soft) center center / cover no-repeat;
    overflow: hidden;
}
/* 底部深蓝渐变遮罩，保证文字可读 */
.prod-card .pc-img::after {
    content: '';
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 68%;
    background: linear-gradient(180deg, rgba(5, 25, 58, 0) 0%, rgba(5, 25, 58, .45) 52%, rgba(5, 25, 58, .9) 100%);
    pointer-events: none;
}
.prod-card .pc-cat {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    padding: 4px 12px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .38);
    color: #fff;
    font-size: 12px;
    letter-spacing: .6px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.prod-card .pc-num {
    position: absolute;
    right: 16px;
    bottom: 12px;
    z-index: 2;
    font-family: var(--sp-font-head);
    font-size: 36px;
    font-weight: 600;
    line-height: 1;
    color: rgba(255, 255, 255, .15);
    letter-spacing: 1px;
    pointer-events: none;
    transition: color .35s ease, transform .35s var(--sp-ease);
}
.prod-card:hover .pc-num { color: rgba(255, 255, 255, .34); transform: translateY(-3px); }
.prod-card .pc-body {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    z-index: 3;
    padding: 18px 20px 16px;
}
.prod-card .pc-title {
    display: block;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 34px;
}
.prod-card .pc-meta {
    display: block;
    color: rgba(228, 239, 251, .95);
    font-size: 12.5px;
    margin-top: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 34px;
    transition: opacity .3s ease;
}
.prod-card .pc-arrow {
    position: absolute;
    right: 16px;
    bottom: 18px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .2);
    border: 1px solid rgba(255, 255, 255, .5);
    color: #fff;
    font-size: 15px;
    line-height: 32px;
    text-align: center;
    opacity: 0;
    transform: translateX(-8px);
    transition: opacity .3s ease, transform .35s var(--sp-ease), background .25s ease;
}
.prod-card:hover .pc-arrow {
    opacity: 1;
    transform: none;
    background: var(--sp-acc);
    border-color: var(--sp-acc);
}

/* 应用领域（浅灰区隔底 · 图文大卡） */
.case-sec {
    background: var(--sp-bg-band);
    padding: 44px 0 50px;
    margin-top: -34px;
    padding-top: 78px;
}
.case-lead {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 30px;
}
.case-lead .cl-en {
    display: block;
    font-size: 12px;
    letter-spacing: 3px;
    color: var(--sp-acc);
    font-weight: 600;
    margin-bottom: 8px;
}
.case-lead h2 {
    font-size: 26px;
    font-weight: 700;
    color: var(--sp-title);
    margin: 0;
    letter-spacing: 1px;
}
.case-lead .cl-r {
    max-width: 640px;
    margin: 0;
    font-size: 13.5px;
    line-height: 1.9;
    color: var(--sp-muted);
    text-align: right;
}
.case-row { margin-left: -12px; margin-right: -12px; }
.case-row > [class*='col-'] { padding-left: 12px; padding-right: 12px; }
.case-card {
    display: block;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    overflow: hidden;
    margin-bottom: 24px;
    color: var(--sp-text);
    box-shadow: var(--sp-shadow-soft);
    transition: all .3s var(--sp-ease);
    height: 100%;
}
.case-card:hover {
    text-decoration: none;
    color: var(--sp-text);
    border-color: rgba(1, 50, 203, .35);
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
}
.case-card .cc-media {
    display: block;
    position: relative;
    height: 208px;
    overflow: hidden;
}
.case-card .cc-img {
    display: block;
    position: absolute;
    inset: 0;
    background: var(--sp-soft) center center / cover no-repeat;
    transition: transform .6s var(--sp-ease);
}
.case-card .cc-img-ph { background: var(--sp-grad-brand); }
.case-card:hover .cc-img { transform: scale(1.06); }
.case-card .cc-ico {
    position: absolute;
    left: 20px;
    bottom: -22px;
    z-index: 2;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--sp-grad-brand);
    color: #fff;
    font-size: 18px;
    display: none; /* 2026-09-23 按要求隐藏卡片图标，改回 flex 即恢复 */
    align-items: center;
    justify-content: center;
    border: 3px solid #fff;
    box-shadow: 0 8px 18px rgba(1, 50, 203, .28);
    transition: transform .3s var(--sp-ease);
}
.case-card:hover .cc-ico { transform: translateY(-3px); }
.case-card .cc-body {
    display: block;
    padding: 32px 22px 20px;
}
.case-card .cc-title {
    display: block;
    font-size: 16.5px;
    font-weight: 600;
    color: var(--sp-title);
    margin: 0 0 10px;
    line-height: 1.45;
    transition: color .25s ease;
}
.case-card:hover .cc-title { color: var(--sp-acc); }
.case-card .cc-sum {
    font-size: 13.5px;
    line-height: 1.85;
    margin: 0;
    color: #6b7788;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.case-card .cc-points {
    list-style: none;
    margin: 12px 0 0;
    padding: 12px 0 0;
    border-top: 1px dashed var(--sp-border);
}
.case-card .cc-points li {
    position: relative;
    font-size: 13px;
    line-height: 1.8;
    color: var(--sp-muted);
    padding-left: 16px;
    margin-bottom: 4px;
}
.case-card .cc-points li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--sp-acc);
    opacity: .75;
}
.case-card .cc-more {
    display: inline-block;
    margin-top: 14px;
    color: var(--sp-acc);
    font-size: 13px;
    font-weight: 500;
    transition: transform .3s var(--sp-ease);
}
.case-card .cc-more i { font-size: 14px; }
.case-card:hover .cc-more { transform: translateX(5px); }

/* 数据统计（浅灰底 · Oswald 超大蓝字） */
.home-stats {
    background: var(--sp-bg-band);
    border-radius: var(--sp-radius-lg);
    padding: 32px 20px;
    margin: 14px 0 4px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    position: relative;
}
.home-stats::before {
    content: '';
    position: absolute;
    left: 24px; right: 24px; top: 0;
    height: 2px;
    background: var(--sp-grad-line);
}
.home-stats .st-item {
    text-align: center;
    padding: 6px 26px;
    min-width: 150px;
}
.home-stats .st-item + .st-item { border-left: 1px solid #e0e6ee; }
.home-stats .st-num {
    font-family: var(--sp-font-head);
    font-size: 52px;
    font-weight: 500;
    color: var(--sp-acc);
    line-height: 1.05;
    letter-spacing: 2px;
    font-variant-numeric: tabular-nums;
}
.home-stats .st-num em {
    font-style: normal;
    font-size: 16px;
    font-weight: 400;
    color: var(--sp-muted);
    margin-left: 4px;
}
.home-stats .st-label {
    color: var(--sp-muted);
    font-size: 13px;
    margin-top: 8px;
    letter-spacing: 1px;
}

/* 应用领域玻璃卡（深蓝反白区） */
.field-grid { display: flex; flex-wrap: wrap; gap: 16px; }
.field-card {
    flex: 1 1 0;
    min-width: 160px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: 30px 18px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: var(--sp-radius-lg);
    color: #fff;
    text-align: center;
    position: relative;
    transition: all .3s var(--sp-ease);
}
.field-card:hover {
    background: linear-gradient(180deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, .06));
    border-color: rgba(255, 255, 255, .45);
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(2, 10, 30, .35);
    text-decoration: none;
    color: #fff;
}
.field-card .fc-ico {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .28);
    color: #dcebff;
    font-size: 23px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s ease, color .3s ease;
}
.field-card:hover .fc-ico { background: #fff; color: var(--sp-acc); }
.field-card .fc-name { font-size: 15.5px; font-weight: 500; letter-spacing: .5px; text-shadow: 0 1px 3px rgba(5, 25, 58, .5); }
.field-card .fc-arrow {
    position: absolute;
    right: 14px;
    top: 14px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .3);
    color: #fff;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transform: translateX(-6px);
    transition: all .3s var(--sp-ease);
}
.field-card:hover .fc-arrow { opacity: 1; transform: none; }

/* 公司简介图片装饰框 */
.intro-frame { position: relative; margin-bottom: 26px; }
.intro-frame::after {
    content: '';
    position: absolute;
    right: -12px;
    bottom: -12px;
    width: 55%;
    height: 55%;
    border: 2px solid rgba(1, 50, 203, .35);
    border-radius: var(--sp-radius);
    z-index: 0;
    pointer-events: none;
}
.intro-frame img { position: relative; z-index: 1; }

/* 服务优势编号 */
.advantage-card { position: relative; }
.advantage-card .av-idx {
    position: absolute;
    top: 18px;
    right: 20px;
    font-family: var(--sp-font-head);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1.5px;
    color: rgba(1, 50, 203, .28);
}

/* 新闻非对称（左主推 + 右列表） */
/* 新闻左右栏等高对齐 */
.news-row-wrap { display: flex; flex-wrap: wrap; }
.news-row-wrap > [class*='col-'] { display: flex; flex-direction: column; }
.news-row-wrap > [class*='col-'] > * { width: 100%; }
@media (max-width: 991px) {
    .news-row-wrap > .col-md-6 { flex: 0 0 100%; max-width: 100%; }
}
.news-feature {
    display: block;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius-lg);
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: var(--sp-shadow-soft);
    transition: all .3s var(--sp-ease);
    color: var(--sp-text);
    height: 100%;
}
.news-feature:hover {
    text-decoration: none;
    color: var(--sp-text);
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
    border-color: rgba(1, 50, 203, .35);
}
.news-feature .nf-img {
    display: block;
    position: relative;
    height: 260px;
    background: var(--sp-soft) center center / cover no-repeat;
    transition: transform .6s var(--sp-ease);
}
.news-feature:hover .nf-img { transform: scale(1.05); }
.news-feature .nf-body { display: flex; flex-direction: column; height: auto; padding: 24px 24px 22px; }
.news-feature .nf-title { display: block; }
.news-feature .nf-sum { flex: 1 0 auto; }
/* 日期徽章：叠加于图片左上角 */
.news-feature .nf-date {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    padding: 4px 13px;
    border-radius: 15px;
    background: #fff;
    color: var(--sp-acc);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: .8px;
    box-shadow: 0 4px 14px rgba(5, 25, 58, .35);
}
.news-list-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    margin: 6px 8px 2px;
    color: var(--sp-acc);
    font-size: 13.5px;
    font-weight: 600;
    transition: gap .25s ease;
}
.news-list-more:hover { text-decoration: none; gap: 12px; }
.news-feature .nf-title {
    display: block;
    font-size: 19px;
    font-weight: 600;
    color: var(--sp-title);
    margin: 8px 0 10px;
    line-height: 1.5;
    transition: color .25s ease;
}
.news-feature:hover .nf-title { color: var(--sp-acc); }
.news-feature .nf-sum {
    font-size: 13.5px;
    color: #6b7788;
    line-height: 1.85;
    margin: 0 0 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.news-feature .nf-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    align-self: flex-start;
    margin-top: auto;
    padding: 8px 19px;
    border: 1px solid var(--sp-acc);
    border-radius: 18px;
    color: var(--sp-acc);
    font-size: 13px;
    font-weight: 600;
    transition: background .25s ease, color .25s ease;
}
.news-feature:hover .nf-more { background: var(--sp-acc); color: #fff; }
.news-feature .nf-more i { transition: transform .3s var(--sp-ease); font-size: 12px; }
.news-feature:hover .nf-more i { transform: translateX(4px); }

.news-list {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 4px 6px;
}
.news-row {
    flex: 1;
    min-height: 0;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 21px 8px;
    border-bottom: 1px solid #eef1f5;
    color: var(--sp-text);
    transition: background .25s ease, padding-left .25s var(--sp-ease);
}
.news-row:last-child { border-bottom: none; }
.news-row:hover { text-decoration: none; color: var(--sp-text); padding-left: 14px; }
/* 日历式日期块 */
.news-row .nr-cal {
    flex-shrink: 0;
    width: 58px;
    padding: 7px 0;
    text-align: center;
    border: 1px solid rgba(1, 50, 203, .22);
    border-radius: 10px;
    background: #f2f6fc;
}
.news-row .nr-day {
    display: block;
    font-family: var(--sp-font-head);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.1;
    color: var(--sp-acc);
}
.news-row .nr-mon {
    display: block;
    font-size: 11px;
    letter-spacing: .6px;
    color: #8a97ab;
    margin-top: 2px;
}
.news-row .nr-main { flex: 1; min-width: 0; }
.news-row .nr-title {
    display: block;
    font-size: 15.5px;
    font-weight: 600;
    color: var(--sp-title);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .25s ease;
}
.news-row:hover .nr-title { color: var(--sp-acc); }
.news-row .nr-sum {
    display: block;
    font-size: 13px;
    color: #8a97ab;
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.news-row .nr-more {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    border: 1px solid var(--sp-border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sp-acc);
    transition: all .3s var(--sp-ease);
}
.news-row:hover .nr-more { background: var(--sp-acc); border-color: var(--sp-acc); color: #fff; }

/* 新闻卡片 */
.news-card {
    display: block;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    overflow: hidden;
    margin-bottom: 24px;
    color: var(--sp-text);
    box-shadow: var(--sp-shadow-soft);
    transition: all .3s var(--sp-ease);
}
.news-card:hover {
    text-decoration: none;
    color: var(--sp-text);
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
    border-color: rgba(1, 50, 203, .35);
}
.news-card .nc-img {
    display: block;
    height: 158px;
    background: var(--sp-soft) center center / cover no-repeat;
    transition: transform .6s var(--sp-ease);
}
.news-card:hover .nc-img { transform: scale(1.06); }
.news-card .nc-body { display: block; padding: 18px 20px 16px; }
.news-card .nc-date {
    color: var(--sp-muted);
    font-size: 12px;
    letter-spacing: .5px;
}
.news-card .nc-title {
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: var(--sp-title);
    margin: 6px 0 8px;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .25s ease;
}
.news-card:hover .nc-title { color: var(--sp-acc); }
.news-card .nc-sum {
    font-size: 13px;
    line-height: 1.85;
    margin: 0;
    color: #6b7788;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.news-card .nc-more {
    color: var(--sp-acc);
    font-size: 13px;
    font-weight: 500;
    margin-top: 12px;
    display: block;
    transition: padding-left .3s var(--sp-ease);
}
.news-card:hover .nc-more { padding-left: 6px; }

/* 服务优势（为什么选择苏福） */
.advantage-card {
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    padding: 26px 22px;
    margin-bottom: 24px;
    height: 100%;
    transition: all .3s var(--sp-ease);
}
.advantage-card:hover {
    border-color: rgba(1, 50, 203, .3);
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
}
.advantage-card .av-ico {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--sp-grad-brand);
    color: #fff;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    box-shadow: 0 8px 18px rgba(1, 50, 203, .22);
    transition: transform .3s var(--sp-ease);
}
.advantage-card:hover .av-ico { transform: translateY(-2px); }
.advantage-card .av-title {
    font-size: 16.5px;
    font-weight: 600;
    color: var(--sp-title);
    margin: 0 0 8px;
    line-height: 1.45;
    transition: color .25s ease;
}
.advantage-card:hover .av-title { color: var(--sp-acc); }
.advantage-card .av-text {
    font-size: 13.5px;
    line-height: 1.9;
    margin: 0;
    color: var(--sp-text);
}

/* 首页在线咨询 */
.home-inquiry { padding: 14px 0 0; }
.inquiry-box {
    display: flex;
    align-items: center;
    gap: 36px;
    background: var(--sp-grad-dark);
    border-radius: var(--sp-radius-lg);
    padding: 34px 32px;
    color: #fff;
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
}
.inquiry-box::after {
    content: '';
    position: absolute;
    right: -80px;
    bottom: -80px;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
    pointer-events: none;
}
.inquiry-box .iq-left { flex: 0 0 38%; position: relative; z-index: 1; }
.inquiry-box .iq-left .iq-title {
    font-family: var(--sp-font-head);
    font-size: 26px;
    font-weight: 600;
    letter-spacing: 1.5px;
    margin: 0 0 8px;
    text-transform: uppercase;
}
.inquiry-box .iq-left .iq-sub { font-size: 15px; color: #cfe0f4; margin-bottom: 8px; }
.inquiry-box .iq-left .iq-text { font-size: 13px; color: #8fb0d6; margin: 0; line-height: 1.9; }
.inquiry-box .iq-right { flex: 1; position: relative; z-index: 1; }
.inquiry-form .iq-input {
    width: 100%;
    height: 44px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    padding: 0 14px;
    margin-bottom: 12px;
    outline: none;
    transition: border-color .25s ease, background .25s ease;
}
.inquiry-form textarea.iq-input { height: auto; padding-top: 10px; resize: vertical; }
.inquiry-form .iq-input::placeholder { color: rgba(255, 255, 255, .6); }
.inquiry-form .iq-input:focus { border-color: #fff; background: rgba(255, 255, 255, .16); }
.inquiry-form .iq-foot { text-align: right; }
.btn-inquiry { box-shadow: none; }

/* ---------- 内页通用 ---------- */
/* 内页横幅：全宽大图 + 居中标题 + 居中面包屑（参考 en.sourcepump.com 内页） */
.page-banner {
    background-color: var(--sp-ink);
    background-image: linear-gradient(180deg, rgba(5, 25, 58, .5) 0%, rgba(5, 25, 58, .26) 100%);
    background-size: cover;
    background-position: center;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    padding: 90px 0;
    margin-bottom: 34px;
    position: relative;
    overflow: hidden;
    text-align: center;
}
.page-banner .container { position: relative; z-index: 1; width: 100%; }
.page-banner h1 {
    font-family: var(--sp-font-head);
    font-size: 34px;
    margin: 0 0 12px;
    font-weight: 600;
    color: #fff;
    letter-spacing: 2px;
    text-shadow: 0 2px 18px rgba(0, 10, 30, .65), 0 0 6px rgba(0, 10, 30, .4);
}
.page-banner .crumb {
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    letter-spacing: .4px;
    text-align: center;
}
/* 面包屑定位针（对应参考站 Location 图标） */
.page-banner .crumb::before {
    content: '\f041';
    font-family: FontAwesome;
    font-size: 13px;
    margin-right: 8px;
    color: var(--sp-sky);
}
.page-banner .crumb a { color: rgba(255, 255, 255, .85); transition: color .2s ease; }
.page-banner .crumb a:hover { color: #fff; text-decoration: none; }

/* 内页横幅分栏目底图（浅蓝遮罩 + AI 生成横幅图，图缺失退化为纯渐变） */
.ctrl-honor .page-banner {
    background-image:
        linear-gradient(180deg, rgba(5, 25, 58, .5) 0%, rgba(5, 25, 58, .26) 100%),
        url('../../uploads/banner/banner-honor.jpg');
    background-size: auto, cover;
    background-position: center, center;
}
.ctrl-news .page-banner {
    background-image:
        linear-gradient(180deg, rgba(5, 25, 58, .5) 0%, rgba(5, 25, 58, .26) 100%),
        url('../../uploads/banner/banner-news.jpg');
    background-size: auto, cover;
    background-position: center, center;
}
.ctrl-product .page-banner {
    background-image:
        linear-gradient(180deg, rgba(5, 25, 58, .58) 0%, rgba(5, 25, 58, .34) 100%),
        url('../../uploads/banner/banner-product.jpg');
    background-size: auto, cover;
    background-position: center, center;
}
.ctrl-field .page-banner {
    background-image:
        linear-gradient(180deg, rgba(5, 25, 58, .5) 0%, rgba(5, 25, 58, .26) 100%),
        url('../../uploads/banner/banner-field.jpg');
    background-size: auto, cover;
    background-position: center, center;
}

/* tab 切换 */
.site-tabs {
    border-bottom: 2px solid var(--sp-border);
    margin-bottom: 28px;
    display: flex;
    flex-wrap: wrap;
}
.site-tabs .tab-item {
    padding: 10px 20px;
    margin-right: 6px;
    color: #4a5568;
    font-size: 15px;
    border-bottom: 3px solid transparent;
    border-radius: 8px 8px 0 0;
    margin-bottom: -2px;
    cursor: pointer;
    letter-spacing: .5px;
    transition: color .25s ease, background .25s ease;
}
.site-tabs .tab-item:hover { color: var(--sp-acc); background: var(--sp-acc-bg); text-decoration: none; }
.site-tabs .tab-item.active {
    color: var(--sp-acc);
    font-weight: 600;
    background: var(--sp-acc-bg);
    border-bottom-color: var(--sp-acc);
}

/* 搜索页 */
.search-panel { margin-bottom: 28px; }
.search-panel-form { display: flex; gap: 10px; max-width: 720px; }
.search-panel-form .sp-input {
    flex: 1;
    height: 46px;
    border: 1px solid var(--sp-border);
    border-radius: 6px;
    padding: 0 16px;
    font-size: 14.5px;
    color: var(--sp-text);
    outline: none;
    transition: border-color .25s ease, box-shadow .25s ease;
}
.search-panel-form .sp-input:focus {
    border-color: var(--sp-acc-light);
    box-shadow: 0 0 0 3px rgba(1, 50, 203, .12);
}
.search-panel-form .sp-btn { border-radius: 6px; height: 46px; padding-top: 0; padding-bottom: 0; line-height: 44px; }
.search-results { min-height: 220px; }
.search-empty { text-align: center; padding: 70px 20px; color: var(--sp-muted); }
.search-empty i { font-size: 44px; display: block; margin-bottom: 14px; opacity: .5; }
.search-empty p { font-size: 15px; margin: 0; }

/* 列表-文本行 */
.text-list { margin: 0; padding: 0; list-style: none; }
.text-list li {
    border-bottom: 1px dashed #dfe6ef;
    padding: 14px 2px;
    transition: padding-left .3s var(--sp-ease);
}
.text-list li:hover { padding-left: 8px; }
.text-list li a {
    display: block;
    color: #3d4a5c;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.text-list li a:hover { color: var(--sp-acc); }
.text-list .list-date {
    float: right;
    color: var(--sp-muted);
    font-size: 12px;
    margin-left: 14px;
}

/* 详情页 */
.detail-box {
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius-lg);
    padding: 32px;
    margin-bottom: 30px;
    box-shadow: var(--sp-shadow-soft);
}
.detail-box hr { border-color: var(--sp-border); }
.detail-box .detail-title {
    font-size: 24px;
    color: var(--sp-title);
    text-align: center;
    margin: 0 0 12px;
    font-weight: 600;
    letter-spacing: .5px;
}
.detail-box .detail-meta {
    text-align: center;
    color: var(--sp-muted);
    font-size: 12.5px;
    letter-spacing: .5px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eef1f5;
    margin-bottom: 22px;
}
.detail-box .detail-content { line-height: 2; font-size: 15px; word-break: break-word; color: var(--sp-text); }
.detail-box .detail-content h1,
.detail-box .detail-content h2,
.detail-box .detail-content h3 { margin-top: 26px; }
.detail-box .detail-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}
.detail-box .box-title {
    color: var(--sp-title);
    font-weight: 600;
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--sp-border);
    letter-spacing: .5px;
}
.contact-form { min-height: 480px; }
.detail-box pre {
    white-space: pre-wrap;
    word-break: break-word;
    background: var(--sp-soft);
    border: 1px solid #e1e8f0;
    border-radius: 8px;
    font-size: 13px;
    color: #4a5568;
    line-height: 1.8;
}
.detail-box .contact-ico { color: var(--sp-midblue); }

/* 应用领域详情：行业图文头 */
.fd-head {
    display: flex;
    gap: 26px;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: var(--sp-shadow-soft);
}
.fd-head .fd-media {
    flex: 0 0 46%;
    position: relative;
    min-height: 280px;
    overflow: hidden;
}
.fd-head .fd-img {
    display: block;
    position: absolute;
    inset: 0;
    background: var(--sp-soft) center center / cover no-repeat;
    transition: transform .6s var(--sp-ease);
}
.fd-head .fd-img-ph { background: var(--sp-grad-brand); }
.fd-head:hover .fd-img { transform: scale(1.04); }
.fd-head .fd-info {
    flex: 1;
    min-width: 0;
    padding: 28px 26px 24px 0;
    display: flex;
    flex-direction: column;
}
.fd-head .fd-ico {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--sp-grad-brand);
    color: #fff;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    box-shadow: 0 8px 18px rgba(1, 50, 203, .22);
    flex: none;
}
.fd-head .fd-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--sp-title);
    line-height: 1.4;
    margin: 0 0 16px;
    letter-spacing: .5px;
}
.fd-head .fd-pills {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.fd-head .fd-pills li {
    font-size: 12.5px;
    line-height: 1.5;
    color: var(--sp-acc);
    background: var(--sp-acc-bg);
    border: 1px solid rgba(1, 50, 203, .18);
    border-radius: 999px;
    padding: 5px 13px;
    max-width: 100%;
}
.fd-head .fd-meta {
    margin-top: auto;
    display: flex;
    gap: 18px;
    font-size: 12.5px;
    color: var(--sp-muted);
    letter-spacing: .5px;
}
.fd-head .fd-meta i { color: var(--sp-acc-light); margin-right: 5px; }

/* 行业切换条（上一/下一行业）—— 2026-09-23 按要求隐藏，改回 display:flex 即恢复 */
.fd-switch {
    display: none;
    gap: 14px;
    margin-bottom: 10px;
}
.fd-switch .fd-sw {
    flex: 1;
    min-width: 0;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    padding: 14px 18px;
    transition: all .3s var(--sp-ease);
}
.fd-switch a.fd-sw:hover {
    text-decoration: none;
    border-color: rgba(1, 50, 203, .35);
    box-shadow: var(--sp-shadow-lift);
}
.fd-switch .sw-dir {
    display: block;
    font-size: 12px;
    color: var(--sp-muted);
    letter-spacing: .5px;
    margin-bottom: 6px;
}
.fd-switch .sw-dir i { color: var(--sp-acc); }
.fd-switch .sw-title {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--sp-title);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .25s ease;
}
.fd-switch a.fd-sw:hover .sw-title { color: var(--sp-acc); }
.fd-switch .fd-sw-next { text-align: right; }
.fd-switch .fd-sw-next .sw-title { direction: rtl; text-align: right; }
.fd-switch .fd-sw-empty { background: transparent; border-color: transparent; }

/* 更多应用领域：迷你图文卡 */
.related-block .case-card-mini .cc-media { height: 140px; }
.related-block .case-card-mini .cc-body { padding: 14px 16px 14px; }
.related-block .case-card-mini .cc-title {
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
    /* 迷你卡标题两行截断 */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.related-block .case-card-mini .cc-more { margin-top: 8px; font-size: 12.5px; }

/* 详情页底部咨询 CTA */
.fd-cta { margin-top: 6px; }
.fd-cta .inquiry-box { margin-bottom: 34px; }

/* 方案对比：传统 VS 苏福 大卡 */
.cmp-box { padding: 30px 28px 28px; }
.cmp-head { text-align: center; margin-bottom: 24px; }
.cmp-head .cmp-kicker {
    display: block;
    font-family: var(--sp-font-head);
    font-size: 12px;
    letter-spacing: 3px;
    color: var(--sp-acc);
    font-weight: 600;
    margin-bottom: 8px;
}
.cmp-head h2 {
    font-size: 24px;
    font-weight: 700;
    color: var(--sp-title);
    margin: 0;
    letter-spacing: 1px;
}
.cmp-grid {
    display: flex;
    gap: 22px;
    position: relative;
    align-items: stretch;
}
.cmp-card {
    flex: 1 1 0;
    min-width: 0;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.cmp-card .cmp-img {
    display: block;
    height: 150px;
    background: var(--sp-soft) center center / cover no-repeat;
}
.cmp-card .cmp-img-ph {
    background: linear-gradient(135deg, #c9ced6 0%, #a8b0ba 100%);
}
.cmp-card .cmp-label {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 12px 20px;
}
.cmp-card .cmp-label i { margin-right: 7px; }
.cmp-card .cmp-list {
    list-style: none;
    margin: 0;
    padding: 6px 20px 20px;
    flex: 1;
}
.cmp-card .cmp-list li {
    position: relative;
    font-size: 13.5px;
    line-height: 1.8;
    padding: 7px 0 7px 26px;
    border-bottom: 1px dashed var(--sp-border);
    color: var(--sp-text);
    word-break: break-word;
}
.cmp-card .cmp-list li:last-child { border-bottom: none; }
.cmp-card .cmp-list li::before {
    position: absolute;
    left: 0;
    top: 7px;
    font-size: 14px;
    font-weight: 700;
}
.cmp-card .cmp-list b {
    font-weight: 600;
    color: var(--sp-title);
    margin-right: 2px;
}
/* 左：传统方案灰调 */
.cmp-trad {
    background: #f7f8f9;
    border-color: #e3e6ea;
}
.cmp-trad .cmp-img { filter: grayscale(.45) brightness(.96); }
.cmp-trad .cmp-label {
    background: #eceef1;
    color: #5c6672;
    border-bottom: 1px solid #e0e3e8;
}
.cmp-trad .cmp-label i { color: #b9554e; }
.cmp-trad .cmp-list li { color: #6b7280; }
.cmp-trad .cmp-list li::before { content: '\00d7'; color: #b9554e; }
.cmp-trad .cmp-list b { color: #4a525c; }
/* 右：苏福方案品牌蓝调 */
.cmp-sufu {
    background: #fff;
    border-color: rgba(1, 50, 203, .35);
    box-shadow: var(--sp-shadow-lift);
}
.cmp-sufu .cmp-label {
    background: var(--sp-grad-brand);
    color: #fff;
}
.cmp-sufu .cmp-label i { color: #a8ffcf; }
.cmp-sufu .cmp-list li::before { content: '\2713'; color: var(--sp-acc); }
/* 中央 VS 徽章 */
.cmp-vs {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--sp-grad-brand);
    border: 4px solid #fff;
    box-shadow: 0 8px 22px rgba(1, 50, 203, .4);
    color: #fff;
    font-family: var(--sp-font-head);
    font-size: 17px;
    font-weight: 800;
    letter-spacing: .5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 关于我们 */
.about-section { margin-bottom: 38px; }
.about-section .about-head .about-title {
    font-size: 24px;
    color: var(--sp-title);
    font-weight: 600;
    padding-left: 0;
    margin: 0 0 8px;
    letter-spacing: .5px;
}
/* 标题下品牌蓝短线（对应参考站正文标题装饰线） */
.about-section .about-head .about-title::after {
    content: '';
    display: block;
    width: 56px;
    height: 3px;
    margin-top: 10px;
    background: var(--sp-grad-line);
    border-radius: 2px;
}
.about-section .about-head .about-sub {
    font-family: var(--sp-font-head);
    color: var(--sp-muted);
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.about-section .about-content { margin-top: 16px; line-height: 2; font-size: 15px; color: var(--sp-text); }
.about-section .about-body-row { margin-top: 6px; }
.about-img-right img { border-radius: 10px; box-shadow: var(--sp-shadow-soft); }
.about-card {
    background: var(--sp-soft);
    border: 1px solid #e1e8f0;
    border-radius: var(--sp-radius);
    padding: 20px;
    margin-bottom: 16px;
    transition: box-shadow .3s ease, transform .3s var(--sp-ease);
}
.about-card:hover {
    box-shadow: var(--sp-shadow-soft);
    transform: translateY(-2px);
}
.about-card h4 { color: var(--sp-midblue); font-size: 15.5px; margin: 0 0 8px; }
.about-card p { margin: 0; font-size: 14px; line-height: 1.85; color: #4a5568; }
.about-images { margin-top: 8px; }
.about-images img { max-width: 100%; border-radius: 8px; margin-bottom: 10px; }

/* 荣誉证书（首页无缝滚动墙） */
.honor-marquee {
    position: relative;
    overflow: hidden;
    padding: 6px 0 10px;
    -webkit-mask-image: none;
}
.honor-marquee::before,
.honor-marquee::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 90px;
    z-index: 2;
    pointer-events: none;
}
.honor-marquee::before { left: 0; background: linear-gradient(90deg, var(--sp-bg-band) 0%, rgba(248, 249, 251, 0) 100%); }
.honor-marquee::after { right: 0; background: linear-gradient(270deg, var(--sp-bg-band) 0%, rgba(248, 249, 251, 0) 100%); }
.hm-track {
    display: flex;
    width: max-content;
    animation: hm-scroll 38s linear infinite;
    will-change: transform;
}
.honor-marquee:hover .hm-track { animation-play-state: paused; }
@keyframes hm-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
.hm-card {
    flex: 0 0 auto;
    width: 214px;
    margin-right: 22px;
    display: block;
    background: #fff;
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    box-shadow: var(--sp-shadow-soft);
    overflow: hidden;
    transition: box-shadow .3s var(--sp-ease), transform .3s var(--sp-ease);
}
.hm-card:hover {
    text-decoration: none;
    box-shadow: var(--sp-shadow-lift);
    transform: translateY(-4px);
}
.hm-card .hm-img {
    display: block;
    height: 160px;
    background: #fff center / contain no-repeat;
}
.hm-card .hm-name {
    display: block;
    padding: 10px 12px 12px;
    text-align: center;
    font-size: 13px;
    color: var(--sp-title);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 荣誉证书 */
.honor-card .card-img { height: 240px; background-size: contain; background-repeat: no-repeat; }
.honor-card .card-title, .honor-card .card-meta { text-align: center; display: block; }
#honors .honor-card .card-img { height: 200px; }
.honor-card .card-title { font-size: 13px; }

/* 关于我们页内：荣誉资质类型筛选胶囊 */
.honor-filter { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.honor-filter .hf-item {
    display: inline-flex;
    align-items: center;
    padding: 7px 18px;
    border-radius: 18px;
    background: #f2f5fa;
    border: 1px solid transparent;
    color: #3d4a5c;
    font-size: 13.5px;
    font-weight: 500;
    transition: background .25s ease, border-color .25s ease, color .25s ease;
}
.honor-filter .hf-item:hover { background: #fff; border-color: #c9d6ea; color: var(--sp-acc); text-decoration: none; }
.honor-filter .hf-item.active { background: var(--sp-acc); border-color: var(--sp-acc); color: #fff; font-weight: 600; }

/* 联系我们 */
.contact-info-box {
    padding: 30px 26px;
    background: var(--sp-grad-dark);
    border-radius: var(--sp-radius-lg);
    color: #dbe7f5;
    box-shadow: var(--sp-shadow-lift);
    position: relative;
    overflow: hidden;
    min-height: 480px;
}
.contact-info-box::before {
    content: '';
    position: absolute;
    left: 0; right: 0; top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .3), transparent);
}
.contact-info-box::after {
    content: '';
    position: absolute;
    right: -64px;
    bottom: -64px;
    width: 190px;
    height: 190px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    pointer-events: none;
}
.contact-info-box .contact-title {
    color: #fff;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 0 0 18px;
}
.contact-info-box ul { list-style: none; margin: 0; padding: 0; }
.contact-info-box li { padding: 10px 0; font-size: 14px; }
.contact-info-box li i { width: 26px; color: var(--sp-sky); }
.contact-form .form-group label { font-weight: 500; color: var(--sp-title); }
.contact-form .form-control {
    border-radius: 6px;
    height: 44px;
    border-color: #dfe6ef;
    box-shadow: none;
    transition: border-color .25s ease, box-shadow .25s ease;
}
.contact-form textarea.form-control { height: auto; }
.contact-form .form-control:focus {
    border-color: var(--sp-acc-light);
    box-shadow: 0 0 0 3px rgba(46, 120, 194, .15);
}

/* 分页 */
.pagination { margin: 14px 0 34px; }
.pagination > li > a,
.pagination > li > span {
    color: var(--sp-acc);
    border-color: var(--sp-border);
    border-radius: 6px;
    margin: 0 3px;
    transition: all .25s ease;
}
.pagination > li > a:hover { color: #fff; background: var(--sp-acc); border-color: var(--sp-acc); }
.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:hover {
    background: var(--sp-acc);
    border-color: var(--sp-acc);
}

/* 证书弹窗 */
.honor-modal .modal-content { border-radius: 14px; border: none; box-shadow: 0 24px 64px rgba(5, 25, 58, .3); }
.honor-modal .modal-header { border-bottom: 1px solid var(--sp-border); }
.honor-modal .modal-title { color: var(--sp-title); font-weight: 600; }

/* ---------- 页脚（深蓝超级菜单式） ---------- */
.site-footer {
    background: var(--sp-deep2);
    background-image: linear-gradient(180deg, var(--sp-deep2) 0%, var(--sp-ink) 100%);
    color: var(--sp-footer-text);
    font-size: 13px;
    margin-top: 46px;
    position: relative;
    overflow: hidden;
}
.site-footer::before {
    content: 'SUFU PUMPS';
    position: absolute;
    right: -1%;
    bottom: -16%;
    font-size: 110px;
    font-weight: 800;
    letter-spacing: 4px;
    color: rgba(255, 255, 255, .03);
    text-transform: uppercase;
    line-height: 1;
    pointer-events: none;
    white-space: nowrap;
    user-select: none;
}
.site-footer .container { position: relative; z-index: 1; }
/* 页脚联系信息条 */
.footer-contact-strip {
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    padding: 14px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer-contact-strip .fcs-item {
    color: #cfe0f4;
    font-size: 13.5px;
    padding: 4px 18px 4px 0;
}
.footer-contact-strip .fcs-item i {
    color: var(--sp-sky);
    width: 24px;
    margin-right: 6px;
}
.footer-contact-strip .fcs-phone { font-family: var(--sp-font-head); font-size: 17px; letter-spacing: 1px; color: #fff; }
.site-footer .row { padding: 40px 0 22px; }
.site-footer .footer-title {
    font-family: var(--sp-font-head);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    margin-bottom: 16px;
}
.site-footer .footer-title::after {
    content: '';
    display: block;
    width: 26px;
    height: 2px;
    margin-top: 9px;
    background: linear-gradient(90deg, var(--sp-acc-light), transparent);
}
.site-footer .footer-list { list-style: none; margin: 0; padding: 0; }
.site-footer .footer-list li { padding: 6px 0; }
.site-footer .footer-list i { width: 22px; color: var(--sp-sky); }
.site-footer .footer-links-list a {
    color: var(--sp-footer-text);
    transition: color .25s ease, padding-left .25s var(--sp-ease);
}
.site-footer .footer-links-list a:hover {
    color: #fff;
    text-decoration: none;
    padding-left: 5px;
}
.site-footer .footer-brand { margin-bottom: 16px; }
.site-footer .footer-brand img {
    display: inline-block;
    width: 42px;
    height: 42px;
    vertical-align: middle;
    margin-right: 10px;
}
.site-footer .footer-brand .fb-name {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    vertical-align: middle;
}
.site-footer .footer-brand-text { line-height: 2; margin-bottom: 14px; color: #8fb0d6; }
.site-footer .copyright {
    border-top: 1px solid rgba(255, 255, 255, .1);
    text-align: center;
    padding: 18px 0 22px;
    color: #7ea4c9;
    letter-spacing: .5px;
}
.site-footer .copyright a { color: #7ea4c9; }
.site-footer .copyright a:hover { color: #fff; }

/* ------- 通用文字工具 ------- */
.text-muted { color: var(--sp-muted); }

/* 首页公司简介文字 */
.intro-title { color: var(--sp-title); font-weight: 600; margin-top: 0; letter-spacing: .5px; font-size: 21px; }
.intro-text { line-height: 2.05; color: var(--sp-text); }
.intro-img { border-radius: 10px; margin-bottom: 16px; box-shadow: var(--sp-shadow-soft); }

/* ------- 滚动渐入（由 frontend.js 添加 reveal-ready 后生效，无 JS 时全可见） ------- */
.reveal-ready [data-reveal] {
    opacity: 0;
    transform: translateY(24px);
    will-change: opacity, transform;
}
.reveal-ready [data-reveal].is-revealed {
    opacity: 1;
    transform: none;
}

/* reveal 方向变体（由 data-reveal 属性指定） */
.reveal-ready [data-reveal="left"] { transform: translateX(-36px); }
.reveal-ready [data-reveal="right"] { transform: translateX(36px); }
.reveal-ready [data-reveal="up"] { transform: translateY(24px); }

/* ---------- 跳动/流动/呼吸动效（明显但克制） ---------- */
.hero-orb {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(125, 182, 247, .3), transparent 70%);
    filter: blur(2px);
    pointer-events: none;
    z-index: 0;
    animation: sp-float 14s ease-in-out infinite;
}
.orb-1 { width: 340px; height: 340px; left: 7%; top: 16%; }
.orb-2 { width: 220px; height: 220px; right: 13%; bottom: 14%; animation-duration: 18s; animation-delay: -6s; }
.orb-3 { width: 130px; height: 130px; right: 36%; top: 24%; animation-duration: 12s; animation-delay: -3s; }

.field-card .fc-ico,
.advantage-card .av-ico {
    animation: sp-float 2.6s ease-in-out infinite;
}
.field-card:hover .fc-ico,
.advantage-card:hover .av-ico { animation-play-state: paused; }

.sec-num { animation: sp-drift 18s ease-in-out infinite alternate; }
.sec-dark::before {
    background-size: 200% 100%;
    animation: sp-sheen 9s linear infinite;
}

@keyframes sp-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}
@keyframes sp-drift {
    from { transform: translateX(0); }
    to { transform: translateX(12px); }
}
@keyframes sp-sheen {
    from { background-position: 0% 0; }
    to { background-position: 200% 0; }
}
@keyframes sp-pop {
    from { transform: scale(.72); opacity: .4; }
    to { transform: scale(1); opacity: 1; }
}

/* 统计数字：滚动完成后轻微弹出 */
[data-count] { display: inline-block; }
[data-count].is-counted { animation: sp-pop .4s var(--sp-ease); }

/* Hero 内部入场由 JS 补间驱动；以下 keyframes 供装饰用 */
@keyframes sp-fade-up {
    from { opacity: 0; transform: translateY(26px); }
    to   { opacity: 1; transform: none; }
}
@keyframes sp-line-grow {
    from { transform: scaleX(0); }
    to   { transform: scaleX(1); }
}

/* 区块标题装饰线：由 .sec-head 取代（此 keyframes 供 hero 等装饰用） */

/* 按钮流光（hover 高光斜扫） */
.btn-site, .btn-outline-site {
    position: relative;
    overflow: hidden;
}
.btn-site::before,
.btn-outline-site::before {
    content: '';
    position: absolute;
    top: -20%;
    bottom: -20%;
    left: -130%;
    width: 55%;
    background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .38), transparent);
    transform: skewX(-22deg);
    transition: left .55s var(--sp-ease);
    pointer-events: none;
}
.btn-site:hover::before,
.btn-outline-site:hover::before { left: 135%; }

/* 导航滚动态：阴影加深 + 微收缩（由 frontend.js 添加 is-scrolled） */
.navbar-site { transition: min-height .35s ease, box-shadow .35s ease; }
.site-header.is-scrolled .navbar-site {
    min-height: 70px;
    box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 16px 40px rgba(13, 59, 124, .16);
}
.site-header.is-scrolled .navbar-site .navbar-brand {
    height: 70px;
    line-height: 44px;
    padding-top: 13px;
    padding-bottom: 13px;
}
.site-header.is-scrolled .navbar-site .site-logo { width: 42px; height: 42px; }

/* ------- 动效安全：尊重系统减弱动效设置 ------- */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* ---------- 响应式 ---------- */
@media (max-width: 1199px) {
    /* 992–1199：始终白底导航（避免菜单与搜索拥挤） */
    .home-page.site-body { padding-top: 76px; }
    .home-page .site-header .navbar-site {
        background: #fff;
        border-bottom: 1px solid var(--sp-border);
        box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 10px 26px rgba(13, 59, 124, .05);
    }
    .home-page .site-header .navbar-site .navbar-brand,
    .home-page .site-header .navbar-site .brand-name { color: var(--sp-deep); }
    .home-page .site-header .navbar-site .navbar-nav > li > a,
    .home-page .site-header .navbar-site .navbar-nav > li > a:hover,
    .home-page .site-header .navbar-site .navbar-nav > li > a:focus,
    .home-page .site-header .navbar-site .navbar-nav > li.open > a,
    .home-page .site-header .navbar-site .navbar-nav > li.active > a { color: #3d4a5c; }
    .home-page .site-header .navbar-site .navbar-nav > li.active > a { color: var(--sp-acc); }
    .home-page .site-header .navbar-site .navbar-nav > li > a::after { background: var(--sp-grad-line); }
    .home-page .site-header .navbar-site .navbar-toggle .icon-bar { background: var(--sp-deep); }
    .home-page .site-header .navbar-site .navbar-toggle { border-color: #c3d0e2; }
    .home-page .navbar-search .ns-input {
        background: #f8f9fb;
        border-color: #dfe6ef;
        color: var(--sp-text);
    }
    .home-page .navbar-search .ns-input::placeholder { color: #9aa7ba; }
}

@media (max-width: 991px) {
    .home-banner .carousel-inner > .item { height: 520px; }
    .home-banner .banner-text h2 { font-size: 36px; }
    .home-banner .banner-text .container { padding-left: 64px; }
    .hero-count { display: none; }
}

@media (max-width: 767px) {
    .site-body, .home-page.site-body { padding-top: 58px; }
    /* 移动端导航始终实底 */
    .home-page .site-header .navbar-site {
        background: #fff;
        border-bottom: 1px solid var(--sp-border);
        box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 10px 26px rgba(13, 59, 124, .05);
    }
    .home-page .site-header .navbar-site .navbar-brand,
    .home-page .site-header .navbar-site .brand-name { color: var(--sp-deep); }
    .home-page .site-header .navbar-site .navbar-nav > li > a,
    .home-page .site-header .navbar-site .navbar-nav > li > a:hover,
    .home-page .site-header .navbar-site .navbar-nav > li > a:focus,
    .home-page .site-header .navbar-site .navbar-nav > li.open > a,
    .home-page .site-header .navbar-site .navbar-nav > li.active > a { color: #3d4a5c; }
    .home-page .site-header .navbar-site .navbar-nav > li.active > a { color: var(--sp-acc); }
    .home-page .site-header .navbar-site .navbar-nav > li > a::after { background: var(--sp-grad-line); }
    .home-page .site-header .navbar-site .navbar-toggle .icon-bar { background: var(--sp-deep); }
    .home-page .site-header .navbar-site .navbar-toggle { border-color: #c3d0e2; }

    .navbar-site { min-height: 58px; }
    .nav-lang-mobile { display: block; float: right; margin-top: 12px; margin-right: 12px; }
    .nav-lang-li { display: none !important; }
    .nav-lang-mobile .nav-lang-btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        height: 34px;
        padding: 0 12px;
        line-height: 1;
        border: 1px solid #dfe6ef;
        border-radius: 17px;
        background: #f7f9fd;
        color: var(--sp-deep);
        font-size: 13px;
        font-weight: 500;
        white-space: nowrap;
        transition: border-color .25s ease, color .25s ease, background .25s ease;
    }
    .nav-lang-mobile .nav-lang-btn:hover {
        border-color: var(--sp-acc-light);
        background: #fff;
        color: var(--sp-acc);
    }
    .nav-lang-mobile .nav-lang-btn .fa-globe { font-size: 13px; }
    .navbar-site .navbar-brand { height: 58px; line-height: 40px; font-size: 18px; padding-top: 9px; padding-bottom: 9px; }
    .navbar-site .site-logo { width: 40px; height: 40px; margin-right: 8px; margin-top: 0; }
    .navbar-site .brand-name { max-width: 44vw; font-size: 16px; }
    .navbar-site .navbar-toggle { margin-top: 11px; }
    .navbar-site .navbar-nav > li > a { line-height: 22px; padding-top: 12px; padding-bottom: 12px; }
    .navbar-site .navbar-nav > li > a::after { display: none; }
    .navbar-site .navbar-nav .dropdown-menu { background: #fff; box-shadow: none; }
    .navbar-site .navbar-nav > li.dropdown:hover > .dropdown-menu { display: none; }
    /* 下拉菜单移动端（2026-09-23 升级）：块状链接 + 底部横条图卡 */
    .navbar-site .navbar-nav .dropdown-menu.sp-dropdown {
        flex-direction: column;
        gap: 8px;
        min-width: 0;
        padding: 12px;
        border-radius: 12px;
        margin: 6px 12px 12px;
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l a {
        padding: 11px 14px;
        line-height: 1.5;
        font-size: 14px;
        border-radius: 8px;
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l a::after {
        opacity: .55;
        transform: translateX(0);
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l a:active {
        background: var(--sp-acc-bg) !important;
        color: var(--sp-acc);
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l a.sp-all { margin-top: 2px; }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-l a.sp-all::after { opacity: 1; }
    /* 右栏：横条图卡（列表之后收尾） */
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-r {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
        background: var(--sp-acc-bg);
        border-radius: 10px;
        padding: 10px;
        text-decoration: none;
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-r img {
        width: 88px;
        height: 64px;
        flex: none;
        border-radius: 8px;
        margin-bottom: 0;
    }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-rt { min-width: 0; }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-kicker { font-size: 10px; letter-spacing: 1.5px; margin-bottom: 2px; }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-r h3 { font-size: 14px; margin-bottom: 4px; }
    .navbar-site .navbar-nav .dropdown-menu .sp-dd-cta { font-size: 12px; }
    .navbar-site .navbar-nav { margin: 0 -15px; }
    .navbar-site .navbar-nav > li { border-bottom: 1px solid #eef1f5; }
    .navbar-site .navbar-nav > li.active > a,
    .navbar-site .navbar-nav > li > a:hover { color: var(--sp-acc); }

    .home-banner .carousel-inner > .item { height: 340px; }
    .home-banner .banner-slide::before {
        background:
            radial-gradient(ellipse at 60% 30%, rgba(46, 120, 194, .14), transparent 55%),
            linear-gradient(180deg, rgba(5, 25, 58, .78) 0%, rgba(5, 25, 58, .4) 45%, rgba(5, 25, 58, .86) 100%),
            linear-gradient(90deg, rgba(5, 25, 58, .55) 0%, rgba(5, 25, 58, .15) 100%);
    }
    .home-banner .banner-text p { display: none; }
    .home-banner .banner-text h2 { font-size: 26px; letter-spacing: .5px; max-width: none; }
    .home-banner .banner-text h2::after { margin-top: 14px; width: 46px; }
    .home-banner .banner-text .banner-slogan { font-size: 11px; letter-spacing: 3px; margin-bottom: 8px; }
    .home-banner .banner-text .banner-slogan::before { width: 22px; margin-right: 10px; }
    .home-banner { margin-bottom: 0; }
    .home-banner .carousel-control { display: none; }
    .home-banner .carousel-indicators { bottom: 12px; margin-right: 0; }

    .section-block { padding: 32px 0 6px; }

    .card-link .card-img { height: 130px; }
    .card-link .card-body { padding: 10px 12px; }
    .card-link .card-title { font-size: 14px; }
    .honor-card .card-title {
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        line-height: 1.45;
    }
    .about-section#honor .col-xs-6 { width: 100%; padding-left: 4px; padding-right: 4px; }
    .about-section#honor .honor-card .card-img { height: 200px; }
    #honors .honor-card .card-img { height: 110px; }
    .prod-card { border-radius: 12px; margin-bottom: 18px; }
    .prod-card .pc-img { height: 165px; }
    .prod-card .pc-cat { top: 10px; left: 10px; padding: 2px 9px; font-size: 10.5px; }
    .prod-card .pc-num { font-size: 28px; right: 10px; bottom: 6px; }
    .prod-card .pc-body { padding: 11px 13px 10px; padding-right: 40px; }
    .prod-card .pc-title { font-size: 14px; padding-right: 0; }
    .prod-card .pc-meta { font-size: 11.5px; margin-top: 4px; padding-right: 0; }
    .prod-card .pc-arrow { display: none; }
    .cat-row { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 4px; margin-bottom: 28px; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 70px), transparent 100%); mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 70px), transparent 100%); }
    .cat-row::-webkit-scrollbar { display: none; }
    .cat-row-link { flex-shrink: 0; padding: 7px 14px; font-size: 12.5px; }
    .field-card { min-width: 46%; padding: 22px 14px; gap: 10px; }
    .field-card .fc-name { font-size: 13.5px; line-height: 1.5; }
    .news-card .nc-img { height: 130px; }

    .home-stats { padding: 26px 10px; margin-top: 12px; border-radius: 12px; }
    .home-stats .st-num { font-size: 34px; }
    .home-stats .st-item { min-width: 108px; padding: 6px 10px; }

    .page-banner { min-height: 240px; padding: 56px 0; margin-bottom: 20px; }
    .page-banner h1 { font-size: 22px; letter-spacing: 1px; margin-bottom: 10px; }
    .page-banner .crumb { font-size: 12px; }

    .case-sec { margin-top: -20px; padding-top: 56px; padding-bottom: 34px; }
    .case-lead { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 22px; }
    .case-lead h2 { font-size: 21px; }
    .case-lead .cl-r { text-align: left; font-size: 13px; }
    .case-card .cc-media { height: 168px; }
    .case-card .cc-body { padding: 30px 18px 18px; }
    .case-card .cc-sum { font-size: 13px; }

    .fd-head { flex-direction: column; gap: 0; }
    .fd-head .fd-media { flex: none; min-height: 0; height: 200px; }
    .fd-head .fd-info { padding: 20px 18px 18px; }
    .fd-head .fd-ico { width: 44px; height: 44px; font-size: 17px; margin-bottom: 12px; }
    .fd-head .fd-title { font-size: 18px; margin-bottom: 12px; }
    .fd-head .fd-pills { margin-bottom: 14px; }
    .fd-switch { flex-direction: column; gap: 10px; }
    .fd-switch .fd-sw-next { text-align: left; }
    .fd-switch .fd-sw-next .sw-title { direction: ltr; text-align: left; }
    .fd-switch .fd-sw-empty { display: none; }
    .related-block .case-card-mini .cc-media { height: 120px; }
    .fd-cta .inquiry-box { margin-bottom: 24px; }

    .cmp-box { padding: 22px 16px 20px; }
    .cmp-head { margin-bottom: 18px; }
    .cmp-head h2 { font-size: 19px; }
    .cmp-grid { flex-direction: column; gap: 26px; }
    .cmp-card .cmp-img { height: 130px; }
    .cmp-card .cmp-label { padding: 10px 16px; font-size: 14px; }
    .cmp-card .cmp-list { padding: 4px 16px 16px; }
    .cmp-vs { width: 48px; height: 48px; font-size: 15px; border-width: 3px; }

    .detail-box { padding: 18px; border-radius: 10px; }
    .detail-box .detail-title { font-size: 17px; }

    .footer-contact-strip .fcs-item { width: 100%; padding: 3px 0; }
    .site-footer .row { padding: 32px 0 16px; }
    .site-footer::before { font-size: 64px; bottom: -2%; }
    .site-tabs .tab-item { padding: 8px 14px; font-size: 14px; }
    .inquiry-box { flex-direction: column; align-items: stretch; padding: 24px 18px; gap: 20px; }
    .inquiry-box .iq-left { flex: none; }
    .inquiry-form .iq-foot { text-align: center; }
}

/* 小屏微调 */
@media (max-width: 480px) {
    .home-banner .carousel-inner > .item { height: 270px; }
    .home-banner .banner-text h2 { font-size: 22px; }
}

/* ---------- 首页重设计响应式 ---------- */
@media (max-width: 991px) {
    .sec-block { padding: 56px 0; }
    .sec-head h2 { font-size: 29px; }
    .sec-num { font-size: 96px; }
    .field-grid { gap: 12px; }
    .field-card { min-width: 30%; }
    .news-feature .nf-img { height: 260px; }
}

@media (max-width: 767px) {
    .sec-block { padding: 40px 0; }
    .sec-head { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 26px; }
    .sec-head h2 { font-size: 24px; letter-spacing: .5px; }
    .sec-head .sh-more { align-self: flex-start; }
    .sec-head .sh-desc { font-size: 13px; margin-top: 8px; }
    .sec-num { font-size: 72px; top: 10px; }
    .field-grid { gap: 10px; }
    .field-card { min-width: 46%; padding: 22px 10px; gap: 10px; }
    .field-card .fc-ico { width: 46px; height: 46px; font-size: 18px; }
    .field-card .fc-name { font-size: 14px; }
    .news-feature .nf-img { height: 200px; }
    .news-feature .nf-date { top: 10px; left: 10px; padding: 3px 10px; font-size: 11px; }
    .news-feature .nf-body { padding: 16px 18px; }
    .news-feature .nf-title { font-size: 16.5px; }
    .news-list { padding: 0; }
    .news-row { flex: 0 0 auto; padding: 15px 4px; gap: 12px; }
    .news-row .nr-cal { width: 46px; padding: 5px 0; border-radius: 8px; }
    .news-row .nr-day { font-size: 17px; }
    .news-row .nr-sum { display: none; }
    .honor-marquee::before, .honor-marquee::after { width: 46px; }
    .hm-card { width: 150px; margin-right: 14px; }
    .hm-card .hm-img { height: 110px; }
    .hm-card .hm-name { font-size: 12px; padding: 8px 8px 10px; }
    .intro-frame::after { right: -7px; bottom: -7px; }
}
/* ============================================================
   关于我们页 复刻 www.sourcepump.com/company.html 样式
   （二级菜单横条 / 公司介绍左文右图 / 深蓝文化理念横幅）
   ============================================================ */

/* ---------- 页面级二级菜单横条（白底横排，激活蓝色） ---------- */
.page-subnav {
    position: sticky;
    top: 76px;
    z-index: 1020;
    background: #fff;
    border-bottom: 1px solid #e4e4e4;
    box-shadow: 0 1px 0 rgba(13, 59, 124, .04), 0 8px 18px rgba(13, 59, 124, .04);
}
.page-subnav .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 38px;
}
.page-subnav .ps-item {
    position: relative;
    display: inline-block;
    padding: 16px 2px 15px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    color: #707070;
    border-bottom: 3px solid transparent;
    text-decoration: none;
    transition: color .25s ease, border-color .25s ease;
}
.page-subnav .ps-item:hover { color: var(--sp-acc); text-decoration: none; }
.page-subnav .ps-item.active {
    color: var(--sp-acc);
    border-bottom-color: var(--sp-acc);
}

/* ---------- 面包屑（浅灰小字） ---------- */
.about-crumb {
    padding: 18px 0 6px;
    font-size: 14px;
    color: #8a8f98;
}
.about-crumb a { color: #8a8f98; }
.about-crumb a:hover { color: var(--sp-acc); text-decoration: none; }
.about-crumb .ac-sep { margin: 0 8px; color: #c4c9d1; }

/* ---------- 公司介绍：左文右图 ---------- */
.about-intro { padding: 18px 0 46px; }
.about-intro .ai-kicker {
    font-size: 17px;
    font-weight: 600;
    color: #5b636e;
    margin-bottom: 12px;
}
.about-intro .ai-line {
    display: block;
    width: 48px;
    height: 3px;
    border-radius: 2px;
    background: var(--sp-acc);
    margin-bottom: 18px;
}
.about-intro .ai-title {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .5px;
    color: #16233e;
    margin: 0 0 20px;
}
.about-intro .ai-lead {
    font-size: 14.5px;
    line-height: 1.9;
    color: #3d4652;
    text-align: justify;
    margin-bottom: 14px;
}
.about-intro .ai-block { margin-top: 38px; }
.about-intro .ai-block-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18.5px;
    font-weight: 700;
    color: #1f3a66;
    margin: 0 0 10px;
}
.about-intro .ai-dot {
    flex: none;
    font-size: 14px;
    line-height: 1;
    color: var(--sp-acc);
}
.about-intro .ai-block-text {
    font-size: 14px;
    line-height: 1.9;
    color: #5a6472;
    text-align: justify;
    margin: 0;
}
.about-intro .col-md-7 { padding-right: 30px; }
.about-intro .col-md-5 { padding-left: 30px; }
.about-intro .ai-image img {
    width: 100%;
    aspect-ratio: 9 / 10;
    object-fit: cover;
    object-position: 45% 30%;
    border-radius: 6px;
    box-shadow: 0 8px 26px rgba(13, 59, 124, .14);
}

/* ---------- 深蓝横幅：企业文化 · 经营理念（四列价值观） ---------- */
.about-band {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #123a74 0%, #1b4e8c 55%, #1e5fa0 100%);
    color: #eaf3ff;
    padding: 64px 0 60px;
}
.about-band::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('../img/world-dots.svg');
    background-size: cover;
    background-position: center;
    opacity: .42;
    pointer-events: none;
}
.about-band::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        repeating-linear-gradient(0deg, rgba(255, 255, 255, .045) 0 1px, transparent 1px 12.5%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, .045) 0 1px, transparent 1px 12.5%);
    pointer-events: none;
}
.about-band .band-inner { position: relative; z-index: 1; text-align: center; }
.about-band .band-eyebrow {
    display: inline-block;
    font-family: var(--sp-font-head);
    font-size: 12.5px;
    letter-spacing: 3.5px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .55);
    margin-bottom: 12px;
}
.about-band .band-title {
    font-size: 36px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #fff;
    margin: 0 0 16px;
}
.about-band .band-line {
    display: block;
    width: 56px;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    margin: 0 auto 22px;
}
.about-band .band-lead {
    font-size: 14.5px;
    line-height: 1.9;
    color: rgba(255, 255, 255, .82);
    max-width: 800px;
    margin: 0 auto 42px;
}
.about-band .band-cols {
    display: flex;
    border-top: 1px solid rgba(255, 255, 255, .14);
}
.about-band .band-col {
    flex: 1;
    padding: 28px 24px 4px;
    text-align: left;
    border-left: 1px solid rgba(255, 255, 255, .27);
}
.about-band .band-col:first-child { border-left: none; }
.about-band .bc-title {
    font-size: 17.5px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 12px;
}
.about-band .bc-text {
    font-size: 13.5px;
    line-height: 1.85;
    color: rgba(255, 255, 255, .78);
    text-align: justify;
    margin: 0;
}

/* ---------- 社会责任：图文交错展示 ---------- */
.about-csr { padding: 44px 0 34px; }
.csr-list { margin-top: 10px; }
.csr-row {
    display: flex;
    align-items: center;
    gap: 56px;
    margin-bottom: 52px;
}
.csr-row:last-child { margin-bottom: 0; }
.csr-row-rev .csr-media { order: 2; }
.csr-media {
    position: relative;
    flex: 0 0 46%;
    max-width: 46%;
    border-radius: var(--sp-radius-lg);
    overflow: hidden;
    box-shadow: var(--sp-shadow-lift);
}
/* 图底轻渐变：衬托左下角标签可读性 */
.csr-media::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 44%;
    background: linear-gradient(180deg, rgba(5, 25, 58, 0) 0%, rgba(5, 25, 58, .4) 100%);
    pointer-events: none;
}
.csr-media img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
    transition: transform .6s var(--sp-ease);
}
.csr-row:hover .csr-media img { transform: scale(1.035); }
.csr-tag {
    position: absolute;
    left: 18px;
    bottom: 16px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    padding: 7px 16px;
    font-size: 13.5px;
    font-weight: 600;
    color: #fff;
    background: rgba(13, 59, 124, .85);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    backdrop-filter: blur(4px);
}
.csr-tag b {
    margin-left: 9px;
    padding-left: 9px;
    border-left: 1px solid rgba(255, 255, 255, .4);
    font-family: var(--sp-font-head);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    opacity: .82;
}
.csr-body {
    flex: 1 1 auto;
    padding: 10px 0;
}
.csr-no {
    display: inline-block;
    font-family: var(--sp-font-head);
    font-size: 44px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 1px;
    color: transparent;
    -webkit-text-stroke: 1.5px var(--sp-acc);
    opacity: .9;
    margin-bottom: 14px;
}
.csr-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--sp-title);
    margin: 0 0 6px;
    letter-spacing: .5px;
}
.csr-kicker {
    font-family: var(--sp-font-head);
    font-size: 12px;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    color: var(--sp-acc2);
    margin-bottom: 16px;
}
.csr-text {
    font-size: 14.5px;
    line-height: 1.95;
    color: #3d4652;
    text-align: justify;
    margin: 0;
    max-width: 560px;
}

/* ---------- 荣誉资质 ---------- */
.about-honor { padding-top: 14px; }

/* 锚点滚动偏移（固定顶栏 + 粘性二级菜单） */
#intro, #culture, #philosophy, #csr, #honor { scroll-margin-top: 150px; }

/* ---------- 关于页 响应式 ---------- */
@media (max-width: 991px) {
    .about-intro .ai-title { font-size: 26px; }
    .about-band { padding: 48px 0 52px; }
    .about-band .band-cols { flex-wrap: wrap; }
    .about-band .band-col {
        flex: 0 0 50%;
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, .14);
        padding: 26px 20px 6px;
    }
    .about-band .band-col:nth-child(-n+2) { border-top: none; }
    .csr-row { gap: 36px; }
    .csr-media { flex: 0 0 46%; max-width: 46%; }
    .csr-no { font-size: 38px; }
    .csr-title { font-size: 20px; }
}

@media (max-width: 767px) {
    .page-subnav { top: 58px; }
    .page-subnav .container {
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 0 26px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .page-subnav .container { -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 60px), transparent 100%); mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 60px), transparent 100%); }
    .page-subnav .container::-webkit-scrollbar { display: none; }
    .page-subnav .ps-item {
        flex: none;
        white-space: nowrap;
        padding: 13px 0 12px;
        font-size: 14px;
    }
    .about-crumb { padding: 14px 0 14px; font-size: 13px; }
    .about-intro { padding: 8px 0 32px; }
    .about-intro .ai-kicker { font-size: 15px; }
    .about-intro .ai-title { font-size: 23px; margin-bottom: 16px; }
    .about-intro .ai-image { margin-top: 24px; }
    .about-band { padding: 38px 0 40px; }
    .about-band .band-eyebrow { font-size: 11px; letter-spacing: 2px; }
    .about-band .band-title { font-size: 24px; margin-bottom: 12px; }
    .about-band .band-lead { font-size: 13px; margin-bottom: 26px; }
    .about-band .band-cols { border-top: 1px solid rgba(255, 255, 255, .2); }
    .about-band .band-col {
        flex: 0 0 100%;
        text-align: center;
        border-top: 1px solid rgba(255, 255, 255, .2);
        border-left: none;
        padding: 24px 6px 8px;
    }
    .about-band .band-col:first-child { border-top: none; }
    .about-band .bc-text { text-align: center; }
    .about-csr { padding: 30px 0 20px; }
    .csr-row {
        flex-direction: column;
        align-items: stretch;
        gap: 22px;
        margin-bottom: 42px;
    }
    .csr-row-rev .csr-media { order: 0; }
    .csr-media { flex: none; max-width: 100%; width: 100%; }
    .csr-body { padding: 0; }
    .csr-no { font-size: 34px; margin-bottom: 10px; }
    .csr-title { font-size: 19px; }
    .csr-kicker { margin-bottom: 12px; }
    .csr-text { font-size: 13.5px; line-height: 1.9; }
    #intro, #culture, #philosophy, #csr, #honor { scroll-margin-top: 122px; }
}

@media (max-width: 480px) {
    .about-band .band-title { font-size: 21px; }
    .about-band .band-lead { font-size: 12.5px; }
}

/* 关于我们 banner（AI 生成：现代泵业厂区办公楼，居中构图） */
.ctrl-about .page-banner {
    background-image: linear-gradient(115deg, rgba(5, 25, 58, .72) 0%, rgba(5, 25, 58, .46) 50%, rgba(5, 25, 58, .6) 100%),
        url('../../uploads/banner/banner-about.jpg');
    background-size: cover;
    background-position: center;
}

/* 人才招聘页 banner 底图（深蓝金属工业特写） */
.ctrl-job .page-banner {
    background-image: linear-gradient(115deg, rgba(5, 25, 58, .8) 0%, rgba(5, 25, 58, .58) 50%, rgba(5, 25, 58, .68) 100%),
        url('../../uploads/job/2026-09-23/job_banner.jpg');
    background-size: cover;
    background-position: center;
}

/* 联系我们页 banner（AI 生成：现代工业办公综合楼） */
.ctrl-contact .page-banner {
    background-image: linear-gradient(115deg, rgba(5, 25, 58, .62) 0%, rgba(5, 25, 58, .38) 50%, rgba(5, 25, 58, .5) 100%),
        url('../../uploads/banner/banner-contact.jpg');
    background-size: cover;
    background-position: center;
}

/* 搜索页 banner（AI 生成：流体管道泵阀系统） */
.ctrl-search .page-banner {
    background-image: linear-gradient(115deg, rgba(5, 25, 58, .55) 0%, rgba(5, 25, 58, .34) 50%, rgba(5, 25, 58, .45) 100%),
        url('../../uploads/banner/banner-search.jpg');
    background-size: cover;
    background-position: center;
}

/* ---------- 人才招聘页（图文版式） ---------- */
.job-idea { padding-bottom: 8px; }
.job-idea .about-intro { padding: 10px 0 0; }
.job-perk { display: block; height: 100%; }
.job-perk .perk-img {
    display: block;
    height: 168px;
    background-size: cover;
    background-position: center;
    border-radius: var(--sp-radius) var(--sp-radius) 0 0;
}
.job-perk .perk-text {
    display: block;
    margin-top: 10px;
    font-size: 13.5px;
    line-height: 1.75;
    color: var(--sp-text);
    text-align: justify;
}
.job-none {
    padding: 26px 30px;
    border: 1px solid var(--sp-border);
    border-left: 4px solid var(--sp-acc);
    border-radius: var(--sp-radius);
    background: var(--sp-acc-bg);
    height: 100%;
}
.job-none h3 { margin: 0 0 10px; font-size: 18px; color: var(--sp-deep); font-weight: 700; }
.job-none p { margin: 0; font-size: 14px; line-height: 1.9; color: var(--sp-text); }
.job-contact { display: block; height: 100%; }
.job-contact .job-c-line {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 12px;
    font-size: 14px;
    color: var(--sp-text);
    line-height: 1.6;
}
.job-contact .job-c-line i { color: var(--sp-acc); width: 18px; text-align: center; flex: none; }
.job-contact .job-c-line a { color: var(--sp-deep); }
.job-contact .job-c-line a:hover { color: var(--sp-acc); }

@media (max-width: 767px) {
    .job-idea { padding: 30px 0 4px; }
    .job-perks .col-sm-6 { margin-bottom: 16px; }
    .job-perk .perk-img { height: 150px; }
    .job-none { padding: 20px; }
}

/* 招聘页理念区：右图改 4:3 横构图，平衡左文右图比例 */
.job-idea .ai-image img {
    aspect-ratio: 16 / 9;
    object-position: center;
}

/* 招聘页理念区左文：标题/正文加大，平衡右图视觉重量 */
.job-idea .ai-title { font-size: 34px; margin-bottom: 22px; }
.job-idea .ai-lead { font-size: 15px; line-height: 2; margin-bottom: 16px; }

/* ---------- 招聘岗位卡片 ---------- */
.job-pos {
    border: 1px solid var(--sp-border);
    border-radius: var(--sp-radius);
    background: #fff;
    padding: 24px 28px 20px;
    margin-bottom: 18px;
    transition: box-shadow .3s ease, transform .3s ease;
}
.job-pos:hover { box-shadow: var(--sp-shadow-lift); transform: translateY(-3px); }
.job-pos .jp-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.job-pos .jp-tag {
    display: inline-block;
    flex: none;
    padding: 3px 12px;
    border-radius: 14px;
    background: var(--sp-acc-bg);
    color: var(--sp-acc);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .5px;
}
.job-pos .jp-title { margin: 0; font-size: 18.5px; font-weight: 700; color: var(--sp-deep); line-height: 1.4; }
.job-pos .jp-group { margin-top: 10px; }
.job-pos .jp-label {
    position: relative;
    margin: 0 0 6px;
    padding-left: 12px;
    font-size: 14px;
    font-weight: 700;
    color: var(--sp-acc);
    line-height: 1.6;
}
.job-pos .jp-label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 7px;
    width: 4px;
    height: 14px;
    border-radius: 2px;
    background: var(--sp-grad-line);
}
.job-pos ul { margin: 0; padding-left: 16px; }
.job-pos li { font-size: 14px; line-height: 1.9; color: var(--sp-text); margin-bottom: 2px; }
.job-note {
    margin: 20px 0 0;
    font-size: 13.5px;
    color: var(--sp-muted);
}

@media (max-width: 767px) {
    .job-pos { padding: 20px 18px 16px; }
    .job-pos .jp-title { font-size: 16.5px; }
}

/* 投递方式卡片：加宽内边距，文字不再贴边 */
.job-contact .card-body { display: block; padding: 30px 34px 26px; }
.job-contact .card-title { display: block; margin-bottom: 20px; }
.job-contact .job-c-line { margin-top: 16px; }

@media (max-width: 767px) {
    .job-contact .card-body { padding: 22px 20px; }
    .job-contact .job-c-line { margin-top: 13px; }
}

/* 为什么加入苏福卡片：整体放大 + 内边距放宽，文字不再贴边 */
.job-perk .perk-img { height: 182px; }
.job-perk .card-body { display: block; padding: 28px 30px 30px; }
.job-perk .card-title { display: block; margin-bottom: 12px; }
.job-perk .perk-text { margin-top: 0; line-height: 1.8; text-align: left; }

@media (max-width: 767px) {
    .job-perk .perk-img { height: 158px; }
    .job-perk .card-body { padding: 22px 22px 24px; }
}

/* 为什么加入苏福：四卡等高（Bootstrap 3 浮动栅格改为 flex 等高） */
.job-perks .row { display: flex; flex-wrap: wrap; }
.job-perks .row > [class*="col-"] { display: flex; }
.job-perks .row > [class*="col-"] > .job-perk { width: 100%; }
