/* 正德知识产权官网 - 统一样式表 */

:root {
  --ink: #0f172a;
  --ink-2: #334155;
  --ink-3: #64748b;
  --line: #e2e8f0;
  --line-soft: #eef2f7;
  --bg: #ffffff;
  --bg-soft: #f8fafc;
  --brand: #1e40af;
  --brand-2: #2563eb;
  --brand-deep: #172554;
  --accent: #b45309;
  --accent-soft: #fffbeb;
  --radius: 14px;
  --shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px -12px rgba(15, 23, 42, .12);
  --shadow-lg: 0 2px 4px rgba(15, 23, 42, .04), 0 18px 40px -20px rgba(15, 23, 42, .18);
  --grad: linear-gradient(135deg, #eef2ff 0%, #f8fafc 45%, #ffffff 100%);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei",
               "Source Han Sans SC", "Noto Sans CJK SC", "Hiragino Sans GB", sans-serif;
  font-size: 16px;
  line-height: 1.75;
  color: var(--ink-2);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}

a { color: var(--brand-2); text-decoration: none; }
a:hover { text-decoration: underline; }

h1, h2, h3, h4 {
  color: var(--ink);
  line-height: 1.35;
  letter-spacing: -0.01em;
  margin: 0;
}

.wrap { max-width: 1120px; margin: 0 auto; padding: 0 24px; }
.narrow { max-width: 780px; margin: 0 auto; padding: 0 24px; }

/* ---------- 顶部导航 ---------- */
.site-nav {
  position: sticky; top: 0; z-index: 50;
  background: rgba(255,255,255,.88);
  backdrop-filter: saturate(180%) blur(12px);
  border-bottom: 1px solid var(--line-soft);
}
.nav-inner {
  max-width: 1120px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; gap: 28px; height: 64px;
}
.brand { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.brand-mark {
  width: 32px; height: 32px; border-radius: 9px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--brand-2), var(--brand-deep));
  color: #fff; font-weight: 700; font-size: 15px;
  display: flex; align-items: center; justify-content: center;
  letter-spacing: -0.02em;
}
/* 两行文字收紧成一个竖排块，总高度贴近 logo 高度，视觉上才对齐 */
.brand-names { display: flex; flex-direction: column; line-height: 1.2; }
.brand-text { font-size: 15px; font-weight: 700; color: var(--ink); letter-spacing: -0.01em; line-height: 1.2; }
.brand-sub { font-size: 11px; color: var(--ink-3); font-weight: 400; letter-spacing: 0; line-height: 1.2; margin-top: 3px; }

.nav-links { display: flex; gap: 22px; margin-left: auto; }
.nav-links a {
  font-size: 14.5px; color: var(--ink-2); font-weight: 500;
  padding: 4px 0; border-bottom: 2px solid transparent;
}
.nav-links a:hover { color: var(--brand-2); text-decoration: none; border-bottom-color: var(--brand-2); }
.nav-links a.on { color: var(--brand-2); border-bottom-color: var(--brand-2); }

/* 下拉分组（为后续新增服务页 / 文章页预留） */
.nav-group { position: relative; }
.nav-group > .nav-top::after {
  content: ""; display: inline-block; margin-left: 5px; vertical-align: middle;
  width: 5px; height: 5px; border-right: 1.4px solid currentColor; border-bottom: 1.4px solid currentColor;
  transform: rotate(45deg) translateY(-2px); opacity: .65;
}
.nav-drop {
  display: none; position: absolute; top: 100%; left: -12px; z-index: 60;
  /* 原 margin-top:4px 在菜单项与下拉之间留了 4px 悬空断层，鼠标经过时 hover 丢失、菜单闪退折叠。
     改为上内边距：视觉间距不变，但下拉盒紧贴菜单项底边，hover 连续。 */
  min-width: 208px; padding: 12px 8px 8px;
  background: #fff; border: 1px solid var(--line); border-radius: 12px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .12);
}
/* nav-open 由页脚脚本在鼠标短暂离开时延迟 240ms 移除，兜住斜向快速移动 */
.nav-group:hover .nav-drop, .nav-group:focus-within .nav-drop,
.nav-group.nav-open .nav-drop { display: block; }
.nav-drop a {
  display: block; padding: 8px 12px; border-radius: 7px;
  font-size: 14px; color: var(--ink-2); border-bottom: 0; line-height: 1.45;
  white-space: nowrap;
}
.nav-drop a:hover { background: var(--bg-soft); color: var(--brand-2); border-bottom-color: transparent; }
.nav-drop a.on { background: #eff6ff; color: var(--brand-2); border-bottom-color: transparent; }
.nav-drop .soon {
  display: flex; align-items: center; gap: 6px; padding: 8px 12px;
  font-size: 13.5px; color: #94a3b8; cursor: default;
}
.nav-drop .tag {
  font-size: 11px; color: #94a3b8; border: 1px solid var(--line);
  border-radius: 4px; padding: 1px 6px; line-height: 1.5;
}
h3[id], h2[id] { scroll-margin-top: 84px; }

.nav-toggle { display: none; margin-left: auto; background: none; border: 0; font-size: 22px; cursor: pointer; color: var(--ink); }

/* ---------- Hero ---------- */
.hero {
  background: var(--grad);
  border-bottom: 1px solid var(--line-soft);
  padding: 72px 0 64px;
  position: relative;
  overflow: hidden;
}
.hero > * { position: relative; }

.eyebrow {
  display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: .04em;
  color: var(--brand-2); background: rgba(37,99,235,.08);
  border: 1px solid rgba(37,99,235,.16);
  padding: 5px 12px; border-radius: 999px; margin-bottom: 20px;
}
.hero h1 { font-size: 40px; font-weight: 800; margin-bottom: 18px; letter-spacing: -0.02em; }
.hero h1 .sm { display: block; font-size: 20px; font-weight: 600; color: var(--ink-2); margin-top: 10px; letter-spacing: 0; }
.lede { font-size: 18px; line-height: 1.8; color: var(--ink-2); max-width: 760px; margin: 0 0 28px; }
.lede b { color: var(--ink); font-weight: 700; }

.factline {
  display: flex; flex-wrap: wrap; gap: 8px 10px; margin-bottom: 32px;
}
.factline span {
  font-size: 13.5px; color: var(--ink-2); background: #fff;
  border: 1px solid var(--line); border-radius: 8px; padding: 5px 12px;
}

.hero-cta { display: flex; flex-wrap: wrap; gap: 12px; }
.btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 11px 22px; border-radius: 10px; font-size: 15px; font-weight: 600;
  border: 1px solid transparent; cursor: pointer; transition: all .15s ease;
}
.btn-primary { background: var(--brand-2); color: #fff; box-shadow: 0 6px 16px -6px rgba(37,99,235,.55); }
.btn-primary:hover { background: #1d4ed8; text-decoration: none; }
.btn-ghost { background: #fff; color: var(--ink); border-color: var(--line); }
.btn-ghost:hover { border-color: var(--brand-2); color: var(--brand-2); text-decoration: none; }

/* ---------- 数据条 ---------- */
.stats {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
  background: var(--line-soft); border: 1px solid var(--line-soft);
  border-radius: var(--radius); overflow: hidden; margin-top: 40px;
}
.stat { background: #fff; padding: 22px 20px; }
.stat-num {
  font-size: 32px; font-weight: 800; color: var(--brand); letter-spacing: -0.02em; line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.stat-num em { font-size: 16px; font-style: normal; font-weight: 600; color: var(--ink-3); }
.stat-label { font-size: 14px; color: var(--ink); font-weight: 600; margin-top: 6px; }
.stat-base { font-size: 12.5px; color: var(--ink-3); margin-top: 4px; line-height: 1.55; }

/* ---------- 区块 ---------- */
section { padding: 64px 0; }
section.alt { background: var(--bg-soft); border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.sec-head { margin-bottom: 36px; }
.sec-head h2 { font-size: 27px; font-weight: 750; margin-bottom: 10px; letter-spacing: -0.015em; }
.sec-head p { font-size: 16px; color: var(--ink-3); margin: 0; max-width: 700px; }
.kicker {
  font-size: 13px; font-weight: 700; letter-spacing: .08em; color: var(--brand-2);
  text-transform: uppercase; margin-bottom: 10px;
}

/* ---------- 卡片 ---------- */
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }

.card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  padding: 26px 24px; box-shadow: var(--shadow); transition: all .18s ease;
}
.card:hover { box-shadow: var(--shadow-lg); transform: translateY(-2px); }
.card h3 { font-size: 18px; font-weight: 700; margin-bottom: 10px; display: flex; align-items: center; gap: 9px; }
.card p { font-size: 14.5px; color: var(--ink-2); margin: 0; }
.card ul { margin: 12px 0 0; padding-left: 0; list-style: none; }
.card li { font-size: 14px; color: var(--ink-2); padding: 5px 0 5px 18px; position: relative; border-top: 1px dashed var(--line-soft); }
.card li:first-child { border-top: 0; }
.card li::before {
  content: ""; position: absolute; left: 0; top: 14px;
  width: 6px; height: 6px; border-radius: 50%; background: var(--brand-2); opacity: .55;
}
.card a.more { display: inline-block; margin-top: 14px; font-size: 14px; font-weight: 600; }

.dot {
  width: 30px; height: 30px; border-radius: 8px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; font-weight: 700; color: #fff;
}
.dot.b { background: linear-gradient(135deg, #3b82f6, #1e40af); }
.dot.g { background: linear-gradient(135deg, #0ea5e9, #0369a1); }
.dot.p { background: linear-gradient(135deg, #8b5cf6, #6d28d9); }
.dot.a { background: linear-gradient(135deg, #f59e0b, #b45309); }

/* ---------- 高亮块 ---------- */
.callout {
  background: var(--accent-soft); border: 1px solid #fde68a;
  border-left: 4px solid var(--accent);
  border-radius: 10px; padding: 18px 22px; font-size: 15px; color: #78350f;
}
.callout b { color: #713f12; }
.callout.blue {
  background: #eff6ff; border-color: #bfdbfe; border-left-color: var(--brand-2); color: #1e3a8a;
}
.callout.blue b { color: #172554; }

/* ---------- 表格 ---------- */
.tbl-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
table { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 560px; }
/* 表格保持 560px 最小宽度以保证列可读，窄屏交给外层横滑，不再撑破页面 */
.table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 18px 0 24px; }
.table-scroll table { margin: 0; }
.table-scroll::-webkit-scrollbar { height: 6px; }
.table-scroll::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
th, td { text-align: left; padding: 13px 16px; border-bottom: 1px solid var(--line-soft); vertical-align: top; }
th { background: var(--bg-soft); font-weight: 700; color: var(--ink); font-size: 13.5px; white-space: nowrap; }
tbody tr:last-child td { border-bottom: 0; }
td.num { font-variant-numeric: tabular-nums; font-weight: 600; color: var(--ink); }
/* 维度表：首列只有两个字，禁止折行 */
.tbl-dim td:first-child { white-space: nowrap; width: 1%; }
/* 首列是四字短语的表：给最小宽度，避免折成两行 */
td.num:first-child { min-width: 5em; }

/* ---------- FAQ ---------- */
.faq { border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: #fff; }
.faq details { border-bottom: 1px solid var(--line-soft); }
.faq details:last-child { border-bottom: 0; }
.faq summary {
  cursor: pointer; padding: 18px 24px; font-size: 16px; font-weight: 650; color: var(--ink);
  list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font-size: 20px; color: var(--brand-2); font-weight: 400; flex-shrink: 0; }
.faq details[open] summary::after { content: "−"; }
.faq details[open] summary { background: var(--bg-soft); }
.faq .ans { padding: 4px 24px 22px; font-size: 15px; color: var(--ink-2); }
.faq .ans p { margin: 0 0 10px; }
.faq .ans p:last-child { margin-bottom: 0; }

/* ---------- 正文（文章页） ---------- */
.prose { font-size: 16.5px; line-height: 1.85; }
.prose h2 { font-size: 24px; margin: 44px 0 16px; font-weight: 750; padding-top: 8px; }
.prose h3 { font-size: 19px; margin: 32px 0 12px; font-weight: 700; }
.prose p { margin: 0 0 18px; }
.prose ul, .prose ol { margin: 0 0 20px; padding-left: 22px; }
.prose li { margin-bottom: 8px; }
.prose strong { color: var(--ink); font-weight: 700; }
.prose blockquote {
  margin: 24px 0; padding: 4px 0 4px 20px; border-left: 3px solid var(--brand-2);
  color: var(--ink-2); background: var(--bg-soft); border-radius: 0 8px 8px 0;
}
.meta-line { font-size: 13.5px; color: var(--ink-3); margin-bottom: 28px; }

/* ---------- 定义列表 ---------- */
dl.facts { margin: 0; }
dl.facts div {
  display: grid; grid-template-columns: 150px 1fr; gap: 16px;
  padding: 12px 0; border-top: 1px solid var(--line-soft); font-size: 15px;
}
dl.facts div:first-child { border-top: 0; }
dl.facts dt { color: var(--ink-3); font-size: 14px; }
dl.facts dd { margin: 0; color: var(--ink); }

/* ---------- 面包屑 ---------- */
.crumb { font-size: 13.5px; color: var(--ink-3); padding: 18px 0 0; }
.crumb a { color: var(--ink-3); }
.crumb span { margin: 0 6px; }

/* ---------- 页脚 ---------- */
.site-foot {
  background: #2a4f96; color: #cbd5e1;   /* 与 CTA 底部同色，接缝不可见 */
  padding: 52px 0 28px; font-size: 14px; margin-top: 0;
}
.foot-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr; gap: 28px; }
.site-foot h4 { color: #fff; font-size: 15px; font-weight: 700; margin-bottom: 14px; }
.site-foot ul { list-style: none; margin: 0; padding: 0; }
.site-foot li { padding: 4px 0; }
.site-foot a { color: #cbd5e1; font-size: 14px; }
.site-foot a:hover { color: #fff; }
.foot-name { color: #fff; font-weight: 700; font-size: 15px; line-height: 1.6; margin-bottom: 10px; }
.foot-note { color: #94a3b8; font-size: 13px; line-height: 1.7; }
.foot-bar {
  margin-top: 36px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12);
  font-size: 12.5px; color: #94a3b8; display: flex; flex-wrap: wrap; gap: 8px 20px;
}

/* ---------- 品牌 Logo 位 ---------- */
/* 拿到 logo 文件后：把 <img src="logo.svg" alt="正德知识产权"> 放进 .logo-slot 即可，
   占位印章会自动隐藏。用法见 08_官网待补内容清单.md */
.logo-slot {
  display: inline-flex; align-items: center; gap: 10px;
}
.logo-slot img { height: 34px; width: auto; display: block; }
.logo-slot:has(img) .brand-mark { display: none; }

/* ---------- 首页：左文右卡 ---------- */
.hero-split {
  display: grid; grid-template-columns: 1.15fr .85fr; gap: 48px; align-items: start;
}
.hero-side { padding-top: 6px; }

/* 右侧资质卡 */
.cred-card {
  background: #fff; border: 1px solid var(--line); border-radius: 18px;
  padding: 26px 26px 22px; box-shadow: var(--shadow-lg);
}
.cred-card h3 {
  font-size: 16px; font-weight: 700; margin-bottom: 4px;
}
.cred-sub { font-size: 13px; color: var(--ink-3); margin-bottom: 18px; }
.cred-list { list-style: none; margin: 0; padding: 0; }
.cred-list li {
  display: flex; align-items: flex-start; gap: 11px;
  padding: 11px 0; border-top: 1px dashed var(--line-soft); font-size: 14px;
}
.cred-list li:first-child { border-top: 0; }
.cred-list .ck {
  flex-shrink: 0; width: 19px; height: 19px; border-radius: 50%; margin-top: 2px;
  background: rgba(37,99,235,.10); color: var(--brand-2);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 800;
}
.cred-list .t { color: var(--ink); font-weight: 600; }
.cred-list .d { display: block; font-size: 12.5px; color: var(--ink-3); font-weight: 400; margin-top: 1px; }
.cred-foot {
  margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line-soft);
  font-size: 12.5px; color: var(--ink-3); line-height: 1.6;
}

/* ---------- 信任条 / 徽章 ---------- */
.trustbar {
  background: #fff; border-bottom: 1px solid var(--line-soft);
  padding: 26px 0;
}
.trust-inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 28px; flex-wrap: wrap;
}
.trust-label { font-size: 13px; color: var(--ink-3); font-weight: 600; letter-spacing: .02em; }
.badges { display: flex; gap: 10px; flex-wrap: wrap; }
.badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--bg-soft); border: 1px solid var(--line);
  border-radius: 999px; padding: 7px 15px; font-size: 13.5px; color: var(--ink-2);
}
.badge b { color: var(--ink); font-weight: 700; }
.badge .bm {
  width: 18px; height: 18px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, var(--brand-2), var(--brand-deep));
  color: #fff; font-size: 10px; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
}

/* ---------- 服务流程 ---------- */
.steps { display: grid; grid-template-columns: repeat(7, 1fr); gap: 0; }
.step { position: relative; padding: 0 11px; text-align: left; }
.step:not(:last-child)::after {
  content: ""; position: absolute; right: -3px; top: 13px;
  width: 6px; height: 6px; border-top: 1.5px solid #cbd5e1; border-right: 1.5px solid #cbd5e1;
  transform: rotate(45deg);
}
.step-n {
  width: 26px; height: 26px; border-radius: 50%;
  background: var(--brand-2); color: #fff; font-size: 13px; font-weight: 700;
  display: flex; align-items: center; justify-content: center; margin-bottom: 12px;
}
.step h4 { font-size: 14.5px; font-weight: 700; margin-bottom: 5px; }
.step p { font-size: 12.5px; color: var(--ink-3); margin: 0; line-height: 1.6; }
/* 商务确认：付款节点，视觉上单独强调 */
.step-key .step-n {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  box-shadow: 0 0 0 4px rgba(245, 158, 11, .15);
}
.step-key h4 { color: #b45309; }
.step-key p { color: #92400e; }

/* ---------- 服务卡图标 ---------- */
.ic {
  width: 40px; height: 40px; border-radius: 11px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; margin-bottom: 14px;
}
.ic svg { width: 21px; height: 21px; display: block; }
.ic.b { background: linear-gradient(135deg, #dbeafe, #bfdbfe); color: var(--brand); }
.ic.g { background: linear-gradient(135deg, #e0f2fe, #bae6fd); color: #0369a1; }
.ic.p { background: linear-gradient(135deg, #ede9fe, #ddd6fe); color: #6d28d9; }
.ic.a { background: linear-gradient(135deg, #fef3c7, #fde68a); color: #b45309; }

/* ---------- 领域卡背景图位 ---------- */
.field-card { position: relative; overflow: hidden; }
.field-card .glow {
  position: absolute; right: -40px; top: -40px; width: 140px; height: 140px;
  border-radius: 50%; background: radial-gradient(circle, rgba(37,99,235,.10), transparent 68%);
  pointer-events: none;
}
.field-card > * { position: relative; }

/* ---------- 底部 CTA 带 ---------- */
.cta-band {
  background: linear-gradient(120deg, var(--brand-deep) 0%, #1e3a8a 55%, var(--brand-2) 100%);
  color: #e2e8f0; padding: 60px 0; position: relative; overflow: hidden;
}
.cta-band > * { position: relative; }
.cta-inner { display: grid; grid-template-columns: 1.4fr auto; gap: 32px; align-items: center; }
.cta-band h2 { color: #fff; font-size: 27px; font-weight: 750; margin-bottom: 10px; }
.cta-band p { color: #c7d5ea; font-size: 15.5px; margin: 0; max-width: 620px; }
.cta-btns { display: flex; gap: 12px; flex-wrap: wrap; }
.btn-light { background: #fff; color: var(--brand-deep); box-shadow: 0 10px 24px -10px rgba(0,0,0,.4); }
.btn-light:hover { background: #f1f5f9; text-decoration: none; }
.btn-outline { background: transparent; color: #fff; border-color: rgba(255,255,255,.35); }
.btn-outline:hover { border-color: #fff; background: rgba(255,255,255,.08); text-decoration: none; }
.cta-note { margin-top: 14px; font-size: 13px; color: #a9bcd6; }

/* ---------- 交付记录时间轴（首页用） ---------- */
.tl { list-style: none; margin: 0; padding: 0; }
.tl li {
  display: grid; grid-template-columns: 96px 1fr; gap: 16px;
  padding: 13px 0; border-top: 1px dashed var(--line-soft);
}
.tl li:first-child { border-top: 0; }
.tl .when { font-size: 13.5px; font-weight: 700; color: var(--brand); font-variant-numeric: tabular-nums; padding-top: 1px; }
.tl .what { font-size: 14.5px; color: var(--ink); }
.tl .what span { display: block; font-size: 13px; color: var(--ink-3); margin-top: 2px; }

/* ---------- 品牌 Logo ---------- */
.brand-logo { height: 34px; width: auto; display: block; }
.foot-logo { height: 34px; width: auto; display: block; margin-bottom: 18px; }

/* ---------- 资质证书墙 ---------- */
.cert-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.cert-item {
  display: block; background: #fff; border: 1px solid var(--line);
  border-radius: 13px; overflow: hidden; box-shadow: var(--shadow);
  transition: all .18s ease;
}
.cert-item:hover { box-shadow: var(--shadow-lg); transform: translateY(-2px); text-decoration: none; }
.cert-thumb {
  display: block; width: 100%; height: 182px; object-fit: contain; object-position: center;
  background: #fff; padding: 10px; border-bottom: 1px solid var(--line-soft);
}
.cert-cap { padding: 13px 15px 15px; }
.cert-cap b { display: block; font-size: 14px; color: var(--ink); font-weight: 700; margin-bottom: 2px; }
.cert-cap span { font-size: 12.5px; color: var(--ink-3); line-height: 1.5; display: block; }
.cert-note { margin-top: 14px; font-size: 12.5px; color: var(--ink-3); }
.cert-note b { color: var(--ink-2); }

/* ---------- 二维码墙 ---------- */
.qr-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.qr-item {
  background: #fff; border: 1px solid var(--line); border-radius: 14px;
  padding: 18px 16px 16px; text-align: center; box-shadow: var(--shadow);
}
.qr-item .qr-box {
  height: 158px; display: flex; align-items: center; justify-content: center;
  margin-bottom: 12px; background: var(--bg-soft); border-radius: 10px; padding: 8px;
}
.qr-item img { max-height: 100%; max-width: 100%; width: auto; display: block; border-radius: 6px; }
.qr-item b { display: block; font-size: 14.5px; color: var(--ink); font-weight: 700; }
.qr-item span { font-size: 12.5px; color: var(--ink-3); line-height: 1.5; display: block; margin-top: 3px; }

/* ---------- 交通指引 ---------- */
.guide { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.guide-item {
  background: #fff; border: 1px solid var(--line); border-radius: 14px;
  padding: 22px 22px 20px; box-shadow: var(--shadow);
}
.guide-item h4 {
  font-size: 15.5px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px;
}
.guide-item h4 .gi {
  width: 24px; height: 24px; border-radius: 7px; background: rgba(37,99,235,.10);
  color: var(--brand-2); font-size: 12px; font-weight: 800;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.guide-item ol, .guide-item ul { margin: 0; padding-left: 20px; }
.guide-item li { font-size: 14.5px; color: var(--ink-2); margin-bottom: 6px; line-height: 1.65; }
.guide-item li:last-child { margin-bottom: 0; }
.guide-item .tip { margin-top: 12px; font-size: 13px; color: var(--ink-3); }

/* ---------- 保密说明 ---------- */
.confide { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.confide .card p { font-size: 14px; }

/* ================= 视觉升级 v6：色块 / 底图 / 图文层次 ================= */

:root {
  --ink-deep: #0a2140;
  --ink-deep-2: #10315c;
  --gold: #c9a227;
  --gold-soft: #f6efd7;
}

/* 深色文字带（用于数据条、CTA、重点结论） */
.band-deep {
  position: relative; overflow: hidden; color: #dbe6f5;
  background:
    radial-gradient(880px 420px at 88% -12%, rgba(64,140,255,.30), transparent 62%),
    radial-gradient(680px 340px at 6% 112%, rgba(201,162,39,.18), transparent 62%),
    linear-gradient(120deg, #0a2140 0%, #10315c 54%, #0a2140 100%);
}
.band-deep h2, .band-deep h3, .band-deep h4 { color: #fff; }
.band-deep p { color: #c7d6ea; }
.band-deep .kicker { color: #8fb6f0; }
.band-deep > * { position: relative; z-index: 1; }

/* 浅色网格底图 */
.pattern-grid { position: relative; }
.pattern-grid > * { position: relative; }

/* 正文关键句高亮 */
.hl {
  background: linear-gradient(180deg, transparent 60%, rgba(37,99,235,.18) 60%);
  font-weight: 700; color: var(--ink);
}
.hl-gold {
  background: linear-gradient(180deg, transparent 60%, rgba(201,162,39,.32) 60%);
  font-weight: 700; color: var(--ink);
}
.band-deep .hl { background: linear-gradient(180deg, transparent 60%, rgba(120,175,255,.36) 60%); color: #fff; }
.band-deep .hl-gold { background: linear-gradient(180deg, transparent 60%, rgba(201,162,39,.45) 60%); color: #fff; }

/* 重点数字 */
.big-num {
  font-size: 2.1em; font-weight: 800; line-height: 1;
  letter-spacing: -.02em; font-variant-numeric: tabular-nums;
  color: var(--brand);
}
.band-deep .big-num { color: #fff; }

/* 区块标题左侧色条 */
.sec-head { position: relative; padding-left: 18px; }
.sec-head::before {
  content: ""; position: absolute; left: 0; top: 4px; bottom: 6px; width: 4px; border-radius: 3px;
  background: linear-gradient(180deg, var(--brand-2), rgba(37,99,235,.15));
}
.band-deep .sec-head::before { background: linear-gradient(180deg, var(--gold), rgba(201,162,39,.2)); }
.sec-head.center { padding-left: 0; text-align: center; }
.sec-head.center::before { display: none; }

/* 首屏问题标签 */
.qchips { display: grid; gap: 9px; margin: 20px 0 22px; }
.qchip {
  display: flex; align-items: center; gap: 9px;
  background: #fff; border: 1px solid var(--line); border-radius: 12px;
  padding: 11px 15px; font-size: 14.5px; color: var(--ink-2);
  box-shadow: 0 1px 2px rgba(15,23,42,.04);
}
.qchip b { color: var(--brand); font-weight: 700; }
.qchip .qmark {
  width: 20px; height: 20px; border-radius: 6px; flex-shrink: 0;
  background: rgba(37,99,235,.1); color: var(--brand-2);
  font-size: 12px; font-weight: 800; display: flex; align-items: center; justify-content: center;
}

/* 深色数据条 */
.stats.on-deep {
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14);
}
.stats.on-deep .stat { background: transparent; }
.stats.on-deep .stat-num { color: #fff; }
.stats.on-deep .stat-num em { color: #a8c2e2; }
.stats.on-deep .stat-label { color: #e3ecf8; }
.stats.on-deep .stat-base { color: #93a9c7; }
.stats.on-deep > .stat + .stat { border-left: 1px solid rgba(255,255,255,.12); }

/* 图片位（待补素材的占位框） */
.photo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.photo-grid.g4 { grid-template-columns: repeat(4, 1fr); }
.photo-slot {
  position: relative; overflow: hidden;
  min-height: 218px; border-radius: 14px;
  border: 1.5px dashed #c3cfe0;
  background:
    linear-gradient(135deg, rgba(37,99,235,.04), rgba(37,99,235,0)),
    repeating-linear-gradient(45deg, #f8fafc 0 2px, #fff 2px 12px);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 7px; padding: 22px 18px; text-align: center;
}
.photo-slot .ps-ico {
  width: 40px; height: 40px; border-radius: 11px;
  background: rgba(37,99,235,.09); color: var(--brand-2);
  display: flex; align-items: center; justify-content: center;
}
.photo-slot .ps-t { font-size: 14.5px; font-weight: 700; color: #64748b; }
.photo-slot .ps-d { font-size: 12.5px; color: #94a3b8; line-height: 1.6; max-width: 240px; }
.photo-slot .ps-tag {
  position: absolute; top: 10px; right: 10px;
  font-size: 11px; color: #64748b; background: #fff;
  border: 1px solid var(--line); border-radius: 999px; padding: 2px 8px;
}
.band-deep .photo-slot {
  border-color: rgba(255,255,255,.22);
  background: rgba(255,255,255,.04);
}
.band-deep .photo-slot .ps-t { color: #cddcef; }
.band-deep .photo-slot .ps-d { color: #93a9c7; }

/* ===== 真实图片展示 v7：团队照 / 荣誉牌匾 ===== */
.team-lead-row { display: grid; grid-template-columns: 1.85fr 1fr; gap: 20px; align-items: stretch; }

.team-lead {
  margin: 0; display: flex; flex-direction: column;
  background: #fff; border: 1px solid var(--line);
  border-radius: 16px; overflow: hidden; box-shadow: var(--shadow);
}
.team-lead img {
  width: 100%; height: auto; display: block;
  aspect-ratio: 4 / 3; object-fit: cover; object-position: center 42%;
}
.team-lead figcaption { padding: 16px 20px 18px; }
.team-lead figcaption b { display: block; font-size: 16px; color: var(--ink); margin-bottom: 5px; }
.team-lead figcaption span { font-size: 14px; color: var(--ink-3); line-height: 1.7; }

.team-note {
  padding: 22px 24px; border-radius: 16px; border: 1px solid var(--line);
  background: linear-gradient(160deg, #ffffff 0%, #f4f8fd 100%);
  display: flex; flex-direction: column;
}
.team-note h3 { font-size: 16.5px; margin: 0 0 14px; color: var(--ink); }
/* 窄卡片里 150px 的标签列会把正文挤碎，这里改成紧凑两列 */
.team-note dl.facts div { grid-template-columns: 82px 1fr; gap: 12px; padding: 13px 0; }
/* 卡片高度被左侧团队大图拉高，让事实表均分剩余高度，避免底部一大片空白 */
.team-note dl.facts { flex: 1; display: flex; flex-direction: column; }
.team-note dl.facts div { flex: 1; align-items: center; }
dl.facts.tight dd { font-size: 14px; line-height: 1.65; }
.team-note-f {
  font-size: 12.5px; color: #94a3b8; margin: auto 0 0;
  padding-top: 12px; border-top: 1px dashed var(--line);
}

.team-thumbs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 16px; }
.team-thumbs figure {
  margin: 0; overflow: hidden; background: #fff;
  border: 1px solid var(--line); border-radius: 14px;
}
.team-thumbs img { width: 100%; height: auto; display: block; aspect-ratio: 4 / 3; object-fit: cover; }
.team-thumbs figcaption { font-size: 12.5px; color: var(--ink-3); padding: 9px 12px; }

.honor-block { margin-top: 42px; padding-top: 32px; border-top: 1px solid var(--line); }
.honor-head h3 { font-size: 18px; margin: 0 0 6px; color: var(--ink); }
.honor-head p { font-size: 14px; color: var(--ink-3); margin: 0 0 18px; }

.honor-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.honor-item {
  margin: 0; padding: 10px 10px 0; background: #fff;
  border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow);
}
.honor-pic {
  padding: 6px; border-radius: 9px;
  background: linear-gradient(180deg, #f8fafc 0%, #edf3fa 100%);
}
/* 牌匾一律 contain：cover 会切掉证书上的关键行 */
.honor-pic img { width: 100%; height: auto; display: block; aspect-ratio: 4 / 3; object-fit: contain; }
.honor-item figcaption { padding: 11px 4px 13px; }
.honor-item figcaption b { display: block; font-size: 13.5px; line-height: 1.45; color: var(--ink); }
.honor-item figcaption span { display: block; font-size: 11.5px; color: #94a3b8; margin-top: 4px; line-height: 1.55; }

/* 图文左右分栏 */
.split-media { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; align-items: center; }
.split-media.rev > .sm-media { order: 2; }
.sm-media img { width: 100%; height: auto; display: block; border-radius: 14px; box-shadow: var(--shadow-lg); }
.sm-cap { font-size: 12.5px; color: var(--ink-3); margin-top: 10px; text-align: center; }

/* 大号电话 */
.phone-big {
  display: inline-flex; align-items: center; gap: 14px;
  font-size: 40px; font-weight: 800; letter-spacing: -.02em;
  color: var(--brand); font-variant-numeric: tabular-nums; line-height: 1.1;
}
.phone-big:hover { text-decoration: none; color: var(--brand-2); }
.phone-big .pb-ico {
  width: 48px; height: 48px; border-radius: 14px; flex-shrink: 0;
  background: rgba(37,99,235,.1); color: var(--brand-2);
  display: flex; align-items: center; justify-content: center;
}
.phone-note { font-size: 13.5px; color: var(--ink-3); margin-top: 8px; }

/* 结论条：一屏一个重点 */
.keyline {
  display: flex; gap: 14px; align-items: flex-start;
  border-left: 4px solid var(--brand-2); background: var(--bg-soft);
  padding: 16px 20px; border-radius: 0 12px 12px 0; margin: 26px 0;
}
.keyline .kl-t { font-size: 15px; color: var(--ink); line-height: 1.7; margin: 0; }
.band-deep .keyline { background: rgba(255,255,255,.06); border-left-color: var(--gold); }
.band-deep .keyline .kl-t { color: #e3ecf8; }

/* 联系页顶部大号电话条 */
.call-hero {
  position: relative; overflow: hidden;
  display: flex; flex-wrap: wrap; gap: 28px; align-items: center; justify-content: space-between;
  padding: 32px 36px; border-radius: 20px; color: #dbe6f5;
  background:
    radial-gradient(760px 360px at 92% -20%, rgba(64,140,255,.30), transparent 62%),
    linear-gradient(120deg, #0a2140 0%, #10315c 56%, #0a2140 100%);
  box-shadow: 0 20px 44px -26px rgba(10,33,64,.6);
}
.call-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse at 78% 0%, #000 24%, transparent 70%);
  mask-image: radial-gradient(ellipse at 78% 0%, #000 24%, transparent 70%);
}
.call-hero > * { position: relative; z-index: 1; }
.call-hero .ch-label { font-size: 12.5px; letter-spacing: .1em; font-weight: 700; color: #8fb6f0; margin-bottom: 10px; }
.call-hero .phone-big { color: #fff; }
.call-hero .phone-big:hover { color: #ffd97a; }
.call-hero .pb-ico { background: rgba(255,255,255,.13); color: #fff; }
.call-hero .phone-note { color: #a9c0dd; max-width: 560px; }
.call-hero-side { text-align: right; }
.chs-t { font-size: 15.5px; font-weight: 700; color: #fff; }
.chs-d { font-size: 13.5px; color: #a9c0dd; margin: 6px 0 14px; max-width: 250px; margin-left: auto; }
.call-hero-side .btn-primary { background: #fff; color: var(--brand); box-shadow: none; }
.call-hero-side .btn-primary:hover { background: #ffd97a; color: #0a2140; }

/* 二维码占位 */
.qr-hold {
  height: 100%; width: 100%; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 6px;
  border: 1.5px dashed #c3cfe0; border-radius: 8px; background: #fff;
  color: #94a3b8; font-size: 12.5px; text-align: center; padding: 10px;
}
.qr-hold b { color: #64748b; font-size: 13px; font-weight: 700; }

/* ---------- 响应式 ---------- */
@media (max-width: 980px) {
  .call-hero { padding: 26px 24px; }
  .call-hero-side { text-align: left; }
  .chs-d { margin-left: 0; }
  .phone-big { font-size: 32px; }
  .split-media { grid-template-columns: 1fr; gap: 22px; }
  .split-media.rev > .sm-media { order: 0; }
  .photo-grid, .photo-grid.g4 { grid-template-columns: repeat(2, 1fr); }
  .cert-grid, .qr-grid { grid-template-columns: repeat(2, 1fr); }
  .guide { grid-template-columns: 1fr; }
  .confide { grid-template-columns: 1fr; }
}
@media (max-width: 980px) {
  .hero-split { grid-template-columns: 1fr; gap: 32px; }
  .hero-side { max-width: 460px; }
  .steps { grid-template-columns: repeat(3, 1fr); gap: 26px 0; }
  .step:not(:last-child)::after { display: none; }
  .cta-inner { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 640px) {
  .steps { grid-template-columns: repeat(2, 1fr); }
  .tl li { grid-template-columns: 1fr; gap: 3px; }
  .trust-inner { justify-content: flex-start; }
}
/* 窄屏（平板 / 小桌面）：下拉改为贴菜单项右缘向左展开，避免顶出视口右侧 */
@media (max-width: 1185px) {
  .nav-drop { left: auto; right: -12px; }
}

@media (max-width: 900px) {
  .stats { grid-template-columns: repeat(2, 1fr); }
  .grid-3, .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .foot-grid { grid-template-columns: 1fr 1fr; }
  .hero h1 { font-size: 32px; }
}
@media (max-width: 640px) {
  .nav-links {
    display: none; position: absolute; top: 64px; left: 0; right: 0;
    background: #fff; border-bottom: 1px solid var(--line);
    flex-direction: column; gap: 0; padding: 8px 24px 16px;
    max-height: calc(100vh - 64px); overflow-y: auto;
    box-shadow: 0 16px 30px rgba(15, 23, 42, .1);
  }
  .nav-links.open { display: flex; }
  .nav-links a { padding: 11px 0; border-bottom: 1px solid var(--line-soft); }
  .nav-links a.on { border-bottom-color: var(--line-soft); }
  .nav-drop {
    position: static; display: block; min-width: 0; margin: 0; padding: 2px 0 6px 14px;
    background: transparent; border: 0; box-shadow: none; border-radius: 0;
  }
  .nav-drop a, .nav-drop .soon { padding: 7px 0; font-size: 13.5px; }
  .nav-drop a { white-space: normal; }
  .nav-drop a:hover, .nav-drop a.on { background: transparent; }
  .nav-group > .nav-top::after { display: none; }
  .nav-toggle { display: block; }
  .grid-2, .grid-3, .grid-4, .stats { grid-template-columns: 1fr; }
  .foot-grid { grid-template-columns: 1fr; }
  section { padding: 46px 0; }
  .hero { padding: 48px 0 44px; }
  dl.facts div { grid-template-columns: 1fr; gap: 4px; }
}

@media (max-width: 640px) {
  .photo-grid, .photo-grid.g4 { grid-template-columns: 1fr; }
  .phone-big { font-size: 28px; }
  .phone-big .pb-ico { width: 40px; height: 40px; }
  .call-hero .phone-note { font-size: 12.5px; }
  .sec-head { padding-left: 14px; }
  .qchip { font-size: 13.5px; padding: 9px 12px; }
  .big-num { font-size: 1.8em; }
}

/* ===== 团队照 / 荣誉牌匾 响应式 v7 ===== */
@media (max-width: 980px) {
  .team-lead-row { grid-template-columns: 1fr; gap: 16px; }
  .honor-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .team-thumbs { grid-template-columns: 1fr; gap: 12px; }
  .team-lead figcaption { padding: 14px 16px 16px; }
  .team-note { padding: 18px 18px; }
  .honor-grid { grid-template-columns: 1fr; }
  .honor-block { margin-top: 32px; padding-top: 26px; }
  /* CTA 过渡区是固定 108px，这里的上内边距只能比它大，不能小 */
  .cta-band { padding: 118px 0 52px; }
}

/* ============================================================
   视觉升级 v8：灵动 · 鲜艳 · 活力
   原则：只改颜色、渐变、圆角、阴影、hover，
        不动布局尺寸、不改 HTML 文字（AI 抓取不受影响）。
   ============================================================ */
:root {
  --brand: #1d4ed8;
  --brand-2: #2563eb;
  --sky: #0ea5e9;
  --cyan: #06b6d4;
  --violet: #7c3aed;
  --amber: #f59e0b;
  --emerald: #10b981;
  --radius: 16px;
  --grad-vivid: linear-gradient(120deg, #2563eb 0%, #0ea5e9 52%, #06b6d4 100%);
  --grad-warm: linear-gradient(120deg, #f59e0b 0%, #f97316 100%);
  --grad-cool: linear-gradient(120deg, #7c3aed 0%, #2563eb 58%, #06b6d4 100%);
  --shadow: 0 1px 2px rgba(15,23,42,.04), 0 10px 26px -14px rgba(15,23,42,.14);
  --shadow-lg: 0 2px 4px rgba(15,23,42,.04), 0 22px 46px -20px rgba(15,23,42,.22);
}

/* 页面底：极淡的冷色渐变，整体更通透 */
body { background: linear-gradient(180deg, #fbfdff 0%, #ffffff 30%); }

/* 导航：底部渐变细线 */
.site-nav { border-bottom: 1px solid var(--line-soft); position: relative; }
.site-nav::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px;
  background: var(--grad-vivid); opacity: .55;
}

/* Hero：三色光晕 + 圆点纹样 */
.hero {
  background:
    radial-gradient(620px 320px at 86% 6%, rgba(14,165,233,.20), transparent 62%),
    radial-gradient(540px 300px at 6% 92%, rgba(124,58,237,.16), transparent 62%),
    radial-gradient(460px 260px at 52% 40%, rgba(6,182,212,.13), transparent 60%),
    linear-gradient(160deg, #f2f8ff 0%, #eef4ff 42%, #ffffff 100%);
}
.eyebrow {
  background: linear-gradient(120deg, rgba(37,99,235,.12), rgba(6,182,212,.16));
  border-color: rgba(14,165,233,.30); color: #0369a1;
}

/* 按钮：渐变 + 上浮 */
.btn { transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.btn-primary {
  background: var(--grad-vivid);
  box-shadow: 0 10px 22px -8px rgba(14,165,233,.62);
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 16px 30px -10px rgba(14,165,233,.78); }
.btn-ghost:hover { border-color: var(--sky); color: #0369a1; transform: translateY(-2px); }

/* 数字：渐变文字（深色带上的除外，见下） */
.stat-num {
  background: linear-gradient(120deg, #2563eb 0%, #0891b2 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.stats.on-deep .stat-num {
  background: none; -webkit-text-fill-color: #fff; color: #fff;
}

/* 卡片：顶部彩色细条 + 更明显的上浮 */
.card { position: relative; overflow: hidden; }
.card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--grad-vivid); opacity: .9;
}
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.card li::before { background: linear-gradient(135deg, #2563eb, #06b6d4); opacity: .8; }

.kicker { color: #0891b2; }

/* 小标题左侧色条：更鲜艳（位置沿用 v6 的 left:0 + 容器 padding-left:18px） */
.sec-head::before {
  background: linear-gradient(180deg, #2563eb 0%, #06b6d4 100%);
  opacity: .9;
}

/* 图标底：更饱和的渐变 */
.dot.b { background: linear-gradient(135deg, #60a5fa, #1d4ed8); }
.dot.g { background: linear-gradient(135deg, #38bdf8, #0369a1); }
.dot.p { background: linear-gradient(135deg, #a78bfa, #6d28d9); }
.dot.a { background: linear-gradient(135deg, #fbbf24, #d97706); }
.ic.b { background: linear-gradient(135deg, #dbeafe, #a5c8fe); color: #1d4ed8; }
.ic.g { background: linear-gradient(135deg, #e0f2fe, #93d3f7); color: #0369a1; }
.ic.p { background: linear-gradient(135deg, #ede9fe, #c9bdfb); color: #6d28d9; }
.ic.a { background: linear-gradient(135deg, #fef3c7, #fbd38b); color: #b45309; }

/* 流程节点：彩色编号 */
.step-n {
  background: var(--grad-vivid);
  box-shadow: 0 0 0 4px rgba(14,165,233,.13);
}
.step-key .step-n { background: var(--grad-warm); box-shadow: 0 0 0 4px rgba(245,158,11,.20); }

/* 深色文字带：多色渐变 + 光晕 */
.band-deep {
  background:
    radial-gradient(920px 470px at 88% -12%, rgba(14,165,233,.40), transparent 62%),
    radial-gradient(700px 360px at 4% 112%, rgba(124,58,237,.32), transparent 62%),
    radial-gradient(560px 300px at 50% 52%, rgba(6,182,212,.18), transparent 60%),
    linear-gradient(120deg, #0c2a52 0%, #134373 52%, #0a2140 100%);
}

/* 底部 CTA：不再是一刀切的深蓝块。
   顶部用固定 112px 的竖向渐变把上方浅色接住，再落到中深蓝；
   页脚接着这个中深蓝继续往下走，整段底部是一个连续的"沉降"而不是硬切。
   注意：padding-top 必须大于过渡区高度，否则白色标题会压在浅色段上读不清。 */
.cta-band {
  padding: 120px 0 64px;
  background:
    radial-gradient(560px 220px at 84% 0%, rgba(56,189,248,.26), transparent 66%),
    linear-gradient(180deg,
      #e8f4ff 0px,
      #d2e6fc 20px,
      #9cbdee 44px,
      #5e86d2 70px,
      #35609f 92px,
      #2a4f96 108px,
      #2a4f96 100%);
}

/* 关键词高亮：更鲜艳 */
.hl {
  background: linear-gradient(180deg, transparent 58%, rgba(56,189,248,.42) 58%);
  color: #0c4a6e;
}
.hl-gold {
  background: linear-gradient(180deg, transparent 58%, rgba(251,191,36,.48) 58%);
  color: #92400e;
}

/* 结论条：左侧渐变竖条（用伪元素，避免 border-image 破坏圆角） */
.keyline {
  position: relative; border-left: 0; padding-left: 24px !important;
  background: linear-gradient(100deg, #f0f8ff 0%, #f8fbff 100%);
}
.keyline::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
  border-radius: 4px; background: var(--grad-vivid);
}

/* 首屏问题标签：彩色 */
.qchip {
  background: linear-gradient(100deg, #f0f8ff 0%, #f7fbff 100%);
  border: 1px solid #cfe8f7;
  transition: transform .18s ease, box-shadow .18s ease;
}
.qchip:hover { transform: translateX(4px); box-shadow: 0 8px 18px -10px rgba(14,165,233,.5); }

/* 表格：彩色表头 */
table { border-collapse: collapse; }
thead th, table th {
  background: linear-gradient(180deg, #eef6ff 0%, #e6f1ff 100%);
  color: #0c4a6e;
}
tbody tr:hover { background: #f7fbff; }

/* FAQ：展开时标题变蓝（不动边框，避免影响非 FAQ 的折叠块） */
.faq details[open] summary { color: #0369a1; background: linear-gradient(100deg, #f0f8ff, #f8fbff); }

/* 页脚
   8 个内页的页脚前面没有 CTA 带，是浅色内容直接收尾，落差比首页更大。
   所以默认在页脚顶部做一段固定 100px 的竖向渐变把上方浅色接住；
   首页页脚紧接深蓝 CTA 带，不能再来一次浅色过渡（会变成深→浅→深），用相邻选择器排除。 */
.site-foot { position: relative; overflow: hidden; padding-top: 120px; }
.site-foot::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg,
    #eef6ff 0px,
    #d8e9fc 18px,
    #a6c6f0 40px,
    #6a92d8 62px,
    #3c66a8 82px,
    #2a4f96 100px,
    #22417f 46%,
    #1a3568 74%,
    #16305f 100%);
  pointer-events: none;
}
.site-foot > * { position: relative; }
/* 首页：页脚直接接 CTA 深蓝，只做纵向沉降，不加浅色过渡 */
.cta-band + .site-foot { padding-top: 52px; }
.cta-band + .site-foot::before {
  background: linear-gradient(180deg, #2a4f96 0%, #22417f 40%, #1a3568 72%, #16305f 100%);
}

/* 团队与荣誉：卡片更轻盈 */
.team-lead, .team-thumbs figure, .honor-item {
  transition: transform .2s ease, box-shadow .2s ease;
}
.team-lead:hover, .team-thumbs figure:hover, .honor-item:hover {
  transform: translateY(-4px); box-shadow: var(--shadow-lg);
}
.honor-pic { background: linear-gradient(180deg, #ffffff 0%, #eef6fc 100%); }

/* 深色带上的高亮与结论条：不能沿用浅底的高亮色，否则在深色底上不可读 */
.band-deep .hl, .band-deep .hl-gold {
  color: #fde68a;
  background: linear-gradient(180deg, transparent 58%, rgba(253, 230, 138, .30) 58%);
}
.band-deep .keyline::before { background: linear-gradient(180deg, #c9a227, rgba(201,162,39,.45)); }

/* ============================================================
   v8.1 加强鲜艳度
   首屏从「白底淡光晕」改成「整块有色渐变」；数字与卡片彩条分色。
   ============================================================ */

/* 首屏：整块有色渐变 */
.hero {
  background:
    radial-gradient(780px 400px at 88% 2%, rgba(14,165,233,.46), transparent 62%),
    radial-gradient(660px 360px at 0% 98%, rgba(139,92,246,.34), transparent 62%),
    radial-gradient(560px 300px at 48% 48%, rgba(6,182,212,.22), transparent 58%),
    linear-gradient(135deg, #e8f3ff 0%, #e6efff 32%, #f2ecfe 64%, #e9fbff 100%);
}
/* 首屏右侧核验卡：顶部彩条 + 编号改成渐变实心 */
.cred-card { position: relative; overflow: hidden; }
.cred-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: var(--grad-vivid);
}
.cred-list .ck {
  background: linear-gradient(135deg, #2563eb, #06b6d4);
  color: #fff; box-shadow: 0 2px 6px -2px rgba(14,165,233,.7);
}

/* 深色带上的数字：一个一个上色（-webkit-text-fill-color 优先于 color，必须同时写） */
.stats.on-deep .stat:nth-child(1) .stat-num { color: #93c5fd; -webkit-text-fill-color: #93c5fd; }
.stats.on-deep .stat:nth-child(2) .stat-num { color: #67e8f9; -webkit-text-fill-color: #67e8f9; }
.stats.on-deep .stat:nth-child(3) .stat-num { color: #c4b5fd; -webkit-text-fill-color: #c4b5fd; }
.stats.on-deep .stat:nth-child(4) .stat-num { color: #fcd34d; -webkit-text-fill-color: #fcd34d; }

/* 卡片顶部彩条：按栅格位置分色 */
.grid-3 > .card::before, .grid-4 > .card::before { height: 4px; opacity: 1; }
.grid-3 > .card:nth-child(3n+1)::before { background: linear-gradient(90deg, #2563eb, #38bdf8); }
.grid-3 > .card:nth-child(3n+2)::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); }
.grid-3 > .card:nth-child(3n+3)::before { background: linear-gradient(90deg, #06b6d4, #22d3ee); }
.grid-4 > .card:nth-child(4n+1)::before { background: linear-gradient(90deg, #2563eb, #38bdf8); }
.grid-4 > .card:nth-child(4n+2)::before { background: linear-gradient(90deg, #06b6d4, #22d3ee); }
.grid-4 > .card:nth-child(4n+3)::before { background: linear-gradient(90deg, #7c3aed, #a78bfa); }
.grid-4 > .card:nth-child(4n+4)::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); }

/* 小节标签：渐变文字（深色带上退回浅蓝，不然读不出） */
.kicker {
  display: inline-block;
  background: linear-gradient(90deg, #1d4ed8, #0891b2);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.band-deep .kicker { background: none; -webkit-text-fill-color: #7dd3fc; color: #7dd3fc; }

/* 灰底区块：换成带蓝调的浅色，和白底区分更清楚 */
section.alt {
  background: linear-gradient(180deg, #f4f9ff 0%, #eef6fe 100%);
  border-top-color: #e3eefb; border-bottom-color: #e3eefb;
}

/* 表格斑马纹 */
tbody tr:nth-child(even) { background: #fafcff; }

/* 团队区块（关于页）：纯浅蓝渐变底，不再叠规律纹样 */
.pattern-grid { background: linear-gradient(180deg, #f7fbff 0%, #eff7ff 55%, #f4faff 100%); }

/* 尊重系统降低动效偏好 */
@media (prefers-reduced-motion: reduce) {
  .card:hover, .btn:hover, .qchip:hover,
  .team-lead:hover, .team-thumbs figure:hover, .honor-item:hover { transform: none; }
}
