/* ===== 建铭显卡 - 参考站 demoall.5fa.cn/31992 绿色主题还原 =====
   主绿 #85bd43 | 深绿 #00843e | 浅绿 #95ce52 | 深蓝灰页脚 #213752 | 文字 #666
   字体 Microsoft Yahei / Helvetica / Arial */
:root { --g1:#85bd43; --g2:#00843e; --g3:#95ce52; --gdk:#213752; --gtxt:#758697; }
* { margin:0; padding:0; box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { font-family:"Microsoft Yahei",Helvetica,Arial,sans-serif; color:#666; background:#fff; font-size:14px; line-height:1.7; padding-top:80px; }
img { max-width:100%; display:block; }
a { color:#666; text-decoration:none; transition:all .3s; }
a:hover { color:var(--g1); }
ul { list-style:none; }
h1,h2,h3,h4 { font-weight:normal; }
.hidden { display:none; }

/* ---------- 全局容器 ---------- */
.container { max-width:1300px; margin:0 auto; padding:0 15px; }
.fade-in { opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
.fade-in.in { opacity:1; transform:none; }

/* ---------- 区块标题（还原 31992 section-title） ---------- */
.section, .section-effect, .section-serviceFlow, .section-case, .section-shzr, .section-news, .section-partner { padding:70px 0; }
.section-title { font-size:30px; color:var(--g2); text-align:center; font-weight:300; }
.section-subtitle { margin:14px 0 56px; font-size:14px; color:#999; text-align:center; max-width:900px; margin-left:auto; margin-right:auto; }
.phonebg { background:#f5f5f5; }

/* ---------- 按钮 ---------- */
.btn-green, .btn-submit { display:inline-flex; align-items:center; gap:6px; padding:0 32px; line-height:40px; background:var(--g1); border-radius:22px; font-size:15px; color:#fff !important; transition:all .3s; cursor:pointer; border:0; }
.btn-green:hover, .btn-submit:hover { opacity:.85; color:#fff !important; }
.btn-green svg, .btn-submit svg { width:14px; height:14px; }
.btn-green-o { display:inline-flex; align-items:center; gap:6px; padding:0 32px; line-height:40px; border:1px solid var(--g1); background:#fff; color:var(--g1); border-radius:22px; font-size:15px; }
.btn-green-o:hover { background:var(--g1); color:#fff !important; }
.btn-green-o svg { width:14px; height:14px; }
.more-wrap { text-align:center; margin-top:44px; }

/* ---------- 顶部 topbox（信息栏 lotbox + 导航 menubox） ---------- */
.topbox { position:fixed; top:0; left:0; right:0; z-index:999; background:rgba(255,255,255,1); box-shadow:0 0 6px rgba(150,150,150,.3); }
.topbar { display:flex; align-items:center; height:80px; }
.lotbox { margin-right:auto; }
.logo { display:flex; align-items:center; gap:10px; }
.logo-ico { flex:none; }
.logo-txt { display:flex; flex-direction:column; line-height:1.15; }
.brand { color:#222; font-size:22px; font-weight:bold; letter-spacing:1px; }
.kw { color:var(--g2); font-size:12px; letter-spacing:2px; margin-top:3px; }
.menubox { display:flex; align-items:center; }
.nav { display:flex; align-items:center; }
.nav > li { position:relative; display:flex; align-items:center; margin-left:42px; }
.nav > li > a { display:flex; align-items:center; gap:4px; padding:30px 0; font-size:16px; color:#4a4a4a; border-bottom:2px solid transparent; }
.nav > li > a:hover, .nav > li.active > a, .nav > li.hasub:hover > a { color:var(--g1); border-bottom-color:var(--g1); }
.nav-arrow { font-size:10px; font-style:normal; }
.nav .sub { transition:all .3s; opacity:0; visibility:hidden; position:absolute; left:50%; top:78px; width:180px; margin-left:-90px; background:#fff; box-shadow:0 4px 18px rgba(0,0,0,.12); padding:6px 0; z-index:50; }
.nav > li:hover .sub { opacity:1; visibility:visible; }
.nav .sub li { border-top:1px solid #f0f0f0; text-align:center; }
.nav .sub li:first-child { border-top:0; }
.nav .sub li a { display:block; padding:10px 16px; font-size:14px; color:#555; }
.nav .sub li a:hover { background:#f6f6f6; color:var(--g1); }
.head-tel { display:flex; align-items:center; gap:8px; margin-left:30px; padding-left:24px; border-left:1px solid #eee; }
.head-tel .ht-ico { color:var(--g1); flex:none; }
.ht-txt { display:flex; flex-direction:column; line-height:1.2; }
.ht-lbl { font-size:12px; color:#999; }
.ht-num { font-size:19px; font-weight:bold; color:var(--g2); letter-spacing:.5px; }
.navBtn { display:none; flex-direction:column; justify-content:center; gap:5px; width:40px; height:40px; margin-left:16px; background:transparent; border:0; cursor:pointer; }
.navBtn .line { width:26px; height:2.5px; background:var(--g1); border:0; }

/* ---------- Banner 轮播（还原 31992：高 banner + 箭头切换） ---------- */
.banner { position:relative; height:600px; overflow:hidden; }
.player { position:relative; width:100%; height:100%; }
.slide { position:absolute; inset:0; background:no-repeat center center; background-size:cover; opacity:0; transition:opacity 1s; }
.slide.active { opacity:1; }
.slide-mask { position:absolute; inset:0; background:linear-gradient(90deg,rgba(33,55,82,.55),rgba(33,55,82,.15)); }
.slide-cap { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:center; color:#fff; max-width:760px; }
.cap-tit { font-size:46px; font-weight:bold; color:#fff; letter-spacing:2px; text-shadow:0 2px 12px rgba(0,0,0,.3); }
.cap-desc { margin:20px 0 30px; font-size:18px; color:#fff; line-height:1.9; text-shadow:0 1px 6px rgba(0,0,0,.3); }
.cap-btn { display:inline-flex; align-items:center; gap:6px; width:max-content; padding:0 34px; line-height:46px; background:var(--g1); color:#fff; border-radius:24px; font-size:16px; }
.cap-btn:hover { background:var(--g2); color:#fff !important; }
.cap-btn svg { width:14px; height:14px; }
.banner-arr { position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:50px; height:50px; border-radius:50%; background:rgba(255,255,255,.25); color:#fff; border:2px solid rgba(255,255,255,.6); font-size:30px; line-height:44px; cursor:pointer; transition:all .3s; }
.banner-arr:hover { background:var(--g1); border-color:var(--g1); }
.banner-arr.prev { left:24px; }
.banner-arr.next { right:24px; }

/* ---------- sysport 浮卡（还原 31992：浮于 Banner 之上的白色卡片） ---------- */
.section-sysport { position:relative; height:100px; }
.sysport-list { position:absolute; z-index:9; top:-80px; left:50%; transform:translateX(-50%); width:calc(100% - 40px); max-width:1100px; display:flex; background:#fff; box-shadow:0 6px 40px rgba(90,90,90,.18); border-radius:8px; overflow:hidden; }
.sysport-list li { flex:1; position:relative; }
.sysport-list li:first-child::after { content:""; position:absolute; right:0; top:18%; height:64%; width:0; border-left:1px solid #e0e0e0; }
.sysport-list li a { display:flex; flex-direction:column; align-items:center; gap:8px; padding:30px 20px; transition:all .3s; }
.sysport-list li a:hover { background:#f8f8f8; padding-top:24px; }
.sp-ico { color:var(--g1); display:flex; }
.sp-ico svg { width:44px; height:44px; }
.sp-txt { font-size:20px; color:#333; }

/* ---------- effect-list 服务价值（4 列圆形图标） ---------- */
.effect-list { display:flex; flex-wrap:wrap; }
.effect-list li { flex:1 1 25%; min-width:240px; }
.effect-list li a { display:block; padding:48px 26px; text-align:center; height:100%; transition:all .4s; }
.iconbox { display:flex; align-items:center; justify-content:center; width:166px; height:154px; margin:0 auto 22px; border-radius:44%; background:#f3faf0; transition:all .4s; color:var(--g2); }
.iconbox .sf-ico { width:60px; height:60px; }
.ef-tit { display:block; font-size:20px; font-weight:bold; color:#333; margin-bottom:14px; }
.ef-sub { display:block; font-size:15px; color:#999; line-height:1.8; margin-bottom:20px; }
.ef-more { display:inline-block; padding:0 28px; line-height:38px; border:1px solid #ccc; border-radius:20px; font-size:15px; color:#666; transition:all .3s; }
.effect-list li a:hover { background:#fff; box-shadow:0 6px 40px rgba(90,90,90,.18); }
.effect-list li a:hover .iconbox { background:var(--g1); color:#fff; transform:translateY(-4px); }
.effect-list li a:hover .ef-more { background:var(--g1); border-color:var(--g1); color:#fff; }

/* ---------- serviceFlow 执行流程（5 列） ---------- */
.serviceFlow-list { display:flex; }
.serviceFlow-list li { flex:1 1 20%; min-width:180px; }
.serviceFlow-list li a { display:block; padding:26px 16px; text-align:center; height:100%; transition:all .4s; }
.serviceFlow-list .iconbox { width:120px; height:120px; margin-bottom:16px; }
.serviceFlow-list .iconbox .sf-ico { width:56px; height:56px; }
.sf-tit { display:block; font-size:18px; font-weight:bold; color:#333; margin-bottom:12px; }
.sf-sub { display:block; font-size:14px; color:#999; line-height:1.7; }
.serviceFlow-list li a:hover { background:#fff; box-shadow:0 6px 40px rgba(90,90,90,.18); }
.serviceFlow-list li a:hover .iconbox { color:var(--g1); }

/* ---------- material-flow 产品系列（横向 5 阶段流程，多图网格） ---------- */
.section-material { background:#f5f5f5; }
.scrollbox { overflow-x:auto; padding-bottom:10px; }
.material-flow { display:table; width:100%; min-width:1100px; }
.material-flow > li { position:relative; display:table-cell; vertical-align:top; padding:0 0 0 50px; }
.material-flow > li::before { content:""; position:absolute; left:7px; top:64px; width:0; height:0; border:10px solid transparent; border-left-color:var(--g1); }
.material-flow > li:first-child { padding:0; }
.material-flow > li:first-child::before { display:none; }
.material-flow .titbox { height:60px; padding:10px 0; margin-bottom:20px; background:#fff; text-align:center; border-radius:4px; }
.material-flow .mf-tit { display:block; font-size:16px; color:#333; font-weight:bold; }
.material-flow .mf-en { display:block; font-size:12px; color:#999; text-transform:uppercase; margin-top:2px; }
.material-flow .pics { height:300px; }
.material-flow .picbox { position:relative; overflow:hidden; }
.material-flow .mf-img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.material-flow .imgtit { transition:opacity .5s; opacity:0; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(142,208,64,.85); color:#fff; font-size:16px; font-weight:bold; }
.material-flow .picbox:hover .imgtit { opacity:1; }
.material-flow .picbox:hover .mf-img { transform:scale(1.1); }
.material-flow .pics-c1r1 > li { width:100%; height:100%; }
.material-flow .pics-c1r1 { display:flex; }
.material-flow .pics-c2r2 { display:flex; flex-wrap:wrap; }
.material-flow .pics-c2r2 > li { width:50%; height:50%; padding:0 1px 1px 0; background:#fff; }
.material-flow .pics-c1r2 { display:flex; flex-direction:column; }
.material-flow .pics-c1r2 > li { width:100%; height:50%; padding:0 0 1px 0; }
.material-flow .pics-c1r4 { display:flex; flex-direction:column; }
.material-flow .pics-c1r4 > li { width:100%; height:25%; padding:0 0 1px 0; }
.material-flow .flow-1 { width:200px; }
.material-flow .flow-2 { width:340px; }
.material-flow .flow-3 { width:280px; }
.material-flow .flow-4 { width:240px; }
.material-flow .flow-5 { width:auto; }

/* ---------- case-list 项目案例（非对称马赛克：li-1 大图 + li-2~5） ---------- */
.case-list { display:flex; flex-wrap:wrap; }
.case-list li { position:relative; overflow:hidden; cursor:pointer; height:426px; }
.case-list li .picbox, .case-list li .textbox { height:213px; width:100%; }
.case-list li .picbox { overflow:hidden; }
.case-list li .picbox .case-img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.case-list li .textbox { position:absolute; z-index:9; padding:20px; background:#f7f7f7; transition:all .5s; }
.case-list .case-tit { display:block; font-size:16px; font-weight:bold; color:#333; }
.case-list .case-desc { display:block; font-size:12px; color:#999; margin:10px 0; height:70px; overflow:hidden; line-height:1.7; }
.case-list .case-more { display:inline-block; padding:0 18px; line-height:28px; border:1px solid #ccc; border-radius:15px; font-size:13px; color:#666; transition:all .3s; }
.case-list li.li-1 { width:33.333%; }
.case-list li.li-1 .picbox { height:426px; }
.case-list li.li-1 .textbox { height:auto; left:0; bottom:-140px; opacity:.95; }
.case-list li.li-1 .case-desc { height:50px; }
.case-list li.li-2 { width:16.666%; }
.case-list li.li-3 { width:16.666%; }
.case-list li.li-4 { width:16.666%; }
.case-list li.li-5 { width:16.666%; }
.case-list li.li-3 .textbox, .case-list li.li-5 .textbox { top:0; }
.case-list li.li-3 .picbox, .case-list li.li-5 .picbox { position:absolute; bottom:0; }
.case-list li:hover .case-img { transform:scale(1.1); }
.case-list li:hover .textbox { background:#fdfdfd; }
.case-list li.li-1:hover .textbox { bottom:0; }
.case-list li:hover .case-more { background:var(--g1); border-color:var(--g1); color:#fff; }

/* ---------- shzr 关于我们（左半背景图 + 右半白卡） ---------- */
.section-shzr { position:relative; background:#f4f4f4; overflow:hidden; }
.shzr-imgbg { position:absolute; top:0; bottom:0; left:0; right:50%; background:no-repeat center center; background-size:cover; }
.shzr-inner { position:relative; }
.shzr-con { position:relative; float:right; width:50%; min-height:340px; padding:54px; background:#fff; box-shadow:0 6px 40px rgba(90,90,90,.18); }
.shzr-tit { font-size:24px; color:var(--g2); font-weight:bold; }
.shzr-sub { color:#999; margin:10px 0 16px; font-size:15px; }
.shzr-desc { line-height:2.2; font-size:15px; }
.about-stats { display:flex; flex-wrap:wrap; margin:28px 0; }
.about-stat { flex:1 1 50%; min-width:140px; }
.as-num { font-size:38px; font-weight:bold; color:var(--g1); font-family:Arial; }
.as-suf { font-size:20px; color:var(--g1); font-weight:bold; }
.as-lbl { display:block; font-size:14px; color:#888; margin-top:4px; }
.shzr-btn { margin-top:10px; }

/* ---------- news-list 新闻（日期块 hover 下滑变绿） ---------- */
.news-list { display:flex; flex-wrap:wrap; margin:0 -18px; }
.news-list > li { cursor:pointer; position:relative; padding-top:112px; padding:112px 18px 0; width:33.333%; min-width:280px; height:252px; transition:padding-top .4s; }
.news-list .timebox { position:absolute; z-index:9; top:0; left:18px; right:18px; height:112px; padding:28px 0; background:#fff; transition:all .4s; }
.news-list .mm-dd { display:block; font-size:32px; line-height:1.1; color:#333; font-weight:bold; }
.news-list .yyyy { display:block; color:#999; }
.news-list .textbox { padding:28px 0; border-top:1px solid #d3d7dc; transition:all .4s; }
.news-list .news-tit { display:block; font-size:17px; color:#333; margin-bottom:14px; font-weight:bold; line-height:1.5; }
.news-list .news-desc { display:block; color:#999; font-size:13px; height:44px; overflow:hidden; line-height:1.7; }
.news-list > li:hover { padding-top:0; }
.news-list > li:hover .timebox { top:140px; background:var(--g1); padding:28px 18px; }
.news-list > li:hover .timebox .mm-dd, .news-list > li:hover .timebox .yyyy { color:#fff; }
.news-list > li:hover .textbox { border-top:2px solid var(--g1); }
.news-list > li:hover .news-tit { color:var(--g1); }

/* ---------- zhengshu 荣誉资质（4 列） ---------- */
.section-zhengshu { background:#f5f5f5; }
.zhengshu-list { display:flex; flex-wrap:wrap; margin:0 -18px; }
.zhengshu-list li { width:25%; min-width:240px; padding:0 18px; }
.zhengshu-list .picbox { transition:all .4s; background:#fff; height:340px; padding:24px 28px; box-shadow:0 0 0 transparent; }
.zhengshu-list .zs-img { width:100%; height:100%; object-fit:contain; }
.zhengshu-list li:hover .picbox { box-shadow:0 6px 40px rgba(90,90,90,.18); transform:translateY(-4px); }
.zhengshu-list .zs-tit { text-align:center; font-size:16px; color:#333; padding:18px 0 0; }

/* ---------- partner 合作客户（5 列 Logo 墙） ---------- */
.partner-list { display:flex; flex-wrap:wrap; margin:0 -10px; }
.partner-list li { width:20%; min-width:180px; padding:0 10px; margin-bottom:20px; }
.partner-list .picbox { transition:all .4s; position:relative; height:120px; border:1px solid #eef0f0; background:#fff; display:flex; align-items:center; justify-content:center; }
.partner-list .partner-name { font-size:20px; font-weight:bold; color:var(--g2); letter-spacing:1px; }
.partner-list li:hover .picbox { box-shadow:0 6px 30px rgba(90,90,90,.18); }
.partner-list .pt-tit { text-align:center; color:#999; font-size:14px; padding:12px 0; }

/* ---------- 内页 banner-simple + 面包屑 breadbar ---------- */
.banner-simple { position:relative; height:300px; background:no-repeat center center; background-size:cover; display:flex; align-items:center; }
.bs-mask { position:absolute; inset:0; background:rgba(33,55,82,.5); }
.bs-inner { position:relative; color:#fff; }
.bs-cn { font-size:38px; font-weight:300; color:#fff; letter-spacing:2px; }
.bs-en { display:block; font-size:16px; color:rgba(255,255,255,.8); margin-top:8px; letter-spacing:3px; text-transform:uppercase; }
.breadbar { background:#fff; border-bottom:1px solid #e6e5e6; }
.br-row { display:flex; align-items:center; justify-content:space-between; padding:24px 0; }
.br-where { font-size:20px; color:#333; font-weight:bold; }
.br-crumb { font-size:14px; color:#999; }
.br-crumb a { color:#999; }
.br-crumb a:hover { color:var(--g1); }
.br-crumb i { margin:0 6px; color:#ccc; font-style:normal; }
.br-crumb .cur { color:var(--g1); }

/* ---------- main / 通用内容 ---------- */
.main { padding:50px 0 70px; min-height:400px; }
.block-tit { font-size:22px; color:var(--g2); font-weight:bold; margin-bottom:22px; padding-left:14px; border-left:4px solid var(--g1); }
.contentbox p { margin-bottom:22px; line-height:2; font-size:15px; color:#555; }
.picbox img { display:block; width:100%; }

/* ---------- 关于我们内页 ---------- */
.ab-row { display:flex; align-items:center; gap:50px; }
.ab-pic { flex:1 1 48%; }
.ab-pic .picbox { overflow:hidden; }
.ab-img { width:100%; height:auto; }
.ab-txt { flex:1 1 52%; }
.ab-tag { color:var(--g1); font-size:14px; letter-spacing:3px; }
.ab-txt h2 { font-size:28px; color:#222; margin:10px 0 20px; font-weight:bold; }
.ab-txt p { margin-bottom:18px; line-height:2; font-size:15px; }
.ab-stats { background:#f5f5f5; padding:50px 0; }
.ab-stats .about-stat { text-align:center; flex:1 1 25%; min-width:160px; }
.timeline { display:flex; flex-wrap:wrap; gap:20px; }
.tl-item { flex:1 1 30%; min-width:280px; }
.tl-card { padding:26px 24px; background:#fff; border:1px solid #eee; border-top:3px solid var(--g1); transition:all .3s; }
.tl-card:hover { box-shadow:0 6px 30px rgba(90,90,90,.15); transform:translateY(-3px); }
.tl-year { display:inline-block; font-size:26px; font-weight:bold; color:var(--g1); font-family:Arial; margin-bottom:8px; }
.tl-tit { font-size:18px; color:#333; font-weight:bold; margin-bottom:8px; }
.tl-desc { font-size:14px; color:#888; line-height:1.8; }
.cul-list { display:flex; flex-wrap:wrap; gap:24px; }
.cul-list li { flex:1 1 30%; min-width:280px; }
.cul-card { padding:40px 30px; background:#fff; border:1px solid #eee; text-align:center; transition:all .3s; }
.cul-card:hover { box-shadow:0 6px 30px rgba(90,90,90,.15); transform:translateY(-3px); }
.cul-ico { display:inline-flex; color:var(--g1); }
.cul-ico svg { width:56px; height:56px; }
.cul-tit { font-size:20px; color:#333; font-weight:bold; margin:18px 0 12px; }
.cul-desc { font-size:14px; color:#888; line-height:1.8; }
.team-list { display:flex; flex-wrap:wrap; gap:24px; }
.team-list li { flex:1 1 15%; min-width:160px; }
.team-card { text-align:center; }
.ava { display:block; width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:50%; border:3px solid #fff; box-shadow:0 4px 18px rgba(0,0,0,.12); margin-bottom:14px; }
.ava-img { width:100%; height:100%; object-fit:cover; }
.t-name { font-size:17px; color:#333; font-weight:bold; }
.t-job { display:block; font-size:13px; color:var(--g1); margin-top:4px; }

/* ---------- 产品列表 pCase-list（4 列方形卡） ---------- */
.pCase-list { display:flex; flex-wrap:wrap; margin:0 -12px; }
.pCase-list li { width:25%; min-width:240px; padding:0 12px; margin-bottom:36px; }
.ptsbox { display:block; padding-bottom:24px; border-bottom:2px solid #fff; transition:all .4s; }
.ptsbox .picbox { width:100%; aspect-ratio:1/1; overflow:hidden; }
.list-img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.ptit { font-size:16px; color:#333; font-weight:bold; margin:16px 4px 8px; line-height:1.5; }
.psub { font-size:13px; color:#999; margin:0 4px 10px; line-height:1.6; height:42px; overflow:hidden; }
.pmore { display:inline-block; font-size:13px; color:var(--g1); }
.pCase-list .ptsbox:hover { background:#fff; border-bottom-color:var(--g1); box-shadow:0 6px 30px rgba(90,90,90,.18); }
.pCase-list .ptsbox:hover .list-img { transform:scale(1.06); }

/* ---------- 产品详情 ---------- */
.pro-top { display:flex; gap:46px; padding:10px 0 30px; }
.pro-pic { flex:0 0 44%; }
.pro-pic .picbox { overflow:hidden; }
.pro-big { width:100%; height:auto; }
.pro-info { flex:1; }
.p-name { font-size:26px; color:#222; font-weight:bold; line-height:1.4; }
.p-sn { display:block; font-size:13px; color:#999; margin:12px 0 18px; }
.p-desc { font-size:15px; color:#666; line-height:1.9; padding:16px 20px; background:#f9f9f9; border-left:3px solid var(--g1); margin-bottom:20px; }
.p-bullets { margin-bottom:24px; }
.p-bullets li { padding:8px 0; font-size:14px; color:#555; display:flex; align-items:center; gap:8px; }
.bul-ico { color:var(--g1); display:inline-flex; }
.bul-ico svg { width:16px; height:16px; }
.p-cta { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.p-tel { font-size:15px; color:var(--g2); font-weight:bold; }
.pparam { width:100%; border-collapse:collapse; margin:10px 0 36px; }
.pparam th, .pparam td { border:1px solid #eee; padding:13px 18px; font-size:14px; text-align:left; }
.pparam th { background:#f6f6f6; color:#333; font-weight:bold; width:24%; }
.pparam td { color:#666; }
.pro-body { margin-bottom:40px; }
.pro-feat { margin-bottom:40px; }
.feat-list { display:flex; flex-wrap:wrap; gap:20px; }
.feat-list li { flex:1 1 22%; min-width:200px; }
.fbox { padding:26px 22px; background:#f9f9f9; border:1px solid #eee; text-align:center; transition:all .3s; }
.fbox:hover { background:#fff; box-shadow:0 6px 30px rgba(90,90,90,.15); }
.feat-ico-sm { display:inline-flex; color:#fff; background:var(--g1); width:44px; height:44px; border-radius:50%; align-items:center; justify-content:center; margin-bottom:12px; }
.feat-ico-sm svg { width:22px; height:22px; }
.feat-tit { font-size:16px; color:#333; font-weight:bold; margin-bottom:8px; }
.feat-desc { font-size:13px; color:#888; line-height:1.7; }
.rel-list { display:flex; flex-wrap:wrap; gap:20px; }
.rel-list li { flex:1 1 22%; min-width:180px; }
.rbox { display:block; }
.rbox .picbox { overflow:hidden; aspect-ratio:1/1; }
.rel-img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.rbox:hover .rel-img { transform:scale(1.06); }
.rtit { display:block; font-size:13px; color:#555; margin-top:10px; line-height:1.5; }

/* ---------- 新闻列表 pNews-list ---------- */
.pNews-list .item { display:flex; align-items:stretch; padding:28px 0; border-top:1px solid #ebebeb; transition:all .3s; cursor:pointer; }
.pNews-list .item:first-child { border-top:0; }
.pNews-list .item:hover { background:#fff; box-shadow:0 6px 40px rgba(90,90,90,.15); }
.pNews-list .item .picbox { flex:0 0 320px; overflow:hidden; }
.nul-img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.pNews-list .item .textbox { flex:1; padding:0 36px; }
.nul-tit { font-size:18px; color:#333; font-weight:bold; margin-bottom:14px; line-height:1.5; }
.pNews-list .item:hover .nul-tit { color:var(--g1); }
.nul-desc { color:#999; font-size:14px; line-height:1.8; height:60px; overflow:hidden; margin-bottom:14px; }
.nul-more { display:inline-block; font-size:13px; color:var(--g1); }
.pNews-list .item .timebox { flex:0 0 110px; text-align:center; padding-top:18px; }
.pNews-list .timebox .mm-dd { font-size:24px; font-weight:bold; color:var(--g1); margin-bottom:10px; display:block; }
.pNews-list .timebox .yyyy { color:#999; }

/* ---------- 新闻详情 ---------- */
.detail { padding:10px 0 30px; }
.detail-title h1 { font-size:26px; color:#222; font-weight:bold; line-height:1.5; }
.detail-meta { display:flex; gap:18px; flex-wrap:wrap; padding:16px 0; border-bottom:1px solid #eee; margin-bottom:26px; font-size:13px; color:#999; }
.dm-cat { color:#fff; background:var(--g1); padding:2px 12px; border-radius:12px; }
.detail-context p { margin-bottom:20px; line-height:2; font-size:15px; color:#555; }
.nd-pic { margin:24px 0; }
.nd-img { width:100%; height:auto; }
.reLink { display:flex; gap:20px; margin:30px 0; }
.reLink > div { flex:1; padding:18px 22px; background:#f5f5f5; font-size:14px; transition:all .3s; }
.reLink > div:hover { background:var(--g1); color:#fff; }
.reLink .lbl { color:var(--g1); font-weight:bold; }
.reLink > div:hover .lbl { color:#fff; }
.reLink a { display:block; color:inherit; margin-top:4px; }
.reLink .none { color:#aaa; }
.reLink-back { width:max-content; }

/* ---------- 联系我们 ---------- */
.ci-cards { padding:10px 0; }
.ci-list { display:flex; gap:24px; flex-wrap:wrap; }
.ci-card { flex:1 1 30%; min-width:260px; padding:40px 30px; background:#fff; border:1px solid #eee; border-top:3px solid var(--g1); text-align:center; transition:all .3s; }
.ci-card:hover { box-shadow:0 6px 30px rgba(90,90,90,.15); transform:translateY(-3px); }
.ci-ico { display:inline-flex; color:#fff; background:var(--g1); width:64px; height:64px; border-radius:50%; align-items:center; justify-content:center; margin-bottom:16px; }
.ci-ico svg { width:30px; height:30px; }
.ci-label { display:block; font-size:14px; color:#999; margin-bottom:6px; }
.ci-val { display:block; font-size:17px; color:#333; font-weight:bold; word-break:break-all; }
.ct-row { display:flex; gap:40px; margin-top:30px; align-items:flex-start; }
.ct-form { flex:1 1 48%; }
.form-contact ul { list-style:none; }
.form-contact li { margin-bottom:12px; }
.inp, .textarea { width:100%; height:44px; line-height:22px; padding:10px 14px; border:1px solid #e5e5e5; font-size:15px; font-family:inherit; }
.textarea { height:auto; }
.inp:focus, .textarea:focus { border-color:var(--g1); outline:none; }
.btn-submit { width:100%; justify-content:center; margin-top:12px; }
.cf-tip { margin-top:12px; font-size:14px; color:var(--g2); }
.ct-map { flex:1 1 48%; }
.mapbox { position:relative; overflow:hidden; }
.map-img { width:100%; height:auto; }
.map-cap { display:block; padding:12px 16px; background:rgba(33,55,82,.85); color:#fff; font-size:14px; margin-top:-4px; }
.ct-contact { margin-top:20px; }
.ct-contact li { padding:10px 0; font-size:14px; color:#666; display:flex; align-items:center; gap:8px; }
.cl-ico { color:var(--g1); display:inline-flex; }

/* ---------- 友情链接 flink ---------- */
.flink { background:#f5f5f5; }
.flink-box { display:flex; align-items:center; padding:14px 20px; border:1px solid #e5e5e5; background:#fff; }
.flink-label { line-height:30px; padding:0 12px; color:var(--g1); font-size:15px; flex:none; }
.flink-items { flex:1; padding-left:14px; }
.flink-items a { display:inline-block; margin:0 16px 6px 0; line-height:30px; font-size:14px; color:#666; }
.flink-items a:hover { color:var(--g1); }

/* ---------- 页脚 footer ---------- */
.footer { padding:56px 0; background:var(--gdk); color:var(--gtxt); font-size:14px; }
.footer a { color:var(--gtxt); }
.footer a:hover { color:#fff; }
.ft-row { display:flex; justify-content:space-between; gap:40px; }
.ft-cols { display:flex; flex:1; gap:40px; flex-wrap:wrap; }
.ft-col { flex:1 1 18%; min-width:150px; }
.ft-h4 { color:#adbac5; font-size:16px; font-weight:bold; margin-bottom:18px; }
.ft-links li { margin-bottom:12px; }
.ft-contact { flex:1 1 30%; min-width:240px; }
.ft-tel { font-size:24px; color:#fff; font-weight:bold; margin-bottom:14px; }
.ft-addr, .ft-mail { font-size:13px; line-height:1.7; margin-bottom:10px; display:flex; gap:6px; }
.ft-addr .fc-ico, .ft-mail .fc-ico { flex:none; color:var(--g3); display:inline-flex; margin-top:2px; }
.ft-contact .btn-green { margin-top:14px; }
.ft-qr { flex:0 0 160px; text-align:center; }
.qr-pic { width:160px; height:160px; margin:0 auto 10px; background:#fff; padding:6px; }
.qr-tit { color:#adbac5; font-size:13px; }
.footer-bar { background:#1a2c40; padding:18px 0; }
.footer-bar .container { display:flex; justify-content:center; gap:8px; flex-wrap:wrap; font-size:13px; color:#7a8a99; }
.copy { color:#7a8a99; }
.beian { color:#7a8a99; }
.beian:hover { color:var(--g1); }

/* ---------- 其余语义类 ---------- */
.ab-intro { padding:10px 0 0; }
.pro-rel { margin-bottom:30px; }
.dm-date, .dm-src { color:#999; }
.reLink .prevLink, .reLink .nextLink { }

/* ---------- 返回顶部 ---------- */
.back-top { position:fixed; right:24px; bottom:30px; z-index:99; width:46px; height:46px; border-radius:50%; background:var(--g1); color:#fff; border:0; font-size:22px; cursor:pointer; opacity:0; visibility:hidden; transition:all .3s; box-shadow:0 4px 14px rgba(0,0,0,.2); }
.back-top.show { opacity:1; visibility:visible; }
.back-top:hover { background:var(--g2); }

/* ---------- 图片兜底 ---------- */
.img-fallback { background:linear-gradient(135deg,#85bd43,#00843e); display:flex; align-items:center; justify-content:center; width:100%; min-height:160px; color:#fff; font-size:14px; border-radius:4px; }

/* ---------- 响应式：平板 ---------- */
@media (max-width:1024px) {
  .container { max-width:100%; }
  .nav > li { margin-left:26px; }
  .nav > li > a { font-size:15px; }
  .head-tel { margin-left:16px; padding-left:16px; }
  .case-list li.li-1 { width:50%; }
  .case-list li.li-2, .case-list li.li-3, .case-list li.li-4, .case-list li.li-5 { width:25%; }
  .pCase-list li { width:33.333%; }
  .zhengshu-list li { width:50%; }
  .partner-list li { width:25%; }
  .ab-row { flex-direction:column; gap:30px; }
  .pro-top { flex-direction:column; gap:24px; }
  .pro-pic { flex:none; }
  .ct-row { flex-direction:column; gap:30px; }
  .shzr-con { float:none; width:100%; padding:40px 30px; }
  .shzr-imgbg { right:0; opacity:.12; }
}

/* ---------- 响应式：手机 ---------- */
@media (max-width:769px) {
  body { padding-top:64px; }
  .topbar { height:64px; }
  .brand { font-size:18px; }
  .kw { font-size:11px; }
  .head-tel { display:none; }
  .menubox { position:fixed; top:64px; left:0; right:0; background:#fff; max-height:0; overflow:hidden; transition:max-height .4s; box-shadow:0 6px 18px rgba(0,0,0,.12); }
  .menubox.show { max-height:560px; overflow-y:auto; }
  .nav { flex-direction:column; align-items:stretch; padding:6px 0; }
  .nav > li { margin-left:0; width:100%; }
  .nav > li > a { padding:14px 20px; border-bottom:1px solid #f0f0f0; }
  .nav > li > a:hover, .nav > li.active > a { border-bottom-color:#f0f0f0; background:#f8f8f8; }
  .nav-arrow { margin-left:auto; }
  .nav .sub { position:static; opacity:1; visibility:visible; width:auto; margin-left:0; box-shadow:none; padding:0; background:#fafafa; }
  .nav .sub li { text-align:left; border-top:0; }
  .nav .sub li a { padding:12px 20px 12px 40px; }
  .navBtn { display:flex; }
  .banner { height:320px; }
  .cap-tit { font-size:26px; }
  .cap-desc { font-size:14px; margin:14px 0 20px; }
  .cap-btn { padding:0 24px; line-height:38px; font-size:14px; }
  .banner-arr { width:38px; height:38px; font-size:22px; line-height:34px; }
  .section { padding:44px 0; }
  .section-title { font-size:24px; }
  .section-subtitle { margin:12px 0 34px; }
  .effect-list li, .serviceFlow-list li { flex-basis:50%; min-width:0; }
  .effect-list li a, .serviceFlow-list li a { padding:30px 16px; }
  .iconbox { width:120px; height:120px; }
  .sysport-list { top:-50px; width:calc(100% - 24px); max-width:92%; }
  .section-sysport { height:80px; }
  .sp-txt { font-size:16px; }
  .case-list li, .case-list li.li-1, .case-list li.li-2, .case-list li.li-3, .case-list li.li-4, .case-list li.li-5 { width:100%; height:300px; }
  .case-list li .picbox, .case-list li .textbox { height:150px; }
  .case-list li.li-1 .picbox { height:300px; }
  .case-list li.li-3 .picbox, .case-list li.li-5 .picbox { position:absolute; bottom:0; }
  .news-list > li { width:100%; }
  .pCase-list li { width:50%; }
  .zhengshu-list li, .partner-list li { width:50%; }
  .timeline .tl-item, .cul-list li, .team-list li, .feat-list li, .rel-list li { flex-basis:100%; }
  .about-stat { flex:1 1 50%; }
  .pNews-list .item { flex-direction:column; }
  .pNews-list .item .picbox, .pNews-list .item .textbox, .pNews-list .item .timebox { flex:none; width:100%; }
  .pNews-list .item .textbox { padding:16px 0; }
  .ab-stats .about-stat { flex:1 1 50%; }
  .reLink { flex-direction:column; }
  .ci-card { flex:1 1 100%; }
  .banner-simple { height:200px; }
  .bs-cn { font-size:26px; }
  .ft-qr { flex:1 1 100%; }
  .ft-col { flex:1 1 40%; }
}
