/* ============================================================
   April · 出海 AI 可见度 — 视觉系统 v2「编辑感」
   语言：中文衬线 display + 不对称网格 + 细线分节 + 单 accent 冷青
   纪律：对比度全部 ≥4.5:1 · 单一主题锁 · 单 accent 锁 · 4px 圆角锁
   ============================================================ */

/* ---------- 1. Tokens ---------- */
:root{
  --paper:#ffffff;          /* 页面底：纯白 */
  --paper-2:#f4f7ff;        /* 分节底：浅蓝洗 */
  --ink:#101a33;            /* 主文字：深藏青 */
  --ink-2:#2f3e5c;          /* 次级文字 */
  --ink-3:#5a6b8c;          /* 说明文字（白底约 5.5:1） */
  --line:#e4e9f6;           /* 细线 */
  --line-2:#cbd5ee;         /* 深一档线 */
  --teal:#2563eb;           /* accent 主：亮蓝 */
  --teal-deep:#1d4ed8;      /* accent 深档（文字用，白底 6.3:1） */
  --teal-ink:#1e3a8a;       /* 藏蓝（onDeep 文字 / hover 终点） */
  --teal-wash:#edf3ff;      /* 蓝洗底 */
  --violet:#7c3aed;         /* 第二 accent：亮紫（渐变终点） */
  --grad:linear-gradient(115deg,#2563eb,#7c3aed);
  --grad-deep:linear-gradient(115deg,#1d4ed8,#6d28d9);
  --serif:"Noto Serif SC","Songti SC","STSong","SimSun",serif;
  --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --r:4px;                  /* 圆角锁：全站统一 */
  --wrap:1160px;
  --sec-y:110px;
  --ease:cubic-bezier(.16,1,.3,1);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{
  font-family:var(--sans);background:var(--paper);color:var(--ink-2);
  font-size:16.5px;line-height:1.85;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;}
hr{border:0;border-top:1px solid var(--line);}
::selection{background:var(--teal);color:#fff;}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px;}
@media(max-width:680px){.wrap{padding:0 22px;}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:2px;}

/* ---------- 2. 排版 ---------- */
h1,h2,h3,h4{
  margin:0;color:var(--ink);letter-spacing:.01em;
  font-family:var(--serif);font-weight:600;
}
.h1{
  font-size:clamp(34px,4.6vw,58px);line-height:1.22;letter-spacing:.005em;
  text-wrap:balance;
}
.h2{font-size:clamp(25px,3vw,36px);line-height:1.3;}
.h3{font-size:20px;line-height:1.45;}
.lead{font-size:19.5px;line-height:1.85;color:var(--ink-2);max-width:62ch;}
.sub{font-size:16.5px;line-height:1.9;color:var(--ink-2);max-width:62ch;}
.muted{color:var(--ink-3);font-size:14px;}
.note{
  margin-top:34px;padding:22px 26px;border-left:2px solid var(--teal);
  background:var(--teal-wash);border-radius:0 var(--r) var(--r) 0;
  font-size:14.5px;line-height:1.85;color:var(--ink-2);max-width:78ch;
}
.note b{color:var(--ink);}

/* 小引导签：细线 + 深青，非 uppercase、无宽 tracking */
.kicker{
  font-size:13.5px;color:var(--teal-deep);font-weight:600;
  letter-spacing:.06em;margin-bottom:20px;
  display:inline-flex;align-items:center;gap:10px;
}
.kicker::before{content:"";width:26px;height:1px;background:var(--teal);}

/* ---------- 3. 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 30px;font-size:15.5px;font-weight:600;font-family:var(--sans);
  border-radius:var(--r);border:1px solid transparent;cursor:pointer;
  text-decoration:none;transition:transform .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease);
}
.btn:active{transform:translateY(1px);}
.btn--primary{background-color:#2563eb;background-image:var(--grad);color:#fff;}
.btn--primary:hover{background-color:#1d4ed8;background-image:var(--grad-deep);}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-2);}
.btn--ghost:hover{border-color:var(--teal);color:var(--teal-deep);}
.btn--onDeep{background:#fff;color:var(--teal-ink);}
.btn--onDeep:hover{background:var(--teal-wash);}
.btn--sm{padding:9px 18px;font-size:14px;}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}

.link-arrow{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--teal-deep);font-weight:600;font-size:15.5px;text-decoration:none;
  border-bottom:1px solid transparent;transition:border-color .2s;
}
.link-arrow:hover{border-color:var(--teal-deep);}
.link-arrow svg{transition:transform .25s var(--ease);}
.link-arrow:hover svg{transform:translateX(3px);}

/* ---------- 4. 导航 ---------- */
.nav{
  position:sticky;top:0;z-index:40;
  background:rgba(255,255,255,.9);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.nav-in{display:flex;align-items:center;gap:34px;height:68px;}
.brand{
  display:flex;align-items:center;gap:11px;text-decoration:none;
  color:var(--ink);font-family:var(--serif);font-weight:600;font-size:19px;
}
.brand img{width:28px;height:28px;}
.brand span small{
  display:block;font-family:var(--sans);font-size:11px;font-weight:400;
  color:var(--ink-3);line-height:1.3;letter-spacing:.04em;
}
.nav-links{display:flex;list-style:none;gap:4px;margin-left:auto;}
.nav-links a{
  display:block;padding:8px 14px;font-size:15px;color:var(--ink-2);
  text-decoration:none;border-radius:var(--r);transition:color .2s,background .2s;
}
.nav-links a:hover{color:var(--ink);background:var(--paper-2);}
.nav-links a[aria-current="page"]{color:var(--teal-deep);font-weight:600;}
.nav-cta{margin-left:2px;}
.burger{
  display:none;position:relative;width:42px;height:42px;margin-left:auto;
  background:none;border:1px solid var(--line-2);border-radius:var(--r);cursor:pointer;
}
.burger i{
  position:absolute;left:11px;width:19px;height:1.6px;background:var(--ink);
  transition:transform .25s var(--ease),opacity .2s;
}
.burger i:nth-child(1){top:15px;}
.burger i:nth-child(2){top:20px;}
.burger i:nth-child(3){top:25px;}
.burger[aria-expanded="true"] i:nth-child(1){transform:translateY(5px) rotate(45deg);}
.burger[aria-expanded="true"] i:nth-child(2){opacity:0;}
.burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-5px) rotate(-45deg);}
.mnav{border-top:1px solid var(--line);background:var(--paper);}
.mnav a{
  display:block;padding:14px 0;font-size:16px;color:var(--ink-2);
  text-decoration:none;border-bottom:1px solid var(--line);
}
.mnav ul{list-style:none;margin-bottom:18px;}
.mnav .btn{width:100%;margin-bottom:20px;}

/* ---------- 5. Section 骨架 ---------- */
.sec{padding:var(--sec-y) 0;}
.sec:first-child{padding-top:64px;}
.sec--soft{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.sec--tight{padding:70px 0;}
.sec-head{margin-bottom:52px;max-width:70ch;}
.sec-head .sub{margin-top:16px;color:var(--ink-3);font-size:16px;}

/* ---------- 6. Hero ---------- */
.hero{padding:34px 0 var(--sec-y);}
.hero-grid{
  display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);
  gap:72px;align-items:center;
}
.hero .kicker{margin-bottom:26px;}
.hero h1{margin-bottom:30px;}
.hero .sub{margin-bottom:14px;font-size:17.5px;}
.hero .btn-row{margin-top:38px;}
.hero-fig{margin:0;position:relative;min-width:0;}
.hero-img{
  width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 30%;
  border-radius:var(--r);border:1px solid var(--line-2);
}
.hero-fig .cap{
  margin-top:14px;font-size:13px;color:var(--ink-3);
  font-family:var(--mono);letter-spacing:.02em;
}
/* 竖排装饰签：编辑感细节，仅宽屏 */
.hero-vert{
  position:absolute;top:-14px;left:-44px;
  writing-mode:vertical-rl;font-family:var(--serif);
  font-size:14px;letter-spacing:.42em;color:var(--ink-3);
  padding-left:14px;border-left:1px solid var(--line-2);
  user-select:none;
}
@media(max-width:1100px){.hero-vert{display:none;}}

/* ---------- 7. 数字条 ---------- */
.stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--line-2);
}
.stat{padding:40px 36px 8px 0;border-bottom:1px solid var(--line);}
.stat+.stat{padding-left:36px;border-left:1px solid var(--line);}
.stat b{
  display:block;font-family:var(--serif);font-weight:600;
  font-size:clamp(46px,5.4vw,68px);line-height:1.05;color:var(--teal-deep);
  letter-spacing:-.01em;margin-bottom:16px;font-variant-numeric:tabular-nums;
}
.stat strong{
  display:block;font-size:16.5px;color:var(--ink);font-weight:600;
  line-height:1.6;margin-bottom:10px;
}
.stat p{font-size:14.5px;line-height:1.8;color:var(--ink-2);}
.stat cite{
  display:block;margin-top:14px;font-size:12.5px;color:var(--ink-3);
  font-style:normal;font-family:var(--mono);
}
.stats--mini{grid-template-columns:repeat(4,minmax(0,1fr));margin:26px 0 4px;}
.stats--mini .stat{padding:22px 18px 6px 0;}
.stats--mini .stat+.stat{padding-left:18px;}
.stats--mini .stat b{font-size:32px;margin-bottom:6px;}
.stats--mini .stat strong{font-size:13px;margin-bottom:0;white-space:nowrap;}
.stats--mini .stat p,.stats--mini .stat cite{display:none;}

/* ---------- 8. 左右分栏 ---------- */
.split{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);
  gap:72px;align-items:center;
}
.split--rev{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);}
.split figure{margin:0;min-width:0;}
.split figure>img{width:100%;border-radius:var(--r);border:1px solid var(--line-2);}

/* 图片占位 */
.ph{
  position:relative;width:100%;background:var(--teal-wash);
  border:1px dashed var(--line-2);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;
  text-align:center;padding:28px;color:var(--ink-3);font-size:14px;line-height:1.9;
}
.ph--square{aspect-ratio:1;}
.ph--wide{aspect-ratio:4/3;}
.ph::before{
  content:"图位";position:absolute;top:12px;left:14px;
  font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:.08em;
}

/* ---------- 9. 处境表（scope）---------- */
.scope{
  width:100%;border-collapse:collapse;border-top:1px solid var(--line-2);
  counter-reset:scope;
}
.scope thead{display:none;}
.scope tbody th,.scope tbody td{
  text-align:left;vertical-align:top;font-size:15.5px;line-height:1.85;
}
.scope tbody tr{counter-increment:scope;display:block;padding:30px 0;border-bottom:1px solid var(--line);}
.scope tbody th{
  display:block;font-weight:400;color:var(--ink-2);
}
.scope tbody th::before{
  content:"0" counter(scope);
  display:block;font-family:var(--serif);font-size:30px;font-weight:600;
  color:var(--teal-deep);margin-bottom:12px;line-height:1;
}
.scope tbody td{display:block;padding-top:8px;}
.scope td strong{color:var(--ink);}

/* ---------- 10. 案例 bento ---------- */
.bento{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;
}
.tile{
  border:1px solid var(--line-2);border-radius:var(--r);
  padding:34px 32px;background:var(--paper);
  display:flex;flex-direction:column;gap:14px;min-width:0;
  transition:border-color .25s var(--ease),transform .25s var(--ease);
}
.tile:hover{border-color:var(--teal);transform:translateY(-2px);}
.tile h3{font-size:19px;line-height:1.5;}
.tile p{font-size:14.5px;line-height:1.85;color:var(--ink-2);flex:1;}
.tile .link-arrow{font-size:14.5px;}
.tile--lead{
  grid-column:1/-1;
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:40px;align-items:center;
  background-color:#2563eb;background-image:var(--grad);
  border-color:transparent;color:#eef2ff;
  box-shadow:0 16px 40px rgba(37,99,235,.22);
}
.tile--lead:hover{transform:none;border-color:transparent;}
.tile--lead h3{color:#fff;font-size:clamp(22px,2.4vw,30px);line-height:1.4;}
.tile--lead p{color:#eef2ff;font-size:15.5px;}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;}
.tag{
  display:inline-block;padding:4px 12px;border-radius:var(--r);
  font-size:12.5px;font-weight:600;letter-spacing:.03em;
  background:var(--teal-wash);color:var(--teal-deep);
  border:1px solid var(--line-2);
}
/* 三色 tag：亮彩恢复（蓝 / 青 / 紫） */
.tag--blue{background:#e9efff;color:#1d4ed8;border-color:#c9d8fb;}
.tag--teal{background:#e3f7fb;color:#0e7490;border-color:#b8e6ef;}
.tag--violet{background:#f2ecff;color:#6d28d9;border-color:#dcc9fb;}
.tile--lead .tag{background:transparent;color:#fff;border-color:rgba(255,255,255,.45);}
.tag--line{background:transparent;color:var(--ink-3);border:1px solid var(--line-2);}

/* ---------- 11. 文章列表 ---------- */
.rows{border-top:1px solid var(--line-2);}
.row{
  display:grid;grid-template-columns:130px minmax(0,1fr) 24px;
  gap:28px;align-items:baseline;
  padding:30px 0;border-bottom:1px solid var(--line);
}
.row time{
  font-family:var(--serif);font-size:16px;color:var(--teal-deep);
  font-variant-numeric:tabular-nums;letter-spacing:.02em;
}
.row h3{font-size:19px;line-height:1.55;margin-bottom:8px;}
.row h3 a{color:var(--ink);text-decoration:none;transition:color .2s;}
.row h3 a:hover{color:var(--teal-deep);}
.row p{font-size:14.5px;color:var(--ink-3);line-height:1.8;max-width:60ch;}
.row .go{color:var(--ink-3);justify-self:end;align-self:center;transition:transform .25s var(--ease),color .2s;}
.row:hover .go{transform:translateX(4px);color:var(--teal-deep);}

/* ---------- 12. 订阅 band ---------- */
.band{
  background-color:#2563eb;background-image:var(--grad);
  border-radius:var(--r);
  padding:60px 60px;color:#eef2ff;
  box-shadow:0 16px 40px rgba(37,99,235,.2);
}
.band h2{color:#fff;margin-bottom:14px;}
.band p{color:#eef2ff;font-size:16px;max-width:48ch;line-height:1.85;}
.band-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:56px;align-items:center;
}
/* band 内二维码卡 */
.band-qr{
  margin:0;background:#fff;border-radius:var(--r);padding:14px 14px 12px;
  width:min(230px,100%);justify-self:end;text-align:center;
  box-shadow:0 10px 26px rgba(16,26,51,.28);
}
.band-qr img{width:100%;height:auto;border-radius:2px;}
.band-qr figcaption{margin-top:10px;font-size:13px;font-weight:600;color:var(--ink-2);}
/* 深色行动块（works / services 页尾） */
.deep{
  background-color:#1d4ed8;background-image:var(--grad-deep);
  border-radius:var(--r);
  padding:56px 60px;color:#eef2ff;
}
.deep h2{color:#fff;}
.deep p{color:#eef2ff;font-size:16px;line-height:1.85;max-width:52ch;}
.deep-grid{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:44px;align-items:center;
}
.form{display:flex;flex-direction:column;gap:16px;}
.form-row{display:flex;gap:12px;align-items:stretch;}
.field{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0;}
.field label{font-size:13.5px;font-weight:600;color:var(--ink-2);}
.field input{
  width:100%;padding:14px 16px;font-family:inherit;font-size:15.5px;color:var(--ink);
  background:#fff;border:1px solid var(--line-2);border-radius:var(--r);
}
.field input:focus{outline:2px solid var(--teal);outline-offset:1px;}
.field input::placeholder{color:var(--ink-3);}
.hint{font-size:13px;color:var(--ink-3);}
/* 渐变底（band / tile--lead）内的表单与链接换浅色 */
.band .field label{color:#eef2ff;}
.band .field input{border-color:transparent;}
.band .field input::placeholder{color:#66739f;}
.band .hint{color:#eef2ff;}
.tile--lead .link-arrow,.band .link-arrow{color:#eef1ff;}
.tile--lead .link-arrow:hover,.band .link-arrow:hover{border-color:#eef1ff;}
.msg{font-size:14px;}
.msg--ok{color:#15803d;}
.msg--err{color:#b91c1c;}

/* ---------- 13. FAQ ---------- */
.faq{border-top:1px solid var(--line-2);max-width:82ch;}
.faq details{border-bottom:1px solid var(--line);}
.faq summary{
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;
  align-items:center;gap:20px;padding:26px 4px;
  font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);line-height:1.6;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{
  content:"+";font-family:var(--mono);font-size:22px;font-weight:400;
  color:var(--teal-deep);transition:transform .25s var(--ease);flex:0 0 auto;
}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq .a{padding:0 40px 28px 4px;color:var(--ink-2);font-size:15.5px;line-height:1.9;max-width:72ch;}

/* ---------- 14. 内页文章 ---------- */
.post-head{padding:64px 0 44px;border-bottom:1px solid var(--line);margin-bottom:52px;}
.post-head .meta{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  font-size:13.5px;color:var(--ink-3);margin-bottom:20px;font-family:var(--mono);
}
.post-head .h1{font-size:clamp(28px,3.6vw,44px);max-width:26em;}
.post-body{max-width:74ch;}
.post-body p{margin:0 0 26px;font-size:16.5px;line-height:2;color:var(--ink-2);}
.post-body h2{
  font-size:25px;margin:56px 0 22px;padding-top:30px;border-top:1px solid var(--line);
}
.post-body h3{font-size:20px;margin:40px 0 16px;}
.post-body strong{font-weight:600;color:var(--ink);}
.post-body blockquote{
  margin:32px 0;padding:22px 28px;background:var(--teal-wash);
  border-left:2px solid var(--teal);border-radius:0 var(--r) var(--r) 0;
  color:var(--ink-2);font-size:16px;line-height:1.9;
}
.post-body ul,.post-body ol{margin:0 0 26px;padding-left:24px;color:var(--ink-2);line-height:1.95;}
.post-body table{
  width:100%;border-collapse:collapse;margin:30px 0;font-size:15px;
  border-top:1px solid var(--line-2);
}
.post-body th,.post-body td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);}
.post-body th{font-weight:600;color:var(--ink);background:var(--paper-2);}
.post-body td{color:var(--ink-2);line-height:1.7;}
.post-body code{
  font-family:var(--mono);font-size:14px;background:var(--paper-2);
  padding:2px 8px;border-radius:var(--r);color:var(--teal-deep);
}
.post-foot{margin-top:60px;padding-top:30px;border-top:1px solid var(--line);}
.post-foot p{font-size:15px;color:var(--ink-2);line-height:1.85;}
/* 正文内链接：亮蓝 + 细下划线（替代浏览器默认样式） */
.post-body a{color:var(--teal-deep);text-decoration:underline;text-decoration-color:rgba(37,99,235,.35);text-underline-offset:3px;}
.post-body a:hover{color:var(--violet);text-decoration-color:rgba(124,58,237,.45);}

/* 内页页头（服务 / 笔记列表页专用：去掉下边线与大留白） */
.post-head--page{padding:0;border-bottom:0;margin-bottom:36px;}
.post-head--page .sub{margin-top:14px;}

/* ---------- 14b. 笔记页头卡与筛选 ---------- */
.feat{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:40px;border:1px solid #c9d8fb;border-radius:var(--r);
  padding:38px 42px;background:var(--teal-wash);margin-bottom:30px;
}
.feat-main{min-width:0;}
.feat-main h3{font-size:clamp(21px,2.2vw,26px);line-height:1.5;margin:16px 0 12px;}
.feat-main h3 a{color:var(--ink);text-decoration:none;}
.feat-main h3 a:hover{color:var(--teal-deep);}
.feat-main>p{font-size:15.5px;color:var(--ink-2);line-height:1.85;margin-bottom:20px;max-width:56ch;}
.feat-side{min-width:0;border-left:1px solid #c9d8fb;padding-left:36px;}
.feat-side h4{
  font-family:var(--sans);font-size:13px;font-weight:700;color:var(--teal-deep);
  letter-spacing:.08em;margin-bottom:14px;
}
.feat-side ol{margin:0;padding-left:20px;color:var(--ink-2);}
.feat-side li{margin:10px 0;font-size:14.5px;line-height:1.75;}
.feat-side a{color:var(--teal-deep);font-weight:600;text-decoration:none;}
.feat-side a:hover{text-decoration:underline;text-underline-offset:3px;}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px;}
.filters button{
  font-family:var(--sans);font-size:13.5px;font-weight:600;padding:8px 20px;
  border-radius:999px;border:1px solid var(--line-2);background:var(--paper);
  color:var(--ink-2);cursor:pointer;transition:background .2s,color .2s,border-color .2s;
}
.filters button:hover{border-color:var(--teal);color:var(--teal-deep);}
.filters button[aria-pressed="true"]{background:var(--teal-deep);border-color:var(--teal-deep);color:#fff;}

.crumb{font-size:13.5px;color:var(--ink-3);padding-top:36px;font-family:var(--mono);}
.crumb a{color:var(--ink-3);text-decoration:none;}
.crumb a:hover{color:var(--teal-deep);}

/* ---------- 15. 服务页 ---------- */
.svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.svc{
  border:1px solid var(--line-2);border-radius:var(--r);padding:38px 36px;
  background:var(--paper);display:flex;flex-direction:column;min-width:0;
}
.svc--lead{grid-column:1/-1;background:var(--teal-wash);border-color:var(--line-2);}
.svc .no{
  font-family:var(--serif);font-size:15px;color:var(--teal-deep);
  display:block;margin-bottom:18px;font-weight:600;letter-spacing:.04em;
}
.svc h3{font-size:21px;margin-bottom:14px;line-height:1.5;}
.svc>p{font-size:15.5px;color:var(--ink-2);line-height:1.85;margin-bottom:22px;}
.svc ul{list-style:none;margin-bottom:0;}
.svc ul li{
  position:relative;padding:7px 0 7px 22px;font-size:14.5px;color:var(--ink-2);line-height:1.8;
}
.svc ul li::before{
  content:"";position:absolute;left:2px;top:17px;width:7px;height:1.5px;
  background:var(--teal);
}
.svc .who{
  margin-top:auto;padding-top:20px;border-top:1px solid var(--line);
  font-size:13.5px;color:var(--ink-3);line-height:1.75;
}
.svc .who b{color:var(--ink-2);font-weight:600;}

/* 步骤 / 清单 */
.steps{display:grid;gap:0;border-top:1px solid var(--line-2);list-style:none;}
.steps>div,.steps li{
  display:grid;grid-template-columns:120px minmax(0,1fr);
  gap:30px;padding:32px 0;border-bottom:1px solid var(--line);
}
.steps .idx,.steps time{font-family:var(--serif);font-size:26px;color:var(--teal-deep);font-weight:600;}
.steps h3{font-size:18px;margin-bottom:8px;}
.steps p{color:var(--ink-2);font-size:15.5px;line-height:1.85;max-width:64ch;}

.neg{list-style:none;}
.neg li{
  position:relative;padding:16px 0 16px 28px;border-bottom:1px solid var(--line);
  color:var(--ink-2);font-size:15.5px;line-height:1.8;
}
.neg li::before{
  content:"";position:absolute;left:0;top:27px;width:12px;height:1.6px;
  background:var(--ink-3);
}

.opt{
  background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);
  padding:30px 32px;
}
.opt h3{font-size:17.5px;margin-bottom:10px;}
.opt p{font-size:15px;color:var(--ink-2);line-height:1.85;}
.opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}

/* ---------- 16. 案例页 ---------- */
.cases{display:grid;gap:26px;}
.case{
  border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden;background:var(--paper);
}
.case-top{padding:40px 44px 32px;border-bottom:1px solid var(--line);}
.case-top h3{font-size:23px;line-height:1.5;margin-bottom:14px;}
.case-top>p{font-size:15.5px;color:var(--ink-2);line-height:1.85;max-width:70ch;}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.case-col{padding:30px 34px;border-right:1px solid var(--line);min-width:0;}
.case-col:last-child{border-right:0;}
.case-col h4{
  font-family:var(--sans);font-size:12.5px;color:var(--teal-deep);font-weight:700;
  letter-spacing:.1em;margin-bottom:16px;
}
.case-col ul{list-style:none;}
.case-col li{
  position:relative;padding:6px 0 6px 18px;font-size:14.5px;color:var(--ink-2);line-height:1.8;
}
.case-col li::before{
  content:"";position:absolute;left:0;top:16px;width:6px;height:6px;
  border:1px solid var(--teal-deep);border-radius:1px;transform:rotate(45deg);
}
.case-col--res{background:var(--teal-wash);}
.case-body{padding:6px 44px 34px;}
.kpi{display:flex;gap:40px;flex-wrap:wrap;padding-top:22px;}
.kpi b{
  font-family:var(--serif);font-size:30px;color:var(--teal-deep);font-weight:600;
  display:block;line-height:1.2;
}
.kpi span{display:block;font-size:12.5px;color:var(--ink-3);line-height:1.6;margin-top:4px;}
.case-note{
  padding:18px 44px 26px;font-size:13px;color:var(--ink-3);line-height:1.75;
  border-top:1px solid var(--line);font-family:var(--mono);
}

/* ---------- 17. 联系页 ---------- */
.qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:640px;}
.qr-card{
  border:1px solid var(--line-2);border-radius:var(--r);padding:26px;
  background:var(--paper);text-align:center;
}
.qr-card img{
  margin:0 auto 16px;border-radius:var(--r);border:1px solid var(--line);
  width:180px;height:180px;object-fit:cover;
}
.qr-card--pri{background:var(--teal-wash);}
.qr-card b{display:block;font-size:16px;color:var(--ink);margin-bottom:4px;font-family:var(--serif);}
.qr-card span{display:block;font-size:13.5px;color:var(--ink-3);}
.contact-direct{min-width:0;}

/* ---------- 18. 页脚 ---------- */
.foot{
  border-top:1px solid var(--line-2);background:var(--paper-2);
  padding:76px 0 40px;margin-top:40px;
}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:48px;}
.foot h4{
  font-family:var(--sans);font-size:13px;color:var(--ink-3);font-weight:600;
  margin-bottom:18px;letter-spacing:.08em;
}
.foot ul{list-style:none;}
.foot li{margin-bottom:9px;font-size:14.5px;color:var(--ink-2);}
.foot a{color:var(--ink-2);text-decoration:none;transition:color .2s;}
.foot a:hover{color:var(--teal-deep);}
.foot .about{font-size:14.5px;color:var(--ink-2);line-height:1.9;max-width:36ch;margin-top:16px;}
.foot-bot{
  margin-top:56px;padding-top:24px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;
  font-size:13px;color:var(--ink-3);
}

/* ---------- 19. 进场动效 ---------- */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.rv.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none;}
  *{animation:none!important;transition:none!important;}
}

/* ---------- 20. 响应式 ---------- */
@media(max-width:1020px){
  :root{--sec-y:84px;}
  .hero-grid{gap:48px;}
  .split,.split--rev{gap:48px;}
  .bento{grid-template-columns:repeat(2,minmax(0,1fr));}
  .foot-grid{grid-template-columns:1fr 1fr;gap:40px;}
  .case-grid{grid-template-columns:1fr;}
  .case-col{border-right:0;border-bottom:1px solid var(--line);}
  .case-col:last-child{border-bottom:0;}
  .stats--mini{grid-template-columns:repeat(2,minmax(0,1fr));}
  .stats--mini .stat{padding:18px 14px 4px 0;}
  .stats--mini .stat+.stat{padding-left:14px;}
}
@media(max-width:960px){
  .nav-links,.nav-cta{display:none;}
  .burger{display:block;}
  .hero{padding:56px 0 var(--sec-y);}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:44px;align-items:start;}
  .hero-fig{max-width:440px;}
  .split,.split--rev{grid-template-columns:minmax(0,1fr);gap:40px;}
  .stats{grid-template-columns:minmax(0,1fr);}
  .stat{padding:30px 0 24px;}
  .stat+.stat{padding-left:0;border-left:0;}
  .stats--mini{grid-template-columns:repeat(2,minmax(0,1fr));}
  .stats--mini .stat{padding:18px 14px 4px 0;}
  .stats--mini .stat+.stat{padding-left:14px;}
  .band{padding:48px 36px;}
  .band-grid{grid-template-columns:minmax(0,1fr);gap:36px;}
  .deep{padding:44px 36px;}
  .deep-grid{grid-template-columns:minmax(0,1fr);gap:30px;}
  .svc-grid{grid-template-columns:minmax(0,1fr);}
  .opts{grid-template-columns:minmax(0,1fr);}
  .steps>div,.steps li{grid-template-columns:minmax(0,1fr);gap:8px;}
  .feat{grid-template-columns:minmax(0,1fr);gap:26px;padding:30px 26px;}
  .feat-side{border-left:0;padding-left:0;border-top:1px solid #c9d8fb;padding-top:22px;}
}
@media(max-width:680px){
  :root{--sec-y:64px;}
  .bento{grid-template-columns:minmax(0,1fr);}
  .tile--lead{grid-template-columns:minmax(0,1fr);gap:18px;padding:30px 26px;}
  .row{grid-template-columns:minmax(0,1fr);gap:8px;padding:24px 0;}
  .row .go{display:none;}
  .scope tbody th,.scope tbody td{padding-right:0;}
  .case-top,.case-body{padding-left:26px;padding-right:26px;}
  .case-note{padding-left:26px;padding-right:26px;}
  .band{padding:40px 24px;}
  .deep{padding:36px 24px;}
  .deep .btn-row{justify-content:flex-start!important;}
  .form-row{flex-direction:column;}
  .foot-grid{grid-template-columns:minmax(0,1fr);gap:36px;}
  .qr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .qr-card{padding:16px;}
  .qr-card img{width:120px;height:120px;}
}
@media(max-width:400px){
  .qr-grid{grid-template-columns:minmax(0,1fr);}
}
