/* geo-remote-css @leadform:2 | built 2026-09-17 09:36 */
:root{--p:#0a3d62;--p2:#0e5a8a;--acc:#e67e22;--accd:#cc690f;--bg:#f4f6f9;--card:#fff;--line:#e6ebf2;--txt:#1f2d3d;--mut:#6b7684;--accl:#fdf1e4;--shadow:0 3px 18px rgba(10,61,98,.07)}
.th1{--p:#0a3d62;--p2:#0e5a8a;--acc:#e67e22;--accd:#cc690f;--accl:#fdf1e4}
.th2{--p:#1b4332;--p2:#2d6a4f;--acc:#d4a017;--accd:#a87c0c;--accl:#fdf6e3}
.th3{--p:#23395d;--p2:#2f5376;--acc:#e0523a;--accd:#c8402a;--accl:#fdeeea}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;color:var(--txt);background:var(--bg);line-height:1.75}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
header{background:var(--p);color:#fff;position:sticky;top:0;z-index:10;border-bottom:3px solid var(--acc)}
.header-inner{max-width:1200px;margin:0 auto;padding:14px 16px;display:flex;align-items:center;gap:28px}
.logo{font-size:20px;font-weight:700;letter-spacing:.5px}
.logo span{color:var(--acc)}
nav{display:flex;gap:18px;font-size:13.5px}
nav a{color:#cfe3f5;text-decoration:none}
.tel-btn{margin-left:auto;background:var(--accd);color:#fff;padding:9px 22px;border-radius:22px;text-decoration:none;font-size:14px;font-weight:700;white-space:nowrap;box-shadow:0 2px 10px rgba(230,126,34,.35)}
.hero{color:#fff;padding:62px 0 58px;position:relative;overflow:hidden}
.hero-b1{background:radial-gradient(600px 300px at 85% -10%,rgba(230,126,34,.28),transparent 60%),radial-gradient(520px 280px at -5% 115%,rgba(46,134,222,.35),transparent 55%),linear-gradient(135deg,var(--p) 0%,var(--p2) 55%,var(--p) 100%)}
.hero-b2{background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(135deg,var(--p) 0%,var(--p2) 60%,var(--p) 100%);background-size:34px 34px}
.hero-b3{background:radial-gradient(340px 340px at 88% 18%,rgba(255,255,255,.10),transparent 70%),radial-gradient(200px 200px at 12% 82%,rgba(230,126,34,.30),transparent 70%),linear-gradient(135deg,var(--p) 0%,var(--p2) 50%,var(--p) 100%)}
.hero-b4{background:linear-gradient(105deg,var(--p) 0%,var(--p2) 45%,rgba(230,126,34,.25) 46%,transparent 46.5%),linear-gradient(135deg,var(--p) 0%,var(--p2) 100%)}
.hero::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:26px;background:linear-gradient(115deg,transparent 49.5%,var(--bg) 50%,var(--bg) 100%)}
.hero .wrap{display:flex;flex-direction:column;gap:16px;position:relative}
.crumb{font-size:12.5px;color:#9fc3e0}
.crumb a{color:#9fc3e0;text-decoration:none}
h1{font-size:32px;line-height:1.35;font-weight:700;letter-spacing:.3px}
.intro{font-size:15px;color:#dbe9f6;max-width:880px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:4px}
.btn-main{background:var(--accd);color:#fff;padding:13px 34px;border-radius:30px;text-decoration:none;font-size:17px;font-weight:800;box-shadow:0 4px 18px rgba(230,126,34,.4)}
.btn-ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff;padding:12px 26px;border-radius:30px;text-decoration:none;font-size:14.5px;font-weight:600}
.trustline{display:flex;gap:30px;flex-wrap:wrap;font-size:12.5px;color:#9fc3e0;border-top:1px solid rgba(255,255,255,.16);padding-top:14px}
.trustline b{color:#fff;font-size:16px;font-weight:700}
.phone-strip{max-width:1200px;width:calc(100% - 32px);margin:18px auto;background:linear-gradient(90deg,#fdf1e4,#fce4cb);border:1px solid #f0cfa8;border-radius:12px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:13px 22px}
.phone-strip b{color:var(--p);font-size:15.5px}
.phone-strip a{color:#fff;background:var(--accd);padding:8px 18px;border-radius:20px;text-decoration:none;font-weight:700;font-size:14px}
.m{background:var(--card);border-radius:16px;margin:18px 0;border:1px solid var(--line);box-shadow:var(--shadow)}
.m .wrap{padding:26px 24px}
h2{font-size:21px;color:var(--p);margin-bottom:16px;padding-left:12px;border-left:4px solid var(--acc);font-weight:700}
.qgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.qcard{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px}
.qcard h3{font-size:14px;color:var(--p2);margin-bottom:6px}
.qcard ul{list-style:none;font-size:12px;color:var(--mut)}
.cond{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.cond-box{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}
.cond-box b{display:block;color:var(--p2);margin-bottom:6px;font-size:13.5px}
.cond-box p{font-size:13px}
.steps{display:flex;flex-wrap:wrap;gap:8px}
.step{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:13px}
.step span{background:var(--accd);color:#fff;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
details{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:8px 0}
summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--p)}
.inner{margin-top:8px;font-size:13.5px;color:var(--mut)}
table.mat{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:10px}
table.mat th,table.mat td{border:1px solid var(--line);padding:9px;text-align:left}
table.mat th{background:var(--p);color:#fff}
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.t-box{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}
.t-box h3{font-size:14px;color:var(--p2);margin-bottom:8px}
.t-box ul{list-style:none;font-size:12.5px;color:var(--mut)}
.t-box li{margin:4px 0}
.t-box p{font-size:12.5px;color:var(--mut)}
.t-tel{font-size:22px;font-weight:800;color:var(--acc)}
.t-tel a{color:var(--acc);text-decoration:none}
.honors{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.h-badge{background:var(--accl);color:var(--p);border:1px solid #f0cfa8;border-radius:16px;padding:5px 12px;font-size:12px}
.ent{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:12px}
.ent-box{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:16px;text-align:center}
.ent-box b{display:block;font-size:22px;color:var(--acc)}
.ent-box p{font-size:12px;color:var(--mut)}
.res{font-size:13.5px;color:var(--mut)}
.res .res-lead{font-size:14px;color:#233245;line-height:1.9;margin:0 0 14px}
.res .res-grid{margin:0 0 14px}
.res .res-tip{background:var(--accl);border-left:3px solid var(--acc);padding:10px 14px;border-radius:6px;font-size:13px;color:#233245;margin:0 0 8px}
.reports{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:4px}
.r-card{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px;text-decoration:none;color:var(--txt);display:flex;flex-direction:column;gap:8px;transition:.2s}
.r-card:hover{box-shadow:var(--shadow)}
.r-card img{width:100%;height:130px;object-fit:cover;object-position:top;border-radius:8px}
.r-card h3{font-size:13.5px;color:var(--p2);line-height:1.4;min-height:38px}
.r-card span{font-size:12px;color:var(--acc);font-weight:600}
.cases{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.case{display:flex;gap:14px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:13.5px;position:relative}
.case img{width:86px;height:110px;object-fit:cover;border-radius:6px;flex-shrink:0}
.case-tag{display:inline-block;margin-top:6px;font-size:11px;color:var(--p2);background:var(--accl);border-radius:10px;padding:2px 8px}
.advs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.adv{background:var(--bg);border-left:3px solid var(--acc);border-radius:8px;padding:12px;font-size:13.5px}
.adv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.adv-card{text-align:center;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:16px}
.adv-card img{width:72px;height:72px;border-radius:50%;object-fit:cover}
.adv-card h3{font-size:14px;color:var(--p2);margin:8px 0 2px;border:none;padding:0}
.adv-card p{font-size:12px;color:var(--mut)}
.cs{display:flex;gap:14px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:12px}
.cs img{width:88px;height:88px}
.cs b{color:var(--p);font-size:14.5px}
.cs p{font-size:12.5px;color:var(--mut)}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.tcard{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;position:relative}
.t-tag{background:var(--accd);color:#fff;font-size:11px;border-radius:8px;padding:2px 8px}
.tcard h3{font-size:14px;color:var(--p2);margin:8px 0 4px}
.tcard p{font-size:12px;color:var(--mut)}
.t-state{font-size:11px;color:#2e7d32;background:#e8f5e9;border-radius:8px;padding:2px 8px}
.t-tel-link{display:inline-block;margin-top:8px;background:var(--p2);color:#fff;padding:4px 14px;border-radius:14px;text-decoration:none;font-size:12px}
.t-desc{font-size:11.5px;color:var(--mut);margin-top:6px;border-top:1px dashed var(--line);padding-top:6px}
.kw-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px 18px}
.kw-list li{font-size:13px;color:var(--p2);position:relative;padding-left:16px}
.kw-list li a{color:var(--p2);text-decoration:none;border-bottom:1px dashed var(--line)}
.kw-list li a:hover{color:var(--acc);border-bottom-style:solid}
.kw-list li::before{content:'›';position:absolute;left:2px;color:var(--acc);font-weight:700}
/* 2026-08-24 新增卡槽模块样式：荣誉/分公司/对比表/须知/数据/保障 */
.honors{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.honor{background:var(--accl);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:12.5px;color:var(--p2);display:flex;align-items:center;gap:8px}
.honor b{color:var(--acc)}
.br-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.br-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.br-card h3{font-size:13.5px;color:var(--p2);margin-bottom:4px}
.br-card p{font-size:12px;color:var(--mut)}
.br-card .dim{color:#b4b2a9;font-size:11.5px}
table.cmp{width:100%;border-collapse:collapse;font-size:12.5px}
table.cmp th,table.cmp td{border:1px solid var(--line);padding:8px 10px;text-align:left}
table.cmp th{background:var(--p);color:#fff}
ul.notice{list-style:none;display:grid;gap:8px}
ul.notice li{font-size:12.5px;color:var(--txt);background:var(--bg);border-left:3px solid var(--acc);padding:8px 12px;border-radius:0 8px 8px 0}
.data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.d-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;text-align:center}
.d-card b{display:block;font-size:22px;color:var(--p2)}
.d-card p{font-size:12px;color:var(--mut);margin-top:2px}
.guarantee{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.g-card{background:var(--accl);border:1px solid var(--line);border-radius:10px;padding:14px}
.g-card b{font-size:13.5px;color:var(--p2)}
.g-card p{font-size:12px;color:var(--mut);margin-top:4px}
/* STIE_CSS_FILL_V1（2026-09-17 体检补漏）：以下规则原本**一条都没有** —— markup 里在用、样式为空 → 形态 B 直接裸 div
   （.adv-grid-n/.advn＝槽0 优势的编号卡形态；.st-grid＝槽22 统计卡容器（.st-card 有样式、容器没有 → 卡片挤成一列）；
    .honor-rows/.hr＝槽9 荣誉的行式形态，改用 ent-hgrid 同一套视觉，避免"有内容没排版"） */
.adv-grid-n{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.advn{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px}
.advn b{flex:0 0 auto;font-size:13px;color:#fff;background:var(--acc);border-radius:6px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.advn p{font-size:13px;color:var(--txt);line-height:1.7;margin:0}
.st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.st-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;text-align:center}
.st-card b{display:block;font-size:21px;color:var(--p2)}
.st-card span{font-size:12px;color:var(--mut)}
.honor-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.honor-rows .hr{background:var(--accl);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:12.5px;color:var(--p2);display:flex;align-items:center;gap:8px;margin:0}
.honor-rows .hr p{margin:0}

/* ══════════════ STIE_LAYOUT_FIX_V1（2026-09-17 上站前布局体检）══════════════
   起因：客户站（tpl-02）反馈「内容都靠左」+「电话按钮下面一大块空白」。真机实测（1920 视口）：
     · `.t2-cols` 是 `1fr 340px` 两列，而 `<aside class="t2-side">` 是**空标签**（通用化后"没有租户数据
       就不渲染"很常见）→ 右侧整列 340px 全空 → 视觉上"内容挤在左边"；
     · hero 高 609，最后一个有文字的节点底部到 hero 底部还有 **164px** —— 装饰卡 `::after` 掉到了下面。
   两处都是**纯 CSS 问题** ⇒ 改这里即可，**已发布的存量页面无需重新生成**，刷新就生效。
   回归体检：`php bin/check-layout.php --site=N`（真机渲染 72 套模板 + 测几何，见该脚本头注释）。 */

/* ① tpl-02 hero：原规则想把"左侧文字 / 右侧装饰卡"分两栏，但 markup 里那批元素
   （.crumb/.hero-kick/h1/.intro/.hero-btns/.trustline）**没有外层包裹** → 每一个都成了 grid item，
   按"逐行填充"两两交错排布，装饰卡 ::after 被挤到第 4 行左侧 → 形成一大块空白。
   修法（不改 markup）：真元素统一锁定第 1 列，装饰卡占第 2 列整高。 */
body.tpl-02 .hero .wrap{grid-template-columns:minmax(0,1.15fr) .85fr;gap:14px 40px;align-items:center}
body.tpl-02 .hero .wrap>*{grid-column:1;min-width:0}
body.tpl-02 .hero .wrap::after{grid-column:2;grid-row:1/-1;align-self:center}

/* ② 侧栏内容为空时**不留空列**（`:has()` 让存量页立即生效；生成端另有 `.single` 类给新页兜底，
   不依赖 :has 支持 —— 两条路都在，任一条生效即可） */
body.tpl-02 .t2-cols:has(> .t2-side:empty),
body.tpl-02 .t2-cols.single{grid-template-columns:minmax(0,1fr)}
body.tpl-08 .t8-grid:has(> .t8-side:empty),
body.tpl-08 .t8-grid.single{grid-template-columns:minmax(0,1fr)}
body.tpl-11 .t11-grid:has(> .t11-side:empty),
body.tpl-11 .t11-grid.single{grid-template-columns:minmax(0,1fr)}
body.ent-02 .ent-body:has(> .ent-side:empty),
body.ent-08 .ent-body:has(> .ent-side:empty),
body.ent-11 .ent-body:has(> .ent-side:empty),
body.ent-21 .ent-body:has(> .ent-side:empty),
body.ent-02 .ent-body.single,
body.ent-08 .ent-body.single,
body.ent-11 .ent-body.single,
body.ent-21 .ent-body.single,
.ent-body.single{grid-template-columns:minmax(0,1fr)}
/* ⚠️ 权重必须带 `body.ent-XX` 前缀：原来两栏 grid 写在 `body.ent-02 .ent-body{...}`（0,2,1），
   只写 `.ent-body:has()`（0,2,0）会被它盖掉 —— 首版就这么错过一次（体检显示 ent 侧栏仍占列）。 */
/* STIE_CSS_FILL_V2（2026-09-17 CSS 类覆盖体检的**最高影响项**）：槽4「依据与规范」的政策卡
   三个类（.pol-grid 容器 / .pol-card 卡片 / .pol-tag 角标）**一条排版规则都没有**（只在 body.rad-* 的
   通用圆角名单里出现过 → 一直被误判为"已覆盖"）。后果：全站 237 个页面里这块是裸 div 竖排。
   现在按数据卡/保障卡同一套视觉补齐（grid 自适应列 + 卡片底 + 角标 chip）。 */
.pol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.pol-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}
.pol-card b{display:block;font-size:14px;color:var(--p2);line-height:1.6;margin:6px 0}
.pol-card p{font-size:12.5px;color:var(--mut);line-height:1.75;margin:0}
.pol-tag{display:inline-block;font-size:11.5px;line-height:1.6;color:#fff;background:var(--acc);border-radius:4px;padding:1px 8px}
.qa-item summary{cursor:pointer}
.policies details{margin-bottom:6px}
.policies summary{font-size:13px;color:var(--p2);cursor:pointer}
.policies .inner{font-size:12.5px;color:var(--mut);padding:6px 0 10px}
.policies{font-size:12.5px}
.note{font-size:11.5px;color:var(--mut);margin-top:10px}
.phone-cta{max-width:1200px;width:calc(100% - 32px);margin:18px auto;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;border-radius:16px;padding:30px;text-align:center;box-shadow:0 6px 24px rgba(10,61,98,.18)}
.phone-cta h2{color:#fff;border:none;padding:0;margin-bottom:6px}
.phone-cta p{font-size:13.5px;color:#cfe3f5;margin-bottom:14px}
.phone-cta a{display:inline-block;background:var(--accd);color:#fff;font-size:20px;font-weight:800;padding:11px 36px;border-radius:28px;text-decoration:none}
.related{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.related a{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:13px;color:var(--p2);text-decoration:none}
footer{background:var(--p);color:#cfe3f5;padding:24px 0;margin-top:28px;font-size:12px}
.footer-inner{max-width:1200px;margin:0 auto;padding:0 16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
footer b{color:#fff}
@media(max-width:768px){.hero h1{font-size:22px}.nav{display:none}.trustline{gap:12px}.m .wrap{padding:18px 14px}}
/* ===== 10 套结构模板（2026-08-24，body.tpl-0X 布局变体，非换色） ===== */
/* tpl-01 经典居中（默认即此，无额外规则） */
/* tpl-02 左右分栏 hero + 装饰信息卡 */
body.tpl-02 .hero{padding:56px 0 60px}
body.tpl-02 .hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
body.tpl-02 .hero h1{font-size:34px;line-height:1.4}
body.tpl-02 .hero .wrap::after{content:'';min-height:240px;border-radius:18px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),radial-gradient(260px 260px at 78% 22%,rgba(230,126,34,.35),transparent 70%);background-size:26px 26px,26px 26px,auto;position:relative}
body.tpl-02 .hero .wrap::before{content:'亿级数据 · 35 城实体 · 4000+ 顾问';position:absolute;right:8%;bottom:10%;z-index:1;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:10px 18px;font-size:13px;color:#fff;letter-spacing:1px}
body.tpl-02 .m{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 24px;box-shadow:0 8px 26px rgba(10,61,98,.08)}
/* tpl-03 大图 Banner 高 hero */
body.tpl-03 .hero{padding:88px 0 96px}
body.tpl-03 .hero h1{font-size:40px;line-height:1.35;max-width:780px}
body.tpl-03 .hero .wrap::after{content:'';position:absolute;right:-4%;top:12%;width:44%;height:170px;border-radius:20px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 16px,transparent 16px 32px);border:1px dashed rgba(255,255,255,.28)}
body.tpl-03 .m{padding:26px 0;border-bottom:1px dashed var(--line);margin-bottom:6px}
/* tpl-04 全卡片网格风 */
body.tpl-04 .hero{padding:48px 0 52px}
body.tpl-04 .hero h1{font-size:30px;text-align:center}
body.tpl-04 .hero .trustline{justify-content:center}
body.tpl-04 .m{background:var(--card);border-radius:18px;box-shadow:0 10px 30px rgba(10,61,98,.10);padding:26px;margin:14px 0}
/* tpl-05 极简线条风 */
body.tpl-05 .hero{padding:70px 0 66px;background:linear-gradient(135deg,var(--p) 0%,var(--p2) 100%)}
body.tpl-05 .hero h1{font-size:38px;font-weight:800;text-align:left}
body.tpl-05 .m{background:transparent;border:none;border-left:3px solid var(--acc);padding:10px 0 10px 18px}
body.tpl-05 .adv,body.tpl-05 .cond-box,body.tpl-05 .qcard{border-radius:0;box-shadow:none;border-color:var(--line)}
/* tpl-06 CTA 突出风 */
body.tpl-06 .hero{padding:58px 0 60px}
body.tpl-06 .hero h1{font-size:32px}
body.tpl-06 .btn-main{font-size:17px;padding:14px 44px;border-radius:30px}
body.tpl-06 .m{padding:24px 0;border-bottom:2px solid var(--accl)}
body.tpl-06 .phone-strip{border-radius:14px}
/* tpl-07 商务杂志式（顶部细条 + 居中引用装饰） */
body.tpl-07 header{border-top:4px solid var(--acc)}
body.tpl-07 .hero{text-align:center}
body.tpl-07 .hero h1{font-size:36px;font-weight:800}
body.tpl-07 .hero .sub{font-size:16px;max-width:760px;margin:0 auto}
body.tpl-07 .hero .wrap::before{content:'“ ”';position:absolute;top:8px;left:50%;transform:translateX(-50%);font-size:120px;line-height:1;color:rgba(255,255,255,.10);font-family:Georgia,serif}
body.tpl-07 .m{padding:24px 0;margin:10px 0}
/* tpl-08 区块色块交替 */
body.tpl-08 .hero{padding:54px 0}
body.tpl-08 .hero h1{font-size:32px}
body.tpl-08 .t8-main .m:nth-of-type(odd){background:var(--accl);border-radius:16px;padding:24px 26px}
body.tpl-08 .t8-main .m:nth-of-type(even){background:transparent;border-left:4px solid var(--p);padding:24px 20px}
body.tpl-08 .t8-main .m:nth-of-type(even) h2{color:var(--p)}
/* tpl-09 斜切 hero + 居中 header */
body.tpl-09 .header-inner{justify-content:center;text-align:center}
body.tpl-09 .hero{clip-path:polygon(0 0,100% 0,100% 86%,0 100%)}
body.tpl-09 .hero h1{font-size:36px}
body.tpl-09 .m{border-radius:10px}
body.tpl-09 .m h2{border-left:none;border-bottom:2px solid var(--acc);padding-bottom:6px}
/* tpl-10 大圆角卡片堆叠 */
body.tpl-10 .hero{padding:60px 0;border-radius:0 0 44px 44px}
body.tpl-10 .hero h1{font-size:34px}
body.tpl-10 .m{background:var(--card);border-radius:24px;box-shadow:0 14px 44px rgba(10,61,98,.12);padding:28px 30px;margin:18px 0}
body.tpl-10 .phone-cta{border-radius:26px;padding:38px}
body.tpl-10 .btn-main{font-size:16px;padding:12px 40px;border-radius:26px}
/* ===== 10 套骨架级模板结构 CSS（2026-08-25：结构大变） ===== */
body.tpl-02 .t2-cols{display:grid;grid-template-columns:1fr 340px;gap:16px;max-width:1200px;margin:0 auto;padding:0 16px;align-items:start}
body.tpl-02 .t2-side .m{border-left:3px solid var(--acc);border-radius:0 10px 10px 0}
body.tpl-02 .t2-side .reports{grid-template-columns:1fr}
body.tpl-02 .t2-side .r-card img{height:70px}
body.tpl-02 .cases{grid-template-columns:1fr}
body.tpl-03 header{display:none}
body.tpl-03 .t3-nav{position:absolute;top:22px;left:16px;right:16px;z-index:2;display:flex;gap:18px;justify-content:center;font-size:13px}
body.tpl-03 .t3-nav a{color:rgba(255,255,255,.85);text-decoration:none}
body.tpl-03 .hero{padding-top:96px}
body.tpl-04 .t4-hero .hero{padding:40px 0 44px}
body.tpl-04 .t4-hero .hero h1{font-size:28px}
body.tpl-04 .t4-masonry{max-width:1200px;margin:0 auto;padding:10px 16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
body.tpl-04 .t4-masonry .m{margin:0;break-inside:avoid}
body.tpl-04 .t4-masonry .m:nth-child(odd){transform:translateY(14px)}
body.tpl-05 header{position:static;border-bottom:none}
body.tpl-05 .t5-head{max-width:1200px;margin:0 auto;padding:44px 16px 8px}
body.tpl-05 .t5-h1{font-size:30px;color:var(--p2);line-height:1.4;margin-bottom:10px}
body.tpl-05 .t5-intro{color:var(--mut);font-size:14.5px;margin-bottom:18px;max-width:820px}
body.tpl-05 .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:10px auto;max-width:1200px}
body.tpl-05 .m h2{color:var(--p)}
body.tpl-06 .t6-hero .hero h1{font-size:34px}
body.tpl-06 .content.t6 .m{counter-increment:sec;position:relative;padding-left:64px}
body.tpl-06 .content.t6 .m::before{content:counter(sec,decimal-leading-zero);position:absolute;left:0;top:18px;font-size:34px;font-weight:800;color:var(--accl);opacity:.7;font-family:Georgia,serif}
body.tpl-07 .content.t7 .m{background:var(--accl);border-radius:16px;padding:26px 30px;margin:18px auto;max-width:1200px}
body.tpl-07 .content.t7 .m h2{color:var(--p)}
body.tpl-08 .t8-grid{max-width:1200px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}
body.tpl-08 .t8-main .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px}
body.tpl-08 .t8-side{position:sticky;top:84px}
body.tpl-08 .t8-side .m{border-left:3px solid var(--acc);border-radius:0 10px 10px 0}
body.tpl-08 .t8-card{background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;border-radius:12px;padding:18px;margin-bottom:12px}
body.tpl-08 .t8-card b{font-size:15px}
body.tpl-08 .t8-card p{font-size:12px;color:#cfe3f5;margin:4px 0 10px}
body.tpl-08 .t8-card .btn-main{color:#fff}
body.tpl-09 .data-strip{max-width:1200px;margin:14px auto;padding:12px 16px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:var(--p);color:#fff;border-radius:12px}
body.tpl-09 .data-strip span{text-align:center;font-size:12.5px;color:#cfe3f5}
body.tpl-09 .data-strip b{display:block;font-size:20px;color:#fff}
footer.f-dark{background:#0f2438}
header.h-center .header-inner{justify-content:center;text-align:center}
header.h-mini .header-inner{padding:8px 16px}
header.h-mini .logo{font-size:16px}
header.h-mini .nav{display:none}
footer.f-simple .footer-inner{justify-content:center;gap:16px}
@media(max-width:768px){body.tpl-02 .t2-cols,body.tpl-04 .t4-masonry,body.tpl-08 .t8-grid{grid-template-columns:1fr}body.tpl-04 .t4-masonry .m:nth-child(odd){transform:none}body.tpl-09 .data-strip{grid-template-columns:1fr 1fr}}
.std-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.std-grid.single{grid-template-columns:1fr}
.std-grid.single .std-item{display:grid;grid-template-columns:96px 1fr;gap:8px;align-items:baseline}
.std-grid.single .std-item b{text-align:right}
.std-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.std-card h3{color:var(--p);font-size:15px;margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--accl)}
.std-item{font-size:12.5px;color:var(--mut);margin:0 0 8px;line-height:1.7}
.std-item b{color:var(--p2)}
/* ===== 10 套扩展骨架模板 CSS（tpl-11~20，2026-08-25） ===== */
body.tpl-11 .t11-grid{max-width:1200px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}
body.tpl-11 .t11-side{position:sticky;top:84px}
body.tpl-11 .t11-toc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px}
body.tpl-11 .t11-toc b{display:block;color:var(--p);margin-bottom:8px}
body.tpl-11 .t11-toc a{display:block;font-size:13px;color:var(--p2);text-decoration:none;padding:4px 0;border-bottom:1px dashed var(--line)}
body.tpl-11 .t11-tel{margin-top:8px;background:var(--accl);border-radius:8px;text-align:center;font-weight:700;color:var(--p)!important}
body.tpl-11 .t11-side .m{border-left:3px solid var(--acc);border-radius:0 10px 10px 0}
body.tpl-11 .t11-main .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px}
body.tpl-12 .t12-tl{max-width:1200px;margin:0 auto;padding:18px 16px 4px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
body.tpl-12 .t12-tl span{font-size:12.5px;color:var(--mut);background:var(--card);border:1px solid var(--line);border-radius:20px;padding:6px 14px}
body.tpl-12 .t12-tl span::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--acc);margin-right:6px}
body.tpl-13 .content.t13 .m{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin:10px auto;max-width:1200px}
body.tpl-13 .content.t13 .m h2{font-size:15px;background:var(--accl);display:inline-block;padding:3px 12px;border-radius:6px}
body.tpl-14 .t14-grid{max-width:1200px;margin:0 auto;padding:10px 16px;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:start}
body.tpl-14 .t14-grid .m{margin:0;border-radius:8px;border:1px solid var(--line);padding:14px 16px;background:var(--card)}
/* 长内容模块（申报标准/材料清单 m-lg）在混排模板里跨全列，防单列被大表撑高 */
body.tpl-04 .t4-masonry .m-lg,body.tpl-14 .t14-grid .m-lg{grid-column:1/-1;background:var(--card)}
body.tpl-14 .t14-grid .m h2{font-size:14px}
body.tpl-15 .content.t15 .m{counter-increment:sec15;position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:12px auto;max-width:1200px}
body.tpl-15 .content.t15 .m h2::before{content:'0' counter(sec15);display:inline-block;background:var(--accd);color:#fff;border-radius:6px;padding:2px 8px;margin-right:8px;font-size:12px;vertical-align:middle}
body.tpl-16 .t16 .hero .wrap{max-width:960px}
body.tpl-16 .t16 .m{max-width:960px;margin:26px auto;padding:0 16px;border:none;background:none;box-shadow:none}
body.tpl-16 .t16 .m h2{font-size:17px;color:var(--p)}
body.tpl-16 .t16 .hero{padding:34px 0}
body.tpl-17 .t17-head{max-width:1200px;margin:0 auto;padding:48px 16px 10px}
body.tpl-17 .t17-head h1{font-size:34px;color:var(--p);line-height:1.35;letter-spacing:.5px}
body.tpl-17 .t17-line{width:72px;height:4px;background:var(--acc);border-radius:2px;margin-top:14px}
body.tpl-17 .hero{display:none}
body.tpl-17 .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:12px auto;max-width:1200px}
body.tpl-18 .t18-steps{max-width:1200px;margin:0 auto;padding:18px 16px 0;display:flex;gap:6px;flex-wrap:wrap}
body.tpl-18 .t18-steps span{font-size:12px;color:var(--mut);background:var(--card);border:1px solid var(--line);border-radius:6px;padding:5px 12px;flex:1;text-align:center;min-width:60px}
body.tpl-18 .t18-steps span.on{background:var(--accd);color:#fff;border-color:var(--acc);font-weight:700}
body.tpl-19 .content .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 24px}
body.tpl-19 #faq{background:linear-gradient(135deg,var(--accl),#fff)}
body.tpl-19 #faq .wrap{padding:26px 24px}
body.tpl-20{filter:grayscale(1)}
body.tpl-20 .hero{background:var(--p)!important}
body.tpl-20 .m{border-radius:0;border:1px solid #ddd;box-shadow:none}
body.tpl-20 .btn-main,body.tpl-20 .btn-ghost{border-radius:0}
body.tpl-20 .t-tag,body.tpl-20 .case-tag{border-radius:0}
@media(max-width:768px){body.tpl-11 .t11-grid,body.tpl-14 .t14-grid{grid-template-columns:1fr}body.tpl-11 .t11-side{position:static}body.tpl-12 .t12-tl{gap:6px}body.tpl-18 .t18-steps span{min-width:52px}}
/* 移动端模板适配 */
@media(max-width:768px){body.tpl-02 .hero .wrap{display:flex;flex-direction:column;gap:14px}body.tpl-02 .hero .wrap::after,body.tpl-02 .hero .wrap::before,body.tpl-03 .hero .wrap::after,body.tpl-07 .hero .wrap::before{display:none}}

/* ============ 企业站模板体系（ent-01~20 · 深蓝商务） ============ */
.ent-nav{background:#0a3d62;color:#fff;position:sticky;top:0;z-index:100}
.ent-nav-inner{max-width:1200px;margin:0 auto;padding:0 16px;height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ent-logo{font-size:19px;font-weight:800;color:#fff;text-decoration:none;white-space:nowrap}
.ent-logo span{color:#e67e22}
.ent-menu{display:flex;gap:16px;font-size:13.5px;flex-wrap:wrap}
.ent-menu a{color:rgba(255,255,255,.9);text-decoration:none}
.ent-menu a:hover{color:#e67e22}
.ent-tel{background:var(--accd);color:#fff;padding:6px 16px;border-radius:18px;text-decoration:none;font-weight:700;font-size:13px;white-space:nowrap}
.ent-hero{background:linear-gradient(135deg,#0a3d62,#134e82);color:#fff;padding:52px 0}
.ent-hero .ent-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.ent-crumb{font-size:12.5px;color:#a8c8e8;margin:0 0 10px}
.ent-crumb a{color:#a8c8e8}
.ent-hero h1{font-size:32px;line-height:1.4;margin:0 0 12px}
.ent-intro{color:#cfe3f5;font-size:14.5px;line-height:1.9;max-width:860px;margin:0 0 18px}
.ent-hero-btns{display:flex;gap:12px;margin-bottom:22px}
.ent-btn-main{background:var(--accd);color:#fff;padding:11px 26px;border-radius:6px;text-decoration:none;font-weight:700;font-size:15px;display:inline-block}
.ent-btn-ghost{border:1px solid rgba(255,255,255,.5);color:#fff;padding:11px 22px;border-radius:6px;text-decoration:none;font-size:14px;display:inline-block}
.ent-trustline{display:flex;gap:26px;flex-wrap:wrap;font-size:13px;color:#cfe3f5}
.ent-trustline b{display:block;font-size:19px;color:#fff}
.ent-block{padding:40px 0}
.ent-block .ent-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.ent-block h2{font-size:23px;color:#0a3d62;margin:0 0 22px;position:relative;padding-left:14px}
.ent-block h2::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:5px;background:#e67e22;border-radius:3px}
.ent-bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ent-bcard{background:#fff;border:1px solid #dfe6ee;border-radius:10px;padding:18px;text-decoration:none;color:#233245;display:block;transition:border-color .15s}
.ent-bcard:hover{border-color:#e67e22}
.ent-bcard h3{font-size:16px;color:#0a3d62;margin:0 0 8px}
.ent-bcard p{font-size:13px;color:#6b7684;line-height:1.7;margin:0 0 10px}
.ent-bcard span{font-size:12.5px;color:#e67e22}
.ent-bcard.on{border-color:#e67e22;background:#fff8f0}
.ent-about p{font-size:14px;line-height:2;color:#3a4657;max-width:900px}
.ent-data{display:flex;gap:30px;flex-wrap:wrap;margin-top:18px}
.ent-data span{font-size:13px;color:#6b7684}
.ent-data b{display:block;font-size:20px;color:#0a3d62}
.ent-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.ent-step{background:#f5f8fc;border:1px solid #e2e9f1;border-radius:10px;padding:18px}
.ent-step b{font-size:22px;color:#e67e22;font-weight:800}
.ent-step h3{font-size:15px;color:#0a3d62;margin:8px 0 6px}
.ent-step p{font-size:13px;color:#6b7684;line-height:1.7;margin:0}
.ent-cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.ent-case{background:#fff;border:1px solid #dfe6ee;border-radius:10px;padding:18px}
.ent-case-tag{display:inline-block;background:#eaf3de;color:#3b6d11;font-size:12px;padding:2px 10px;border-radius:10px;margin-bottom:10px}
.ent-case h3{font-size:15px;color:#0a3d62;margin:0 0 8px}
.ent-case p{font-size:13px;color:#6b7684;line-height:1.7;margin:0 0 8px}
.ent-case-dur{font-size:12.5px;color:#e67e22}
.ent-hgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.ent-honor{background:#fff;border:1px solid #dfe6ee;border-radius:8px;padding:12px 14px;display:flex;align-items:center;gap:8px}
.ent-honor b{color:#2e7d32}
.ent-honor p{font-size:13px;color:#3a4657;margin:0}
.ent-note{font-size:12.5px;color:#6b7684;margin-top:12px}
.ent-tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.ent-teamm{background:#fff;border:1px solid #dfe6ee;border-radius:10px;padding:18px;text-align:center}
.ent-av{width:52px;height:52px;border-radius:50%;background:#0a3d62;color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.ent-teamm h3{font-size:15px;color:#0a3d62;margin:0 0 6px}
.ent-teamm p{font-size:12.5px;color:#6b7684;margin:0 0 6px}
.ent-teamm span{font-size:12px;color:#e67e22}
.ent-newslist{display:flex;flex-direction:column;gap:12px}
.ent-news{background:#fff;border:1px solid #dfe6ee;border-radius:10px;padding:14px 16px}
.ent-news-date{font-size:12px;color:#e67e22;margin-right:10px}
.ent-news h3{font-size:14.5px;margin:0 0 4px;display:inline}
.ent-news h3 a{color:#0a3d62;text-decoration:none}
.ent-news p{font-size:12.5px;color:#6b7684;margin:4px 0 0}
.ent-faqs details{background:#fff;border:1px solid #dfe6ee;border-radius:8px;padding:12px 16px;margin-bottom:8px}
.ent-faqs summary{cursor:pointer;font-weight:600;font-size:14px;color:#0a3d62}
.ent-faqs .inner{padding-top:8px;font-size:13px;color:#3a4657;line-height:1.8}
.ent-cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.ent-cont{background:#fff;border:1px solid #dfe6ee;border-radius:10px;padding:18px}
.ent-cont h3{font-size:15px;color:#0a3d62;margin:0 0 8px}
.ent-cont p{font-size:13px;color:#6b7684;line-height:1.7;margin:0 0 4px}
.ent-cont-tel{color:#e67e22;font-weight:700}
.ent-cont-cta{background:#0a3d62;border-color:#0a3d62;text-align:center}
.ent-cont-cta h3,.ent-cont-cta p{color:#fff}
.ent-cont-cta .ent-btn-main{margin-top:10px;display:inline-block}
.ent-cont-qr{text-align:center}
.ent-cont-qr img{width:132px;height:132px;object-fit:contain;margin:8px auto 6px;display:block;border:1px solid #e2e9f1;border-radius:8px;background:#fff;padding:4px}
.ent-cont-qr p{color:#6b7684;font-size:12.5px}
.ent-footer{background:#07294a;color:#b9c8d8;padding:26px 0;font-size:13px}
.ent-footer .ent-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.ent-fnav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:14px}
.ent-fnav b{font-size:16px;color:#fff}
.ent-flinks{display:flex;gap:14px;flex-wrap:wrap}
.ent-flinks a{color:#b9c8d8;text-decoration:none}
.ent-fmeta{display:flex;gap:20px;flex-wrap:wrap;color:#8aa3bc;border-top:1px solid rgba(255,255,255,.12);padding-top:14px;font-size:12.5px}
.ent-fmeta a{color:#fff}
.ent-empty{color:#6b7684;font-size:13px}
/* 双栏/侧栏布局 */
body.ent-02 .ent-body,body.ent-08 .ent-body{display:grid;grid-template-columns:1fr 340px;gap:26px;max-width:1240px;margin:0 auto;padding:0 16px}
body.ent-02 .ent-main,body.ent-08 .ent-main{min-width:0}
body.ent-02 .ent-side,body.ent-08 .ent-side{display:flex;flex-direction:column;gap:0}
body.ent-02 .ent-side .ent-block,body.ent-08 .ent-side .ent-block{padding:24px 0;border-bottom:1px dashed #d7dfe8}
body.ent-08 .ent-side .ent-block:first-child{position:sticky;top:70px}
/* 左目录（ent-11） */
body.ent-11 .ent-body{display:grid;grid-template-columns:1fr 340px;gap:26px;max-width:1240px;margin:0 auto;padding:0 16px}body.ent-11 .ent-side .ent-block:first-child{position:sticky;top:70px}
body.ent-11 .ent-main{min-width:0}
body.ent-11 .ent-side{display:flex;flex-direction:column;gap:0}
body.ent-11 .ent-side .ent-block{padding:24px 0}
/* 窄栏聚焦（ent-16） */
body.ent-16 .ent-block .ent-wrap,body.ent-16 .ent-hero .ent-wrap{max-width:1100px}
/* 大圆角堆叠（ent-10） */
body.ent-10 .ent-block{background:transparent}
body.ent-10 .ent-block .ent-wrap{max-width:1100px}
body.ent-10 .ent-bcard,body.ent-10 .ent-case,body.ent-10 .ent-step{border-radius:20px;border-width:1px}
body.ent-10 .ent-block h2::before{border-radius:3px}
/* 杂志编号（ent-06）：区块标题加编号 */
body.ent-06 .ent-block h2{display:flex;align-items:center;gap:12px}
body.ent-06 .ent-block h2::after{content:attr(data-n);font-size:13px;color:#fff;background:#e67e22;border-radius:6px;padding:2px 8px}
/* 色块分区（ent-07）：区块交替底色 */
body.ent-07 .ent-block:nth-of-type(odd){background:#f2f6fa}
body.ent-07 .ent-hero{background:linear-gradient(135deg,#0a3d62,#134e82)}
/* 深色商务（ent-09）：数据/荣誉区深色 */
body.ent-09 .ent-hgrid{background:#0a3d62;border-radius:12px;padding:20px}
body.ent-09 .ent-honor{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15)}
body.ent-09 .ent-honor p{color:#cfe3f5}
/* 标签色块（ent-15）：区块标题带彩色标签 */
body.ent-15 .ent-block h2{display:flex;align-items:center;gap:10px}
body.ent-15 .ent-block h2::before{position:static;width:auto;height:auto;background:#e67e22;color:#fff;font-size:12px;padding:2px 10px;border-radius:4px}
/* ent-12：流程步骤横排（原竖向时间线设计用户不接受，统一横排 4 列） */
body.ent-12 .ent-flow{max-width:1200px}
/* 侧栏模板（主列窄）：流程步骤 4 列过窄 → 2 列 */
body.ent-02 .ent-flow,body.ent-08 .ent-flow,body.ent-11 .ent-flow,body.ent-21 .ent-flow{grid-template-columns:repeat(2,1fr)}
/* 数据报表（ent-13）：荣誉区数据条放大 */
body.ent-13 .ent-data{font-size:15px;background:#f5f8fc;border-radius:10px;padding:18px}
body.ent-13 .ent-honor{border-left:4px solid #e67e22}
/* 密集卡片（ent-14）：双列小卡 */
body.ent-14 .ent-bgrid{grid-template-columns:repeat(2,1fr)}
body.ent-14 .ent-bcard{padding:14px}
/* 巨幅标题（ent-17） */
body.ent-17 .ent-hero{padding:88px 0}
body.ent-17 .ent-hero h1{font-size:44px;letter-spacing:1px}
/* 步骤引导（ent-18）：hero 下步骤条 */
body.ent-18 .ent-flow{grid-template-columns:repeat(4,1fr)}
body.ent-18 .ent-step{text-align:center;padding-top:26px}
body.ent-18 .ent-step b{position:absolute}
/* 资讯前置（ent-19）：新闻区块在业务前 */
/* 黑白极简（ent-20） */
body.ent-20{background:#fff}
body.ent-20 .ent-nav{background:#1f2d3d}
body.ent-20 .ent-hero{background:#1f2d3d;color:#fff}
body.ent-20 .ent-hero h1{font-weight:400;letter-spacing:2px}
body.ent-20 .ent-block h2::before{display:none}
body.ent-20 .ent-block h2{border-bottom:2px solid #0a3d62;padding-bottom:8px}
/* 大图沉浸（ent-03）：hero 更高 */
body.ent-03 .ent-hero{padding:76px 0}
body.ent-03 .ent-hero h1{font-size:36px}
/* 瀑布卡片（ent-04） */
body.ent-04 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
body.ent-04 .ent-bcard:nth-child(even){margin-top:18px}
/* ===== 企业站新 10 套（ent-21~30，2026-08-26 新增结构） ===== */
/* ent-21 左栏导航：侧栏在左，主内容在右 */
body.ent-21 .ent-body{display:grid;grid-template-columns:280px 1fr;gap:26px;max-width:1240px;margin:0 auto;padding:0 16px}
body.ent-21 .ent-main{min-width:0}
body.ent-21 .ent-side{display:flex;flex-direction:column;gap:0;order:-1}
body.ent-21 .ent-side .ent-block{padding:20px 0;border-bottom:1px dashed #d7dfe8}
body.ent-21 .ent-side .ent-block:first-child{position:sticky;top:70px}
/* ent-22 白灰交替：区块底色交错，层次分明 */
body.ent-22 .ent-block:nth-of-type(even){background:#f4f7fb}
body.ent-22 .ent-block:nth-of-type(even) .ent-wrap{max-width:1160px}
/* ent-23 杂志编号：区块标题前大号编号 */
body.ent-23{counter-reset:sec}
body.ent-23 .ent-block{counter-increment:sec}
body.ent-23 .ent-block h2{display:flex;align-items:baseline;gap:14px}
body.ent-23 .ent-block h2::before{position:static;width:auto;height:auto;background:none;color:#d8e2ec;font-size:34px;font-weight:800;content:counter(sec,decimal-leading-zero)}
/* ent-24 分屏 hero：左文右装饰区 */
body.ent-24 .ent-hero{background:linear-gradient(120deg,#0a3d62 55%,#0f4a77 55%)}
body.ent-24 .ent-hero .ent-wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
body.ent-24 .ent-hero .ent-crumb{grid-column:1/-1}
body.ent-24 .ent-hero .ent-hero-btns{grid-column:1}
body.ent-24 .ent-hero .ent-trustline{grid-column:1/-1}
body.ent-24 .ent-hero::after{content:'';position:absolute;right:6%;top:50%;transform:translateY(-50%);width:200px;height:200px;border:3px solid rgba(255,255,255,.25);border-radius:50%;background:radial-gradient(circle,rgba(230,126,34,.35) 30%,transparent 62%)}
body.ent-24 .ent-hero{position:relative;overflow:hidden}
/* ent-25 大图业务卡：卡片顶部渐变图条 */
body.ent-25 .ent-bcard{overflow:hidden;position:relative;padding-top:96px}
body.ent-25 .ent-bcard::before{content:'';position:absolute;left:0;right:0;top:0;height:80px;background:linear-gradient(135deg,#0a3d62,#1b6ca8)}
body.ent-25 .ent-bcard:nth-child(2)::before{background:linear-gradient(135deg,#e67e22,#f0a04b)}
body.ent-25 .ent-bcard:nth-child(3)::before{background:linear-gradient(135deg,#1b6ca8,#3aa0d8)}
body.ent-25 .ent-bcard:nth-child(4)::before{background:linear-gradient(135deg,#2c7a4b,#57b06f)}
body.ent-25 .ent-bcard:nth-child(5)::before{background:linear-gradient(135deg,#7a4ba8,#a37bd0)}
body.ent-25 .ent-bcard:nth-child(6)::before{background:linear-gradient(135deg,#a83b4b,#d06b7a)}
body.ent-25 .ent-bcard:nth-child(7)::before{background:linear-gradient(135deg,#3b6ba8,#6b9ad0)}
/* ent-26 数据横幅：荣誉数据条做深蓝大横幅 */
body.ent-26 .ent-honor{background:#0a3d62;border-radius:14px;padding:26px}
body.ent-26 .ent-honor h3{color:#fff}
body.ent-26 .ent-honor p{color:#cfe3f5}
body.ent-26 .ent-data{background:#fff;border-radius:10px;padding:20px}
body.ent-26 .ent-data span{background:#f2f6fa}
/* ent-27 大圆角卡片：16px 圆角 + hero 底圆角（2026-09-03：删除"偶区块 margin-left:26px"——该规则覆盖 margin:0 auto 导致偶数区块容器贴左、整页左右不齐） */
body.ent-27 .ent-bcard,body.ent-27 .ent-case,body.ent-27 .ent-step,body.ent-27 .ent-cont{border-radius:16px}
body.ent-27 .ent-hero{border-radius:0 0 26px 26px}
/* ent-28 FAQ 两列折叠卡 */
body.ent-28 .ent-faqs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
body.ent-28 .ent-faqs details{background:#f7f9fc;border:1px solid #e6ecf3;border-radius:10px;padding:0 14px}
body.ent-28 .ent-faqs summary{padding:12px 0}
/* ent-29 深色沉浸：全页深蓝底 + 白色区块卡浮起 */
body.ent-29{background:#0a2c4d}
body.ent-29 .ent-nav{background:#08233f;border-bottom:1px solid rgba(255,255,255,.08)}
body.ent-29 .ent-block{margin:0 auto 18px;max-width:1240px;padding:0 16px}
body.ent-29 .ent-block .ent-wrap{background:#fff;border-radius:14px;padding:26px 22px;box-shadow:0 6px 24px rgba(0,0,0,.18)}
body.ent-29 .ent-hero{background:linear-gradient(135deg,#0a3d62,#134e82)}
body.ent-29 .ent-footer{background:#071f38}
/* ent-30 时间线 + 杂志编号复合 */
body.ent-30{counter-reset:sec}
body.ent-30 .ent-block{counter-increment:sec}
body.ent-30 .ent-block h2::before{position:static;width:auto;height:auto;background:none;color:#e67e22;font-size:28px;font-weight:800;content:counter(sec,decimal-leading-zero)}
/* ent-30：流程步骤横排（原竖向时间线设计用户不接受，统一横排 4 列） */
body.ent-30 .ent-flow{max-width:1200px}
/* 移动端 */
@media(max-width:900px){body.ent-02 .ent-body,body.ent-08 .ent-body,body.ent-11 .ent-body,body.ent-21 .ent-body{grid-template-columns:1fr}body.ent-11 .ent-side,body.ent-21 .ent-side{order:0}body.ent-18 .ent-flow,body.ent-28 .ent-faqs{grid-template-columns:1fr 1fr}.ent-menu{display:none}.ent-nav-inner{height:52px}}

/* ==========================================================================
   2026-09-16 补齐：**23 套模板此前没有任何专属 CSS**（与基础样式完全一样 → 用户实测
   "模板就一套、只是卡槽变了"），另有 6 套模板的正文类名（t23-split / t24-cols / …）
   连一条规则都没有（布局塌掉 = 用户看到的"样式有问题"）。
   下面按"每套模板一套可辨识的版式"补全：tpl-21~28（落地页）+ ent-05/31~44（企业站）
   + tpl-01 打磨。全部只用正文里真实存在的类名，并用 body.<模板> 限定作用域。
   ========================================================================== */

/* ---------- tpl-01 经典居中（原与"无模板"完全一致，补基础版式）---------- */
body.tpl-01 main > section.m,body.tpl-01 main > article.content{max-width:1080px;margin:0 auto}
body.tpl-01 main > section.m h2,body.tpl-01 main > article.content h2{text-align:center}
body.tpl-01 main > section.m h2:after,body.tpl-01 main > article.content h2:after{content:'';display:block;width:46px;height:3px;background:var(--acc);margin:10px auto 0;border-radius:3px}
body.tpl-01 .phone-strip{border-radius:14px;max-width:1080px;margin:22px auto 0}

/* ---------- tpl-21 直答置顶型：首屏直答卡上浮（回答前置）---------- */
body.tpl-21 main.t21 > #faq{margin-top:-34px;position:relative;z-index:3}
body.tpl-21 main.t21 > #faq .wrap{max-width:1080px;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--acc);border-radius:16px;padding:24px 28px;box-shadow:0 14px 34px rgba(10,61,98,.10)}
body.tpl-21 main.t21 > #faq h2{font-size:19px;margin-bottom:12px}
body.tpl-21 main.t21 > #faq .faqs > *{background:var(--accl);border-radius:10px;padding:13px 16px;margin-bottom:10px}
body.tpl-21 main.t21 > section.m{max-width:1200px;margin:0 auto;padding:26px 16px}
body.tpl-21 main.t21 .phone-strip{border-radius:14px;max-width:1080px;margin:20px auto 0}

/* ---------- tpl-22 数据优先型：数据面板前置 + 标题下划线 ---------- */
body.tpl-22 main.t22 .content{max-width:1200px;margin:0 auto;padding:22px 16px}
body.tpl-22 main.t22 .content .m{margin-bottom:20px}
body.tpl-22 main.t22 .content .m:first-child{background:linear-gradient(180deg,var(--accl),var(--card));border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:14px;padding:24px 26px}
body.tpl-22 main.t22 .content .m h2:after{content:'';display:block;width:52px;height:3px;background:var(--acc);margin:10px 0 0;border-radius:3px}
body.tpl-22 main.t22 > section.m{max-width:1200px;margin:0 auto;padding:24px 16px}

/* ---------- tpl-23 分屏咨询：hero 左文 + 右 sticky 咨询台 ---------- */
body.tpl-23 .t23-split{display:grid;grid-template-columns:1.65fr 1fr;gap:26px;max-width:1200px;margin:0 auto;padding:0 16px;align-items:start}
body.tpl-23 .t23-main{min-width:0}
body.tpl-23 .t23-consult{position:sticky;top:84px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px 20px 16px;box-shadow:0 12px 28px rgba(10,61,98,.09)}
body.tpl-23 .t23-c-title{display:block;font-size:17px;color:var(--p);margin-bottom:6px}
body.tpl-23 .t23-c-sub{font-size:13px;color:var(--mut);line-height:1.7;margin:0 0 12px}
body.tpl-23 .t23-consult .btn-main{display:block;text-align:center;margin-bottom:14px}
body.tpl-23 .t23-metrics{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--mut);border-top:1px dashed var(--line);padding-top:10px}
body.tpl-23 .t23-metrics b{display:block;color:var(--p);font-size:15px}
body.tpl-23 .t23-c-note{margin:10px 0 0;font-size:12px;color:var(--acc)}
body.tpl-23 main > section.m{max-width:1200px;margin:0 auto;padding:0 16px}
body.tpl-23 main > article.content{max-width:1200px;margin:0 auto;padding:22px 16px}
body.tpl-23 main > section.m{padding-top:22px;padding-bottom:22px}
@media(max-width:900px){body.tpl-23 .t23-split{grid-template-columns:1fr}body.tpl-23 .t23-consult{position:static}}

/* ---------- tpl-24 双栏杂志：正文模块等宽双列整卡 ---------- */
body.tpl-24 main.t24 > section.m,body.tpl-24 main.t24 > article.content{max-width:1200px;margin:0 auto;padding:20px 16px}
body.tpl-24 .t24-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
body.tpl-24 .t24-col{display:flex;flex-direction:column;gap:18px;min-width:0}
body.tpl-24 .t24-col .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:0}
body.tpl-24 .t24-col .m h2{font-size:18px;border-bottom:2px solid var(--accl);padding-bottom:8px;margin-bottom:12px}
@media(max-width:900px){body.tpl-24 .t24-cols{grid-template-columns:1fr}}

/* ---------- tpl-25 证据带：hero 下证书横滑带 ---------- */
body.tpl-25 .t25-evi{max-width:1200px;margin:18px auto 4px;padding:0 16px}
body.tpl-25 .t25-evi-h{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;color:var(--mut);margin-bottom:8px}
body.tpl-25 .t25-evi-h b{color:var(--p);font-size:15px}
body.tpl-25 .t25-strip{display:flex;gap:12px;overflow-x:auto;padding:6px 2px 12px;scroll-snap-type:x mandatory}
body.tpl-25 .t25-strip img{border-radius:10px;border:1px solid var(--line);flex:0 0 auto;scroll-snap-align:start;background:var(--card)}
body.tpl-25 .t25-strip::-webkit-scrollbar{height:8px}
body.tpl-25 .t25-strip::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
body.tpl-25 main > section.m,body.tpl-25 main > article.content{max-width:1200px;margin:0 auto;padding:22px 16px}

/* ---------- tpl-26 进度长卷：正文串在竖向轨道上 ---------- */
body.tpl-26 .t26-track{position:relative;max-width:1000px;margin:0 auto;padding:8px 16px 0}
body.tpl-26 .t26-track:before{content:'';position:absolute;left:33px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--acc),rgba(230,126,34,0))}
body.tpl-26 .t26-node{position:relative;padding-left:34px;margin:0 0 18px}
body.tpl-26 .t26-node .m{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:0}
body.tpl-26 .t26-node:before{content:'';position:absolute;left:28px;top:24px;width:12px;height:12px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 4px rgba(230,126,34,.15)}
body.tpl-26 .t26-node .m h2{font-size:18px}
body.tpl-26 main > section.m{max-width:1200px;margin:0 auto;padding:22px 16px}

/* ---------- tpl-27 通栏呼吸卡：大留白 + 大圆角 ---------- */
body.tpl-27 .t27-stack{max-width:1080px;margin:0 auto;padding:0 16px;display:flex;flex-direction:column;gap:26px}
body.tpl-27 .t27-stack > *{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:32px 36px;box-shadow:0 12px 34px rgba(10,61,98,.06);margin:0}
body.tpl-27 .t27-stack > .m h2{font-size:21px}
body.tpl-27 main > section.m{max-width:1080px;margin:0 auto;padding:16px}
body.tpl-27 main > section.m .wrap{max-width:none;padding:0}

/* ---------- tpl-28 承诺横幅：hero 下三承诺通栏带 ---------- */
body.tpl-28 .t28-band{display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:center;background:linear-gradient(90deg,var(--p),var(--p2));color:#fff;padding:16px 22px;margin:16px auto;border-radius:14px;max-width:1200px}
body.tpl-28 .t28-band .t28-bi{font-size:12.5px;line-height:1.5;min-width:150px}
body.tpl-28 .t28-band .t28-bi b{display:block;font-size:15px;margin-bottom:2px}
body.tpl-28 .t28-band .btn-main{background:#fff;color:var(--p);border-radius:20px;padding:9px 22px;font-weight:800;box-shadow:none}
body.tpl-28 main > section.m,body.tpl-28 main > article.content{max-width:1200px;margin:0 auto;padding:22px 16px}

/* ==========================================================================
   ent-05 / ent-31~44：这 15 套企业站模板此前**没有任何版式规则**（与基础骨架完全一样）。
   下面给每套一个可辨识版式（容器宽度 / hero 形态 / 区块卡风格 / 栅格密度 / 标题装饰）。
   ========================================================================== */
/* ent-05 通栏宽屏（1320） */
body.ent-05 .ent-wrap{max-width:1320px}
body.ent-05 .ent-block{border-top:1px solid var(--line)}
body.ent-05 .ent-block:first-child{border-top:0}
body.ent-05 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
body.ent-05 .ent-hero{padding:40px 0}
body.ent-05 .ent-block h2{font-size:22px}
/* ent-31 hero 两栏：文案 + 信任数据面板 */
body.ent-31 .ent-hero .ent-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center}
body.ent-31 .ent-trustline{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:16px 18px}
body.ent-31 .ent-block h2:after{content:'';display:block;width:44px;height:3px;background:var(--acc);margin:10px 0 0;border-radius:3px}
body.ent-31 .ent-block{max-width:1200px;margin:0 auto;padding:26px 16px}
@media(max-width:900px){body.ent-31 .ent-hero .ent-wrap{grid-template-columns:1fr}}
/* ent-32 卡片化正文（每块白卡 + 大圆角） */
body.ent-32 .ent-block{max-width:1160px;margin:16px auto;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 28px;box-shadow:0 10px 26px rgba(10,61,98,.06)}
body.ent-32 .ent-block h2{font-size:21px}
body.ent-32 .ent-bcard{border-radius:14px}
/* ent-33 左侧标题栏（h2 左色块 + 内容缩进） */
body.ent-33 .ent-block{padding-left:calc(16px + 14px)}
body.ent-33 .ent-block h2{border-left:5px solid var(--acc);padding-left:12px;margin-left:-14px}
body.ent-33 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
/* ent-34 密集栅格（210px 卡片） */
body.ent-34 .ent-bgrid,body.ent-34 .ent-hgrid,body.ent-34 .ent-tgrid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
body.ent-34 .ent-wrap{max-width:1280px}
body.ent-34 .ent-bcard{padding:14px}
body.ent-34 .ent-block{padding-top:22px;padding-bottom:22px}
/* ent-35 疏朗大留白（300px 卡片 + 大间距） */
body.ent-35 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
body.ent-35 .ent-block{padding-top:38px;padding-bottom:38px}
body.ent-35 .ent-block h2{font-size:24px;letter-spacing:.5px}
body.ent-35 .ent-bcard{padding:24px}
/* ent-36 深色 hero + 浅色正文交替 */
body.ent-36 .ent-hero{background:linear-gradient(135deg,#0a2d47,#0f4c75)}
body.ent-36 .ent-block:nth-of-type(even){background:var(--accl)}
body.ent-36 .ent-block h2:before{content:'';display:inline-block;width:8px;height:8px;background:var(--acc);border-radius:2px;margin-right:8px;vertical-align:middle}
/* ent-37 硬朗：无圆角 + 顶部粗边 */
body.ent-37 .ent-bcard,body.ent-37 .ent-block{border-radius:0}
body.ent-37 .ent-block{border-top:3px solid var(--p)}
body.ent-37 .ent-btn-main{border-radius:0}
body.ent-37 .ent-bcard{border-left:3px solid var(--acc)}
/* ent-38 柔化：圆角 + 轻阴影 */
body.ent-38 .ent-bcard{border-radius:16px;box-shadow:var(--shadow);border-color:transparent}
body.ent-38 .ent-block{max-width:1160px;margin:0 auto}
body.ent-38 .ent-bgrid{gap:18px}
/* ent-39 编号标题（h2 序号） */
body.ent-39 .ent-block{counter-increment:sec39}
body.ent-39 .ent-block h2:before{content:counter(sec39,decimal-leading-zero);color:var(--acc);font-weight:800;font-size:18px;margin-right:10px;vertical-align:2px}
body.ent-39 .ent-flow{max-width:1160px}
/* ent-40 双色分隔带（每块之间一条彩带） */
body.ent-40 .ent-block + .ent-block{border-top:6px solid var(--accl)}
body.ent-40 .ent-block h2{display:inline-block;background:var(--p);color:#fff;padding:6px 14px;border-radius:8px}
body.ent-40 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
/* ent-41 窄栏杂志（1080 居中） */
body.ent-41 .ent-wrap{max-width:1080px}
body.ent-41 .ent-block h2{text-align:center}
body.ent-41 .ent-block h2:after{content:'';display:block;width:52px;height:2px;background:var(--acc);margin:10px auto 0}
body.ent-41 .ent-about,.ent-41 .ent-intro{text-align:center}
/* ent-42 全宽 hero + 宽内容（1320 内容 / hero 通栏） */
body.ent-42 .ent-hero{border-radius:0}
body.ent-42 .ent-body{max-width:1320px;margin:0 auto;padding:0 16px}
body.ent-42 .ent-bcard{background:transparent;border:0;border-top:2px solid var(--line);border-radius:0;padding:16px 0}
/* ent-43 卡片描边 + hover 抬升 */
body.ent-43 .ent-bcard{transition:transform .18s ease,box-shadow .18s ease;border:1px solid var(--line)}
body.ent-43 .ent-bcard:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,61,98,.12)}
body.ent-43 .ent-block{padding-top:30px;padding-bottom:30px}
body.ent-43 .ent-bgrid{gap:16px}
/* ent-44 渐变斜切 hero */
body.ent-44 .ent-hero{background:linear-gradient(120deg,#0a3d62 55%,#155e8d 55%)}
body.ent-44 .ent-hero .ent-wrap{max-width:1240px}
body.ent-44 .ent-block h2{color:var(--p2)}
body.ent-44 .ent-bgrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
body.ent-44 .ent-btn-main{border-radius:22px}

/* ================= 2026-09-16 全量样式体检修复（72 模板 × 23 卡槽 × 4 人格） ================= */

/* —— ① hero 渐变补档（代码抽 hero-b1..b8，原先只写了 b1~b4）——
   抽到未定义的档位 = 完全没有背景：白字落在页面底色上（实测 93.9% 区域是 #f4f6f9）→ banner 看不见。 */
.hero-b5{background:linear-gradient(180deg,var(--p) 0%,var(--p2) 100%)}
.hero-b6{background:radial-gradient(900px 420px at 50% 118%,rgba(230,126,34,.30),transparent 62%),linear-gradient(135deg,var(--p) 0%,var(--p2) 100%)}
.hero-b7{background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(120deg,var(--p) 0%,var(--p2) 100%);background-size:56px 56px,56px 56px,auto}
.hero-b8{background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 14px,transparent 14px 28px),linear-gradient(160deg,var(--p2) 0%,var(--p) 100%)}

/* —— ② hero 形态 hero-v1/v2/v3（原先 3 档全无 CSS）—— 只加装饰层，不动文字排版 —— */
.hero.hero-v1::before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--acc),transparent);opacity:.8;pointer-events:none}
.hero.hero-v2::before{content:'';position:absolute;top:-40%;right:-8%;width:52%;height:180%;background:linear-gradient(120deg,rgba(255,255,255,.10),transparent 60%);transform:rotate(8deg);pointer-events:none}
.hero.hero-v3::before{content:'';position:absolute;left:-6%;bottom:-32%;width:58%;height:150%;background:radial-gradient(closest-side,rgba(230,126,34,.22),transparent 70%);pointer-events:none}

/* —— ③ 纹理档 bg-grid / bg-dots（原先 2 档全无 CSS）—— */
body.bg-grid{background-image:linear-gradient(rgba(10,61,98,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(10,61,98,.05) 1px,transparent 1px);background-size:34px 34px;background-attachment:fixed}
body.bg-dots{background-image:radial-gradient(rgba(10,61,98,.13) 1px,transparent 1px);background-size:22px 22px;background-attachment:fixed}
/* 有纹理时关掉 hero 底部那圈"实色斜切"，否则纯色块与纹理之间会出现接缝 */
body.bg-grid .hero::after,body.bg-dots .hero::after{display:none}

/* —— ④ 圆角档 rad-s / rad-l —— */
body.rad-s .m,body.rad-s .pol-card,body.rad-s .d-card,body.rad-s .st-card,body.rad-s .mist-card,body.rad-s .mat-card,body.rad-s .qa-lead,body.rad-s .phone-strip,body.rad-s .data-strip,body.rad-s .ent-block,body.rad-s .ent-bcard,body.rad-s .loc-row{border-radius:8px}
body.rad-s .btn-main,body.rad-s .tel-btn,body.rad-s .btn-ghost,body.rad-s .btn{border-radius:8px}
body.rad-l .m,body.rad-l .pol-card,body.rad-l .d-card,body.rad-l .st-card,body.rad-l .mist-card,body.rad-l .mat-card,body.rad-l .qa-lead,body.rad-l .phone-strip,body.rad-l .data-strip,body.rad-l .ent-block,body.rad-l .ent-bcard,body.rad-l .loc-row{border-radius:26px}
body.rad-l .btn-main,body.rad-l .tel-btn,body.rad-l .btn-ghost,body.rad-l .btn{border-radius:30px}

/* —— ⑤ 信任档 prv-b（标题装饰第二档）—— */
body.prv-b .m h2::after,body.prv-b .ent-block h2::after{content:'';display:block;width:42px;height:3px;margin-top:8px;border-radius:2px;background:var(--acc);opacity:.85}

/* —— ⑥ FAQ 形态 faq-f2 / faq-f3 —— */
body.faq-f2 .qcard{border-left:3px solid var(--acc);background:#fff}
body.faq-f2 .policies details summary{font-weight:700}
body.faq-f3 .policies details{border:1px solid var(--line);border-radius:10px;padding:6px 12px;margin-bottom:8px;background:#fff}
body.faq-f3 .qcard{box-shadow:0 1px 8px rgba(10,61,98,.06)}

/* —— ⑦ 人格皮肤 per-gov / per-brand / per-data / per-paper（原先 4 档全无 CSS → 切人格只有文案变、观感不变）—— */
body.per-gov .m h2{background:linear-gradient(90deg,var(--accl) 0%,transparent 72%);border-left:4px solid var(--acc);padding:4px 12px}
body.per-gov .m,body.per-gov .ent-block{border-radius:10px}
body.per-gov .btn-main,body.per-gov .tel-btn,body.per-gov .btn-ghost{border-radius:6px}
body.per-brand .hero h1,body.per-brand .ent-hero h1{letter-spacing:.5px}
body.per-brand .m h2::before,body.per-brand .ent-block h2::before{content:'';display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--acc);vertical-align:middle}
body.per-data .st-card b,body.per-data .data-strip b,body.per-data .d-card b{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.5px}
body.per-data .m{border-top:3px solid var(--p2)}
body.per-paper{--bg:#faf7f0;--line:#e8e0d2;--card:#fffdf8}
body.per-paper h1,body.per-paper .m h2,body.per-paper .ent-block h2{font-family:Georgia,'Songti SC',SimSun,serif}
body.per-paper .m,body.per-paper .ent-block{box-shadow:0 1px 0 rgba(0,0,0,.04),0 10px 26px rgba(90,70,40,.06)}

/* —— ⑧ 组件补样式：曾被引擎输出但 CSS 一条规则都没有 —— */
/* 本地办理提示（用户实测上报"本地办理提示那里有样式问题"：原来是裸 div 堆叠） */
.loc-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.loc-row{background:var(--bg);border:1px solid var(--line);border-left:3px solid var(--acc);border-radius:10px;padding:12px 14px}
.loc-row b{display:block;font-size:13.5px;color:var(--p);margin-bottom:4px}
.loc-row p{margin:0;font-size:13px;color:var(--mut);line-height:1.7}
/* 材料核验要点（✓ 勾选清单） */
.chk-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px 18px}
.chk-list li{position:relative;padding-left:24px;font-size:13px;color:var(--p2);line-height:1.7}
.chk-list li::before{content:'✓';position:absolute;left:0;top:0;color:#2e7d32;font-weight:800}
/* 人格提示条（hero 内小字条；gov/data 人格才有） */
.hero-kick{display:inline-flex;align-items:center;gap:8px;max-width:100%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);border-radius:20px;padding:4px 14px;font-size:12.5px;color:#dbe9f6}
.hero-kick span{background:var(--accd);color:#fff;border-radius:12px;padding:1px 9px;font-weight:700;font-size:11.5px;white-space:nowrap}
/* 数据条（用户实测上报"banner 下面那条没有居中"）：统一四栏居中、深底白字 */
.data-strip{max-width:1200px;margin:14px auto;padding:14px 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;border-radius:12px;text-align:center}
.data-strip span{font-size:12.5px;color:#dbe9f6;text-align:center}
.data-strip b{display:block;font-size:19px;color:#fff;font-weight:800}
/* 注释行 / 未生成页占位 */
.frm-note,.ent-fnote{font-size:12.5px;color:var(--mut);line-height:1.8;margin:6px 0 0}
.txt{color:var(--mut)}

/* —— ⑨ 模板级：tpl-26 的 banner 被轨道容器压窄（实测 968px / 视口 1920）—— */
body.tpl-26 .t26-track > .hero{width:100vw;max-width:none;margin-left:calc(50% - 50vw)}
/* STIE_LAYOUT_FIX_V1：`width:100vw` 这个"破出容器做全宽"的写法**包含滚动条宽度** → 页面必然横向多出
   ~15px（实测 clientWidth 1889 / scrollWidth 1897）。业界通用修法是配合祖先 `overflow-x:hidden`
   裁掉那几像素（比改 width 更可靠：改 width 会让 hero 与视口中心错位半个滚动条）。 */
body.tpl-26 main{overflow-x:hidden}

/* —— ⑩ 白字对比度：见上方 --accd（强调色加深档，三套主题各自 ≥3.7）—— */

/* ================= 2026-09-16 第二轮：**卡槽「形态B」分支的组件类此前一条样式都没有** =================
   背景（用户："所有模板、卡槽、人格都要复盘"）：模块有 A/B 两种形态（morph() 抽签），
   上一轮只补了 A 形态的组件（.loc-rows / .chk-list …），**B 形态这 6 组类从未写过 CSS** ——
   抽到 B 形态时那一块就是"裸 div 堆叠"（与用户反馈的"样式有问题"同源）。体检：576 页里最多 85 页命中。 */
/* 办理须知 · 双列编号网格（modNotice 形态B） */
.notice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:0 0 10px}
.notice-grid .n-item{position:relative;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px 14px 46px;box-shadow:var(--shadow)}
.notice-grid .n-item .n-i{position:absolute;left:14px;top:14px;width:22px;height:22px;border-radius:50%;background:var(--accl);color:var(--accd);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.notice-grid .n-item p{margin:0;font-size:13.5px;line-height:1.75;color:#3a4657}
/* 专家提示 · 引语卡（modExpertTip 形态B） */
.tip-list{display:grid;gap:10px;margin:0 0 10px}
.tip-quote{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accd);border-radius:10px;padding:12px 16px;box-shadow:var(--shadow)}
.tip-quote span{display:inline-block;font-size:11.5px;color:var(--accd);background:var(--accl);border-radius:8px;padding:1px 8px;margin-bottom:6px}
.tip-quote p{margin:0;font-size:13.5px;line-height:1.75;color:#3a4657}
/* 服务流程 · 时间线（modFlowGuide 形态B） */
.m-tl{position:relative;margin:0 0 10px;padding-left:26px}
.m-tl::before{content:'';position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--line)}
.m-tl .tl-step{position:relative;padding:0 0 16px 0}
.m-tl .tl-step:last-child{padding-bottom:0}
.m-tl .tl-n{position:absolute;left:-26px;top:1px;width:18px;height:18px;border-radius:50%;background:var(--accd);color:#fff;font-size:11px;line-height:18px;text-align:center}
.m-tl .tl-t{display:block;font-size:14px;color:var(--p);margin:0 0 2px}
.m-tl p{margin:0;font-size:13px;color:#5a6a7d;line-height:1.7}
/* 条件速览（modConditions/modStandard 形态B） */
.cond-lines{display:grid;gap:10px;margin:0 0 10px}
.cond-line{display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow)}
.cond-line .cl-i{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--accl);color:var(--accd);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.cond-line .cl-body b{display:block;font-size:13.5px;color:var(--p);margin:0 0 2px}
.cond-line .cl-body p{margin:0;font-size:13px;color:#5a6a7d;line-height:1.7}
/* 条件速览表 */
.std-t{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:13px}
.std-t th{background:var(--accl);color:var(--p);font-weight:700;text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}
.std-t td{padding:9px 12px;border-bottom:1px solid var(--line);color:#3a4657;line-height:1.7}
.std-t tr:last-child td{border-bottom:0}
.std-t .std-k{width:150px;color:var(--p);font-weight:700;background:#f7fafd}
/* 避坑（modMistakes 形态B） */
.mist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:0 0 10px}
.mist-grid .mist-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accd);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow)}
.mist-grid .mist-tag{display:inline-block;font-size:11.5px;color:#c0392b;background:#fdeceb;border-radius:8px;padding:1px 8px;margin-bottom:6px}
.mist-grid .mist-card p{margin:0;font-size:13.2px;color:#3a4657;line-height:1.7}
@media(max-width:768px){
  .notice-grid,.mist-grid{grid-template-columns:1fr}
  .std-t .std-k{width:110px}
}

@media(max-width:768px){
  .loc-rows,.chk-list{grid-template-columns:1fr}
  .data-strip{grid-template-columns:1fr 1fr;padding:12px 14px}
  body.tpl-26 .t26-track{padding-left:0;padding-right:0}
  body.tpl-26 .t26-track > .hero{width:100vw;margin-left:calc(50% - 50vw)}
}

/*@leadform:2*/
.jg-lead{max-width:780px;margin:30px auto;background:#fff;border:1px solid #e6ebf2;border-radius:16px;box-shadow:0 8px 26px rgba(10,61,98,.08);overflow:hidden}
.jg-lead-hd{background:linear-gradient(135deg,#0a3d62,#155e8f);color:#fff;padding:18px 26px}
.jg-lead-hd b{display:block;font-size:17px;font-weight:800}
.jg-lead-hd span{display:block;font-size:12.5px;opacity:.86;margin-top:4px}
.jg-lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;padding:20px 26px 4px}
.jg-lead-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.jg-lead-f.jg-wide{grid-column:1/-1}
.jg-lead-f label{font-size:13px;font-weight:600;color:#3a4a5e}
.jg-lead-f label b{color:#e74c3c;margin-left:2px}
.jg-lead-f input,.jg-lead-f select,.jg-lead-f textarea{width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid #d9e3ef;border-radius:10px;background:#fbfdff;color:#1f2d3d;font-size:14px;font-family:inherit;line-height:1.5}
.jg-lead-f textarea{min-height:92px;resize:vertical}
.jg-lead-f input:focus,.jg-lead-f select:focus,.jg-lead-f textarea:focus{outline:0;border-color:#155e8f;background:#fff;box-shadow:0 0 0 3px rgba(21,94,143,.12)}
.jg-lead-ft{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 26px 22px}
.jg-lead-ft button{background:linear-gradient(135deg,#e67e22,#d4700f);color:#fff;border:0;border-radius:10px;padding:12px 34px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(230,126,34,.3)}
.jg-lead-ft button:hover{filter:brightness(1.06)}
.jg-lead-ft span{font-size:11.5px;color:#8a94a3}
.jg-cap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 26px 0}
.jg-cap>label{font-size:13px;font-weight:600;color:#3a4a5e;flex:0 0 auto}
.jg-cap>label b{color:#e74c3c;margin-left:2px}
.jg-cap input[name=_cc]{width:116px;box-sizing:border-box;padding:10px 12px;border:1px solid #d9e3ef;border-radius:10px;background:#fbfdff;color:#1f2d3d;font-size:16px;font-family:inherit;letter-spacing:3px;text-transform:uppercase;text-align:center}
.jg-cap input[name=_cc]:focus{outline:0;border-color:#155e8f;background:#fff;box-shadow:0 0 0 3px rgba(21,94,143,.12)}
.jg-cap .jg-cap-img{display:inline-flex;align-items:center;line-height:0;cursor:pointer;border-radius:9px;border:1px solid #e2e8f0;background:#fff;padding:1px}
.jg-cap .jg-cap-img svg{display:block;border-radius:8px}
.jg-cap .jg-cap-tip{font-size:11.5px;color:#8a94a3}
@media(max-width:640px){
.jg-lead{margin:22px 12px;border-radius:14px}
.jg-cap{padding:14px 16px 0}
.jg-lead-hd{padding:15px 16px}
.jg-lead-hd b{font-size:16px}
.jg-lead-grid{grid-template-columns:1fr;gap:12px;padding:16px 16px 2px}
.jg-lead-f input,.jg-lead-f select,.jg-lead-f textarea{padding:12px 13px;font-size:15px} /* 手机端字号≥15px 避免 iOS 自动放大 */
.jg-lead-ft{padding:14px 16px 18px;gap:8px}
.jg-lead-ft button{width:100%;padding:13px 0}
}