/* =========================================================
   安全评估行业 · 商务风主题  (custom.css)
   配色：深海军蓝(权威/信任) + 安全橙(工业安全信号) + 钢灰
   仅覆盖样式，不改动任何交互逻辑
   ========================================================= */

:root {
    --c-navy:        #0a2540;   /* 主品牌色：深海军蓝 */
    --c-navy-2:      #14365e;
    --c-navy-3:      #1e4378;
    --c-steel:       #475569;
    --c-slate:       #334155;
    --c-accent:      #f97316;   /* 安全橙 */
    --c-accent-2:    #ea580c;
    --c-accent-soft: #fff3e6;
    --c-gold:        #d4a017;
    --c-bg:          #f5f7fa;
    --c-bg-alt:      #eef2f7;
    --c-border:      #e2e8f0;
    --c-text:        #1e293b;
    --c-muted:       #64748b;
    --c-white:       #ffffff;
    --shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, .07), 0 1px 2px rgba(15, 23, 42, .04);
    --shadow-md: 0 6px 18px rgba(15, 23, 42, .08);
    --shadow-lg: 0 14px 38px rgba(15, 23, 42, .14);
    --radius:     4px;
    --radius-lg:  8px;
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
                 "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
}

/* ---------- 基础重置 ---------- */
html { font-size: 14px; }
body {
    font-family: var(--font-sans);
    color: var(--c-text);
    background: var(--c-white);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
a { color: var(--c-navy-3); transition: color .2s ease; }
a:hover { color: var(--c-accent-2); text-decoration: none; }
h1, h2, h3, h4, h5, h6 { color: var(--c-navy); font-weight: 600; letter-spacing: .3px; }
.text-secondary { color: var(--c-muted) !important; }
.text-secondary a { color: var(--c-muted); }
.text-secondary a:hover { color: var(--c-accent-2); }

/* 通用背景工具 */
.bg-white { background-color: var(--c-white) !important; }
.bg-light { background-color: var(--c-bg) !important; }
.bg-info  { background-color: var(--c-navy) !important; }
.bg-navy  { background-color: var(--c-navy) !important; }
.bg-navy-grad {
    background: linear-gradient(135deg, #0a2540 0%, #14365e 55%, #1e4378 100%) !important;
}

/* =========================================================
   顶部信息栏 + 主导航
   ========================================================= */
.site-header {
    background: var(--c-white);
    z-index: 1030;
}
.topbar {
    background: var(--c-navy);
    color: #cbd5e1;
    font-size: 12px;
    line-height: 36px;
    letter-spacing: .3px;
    border-bottom: 2px solid var(--c-accent);
}
.topbar a { color: #cbd5e1; }
.topbar a:hover { color: #fff; }
.topbar .divider { color: #475569; margin: 0 10px; }
.topbar .topbar-left i,
.topbar .topbar-right i {
    color: var(--c-accent);
    margin-right: 4px;
}

.main-nav {
    padding: .85rem 0;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: saturate(180%) blur(8px);
    border-bottom: 1px solid transparent;
    box-shadow: 0 4px 20px -6px rgba(10, 37, 64, 0.08);
}
.main-nav .navbar-light .navbar-brand {
    font-size: 20px;
    font-weight: 700;
    color: var(--c-navy);
    display: flex;
    align-items: center;
    gap: 14px;
    letter-spacing: 1px;
}
.main-nav .navbar-brand img { max-height: 48px; width: auto; }
.main-nav .navbar-nav .nav-link {
    color: var(--c-slate);
    font-size: 15px;
    font-weight: 500;
    padding: .7rem 1.3rem !important;
    position: relative;
    letter-spacing: 1px;
    transition: all .3s cubic-bezier(.4,0,.2,1);
}
.main-nav .navbar-nav .nav-link::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--c-accent), var(--c-gold));
    border-radius: 2px;
    transition: width .3s cubic-bezier(.4,0,.2,1);
}
.main-nav .navbar-nav .nav-link:hover {
    color: var(--c-navy);
    transform: translateY(-1px);
}
.main-nav .navbar-nav .nav-link:hover::after {
    width: calc(100% - 2.6rem);
}
.main-nav .navbar-nav .nav-item.active .nav-link {
    color: var(--c-navy);
    font-weight: 600;
}
.main-nav .navbar-nav .nav-item.active .nav-link::after {
    width: calc(100% - 2.6rem);
    background: linear-gradient(90deg, var(--c-accent), var(--c-gold));
}
.main-nav .navbar-toggler {
    border-color: var(--c-border);
    padding: .4rem .6rem;
    color: var(--c-navy);
}
.main-nav .navbar-toggler:focus { outline: none; box-shadow: 0 0 0 3px var(--c-accent-soft); }

/* 导航占位 */
.nav-spacer { height: 82px; }
@media (min-width: 768px) { .nav-spacer { height: 122px; } }

/* =========================================================
   按钮
   ========================================================= */
.btn { border-radius: var(--radius); font-weight: 500; letter-spacing: .3px; transition: all .2s ease; }
.btn-info {
    background-color: var(--c-navy);
    border-color: var(--c-navy);
    color: #fff;
}
.btn-info:hover,
.btn-info:focus {
    background-color: var(--c-navy-2);
    border-color: var(--c-navy-2);
    color: #fff;
}
.btn-danger {
    background-color: var(--c-accent);
    border-color: var(--c-accent);
    color: #fff;
}
.btn-danger:hover,
.btn-danger:focus {
    background-color: var(--c-accent-2);
    border-color: var(--c-accent-2);
}
.btn-warning {
    background-color: var(--c-gold);
    border-color: var(--c-gold);
    color: #fff;
}
.btn-light {
    background-color: var(--c-bg);
    border-color: var(--c-border);
    color: var(--c-slate);
}
.btn-light:hover {
    background-color: var(--c-navy);
    border-color: var(--c-navy);
    color: #fff;
}
.btn-outline-brand {
    background-color: transparent;
    border: 1px solid var(--c-navy);
    color: var(--c-navy);
}
.btn-outline-brand:hover {
    background-color: var(--c-navy);
    color: #fff;
}
.btn-brand {
    background-color: var(--c-accent);
    border: 1px solid var(--c-accent);
    color: #fff;
}
.btn-brand:hover {
    background-color: var(--c-accent-2);
    border-color: var(--c-accent-2);
    color: #fff;
}

/* =========================================================
   区块标题  .section-head / .section-title / .section-sub
   ========================================================= */
.section-head {
    text-align: center;
    margin-bottom: 2.4rem;
    position: relative;
}
.section-head .section-eyebrow {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--c-accent-2);
    font-weight: 600;
    margin-bottom: .6rem;
}
.section-title {
    font-size: 1.857rem;
    font-weight: 700;
    color: var(--c-navy);
    margin: 0 0 .5rem;
    letter-spacing: 1px;
    position: relative;
    display: inline-block;
}
.section-title::after {
    content: "";
    display: block;
    width: 54px;
    height: 3px;
    margin: 14px auto 0;
    background: var(--c-accent);
    border-radius: 3px;
}
.section-sub {
    font-size: 1rem;
    color: var(--c-muted);
    margin: 0;
    letter-spacing: 1px;
}
.section-head.text-left .section-title::after { margin-left: 0; }

/* =========================================================
   幻灯片 / Hero
   ========================================================= */
.swiper-container {
    background: var(--c-navy);
    width: 100%;
}
.slideshow {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 5;
    object-fit: cover;
    display: block;
}
.swiper-slide { position: relative; }
.swiper-slide .container { position: relative; z-index: 2; }
.swiper-slide .position-absolute { z-index: 2; }
.swiper-slide h1 {
    color: #fff;
    font-weight: 700;
    letter-spacing: 2px;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .3);
}
.swiper-slide h4 {
    color: #e2e8f0;
    font-weight: 400;
    letter-spacing: 1px;
}
.swiper-pagination-bullet {
    background: #fff;
    opacity: .55;
}
.swiper-pagination-bullet-active {
    background: var(--c-accent);
    opacity: 1;
}
.swiper-button-prev,
.swiper-button-next {
    color: #fff;
    background: rgba(10, 37, 64, .35);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transition: background .2s ease;
}
.swiper-button-prev::after,
.swiper-button-next::after { font-size: 18px; font-weight: 700; }
.swiper-button-prev:hover,
.swiper-button-next:hover { background: var(--c-accent); }

@media (max-width: 991.98px) {
    .slideshow { aspect-ratio: 16 / 7; }
}
@media (max-width: 575.98px) {
    .slideshow { aspect-ratio: 3 / 4; }
}

/* =========================================================
   信任带  .trust-band
   ========================================================= */
.trust-band {
    background: var(--c-white);
    border-bottom: 1px solid var(--c-border);
    box-shadow: var(--shadow-sm);
    margin-top: -2px;
}
.trust-band .trust-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px 12px;
}
.trust-band .trust-ico {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--c-accent-soft);
    color: var(--c-accent-2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}
.trust-band .trust-txt h6 {
    margin: 0 0 2px;
    font-size: 15px;
    font-weight: 600;
    color: var(--c-navy);
}
.trust-band .trust-txt p {
    margin: 0;
    font-size: 12px;
    color: var(--c-muted);
}

/* =========================================================
   通用区块间距
   ========================================================= */
.section { padding: 64px 0; }
@media (max-width: 767.98px) { .section { padding: 44px 0; } }

/* =========================================================
   服务/产品卡片
   ========================================================= */
.card {
    border: 1px solid var(--c-border);
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: #fff;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    height: 100%;
}
.card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
    border-color: transparent;
}
.card-img-top { transition: transform .4s ease; }
.card:hover .card-img-top { transform: scale(1.06); }
.card-img-150, .card-img-200, .card-img-180, .card-img-120, .card-img-100 {
    overflow: hidden;
    background: var(--c-bg-alt);
}
.card-img-150 img, .card-img-200 img, .card-img-180 img,
.card-img-120 img, .card-img-100 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.card-body { padding: 1.1rem 1.2rem; }
.card-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--c-navy);
    margin-bottom: .5rem;
}
.card-title a { color: var(--c-navy); }
.card-title a:hover { color: var(--c-accent-2); }
.card-text {
    color: var(--c-muted);
    font-size: 13px;
    line-height: 1.7;
}
.card-footer {
    background: var(--c-bg);
    border-top: 1px solid var(--c-border);
    color: var(--c-muted);
    font-size: 12px;
}
.card-header { background: var(--c-navy); color: #fff; font-weight: 600; }

/* 图标占位卡片 (服务网格) */
.service-card .card-body { padding: 1.6rem 1.3rem 1.4rem; text-align: center; }
.service-card .service-ico {
    width: 64px;
    height: 64px;
    margin: 0 auto 1rem;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--c-navy) 0%, var(--c-navy-3) 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    transition: background .25s ease, transform .25s ease;
}
.service-card:hover .service-ico {
    background: linear-gradient(135deg, var(--c-accent) 0%, var(--c-accent-2) 100%);
    transform: rotate(-6deg);
}
.service-card .service-tag {
    display: inline-block;
    font-size: 11px;
    color: var(--c-accent-2);
    letter-spacing: 2px;
    margin-bottom: .35rem;
    font-weight: 600;
}

/* 查看更多 链接 */
.more-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--c-muted);
    font-size: 14px;
    border: 1px solid var(--c-border);
    padding: 8px 22px;
    border-radius: 30px;
    background: #fff;
    transition: all .2s ease;
}
.more-link:hover {
    color: #fff;
    background: var(--c-navy);
    border-color: var(--c-navy);
}
.more-link i { color: var(--c-accent); }
.more-link:hover i { color: #fff; }

/* =========================================================
   数据统计带  .stats-band
   ========================================================= */
.stats-band {
    position: relative;
    color: #fff;
    padding: 64px 0;
    background: linear-gradient(135deg, #0a2540 0%, #14365e 60%, #1e4378 100%);
    overflow: hidden;
}
.stats-band::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 12% 20%, rgba(249, 115, 22, .18) 0, transparent 38%),
        radial-gradient(circle at 88% 80%, rgba(30, 67, 120, .55) 0, transparent 45%);
    pointer-events: none;
}
.stats-band .container { position: relative; z-index: 1; }
.stat-item { text-align: center; padding: 10px 6px; }
.stat-num {
    font-size: 2.6rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    letter-spacing: 1px;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum";
}
.stat-num .count { display: inline-block; }
.stat-num small { font-size: 1.2rem; color: var(--c-accent); font-weight: 600; margin-left: 2px; }
.stat-label {
    margin-top: 10px;
    color: #cbd5e1;
    font-size: 14px;
    letter-spacing: 2px;
}
.stat-divider { width: 1px; background: rgba(255, 255, 255, .12); }

/* =========================================================
   关于我们
   ========================================================= */
.about-media {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    background: linear-gradient(135deg, #14365e 0%, #1e4378 100%);
}
.about-media img { width: 100%; height: 360px; object-fit: cover; display: block; }
.about-media .about-badge {
    position: absolute;
    left: 20px;
    bottom: 20px;
    background: rgba(10, 37, 64, .9);
    color: #fff;
    padding: 16px 22px;
    border-radius: var(--radius);
    border-left: 3px solid var(--c-accent);
}
.about-media .about-badge .b-num { font-size: 1.8rem; font-weight: 700; color: var(--c-accent); line-height: 1; }
.about-media .about-badge .b-txt { font-size: 12px; color: #cbd5e1; letter-spacing: 1px; margin-top: 4px; }
.about-text p {
    color: var(--c-slate);
    line-height: 2;
    text-indent: 2em;
    margin-bottom: 1.2rem;
}
.about-feat { list-style: none; padding: 0; margin: 0 0 1.5rem; }
.about-feat li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px dashed var(--c-border);
    color: var(--c-slate);
    font-size: 14px;
}
.about-feat li i {
    color: var(--c-accent);
    font-size: 16px;
    margin-top: 3px;
}
.about-feat li:last-child { border-bottom: none; }

/* =========================================================
   新闻列表
   ========================================================= */
.news-card {
    display: flex;
    gap: 18px;
    padding: 18px 0;
    border-bottom: 1px solid var(--c-border);
    transition: background .2s ease;
}
.news-card:last-child { border-bottom: none; }
.news-card:hover { background: var(--c-bg); margin: 0 -16px; padding: 18px 16px; border-radius: var(--radius); border-bottom-color: transparent; }
.news-date {
    flex: 0 0 76px;
    text-align: center;
    border-right: 1px solid var(--c-border);
    padding-right: 16px;
}
.news-date .d-day { font-size: 1.9rem; font-weight: 700; color: var(--c-navy); line-height: 1; }
.news-date .d-ym { font-size: 12px; color: var(--c-muted); margin-top: 4px; }
.news-body h5 { font-size: 16px; margin-bottom: 6px; }
.news-body h5 a { color: var(--c-navy); }
.news-body h5 a:hover { color: var(--c-accent-2); }
.news-body p { color: var(--c-muted); font-size: 13px; line-height: 1.7; margin: 0; }

/* =========================================================
   CTA 行动带
   ========================================================= */
.cta-band {
    position: relative;
    color: #fff;
    padding: 60px 0;
    background: linear-gradient(135deg, #0a2540 0%, #14365e 100%);
    overflow: hidden;
}
.cta-band .cta-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: .28;
}
.cta-band::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(10, 37, 64, .9) 0%, rgba(10, 37, 64, .55) 100%);
}
.cta-band .container { position: relative; z-index: 2; }
.cta-band h3 { color: #fff; font-size: 1.6rem; font-weight: 700; margin: 0 0 6px; letter-spacing: 1px; }
.cta-band p { color: #cbd5e1; margin: 0; font-size: 14px; letter-spacing: .5px; }
.cta-phone {
    font-size: 2rem;
    font-weight: 700;
    color: var(--c-accent);
    letter-spacing: 1px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
}
.cta-phone i { font-size: 1.6rem; }

/* =========================================================
   内页通栏 hero (top.html .jumbotron)
   ========================================================= */
.jumbotron {
    position: relative;
    border-radius: 0;
    background-color: var(--c-navy) !important;
    padding: 4rem 0;
    margin-bottom: 0;
    overflow: hidden;
}
.jumbotron::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(10, 37, 64, .92) 0%, rgba(20, 54, 94, .72) 50%, rgba(30, 67, 120, .55) 100%);
}
.jumbotron::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--c-accent) 0%, var(--c-gold) 50%, var(--c-accent) 100%);
}
.jumbotron .container { position: relative; z-index: 2; }
.jumbotron h1 {
    color: #fff;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: .4rem;
}
.jumbotron p {
    color: #cbd5e1;
    letter-spacing: 1px;
    margin: 0;
}
.jumbotron .crumb-tag {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 2px;
    color: var(--c-accent);
    border: 1px solid var(--c-accent);
    padding: 3px 12px;
    border-radius: 20px;
    margin-bottom: 12px;
}

/* =========================================================
   面包屑 / 当前位置
   ========================================================= */
.position { font-size: 12px; }
.position a:hover { color: var(--c-accent-2); }
.pages { padding-top: 24px; padding-bottom: 24px; }

/* 分类筛选 / 子分类导航 */
.sonsort .btn { border-radius: 30px; padding: 6px 18px; font-size: 13px; }
.sonsort .btn-info {
    background: var(--c-navy);
    border-color: var(--c-navy);
}
.sonsort .btn-info .badge { background: var(--c-accent); color: #fff; }
.sonsort .btn-light .badge { background: var(--c-bg-alt); color: var(--c-muted); }

/* 图文列表条目 */
.pages ul { list-style: none; padding: 0; }
.pages ul li {
    border-bottom: 1px dashed var(--c-border) !important;
    padding: 12px 4px;
    transition: padding .2s ease, color .2s ease;
}
.pages ul li:hover { padding-left: 12px; }
.pages ul li:hover a { color: var(--c-accent-2); }
.pages ul li > a { display: block; color: var(--c-slate); }
.pages ul li .fa-gg { color: var(--c-accent); margin-right: 8px; font-size: 12px; }
.pages ul li .float-right { color: var(--c-muted); font-size: 12px; }

/* 招聘卡片 */
.job-card .card-header { background: var(--c-navy); color: #fff; font-weight: 600; letter-spacing: 1px; }
.job-card .btn-info { background: var(--c-accent); border-color: var(--c-accent); }
.job-card .btn-info:hover { background: var(--c-accent-2); border-color: var(--c-accent-2); }

/* =========================================================
   详情页
   ========================================================= */
.pages h2 { color: var(--c-navy); }
.border-bottom-dashed { border-bottom: 1px dashed var(--c-border) !important; }
.border-info { border-color: var(--c-accent) !important; }
h5 .fa-sliders, h5 .fa { color: var(--c-accent); }
.content {
    color: var(--c-slate);
    line-height: 2;
    font-size: 15px;
}
.content h2, .content h3, .content h4 { color: var(--c-navy); margin: 1.4em 0 .6em; }
.content p { margin-bottom: 1em; }
.content img { border-radius: var(--radius); margin: 14px 0; }
.content blockquote {
    border-left: 4px solid var(--c-accent);
    background: var(--c-bg);
    padding: 14px 18px;
    color: var(--c-slate);
    margin: 16px 0;
}

/* 详情页侧栏规格 */
.spec-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px dashed var(--c-border);
    color: var(--c-slate);
    font-size: 14px;
}
.spec-row span:first-child { color: var(--c-muted); }

/* =========================================================
   分页
   ========================================================= */
.pagination .page-link,
.page-num, .page-link {
    color: var(--c-navy);
    background-color: #fff;
    border: 1px solid var(--c-border);
    border-radius: 0;
    padding: .5rem .9rem;
    transition: all .2s ease;
}
.pagination .page-link:hover,
a.page-num:hover {
    background: var(--c-navy);
    color: #fff;
    border-color: var(--c-navy);
}
.page-num-current {
    background: var(--c-accent) !important;
    border-color: var(--c-accent) !important;
    color: #fff !important;
}
.page-num-current:hover { background: var(--c-accent-2) !important; border-color: var(--c-accent-2) !important; }

/* =========================================================
   徽章
   ========================================================= */
.badge-danger { background-color: var(--c-accent); }
.badge-warning { background-color: var(--c-gold); }
.badge-info { background-color: var(--c-navy-3); }
.badge-secondary { background-color: var(--c-steel); }
.badge-light { background-color: var(--c-bg); color: var(--c-muted) !important; }

/* =========================================================
   表单
   ========================================================= */
.form-control {
    border-radius: var(--radius);
    border-color: var(--c-border);
    padding: .55rem .85rem;
    color: var(--c-text);
    transition: border-color .2s ease, box-shadow .2s ease;
}
.form-control:focus {
    border-color: var(--c-navy-3);
    box-shadow: 0 0 0 3px rgba(30, 67, 120, .15);
}
.form-inline .btn-info { background: var(--c-navy); border-color: var(--c-navy); }
.form-inline .btn-info:hover { background: var(--c-navy-2); border-color: var(--c-navy-2); }

/* 留言/评论媒体块 */
.media { padding: 14px 0; }
.media img { border-radius: 50%; }

/* =========================================================
   页脚
   ========================================================= */
.footer {
    background: #07182b;
    color: #94a3b8;
    border-top: 3px solid var(--c-accent) !important;
    padding-top: 56px !important;
}
.footer h5 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 1.2rem;
    position: relative;
    padding-bottom: 12px;
}
.footer h5::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 32px;
    height: 2px;
    background: var(--c-accent);
}
.footer ul { list-style: none; padding: 0; margin: 0; }
.footer ul li { line-height: 2; font-size: 13px; color: #94a3b8; }
.footer ul li a { color: #94a3b8; }
.footer ul li a:hover { color: var(--c-accent); }
.footer ul li i { color: var(--c-accent); margin-right: 8px; width: 14px; }
.footer .code img { border-radius: 6px; }
.footer .copyright {
    border-top: 1px solid rgba(255, 255, 255, .08) !important;
    color: #64748b;
    font-size: 12px;
    padding: 14px 0;
    margin-top: 36px;
}

/* 手机底部导航 */
.container-fluid.bg-info {
    background: var(--c-navy) !important;
}
.container-fluid.bg-info a:hover { color: var(--c-accent) !important; }

/* =========================================================
   在线客服
   ========================================================= */
.online dl {
    background: var(--c-navy) !important;
    border-radius: 4px 0 0 4px;
    box-shadow: var(--shadow-md);
    transition: background .2s ease;
}
.online dl:hover { background: var(--c-navy-2) !important; }
.online dl.scroll-top { background: var(--c-accent) !important; }
.online dl.scroll-top:hover { background: var(--c-accent-2) !important; }
.online dl dt {
    border-top: 3px solid var(--c-accent);
    border-radius: var(--radius) 0 0 var(--radius);
    box-shadow: var(--shadow-lg);
}
.online dl dt h3 { color: var(--c-navy); }
.online dl dt h3 i { color: var(--c-accent-2); }
.online dl dt button { background: var(--c-accent) !important; }
.online dl dt button:hover { background: var(--c-accent-2) !important; }

/* =========================================================
   图件 / 图标网格 (case 列表)
   ========================================================= */
.figure { margin: 16px 0; }
.figure .card-img-200 {
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}
.figure img { transition: transform .4s ease; }
.figure:hover img { transform: scale(1.06); }
.figure-caption a { color: var(--c-navy); font-size: 14px; }
.figure-caption a:hover { color: var(--c-accent-2); }

/* =========================================================
   工具类
   ========================================================= */
.text-brand { color: var(--c-accent-2) !important; }
.text-navy { color: var(--c-navy) !important; }
.lh-2 { line-height: 2; }
.ls-2 { letter-spacing: 2px; }
.shadow-sm-top { box-shadow: 0 -.125rem .25rem rgba(0, 0, 0, .075) !important; }

/* =========================================================
   响应式微调
   ========================================================= */
@media (max-width: 991.98px) {
    .main-nav .navbar-nav { padding: 10px 0; }
    .main-nav .navbar-nav .nav-item.active .nav-link::after { display: none; }
    .main-nav .navbar-nav .nav-link { border-bottom: 1px solid var(--c-bg-alt); }
    .main-nav .navbar-nav .nav-item:last-child .nav-link { border-bottom: none; }
    .stat-divider { display: none; }
    .about-media img { height: 280px; }
}
@media (max-width: 767.98px) {
    .section-title { font-size: 1.5rem; }
    .stat-num { font-size: 2rem; }
    .cta-band h3 { font-size: 1.3rem; }
    .cta-phone { font-size: 1.5rem; }
    .jumbotron { padding: 2.4rem 0; }
}
@media (max-width: 575.98px) {
    .topbar { font-size: 11px; line-height: 32px; }
    .trust-band .trust-item { padding: 14px 6px; }
    .news-card { gap: 12px; }
    .news-date { flex: 0 0 60px; }
    .news-date .d-day { font-size: 1.4rem; }
}
