/* 卓联工程主题 · 补充样式
   说明：原型样式 theme.css 保持原样不动（便于日后对照还原），
        这里只补齐「CMS 模板新增结构」所需的少量类，以及富文本正文的基础排版。 */

/* ---------- 无障碍：跳转到主要内容 ---------- */
.skip{position:absolute;left:-9999px;top:0;z-index:999;padding:10px 18px;background:var(--primary);color:#fff;border-radius:0 0 10px 0}
.skip:focus{left:0}

/* ---------- 富文本正文排版（后台编辑器输出） ---------- */
.detail-body{font-size:15.5px;line-height:2;color:var(--ink);word-break:break-word}
.detail-body>*+*{margin-top:16px}
.detail-body p{margin:0 0 16px}
.detail-body h2,.detail-body h3,.detail-body h4{color:var(--navy);line-height:1.5;margin:26px 0 12px}
.detail-body h2{font-size:20px}
.detail-body h3{font-size:18px}
.detail-body h4{font-size:16px}
.detail-body img{max-width:100%;height:auto;border-radius:10px}
.detail-body ul,.detail-body ol{padding-left:22px}
.detail-body li{margin:6px 0}
.detail-body blockquote{margin:18px 0;padding:12px 18px;border-left:3px solid var(--gold);background:var(--primary-soft);border-radius:0 8px 8px 0;color:var(--muted)}
.detail-body table{width:100%;border-collapse:collapse;font-size:14.5px}
.detail-body th,.detail-body td{border:1px solid var(--line);padding:9px 12px;text-align:left}
.detail-body th{background:var(--bg);color:var(--navy)}
.detail-body a{color:var(--primary);text-decoration:underline}
.detail-body pre{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;overflow:auto;font-size:13.5px}

/* ---------- 详情页：封面 / 摘要 / 结构化信息 / 图集 ---------- */
.detail-cover{margin:18px 0;border-radius:12px;overflow:hidden}
.detail-cover img{width:100%;display:block}
.detail-sum{margin:14px 0 4px;padding:14px 18px;border-left:3px solid var(--gold);background:var(--primary-soft);border-radius:0 10px 10px 0;color:var(--ink);font-size:15px;line-height:1.9}
.detail-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:18px 0;padding:0;list-style:none}
.detail-facts li{display:flex;flex-direction:column;gap:4px;padding:12px 16px;background:var(--bg);border:1px solid var(--line);border-radius:10px}
.detail-facts b{font-size:12.5px;color:var(--muted);font-weight:600;letter-spacing:.5px}
.detail-facts span{color:var(--navy);font-weight:600;font-size:14.5px}
.detail-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:22px}
.detail-gallery img{width:100%;height:150px;object-fit:cover;border-radius:10px;border:1px solid var(--line);transition:.25s}
.detail-gallery a:hover img{transform:translateY(-3px);box-shadow:0 12px 26px rgba(8,31,66,.14)}

/* ---------- 侧栏子页导航 ---------- */
.side-list{list-style:none;padding:0;margin:0}
.side-list li{margin-bottom:10px;font-size:14.5px}
.side-list a{color:var(--ink)}
.side-list a:hover{color:var(--primary)}

/* ---------- 卡片无封面时的占位 ---------- */
.cover-ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy2),var(--primary-2));color:rgba(255,255,255,.9);font-weight:600;letter-spacing:1px;font-size:14px;min-height:180px}

/* ---------- 服务卡英文小标 ---------- */
.svc-en{font-size:11.5px;letter-spacing:1.6px;color:var(--gold);font-weight:700;margin:-6px 0 10px}

/* ---------- 页脚：二维码 + 网上亮照 ---------- */
.qr-item{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.qr-item img{width:96px;height:96px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}
.qr-item span{font-size:12px;color:#9fb6d6}
.fd-lic{display:block;margin:12px 0;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:transparent;cursor:pointer;overflow:hidden}
.fd-lic img{width:114px;display:block;opacity:.9}
.fd-lic span{display:block;font-size:11.5px;color:#9fb6d6;padding:5px 0;text-align:center}
.fd-lic:hover img{opacity:1}

/* ---------- 网上亮照弹层 ---------- */
.lightbox{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;background:rgba(8,31,66,.82);padding:24px;cursor:zoom-out}
.lightbox.on{display:flex}
.lightbox img{max-width:min(92vw,900px);max-height:88vh;border-radius:12px;background:#fff;padding:10px}

/* ---------- 表单结果提示 ---------- */
.form-tip.ok{color:#1f8a4c}
.form-tip.err{color:#d83a3a}

/* ==========================================================================
   首页版式重构（zl-*）
   目的：与「汇海」模板首页在视觉结构上明确区分 —— 汇海为首屏叠压式白色数据条 +
        圆形图标服务卡 + 左图右文 + 虚线圆点流程 + 米色证书框；
        本主题改为：首屏数据剥离独立成段（左述右量）、服务 1 大 2 小 Bento、
        关于图文反转 + 图片底部数据条、流程编号卡片 + 金色箭头、案例图片覆盖式
        文字、荣誉深色徽章墙。
   说明：原型 theme.css 保持原样，此处仅追加/覆盖，不影响其它内页。
   ========================================================================== */

/* 金色变量兜底：后台「主题设置」未保存时也能正常显示（后台编译的 :root 在本文件之后，优先级更高） */
:root{--gold:#c9a24a;--gold-2:#b9882f}

/* 金色主按钮（首屏 / CTA 使用，原型缺失该类） */
.btn-gold{background:linear-gradient(100deg,var(--gold),var(--gold-2));color:#fff;box-shadow:0 10px 24px rgba(201,162,74,.34)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(201,162,74,.44)}

/* 统一小节标签（金色，用于各区块左上） */
.zl-sec-tag{display:inline-flex;align-items:center;gap:9px;font-size:12px;letter-spacing:3px;font-weight:700;color:var(--gold);text-transform:uppercase;margin-bottom:14px}
.zl-sec-tag::before{content:"";width:22px;height:2px;background:var(--gold);border-radius:2px}

/* ---------- 首屏：底部金色收边 + 渐变标题 + 动态氛围（文案内容与原型一致，仅增强表现） ---------- */
.hero{min-height:600px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;z-index:3;background:linear-gradient(90deg,var(--gold) 0%,var(--accent) 38%,rgba(12,44,84,0) 100%)}

/* ① 背景缓慢推近（Ken Burns）：只改 transform 缩放，不干扰文案与遮罩 */
.hero-bg{will-change:transform;animation:zlHeroZoom 15s ease-in-out infinite alternate}
@keyframes zlHeroZoom{from{transform:scale(1.02)}to{transform:scale(1.13)}}

/* ② 漂浮光斑层：置于背景图之上、文案之下，缓慢游走增添呼吸感 */
.hero-deco{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-deco::before,
.hero-deco::after{content:"";position:absolute;border-radius:50%;will-change:transform}
.hero-deco::before{width:min(46vw,560px);aspect-ratio:1;right:-6%;top:-16%;background:radial-gradient(closest-side,rgba(201,162,74,.30),rgba(201,162,74,0) 72%);animation:zlHeroDrift 19s ease-in-out infinite}
.hero-deco::after{width:min(40vw,470px);aspect-ratio:1;left:-10%;bottom:-22%;background:radial-gradient(closest-side,rgba(255,122,41,.22),rgba(255,122,41,0) 72%);animation:zlHeroDrift 25s ease-in-out infinite reverse}
@keyframes zlHeroDrift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-3%,4%,0) scale(1.12)}}

/* ③ 文案依次入场：纯 CSS 播放，未启用 JS 也不会丢内容 */
.hero-in > *{animation:zlHeroUp .95s cubic-bezier(.22,.7,0,1) backwards}
.hero-in > .hero-chip{animation-delay:.04s}
.hero-in > h1{animation-delay:.16s}
.hero-in > .hero-sub{animation-delay:.3s}
.hero-in > .hero-actions{animation-delay:.44s}
@keyframes zlHeroUp{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}

/* ④ 标题渐变过渡色：主标题冷银蓝、强调行流金，光带极缓扫过（首尾同色，循环无跳变） */
.hero h1 .h1-a,
.hero h1 .h1-b{display:inline-block;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 8px 22px rgba(4,14,32,.45))}
.hero h1 .h1-a{background-image:linear-gradient(100deg,#ffffff 0%,#eaf1fc 30%,#b9cbe4 58%,#ffffff 100%);animation:zlTitleFlow 12s linear infinite}
.hero h1 .h1-b{background-image:linear-gradient(100deg,var(--gold) 0%,#f7e3ab 26%,#fff6da 44%,var(--gold-2) 66%,var(--gold) 100%);animation:zlTitleFlow 9s linear infinite}
@keyframes zlTitleFlow{from{background-position:0% 50%}to{background-position:220% 50%}}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .hero h1 .h1-a{color:#fff;-webkit-text-fill-color:#fff}
  .hero h1 .h1-b{color:var(--gold);-webkit-text-fill-color:var(--gold)}
}

/* 尊重系统「减少动态效果」设置 */
@media(prefers-reduced-motion:reduce){
  .hero-bg,.hero-deco::before,.hero-deco::after,
  .hero-in > *,
  .hero h1 .h1-a,.hero h1 .h1-b{animation:none!important}
  .hero-in > *{opacity:1}
}

/* ---------- 经营数据：标题一行 + 下方四个独立卡片横排 ---------- */
.zl-stats{position:relative;background:#fff;padding:64px 0 70px;border-bottom:1px solid var(--line);overflow:hidden}
.zl-stats::before{content:"";position:absolute;right:-140px;top:-150px;width:460px;height:460px;border-radius:50%;background:radial-gradient(closest-side,rgba(15,76,158,.07),transparent)}
.zl-stats-head{position:relative;text-align:center;max-width:780px;margin:0 auto 44px}
.zl-stats-head .zl-sec-tag{margin-bottom:18px}
.zl-stats-head h2{font-size:30px;line-height:1.4;color:var(--navy);font-weight:800;letter-spacing:1px}
.zl-stats-head h2 small{display:block;font-size:15px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:10px;line-height:1.85}
.zl-stats-head .zl-stats-note{color:var(--muted);font-size:14.5px;line-height:1.95;margin-top:18px;text-align:center;text-align-last:center;text-justify:inter-character}
.zl-metrics{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.zl-metric{position:relative;background:#fff;padding:32px 22px 28px;border:1px solid var(--line);border-radius:16px;text-align:center;transition:border-color .25s,box-shadow .25s,transform .25s;overflow:hidden}
.zl-metric::before{content:"";position:absolute;left:50%;top:0;width:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--gold),var(--gold-2));transition:width .3s;transform:translateX(-50%)}
.zl-metric:hover{border-color:rgba(201,162,74,.45);box-shadow:0 18px 38px rgba(8,31,66,.10);transform:translateY(-5px)}
.zl-metric:hover::before{width:64px}
.zl-metric .ix{display:block;font-size:12px;letter-spacing:3px;color:var(--gold);font-weight:700;margin-bottom:14px}
.zl-metric .num{font-size:46px;line-height:1.1;font-weight:800;color:var(--navy);letter-spacing:1px;font-variant-numeric:tabular-nums;display:block;margin-bottom:8px}
.zl-metric .num i{font-style:normal;font-size:22px;color:var(--gold);margin-left:2px;vertical-align:1px}
.zl-metric .lbl{color:var(--muted);font-size:13.5px;letter-spacing:.5px}
@media(max-width:992px){
  .zl-stats{padding:50px 0 56px}
  .zl-stats-head{margin-bottom:36px}
  .zl-stats-head h2{font-size:25px}
}
@media(max-width:760px){
  .zl-metrics{grid-template-columns:repeat(2,1fr);gap:14px}
  .zl-metric{padding:26px 18px 24px}
  .zl-metric .num{font-size:36px}
}
@media(max-width:420px){.zl-metrics{grid-template-columns:1fr}}

/* ---------- 核心服务：Bento 版式（1 大 2 小），区别于汇海的圆形图标三卡 ---------- */
.zl-svc{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.zl-svc-card{position:relative;display:flex;flex-direction:column;border-radius:18px;border:1px solid var(--line);background:#fff;overflow:hidden;transition:box-shadow .3s,transform .3s,border-color .3s}
.zl-svc-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.zl-svc-card--lead{grid-column:span 2;padding:38px 36px 34px;justify-content:center;border-color:transparent;background:linear-gradient(158deg,var(--navy) 0%,var(--navy2) 46%,var(--primary) 100%);color:#fff}
.zl-svc-card--lead::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(closest-side,rgba(201,162,74,.22),transparent)}
.zl-svc-no{position:absolute;right:20px;top:2px;font-size:104px;font-weight:800;line-height:1;letter-spacing:-6px;color:rgba(255,255,255,.09);pointer-events:none}
.zl-svc-ic{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 10px 22px rgba(18,66,122,.26)}
.zl-svc-ic svg{width:27px;height:27px}
.zl-svc-card--lead .zl-svc-ic{position:relative;z-index:1;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);box-shadow:none;margin-bottom:22px}
.zl-svc-card--lead h3{position:relative;font-size:25px;font-weight:800;letter-spacing:.5px;margin-bottom:8px}
.zl-svc-card--lead .zl-svc-en{position:relative;font-size:11.5px;letter-spacing:3px;font-weight:700;color:var(--gold);margin-bottom:12px}
.zl-svc-card--lead p{position:relative;color:#cfdcec;font-size:14.5px;line-height:1.95;margin-bottom:22px;max-width:620px}
.zl-svc-card--sm{flex-direction:column;align-items:flex-start;gap:16px;padding:28px 26px}
.zl-svc-card--sm h3{font-size:19px;color:var(--navy);margin-bottom:6px}
.zl-svc-card--sm .zl-svc-en{font-size:11px;letter-spacing:2.2px;font-weight:700;color:var(--gold);margin-bottom:8px}
.zl-svc-card--sm p{color:var(--muted);font-size:13.5px;line-height:1.85}
.zl-svc-more{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:13.5px;font-weight:600;color:var(--gold)}
.zl-svc-more svg{width:14px;height:14px;transition:transform .25s}
.zl-svc-card:hover .zl-svc-more svg{transform:translateX(5px)}
@media(max-width:992px){
  .zl-svc{grid-template-columns:1fr}
  .zl-svc-card--lead{grid-column:auto;padding:34px 30px}
  .zl-svc-no{font-size:78px}
}
@media(max-width:520px){.zl-svc-card--sm{padding:26px 22px}}

/* ---------- 首页「招投标 · 公司动态」：空栏目占位与列表补白 ---------- */
.zl-news-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:58px 24px;border:1px dashed var(--line);border-radius:16px;background:#fbfcfe}
.zl-news-empty svg{width:36px;height:36px;color:var(--primary);opacity:.7}
.zl-news-empty b{font-size:15.5px;font-weight:700;color:var(--navy)}
.zl-news-empty span{font-size:13.5px;color:var(--muted);line-height:1.8}
.zl-news-empty .go{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:13.5px;font-weight:600;color:var(--primary)}
.zl-news-empty .go svg{width:13px;height:13px;color:inherit;opacity:1}
.zl-news-tip{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);font-size:13px;color:var(--muted)}

/* ---------- 关于我们：图文反转（文左图右）+ 图片底部数据条 ---------- */
.zl-about{display:grid;grid-template-columns:1.04fr .96fr;gap:56px;align-items:center}
.zl-about-media{position:relative;order:2;border-radius:18px;overflow:hidden;box-shadow:0 26px 56px rgba(8,31,66,.20)}
.zl-about-media img{width:100%;aspect-ratio:4/3.15;object-fit:cover}
.zl-about-media::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(200deg,rgba(6,20,44,0) 42%,rgba(6,20,44,.80))}
.zl-about-media::after{content:"";position:absolute;left:0;top:0;width:74px;height:74px;z-index:2;border-left:3px solid var(--gold);border-top:3px solid var(--gold);border-radius:18px 0 0 0}
.zl-about-exp{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;gap:16px;padding:24px 26px;color:#fff}
.zl-about-exp b{font-size:40px;font-weight:800;line-height:1;letter-spacing:1px;color:var(--gold)}
.zl-about-exp b sup{font-size:17px;vertical-align:super}
.zl-about-exp span{font-size:13.5px;color:#dbe6f5;letter-spacing:1px;line-height:1.5;border-left:1px solid rgba(255,255,255,.28);padding-left:16px}
.zl-about .dl-slogan{display:inline-block;font-size:14px;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:7px 18px;margin-bottom:16px}
.zl-about h2{font-size:29px;line-height:1.5;color:var(--navy);font-weight:800;margin-bottom:16px}
.zl-about h2 b{color:var(--gold)}
.zl-about p{color:var(--muted);font-size:14.5px;line-height:2;text-align:justify;margin-bottom:12px}
.zl-about-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0 30px}
.zl-about-feats li{position:relative;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;transition:.25s}
.zl-about-feats li::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--gold);transform:scaleY(0);transform-origin:center;transition:transform .25s}
.zl-about-feats li:hover{border-color:rgba(201,162,74,.45);box-shadow:0 10px 22px rgba(8,31,66,.07)}
.zl-about-feats li:hover::before{transform:scaleY(1)}
.zl-about-feats svg{width:18px;height:18px;color:var(--gold);flex:none}
.zl-about-feats span{font-size:14px;font-weight:600;color:var(--navy);line-height:1.55}
@media(max-width:992px){
  .zl-about{grid-template-columns:1fr;gap:38px}
  .zl-about-media{order:1}
  .zl-about h2{font-size:24px}
}
@media(max-width:640px){.zl-about-feats{grid-template-columns:1fr}}

/* ---------- 招投标 · 公司动态：左侧大图 + 右侧日期列表（去掉标题下的冗余元信息，左右等高） ---------- */
.zl-news-body{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;margin-top:24px;align-items:stretch}
.zl-news-body .feature-cover{order:-1;min-height:380px;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow)}
.zl-news-body .feature-cover .txt{padding:26px 30px}
.zl-news-body .feature-cover .txt .d{display:inline-block;font-size:12px;color:#fff;background:rgba(201,162,74,.92);border-radius:6px;padding:4px 12px;letter-spacing:1px;margin-bottom:14px}
.zl-news-body .feature-cover .txt h3{font-size:23px;line-height:1.5;margin:0 0 10px}
.zl-news-body .feature-cover .txt h3 a:hover{color:var(--gold)}
.zl-news-body .feature-cover .txt p{font-size:13.5px;color:#cfdcec}

.zl-news-list{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.zl-news-head{display:flex;align-items:center;gap:10px;padding:17px 24px;background:linear-gradient(100deg,var(--navy),var(--navy2));color:#fff;font-size:15.5px;font-weight:700;letter-spacing:.5px}
.zl-news-head svg{width:16px;height:16px;color:var(--gold)}
.zl-news-head .go{margin-left:auto;font-size:12.5px;font-weight:500;color:#c3d3e8;display:inline-flex;align-items:center;gap:5px}
.zl-news-head .go:hover{color:#fff}
.zl-news-item{display:grid;grid-template-columns:62px 1fr;gap:18px;padding:21px 24px;border-bottom:1px dashed var(--line);align-items:center;transition:background .2s}
.zl-news-item:last-child{border-bottom:0}
.zl-news-item:hover{background:var(--primary-soft)}
.zl-news-date{background:var(--bg);border:1px solid var(--line);border-radius:10px;text-align:center;padding:7px 0 8px}
.zl-news-date b{display:block;font-size:21px;font-weight:800;line-height:1.15;color:var(--primary);font-variant-numeric:tabular-nums}
.zl-news-date span{font-size:10.5px;color:var(--muted);letter-spacing:.5px}
.zl-news-item h4{font-size:15px;font-weight:600;line-height:1.65;color:var(--ink);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.zl-news-item:hover h4{color:var(--primary)}
@media(max-width:992px){
  .zl-news-body{grid-template-columns:1fr}
  .zl-news-body .feature-cover{min-height:300px}
}

/* ---------- 委托合作流程：编号卡片 + 金色箭头 ---------- */
.zl-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.zl-step{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 24px 28px;overflow:hidden;transition:.28s}
.zl-step::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--gold),rgba(201,162,74,0))}
.zl-step:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.zl-step .no{font-size:42px;font-weight:800;line-height:1;letter-spacing:1px;color:var(--primary);opacity:.18;margin-bottom:12px}
.zl-step b{display:block;font-size:16.5px;color:var(--navy);margin-bottom:8px;letter-spacing:.5px}
.zl-step span{display:block;font-size:13px;color:var(--muted);line-height:1.85}
.zl-step:not(:last-child)::after{content:"";position:absolute;right:-9px;top:56px;width:10px;height:10px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg);z-index:2}
@media(max-width:900px){
  .zl-flow{grid-template-columns:repeat(2,1fr)}
  .zl-step:not(:last-child)::after{display:none}
}
@media(max-width:520px){.zl-flow{grid-template-columns:1fr}}

/* ---------- 客户案例：图片覆盖式文字（大卡横跨） ---------- */
.zl-cases{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.zl-case{position:relative;display:flex;align-items:flex-end;min-height:266px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);color:#fff}
.zl-case--wide{grid-column:1/-1;min-height:352px}
.zl-case img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.zl-case:hover img{transform:scale(1.05)}
.zl-case .shade{position:absolute;inset:0;background:linear-gradient(200deg,rgba(6,20,44,.06) 28%,rgba(6,20,44,.90))}
.zl-case .txt{position:relative;z-index:2;width:100%;padding:26px 30px}
.zl-case .badge{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:1.6px;font-weight:700;color:var(--gold);margin-bottom:10px}
.zl-case .badge em{font-style:normal;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);border-radius:5px;padding:2px 8px;letter-spacing:0}
.zl-case h3{font-size:19px;line-height:1.55;font-weight:700}
.zl-case--wide h3{font-size:24px;max-width:760px}
.zl-case p{font-size:13px;color:#cfdcec;margin-top:8px;max-width:740px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.zl-case .arw{position:absolute;right:26px;bottom:28px;z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.45);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateX(-6px);transition:.3s}
.zl-case:hover .arw{opacity:1;transform:none}
.zl-case .arw svg{width:16px;height:16px}
@media(max-width:860px){
  .zl-cases{grid-template-columns:1fr}
  .zl-case{min-height:230px}
  .zl-case--wide{min-height:280px}
  .zl-case--wide h3{font-size:19px}
  .zl-case .arw{display:none}
}

/* ---------- 荣誉资质：深色徽章墙（替代汇海的米色证书框） ---------- */
.zl-honor{position:relative;padding:72px 0 76px;color:#fff;overflow:hidden;background:linear-gradient(158deg,#081f42 0%,var(--navy2) 52%,var(--navy) 100%)}
.zl-honor::before{content:"";position:absolute;left:-120px;bottom:-170px;width:460px;height:460px;border-radius:50%;background:radial-gradient(closest-side,rgba(201,162,74,.20),transparent)}
.zl-honor::after{content:"";position:absolute;right:-70px;top:-130px;width:380px;height:380px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.07),transparent)}
.zl-honor .sec-head{position:relative;z-index:2}
.zl-honor .sec-title{color:#fff}
.zl-honor .sec-title small{color:#b9c9e0}
.zl-honor .more-link{color:var(--gold)}
.zl-honor .more-link:hover{color:#fff;border-color:var(--gold)}
.zl-honor-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.zl-honor-card{position:relative;text-align:center;padding:34px 22px 30px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.045);transition:.28s}
.zl-honor-card:hover{border-color:rgba(201,162,74,.6);background:rgba(255,255,255,.085);transform:translateY(-5px)}
.zl-honor-card .medal{width:62px;height:62px;margin:0 auto 16px;border-radius:50%;border:1px solid rgba(201,162,74,.55);background:rgba(201,162,74,.10);color:var(--gold);display:flex;align-items:center;justify-content:center}
.zl-honor-card .medal svg{width:28px;height:28px}
.zl-honor-card .lv{font-size:12.5px;font-weight:700;letter-spacing:2px;color:var(--gold);margin-bottom:8px}
.zl-honor-card b{display:block;font-size:15px;font-weight:600;line-height:1.65;color:#fff}
/* 证书墙（数据驱动）：上图下题，证书图自适应等高裁切 */
.zl-honor-card--pic{display:block;padding:14px 14px 18px;color:inherit;text-decoration:none}
.zl-honor-card--pic .pic{display:flex;align-items:center;justify-content:center;height:170px;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.92);margin-bottom:14px}
.zl-honor-card--pic .pic img{width:100%;height:100%;object-fit:contain;padding:8px;transition:transform .28s}
.zl-honor-card--pic:hover .pic img{transform:scale(1.04)}
.zl-honor-card--pic .medal{margin:0 auto}
.zl-honor-card--pic b{font-size:14px;line-height:1.55}
@media(max-width:992px){.zl-honor{padding:56px 0}.zl-honor-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.zl-honor-grid{grid-template-columns:1fr;gap:14px}}

/* ---------- 底部行动区：与品牌变量对齐 ---------- */
.cta{background:linear-gradient(105deg,#081f42,var(--navy2) 58%,var(--primary))}

/* ---------- 新增卡片内的链接继承父级颜色（避免出现默认蓝） ---------- */
.zl-svc-card h3 a,.zl-case h3 a,.zl-news-item h4 a,.zl-news-body .feature-cover h3 a{color:inherit;transition:color .2s}
.zl-svc-card h3 a:hover,.zl-news-item h4 a:hover,.zl-news-body .feature-cover h3 a:hover{color:var(--primary)}
.zl-case h3 a:hover{color:var(--gold)}
/* 图片覆盖式文字加轻微投影，保证深色照片上的可读性 */
.zl-case .txt{text-shadow:0 1px 14px rgba(4,14,32,.45)}
