/* ============================================================
   设计令牌 Design Tokens
   ============================================================ */
:root{
  /* 品牌色：沿用原站主色 #003F2D，构建 50-900 色阶 */
  --green-900:#00301F;
  --green-800:#003F2D;
  --green-700:#0A5842;
  --green-600:#136E54;
  --green-300:#9CC3B4;
  --green-100:#DCEAE3;
  --green-50:#EEF5F1;

  /* 点缀色：阳光暖金，仅用于点睛，不做正文 */
  --sand-600:#8A6836;
  --sand-400:#C9A227;
  --sand-200:#EBD9A8;

  /* 中性色 */
  --ink:#161F1B;
  --ink-2:#4A5A54;
  --ink-3:#77857F;
  --line:#E3E8E5;
  --line-2:#EFF2F0;
  --bg:#FFFFFF;
  --bg-soft:#F6F8F7;

  /* 语义色 */
  --success:#1E7A4C;
  --error:#B42318;

  /* 字体刻度：8px 基线，移动端起，桌面端 clamp 渐进 */
  --fs-display:clamp(30px,5.2vw,54px);
  --fs-h2:clamp(23px,2.6vw,36px);
  --fs-h3:clamp(17px,1.5vw,21px);
  --fs-lead:clamp(15px,1.3vw,18px);
  --fs-body:16px;
  --fs-sm:14px;
  --fs-xs:12px;

  /* 间距 */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px;
  --sp-5:24px; --sp-6:32px; --sp-7:48px; --sp-8:64px;
  --section:clamp(56px,7.5vw,104px);
  --gutter:clamp(20px,4vw,40px);
  --max:1200px;

  --r-sm:10px; --r-md:16px; --r-lg:24px; --r-pill:999px;
  --shadow-1:0 1px 2px rgba(0,48,31,.06),0 8px 24px rgba(0,48,31,.06);
  --shadow-2:0 2px 4px rgba(0,48,31,.08),0 18px 48px rgba(0,48,31,.12);
  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:.24s;
}

/* ============================================================
   基础
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:var(--fs-body);line-height:1.7;
  -webkit-font-smoothing:antialiased;
  padding-bottom:calc(60px + env(safe-area-inset-bottom)); /* 移动端底部转化条 */
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,ul,figure{margin:0}
ul{padding:0;list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--sand-400);outline-offset:3px;border-radius:4px}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--green-800);color:#fff;padding:10px 16px;border-radius:8px;transition:top .2s}
.skip:focus{top:12px}

/* 区块标题：统一的左对齐叙事头 */
.sec{padding-block:var(--section)}
.sec--soft{background:var(--bg-soft)}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;
  color:var(--sand-600);font-weight:600;margin-bottom:14px;
}
.eyebrow::before{content:"";width:24px;height:1px;background:var(--sand-400)}
.sec-head{max-width:640px;margin-bottom:clamp(28px,3.4vw,52px)}
.sec-head h2{font-size:var(--fs-h2);line-height:1.25;letter-spacing:-.01em;font-weight:700}
.sec-head p{margin-top:12px;color:var(--ink-2);font-size:var(--fs-lead)}
.sec-head--row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;max-width:none}

/* 按钮 */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:0 26px;border-radius:var(--r-pill);
  font-size:var(--fs-body);font-weight:600;letter-spacing:.02em;
  transition:transform var(--dur) var(--ease),background-color var(--dur),box-shadow var(--dur),color var(--dur);
  will-change:transform;
}
.btn--primary{background:var(--green-800);color:#fff;box-shadow:0 6px 18px rgba(0,63,45,.18)}
.btn--primary:hover{background:var(--green-700);transform:translateY(-2px)}
.btn--primary:active{transform:scale(.97)}
.btn--ghost{color:var(--green-800);box-shadow:inset 0 0 0 1px var(--green-100);background:rgba(255,255,255,.5)}
.btn--ghost:hover{background:var(--green-50);transform:translateY(-2px)}
.btn--light{background:#fff;color:var(--green-800)}
.btn--light:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.btn--onDark{color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.32)}
.btn--onDark:hover{background:rgba(255,255,255,.1)}
.btn--sm{min-height:40px;padding:0 18px;font-size:var(--fs-sm)}
.btn .arw{transition:transform var(--dur) var(--ease)}
.btn:hover .arw{transform:translateX(4px)}

.link-more{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:600;color:var(--green-700);min-height:44px}
.link-more::after{content:"→";transition:transform var(--dur) var(--ease)}
.link-more:hover::after{transform:translateX(4px)}

/* ============================================================
   页头
   ============================================================ */
.topbar{display:none;background:var(--green-900);color:#D7E4DE;font-size:var(--fs-xs);letter-spacing:.04em}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:36px}
.topbar span{white-space:nowrap}
.topbar span + span{display:none}
.topbar a{color:#fff;font-weight:600}

.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-2);transition:box-shadow var(--dur),border-color var(--dur)}
.header.is-scrolled{box-shadow:0 1px 0 var(--line),0 10px 30px rgba(0,48,31,.06)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}
.logo{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.logo img{height:38px;width:auto}

.nav{display:none;gap:clamp(6px,1.4vw,22px);align-items:center}
.nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:500;color:var(--ink-2);white-space:nowrap;transition:color var(--dur)}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:10px;height:2px;background:var(--green-800);transform:scaleX(0);transform-origin:left;transition:transform var(--dur) var(--ease)}
.nav a:hover,.nav a[aria-current]{color:var(--green-800)}
.nav a:hover::after,.nav a[aria-current]::after{transform:scaleX(1)}
.nav-item{position:relative}
.nav-sub{
  position:absolute;top:100%;left:-16px;min-width:170px;padding:8px;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:var(--shadow-2);opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .18s,transform .18s,visibility .18s;
}
.nav-item:hover .nav-sub,.nav-item:focus-within .nav-sub{opacity:1;visibility:visible;transform:translateY(0)}
.nav-sub a{display:block;padding:10px 14px;min-height:44px;border-radius:8px;font-size:14px}
.nav-sub a::after{display:none}
.nav-sub a:hover{background:var(--green-50)}

.head-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.head-actions > .btn{display:none}
.head-tel{display:none;align-items:center;gap:8px;font-weight:700;color:var(--green-800);font-variant-numeric:tabular-nums;white-space:nowrap}
.head-tel .dot{width:6px;height:6px;border-radius:50%;background:var(--success)}

/* 汉堡 */
.burger{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:var(--green-800)}
.burger:hover{background:var(--green-50)}
.burger .bars{position:relative;width:20px;height:14px}
.burger .bars::before,.burger .bars::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s var(--ease),top .25s var(--ease)}
.burger .bars::before{top:2px}
.burger .bars::after{top:10px}
body.is-drawer .burger .bars::before{top:6px;transform:rotate(45deg)}
body.is-drawer .burger .bars::after{top:6px;transform:rotate(-45deg)}

/* 抽屉导航 */
.drawer{
  position:fixed;inset:0;z-index:99;background:#fff;padding:76px var(--gutter) 120px;
  transform:translateY(-8px);opacity:0;visibility:hidden;overflow-y:auto;
  transition:opacity .26s var(--ease),transform .26s var(--ease),visibility .26s;
}
body.is-drawer .drawer{transform:none;opacity:1;visibility:visible}
.drawer ul{border-top:1px solid var(--line-2)}
.drawer li a{display:flex;align-items:center;justify-content:space-between;padding:16px 4px;font-size:17px;font-weight:600;border-bottom:1px solid var(--line-2)}
.drawer li a .n{font-size:12px;color:var(--ink-3);font-weight:500;letter-spacing:.08em}
.drawer .sub a{padding-left:20px;font-size:15px;font-weight:400;color:var(--ink-2)}
.drawer-cta{display:grid;gap:10px;margin-top:28px}

/* ============================================================
   Hero
   ============================================================ */
.hero{position:relative;background:var(--green-800);color:#fff;overflow:hidden}
.hero::after{ /* 极淡的网格纹理，替代满屏噪点 */
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:64px 64px;mask-image:linear-gradient(160deg,#000,transparent 70%);
}
.hero-media{position:relative}
.hero-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.hero-body{position:relative;z-index:1;padding:clamp(32px,5vw,56px) var(--gutter) clamp(36px,5vw,64px)}
.hero h1{font-size:var(--fs-display);line-height:1.18;letter-spacing:-.02em;font-weight:700;text-wrap:balance}
.hero .kicker{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--sand-200);margin-bottom:18px}
.hero .kicker::before{content:"";width:24px;height:1px;background:currentColor}
.hero-sub{margin-top:18px;color:#CBDCD5;font-size:var(--fs-lead);letter-spacing:.02em}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-actions .btn{flex:1 1 0;min-width:0;padding:0 18px}

/* 五个卖点 */
.feats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);margin-top:clamp(32px,4vw,52px)}
.feats li{background:var(--green-800);padding:18px 8px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}
.feats .fi{color:var(--sand-200);height:22px;display:flex;align-items:center}
.feats b{font-size:15px;font-weight:600;letter-spacing:.04em;line-height:1.5}
.feats span{font-size:10.5px;line-height:1.55;letter-spacing:.02em;color:#9CBBAF;min-height:32px}
.feats li:last-child{grid-column:1 / -1}

/* ============================================================
   产品系列：交错横排（桌面）/ 竖卡（移动）
   ============================================================ */
.plist{display:grid;gap:20px}
.pcard{
  display:grid;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur);
}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--green-100)}
.pcard-media{position:relative;overflow:hidden;background:var(--green-50)}
.pcard-media img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .5s var(--ease)}
.pcard:hover .pcard-media img{transform:scale(1.04)}
.pcard-no{
  position:absolute;top:14px;left:14px;z-index:1;
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.92);color:var(--green-800);
  font-size:12px;font-weight:700;letter-spacing:.02em;backdrop-filter:blur(6px);
}
.pcard-body{padding:22px 20px 24px;display:flex;flex-direction:column;gap:10px}
.pcard-body h3{font-size:var(--fs-h3);font-weight:700;letter-spacing:.01em}
.pcard-body .en{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-top:-6px}
.pcard-body p{font-size:var(--fs-sm);line-height:1.85;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.pcard-body .link-more{margin-top:auto}

/* ============================================================
   案例：Bento 网格
   ============================================================ */
.bento{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.case{position:relative;display:block;overflow:hidden;border-radius:var(--r-md);background:var(--green-50)}
.case img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .6s var(--ease)}
.case::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,32,21,.62));opacity:.9;transition:opacity var(--dur)}
.case:hover img{transform:scale(1.05)}
.case:hover::after{opacity:1}
.case .tag{position:absolute;left:12px;bottom:12px;z-index:1;color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;display:inline-flex;align-items:center;gap:6px}
.case .tag::before{content:"";width:14px;height:1px;background:rgba(255,255,255,.7)}
.case:first-child{grid-column:span 2}
.case:first-child img{aspect-ratio:16/10}
.bento-foot{display:flex;justify-content:center;margin-top:28px}

/* ============================================================
   服务流程：横向步骤条 → 移动端 2×4
   ============================================================ */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.steps li{background:#fff;padding:20px 12px;display:flex;flex-direction:column;gap:4px;transition:background var(--dur)}
.steps li:hover{background:var(--green-50)}
.steps .idx{font-size:11px;letter-spacing:.1em;color:var(--sand-600);font-weight:700}
.steps b{font-size:15px;font-weight:600}
.steps small{font-size:11px;color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase}

/* ============================================================
   数据带
   ============================================================ */
.stats{background:var(--green-800);color:#fff}
.stats .wrap{padding-block:clamp(40px,5vw,64px)}
.stats-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;margin-bottom:clamp(28px,3vw,40px)}
.stats-head h2{font-size:var(--fs-h2);font-weight:700;line-height:1.3}
.stats-head p{color:#A8C4B8;font-size:var(--fs-sm);letter-spacing:.06em}
.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 16px}
.stat .n{font-size:clamp(30px,4.4vw,48px);font-weight:700;line-height:1;letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums}
.stat .n i{font-style:normal;font-size:.42em;color:var(--sand-200);margin-left:4px;font-weight:600}
.stat p{margin-top:10px;font-size:13px;color:#A8C4B8;letter-spacing:.02em}
.stat{border-top:1px solid rgba(255,255,255,.16);padding-top:16px}

/* ============================================================
   企业简介 + 视频
   ============================================================ */
.about{display:grid;gap:28px}
.about-copy p{color:var(--ink-2);font-size:var(--fs-body);line-height:2;margin-top:16px}
.about-copy .quote{margin-top:20px;padding-left:16px;border-left:2px solid var(--sand-200);color:var(--ink-3);font-size:var(--fs-sm)}
.video{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--green-900);aspect-ratio:16/10;cursor:pointer;display:block;width:100%}
.video img{width:100%;height:100%;object-fit:cover;opacity:.82;transition:transform .6s var(--ease),opacity var(--dur)}
.video:hover img{transform:scale(1.03);opacity:.9}
.video .play{
  position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;
  background:rgba(255,255,255,.94);display:grid;place-items:center;color:var(--green-800);
  box-shadow:0 8px 28px rgba(0,0,0,.28);transition:transform var(--dur) var(--ease);
}
.video:hover .play{transform:scale(1.08)}

/* ============================================================
   动态：Tab + 卡片
   ============================================================ */
.tabs{display:inline-flex;gap:6px;padding:5px;background:var(--bg-soft);border:1px solid var(--line-2);border-radius:var(--r-pill)}
.tab{min-height:40px;padding:0 18px;border-radius:var(--r-pill);font-size:14px;font-weight:600;color:var(--ink-3);transition:background var(--dur),color var(--dur)}
.tab[aria-selected="true"]{background:var(--green-800);color:#fff}

.newscroll{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none}
.newscroll::-webkit-scrollbar{display:none}
.news{scroll-snap-align:start;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur)}
.news:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.news img{width:100%;aspect-ratio:16/10;object-fit:cover}
.news .nb{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}
.news time{font-size:12px;color:var(--ink-3);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.news h3{font-size:15px;line-height:1.6;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news .more{margin-top:auto;font-size:13px;color:var(--green-700);font-weight:600;display:inline-flex;align-items:center;gap:4px;min-height:36px}
.news .more::after{content:"→";transition:transform var(--dur) var(--ease)}
.news:hover .more::after{transform:translateX(3px)}

/* ============================================================
   报价表单
   ============================================================ */
.quote{background:var(--green-900);color:#fff;border-radius:0}
.quote .wrap{padding-block:clamp(36px,5vw,64px)}
.quote-grid{display:grid;gap:26px}
.quote h2{font-size:clamp(21px,2.4vw,30px);font-weight:700;line-height:1.35}
.quote .sub{margin-top:10px;color:#A8C4B8;font-size:14px}
.quote .sub b{color:var(--sand-200);font-variant-numeric:tabular-nums}
.q-tel{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:6px}
.q-tel span{font-size:12px;letter-spacing:.08em;color:#8FA9A0}
.q-tel a{font-size:clamp(22px,2.4vw,28px);font-weight:700;letter-spacing:.01em;font-variant-numeric:tabular-nums}
.form{display:grid;gap:12px}
.field{display:grid;gap:6px}
.field label{font-size:12px;letter-spacing:.06em;color:#9CBCAF}
.field input{
  width:100%;min-height:50px;padding:0 16px;border-radius:12px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);color:#fff;
  font-size:16px;transition:border-color var(--dur),background var(--dur);
}
.field input::placeholder{color:#7E9C90}
.field input:focus{outline:none;border-color:var(--sand-200);background:rgba(255,255,255,.12)}
.form .tip{font-size:12px;color:#7E9C90}
.form .btn{width:100%;margin-top:4px}

/* ============================================================
   页脚
   ============================================================ */
.footer{background:#04231A;color:#B9CCC4;font-size:14px}
.footer a{color:#D5E4DD}
.footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.f-main{padding-block:clamp(36px,4vw,56px);display:grid;gap:28px}
.f-brand{display:flex;flex-direction:column;gap:14px}
.f-word{font-size:22px;font-weight:700;color:#fff;letter-spacing:.16em}
.f-qr{display:flex;gap:16px}
.f-qr figure{text-align:center}
.f-qr img{width:84px;height:84px;border-radius:10px;background:#fff;padding:4px}
.f-qr figcaption{font-size:11px;margin-top:6px;color:#8FA9A0}
.f-cols{display:grid;gap:0}
.f-col{border-bottom:1px solid rgba(255,255,255,.1)}
.f-col > summary{
  display:flex;align-items:center;justify-content:space-between;
  min-height:52px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;list-style:none;
}
.f-col > summary::-webkit-details-marker{display:none}
.f-col > summary::after{content:"+";font-size:18px;color:#8FA9A0;transition:transform var(--dur)}
.f-col[open] > summary::after{transform:rotate(45deg)}
.f-col .links{display:grid;gap:2px;padding-bottom:14px}
.f-col .links a{display:inline-flex;align-items:center;min-height:36px;font-size:13px;color:#A9C0B7}
.f-links-row{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:#8FA9A0;padding-block:18px;border-top:1px solid rgba(255,255,255,.08)}
.f-links-row a{color:#8FA9A0}
.f-bottom{padding-block:18px;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:12px;color:#7E968D;border-top:1px solid rgba(255,255,255,.08)}
.f-bottom a{color:#8FA9A0}
.f-bottom .icp{display:inline-flex;align-items:center;gap:6px}

/* ============================================================
   移动端底部转化条
   ============================================================ */
.mbar{
  position:fixed;left:0;right:0;bottom:0;z-index:98;display:grid;grid-template-columns:1fr 1fr 1.2fr;
  gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.97);backdrop-filter:blur(14px);
  border-top:1px solid var(--line);transition:transform .26s var(--ease);
}
.mbar a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:12px;font-size:14px;font-weight:600;color:var(--green-800);box-shadow:inset 0 0 0 1px var(--green-100)}
.mbar a.primary{background:var(--green-800);color:#fff;box-shadow:none}
body.is-drawer .mbar{transform:translateY(120%)}

/* ============================================================
   进场动画（仅 transform / opacity）
   ============================================================ */
[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
[data-reveal].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1;transform:none;transition:none}
  *{animation-duration:.001ms !important;transition-duration:.001ms !important}
}

/* ============================================================
   ≥576px 手机横屏 / 小平板
   ============================================================ */
@media (min-width:576px){
  .head-actions > .btn{display:inline-flex}
  .feats{grid-template-columns:repeat(5,minmax(0,1fr))}
  .feats li:last-child{grid-column:auto}
  .feats li{padding:20px 14px 18px}
  .pcard{grid-template-columns:44% 1fr;align-items:stretch}
  .pcard-media img{height:100%;aspect-ratio:auto;min-height:220px}
  .pcard-body{padding:24px}
  .newscroll{grid-auto-columns:46%}
  .f-cols{grid-template-columns:repeat(2,1fr);gap:0 24px}
}

/* ============================================================
   ≥768px 平板
   ============================================================ */
@media (min-width:768px){
  .topbar{display:block}
  .header .wrap{min-height:72px}
  .logo img{height:44px}
  .hero-media img{aspect-ratio:16/9}
  .hero-actions .btn{flex:0 0 auto}
  .steps{grid-template-columns:repeat(4,1fr)}
  .stat-grid{grid-template-columns:repeat(4,1fr)}
  .about{grid-template-columns:1fr 1fr;align-items:center;gap:36px}
  .bento{grid-template-columns:repeat(4,1fr);gap:14px}
  .case:first-child{grid-column:span 2;grid-row:span 2}
  .case:first-child img{aspect-ratio:auto;height:100%}
  .case img{aspect-ratio:4/3}
  .case:last-child{grid-column:span 4}
  .case:last-child img{aspect-ratio:21/7}
  .quote-grid{grid-template-columns:1fr 1fr;align-items:center;gap:40px}
  .f-main{grid-template-columns:1.1fr 1.6fr;align-items:start;gap:48px}
  .f-cols{grid-template-columns:repeat(2,1fr);gap:0 24px}
  .f-col{border-bottom:0}
  .f-col > summary{pointer-events:none;min-height:0;margin-bottom:10px;font-size:13px;color:#8FA9A0;letter-spacing:.08em;text-transform:uppercase}
  .f-col > summary::after{display:none}
  .f-col .links{display:grid !important;padding-bottom:0}
  .news-more{display:block}
  .f-cols{grid-template-columns:repeat(4,1fr);gap:0 16px}
}

/* ============================================================
   ≥992px 笔记本
   ============================================================ */
@media (min-width:992px){
  body{padding-bottom:0}
  .mbar{display:none}
  .nav{display:flex}
  .burger{display:none}
  .drawer{display:none}
  .head-actions .btn{display:inline-flex}
  .hero{display:grid;grid-template-columns:minmax(0,50%) minmax(0,1fr);align-items:stretch}
  .hero-media{order:2;min-height:100%}
  .hero-media img{height:100%;aspect-ratio:auto;object-fit:cover;object-position:60% center}
  .hero-body{order:1;display:flex;flex-direction:column;justify-content:center;padding-block:clamp(56px,6vw,88px);padding-inline:clamp(32px,3vw,48px)}
  .feats li{padding:24px 10px 22px}
  .plist{grid-template-columns:repeat(2,1fr);gap:24px}
  .pcard{grid-template-columns:1fr;display:flex;flex-direction:column}
  .pcard-media img{aspect-ratio:16/11;min-height:0;height:auto}
  .pcard-body{padding:26px 26px 28px}
  .pcard-body p{-webkit-line-clamp:5}
  .steps{grid-template-columns:repeat(8,1fr)}
  .steps li{padding:24px 10px}
  .steps b{font-size:14px}
  .about{grid-template-columns:1.05fr .95fr;gap:56px}
  .newscroll{
    grid-auto-flow:row;grid-template-columns:repeat(4,1fr);grid-auto-columns:auto;
    overflow:visible;margin-inline:0;padding-inline:0;
  }
}

/* ============================================================
   ≥1200px 桌面
   ============================================================ */
@media (min-width:1200px){
  body{padding-bottom:0}
  .mbar{display:none}
  .header .wrap{min-height:80px}
  .nav a{font-size:15px}
  .head-tel{display:inline-flex}
  .topbar span + span{display:inline}
  .hero{grid-template-columns:minmax(0,44%) minmax(0,1fr)}
  .feats li{padding:24px 18px 22px}
  .hero-body{padding-inline:clamp(32px,3vw,48px)}
  .sec-head--row{flex-wrap:nowrap}
}
/* ============================================================
   内页通用：页头大图区 / 面包屑 / 标签
   ============================================================ */
.page-hero{position:relative;background:var(--green-800);color:#fff;overflow:hidden}
.page-hero .wrap{position:relative;z-index:1;padding-block:clamp(28px,4vw,44px) clamp(32px,4vw,52px)}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:#8FB3A5;margin-bottom:18px}
.crumbs a{color:#B7D1C6;min-height:24px;display:inline-flex;align-items:center}
.crumbs a:hover{color:#fff}
.crumbs span{color:#6E8F82}
.crumbs .sep{color:#4E6E61}
.page-hero h1{font-size:clamp(26px,3.4vw,40px);line-height:1.24;letter-spacing:-.01em;font-weight:700;text-wrap:balance}
.page-hero .ph-sub{margin-top:12px;color:#B7D1C6;font-size:clamp(14px,1.2vw,16px)}
.page-hero .ph-en{margin-top:8px;font-size:11px;letter-spacing:.16em;color:#7E9C90;text-transform:uppercase}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chip{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:var(--r-pill);font-size:13px;color:#DCEAE3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.chips--light .chip{color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);background:#fff}
.ph-media{margin-top:clamp(24px,3vw,36px);border-radius:var(--r-lg);overflow:hidden;background:var(--green-900)}
.ph-media img{width:100%;aspect-ratio:16/9;object-fit:cover}
@media (min-width:768px){
  .page-hero .wrap{padding-block:clamp(36px,4vw,56px) clamp(44px,5vw,72px)}
  .ph-media{margin-top:0}
}
@media (min-width:992px){
  .page-hero .wrap{display:grid;grid-template-columns:1fr .92fr;align-items:center;gap:clamp(32px,4vw,64px)}
  .ph-media img{aspect-ratio:4/3}
}

/* 优势条 */
.usp{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line)}
.usp li{background:#fff;padding:22px 18px;display:flex;flex-direction:column;gap:6px}
.usp .ui{color:var(--green-700);margin-bottom:4px}
.usp b{font-size:15px;font-weight:600}
.usp span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
@media (min-width:768px){.usp{grid-template-columns:repeat(4,1fr)}.usp li{padding:26px 22px}}

/* 图文交替 */
.media-row{display:grid;gap:24px;align-items:center}
.media-row + .media-row{margin-top:clamp(40px,5vw,72px)}
.media-row .mr-img{border-radius:var(--r-lg);overflow:hidden;background:var(--green-50)}
.media-row .mr-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.media-row h2{font-size:var(--fs-h2);line-height:1.28;font-weight:700;letter-spacing:-.01em}
.media-row h3{font-size:var(--fs-h3);font-weight:700;margin-bottom:10px}
.media-row p{color:var(--ink-2);font-size:var(--fs-sm);line-height:2;margin-top:14px}
.media-row .mt{margin-top:20px}
@media (min-width:768px){
  .media-row{grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}
  .media-row:nth-child(even) .mr-img{order:2}
}

/* 材质/细节网格 */
.specs{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
.spec{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column}
.spec img{width:100%;aspect-ratio:4/3;object-fit:cover}
.spec div{padding:12px}
.spec p{font-size:13px;line-height:1.7;color:var(--ink-2)}
@media (min-width:768px){.specs{grid-template-columns:repeat(4,1fr)}}
@media (min-width:1200px){.specs{gap:16px}}

/* 对比表 */
.vs{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.vs-head{display:grid;grid-template-columns:1fr 1fr;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.vs-head div{padding:14px 16px;font-size:13px;font-weight:700;color:var(--ink-2);text-align:center}
.vs-head div:last-child{background:var(--green-50);color:var(--green-800)}
.vs-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line-2)}
.vs-row:last-child{border-bottom:0}
.vs-row div{padding:16px;font-size:13.5px;line-height:1.6;display:flex;align-items:flex-start;gap:8px}
.vs-row div:first-child{color:var(--ink-3)}
.vs-row div:last-child{color:var(--ink);background:var(--green-50)}
.vs-row b{display:block;font-weight:700;font-size:14px;margin-bottom:2px}
.vs-row em{font-style:normal;font-weight:700;flex:0 0 auto}
.vs-row .no{color:var(--error)}
.vs-row .yes{color:var(--success)}
.vs-row p{margin:0;font-size:12.5px}

/* 案例瀑布网格 */
.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.case-card{position:relative;display:block;border-radius:var(--r-md);overflow:hidden;background:var(--green-50)}
.case-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s var(--ease)}
.case-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,32,21,.66))}
.case-card:hover img{transform:scale(1.05)}
.case-card .cc-t{position:absolute;left:12px;right:12px;bottom:11px;z-index:1;color:#fff;font-size:13px;font-weight:600;line-height:1.5}
.case-card .cc-tag{position:absolute;top:10px;left:10px;z-index:1;font-size:11px;padding:3px 9px;border-radius:var(--r-pill);background:rgba(255,255,255,.92);color:var(--green-800);font-weight:600}
@media (min-width:768px){.case-grid{grid-template-columns:repeat(3,1fr);gap:16px}}

/* 筛选条 */
.filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(20px,2.6vw,32px)}
.filter button{min-height:38px;padding:0 16px;border-radius:var(--r-pill);font-size:13px;font-weight:600;color:var(--ink-2);background:#fff;box-shadow:inset 0 0 0 1px var(--line);transition:background var(--dur),color var(--dur),box-shadow var(--dur)}
.filter button:hover{background:var(--green-50)}
.filter button[aria-pressed="true"]{background:var(--green-800);color:#fff;box-shadow:none}

/* 分页 */
.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-top:clamp(28px,3.4vw,44px)}
.pager a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:10px;font-size:14px;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);background:#fff}
.pager a:hover{background:var(--green-50)}
.pager a[aria-current]{background:var(--green-800);color:#fff;box-shadow:none;font-weight:700}
.pager .gap{color:var(--ink-3);padding:0 4px}

/* 视频网格 */
.video-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
.vcard{position:relative;display:block;border-radius:var(--r-md);overflow:hidden;background:var(--green-900)}
.vcard img{width:100%;aspect-ratio:16/10;object-fit:cover;opacity:.9;transition:transform .6s var(--ease),opacity var(--dur)}
.vcard:hover img{transform:scale(1.05);opacity:1}
.vcard .vp{position:absolute;inset:0;margin:auto;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;color:var(--green-800)}
.vcard .vt{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 10px;font-size:13px;color:#fff;font-weight:600;background:linear-gradient(transparent,rgba(0,25,17,.8))}
@media (min-width:768px){.video-grid{grid-template-columns:repeat(4,1fr);gap:16px}}

/* 资讯列表 */
.news-rows{display:grid;gap:0;border-top:1px solid var(--line)}
.news-row{display:grid;grid-template-columns:96px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.news-row img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--green-50)}
.news-row time{font-size:12px;color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums}
.news-row h3{font-size:15px;font-weight:600;line-height:1.6;margin-top:4px}
.news-row h3 a:hover{color:var(--green-700)}
.news-row p{font-size:13px;color:var(--ink-3);line-height:1.75;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-row:hover h3{color:var(--green-700)}
@media (min-width:768px){
  .news-row{grid-template-columns:220px 1fr;gap:24px;padding:22px 0}
  .news-row p{-webkit-line-clamp:2}
}

/* 文章详情 */
.article{max-width:760px;margin-inline:auto}
.article h1{font-size:clamp(23px,2.8vw,34px);line-height:1.35;font-weight:700;letter-spacing:-.01em}
.article .meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;font-size:13px;color:var(--ink-3);padding-bottom:22px;border-bottom:1px solid var(--line)}
.article-body p{font-size:16px;line-height:2;color:var(--ink-2);margin-top:20px}
.article-body h2{font-size:19px;font-weight:700;margin-top:32px;color:var(--ink)}
.article-body figure{margin-top:24px}
.article-body img{width:100%;border-radius:var(--r-md)}
.article-body figcaption{margin-top:8px;font-size:12px;color:var(--ink-3);text-align:center}

/* 时间轴 */
.timeline{position:relative;display:grid;gap:0;margin-top:8px}
.timeline::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:var(--line)}
.tl-item{position:relative;padding:0 0 24px 30px}
.tl-item::before{content:"";position:absolute;left:2px;top:6px;width:11px;height:11px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px var(--green-700)}
.tl-item b{display:block;font-size:15px;color:var(--green-800);letter-spacing:.02em;font-variant-numeric:tabular-nums}
.tl-item p{font-size:13.5px;color:var(--ink-2);line-height:1.8;margin-top:4px}
@media (min-width:768px){
  .timeline{grid-template-columns:repeat(2,1fr);gap:0 40px}
  .timeline::before{left:calc(50% + 3px)}
  .tl-item{padding-left:0;padding-right:34px;text-align:right}
  .tl-item::before{left:auto;right:-4px}
  .tl-item:nth-child(even){grid-column:2;padding-right:0;padding-left:34px;text-align:left}
  .tl-item:nth-child(even)::before{left:-4px;right:auto}
}

/* 荣誉 */
.honor{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.honor img{width:100%;border-radius:10px;border:1px solid var(--line);background:#fff;aspect-ratio:4/3;object-fit:cover}
@media (min-width:768px){.honor{grid-template-columns:repeat(6,1fr);gap:14px}}

/* 相关产品 */
.rel{display:grid;gap:12px}
.rel-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:12px;transition:transform var(--dur) var(--ease),box-shadow var(--dur)}
.rel-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-1)}
.rel-card img{width:88px;height:66px;object-fit:cover;border-radius:8px;flex:0 0 auto}
.rel-card b{display:block;font-size:15px}
.rel-card span{font-size:12px;color:var(--ink-3)}
@media (min-width:768px){.rel{grid-template-columns:repeat(3,1fr)}}

/* 联系页 */
.contact-grid{display:grid;gap:28px}
.contact-card{display:grid;gap:2px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.contact-card a,.contact-card div{background:#fff;padding:18px 20px;display:grid;gap:4px}
.contact-card span{font-size:12px;letter-spacing:.06em;color:var(--ink-3)}
.contact-card strong{font-size:clamp(17px,1.8vw,20px);font-weight:700;color:var(--green-800);font-variant-numeric:tabular-nums}
.contact-card p{font-size:14px;color:var(--ink-2);line-height:1.7}
@media (min-width:768px){.contact-grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:40px}}

/* 多列步骤（内页用） */
.steps--grid{grid-template-columns:repeat(2,1fr)}
@media (min-width:768px){.steps--grid{grid-template-columns:repeat(3,1fr)}}

/* 浅色表单（联系我们页） */
.form--light .field label{color:var(--ink-3)}
.form--light .field input{background:#fff;border-color:var(--line);color:var(--ink)}
.form--light .field input::placeholder{color:#9AA7A2}
.form--light .field input:focus{border-color:var(--green-600);background:#fff;box-shadow:0 0 0 3px var(--green-50)}
.form--light{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(20px,3vw,32px)}

/* 细节修正 */
[hidden]{display:none !important}
.case-card .cc-t{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.page-hero .ph-sub{text-wrap:pretty}

/* 图标型图文块（关于我们用） */
.mr-icon{aspect-ratio:4/3;display:grid;place-items:center;background:var(--green-50)}
.mr-icon img{width:clamp(96px,13vw,150px)!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain}

/* 二级栏目高亮（关于我们/服务流程） */
.nav a.is-section{color:var(--green-800)}
.nav a.is-section::after{transform:scaleX(1);background:var(--green-300)}

/* ============================================================
   案例详情页
   ============================================================ */
.case-head{padding-block:clamp(18px,2.6vw,30px) 0;background:#fff}
.case-head .crumbs{margin-bottom:clamp(18px,2.2vw,26px);color:var(--ink-3)}
.case-head .crumbs a{color:var(--ink-2)}
.case-head .crumbs a:hover{color:var(--green-800)}
.case-head .crumbs .sep{color:#C3CCC8}
.case-head .crumbs span:last-child{color:var(--ink)}
.case-head .eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green-600);font-weight:600}
.case-head h1{margin-top:10px;font-size:clamp(26px,3.6vw,44px);line-height:1.22;letter-spacing:-.015em;font-weight:700;text-wrap:balance}

/* 项目参数条 */
.case-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line);margin-top:clamp(22px,2.8vw,32px)}
.case-meta > div{background:#fff;padding:14px 16px;min-width:0}
.case-meta dt{font-size:11px;letter-spacing:.14em;color:var(--ink-3)}
.case-meta dd{margin:4px 0 0;font-size:15px;font-weight:600;color:var(--green-800);font-variant-numeric:tabular-nums;overflow-wrap:break-word}
@media (min-width:768px){ .case-meta{grid-template-columns:repeat(4,1fr)} .case-meta > div{padding:16px 20px} }

/* 标签行（猜您想看） */
.case-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:clamp(16px,2vw,22px)}
.case-tags .lbl{font-size:12px;color:var(--ink-3);letter-spacing:.06em;margin-right:2px}
.case-tags a{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:var(--r-pill);font-size:13px;color:var(--ink-2);background:var(--bg-soft);box-shadow:inset 0 0 0 1px var(--line);transition:background var(--dur),color var(--dur),box-shadow var(--dur)}
.case-tags a:hover{background:var(--green-50);color:var(--green-800);box-shadow:inset 0 0 0 1px var(--green-300)}

/* 封面 */
.case-cover{margin-top:clamp(22px,3vw,36px);border-radius:var(--r-lg);overflow:hidden;background:var(--green-50)}
.gal-btn{display:block;width:100%;padding:0;position:relative;cursor:zoom-in;overflow:hidden}
.gal-btn img{width:100%;height:auto;transition:transform .7s var(--ease)}
.gal-btn:hover img{transform:scale(1.02)}
.gal-btn .gz{position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(0,32,21,.5);color:#fff;backdrop-filter:blur(4px);transition:background var(--dur),opacity var(--dur);opacity:.85}
.gal-btn:hover .gz{background:var(--green-800)}
.case-cover .gal-btn img{aspect-ratio:5/3;object-fit:cover}

/* 图集 */
.gallery{display:grid;gap:12px;grid-template-columns:1fr;margin-top:clamp(16px,2.2vw,24px)}
.gal-item{border-radius:var(--r-md);overflow:hidden;background:var(--green-50);position:relative}
.gal-item img{width:100%;aspect-ratio:5/3;object-fit:cover}
.gal-item .gz{width:30px;height:30px;right:10px;top:10px}
.gallery .gal-item--wide{grid-column:1 / -1}
@media (min-width:768px){ .gallery{grid-template-columns:repeat(2,1fr);gap:16px} }

/* 放大查看（原生 dialog） */
.lb{position:fixed;inset:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;margin:0;padding:0;border:0;background:transparent;overscroll-behavior:contain}
.lb::backdrop{background:rgba(0,16,11,.97)}
.lb-inner{position:relative;display:grid;grid-template-rows:1fr auto;width:100%;height:100%;padding:clamp(48px,6vw,72px) clamp(12px,4vw,56px) clamp(20px,3vw,32px)}
.lb-stage{display:grid;place-items:center;min-height:0}
.lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:10px;background:#0B1A14}
.lb-cap{color:#B9CFC5;font-size:13px;text-align:center;padding-top:14px;line-height:1.6}
.lb-cap b{color:#fff;font-weight:600;font-variant-numeric:tabular-nums;margin-right:10px}
.lb-x,.lb-prev,.lb-next{position:absolute;z-index:2;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;transition:background var(--dur),transform var(--dur)}
.lb-x:hover,.lb-prev:hover,.lb-next:hover{background:rgba(255,255,255,.24)}
.lb-x{top:clamp(8px,2vw,18px);right:clamp(8px,2vw,20px)}
.lb-prev,.lb-next{top:50%;margin-top:-22px}
.lb-prev{left:clamp(6px,1.6vw,20px)}
.lb-next{right:clamp(6px,1.6vw,20px)}
.lb :focus-visible{outline-color:#fff}
body.lb-open{overflow:hidden}

/* 相关案例 */
.rel-cases .tabs{margin-bottom:clamp(18px,2.4vw,26px)}
.rc-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
.rc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur)}
.rc:hover{transform:translateY(-3px);box-shadow:var(--shadow-1);border-color:var(--green-300)}
.rc img{width:100%;aspect-ratio:5/3;object-fit:cover;background:var(--green-50)}
.rc .rc-b{padding:12px 14px;display:flex;flex-direction:column;gap:4px;justify-content:space-between;flex:1}
.rc b{font-size:14.5px;font-weight:600;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rc time{font-size:12px;color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums}
@media (min-width:768px){ .rc-grid{grid-template-columns:repeat(3,1fr);gap:16px} .rc .rc-b{padding:14px 16px} }

/* ============================================================
   资讯详情页
   ============================================================ */
.art-head{background:#fff;padding-block:clamp(18px,2.6vw,28px) clamp(20px,2.8vw,30px);border-bottom:1px solid var(--line-2)}
.art-head .crumbs{margin-bottom:clamp(16px,2vw,24px);color:var(--ink-3)}
.art-head .crumbs a{color:var(--ink-2)}
.art-head .crumbs a:hover{color:var(--green-800)}
.art-head .crumbs .sep{color:#C3CCC8}
.art-head .crumbs span:last-child{color:var(--ink)}
.art-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green-600);font-weight:600}
.art-kicker::before{content:"";width:18px;height:1px;background:var(--green-300)}
.art-head h1{margin-top:10px;font-size:clamp(25px,3.4vw,40px);line-height:1.3;letter-spacing:-.015em;font-weight:700;text-wrap:balance;max-width:22em}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px;font-size:13px;color:var(--ink-3)}
.art-meta .dot{width:3px;height:3px;border-radius:50%;background:#C3CCC8;flex:0 0 auto}

/* 两栏布局 */
.art-layout{display:grid;gap:clamp(28px,4vw,44px);padding-block:clamp(24px,3vw,40px) 0}
.art-layout .article{max-width:none;margin:0;min-width:0}
.art-cover{margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--green-50)}
.art-cover img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.article-body p{font-size:16px;line-height:2.05;color:var(--ink-2);margin-top:20px}
.article-body > p:first-child{font-size:17px;line-height:1.95;color:var(--ink)}
.article-body figure img{display:block;background:var(--green-50)}
.art-note{margin-top:clamp(24px,3vw,34px);padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3);line-height:1.9}

/* 侧栏 */
.art-side{display:grid;gap:14px;min-width:0;align-content:start}
.side-card{background:var(--green-800);color:#fff;border-radius:var(--r-lg);padding:22px 20px;display:grid;gap:6px}
.side-card .sc-k{font-size:11px;letter-spacing:.16em;color:#8FB3A5}
.side-card .sc-tel{font-size:clamp(21px,2.2vw,25px);font-weight:700;color:#fff;font-variant-numeric:tabular-nums;line-height:1.35}
.side-card .sc-s{font-size:12.5px;color:#A8C4B8;line-height:1.75}
.side-card .btn{margin-top:12px}
.side-news{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:18px}
.side-news h2{font-size:14px;font-weight:700}
.side-news ul{margin-top:4px}
.side-news li + li{border-top:1px solid var(--line-2)}
.side-news a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;padding:12px 0;align-items:start}
.side-news img{width:64px;height:48px;object-fit:cover;border-radius:6px;background:var(--green-50)}
.side-news b{font-size:13px;font-weight:600;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.side-news time{display:block;margin-top:4px;font-size:11px;color:var(--ink-3);letter-spacing:.04em}
.side-news a:hover b{color:var(--green-700)}

/* 上一篇 / 返回列表 */
.art-pager{display:grid;gap:10px;margin-top:clamp(24px,3vw,32px);padding-top:clamp(20px,2.6vw,26px);border-top:1px solid var(--line)}
.art-pager a{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;color:var(--ink-2)}
.art-pager .lbl{font-size:12px;color:var(--ink-3);flex:0 0 auto;letter-spacing:.06em}
.art-pager b{font-weight:600;color:var(--ink);line-height:1.6}
.art-pager a:hover b{color:var(--green-700)}
.art-pager .back{justify-self:start;padding:0 18px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--line);font-weight:600;color:var(--green-800)}
.art-pager .back:hover{background:var(--green-50)}

@media (min-width:768px){
  .art-side{grid-template-columns:1fr 1fr}
  .art-pager{grid-template-columns:1fr auto;align-items:center}
  .art-pager .back{justify-self:end}
}
@media (min-width:992px){
  .art-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start}
  .art-side{grid-template-columns:1fr;position:sticky;top:96px}
}
@media (min-width:1200px){
  .art-layout{grid-template-columns:minmax(0,720px) 320px;justify-content:space-between;gap:48px}
}
.side-card .btn{width:100%;justify-content:center}
