:root{
  --c:#388E3C; --cd:#1D501F; --cl:#E3EFE3; --c-rgb:56,142,60; --cd-rgb:29,80,31;
  --ink:#16202E; --ink2:#41505F; --ink3:#6C7B8C; --line:#E6EAF0; --white:#fff;
  --w:1200px; --sp:70px; --sp-sm:60px; --gap:28px;
  --r:8px; --r-sm:6px; --cp:24px; --sidep:24px;
  --hmb:32px; --lh:1.8; --ts:33px; --btnr:4px;
  --bw:1px; --ls:.3px;
  --sh:0 12px 40px rgba(22,32,46,.07);
  --sh2:0 18px 56px rgba(22,32,46,.12);
  --navh:88px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--navh) + 12px)}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  color:var(--ink);background:#fff;line-height:var(--lh);letter-spacing:var(--ls);font-size:15.5px;overflow-x:hidden}
img{max-width:100%;display:block;border:0}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p{margin:0}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
.wrap{width:100%;max-width:var(--w);margin:0 auto;padding:0 var(--sidep)}
.sec{padding:var(--sp) 0;position:relative;overflow:hidden}
.sec-sm{padding:var(--sp-sm) 0}

/* ── 区块标题 ── */
.sh{margin-bottom:var(--hmb);position:relative;z-index:2;text-align:left}
.sh-badge{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;
  padding:6px 15px;border-radius:999px;background:rgba(var(--c-rgb),.09);color:var(--cd);letter-spacing:.6px;margin-bottom:14px}
.sh-badge i{width:5px;height:5px;border-radius:50%;background:currentColor;display:block}
.sh h2{font-size:var(--ts);font-weight:800;line-height:1.3;letter-spacing:-.5px;color:var(--ink)}
.sh h2 em{font-style:normal;color:var(--c)}
.sh p{margin-top:12px;color:var(--ink3);font-size:15px;max-width:640px}
.sh[style*="left"] p,.sh.al p{margin-left:0}


/* ── 按钮 ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:var(--btnr);
  font-weight:700;font-size:15px;transition:.24s cubic-bezier(.4,0,.2,1);cursor:pointer;white-space:nowrap}
.btn-p{background:linear-gradient(120deg,var(--c),var(--cd));color:#fff;box-shadow:0 8px 22px rgba(var(--c-rgb),.28)}
.btn-p:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(var(--c-rgb),.36)}
.btn-g{background:#fff;color:var(--cd);border:var(--bw) solid rgba(var(--c-rgb),.3)}
.btn-g:hover{background:rgba(var(--c-rgb),.06);transform:translateY(-2px)}
.btn-w{background:#fff;color:var(--cd)}
.btn-w:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.16)}

/* ── 顶部导航 88px 纯白固定 ── */
.nav{position:fixed;top:0;left:0;right:0;height:var(--navh);background:#FFFFFF;z-index:900;
  border-bottom:1px solid var(--line);box-shadow:0 1px 3px rgba(22,32,46,.04)}
.nav-in{height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand img{height:60px;width:auto;object-fit:contain}
.brand-t{display:flex;flex-direction:column;justify-content:center;line-height:1.24}
.brand-t .bn{font-size:21px;font-weight:800;color:var(--c);letter-spacing:.4px;white-space:nowrap}
.brand-t .bs{font-size:12.5px;font-weight:500;color:var(--c);opacity:.72;white-space:nowrap;margin-top:2px}
.menu{display:flex;align-items:center;gap:0}
.menu a{position:relative;padding:7px 11px;font-size:14px;font-weight:600;color:var(--ink2);border-radius:8px;transition:.2s}
.menu a::after{content:"";position:absolute;left:50%;bottom:2px;width:0;height:2.5px;border-radius:2px;
  background:linear-gradient(90deg,var(--c),var(--cd));transform:translateX(-50%);transition:width .26s}
.menu a:hover{color:var(--c)}
.menu a:hover::after,.menu a.on::after{width:22px}
.menu a.on{color:var(--c);font-weight:700}
.nav-cta{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-tel{display:flex;align-items:center;gap:7px;font-weight:800;color:var(--cd);font-size:15.5px;white-space:nowrap}
.nav-tel svg{width:17px;height:17px;flex-shrink:0}
.burger{display:none;width:44px;height:44px;border-radius:11px;align-items:center;justify-content:center;
  background:rgba(var(--c-rgb),.08);flex-direction:column;gap:4.5px}
.burger i{display:block;width:19px;height:2px;border-radius:2px;background:var(--cd);transition:.25s}

/* ── 移动端抽屉 ── */
.mask{position:fixed;inset:0;background:rgba(12,18,28,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  opacity:0;visibility:hidden;transition:.3s;z-index:960}
.mask.on{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:82%;max-width:330px;background:#fff;z-index:970;
  transform:translateX(102%);transition:transform .36s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;
  box-shadow:-8px 0 40px rgba(0,0,0,.18)}
.drawer.on{transform:translateX(0)}
.dr-head{background:linear-gradient(135deg,var(--c),var(--cd));color:#fff;padding:22px 20px 24px;position:relative;flex-shrink:0}
.dr-head::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.11)}
.dr-head .dn{font-size:19px;font-weight:800;position:relative;z-index:1}
.dr-head .ds{font-size:12.5px;opacity:.86;margin-top:5px;position:relative;z-index:1}
.dr-x{position:absolute;top:16px;right:14px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;font-size:19px;color:#fff;z-index:2;line-height:1}
.dr-nav{padding:12px 14px;overflow-y:auto;flex:1}
.dr-nav a{display:flex;align-items:center;gap:13px;padding:12px 12px;border-radius:12px;font-size:15.5px;
  font-weight:600;color:var(--ink);transition:.2s}
.dr-nav a:active,.dr-nav a.on{background:rgba(var(--c-rgb),.07)}
.dr-ico{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dr-ico svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dr-foot{padding:16px 18px 22px;border-top:1px solid var(--line);flex-shrink:0}
.dr-foot .dt{font-size:19px;font-weight:800;color:var(--cd)}
.dr-foot .dl{font-size:12.5px;color:var(--ink3);margin-top:3px}

/* ── 入场动画 ── */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* ── 卡片通用 ── */
.card{background:#fff;border-radius:var(--r);padding:var(--cp);border:var(--bw) solid var(--line);
  transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.grid{display:grid;gap:var(--gap)}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}

/* ── 浮动按钮 ── */
.fab{position:fixed;right:16px;bottom:22px;z-index:880;display:flex;flex-direction:column;gap:10px}
.fab button,.fab a{width:52px;height:52px;border-radius:16px;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:1px;background:#fff;box-shadow:0 6px 20px rgba(22,32,46,.16);color:var(--cd);
  transition:.25s;border:1px solid var(--line)}
.fab button:hover,.fab a:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 10px 26px rgba(var(--c-rgb),.3)}
.fab svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.fab span{font-size:9.5px;font-weight:700;letter-spacing:0}
.fab .f-tel{background:linear-gradient(135deg,var(--c),var(--cd));color:#fff;border-color:transparent}
.fab .f-wx{background:linear-gradient(135deg,#22C55E,#15803D);color:#fff;border-color:transparent}
.fab .f-top{opacity:0;visibility:hidden;transform:translateY(10px)}
.fab .f-top.on{opacity:1;visibility:visible;transform:none}

/* ── 二维码弹窗 ── */
.pop{position:fixed;inset:0;z-index:990;display:flex;align-items:center;justify-content:center;padding:20px;
  background:rgba(12,18,28,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:.28s}
.pop.on{opacity:1;visibility:visible}
.pop-box{background:#fff;border-radius:20px;width:100%;max-width:340px;overflow:hidden;text-align:center;
  transform:scale(.94) translateY(10px);transition:.3s cubic-bezier(.34,1.4,.64,1);position:relative}
.pop.on .pop-box{transform:none}
.pop-hd{background:linear-gradient(135deg,var(--c),var(--cd));color:#fff;padding:20px 18px 17px}
.pop-hd h4{font-size:18px;font-weight:800}
.pop-hd p{font-size:12.5px;opacity:.88;margin-top:4px}
.pop-x{position:absolute;top:12px;right:13px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.22);
  color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;line-height:1;z-index:3}
.pop-bd{padding:22px 22px 24px}
.pop-bd img{width:186px;height:186px;margin:0 auto;border-radius:14px;border:1px solid var(--line);object-fit:cover}
.pop-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;font-size:14.5px}
.pop-row b{color:var(--cd);font-weight:800;font-size:16px}
.pop-row span{color:var(--ink3)}
.pop-tip{margin-top:12px;font-size:12.5px;color:var(--ink3);line-height:1.7}

/* ── 页脚 ── */
.foot{background:linear-gradient(165deg,#151E2B,#0C131D);color:#9FB0C2;padding:calc(var(--sp) * .78) 0 0;font-size:14px}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:36px;padding-bottom:34px}
.foot h5{color:#fff;font-size:15.5px;font-weight:700;margin-bottom:16px}
.foot-b .fb-name{font-size:19px;font-weight:800;color:#fff;margin-bottom:10px}
.foot-b p{line-height:1.85;font-size:13.5px}
.foot ul li{margin-bottom:9px}
.foot ul a{color:#9FB0C2;transition:.2s;font-size:13.8px}
.foot ul a:hover{color:#fff;padding-left:4px}
.foot-ct li{display:flex;gap:8px;line-height:1.7;font-size:13.5px;margin-bottom:11px}
.foot-ct b{color:#fff;font-weight:700}
.foot-bar{border-top:1px solid rgba(255,255,255,.1);padding:18px 0 22px;display:flex;flex-wrap:wrap;
  justify-content:space-between;gap:10px;font-size:13px;color:#7B8A9B}
.foot-bar a{color:#9FB0C2;transition:.2s}
.foot-bar a:hover{color:#fff;text-decoration:underline}

/* ── 友情链接 ── */
.links-box{display:flex;flex-wrap:wrap;gap:9px}
.links-box a{display:inline-block;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);
  font-size:13.5px;color:var(--ink2);transition:.22s;font-weight:500}
.links-box a:hover{background:linear-gradient(120deg,var(--c),var(--cd));color:#fff;border-color:transparent;transform:translateY(-2px)}

/* ── 面包屑 / 子页头 ── */
.phead{padding:calc(var(--sp) * .72) 0 calc(var(--sp) * .6);position:relative;overflow:hidden}
.phead::before{content:"";position:absolute;right:-6%;top:-58%;width:460px;height:460px;border-radius:50%;
  background:radial-gradient(circle,rgba(var(--c-rgb),.13),transparent 68%)}
.crumb{font-size:13px;color:var(--ink3);margin-bottom:14px;position:relative;z-index:2}
.crumb a{color:var(--ink3)}.crumb a:hover{color:var(--c)}
.crumb i{font-style:normal;margin:0 7px;opacity:.5}
.phead h1{font-size:calc(var(--ts) + 6px);font-weight:800;line-height:1.26;letter-spacing:-.6px;position:relative;z-index:2}
.phead h1 em{font-style:normal;color:var(--c)}
.phead .pd{margin-top:14px;color:var(--ink2);font-size:15.5px;max-width:720px;position:relative;z-index:2}
.phead .pt{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;position:relative;z-index:2}
.phead .pt span{padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink2)}

/* ── CTA 条 ── */
.ctabar{border-radius:calc(var(--r) + 6px);padding:calc(var(--cp) + 10px);background:linear-gradient(120deg,var(--c),var(--cd));
  color:#fff;position:relative;overflow:hidden;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px}
.ctabar::after{content:"";position:absolute;right:-40px;bottom:-70px;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.1)}
.ctabar h3{font-size:23px;font-weight:800;position:relative;z-index:2}
.ctabar p{margin-top:9px;opacity:.9;font-size:14.5px;max-width:560px;position:relative;z-index:2}
.ctabar .cta-b{display:flex;gap:12px;position:relative;z-index:2;flex-wrap:wrap}

/* ── 响应式 ── */
@media (max-width:1080px){
  .menu{display:none} .nav-tel{display:none} .burger{display:flex}
  .foot-top{grid-template-columns:1fr 1fr;gap:28px}
}
@media (max-width:860px){
  :root{--navh:76px;--sp:52px;--sp-sm:36px;--ts:26px;--cp:20px;--sidep:16px;--gap:16px}
  .brand img{height:44px}
  .brand-t .bn{font-size:17px} .brand-t .bs{font-size:11px}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .phead h1{font-size:27px}
  .foot-top{grid-template-columns:1fr;gap:26px}
  .ctabar h3{font-size:20px}
  .fab{right:12px;bottom:14px}
  .fab button,.fab a{width:47px;height:47px;border-radius:14px}
}
@media (max-width:400px){
  .brand img{height:38px} .brand-t .bn{font-size:15.5px} .brand-t .bs{display:none}
}
body{padding-top:var(--navh)}


.hero{--hp:80px}
.h-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:999px;
  background:rgba(var(--c-rgb),.1);color:var(--cd);font-size:13px;font-weight:700;margin-bottom:20px;
  border:1px solid rgba(var(--c-rgb),.16)}
.h-badge i{width:6px;height:6px;border-radius:50%;background:currentColor;animation:blip 1.8s infinite}
@keyframes blip{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.hero h1{font-size:clamp(28px,4vw,45px);font-weight:900;line-height:1.22;letter-spacing:-1.2px}
.hero h1 .hl{position:relative;display:inline-block;color:var(--cd);z-index:1;padding:0 3px}
.hero h1 .hl::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:38%;z-index:-1;border-radius:3px;
  background:linear-gradient(90deg,rgba(var(--c-rgb),.24),rgba(var(--c-rgb),.1));
  transform:scaleX(0);transform-origin:left;animation:mark .8s .35s cubic-bezier(.4,0,.2,1) forwards}
@keyframes mark{to{transform:scaleX(1)}}
.hero h1 .hl2{color:#EA580C;font-style:normal}
.hero h1 .hl3{background:linear-gradient(100deg,var(--c),var(--cd));-webkit-background-clip:text;
  background-clip:text;-webkit-text-fill-color:transparent;font-style:normal}
.h-sub{margin-top:19px;font-size:16.5px;color:var(--ink2);max-width:560px;line-height:1.82}
.h-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.h-tags span{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;background:#fff;
  border:1px solid var(--line);color:var(--ink2);box-shadow:0 2px 8px rgba(22,32,46,.04)}
.h-btns{display:flex;gap:13px;margin-top:28px;flex-wrap:wrap}
.hero-in{animation:fadeUp .85s cubic-bezier(.4,0,.2,1) both}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:860px){.h-sub{font-size:15px;margin-top:15px}.h-btns{margin-top:22px}
  .h-btns .btn{flex:1;min-width:140px}}


/* Hero v1 斜切图 */
.hero{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--cl) 0%,#fff 62%)}
.hero::before{content:"";position:absolute;left:-8%;top:-24%;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(var(--c-rgb),.14),transparent 70%)}
.hero-in{display:grid;grid-template-columns:1.06fr .94fr;gap:46px;align-items:center;padding:var(--hp) 0}
.hero-img{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh2);
  clip-path:polygon(0 0,100% 0,100% 92%,0 100%)}
.hero-img img{width:100%;height:428px;object-fit:cover}
.hero-fl{position:absolute;left:16px;bottom:34px;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);
  border-radius:14px;padding:13px 17px;box-shadow:var(--sh);display:flex;gap:16px}
.hero-fl div{text-align:center}
.hero-fl b{display:block;font-size:20px;font-weight:800;color:var(--c);line-height:1.2}
.hero-fl span{font-size:11.5px;color:var(--ink3)}
@media(max-width:900px){.hero-in{grid-template-columns:1fr;gap:28px}.hero-img img{height:250px}}


.intro-in{display:grid;grid-template-columns:.92fr 1.08fr;gap:calc(var(--gap) + 20px);align-items:start;direction:rtl}
.intro-in>*{direction:ltr}
.intro-pic{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh2);
  border:6px solid #fff;outline:1px solid rgba(var(--c-rgb),.14)}
.intro-pic img{width:100%;height:415px;object-fit:cover}
.intro-pic .ip-tag{position:absolute;right:0;bottom:0;background:linear-gradient(120deg,var(--c),var(--cd));
  color:#fff;padding:9px 18px;border-radius:var(--r-sm) 0 0 0;font-size:13px;font-weight:700}
.intro-tx h3{font-size:23px;font-weight:800;margin-bottom:15px}
.intro-tx p{color:var(--ink2);font-size:15.3px;line-height:1.95}
.intro-kv{display:flex;flex-direction:column;gap:11px;margin-top:22px}
.intro-kv div{padding:13px 17px;border-radius:var(--r-sm);display:flex;gap:13px;align-items:flex-start}
.intro-kv b{font-size:14.3px;font-weight:700;white-space:nowrap}
.intro-kv span{font-size:12.9px;color:var(--ink3);line-height:1.65}
@media(max-width:900px){.intro-in{grid-template-columns:1fr;direction:ltr}.intro-pic img{height:225px}}


.cs-wrap{position:relative}
.cs-view{overflow:hidden;border-radius:var(--r)}
.cs-track{display:flex;transition:transform .6s cubic-bezier(.4,0,.2,1);will-change:transform}
.cs-slide{flex:0 0 100%;min-width:0}
.cs-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:26px}
.cs-btn{width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--cd);transition:.24s;box-shadow:var(--sh)}
.cs-btn:hover{background:linear-gradient(120deg,var(--c),var(--cd));color:#fff;border-color:transparent;transform:scale(1.07)}
.cs-btn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.cs-dots{display:flex;gap:8px;align-items:center}
.cs-dots i{width:8px;height:8px;border-radius:50%;background:rgba(var(--c-rgb),.24);cursor:pointer;transition:.25s;display:block}
.cs-dots i.on{width:26px;border-radius:5px;background:linear-gradient(90deg,var(--c),var(--cd))}


/* 案例 v2 图上文下卡片（一屏两张） */
.cs-slide{flex:0 0 50%;padding:0 9px}
.cs-card{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);height:100%;
  border:var(--bw) solid var(--line);transition:.3s}
.cs-card:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.cs-pic{position:relative;overflow:hidden}
.cs-pic img{width:100%;height:330px;object-fit:cover;transition:transform .7s}
.cs-card:hover .cs-pic img{transform:scale(1.06)}
.cs-pic .cs-badge{position:absolute;right:14px;top:14px;color:#fff;padding:6px 14px;border-radius:8px;
  font-size:12px;font-weight:800;background:linear-gradient(120deg,var(--c),var(--cd))}
.cs-tx{padding:calc(var(--cp) - 2px)}
.cs-tx h3{font-size:18.5px;font-weight:800;display:flex;align-items:center;gap:9px}
.cs-tx h3 small{font-size:12.5px;font-weight:600;color:var(--ink3)}
.cs-meta{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0 13px}
.cs-meta span{padding:4px 11px;border-radius:6px;font-size:12px;font-weight:600}
.cs-tx p{color:var(--ink2);font-size:14.3px;line-height:1.85}
.cs-day{margin-top:14px;padding-top:13px;border-top:1px dashed var(--line);display:flex;
  justify-content:space-between;align-items:center;font-size:13px;color:var(--ink3)}
.cs-day b{font-size:20px;font-weight:800;color:var(--cd)}
@media(max-width:860px){.cs-slide{flex:0 0 100%;padding:0}.cs-pic img{height:250px}}


/* 方式 v2 分组板块 */
.way-group{border-radius:var(--r);overflow:hidden;margin-bottom:var(--gap);border:var(--bw) solid var(--line);background:#fff}
.way-gh{padding:16px calc(var(--cp) + 2px);display:flex;align-items:center;gap:14px;color:#fff}
.way-gh .gi{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.22);display:flex;
  align-items:center;justify-content:center;font-size:16px;font-weight:900;flex-shrink:0}
.way-gh h3{font-size:18px;font-weight:800}
.way-gh p{font-size:12.8px;opacity:.88;margin-top:2px}
.way-gb{padding:var(--cp);display:grid;gap:13px}
.way-item{border-radius:var(--r-sm);padding:16px 18px;transition:.26s;border-left:3px solid}
.way-item:hover{transform:translateX(5px)}
.way-item h4{font-size:15.5px;font-weight:800;margin-bottom:8px}
.way-item .wl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.way-item .wl div{font-size:13px;line-height:1.66;color:var(--ink2)}
.way-item .wl b{display:block;font-size:11.5px;color:var(--ink3);font-weight:700;margin-bottom:2px;letter-spacing:.4px}
@media(max-width:820px){.way-item .wl{grid-template-columns:1fr;gap:7px}}


/* 好处 v4 三列纵向卡 */
.ben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.ben-c{border-radius:var(--r);overflow:hidden;transition:.32s;background:#fff;border:var(--bw) solid var(--line)}
.ben-c:hover{transform:translateY(-8px);box-shadow:var(--sh2)}
.ben-c .btop{padding:18px var(--cp);display:flex;align-items:center;gap:12px;color:#fff}
.ben-c .bi{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.22);display:flex;
  align-items:center;justify-content:center;flex-shrink:0}
.ben-c .bi svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ben-c h3{font-size:16px;font-weight:800}
.ben-c .bbd{padding:var(--cp)}
.ben-c p{font-size:13.5px;line-height:1.84;color:var(--ink2)}
.ben-c .bnote{margin-top:12px;padding-top:11px;border-top:1px dashed var(--line);font-size:11.7px;color:var(--ink3);line-height:1.6}
@media(max-width:980px){.ben-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ben-grid{grid-template-columns:1fr}}


/* FAQ v2 双列手风琴 */
.faq-list{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;align-items:start}
.faq-i{border-radius:var(--r);overflow:hidden;transition:.28s;border:var(--bw) solid transparent}
.faq-i.on{box-shadow:var(--sh2)}
.faq-q{width:100%;display:flex;align-items:flex-start;gap:12px;padding:16px calc(var(--cp) - 2px);text-align:left;font-size:15px;font-weight:700}
.faq-q .fn{font-size:16px;font-weight:900;font-style:italic;opacity:.42;flex-shrink:0;line-height:1.5}
.faq-q .ft{flex:1;min-width:0;line-height:1.62}
.faq-q .fx{width:22px;height:22px;flex-shrink:0;transition:.3s;font-size:14px;line-height:1;
  display:flex;align-items:center;justify-content:center;margin-top:3px;color:var(--cd)}
.faq-i.on .fx{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.faq-a div{padding:0 calc(var(--cp) - 2px) 18px 42px;color:var(--ink2);font-size:13.9px;line-height:1.9}
@media(max-width:840px){.faq-list{grid-template-columns:1fr}}


/* 流程 v1 横向连线 */
.flow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;position:relative}
.flow-grid::before{content:"";position:absolute;left:6%;right:6%;top:31px;height:2px;
  background:repeating-linear-gradient(90deg,rgba(var(--c-rgb),.3) 0 8px,transparent 8px 16px)}
.flow-c{text-align:center;position:relative;z-index:2}
.flow-c .fn{width:62px;height:62px;border-radius:20px;margin:0 auto 15px;display:flex;align-items:center;
  justify-content:center;font-size:20px;font-weight:900;color:#fff;box-shadow:0 8px 20px rgba(22,32,46,.13);transition:.3s}
.flow-c:hover .fn{transform:translateY(-6px) rotate(-6deg)}
.flow-c h3{font-size:15.5px;font-weight:800;margin-bottom:8px}
.flow-c p{font-size:12.8px;line-height:1.75;color:var(--ink3)}
@media(max-width:1000px){.flow-grid{grid-template-columns:repeat(3,1fr);gap:22px}.flow-grid::before{display:none}}
@media(max-width:640px){.flow-grid{grid-template-columns:repeat(2,1fr)}}


.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.stat-c{border-radius:var(--r);padding:calc(var(--cp) + 6px) var(--cp);text-align:center;transition:.3s;position:relative;overflow:hidden}
.stat-c:hover{transform:translateY(-7px);box-shadow:var(--sh2)}
.stat-c .si{width:44px;height:44px;border-radius:13px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;color:#fff}
.stat-c .si svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.stat-c b{font-size:38px;font-weight:900;line-height:1.05;display:inline-block}
.stat-c i{font-style:normal;font-size:18px;font-weight:800;margin-left:2px}
.stat-c span{display:block;margin-top:8px;font-size:13.3px;color:var(--ink3)}
@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}}


.edge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.edge-c{border-radius:var(--r);padding:calc(var(--cp) - 2px) var(--cp);position:relative;overflow:hidden;transition:.3s;
  display:flex;gap:14px;align-items:flex-start}
.edge-c:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.edge-c .ei{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  color:#fff;flex-shrink:0}
.edge-c .ei svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.edge-c h3{font-size:15.5px;font-weight:800;margin-bottom:6px}
.edge-c p{font-size:12.9px;line-height:1.72;color:var(--ink2)}
@media(max-width:1000px){.edge-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.edge-grid{grid-template-columns:1fr}}


.ab-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:calc(var(--gap) + 18px);align-items:start;direction:rtl}
.ab-in>*{direction:ltr}
.ab-tx p{color:var(--ink2);font-size:15px;line-height:1.95;margin-bottom:15px}
.ab-tx .ab-hl{padding:16px 19px;border-radius:var(--r-sm);background:linear-gradient(120deg,var(--c),var(--cd));
  color:#fff;font-weight:600;font-size:14.6px;margin-bottom:0}
.ab-side{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ab-card{border-radius:var(--r);padding:var(--cp);transition:.3s;position:relative;overflow:hidden}
.ab-card:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.ab-card h4{font-size:15px;font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:9px}
.ab-card h4 .ac{width:27px;height:27px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:12px;font-weight:800;flex-shrink:0}
.ab-card p{font-size:13.2px;line-height:1.78;color:var(--ink2)}
@media(max-width:900px){.ab-in{grid-template-columns:1fr;direction:ltr}.ab-side{grid-template-columns:1fr}}


/* 子页公共 */
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:calc(var(--hmb) - 8px)}
.pill-row button{padding:9px 18px;border-radius:999px;font-size:13.8px;font-weight:700;background:#fff;
  border:1px solid var(--line);color:var(--ink2);transition:.24s}
.pill-row button:hover{transform:translateY(-2px);box-shadow:var(--sh)}
.pill-row button.on{background:linear-gradient(120deg,var(--c),var(--cd));color:#fff;border-color:transparent}
.cs-full{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.cf-c{border-radius:var(--r);overflow:hidden;background:#fff;border:var(--bw) solid var(--line);transition:.3s;display:flex;flex-direction:column}
.cf-c:hover{transform:translateY(-7px);box-shadow:var(--sh2)}
.cf-pic{position:relative;overflow:hidden}
.cf-pic img{width:100%;height:340px;object-fit:cover;transition:transform .75s}
.cf-c:hover .cf-pic img{transform:scale(1.06)}
.cf-pic .cf-tag{position:absolute;left:14px;top:14px;padding:6px 14px;border-radius:999px;font-size:12px;
  font-weight:800;color:#fff;background:linear-gradient(120deg,var(--c),var(--cd))}
.cf-pic .cf-day{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.95);border-radius:11px;
  padding:8px 14px;text-align:center;font-size:11px;font-weight:700;color:var(--cd)}
.cf-pic .cf-day b{display:block;font-size:21px;line-height:1.1}
.cf-bd{padding:var(--cp);flex:1;display:flex;flex-direction:column}
.cf-bd h3{font-size:18px;font-weight:800;margin-bottom:10px}
.cf-bd h3 small{font-size:12.5px;font-weight:600;color:var(--ink3);margin-left:8px}
.cf-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.cf-meta span{padding:4px 11px;border-radius:6px;font-size:12px;font-weight:600}
.cf-bd p{font-size:14px;line-height:1.88;color:var(--ink2);flex:1}
@media(max-width:840px){.cs-full{grid-template-columns:1fr}.cf-pic img{height:250px}}

/* 条件对照表 */
.tbl-wrap{border-radius:var(--r);overflow:hidden;border:var(--bw) solid var(--line);background:#fff;overflow-x:auto}
table.tb{width:100%;border-collapse:collapse;min-width:660px;font-size:14px}
table.tb thead th{background:linear-gradient(120deg,var(--c),var(--cd));color:#fff;padding:14px 16px;
  text-align:left;font-weight:700;font-size:13.5px;white-space:nowrap}
table.tb td{padding:14px 16px;border-top:1px solid var(--line);color:var(--ink2);line-height:1.72;vertical-align:top}
table.tb tbody tr:hover{background:rgba(var(--c-rgb),.035)}
table.tb td:first-child{font-weight:700;color:var(--ink)}
table.tb .tg{font-weight:800;color:var(--cd);background:rgba(var(--c-rgb),.05)}

/* 镇街介绍页 */
.tw-hero{border-radius:calc(var(--r) + 4px);overflow:hidden;position:relative;box-shadow:var(--sh2)}
.tw-hero img{width:100%;height:460px;object-fit:cover}
.tw-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(10deg,rgba(10,16,26,.82),rgba(10,16,26,.12) 62%)}
.tw-cap{position:absolute;left:0;bottom:0;padding:calc(var(--cp) + 8px);color:#fff;z-index:2}
.tw-cap h3{font-size:26px;font-weight:800;margin-bottom:8px}
.tw-cap p{font-size:14.5px;opacity:.9;max-width:640px}
.tw-body{display:grid;grid-template-columns:1.25fr .75fr;gap:calc(var(--gap) + 14px);align-items:start}
.tw-art p{color:var(--ink2);font-size:15.2px;line-height:2;margin-bottom:16px}
.tw-art h3{font-size:20px;font-weight:800;margin:26px 0 13px;display:flex;align-items:center;gap:10px}
.tw-art h3::before{content:"";width:4px;height:19px;border-radius:2px;background:linear-gradient(180deg,var(--c),var(--cd))}
.tw-side{display:grid;gap:12px;position:sticky;top:calc(var(--navh) + 16px)}
.tw-box{border-radius:var(--r);padding:var(--cp)}
.tw-box h4{font-size:15.5px;font-weight:800;margin-bottom:12px}
.tw-box ul li{display:flex;gap:9px;font-size:13.4px;line-height:1.75;color:var(--ink2);margin-bottom:10px}
.tw-box ul li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c);flex-shrink:0;margin-top:8px}
@media(max-width:900px){.tw-body{grid-template-columns:1fr}.tw-hero img{height:250px}
  .tw-cap h3{font-size:20px}.tw-side{position:static}}

/* 关于页 */
.ct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.ct-c{border-radius:var(--r);padding:calc(var(--cp) + 4px);text-align:center;transition:.3s}
.ct-c:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.ct-c .ci{width:50px;height:50px;border-radius:15px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;color:#fff}
.ct-c .ci svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ct-c h4{font-size:15.5px;font-weight:800;margin-bottom:8px}
.ct-c p{font-size:14.5px;color:var(--ink2);line-height:1.75;word-break:break-all}
.ct-c b{font-size:19px;font-weight:800;color:var(--cd)}
@media(max-width:820px){.ct-grid{grid-template-columns:1fr}}

/* 通用小卡列表 */
.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.mini-c{border-radius:var(--r);padding:var(--cp);transition:.3s}
.mini-c:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.mini-c h4{font-size:16px;font-weight:800;margin-bottom:9px;display:flex;align-items:center;gap:10px}
.mini-c h4 .mn{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;color:#fff;flex-shrink:0}
.mini-c p{font-size:13.6px;line-height:1.82;color:var(--ink2)}
@media(max-width:960px){.mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.mini-grid{grid-template-columns:1fr}}

