@charset "utf-8";
/* 杭州乾球环境工程有限公司 官网样式 2026 改版
   极简科技白 · 墨绿主色 · 金色微点缀
   无外部依赖，纯 CSS + 原生 JS */

:root{
  --green-900:#0D2B22;
  --green-800:#123A2E;
  --green-700:#17513F;
  --green-600:#1F6B52;
  --green-500:#2E8B6B;
  --green-400:#5FAE8F;
  --green-100:#EAF3EE;
  --green-50:#F4F9F6;
  --gold-700:#8C6D3F;
  --gold-500:#C6A664;
  --gold-300:#E3D3AC;
  --paper:#FFFFFF;
  --paper-2:#F7F9F8;
  --paper-3:#EFF3F1;
  --line:#E5EAE7;
  --line-strong:#D6DED9;
  --text:#20261F;
  --text-2:#5C6660;
  --text-3:#96A09A;
  --white:#fff;
  --shadow-sm:0 1px 2px rgba(16,42,33,.05);
  --shadow-md:0 6px 24px rgba(16,42,33,.08);
  --shadow-lg:0 18px 48px rgba(16,42,33,.13);
  --font-sans:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Hiragino Sans GB",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-num:Georgia,"Times New Roman",serif;
  --maxw:1240px;
  --radius:10px;
  --radius-lg:16px;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;padding:0;
  font-family:var(--font-sans);
  font-size:15px;line-height:1.8;color:var(--text);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;border:0;}
a{color:inherit;text-decoration:none;transition:color .25s ease,background .25s ease,border-color .25s ease;}
ul,ol{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4,h5,p{margin:0;}
button{font-family:inherit;cursor:pointer;}
input,textarea,select{font-family:inherit;font-size:15px;}
table{max-width:100%;border-collapse:collapse;}
::selection{background:var(--green-100);color:var(--green-800);}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.wrap-narrow{max-width:900px;margin:0 auto;padding:0 28px;}

/* ---------- 通用：章节标题 ---------- */
.sec{padding:72px 0;}
.sec-alt{background:var(--paper-2);}
.sec-dark{background:var(--green-50);color:var(--text);}
.sec-head{text-align:center;margin-bottom:40px;}
.sec-head .en{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-num);font-size:12px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold-700);margin-bottom:14px;
}
.sec-head .en::before,.sec-head .en::after{
  content:"";width:22px;height:1px;background:var(--gold-300);
}
.sec-head h2{
  font-size:32px;font-weight:600;letter-spacing:.02em;
  color:var(--green-900);line-height:1.35;
}
.sec-head .sub{margin-top:10px;color:var(--text-2);font-size:14.5px;}
.sec-head::after{content:none;}
.sec-dark .sec-head h2{color:var(--green-900);}
.sec-dark .sec-head .sub{color:var(--text-2);}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:13px 34px;font-size:15px;letter-spacing:.04em;
  border:1px solid transparent;border-radius:999px;
  transition:all .28s ease;
}
.btn-primary{background:var(--green-700);color:#fff;border-color:var(--green-700);box-shadow:var(--shadow-sm);}
.btn-primary:hover{background:var(--green-800);border-color:var(--green-800);box-shadow:var(--shadow-md);transform:translateY(-1px);}
.btn-ghost{border-color:var(--green-600);color:var(--green-700);background:transparent;}
.btn-ghost:hover{background:var(--green-700);border-color:var(--green-700);color:#fff;}
.btn-gold{background:var(--green-700);color:#fff;border-color:var(--green-700);box-shadow:var(--shadow-sm);}
.btn-gold:hover{background:var(--green-600);border-color:var(--green-600);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-1px);}
.btn-light{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(4px);}
.btn-light:hover{background:#fff;color:var(--green-900);border-color:#fff;}

/* ---------- 顶部条 ---------- */
.topbar{background:#fff;color:var(--text-2);font-size:12.5px;border-bottom:1px solid var(--line);}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:38px;}
.topbar span{margin-right:20px;}
.topbar i{color:var(--gold-700);font-style:normal;margin-right:6px;}
.topbar .right a:hover{color:var(--green-600);}
.topbar .right span{color:var(--text-3);}

/* ---------- 导航（通栏吸顶，内容与页面同宽，菜单均分） ---------- */
.header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid rgba(229,234,231,.9);
  box-shadow:var(--shadow-sm);
}
.header .wrap{
  display:flex;align-items:center;justify-content:space-between;
  max-width:var(--maxw);
  margin:0 auto;
  height:64px;
  padding:0 28px;
  gap:14px;
}
.header.scrolled{box-shadow:var(--shadow-md);}
.logo{display:flex;align-items:center;gap:13px;flex-shrink:0;}
.logo img{height:44px;width:auto;}
.logo-txt{display:none;} /* logo 图片已含中英文站名，隐藏模板文字避免重复 */
.logo-txt .cn{font-size:19px;font-weight:600;color:var(--green-900);letter-spacing:.08em;line-height:1.25;}
.logo-txt .en{font-family:var(--font-num);font-size:10px;letter-spacing:.18em;color:var(--text-3);text-transform:uppercase;}

.nav{display:flex;align-items:stretch;gap:0;flex:1;height:100%;}
.nav>li{position:static;flex:1;display:flex;align-items:center;justify-content:center;}
.nav>li>a{
  display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  padding:0 4px;font-size:clamp(13.5px,1.05vw,15px);color:var(--text-2);
  letter-spacing:.03em;position:relative;border-radius:0;transition:.25s;white-space:nowrap;
}
/* 一级菜单：悬停文字变金色，并展开金色下划线指示 */
.nav>li>a::after{
  content:"";position:absolute;left:50%;bottom:14px;
  width:0;height:2px;background:var(--gold-500);border-radius:2px;
  transform:translateX(-50%);transition:width .26s ease;
}
.nav>li>a:hover,.nav>li.on>a{color:var(--gold-700);font-weight:500;background:transparent;}
.nav>li>a:hover::after,.nav>li.on>a::after{width:22px;}

/* 二级下拉：Apple 官网风格 —— 全幅毛玻璃面板，自导航条下方整幅展开 */
.nav .sub{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 4px;
  position:absolute;left:0;right:0;top:100%;
  background:rgba(255,255,255,.78);
  -webkit-backdrop-filter:blur(28px) saturate(180%);
  backdrop-filter:blur(28px) saturate(180%);
  border-top:1px solid rgba(255,255,255,.6);
  border-radius:0;
  padding:26px 28px 30px;
  box-shadow:0 16px 44px rgba(16,42,33,.10);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(-8px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s;
}
/* 顶部金色指示线：展开时向两侧延伸 */
.nav .sub::before{
  content:"";position:absolute;left:50%;top:0;width:0;height:2px;
  transform:translateX(-50%);background:var(--gold-500);
  transition:width .34s ease .06s;
}
.nav>li:hover .sub{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.nav>li:hover .sub::before{width:96px;}
.nav .sub a{
  display:inline-block;padding:7px 18px;
  font-size:14.5px;color:var(--text-2);letter-spacing:.02em;
  white-space:nowrap;border-radius:999px;
  transition:background .2s ease,color .2s ease;
}
.nav .sub a:hover{background:rgba(198,166,100,.16);color:var(--gold-700);}

.hd-cta{display:flex;align-items:center;gap:16px;flex-shrink:0;}
.hd-tel{text-align:right;line-height:1.3;}
.hd-tel .label{font-size:11px;color:var(--text-3);letter-spacing:.1em;}
.hd-tel .num{font-family:var(--font-num);font-size:20px;font-weight:600;color:var(--green-700);letter-spacing:.02em;}
.hd-tel .num:hover{color:var(--gold-700);}

.burger{display:none;width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:var(--radius);position:relative;}
.burger span{position:absolute;left:11px;width:18px;height:1.5px;background:var(--green-900);transition:.3s;}
.burger span:nth-child(1){top:14px;}
.burger span:nth-child(2){top:20px;}
.burger span:nth-child(3){top:26px;}
.burger.open span:nth-child(1){top:20px;transform:rotate(45deg);}
.burger.open span:nth-child(2){opacity:0;}
.burger.open span:nth-child(3){top:20px;transform:rotate(-45deg);}

/* 移动端抽屉 */
.mnav{display:none;position:fixed;inset:84px 0 0;background:#fff;z-index:99;overflow-y:auto;padding:14px 0 60px;}
.mnav.on{display:block;}
.mnav li{border-bottom:1px solid var(--line);position:relative;}
.mnav>li>a{display:block;padding:15px 62px 15px 24px;font-size:16px;color:var(--text);}
.mnav .msub{display:none;background:var(--paper-2);}
.mnav .msub.on{display:block;}
.mnav .msub a{display:block;padding:12px 24px 12px 44px;font-size:14px;color:var(--text-2);}
/* 展开按钮：绝对定位在本行右侧。
   原来用 float:right，会被前面 display:block 的菜单文字挤到下一行，
   导致加号跑到下一个一级菜单下方 —— 改为绝对定位即可对齐。 */
.mnav .mtoggle{
  position:absolute;right:8px;top:15px;float:none;
  width:34px;line-height:28px;text-align:center;
  color:var(--text-3);font-size:22px;padding:0;
  transition:color .25s ease;
}
.mnav .mtoggle:hover{color:var(--gold-700);}

/* ---------- Hero 轮播 ---------- */
.hero{position:relative;height:600px;overflow:hidden;background:var(--green-900);}
.hero-slide{
  position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;
  background-size:cover;background-position:center;
}
.hero-slide.on{opacity:1;}
.hero-slide::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(92deg,rgba(10,30,24,.68) 0%,rgba(10,30,24,.38) 46%,rgba(10,30,24,.06) 100%);
}
.hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center;}
.hero-txt{max-width:640px;color:#fff;}
.hero-txt .kicker{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--font-num);font-size:12px;letter-spacing:.34em;
  color:var(--gold-300);text-transform:uppercase;margin-bottom:22px;
}
.hero-txt .kicker::before{content:"";width:34px;height:1px;background:var(--gold-500);}
.hero-txt h1{font-size:48px;line-height:1.3;font-weight:600;letter-spacing:.03em;margin-bottom:22px;}
.hero-txt p{font-size:16.5px;line-height:1.9;color:rgba(255,255,255,.88);margin-bottom:36px;max-width:560px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.hero-dots{position:absolute;left:0;right:0;bottom:36px;z-index:3;display:flex;justify-content:center;gap:10px;}
.hero-dots button{width:28px;height:3px;background:rgba(255,255,255,.35);border:0;padding:0;border-radius:2px;transition:.3s;}
.hero-dots button.on{background:var(--gold-500);width:52px;}

/* ---------- 数据条 ---------- */
.stats{background:#fff;border-bottom:1px solid var(--line);}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);}
.stat{padding:32px 20px;text-align:center;border-right:1px solid var(--line);}
.stat:last-child{border-right:0;}
.stat .n{font-family:var(--font-num);font-size:42px;font-weight:600;color:var(--green-700);line-height:1.1;}
.stat .n small{font-size:20px;}
.stat .t{font-size:13.5px;color:var(--text-2);letter-spacing:.14em;margin-top:8px;}

/* ---------- 关于 ---------- */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.about-pic{position:relative;padding:0 26px 26px 0;}
.about-pic img{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);}
.about-pic::before{
  content:"";position:absolute;right:0;bottom:0;width:72%;height:72%;
  background:var(--green-100);border-radius:var(--radius-lg);z-index:-1;
}
.about-pic .badge{
  position:absolute;left:-14px;bottom:8px;background:#fff;color:var(--green-900);
  padding:20px 26px;border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--line);
}
.about-pic .badge b{font-family:var(--font-num);font-size:30px;display:block;line-height:1.2;color:var(--green-700);}
.about-pic .badge span{font-size:11px;letter-spacing:.16em;color:var(--gold-700);}
.about-txt .lead{font-size:17px;line-height:1.95;color:var(--text);margin-bottom:20px;}
.about-txt p{color:var(--text-2);line-height:1.95;margin-bottom:16px;}
.about-tags{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 32px;}
.about-tags span{
  background:var(--green-50);border:1px solid var(--green-100);padding:7px 16px;
  font-size:13.5px;color:var(--green-700);border-radius:999px;
}

/* ---------- 系统/产品卡片 ---------- */
.sys-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.sys-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);
  overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.sys-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--green-100);}
.sys-card .pic{
  height:168px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,var(--green-50) 0%,#FFFFFF 100%);
  border-bottom:1px solid var(--line);
}
.sys-card .pic img{width:auto;height:100px;object-fit:contain;transition:transform .5s ease;}
.sys-card:hover .pic img{transform:scale(1.06);}
.sys-card .body{padding:22px 26px 26px;}
.sys-card .no{font-family:var(--font-num);font-size:11.5px;letter-spacing:.22em;color:var(--gold-700);}
.sys-card h3{font-size:19px;font-weight:600;color:var(--green-900);margin:10px 0 12px;letter-spacing:.03em;}
.sys-card p{font-size:14px;color:var(--text-2);line-height:1.85;min-height:78px;}
.sys-card .more{
  display:inline-block;margin-top:16px;font-size:14px;color:var(--green-700);
  border-bottom:1px solid var(--gold-300);padding-bottom:3px;transition:.25s;
}
.sys-card .more:hover{color:var(--gold-700);border-color:var(--gold-700);}

/* ---------- 案例 ---------- */
.case-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:32px;flex-wrap:wrap;}
.case-tabs button{
  padding:9px 26px;background:#fff;border:1px solid var(--line);
  color:var(--text-2);border-radius:999px;font-size:14.5px;transition:.28s;
}
.case-tabs button:hover{border-color:var(--green-600);color:var(--green-700);}
.case-tabs button.on{background:var(--green-700);border-color:var(--green-700);color:#fff;box-shadow:var(--shadow-sm);}

.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.case-item{
  position:relative;overflow:hidden;border-radius:var(--radius-lg);
  background:var(--green-900);aspect-ratio:4/3;box-shadow:var(--shadow-sm);
}
.case-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,opacity .5s ease;}
.case-item:hover img{transform:scale(1.06);opacity:.66;}
.case-item .cap{
  position:absolute;left:0;right:0;bottom:0;padding:30px 26px;
  background:linear-gradient(180deg,transparent,rgba(10,30,24,.88));
  color:#fff;transform:translateY(6px);transition:transform .35s ease;
}
.case-item:hover .cap{transform:translateY(0);}
.case-item .cap .tag{
  font-size:11px;letter-spacing:.18em;color:var(--gold-300);display:block;margin-bottom:5px;
}
.case-item .cap h3{font-size:17px;font-weight:500;letter-spacing:.03em;}
.more-row{text-align:center;margin-top:40px;}

/* ---------- 核心技术（浅色区块） ---------- */
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.tech-col{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:36px 34px;transition:.3s;
}
.tech-col:hover{box-shadow:var(--shadow-md);border-color:var(--green-100);transform:translateY(-4px);}
.tech-col .idx{font-family:var(--font-num);font-size:13px;letter-spacing:.24em;color:var(--gold-700);}
.tech-col h3{font-size:21px;font-weight:600;color:var(--green-900);margin:12px 0 18px;letter-spacing:.04em;}
.tech-col li{
  padding:11px 0;border-bottom:1px solid var(--line);
  color:var(--text-2);font-size:14.5px;
}
.tech-col li:last-child{border-bottom:0;}
.tech-col li a{display:block;transition:.25s;}
.tech-col li a:hover{color:var(--green-700);padding-left:6px;}

/* ---------- 优势 ---------- */
.adv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.adv{background:#fff;border:1px solid var(--line);padding:36px 26px;border-radius:var(--radius-lg);text-align:center;transition:.3s;}
.adv:hover{border-color:var(--green-100);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.adv .ic{
  width:56px;height:56px;margin:0 auto 20px;border-radius:16px;
  background:var(--green-50);border:1px solid var(--green-100);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-num);font-size:18px;color:var(--green-700);font-weight:600;
}
.adv h4{font-size:17px;font-weight:600;color:var(--green-900);margin-bottom:10px;letter-spacing:.03em;}
.adv p{font-size:14px;color:var(--text-2);line-height:1.8;}

/* ---------- 新闻 ---------- */
.news-list{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.news-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:.3s;}
.news-item:hover{box-shadow:var(--shadow-lg);border-color:var(--green-100);transform:translateY(-4px);}
.news-item .pic{height:168px;overflow:hidden;background:var(--paper-2);}
.news-item .pic img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.news-item:hover .pic img{transform:scale(1.05);}
.news-item .body{padding:24px 26px;}
.news-item .date{font-family:var(--font-num);font-size:12.5px;color:var(--text-3);letter-spacing:.06em;}
.news-item h3{
  font-size:16.5px;font-weight:500;line-height:1.68;margin:10px 0 12px;
  color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:56px;
}
.news-item:hover h3{color:var(--green-700);}
.news-item p{
  font-size:13.5px;color:var(--text-2);line-height:1.8;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}

/* ---------- CTA ---------- */
.cta{padding:20px 0 72px;}
.cta .wrap{
  background:linear-gradient(118deg,var(--green-800) 0%,var(--green-600) 100%);
  color:#fff;text-align:center;padding:56px 40px;border-radius:24px;
  position:relative;overflow:hidden;
}
.cta .wrap::before{
  content:"";position:absolute;right:-90px;top:-110px;width:340px;height:340px;
  border-radius:50%;background:rgba(255,255,255,.07);
}
.cta .wrap::after{
  content:"";position:absolute;left:-60px;bottom:-140px;width:280px;height:280px;
  border-radius:50%;background:rgba(198,166,100,.16);
}
.cta h2{font-size:32px;font-weight:600;letter-spacing:.04em;margin-bottom:14px;position:relative;z-index:1;}
.cta p{color:rgba(255,255,255,.78);font-size:15.5px;margin-bottom:30px;position:relative;z-index:1;}
.cta .tel{font-family:var(--font-num);font-size:34px;color:var(--gold-300);letter-spacing:.03em;margin-bottom:30px;position:relative;z-index:1;}
.cta .btn{position:relative;z-index:1;}

/* ---------- 页脚 ---------- */
.footer{background:var(--green-900);color:rgba(255,255,255,.66);padding:0;}
.footer .wrap{padding-top:64px;}

/* 品牌带 */
.fbrand{
  display:flex;justify-content:space-between;align-items:flex-end;gap:40px;
  padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.10);
}
.fbrand-l{max-width:560px;}
.flogo{
  display:inline-block;font-size:25px;font-weight:700;color:#fff;
  letter-spacing:.04em;margin-bottom:18px;transition:color .25s;
}
.flogo:hover{color:var(--gold-300);}
.ftagline{
  font-size:14px;color:var(--gold-300);letter-spacing:.2em;font-weight:500;
  margin-bottom:16px;
}
.fdesc{font-size:13.5px;line-height:1.95;color:rgba(255,255,255,.58);}

.fbrand-r{text-align:right;flex-shrink:0;}
.fhot{display:block;font-size:11.5px;letter-spacing:.24em;color:rgba(255,255,255,.55);margin-bottom:12px;}
.fphone{
  display:inline-block;font-family:var(--font-num);font-size:38px;font-weight:700;
  color:var(--gold-300);line-height:1;letter-spacing:.02em;transition:color .25s;
}
.fphone:hover{color:#fff;}
.fhot-sub{display:block;font-size:12px;color:rgba(255,255,255,.5);margin-top:14px;letter-spacing:.04em;}

/* 链接区 */
.flinks{
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;
  padding:32px 0;
}
.fcol h4{
  font-size:13.5px;color:#fff;font-weight:600;letter-spacing:.16em;margin-bottom:24px;
}
.fcol h4::after{
  content:"";display:block;width:26px;height:2px;
  background:var(--gold-500);margin-top:12px;border-radius:2px;
}
.fcol ul li{padding:9px 0;font-size:13.5px;}
.fcol ul li a{color:rgba(255,255,255,.62);transition:color .25s,padding-left .25s;}
.fcol ul li a:hover{color:var(--gold-300);padding-left:6px;}

/* 联系我们列：纵向信息 */
.fcontact li{display:flex;gap:14px;align-items:flex-start;padding:10px 0;line-height:1.7;font-size:13.5px;}
.fcontact .fl{flex-shrink:0;color:rgba(255,255,255,.5);min-width:34px;}
.fcontact .fv{color:rgba(255,255,255,.78);}

/* 底栏 */
.fbottom{border-top:1px solid rgba(255,255,255,.10);padding:24px 0;font-size:12.5px;color:rgba(255,255,255,.5);}
.fbottom .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.fbottom a:hover{color:var(--gold-300);}

/* ---------- 内页通用 ---------- */
.pagebanner{
  height:300px;background:linear-gradient(118deg,var(--green-800) 0%,var(--green-600) 100%);
  position:relative;display:flex;align-items:center;overflow:hidden;
}
.pagebanner::before{
  content:"";position:absolute;right:-80px;top:-100px;
  width:400px;height:400px;border-radius:50%;
  background:rgba(255,255,255,.07);
}
.pagebanner::after{
  content:"";position:absolute;left:12%;bottom:-120px;
  width:260px;height:260px;border-radius:50%;
  background:rgba(198,166,100,.14);
}
.pagebanner .wrap{position:relative;z-index:2;color:#fff;}
.pagebanner .en{font-family:var(--font-num);font-size:12px;letter-spacing:.32em;color:var(--gold-300);text-transform:uppercase;}
.pagebanner h1{font-size:36px;font-weight:600;letter-spacing:.06em;margin-top:12px;}

.crumb{background:#fff;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--text-2);}
.crumb .wrap{height:50px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.crumb a:hover{color:var(--green-700);}
.crumb .sep{color:var(--text-3);}

.sortnav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px;}
.sortnav a{
  padding:8px 22px;border:1px solid var(--line);background:#fff;
  font-size:14.5px;color:var(--text-2);border-radius:999px;transition:.25s;
}
.sortnav a:hover{border-color:var(--green-600);color:var(--green-700);}
.sortnav a.on{background:var(--green-700);border-color:var(--green-700);color:#fff;}

/* 无缩略图占位：隐藏 nopic 水印图，换用品牌默认缩略图 */
.list-news .pic img[src$="nopic.png"],
.news-item .pic img[src$="nopic.png"]{
  content:url("../images/thumb-default.png");
  opacity:1;width:100%;height:100%;object-fit:cover;
}
.list-news .pic,.news-item .pic{background:var(--green-50);}

/* 列表 */
.list-empty{
  padding:56px 20px;text-align:center;color:var(--text-3);
  font-size:15px;letter-spacing:.05em;border-bottom:1px solid var(--line);
}
.list-news{border-top:1px solid var(--line);}
.list-news li{border-bottom:1px solid var(--line);}
.list-news a{display:flex;gap:28px;padding:28px 8px;align-items:center;border-radius:var(--radius);transition:background .25s;}
.list-news a:hover{background:var(--paper-2);}
.list-news .pic{width:220px;height:140px;flex-shrink:0;overflow:hidden;border-radius:var(--radius);background:var(--paper-2);}
.list-news .pic img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.list-news a:hover .pic img{transform:scale(1.05);}
.list-news .txt{flex:1;min-width:0;}
.list-news h3{font-size:18px;font-weight:500;color:var(--text);margin-bottom:10px;line-height:1.6;}
.list-news a:hover h3{color:var(--green-700);}
.list-news .meta{font-size:13px;color:var(--text-3);margin-bottom:8px;}
.list-news p{
  font-size:14px;color:var(--text-2);line-height:1.8;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}

/* 详情页 */
.article{padding:48px 0;}
.article-head{text-align:center;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:38px;}
.article-head h1{font-size:30px;font-weight:600;color:var(--green-900);line-height:1.5;letter-spacing:.02em;}
.article-head .meta{margin-top:16px;font-size:13.5px;color:var(--text-3);}
.article-head .meta span{margin:0 12px;}
.article-body{font-size:16px;line-height:2;color:var(--text);}
.article-body p{margin-bottom:20px;}
.article-body img{margin:24px auto;border-radius:var(--radius);}
.article-body h2,.article-body h3{color:var(--green-900);margin:32px 0 16px;}
.article-body table{width:100%;margin:24px 0;}
.article-body table td,.article-body table th{border:1px solid var(--line);padding:12px 14px;}
.article-nav{
  display:flex;justify-content:space-between;gap:20px;
  border-top:1px solid var(--line);margin-top:52px;padding-top:26px;font-size:14px;color:var(--text-2);
}
.article-nav a:hover{color:var(--green-700);}

/* 分页 */
.pager{display:flex;justify-content:center;gap:8px;margin-top:52px;flex-wrap:wrap;}
.pager a,.pager span{
  padding:9px 16px;border:1px solid var(--line);background:#fff;
  font-size:14px;color:var(--text-2);border-radius:999px;min-width:42px;text-align:center;transition:.25s;
}
.pager a:hover{background:var(--green-50);border-color:var(--green-600);color:var(--green-700);}
.pager .current,.pager .page-num-current{background:var(--green-700);border-color:var(--green-700);color:#fff;}

/* 单页：关于 */
.about-page{padding:48px 0;}
.about-page .lead{
  font-size:18px;line-height:2;color:var(--text);text-align:center;
  max-width:820px;margin:0 auto 56px;
}
.about-cols{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;margin-bottom:56px;}
.about-cols img{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);}
.about-cols h3{font-size:24px;color:var(--green-900);margin-bottom:16px;font-weight:600;}
.about-cols p{color:var(--text-2);line-height:2;margin-bottom:14px;}
.about-nums{
  display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
  background:linear-gradient(118deg,var(--green-800) 0%,var(--green-600) 100%);
  padding:44px 34px;border-radius:var(--radius-lg);color:#fff;
}
.about-nums div{text-align:center;}
.about-nums b{font-family:var(--font-num);font-size:34px;color:var(--gold-300);display:block;line-height:1.2;}
.about-nums span{font-size:13.5px;color:rgba(255,255,255,.75);letter-spacing:.08em;}

/* 联系页 */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.contact-info li{padding:16px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;}
.contact-info .k{color:var(--text-3);font-size:14px;width:72px;flex-shrink:0;}
.contact-info .v{color:var(--text);font-size:15.5px;}
.contact-info .v.big{font-family:var(--font-num);font-size:24px;color:var(--green-700);}
.form-row{margin-bottom:18px;}
.form-row label{display:block;font-size:14px;color:var(--text-2);margin-bottom:8px;}
.form-row input,.form-row textarea{
  width:100%;padding:12px 16px;border:1px solid var(--line-strong);
  background:#fff;border-radius:var(--radius);font-size:15px;color:var(--text);
  transition:border-color .25s ease,box-shadow .25s ease;
}
.form-row input:focus,.form-row textarea:focus{
  outline:0;border-color:var(--green-500);box-shadow:0 0 0 3px var(--green-100);
}
.form-row textarea{min-height:118px;resize:vertical;}
.form-row .code-row{display:flex;gap:12px;}
.form-row .code-row input{flex:1;}
.form-row .code-row img{height:46px;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;}

/* 案例详情 */
.case-detail{padding:0 0 64px;}
.case-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px;}
.case-gallery img{width:100%;border-radius:var(--radius);}
.case-spec{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;background:var(--paper-2);padding:30px 26px;border-radius:var(--radius-lg);margin-bottom:36px;}
.case-spec div{text-align:center;}
.case-spec .k{font-size:13px;color:var(--text-3);margin-bottom:6px;}
.case-spec .v{font-size:17px;color:var(--green-900);font-weight:500;}

/* 滚动入场 */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

/* 富文本正文：覆盖后台内联样式 */
.about-body{font-size:16px;line-height:2;color:var(--text-2);}
.about-body p{margin-bottom:16px;}
.about-body p:last-child{margin-bottom:0;}
.about-body span,.about-body strong,.about-body em,.about-body font,.about-body b{color:inherit !important;font-size:inherit !important;}
.about-body img{max-width:100%;height:auto;border-radius:var(--radius);}
.about-body div{background:none !important;}

/* 返回顶部 */
.totop{
  position:fixed;right:22px;bottom:34px;width:44px;height:44px;
  background:#fff;color:var(--green-700);border:1px solid var(--line);
  border-radius:50%;box-shadow:var(--shadow-md);
  display:none;align-items:center;justify-content:center;font-size:18px;z-index:90;transition:.25s;
}
.totop.on{display:flex;}
.totop:hover{background:var(--green-700);border-color:var(--green-700);color:#fff;}

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  .nav>li>a{padding:10px 12px;font-size:14.5px;}
  .hd-tel .num{font-size:18px;}
}
@media (max-width:960px){
  .topbar .wrap{height:auto;padding:8px 0;flex-direction:column;gap:2px;font-size:12px;}
  .topbar span{margin-right:14px;}
  .header .wrap{height:56px;}
  .mnav{inset:70px 0 0;}
  .nav,.hd-tel{display:none;}
  .burger{display:block;width:38px;height:38px;}
  .burger span{left:10px;width:16px;}
  .burger span:nth-child(1){top:12px;}
  .burger span:nth-child(2){top:18px;}
  .burger span:nth-child(3){top:24px;}
  .burger.open span:nth-child(1){top:18px;}
  .burger.open span:nth-child(3){top:18px;}
  .logo img{height:34px;}
  .logo-txt .cn{font-size:16px;}
  .hero{height:480px;}
  .hero-txt h1{font-size:32px;}
  .hero-txt p{font-size:15px;margin-bottom:26px;}
  .sec{padding:60px 0;}
  .sec-head h2{font-size:27px;}
  .sec-head{margin-bottom:38px;}
  .stats .wrap{grid-template-columns:repeat(2,1fr);}
  .stat{padding:28px 14px;border-bottom:1px solid var(--line);}
  .stat:nth-child(2n){border-right:0;}
  .stat .n{font-size:32px;}
  .about-grid,.about-cols,.contact-grid{grid-template-columns:1fr;gap:38px;}
  .about-pic .badge{left:6px;bottom:6px;padding:16px 22px;}
  .sys-grid,.case-grid,.news-list{grid-template-columns:repeat(2,1fr);gap:20px;}
  .adv-grid{grid-template-columns:repeat(2,1fr);}
  .tech-grid{grid-template-columns:1fr;gap:22px;}
  .fbrand{flex-direction:column;align-items:flex-start;gap:30px;padding-bottom:32px;}
  .fbrand-r{text-align:left;}
  .flinks{grid-template-columns:repeat(3,1fr);gap:32px;padding:32px 0;}
  .pagebanner{height:210px;}
  .pagebanner h1{font-size:26px;}
  .list-news a{flex-direction:column;gap:14px;}
  .list-news .pic{width:100%;height:190px;}
  .about-nums{grid-template-columns:repeat(2,1fr);gap:26px;padding:30px 20px;}
  .case-spec{grid-template-columns:repeat(2,1fr);}
  .article{padding:40px 0;}
  .article-head h1{font-size:24px;}
  .cta .wrap{padding:52px 24px;}
  .cta h2{font-size:25px;}
  .cta .tel{font-size:27px;}
}
@media (max-width:640px){
  .wrap{padding:0 18px;}
  body{font-size:14.5px;}
  .hero{height:440px;}
  .hero-txt h1{font-size:26px;}
  .hero-txt .kicker{font-size:10px;letter-spacing:.24em;}
  .hero-btns .btn{padding:11px 24px;font-size:14px;}
  .sys-grid,.case-grid,.news-list{grid-template-columns:1fr;}
  .sys-card p{min-height:0;}
  .adv-grid{grid-template-columns:1fr;}
  .case-grid{gap:16px;}
  .case-item .cap{padding:18px 16px;}
  .case-item .cap h3{font-size:15.5px;}
  .footer .wrap{padding-top:48px;}
  .fphone{font-size:28px;}
  .flinks{grid-template-columns:1fr;gap:32px;padding:32px 0;}
  .fbrand-l{max-width:100%;}
  .fbottom .wrap{justify-content:center;text-align:center;}
  .sec-head h2{font-size:23px;}
  .case-spec{grid-template-columns:1fr 1fr;gap:16px;padding:22px 18px;}
  .case-gallery{grid-template-columns:1fr;}
  .sortnav a{padding:7px 16px;font-size:13.5px;}
  .article-body{font-size:15px;line-height:1.95;}
  .article-nav{flex-direction:column;gap:10px;}
}

/* ---------- 工业产品 4列 ---------- */
.sys-grid.cols4{grid-template-columns:repeat(4,1fr);}
.sys-grid.cols4 .sys-card p{min-height:96px;}
@media (max-width:1100px){.sys-grid.cols4{grid-template-columns:repeat(2,1fr);}.sys-grid.cols4 .sys-card p{min-height:78px;}}
@media (max-width:640px){.sys-grid.cols4{grid-template-columns:1fr;}.sys-grid.cols4 .sys-card p{min-height:0;}}

/* ---------- 相邻区块收边 ---------- */
.sec.pb-snug{padding-bottom:48px;}
.sec.pt-snug{padding-top:48px;}
@media (max-width:960px){.sec.pb-snug{padding-bottom:40px;}.sec.pt-snug{padding-top:40px;}}

/* ---------- 相邻区块收边 ---------- */
.sec.pb-snug{padding-bottom:48px;}
.sec.pt-snug{padding-top:48px;}
@media (max-width:960px){.sec.pb-snug{padding-bottom:40px;}.sec.pt-snug{padding-top:40px;}}

/* ---------- 公司介绍页：规模/文化/历程/架构/荣誉 ---------- */
.scale-row{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
.scale-item{text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 12px;}
.scale-item .n{font-family:var(--font-num);font-size:36px;font-weight:600;color:var(--green-700);line-height:1.1;}
.scale-item .n small{font-size:15px;color:var(--gold-700);margin-left:3px;font-family:inherit;}
.scale-item .t{margin-top:8px;font-size:13.5px;color:var(--text-2);}
.scale-pics{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;}
.scale-pics img{width:100%;display:block;border-radius:var(--radius);border:1px solid var(--line);}
.culture-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.culture-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:36px 26px;text-align:center;transition:transform .3s ease,box-shadow .3s ease;}
.culture-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.culture-card .pic{height:76px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.culture-card .pic img{max-height:64px;max-width:64px;object-fit:contain;}
.culture-card h3{font-size:18px;font-weight:600;color:var(--green-900);letter-spacing:.04em;}
.culture-card .bar{width:28px;height:2px;background:var(--gold-500);margin:12px auto 14px;}
.culture-card p{font-size:14px;color:var(--text-2);line-height:1.9;}
.timeline{position:relative;max-width:880px;margin:0 auto;}
.timeline::before{content:"";position:absolute;left:89px;top:8px;bottom:8px;width:2px;background:var(--green-100);}
.tl-item{position:relative;display:flex;padding-bottom:36px;}
.tl-item:last-child{padding-bottom:0;}
.tl-item .y{width:72px;flex-shrink:0;text-align:right;font-family:var(--font-num);font-size:19px;font-weight:600;color:var(--green-700);line-height:1.4;}
.tl-item .dot{width:36px;flex-shrink:0;display:flex;justify-content:center;padding-top:7px;}
.tl-item .dot i{width:10px;height:10px;border-radius:50%;background:var(--gold-500);border:2px solid #fff;box-shadow:0 0 0 2px var(--gold-300);}
.tl-item .c{flex:1;padding-left:16px;}
.tl-item .c h3{font-size:16.5px;font-weight:600;color:var(--green-900);}
.tl-item .c p{margin-top:6px;font-size:14px;color:var(--text-2);line-height:1.85;}
.org-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;}
.org-box img{width:100%;display:block;border-radius:var(--radius-sm,8px);}
.honor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.honor-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;}
.honor-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.honor-item img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover;}
.honor-item .cap{padding:13px 14px;text-align:center;font-size:13.5px;color:var(--text-2);border-top:1px solid var(--line);}
@media (max-width:960px){
  .scale-row{grid-template-columns:repeat(3,1fr);}
  .culture-grid{grid-template-columns:repeat(2,1fr);}
  .honor-grid{grid-template-columns:repeat(2,1fr);}
  .scale-pics{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .scale-row{grid-template-columns:repeat(2,1fr);}
  .culture-grid{grid-template-columns:1fr;}
  .honor-grid{grid-template-columns:1fr;}
  .timeline::before{left:71px;}
  .tl-item .y{width:56px;font-size:16px;}
  .tl-item .dot{width:30px;}
  .timeline::before{left:69px;}
}

/* ---------- 公司介绍页：规模/文化/历程/架构/荣誉 ---------- */
.scale-row{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
.scale-item{text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 12px;}
.scale-item .n{font-family:var(--font-num);font-size:36px;font-weight:600;color:var(--green-700);line-height:1.1;}
.scale-item .n small{font-size:15px;color:var(--gold-700);margin-left:3px;font-family:inherit;}
.scale-item .t{margin-top:8px;font-size:13.5px;color:var(--text-2);}
.scale-pics{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;}
.scale-pics img{width:100%;display:block;border-radius:var(--radius);border:1px solid var(--line);}
.culture-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.culture-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:36px 26px;text-align:center;transition:transform .3s ease,box-shadow .3s ease;}
.culture-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.culture-card .pic{height:76px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.culture-card .pic img{max-height:64px;max-width:64px;object-fit:contain;}
.culture-card h3{font-size:18px;font-weight:600;color:var(--green-900);letter-spacing:.04em;}
.culture-card .bar{width:28px;height:2px;background:var(--gold-500);margin:12px auto 14px;}
.culture-card p{font-size:14px;color:var(--text-2);line-height:1.9;}
.timeline{position:relative;max-width:880px;margin:0 auto;}
.timeline::before{content:"";position:absolute;left:89px;top:8px;bottom:8px;width:2px;background:var(--green-100);}
.tl-item{position:relative;display:flex;padding-bottom:36px;}
.tl-item:last-child{padding-bottom:0;}
.tl-item .y{width:72px;flex-shrink:0;text-align:right;font-family:var(--font-num);font-size:19px;font-weight:600;color:var(--green-700);line-height:1.4;}
.tl-item .dot{width:36px;flex-shrink:0;display:flex;justify-content:center;padding-top:7px;}
.tl-item .dot i{width:10px;height:10px;border-radius:50%;background:var(--gold-500);border:2px solid #fff;box-shadow:0 0 0 2px var(--gold-300);}
.tl-item .c{flex:1;padding-left:16px;}
.tl-item .c h3{font-size:16.5px;font-weight:600;color:var(--green-900);}
.tl-item .c p{margin-top:6px;font-size:14px;color:var(--text-2);line-height:1.85;}
.org-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;}
.org-box img{width:100%;display:block;border-radius:var(--radius-sm,8px);}
.honor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.honor-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;}
.honor-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.honor-item img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover;}
.honor-item .cap{padding:13px 14px;text-align:center;font-size:13.5px;color:var(--text-2);border-top:1px solid var(--line);}
@media (max-width:960px){
  .scale-row{grid-template-columns:repeat(3,1fr);}
  .culture-grid{grid-template-columns:repeat(2,1fr);}
  .honor-grid{grid-template-columns:repeat(2,1fr);}
  .scale-pics{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .scale-row{grid-template-columns:repeat(2,1fr);}
  .culture-grid{grid-template-columns:1fr;}
  .honor-grid{grid-template-columns:1fr;}
  .timeline::before{left:71px;}
  .tl-item .y{width:56px;font-size:16px;}
  .tl-item .dot{width:30px;}
  .timeline::before{left:69px;}
}

/* ---------- 案例卡片悬浮上浮 ---------- */
.case-item{transition:transform .35s ease,box-shadow .35s ease;}
.case-item:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);}

/* ---------- 案例卡片悬浮上浮 ---------- */
.case-item{transition:transform .35s ease,box-shadow .35s ease;}
.case-item:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);}

/* ---------- 产品中心页：理想与宗旨 ---------- */
.purpose{position:relative;padding:88px 0;background:var(--green-900);overflow:hidden;}
.purpose-bg{position:absolute;inset:0;}
.purpose-bg img{width:100%;height:100%;object-fit:cover;opacity:.26;}
.purpose .wrap{position:relative;}
.purpose-inner{max-width:780px;margin:0 auto;text-align:center;color:#fff;}
.purpose-inner h2{font-size:30px;font-weight:600;letter-spacing:.1em;}
.purpose-inner .bar{width:36px;height:2px;background:var(--gold-500);margin:18px auto 32px;}
.purpose-list{text-align:left;display:grid;gap:14px;}
.purpose-list li{display:flex;gap:16px;align-items:baseline;font-size:15.5px;line-height:1.9;color:rgba(255,255,255,.94);}
.purpose-list b{flex-shrink:0;color:var(--gold-300);font-weight:600;letter-spacing:.06em;}
.purpose-sub{margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);}
.purpose-sub .lab{color:var(--gold-300);font-weight:600;letter-spacing:.08em;margin-bottom:12px;}
.purpose-sub p+p{font-size:15px;line-height:2.1;color:rgba(255,255,255,.9);}
@media (max-width:640px){.purpose{padding:60px 0;}.purpose-inner h2{font-size:23px;}.purpose-list li{font-size:14.5px;}}

/* ---------- 空子栏导航条隐藏 ---------- */
.sortnav:not(:has(a)){display:none;}

/* ---------- 空子栏导航条隐藏 ---------- */
.sortnav:not(:has(a)){display:none;}

/* ---------- 售后反馈 ---------- */
.sh-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start;padding:10px 0 72px;}
.sh-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg,14px);padding:36px 32px;box-shadow:var(--shadow-sm);}
.sh-panel-dark{background:var(--green-900);border-color:var(--green-800);color:#fff;}
.sh-title{font-size:24px;font-weight:600;letter-spacing:.05em;margin-bottom:10px;}
.sh-panel-dark .sh-title{color:#fff;}
.sh-sub{font-size:14px;color:var(--text-2);line-height:1.8;margin-bottom:22px;}
.sh-panel-dark .sh-sub{color:rgba(255,255,255,.72);}
.sh-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.sh-form .form-row input,.sh-form .form-row textarea{width:100%;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:12px 14px;}
.sh-form .form-row label em{color:#C0392B;font-style:normal;margin-left:2px;}
.sh-file{width:100% !important;padding:10px 12px !important;background:var(--paper-2) !important;border:1px dashed var(--line) !important;border-radius:8px;}
.sh-tip{font-size:12.5px;color:var(--text-3,#98A6A0);margin-top:6px;}
.sh-btn{width:100%;padding:13px 0;font-size:16px;letter-spacing:.2em;cursor:pointer;}
.sh-msg{padding:12px 16px;border-radius:8px;font-size:14.5px;margin-bottom:18px;line-height:1.7;}
.sh-msg-ok{background:var(--green-100);color:var(--green-700);border:1px solid var(--green-400);}
.sh-msg-err{background:#FDEDEB;color:#C0392B;border:1px solid #F0B9B3;}
.sh-query{display:flex;gap:12px;margin-bottom:22px;}
.sh-query input{flex:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:12px 14px;color:#fff;}
.sh-query input::placeholder{color:rgba(255,255,255,.45);}
.sh-query .btn{padding:12px 26px;cursor:pointer;}
.sh-empty{padding:22px 16px;text-align:center;font-size:14px;color:rgba(255,255,255,.65);background:rgba(255,255,255,.06);border-radius:8px;}
.sh-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:18px;margin-bottom:14px;}
.sh-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.sh-item-id{font-family:var(--font-num,monospace);color:var(--gold-300);font-size:14px;letter-spacing:.04em;}
.sh-tag{font-size:12.5px;padding:3px 12px;border-radius:20px;letter-spacing:.06em;}
.sh-tag-wait{background:rgba(255,255,255,.14);color:rgba(255,255,255,.85);}
.sh-tag-doing{background:var(--gold-500);color:var(--green-900);}
.sh-tag-done{background:#3E9B77;color:#fff;}
.sh-item-time{font-size:12.5px;color:rgba(255,255,255,.55);margin-bottom:12px;}
.sh-item-block{margin-bottom:12px;}
.sh-item-block b{display:block;font-size:13px;color:var(--gold-300);letter-spacing:.08em;margin-bottom:5px;font-weight:600;}
.sh-item-block p{font-size:14px;line-height:1.85;color:rgba(255,255,255,.9);word-break:break-all;}
.sh-item-block .inb{display:inline;font-size:13px;margin-right:8px;}
.sh-meta{font-size:13px !important;color:rgba(255,255,255,.65) !important;}
.sh-wait{color:rgba(255,255,255,.6) !important;}
.sh-pics{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.sh-pics img{width:74px;height:74px;object-fit:cover;border-radius:6px;border:1px solid rgba(255,255,255,.2);cursor:zoom-in;}
.sh-item-process{border-top:1px dashed rgba(255,255,255,.2);padding-top:12px;margin-top:4px;}
@media (max-width:900px){
  .sh-grid{grid-template-columns:1fr;}
  .sh-panel{padding:26px 20px;}
  .sh-row2{grid-template-columns:1fr;}
}

/* ---------- 地源热泵技术讨论区 ---------- */
.fm-top{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:stretch;margin:10px 0 26px;}
.fm-intro{background:var(--green-900);color:#fff;border-radius:14px;padding:34px 32px;}
.fm-intro .sh-title{color:#fff;}
.fm-sub{font-size:14.5px;line-height:2;color:rgba(255,255,255,.8);margin-top:12px;}
.fm-userbox{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px 28px;box-shadow:var(--shadow-sm);}
.fm-tabs{display:flex;gap:10px;margin-bottom:16px;}
.fm-tabbtn{flex:1;padding:9px 0;border:1px solid var(--line);background:var(--paper-2);border-radius:8px;font-size:14.5px;cursor:pointer;color:var(--text-2);}
.fm-tabbtn.active{background:var(--green-700);border-color:var(--green-700);color:#fff;}
.fm-authform{display:grid;gap:10px;}
.fm-authform input{width:100%;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:11px 13px;font-size:14.5px;}
.fm-auth-tip{font-size:12.5px;color:var(--text-3,#98A6A0);margin-top:12px;text-align:center;}
.fm-hello{font-size:16px;margin-bottom:16px;}
.fm-hello b{color:var(--green-700);}
.fm-msg{padding:12px 16px;border-radius:8px;font-size:14.5px;margin-bottom:18px;line-height:1.7;}
.fm-msg-ok{background:var(--green-100);color:var(--green-700);border:1px solid var(--green-400);}
.fm-msg-err{background:#FDEDEB;color:#C0392B;border:1px solid #F0B9B3;}
.fm-boardnav{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;}
.fm-bnav{padding:14px 8px;border:1px solid var(--line);background:var(--paper);border-radius:10px;font-size:15.5px;font-weight:600;letter-spacing:.04em;color:var(--text-2);cursor:pointer;transition:all .2s;}
.fm-bnav:hover{border-color:var(--green-500);color:var(--green-700);}
.fm-bnav.active{background:var(--green-700);border-color:var(--green-700);color:#fff;box-shadow:var(--shadow-md);}
.fm-postwrap{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:26px 28px;margin-bottom:28px;}
.fm-posttitle{font-size:18px;font-weight:600;margin-bottom:16px;letter-spacing:.04em;}
.fm-bdname{color:var(--gold-700);font-size:14px;font-weight:500;}
.fm-count{color:var(--text-3,#98A6A0);font-size:13px;font-weight:400;margin-left:10px;}
.fm-postwrap .form-row input,.fm-postwrap .form-row textarea{width:100%;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:12px 14px;}
.fm-postwrap .form-row textarea{min-height:110px;}
.fm-filegrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.fm-btn{padding:11px 28px;font-size:15px;letter-spacing:.15em;cursor:pointer;}
.fm-listwrap{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:26px 28px;margin-bottom:60px;}
.fm-empty{padding:34px 16px;text-align:center;font-size:14px;color:var(--text-3,#98A6A0);background:var(--paper-2);border-radius:8px;}
.fm-item{border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:14px;background:var(--paper-2);}
.fm-item-head{display:flex;justify-content:space-between;margin-bottom:10px;}
.fm-item-user{font-size:13.5px;color:var(--green-700);font-weight:600;}
.fm-item-user::before{content:'👤 ';opacity:.6;}
.fm-item-time{font-size:12.5px;color:var(--text-3,#98A6A0);}
.fm-item-title{font-size:16.5px;font-weight:600;margin-bottom:8px;color:var(--text-1,#1A2B24);}
.fm-item-content{font-size:14.5px;line-height:1.9;color:var(--text-2);white-space:pre-wrap;word-break:break-word;}
.fm-pics img{width:88px;height:88px;}
.fm-video{margin-top:10px;}
.fm-video video{max-width:100%;max-height:420px;border-radius:8px;background:#000;}
.fm-pager{display:flex;gap:8px;justify-content:center;margin-top:18px;}
.fm-pagebtn{min-width:36px;padding:7px 10px;border:1px solid var(--line);background:var(--paper);border-radius:6px;cursor:pointer;font-size:14px;}
.fm-pagebtn.active{background:var(--green-700);border-color:var(--green-700);color:#fff;}
@media (max-width:900px){
  .fm-top{grid-template-columns:1fr;}
  .fm-boardnav{grid-template-columns:repeat(2,1fr);}
  .fm-filegrid{grid-template-columns:1fr;}
  .fm-postwrap,.fm-listwrap{padding:20px 16px;}
}

/* ---------- 售前咨询单页 ---------- */
.zx-body{max-width:820px;margin:0 auto;padding:14px 0 64px;font-size:15.5px;line-height:2.1;color:var(--text-2);}
.zx-body h3{font-size:19px;font-weight:600;color:var(--text-1,#1A2B24);border-left:3px solid var(--gold-500);padding-left:12px;}
.zx-body a{text-decoration:none;}

/* ---------- 案例页服务项目名录 ---------- */
.case-roll{margin-top:50px;padding-top:10px;border-top:1px solid var(--line);}
.case-roll .roll-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:10px 12px;}
.case-roll .roll-grid li{font-size:13.5px;line-height:1.7;color:var(--text-2);padding:8px 6px;background:var(--paper-2);border:1px solid var(--line);border-radius:6px;text-align:center;transition:.2s;}
.case-roll .roll-grid li:hover{color:var(--green-700);border-color:var(--green-400);background:var(--green-50);}
@media (max-width:960px){.case-roll .roll-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:560px){.case-roll .roll-grid{grid-template-columns:repeat(2,1fr);}}
.fm-review-tip{font-size:12.5px;color:var(--text-3,#98A6A0);margin-top:12px;text-align:center;}
.fm-pending{color:#B8860B;font-size:12px;background:rgba(198,166,100,.15);padding:2px 10px;border-radius:12px;}

/* ---------- 平板横屏(1024px)微调：使 961–1024 区间更舒适 ---------- */
@media (max-width:1024px){
  .wrap{padding:0 22px;}
  .sec{padding:64px 0;}
  .sec-head h2{font-size:29px;}
  .hero{height:520px;}
  .hero-txt h1{font-size:42px;}
  .about-grid,.about-cols,.contact-grid{gap:40px;}
  .sys-grid,.case-grid,.news-list{gap:22px;}
  .header .wrap{gap:10px;}
  .nav>li>a{font-size:14px;}
  .hd-tel .num{font-size:18px;}
  .cta .wrap{padding:48px 30px;}
  .cta h2{font-size:28px;}
  .pagebanner{height:260px;}
  .pagebanner h1{font-size:32px;}
}
