/* =====================================================================
   成都投概名电子商务有限公司 — 全站样式 style.css
   参考站：demoall.5fa.cn/28598 （珊瑚色 #e47257 电子配件模板）
   ===================================================================== */

/* ---------- 全局变量 / 重置 ---------- */
:root{
  --brand:#e47257;          /* 主色：珊瑚橙 */
  --brand-dark:#d05a3f;     /* 主色加深（悬停） */
  --dark:#3a3a3a;           /* 顶栏深色 / 页脚深色 */
  --darker:#2c2c2c;
  --ink:#3f3f3f;            /* 标题文字 */
  --ink2:#343434;           /* 正文/导航 */
  --muted:#505050;          /* 次要文字 */
  --light:#777;             /* 弱文字 */
  --gray:#f9f9f9;           /* 区块浅灰背景 */
  --graybd:#e9e9e9;         /* 边框灰 */
  --radius:3px;
  --maxw:1170px;
  --font:arimo,roboto,"Microsoft YaHei","微软雅黑",Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font);
  color:var(--ink2);
  font-size:14px;
  line-height:1.8;
  background:#fff;
  width:100%;
  float:left;
  overflow-x:hidden;
}
a{color:var(--brand);text-decoration:none;transition:all .3s linear;}
a:hover{color:var(--brand-dark);}
img{max-width:100%;display:block;}
ul{list-style:none;}
h1,h2,h3,h4,h5{font-weight:600;color:var(--ink);line-height:1.3;}

.container{max-width:var(--maxw);margin:0 auto;padding:0 15px;}
.theme-layout{float:left;width:100%;}            /* 全站页面外层容器 */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;}
.block{float:left;width:100%;padding:70px 0;}
.block.gray{background:var(--gray);}
.block.whitish{background:var(--gray);}
.block.remove-gap{padding-top:0;}
/* 所有 grid 容器显式占满宽度：display:grid + width:auto 在本站浮动布局链下会按内容收缩（fr 轨道无内在尺寸→塌陷为 0），必须显式 width:100% */
.products-grid,.services-grid,.about-wrap,.about-stats,.news-grid,.partners-grid,.footer-widgets,.about-intro,.culture-grid,.team-grid,.pd-top,.feature-list,.news-list,.nl-item,.contact-info-grid,.contact-form-wrap,.form-row{width:100%;}

/* ---------- 通用区块标题 ---------- */
.title{float:left;width:100%;margin-bottom:45px;text-align:center;}
.title h2{font-size:33px;color:var(--ink);font-weight:600;position:relative;display:inline-block;padding:0 0 18px;}
.title h2 span{font-weight:300;color:var(--brand);}
.title h2:after{content:"";position:absolute;left:50%;bottom:0;width:54px;height:3px;background:var(--brand);transform:translateX(-50%);}
.title>span{float:left;width:100%;color:var(--muted);font-size:14px;margin-top:14px;}

/* ---------- 通用按钮 ---------- */
.theme-btn{
  display:inline-block;background:var(--brand);color:#fff;font-size:14px;
  padding:11px 26px;border-radius:var(--radius);border:none;cursor:pointer;
  transition:all .3s linear;font-family:var(--font);
}
.theme-btn:hover{background:var(--brand-dark);color:#fff;}
.theme-btn i{margin-left:4px;}
.big-btn{padding:14px 36px;font-size:15px;}

/* =====================================================================
   顶部信息栏 + 导航栏（site-header = topbox，topbar + main-menu 为其子元素）
   ===================================================================== */
.site-header{
  position:sticky;top:0;z-index:999;width:100%;float:left;
  box-shadow:0 2px 10px rgba(0,0,0,.06);background:#fff;
}
.topbar{background:var(--dark);color:#d8d8d8;font-size:13px;}
.topbar .container{display:flex;justify-content:space-between;align-items:center;height:40px;flex-wrap:wrap;}
.topbar-info{display:flex;gap:26px;}
.topbar-info li i{color:var(--brand);margin-right:7px;}
.topbar-info li,.topbar-links li{list-style:none;}
.topbar-links{display:flex;gap:10px;}
.topbar-links a{color:#d8d8d8;display:inline-flex;align-items:center;gap:6px;}
.topbar-links a:hover{color:var(--brand);}
.topbar-links a i{color:var(--brand);}

.main-menu{background:#fff;}
.main-menu .container{display:flex;align-items:center;justify-content:space-between;height:90px;}
.logo{display:flex;align-items:center;gap:12px;}
.logo-icon{width:46px;height:46px;flex-shrink:0;}
.logo-text{display:flex;flex-direction:column;line-height:1.15;}
.logo-name{font-size:22px;font-weight:700;color:var(--ink);letter-spacing:1px;}
.logo-slogan{font-size:11px;color:var(--brand);letter-spacing:3px;text-transform:uppercase;}

.main-nav{display:flex;align-items:center;}
.main-nav>li{position:relative;list-style:none;}
.main-nav>li>a{
  display:block;color:var(--ink2);font-size:15px;font-weight:500;
  padding:0 20px;line-height:90px;position:relative;
}
.main-nav>li>a:hover,.main-nav>li.active>a{color:var(--brand);}
.main-nav>li.active>a:after,.main-nav>li>a:hover:after{
  content:"";position:absolute;left:20px;right:20px;bottom:0;height:3px;background:var(--brand);
}
.main-nav .has-sub>a:after{content:"\f0d7";font-family:FontAwesome;margin-left:6px;font-size:12px;}
.main-nav .dropdown{
  position:absolute;top:100%;left:0;min-width:180px;background:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.12);opacity:0;visibility:hidden;transform:translateY(10px);
  transition:all .3s linear;z-index:50;
}
.main-nav li:hover>.dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown li{list-style:none;}
.dropdown a{display:block;padding:11px 20px;color:var(--ink2);font-size:14px;border-bottom:1px solid var(--graybd);}
.dropdown a:hover{background:var(--brand);color:#fff;}
.menu-phone{margin-left:20px;display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:600;}
.menu-phone i{color:var(--brand);font-size:18px;}

/* =====================================================================
   移动端头部 / 汉堡菜单
   ===================================================================== */
.m-header{display:none;}
.m-nav{display:none;}          /* 移动端抽屉菜单：桌面默认隐藏，仅 ≤1024px 显示 */
.m-overlay{display:none;}
.m-has-sub{position:relative;}
.m-nav .m-sub{list-style:none;}
.m-nav .m-sub a{padding-left:30px !important;font-size:13px;background:var(--gray);}

/* =====================================================================
   Banner 轮播
   ===================================================================== */
.banner{position:relative;float:left;width:100%;overflow:hidden;}
.banner-slides{position:relative;width:100%;}
.banner-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;}
.banner-slide.active{opacity:1;position:relative;}
.banner-slide img{width:100%;height:600px;object-fit:cover;}
.banner-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.25) 60%,rgba(0,0,0,.05) 100%);}
.banner-caption{position:absolute;left:0;top:0;height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;z-index:3;}
.banner-caption .container{max-width:var(--maxw);}
.banner-caption .bc-inner{max-width:640px;color:#fff;}
.banner-caption h2{color:#fff;font-size:46px;font-weight:700;margin-bottom:18px;line-height:1.25;}
.banner-caption h2 span{color:var(--brand);}
.banner-caption p{color:#eee;font-size:17px;margin-bottom:28px;line-height:1.8;}
.banner-caption .theme-btn{font-size:15px;padding:13px 32px;}
.banner-dots{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;gap:10px;z-index:4;}
.banner-dots .dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:all .3s;}
.banner-dots .dot.active{background:var(--brand);width:30px;border-radius:6px;}
.banner-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;background:rgba(0,0,0,.3);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:4;font-size:20px;transition:all .3s;}
.banner-arrow:hover{background:var(--brand);}
.banner-arrow.prev{left:20px;}
.banner-arrow.next{right:20px;}

/* =====================================================================
   产品展示（welfare-project 卡片：图 + 底部信息条 + 悬停遮罩 + 查看更多）
   ===================================================================== */
.products-sec{float:left;width:100%;}
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.product-card{position:relative;overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:0 0 0 1px var(--graybd);}
.product-card .pc-img{position:relative;overflow:hidden;}
.product-card .pc-img img{width:100%;height:230px;object-fit:cover;transition:transform .5s ease;}
.product-card:hover .pc-img img{transform:scale(1.08);}
.product-info{padding:16px 18px;position:relative;z-index:2;background:#fff;}
.product-info h3{font-size:16px;font-weight:600;margin-bottom:6px;}
.product-info h3 a{color:var(--ink);}
.product-info h3 a:hover{color:var(--brand);}
.product-info .cat{display:inline-block;font-size:12px;color:#fff;background:var(--brand);padding:2px 10px;border-radius:2px;}
.product-hover{
  position:absolute;left:0;top:0;width:100%;height:100%;
  background:linear-gradient(180deg,rgba(224,114,87,.78) 0%,rgba(208,90,63,.9) 100%);
  color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:24px;opacity:0;transform:translateY(20px);transition:all .35s ease;z-index:3;pointer-events:none;
}
.product-card:hover .product-hover{opacity:1;transform:translateY(0);pointer-events:auto;}
.product-hover h3{color:#fff;font-size:18px;margin-bottom:8px;}
.product-hover .cat{display:inline-block;font-size:12px;color:#fff;border:1px solid rgba(255,255,255,.6);padding:2px 12px;border-radius:2px;margin-bottom:18px;}
.product-hover .theme-btn{background:#fff;color:var(--brand);}
.product-hover .theme-btn:hover{background:var(--dark);color:#fff;}

/* =====================================================================
   核心业务 / 服务（4 列图标卡）
   ===================================================================== */
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.service-card{
  background:#fff;padding:38px 26px;text-align:center;border-radius:var(--radius);
  transition:all .35s ease;border:1px solid var(--graybd);
}
.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px rgba(224,114,87,.18);border-color:transparent;}
.service-icon{
  width:74px;height:74px;margin:0 auto 20px;border-radius:50%;
  background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:30px;
  transition:all .35s ease;
}
.service-card:hover .service-icon{background:var(--dark);transform:rotateY(180deg);}
.service-card h3{font-size:18px;margin-bottom:12px;}
.service-card p{color:var(--light);font-size:13px;line-height:1.7;}

/* =====================================================================
   关于我们（whitish 视差浅灰 + 简介 + 数据）
   ===================================================================== */
.about-sec{float:left;width:100%;background:var(--gray);position:relative;}
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.about-text h3{font-size:28px;margin-bottom:8px;}
.about-text .sub{color:var(--brand);font-size:13px;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;display:block;}
.about-text p{color:var(--muted);margin-bottom:16px;}
.about-text .theme-btn{margin-top:10px;}
.about-img{position:relative;}
.about-img img{width:100%;height:380px;object-fit:cover;border-radius:var(--radius);}
.about-img:before{content:"";position:absolute;left:-14px;top:-14px;width:100%;height:100%;border:3px solid var(--brand);border-radius:var(--radius);z-index:-1;}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:50px;}
.stat-item{text-align:center;}
.stat-num{font-size:38px;font-weight:700;color:var(--brand);line-height:1;}
.stat-num span{font-size:20px;}
.stat-label{color:var(--muted);font-size:14px;margin-top:8px;}

/* =====================================================================
   新闻动态（story 卡片：图 + + 悬停 + 分类 + 标题 + 日期 + 阅读）
   ===================================================================== */
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.news-card{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);overflow:hidden;transition:all .35s ease;}
.news-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.1);transform:translateY(-6px);}
.story-img{position:relative;overflow:hidden;}
.story-img img{width:100%;height:185px;object-fit:cover;transition:transform .5s ease;}
.news-card:hover .story-img img{transform:scale(1.08);}
.story-img .plus{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);
  width:46px;height:46px;border-radius:50%;background:var(--brand);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:20px;opacity:0;transition:all .35s ease;
}
.news-card:hover .story-img .plus{opacity:1;transform:translate(-50%,-50%) scale(1);}
.story-detail{padding:18px 20px 8px;}
.story-detail .cat{display:inline-block;font-size:12px;color:var(--brand);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;}
.story-detail h3{font-size:15px;line-height:1.5;margin-bottom:0;}
.story-detail h3 a{color:var(--ink);}
.story-detail h3 a:hover{color:var(--brand);}
.spent-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 18px;border-top:1px solid var(--graybd);margin-top:14px;}
.spent-bar .date{font-size:12px;color:var(--light);}
.spent-bar .date i{color:var(--brand);margin-right:5px;}
.spent-bar .read{font-size:12px;color:var(--brand);font-weight:600;}

/* =====================================================================
   合作伙伴（文字 Logo 墙）
   ===================================================================== */
.partners-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.partner-card{
  background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);height:100px;
  display:flex;align-items:center;justify-content:center;transition:all .35s ease;
}
.partner-card:hover{border-color:var(--brand);box-shadow:0 8px 20px rgba(224,114,87,.15);}
.partner-card span{font-size:17px;font-weight:700;color:var(--muted);letter-spacing:1px;}
.partner-card:hover span{color:var(--brand);}

/* =====================================================================
   页脚
   ===================================================================== */
.site-footer{background:var(--dark);color:#afafaf;float:left;width:100%;}
.footer-widgets{display:grid;grid-template-columns:1.1fr 1.3fr 1fr 1fr;gap:40px;padding:65px 0 45px;}
.footer-col h4,.footer-col h5{color:#fff;font-size:18px;margin-bottom:24px;font-weight:600;}
.footer-col h4 span,.footer-col h5 span{font-weight:300;color:var(--brand);}
.foot-contact p{margin-bottom:18px;color:#bdbdbd;line-height:1.7;font-size:13px;}
.foot-contact ul li{font-size:13px;margin-bottom:11px;color:#cfcfcf;}
.foot-contact ul li i{color:var(--brand);width:16px;margin-right:8px;}
.foot-news .widget-post{display:flex;gap:12px;margin-bottom:18px;}
.foot-news .widget-post img{width:74px;height:60px;object-fit:cover;border-radius:2px;flex-shrink:0;}
.foot-news .widget-post h5{color:#cfcfcf;font-size:13px;font-weight:400;line-height:1.5;margin:0;}
.foot-news .widget-post h5 a{color:#cfcfcf;}
.foot-news .widget-post h5 a:hover{color:var(--brand);}
.foot-news .widget-post .meta{font-size:11px;color:#888;margin-top:5px;}
.foot-news .widget-post .meta i{margin-right:5px;}
.foot-nav ul.f-nav li{margin-bottom:11px;}
.foot-nav ul.f-nav li a{color:#cfcfcf;font-size:13px;}
.foot-nav ul.f-nav li a:hover{color:var(--brand);padding-left:5px;}
.foot-nav ul.f-nav li i{color:var(--brand);margin-right:8px;font-size:12px;}
.foot-qr .qr-box img{width:130px;height:130px;background:#fff;padding:6px;border-radius:4px;}
.foot-qr .qr-tip{color:#888;font-size:12px;margin-top:10px;}
.bottom-bar{border-top:1px solid #4a4a4a;padding:18px 0;text-align:center;}
.bottom-bar p{color:#afafaf;font-size:13px;}
.bottom-bar p a{color:#afafaf;}
.bottom-bar p a:hover{color:var(--brand);}

/* =====================================================================
   内页 Banner + 面包屑
   ===================================================================== */
.n-banner{position:relative;float:left;width:100%;height:300px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;}
.n-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.n-banner-mask{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(224,114,87,.45));z-index:1;}
.n-banner h2{position:relative;z-index:2;color:#fff;font-size:38px;font-weight:700;}
.ntit{float:left;width:100%;background:#fff;border-bottom:1px solid var(--graybd);}
.ntit .container{display:flex;justify-content:space-between;align-items:center;height:60px;}
.ntt{display:flex;align-items:baseline;gap:12px;}
.ntt .ntt-title{font-size:20px;color:var(--ink);font-weight:600;}
.ntt i{font-style:normal;font-size:12px;color:#bbb;letter-spacing:2px;text-transform:uppercase;}
.weiz{font-size:13px;color:var(--light);}
.weiz a{color:var(--muted);}
.weiz a:hover{color:var(--brand);}
.weiz .sep{margin:0 6px;color:#ccc;}

/* 内页主体容器 */
.page-content{float:left;width:100%;padding:60px 0;}
.content-wrap{max-width:var(--maxw);margin:0 auto;padding:0 15px;}

/* =====================================================================
   关于我们页
   ===================================================================== */
.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-bottom:60px;}
.about-intro img{width:100%;height:380px;object-fit:cover;border-radius:var(--radius);}
.about-intro h3{font-size:26px;margin-bottom:16px;}
.about-intro .sub{color:var(--brand);font-size:13px;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;display:block;}
.about-intro p{color:var(--muted);margin-bottom:14px;}
.page-sec-title{text-align:center;font-size:28px;margin-bottom:14px;}
.page-sec-sub{text-align:center;color:var(--light);font-size:14px;margin-bottom:45px;}
.page-sec-sub:after{content:"";display:block;width:54px;height:3px;background:var(--brand);margin:14px auto 0;}

.timeline{position:relative;margin:0 auto 60px;max-width:880px;padding:10px 0;}
.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--graybd);transform:translateX(-50%);}
.timeline-item{position:relative;width:50%;padding:0 40px 36px 0;}
.timeline-item:nth-child(even){left:50%;padding:0 0 36px 40px;}
.timeline-dot{position:absolute;right:-9px;top:4px;width:18px;height:18px;border-radius:50%;background:var(--brand);border:3px solid #fff;box-shadow:0 0 0 2px var(--brand);}
.timeline-item:nth-child(even) .timeline-dot{left:-9px;right:auto;}
.timeline-card{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:20px 24px;transition:all .3s;}
.timeline-card:hover{box-shadow:0 10px 24px rgba(0,0,0,.08);border-color:var(--brand);}
.timeline-date{color:var(--brand);font-size:14px;font-weight:700;margin-bottom:6px;}
.timeline-card h4{font-size:17px;margin-bottom:6px;}
.timeline-card p{color:var(--light);font-size:13px;line-height:1.7;}

.culture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:10px;}
.culture-card{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:36px 28px;text-align:center;transition:all .35s;}
.culture-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px rgba(0,0,0,.1);}
.culture-card .icon{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--gray);color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:26px;}
.culture-card h3{font-size:19px;margin-bottom:10px;}
.culture-card p{color:var(--light);font-size:13px;line-height:1.8;}

.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.team-card{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);overflow:hidden;text-align:center;transition:all .35s;}
.team-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px rgba(0,0,0,.1);}
.team-card img{width:100%;height:230px;object-fit:cover;}
.team-card h4{font-size:17px;margin:18px 0 4px;}
.team-card span{color:var(--brand);font-size:13px;display:block;padding-bottom:18px;}

/* =====================================================================
   产品列表页 / 详情页
   ===================================================================== */
.product-detail{margin-bottom:20px;}
.pd-top{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-bottom:50px;}
.pd-gallery img{width:100%;height:420px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--graybd);}
.pd-info h1{font-size:26px;margin-bottom:10px;line-height:1.4;}
.pd-info .pd-cat{display:inline-block;font-size:12px;color:#fff;background:var(--brand);padding:3px 14px;border-radius:2px;margin-bottom:18px;}
.pd-info .pd-desc{color:var(--muted);margin-bottom:22px;line-height:1.9;}
.pd-info .pd-quick{background:var(--gray);border-radius:var(--radius);padding:18px 22px;margin-bottom:22px;}
.pd-info .pd-quick div{margin-bottom:6px;font-size:13px;color:var(--muted);}
.pd-info .pd-quick strong{color:var(--ink);margin-right:8px;}
.pd-info .pd-actions{display:flex;gap:14px;align-items:center;}
.pd-info .pd-price{color:var(--brand);font-size:22px;font-weight:700;}

.pd-block{margin-bottom:45px;}
.pd-block h3{font-size:20px;margin-bottom:20px;padding-left:14px;border-left:4px solid var(--brand);}
.pd-block p{color:var(--muted);margin-bottom:14px;line-height:1.9;}
.pd-params table{width:100%;border-collapse:collapse;border:1px solid var(--graybd);}
.pd-params th,.pd-params td{padding:13px 18px;border:1px solid var(--graybd);font-size:14px;text-align:left;}
.pd-params th{background:var(--gray);color:var(--ink);width:28%;font-weight:600;}
.pd-params td{color:var(--muted);}
.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.feature-item{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:20px 22px;}
.feature-item .icon{width:48px;height:48px;flex-shrink:0;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;}
.feature-item h4{font-size:15px;margin-bottom:4px;}
.feature-item p{color:var(--light);font-size:13px;margin:0;}

.pd-related h3{font-size:20px;margin-bottom:24px;padding-left:14px;border-left:4px solid var(--brand);}

/* =====================================================================
   新闻列表 / 详情
   ===================================================================== */
.news-list{display:grid;grid-template-columns:1fr;gap:24px;}
.nl-item{display:grid;grid-template-columns:260px 1fr;gap:26px;background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);overflow:hidden;transition:all .3s;}
.nl-item:hover{box-shadow:0 12px 28px rgba(0,0,0,.1);border-color:transparent;}
.nl-img{overflow:hidden;}
.nl-img img{width:100%;height:100%;min-height:180px;object-fit:cover;transition:transform .5s;}
.nl-item:hover .nl-img img{transform:scale(1.06);}
.nl-body{padding:22px 26px 22px 0;}
.nl-body .nl-cat{display:inline-block;font-size:12px;color:#fff;background:var(--brand);padding:2px 12px;border-radius:2px;margin-bottom:10px;}
.nl-body h3{font-size:18px;margin-bottom:10px;}
.nl-body h3 a{color:var(--ink);}
.nl-body h3 a:hover{color:var(--brand);}
.nl-body .nl-meta{font-size:12px;color:var(--light);margin-bottom:10px;}
.nl-body .nl-meta i{color:var(--brand);margin-right:5px;}
.nl-body .nl-meta .sep{margin:0 12px;color:#ddd;}
.nl-body p{color:var(--muted);font-size:13px;line-height:1.8;}
.nl-body .read{display:inline-block;margin-top:12px;color:var(--brand);font-size:13px;font-weight:600;}

.news-article{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:40px 50px;}
.news-article .article-meta{color:var(--light);font-size:13px;margin-bottom:8px;}
.news-article .article-meta i{color:var(--brand);margin-right:5px;}
.news-article .article-meta .sep{margin:0 12px;color:#ddd;}
.news-article h1.article-title{font-size:26px;margin-bottom:18px;line-height:1.5;}
.news-article p{color:var(--muted);margin-bottom:16px;line-height:2;font-size:14.5px;}
.news-article h3{font-size:19px;margin:26px 0 14px;}
.news-article img{width:100%;border-radius:var(--radius);margin:18px 0;}
.article-nav{display:flex;justify-content:space-between;gap:20px;margin-top:30px;border-top:1px solid var(--graybd);padding-top:24px;}
.article-nav a{color:var(--muted);font-size:13px;max-width:46%;}
.article-nav a:hover{color:var(--brand);}
.article-nav .lbl{display:block;color:var(--light);font-size:12px;margin-bottom:4px;}
.article-nav .next{text-align:right;}

/* =====================================================================
   联系我们
   ===================================================================== */
.contact-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-bottom:50px;}
.ci-card{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:38px 26px;text-align:center;transition:all .35s;}
.ci-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px rgba(0,0,0,.1);border-color:transparent;}
.ci-card .icon{width:70px;height:70px;margin:0 auto 18px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;}
.ci-card h3{font-size:18px;margin-bottom:10px;}
.ci-card p{color:var(--muted);font-size:14px;line-height:1.7;}
.contact-form-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.contact-form{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:36px;}
.contact-form h3{font-size:20px;margin-bottom:22px;padding-left:14px;border-left:4px solid var(--brand);}
.form-field{margin-bottom:16px;}
.form-field label{display:block;font-size:13px;color:var(--ink);margin-bottom:6px;font-weight:500;}
.form-field label i{color:var(--brand);}
.form-field input,.form-field textarea{
  width:100%;padding:11px 14px;border:1px solid var(--graybd);border-radius:var(--radius);
  font-family:var(--font);font-size:14px;color:var(--ink2);transition:all .3s;
}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(224,114,87,.12);}
.form-field textarea{min-height:130px;resize:vertical;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.contact-map{background:#fff;border:1px solid var(--graybd);border-radius:var(--radius);padding:30px;height:100%;}
.contact-map h3{font-size:20px;margin-bottom:20px;padding-left:14px;border-left:4px solid var(--brand);}
.contact-map ul li{margin-bottom:16px;padding-left:30px;position:relative;color:var(--muted);font-size:14px;}
.contact-map ul li i{position:absolute;left:0;top:3px;color:var(--brand);font-size:18px;}

/* =====================================================================
   工具类：淡入动画 / 图片兜底 / 返回顶部
   （淡入改为纯 CSS 一次性入场动画，元素始终可见，绝不出现"内容不可见"）
   ===================================================================== */
.fade-in{opacity:1;transform:none;animation:fiIn .9s ease both;}
@keyframes fiIn{from{opacity:.01;transform:translateY(22px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.fade-in{animation:none;}}
.img-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:200px;color:#fff;font-size:14px;border-radius:var(--radius);text-align:center;padding:14px;}
.back-top{position:fixed;right:24px;bottom:30px;width:46px;height:46px;background:var(--brand);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .35s;z-index:998;box-shadow:0 6px 16px rgba(0,0,0,.2);}
.back-top.show{opacity:1;visibility:visible;transform:translateY(0);}
.back-top:hover{background:var(--dark);}

/* =====================================================================
   响应式
   ===================================================================== */
@media (max-width:1200px){
  .main-nav>li>a{padding:0 16px;}
}
@media (max-width:1024px){
  .site-header .main-menu,.site-header .topbar .container{display:none;}
  .m-header{display:block;background:#fff;position:sticky;top:0;z-index:999;box-shadow:0 2px 10px rgba(0,0,0,.08);}
  .m-header .container{display:flex;align-items:center;justify-content:space-between;height:64px;}
  .m-toggle{font-size:24px;color:var(--ink);cursor:pointer;background:none;border:none;}
  .m-nav{display:block;position:fixed;top:0;right:-280px;width:270px;height:100vh;background:#fff;box-shadow:-4px 0 20px rgba(0,0,0,.15);transition:right .35s ease;z-index:1000;padding:20px 0;overflow-y:auto;}
  .m-nav.open{right:0;}
  .m-nav .m-close{font-size:22px;color:var(--ink);position:absolute;right:18px;top:16px;background:none;border:none;cursor:pointer;}
  .m-nav ul li{border-bottom:1px solid var(--graybd);}
  .m-nav ul li a{display:block;padding:13px 22px;color:var(--ink2);font-size:15px;}
  .m-nav ul li a:hover{color:var(--brand);background:var(--gray);}
  .m-nav .m-sub{padding-left:8px;background:var(--gray);}
  .m-nav .m-sub a{font-size:13px;padding:11px 30px;}
  .m-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:999;opacity:0;visibility:hidden;transition:all .3s;}
  .m-overlay.show{opacity:1;visibility:visible;}
  .m-contact{padding:16px 22px;color:var(--brand);font-weight:600;font-size:14px;}
  .m-contact i{margin-right:6px;}

  .banner-slide img{height:420px;}
  .banner-caption h2{font-size:32px;}
  .banner-caption p{font-size:15px;}

  .products-grid,.news-grid,.services-grid{grid-template-columns:repeat(3,1fr);}
  .partners-grid{grid-template-columns:repeat(4,1fr);}
  .about-wrap,.about-intro{grid-template-columns:1fr;}
  .about-img,.about-intro img{height:300px;}
  .about-stats{grid-template-columns:repeat(2,1fr);gap:30px;}
  .footer-widgets{grid-template-columns:1fr 1fr;}
  .pd-top,.contact-form-wrap,.feature-list{grid-template-columns:1fr;}
  .culture-grid,.team-grid,.contact-info-grid{grid-template-columns:repeat(2,1fr);}
  .nl-item{grid-template-columns:200px 1fr;}
}
@media (max-width:768px){
  .block{padding:50px 0;}
  .title h2{font-size:26px;}
  .banner-slide img{height:300px;}
  .banner-caption h2{font-size:24px;margin-bottom:12px;}
  .banner-caption p{font-size:14px;margin-bottom:18px;}
  .banner-arrow{display:none;}
  .n-banner{height:200px;}
  .n-banner h2{font-size:26px;}
  .products-grid,.news-grid,.services-grid{grid-template-columns:repeat(2,1fr);}
  .partners-grid{grid-template-columns:repeat(2,1fr);}
  .about-stats{grid-template-columns:repeat(2,1fr);}
  .footer-widgets{grid-template-columns:1fr;gap:34px;}
  .culture-grid,.team-grid,.contact-info-grid{grid-template-columns:1fr;}
  .nl-item{grid-template-columns:1fr;}
  .nl-img img{height:200px;}
  .nl-body{padding:20px;}
  .pd-gallery img{height:280px;}
  .news-article{padding:26px 20px;}
  .news-article h1.article-title{font-size:21px;}
  .form-row{grid-template-columns:1fr;}
  .timeline:before{left:18px;}
  .timeline-item{width:100%;padding:0 0 30px 44px;}
  .timeline-item:nth-child(even){left:0;padding:0 0 30px 44px;}
  .timeline-item:nth-child(even) .timeline-dot{left:9px;right:auto;}
  .timeline-dot{left:9px;right:auto;}
  .ntit .container{flex-direction:column;justify-content:center;height:auto;padding:14px 15px;gap:6px;align-items:flex-start;}
}
@media (max-width:480px){
  .products-grid,.news-grid,.services-grid{grid-template-columns:1fr;}
  .partners-grid{grid-template-columns:1fr;}
  .about-stats{grid-template-columns:1fr;}
  .topbar-links{display:none;}
}
