*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
ul li{list-style: none;}
:root{
  --orange:#E8700A;
  --orange-dark:#c9a882;
  --orange-light:#2E72D2;
  --orange-pale:#EBF2FB;
  --orange-pale2:#F4F8FE;
  --orange:#E8700A;
  --text:#1A1F2E;
  --text2:#4A5568;
  --text3:#8C96A8;
  --line:#DDE3EE;
  --bg:#F7F9FC;
  --white:#FFFFFF;
  --shadow:0 4px 24px rgba(26,92,184,0.08);
  --shadow-hover:0 8px 36px rgba(26,92,184,0.15);
}
html{scroll-behavior:smooth;}
body{/* font-family:'Noto Sans SC',sans-serif; */color:var(--text);background:var(--white);overflow-x:hidden;font-size:14px;line-height:1.7;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.flex-row{display:flex; flex-direction: row;  }
/*文字超出省略*/
.yhxs{overflow:hidden; text-overflow: ellipsis;/* #ifdef APP-NVUE */ lines:1; /* #endif */ /* #ifndef APP-NVUE */width:100%; display:-webkit-box; -webkit-line-clamp:1;-webkit-box-orient:vertical; /* #endif */
}
.lhxs{overflow:hidden;text-overflow:ellipsis;/* #ifdef APP-NVUE */ lines:2; /* #endif */ /* #ifndef APP-NVUE */width:100%; text-overflow: -o-ellipsis-lastline;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;/* #endif */}
/* ─── TOP BAR ─── */
.topbar{
  background:var(--orange-dark);
  color:rgba(255,255,255,0.75);
  font-size:12px;
  padding:6px 0;
}
.topbar-inner{
  max-width:1200px;margin:0 auto;padding:0 20px;
  display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
}
.topbar a{color:rgba(255,255,255,0.75);transition:color .2s;}
.topbar a:hover{color:#fff;}
.topbar-right{display:flex;gap:20px;align-items:center;}
.topbar-phone,.topbar-menu{color:var(--orange) !important;font-weight:500;font-size:clamp(21px,2.5vw,26px);}
.topbar-phone::before{content:'☎ ';}
.topbar-menu::before{content:'☰ ';}
.topbar-menu{display: none;}
/* ─── HEADER ─── */
header{
  background:var(--white);
  /* border-bottom:2px solid var(--orange); */
  position:sticky;top:0;z-index:200;
  box-shadow:0 2px 12px rgba(0,0,0,0.26);
}
.header-inner{
  max-width:1200px;margin:0 auto;padding:0 20px;
  display:flex;align-items:center;justify-content:space-between;
  height:100px;gap:24px;
}
.logo{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.logo-icon{
  width:50px;height:50px;background:var(--orange);
  display:flex;align-items:center;justify-content:center;
  clip-path:polygon(8px 0%,calc(100% - 8px) 0%,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0% calc(100% - 8px),0% 8px);
  flex-shrink:0;
}
.logo-icon span{font-family:'';font-size:22px;color:#fff;font-weight:600;}
.logo-text .cn{font-size:22px;font-weight:800;color:var(--text);line-height:1.3;letter-spacing:.5px;}
.logo-text .en{font-size:10px;color:var(--text3);letter-spacing:1.5px;text-transform:uppercase;margin-top:2px;}
.logo-text .tag{font-size:14px;color:var(--text3);margin-top:1px;}

nav,nav ul{display:flex;align-items:center;gap:0;}
nav ul li{position: relative;z-index: 1;    transition: all .3s;list-style: none;}
nav ul li a{
  display:block;padding:0 18px;height:50px;line-height:50px;
  font-size:clamp(13px,2.5vw,15px);color:var(--text);white-space:nowrap;
  position:relative;transition:color .2s;
}
nav a:hover,nav a.active{color:var(--orange); font-weight:bolder;}
nav a::after{
  content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);
  width:0;height:2px;background:var(--orange);transition:width .3s;
}
nav a:hover::after,nav a.active::after{width:calc(100% - 36px);}
nav ul li a.has-drop{padding-right:28px;}
nav ul li a.has-drop::before{content:'▾';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--text3);}
nav ul li .downList {
    position: absolute;
    top: 90%;
    left: 50%;
    background:#f3f3f3;
    display: none;
    /* width: 140px; */
    border: 1px solid #dadada;
    /* border-top: 0; */
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

nav ul li .downList .box {
    padding: 15px 20px
}
nav ul li .downList .box::before {
    content: '';
    position: absolute;
    top: -7px; /* 三角形的位置 */
    left: 50%; /* 根据需要调整 */
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #ccc; /* 三角形颜色 */
	-webkit-transform: translate(-50%, 0);
	-moz-transform: translate(-50%, 0);
	-o-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0)
}
nav ul li .downList .box a {
    display: block;
    height: 35px;
    line-height: 35px;
    padding: 0;
    font-size: 15px;
    text-align: center;
    color: #414141
}
nav ul li .downList .box a:hover::after,nav ul li .downList .box a.active::after{width:calc(100% - 15px);}
nav ul li .downList .box a:hover {
    color: #785a39
}
nav ul li.show .downList {
    display: block
}

.header-cta{
  background:var(--orange);color:#fff;
  padding:10px 22px;font-size:13px;font-weight:500;
  white-space:nowrap;flex-shrink:0;
  transition:background .2s,transform .2s;
  clip-path:polygon(6px 0%,100% 0%,100% 100%,0% 100%,0% 6px);
}
.header-cta:hover{background:#C85F08;transform:translateY(-1px);}

/* ─── BANNER ─── */
.banner{position:relative;height:660px;overflow:hidden;/* background:linear-gradient(135deg,#0D3F8A 0%,#1A5CB8 40%,#2E72D2 100%); */ }
.banner-bg{
  position:absolute;inset:0;
/*  background:
    url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 60L60 0M-10 10L10-10M50 70L70 50' stroke='rgba(255,255,255,0.04)' stroke-width='1'/%3E%3C/svg%3E"),
    linear-gradient(135deg,#0D3F8A,#1A5CB8 50%,#2468C0); */
	background: url("../images/banner1.jpg") no-repeat center center;
	background-size: cover;
}
.banner-content{
  position:relative;z-index:1;
  max-width:1200px;margin:0 auto;padding:0 20px;
  height:100%;display:flex;align-items:center;justify-content:space-between;gap:40px;
}
.banner-left{flex:1;max-width:620px;}
.banner-tag{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.62);border:1px solid rgba(255,255,255,0.92);
  color:#666;font-size:clamp(14px,2.5vw,16px);padding:5px 14px;
  margin-bottom:20px;letter-spacing:1px;
}
.banner-tag::before{content:'';width:6px;height:6px;background:#FFB347;border-radius:50%;animation:pulse 1.5s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.4);}}
.banner b{
  font-size:clamp(26px,4vw,44px);    font-family: 'Noto Sans SC',sans-serif;
  color:#000;font-weight:600;line-height:1.4;margin-bottom:12px;    display: block;    text-shadow: 1px 1px 1px #fff;
}
.banner b em{color:#FFB347;font-style:normal;}
.banner-sub{font-size:16px;color:rgba(255,255,255,0.7);margin-bottom:10px;letter-spacing:2px;}
.banner-desc{font-size:clamp(14px,2.5vw,18px);color:#333;line-height:1.9;margin-bottom:32px;max-width:590px; margin-top: 20px;    text-shadow: 2px 2px 2px #fff;}
.banner-btns{display:flex;gap:14px;flex-wrap:wrap;}
.btn-white{
  background:#fff;color:var(--orange);font-size:14px;font-weight:500;
  padding:12px 32px;transition:all .2s;
  clip-path:polygon(6px 0%,100% 0%,100% calc(100% - 6px),calc(100% - 6px) 100%,0% 100%,0% 6px);
}
.btn-white:hover{background:#EBF2FB;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.15);}
.btn-outline-white{
  border:1px solid rgba(255,255,255,0.9);color:var(--orange-pale2); background:rgba(255,255,255,0.28);
  font-size:14px;padding:10px 32px;transition:all .2s;
}
.btn-outline-white:hover{border-color:#fff;color:var(--orange);background:rgba(255,255,255,0.58);}

.banner-stats{
  display:flex;gap:0;margin-top:36px;border-top:1px solid rgba(255,255,255,0.12);padding-top:28px;
}
.banner-stat{flex:1;text-align:center;border-right:1px solid rgba(255,255,255,0.1);}
.banner-stat:last-child{border-right:none;}
.banner-stat .n{font-size:32px;font-weight:700;color:#fff;line-height:1;}
.banner-stat .u{font-size:14px;color:#FFB347;}
.banner-stat .l{font-size:11px;color:rgba(255,255,255,0.5);margin-top:4px;letter-spacing:.5px;}

.banner-right{flex-shrink:0;display:flex;flex-direction:column;gap:12px;}
.banner-card{
  background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);
  padding:16px 20px;display:flex;align-items:center;gap:14px;
  min-width:240px;cursor:default;
  transition:background .2s,transform .2s;
}
.banner-card:hover{background:rgba(255,255,255,0.16);transform:translateX(-4px);}
.banner-card .bc-icon{
  width:40px;height:40px;background:rgba(255,255,255,0.15);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.banner-card .bc-icon svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.5;}
.banner-card .bc-title{font-size:13px;font-weight:500;color:#fff;margin-bottom:2px;}
.banner-card .bc-sub{font-size:11px;color:rgba(255,255,255,0.55);}

.thumb_bottom{overflow: hidden; width: 40%;height: auto;  position: relative; margin-left: 30%;    border: 1px solid #ddd;  padding: 10px;  border-radius: 5px;}
.waibigimglist{overflow: hidden;position: relative;  border: none; height: auto !important;}
.waibigimglist img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.assembly{   margin-top: 10px;overflow: hidden;
    position: relative;
    padding: 10px 30px;
    background:rgb(205 195 195 / 38%);}
.preview .swiper-slide {
	cursor:pointer; border: 1px solid #fff;
}
.preview .smallimglist{padding-left: 3px;}
.preview .swiper-slide.swiper-slide-thumb-active{border: 2px solid var(--orange);}
.preview .arrow-left {
	background: url('../img/feel3.png') no-repeat left top;
	position: absolute;
	left: 10px;
	top: 50%;
	margin-top: -9px;
	width: 9px;
	height: 18px;
	z-index: 10;
}
.preview .arrow-right {
	background: url('../img/feel4.png') no-repeat left bottom;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -9px;
	width: 9px;
	height: 18px;
	z-index: 10;
}
.preview img {
	padding: 1px;   margin-bottom: 0px;margin-top: 0px;
}
.preview{overflow:hidden; }
.preview .swiper-wrapper,.waibigimglist .swiper-wrapper {align-items: center;}
.preview .swiper-slide{height: auto;}
.magnifier-assembly {z-index: 9;}
.preview .active-nav img {
	padding: 0;
	border: 1px solid #F00;
}

/* ─── SECTION WRAP ─── */
.sec{padding:64px 0; }
.sec-gray{background:var(--bg);}
.sec-blue{background:var(--orange-pale2);}
.inner{max-width:1200px;margin:0 auto;padding:0 20px;    position: relative;  z-index: 3;}

/* ─── SECTION HEADER ─── */
.sec-hd{text-align:center;margin-bottom:48px;}
.sec-hd .kw{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;color:var(--orange);letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;
}
.sec-hd .kw::before,.sec-hd .kw::after{content:'';width:24px;height:1px;background:var(--orange);}
.sec-hd h2{font-family:'';font-size:clamp(18px,2.5vw,30px);color:var(--text);font-weight:600;margin-bottom:12px;}
.sec-hd h2 em{color:var(--orange);font-style:normal;}
.sec-hd p{font-size:clamp(12px,2.5vw,16px);color:var(--text3);max-width:700px;margin:0 auto;line-height:1.9;}

/* ─── QUICK NAV BAND ─── */
.qnav{background:var(--white);border-top:3px solid var(--orange);border-bottom:1px solid var(--line);}
.qnav-inner{
  max-width:1200px;margin:0 auto;padding:0 20px;
  display:grid;grid-template-columns:repeat(4,1fr);
}
.qnav-item{
  display:flex;align-items:center;gap:12px;padding:20px 16px;
  border-right:1px solid var(--line);cursor:default;
  transition:background .2s;
}
.qnav-item:last-child{border-right:none;}
.qnav-item:hover{background:var(--orange-pale);}
.qnav-item .qi-icon{
  width:44px;height:44px;background:var(--orange-pale);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  transition:background .2s,border-color .2s;
}
.qnav-item:hover .qi-icon{background:var(--orange);border-color:var(--orange);}
.qnav-item .qi-icon svg{width:22px;height:22px;stroke:var(--orange);fill:none;stroke-width:1.5;transition:stroke .2s;}
.qnav-item:hover .qi-icon svg{stroke:#fff;}
.qnav-item .qi-title{font-size:14px;font-weight:500;color:var(--text);margin-bottom:2px;}
.qnav-item .qi-sub{font-size:11px;color:var(--text3);}

/* ─── ABOUT ─── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.about-left .ab-label{
  display:inline-block;background:var(--orange);color:#fff;
  font-size:11px;padding:4px 12px;letter-spacing:2px;margin-bottom:16px;
}
.about-left h2{font-family:'';font-size:clamp(18px,2.5vw,30px);color:var(--text);font-weight:600;margin-bottom:20px;line-height:1.5;}
.about-left h2 em{color:var(--orange);font-style:normal;border-bottom:2px solid var(--orange);}
.about-left p{font-size:clamp(14px,2.5vw,16px);;color:var(--text2);line-height:2;margin-bottom:14px;}
.ab-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin:15px 0 0px 0px;border:1px solid var(--line);}
.ab-num{background:#fff;padding:16px;text-align:center;}
.ab-num .n{font-size:28px;font-weight:700;color:var(--orange);line-height:1;}
.ab-num .u{font-size:14px;color:var(--orange);}
.ab-num .l{font-size:12px;color:var(--text3);margin-top:4px;}
.ab-certs{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px;}
.ab-cert{
  padding:5px 12px;border:1px solid var(--orange);
  font-size:11px;color:var(--orange);letter-spacing:.5px;
}
.ab-more{
  display:flex;align-items:center;gap:6px;    justify-content: center;
  color:var(--orange);font-size:13px;font-weight:500;margin-top:20px;
  border-bottom:1px solid transparent;transition:border-color .2s;
}
.ab-more:hover{border-bottom-color:var(--orange);}
.ab-more::after{content:'→';}

.about-right{position:relative;}
.about-img{
  width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--orange-pale),#dce8f8);
  border:1px solid var(--line);display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.about-img-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(var(--line) 1px,transparent 1px),
    linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:40px 40px;
}
.about-img-content{position:relative;z-index:1;text-align:center;}
.about-img-content .big{font-family:'';font-size:100px;color:rgba(26,92,184,0.07);line-height:1;display:block;}
.about-img-content .sub{font-size:11px;color:var(--text3);letter-spacing:3px;text-transform:uppercase;margin-top:-8px;}
.about-tag{
  position:absolute;bottom:20px;right:20px;
  background:var(--orange);color:#fff;padding:12px 18px;
}
.about-tag .t{font-size:20px;font-weight:700;line-height:1;}
.about-tag .s{font-size:11px;opacity:.8;margin-top:2px;}
.about-corner-tl{position:absolute;top:-8px;left:-8px;width:40px;height:40px;border-top:3px solid var(--orange);border-left:3px solid var(--orange);}
.about-corner-br{position:absolute;bottom:-8px;right:-8px;width:40px;height:40px;border-bottom:3px solid var(--orange);border-right:3px solid var(--orange);}

/* ─── SERVICES ─── */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.svc-card{
  background:var(--white);border:1px solid var(--line);
  padding:0;overflow:hidden;cursor:default;
  transition:box-shadow .3s,transform .3s;
}
.svc-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px);}
.svc-top{
  background:var(--orange-pale);border-bottom:2px solid var(--orange);
  /* padding:24px 20px; */display:flex;align-items:center;gap:14px;
}
.svc-top .s-icon{
  width:48px;height:48px;background:var(--orange);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.svc-top .s-icon svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:1.5;}
.svc-body h3{font-size:clamp(15px,2.5vw,18px);font-weight:600;color:var(--text);line-height:1.4;margin-bottom:14px;}
.svc-body{padding:20px;}
.svc-body p{font-size:clamp(12px,2.5vw,14px);color:var(--text2);line-height:1.9;}
.svc-tags{display:flex;gap:6px;flex-wrap:wrap;}
.svc-tag{
  padding:3px 8px;background:var(--orange-pale);
  border:1px solid rgba(26,92,184,0.15);font-size:11px;color:var(--orange);
}
.svc-more{
  display:flex;align-items:center;justify-content:center;gap:4px;
  padding:10px;/* background:var(--bg); */border-top:1px solid var(--line);
  font-size:12px;color:var(--orange);transition:background .2s;
  margin-top:auto;
}
.svc-more:hover{background:var(--orange-pale);}
.svc-more::after{content:'→';}

/* ─── PRODUCTS ─── */
.prod-layout{display:grid;grid-template-columns:220px 1fr;gap:0;border:1px solid var(--line);}
.prod-cats{border-right:1px solid var(--line);background:var(--orange);}
.prod-cat{
  padding:16px 20px;border-bottom:1px solid rgba(255,255,255,0.1);
  cursor:pointer;display:flex;align-items:center;gap:10px;
  color:rgba(255,255,255,0.7);font-size:13px;transition:all .2s;
}
.prod-cat.active,.prod-cat:hover{background:rgba(255,255,255,0.12);color:#fff;}
.prod-cat.active{border-left:3px solid #FFB347;}
.prod-cat::before{content:'';width:6px;height:6px;background:currentColor;opacity:.6;flex-shrink:0;}
.prod-grid{
  padding:24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  background:var(--white);
}
.prod-item{
  border:1px solid var(--line);overflow:hidden;cursor:default;transition:all .2s;
}
.prod-item:hover{border-color:var(--orange);box-shadow:var(--shadow);}
.prod-img{
  aspect-ratio:4/3;background:linear-gradient(135deg,var(--orange-pale),#dce8f8);
  display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);
  font-size:40px;position:relative;overflow:hidden;
}
.prod-img::after{
  content:attr(data-label);
  position:absolute;bottom:0;left:0;right:0;
  background:rgba(26,92,184,0.7);color:#fff;
  font-size:10px;padding:4px 8px;letter-spacing:1px;text-align:center;
}
.prod-info{padding:12px;}
.prod-info h4{font-size:13px;font-weight:500;color:var(--text);margin-bottom:4px;}
.prod-info p{font-size:11px;color:var(--text3);line-height:1.7;}

/* ─── ADVANTAGES ─── */
.adv-bg{background: url(../img/bj1.jpg) no-repeat center center; background-size: cover; position: relative; color:var(--text3)}
.adv-bg::before,.banner2::before{content:'';position: absolute;width:100%; height:100%; z-index:1; background-color:rgb(0 0 0 / 38%);bottom:0;left:0;right:0;}
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);}
.adv-item{
  padding:32px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  background:var(--white);position:relative;overflow:hidden;
  transition:background .25s;cursor:default; text-align:center;    display: flex;
    align-items: center;
    flex-direction: column;
}
.adv-bg .sec-hd h2{color:#FFF}
.adv-bg .sec-hd p{color:#ccc}
.adv-item:hover{background:var(--orange-pale2);}
.adv-item:nth-child(3n){border-right:none;}
.adv-item:nth-child(n+4){border-bottom:none;}
.adv-item::before{
  content:'';position:absolute;top:0;left:0;width:4px;height:0;
  background:var(--orange);transition:height .3s;
}
.adv-item:hover::before{height:100%;}
.adv-num{
  font-size:36px;font-weight:700;color:rgb(255 152 0 / 37%);
  line-height:1;margin-bottom:16px;font-family:'';
}
.adv-icon-wrap{
  width:48px;height:48px;background:var(--orange-pale);
  display:flex;align-items:center;justify-content:center;margin-bottom:14px; display:none
}
.adv-icon-wrap svg{width:24px;height:24px;stroke:var(--orange);fill:none;stroke-width:1.5;}
.adv-item h3{font-size:clamp(16px,2.5vw,20px);font-weight:600;color:var(--text);margin-bottom:10px;}
.adv-item p{font-size:clamp(12px,2.5vw,15px);color:var(--text2);line-height:1.9;}

/* ─── PROCESS ─── */
.proc-steps{display:grid;grid-template-columns:repeat(5,1fr);position:relative;}
.proc-steps::before{
  content:'';position:absolute;
  top:38px;left:calc(10% + 0px);right:calc(10% + 0px);
  height:1px;background:repeating-linear-gradient(90deg,var(--orange) 0,var(--orange) 8px,transparent 8px,transparent 16px);
}
.proc-step{text-align:center;padding:0 12px;position:relative;z-index:1;}
.proc-dot{
  width:76px;height:76px;margin:0 auto 20px;
  background:var(--white);border:2px solid var(--orange);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  transition:all .3s;cursor:default;
}
.proc-step:hover .proc-dot{background:var(--orange);}
.proc-dot .dn{font-size:11px;color:var(--text3);transition:color .3s;}
.proc-dot svg{width:26px;height:26px;stroke:var(--orange);fill:none;stroke-width:1.5;transition:stroke .3s;}
.proc-step:hover .proc-dot .dn{color:rgba(255,255,255,0.6);}
.proc-step:hover .proc-dot svg{stroke:#fff;}
.proc-step h4{font-size:clamp(16px,2.5vw,18px);font-weight:500;color:var(--text);margin-bottom:6px;}
.proc-step p{font-size:clamp(12px,2.5vw,14px);color:var(--text3);line-height:1.8;}

/* ─── PROJECTS ─── */
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.proj-card{
  background:var(--white);border:1px solid var(--line);overflow:hidden;
  cursor:default;transition:box-shadow .3s,transform .3s;
}
.proj-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px);}
.proj-img{
  height:230px;
  /* background:linear-gradient(135deg,#1A5CB8,#2E72D2); */
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.proj-img .pi-text{font-family:'';font-size:48px;color:rgba(255,255,255,0.08);}
.proj-img .pi-badge{
  position:absolute;top:12px;left:12px;
  background:var(--orange);color:#fff;font-size:10px;padding:3px 10px;letter-spacing:1px;
}
.proj-img .pi-num{
  position:absolute;bottom:12px;right:12px;
  font-size:48px;font-weight:700;color:rgba(255,255,255,0.06);line-height:1;
}
.proj-body{padding:20px;}
.proj-body h4,.proj-body h2{font-size:clamp(14px,2.5vw,18px);font-weight:bolder;color:var(--text);margin-bottom:8px;line-height:1.5;}
.proj-body p{font-size:clamp(11px,2.5vw,13px);color:var(--text3);line-height:1.9;font-weight:normal;}
.proj-href{display:flex;justify-content: flex-end;}
.proj-more{
  align-items:center;gap:4px;
  font-size:12px;color:var(--orange);margin-top:12px;
  border-bottom:1px solid transparent;transition:border-color .2s; width:fit-content;
}
.proj-more:hover{border-bottom-color:var(--orange);}

/* ─── CTA BAND ─── */
.cta-band{
  background:linear-gradient(135deg,var(--orange-dark),var(--orange));
  padding:56px 24px;text-align:center;position:relative;overflow:hidden;
}
.cta-band::before{
  content:'';position:absolute;inset:0;opacity:.03;
  background:repeating-linear-gradient(45deg,#fff,#fff 1px,transparent 1px,transparent 12px);
}
.cta-band h2{font-family:'';font-size:clamp(20px,2.5vw,28px);color:#fff;margin-bottom:10px;position:relative;}
.cta-band p{font-size:14px;color:rgba(255,255,255,.7);margin-bottom:28px;position:relative;}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative;}
.btn-orange{
  background:var(--orange);color:#fff;font-size:14px;font-weight:500;
  padding:12px 36px;transition:all .2s;
}
.btn-orange:hover{background:#C85F08;transform:translateY(-2px);}
.cta-contacts{
  display:flex;gap:48px;justify-content:center;flex-wrap:wrap;
  margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);
  position:relative;
}
.cta-contact{display:flex;align-items:center;gap:10px;}
.cta-contact .cc-icon{
  width:36px;height:36px;border:1px solid rgba(255,255,255,.25);
  display:flex;align-items:center;justify-content:center;
}
.cta-contact .cc-icon svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:1.5;}
.cta-contact .cc-l{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:1px; text-align:left}
.cta-contact .cc-v{font-size:14px;color:#fff;font-weight:500;}

/* ─── FOOTER ─── */
footer{background:#0D1B33;padding:48px 0 0;}
.footer-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:360px 1fr 1fr 1fr 1fr 1fr;gap:48px;}
.footer-brand .fb-en{font-size:11px;letter-spacing:2px;color:rgba(255,255,255,.3);text-transform:uppercase;margin-bottom:8px;}
.footer-brand .fb-cn{font-size:clamp(16px,2.5vw,18px);font-weight:bolder;color:#fff;margin-bottom:6px;}
.footer-brand .fb-tag{font-size:clamp(12px,2.5vw,14px);color:rgba(255,255,255,.4);line-height:1.7;margin-bottom:20px;}
.footer-brand .fb-phone{font-size:20px;font-weight:700;color:#FFB347;letter-spacing:1px;}
.footer-brand .fb-addr{font-size:14px;color:rgba(255,255,255,.3);margin-top:6px;line-height:1.8;}
.footer-col h4{font-size:clamp(12px,2.5vw,14px);font-weight:normal;color:#fff;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08);}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:8px;}
.footer-col ul li a{font-size:12px;color:rgba(255,255,255,.4);transition:color .2s;}
.footer-col ul li a:hover{color:rgba(255,255,255,.8);}
.footer-col ul li a::before{content:'›';margin-right:6px;color:var(--orange);}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.06);margin-top:36px;
  padding:16px 24px;max-width:1200px;margin:36px auto 0;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
}
.footer-bottom p{font-size:11px;color:rgba(255,255,255,.25);}
.footer-bottom .icp a{color:rgba(255,255,255,.25);transition:color .2s;}
.footer-bottom .icp a:hover{color:rgba(255,255,255,.5);}

/* ─── SIDE FLOAT ─── */
.side-float{
  position:fixed;right:0;top:60%;transform:translateY(-50%);z-index:100;
  display:flex;flex-direction:column;gap:0;
}
.sf-item{
  width:48px;background:var(--orange);padding:10px 0;
  display:flex;flex-direction:column;align-items:center;gap:3px;
  cursor:pointer;border-bottom:1px solid rgba(255,255,255,.15);
  transition:background .2s,width .2s;color:#fff;font-size:9px;letter-spacing:.5px;
  position:relative;overflow:hidden;
}
.sf-item:hover{background:var(--orange-dark);width:48px;}
.sf-item svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:1.5;}

.banner2{height: 460px;}
.banner2 b em,.banner2 h1 em {
    text-shadow: 2px 2px 3px #333;
    letter-spacing: 6px;
    font-size:clamp(22px,5.5vw,50px);;
	    color: #FFB347;
	    font-style: normal;
}
.bread {margin-top: 45px;
    margin-bottom: 45px;
    font-size: 16px; color:var(--text3);
}
.inner h1{font-size: 40px;text-align: center;  color: #333;      line-height: 1.3; font-weight: bold;   margin-bottom: 50px;}
.info{font-size: clamp(12px,2.5vw,14px);margin-bottom: 30px;color:var(--text3); text-align: center;margin-top: -30px;}
.body{font-size: 16px;line-height: 29px; margin-bottom: 0px;}
.body h2{color: #000;}
.body img{display: table;margin: auto;}
.body h3,.body img{    margin-bottom: 10px;  margin-top: 10px;}
.body p,.body h3{text-align: justify; line-height: 26px;}
.body a,.nextprev a{text-decoration: underline; font-weight:bolder;color:#cb6203 }
 /* ── 章节标题 ── */
.body h2 {
    font-size: 22px;
    font-weight: 700;
    margin-top: 30px;
    border-bottom: 2px solid #c5810d;
    border-bottom:1px solid #eee;
    display: flex; 
    padding-bottom: 10px;
    align-items: center; margin-bottom: 15px;
    gap: 8px;
  }

.body  h3 {
    font-size: 16px;
    font-weight: 600;
    color: #875441;
    margin: 25px 0 12px;
  }

  /* ── 引用块 ── */
.body  blockquote {
    background: #fdf6e3;
    border-left: 4px solid  #b8860b;
    padding: 16px 20px;
    margin: 24px 0;
    border-radius: 0 6px 6px 0;
    font-size: 14.5px;
    color: #5a4a00;
    line-height: 1.7;
  }
.body  blockquote p { text-indent: 0; margin-bottom: 0; color: #5a4a00; }
.body ul,.body li{   list-style: inherit;}
.body ul,.body ol{ margin-left: 18px;    padding-left: 0px;  margin-top: 10px;}
.body table,.body video,.body pre{max-width:100%;margin-top: 10px;margin-bottom: 10px;}
.body table th,.body thead td{
    background: #1c4f8a;
    color: #fff !important;
    padding: 10px 14px;
    text-align: left;
    font-family: var(--sans);
    font-weight: 500; 
  }
.body table tr:nth-child(even) { background: #f6f8fc; }
.body table td{
    padding: 9px 14px;
    border-bottom: 1px solid #e8eaf0;
    color: var(--ink-light);
    vertical-align: top;
  }
.body table td:first-child { font-weight: 600; color: var(--ink); }
.body pre{background:#eee;padding:10px;margin-top:10px;  text-wrap: wrap; overflow-wrap: break-word;  word-break: keep-all;  line-height: 20px;}
.blank40{height: 40px;width: 100%;}
.introduction {
    margin-bottom: 60px;display: block;
}
.cate{margin-bottom: 50px;}
.cate a {
    display: block;
    width: auto;
    padding: 0px 30px;
    margin: 0px 10px;
    height: 48px;
    line-height: 48px;
    border: 1px solid #cacaca;
    text-align: center;
    font-size: 16px
}

.cate a:hover {
    background: #f1f1f1;
    border-color: #aaa
}

.cate a.cu {
    color: #fff;
    background: var(--orange);;
    border-color: var(--orange);;
}
.list {
    margin-bottom: 40px
}

.list ul li {
    border: 1px solid #eee;
    margin-bottom: 30px
}

.list ul li a {
    padding: 30px;
    display: block;
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    justify-content: space-between
}

.list ul li a .pic {
    width: 25%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.list ul li a .pic .picBox {
    position: relative;
    z-index: 1
}
.list ul li a .pic .picBox:after {
    display: none;
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.35);
    content: '';
    left: 0;
    top: 0
}

.list ul li a .pic .picBox img {
    width: 100%;
    display: block;
    max-height: 200px;
    object-fit: contain;
}

.list ul li a .txt {
    width: 72%;
    text-align: left
}

.list ul li a .txt .cat {
    font-size: 16px;
    color: #999;
    position: relative;
    z-index: 1
}

.list ul li a .txt .cat b {
    font-weight: normal;
    position: absolute;
    z-index: 1;
    font-size: 14px;
    color: #999;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

.list ul li a .txt .cat b i.icon {
    margin-left: 10px;
    font-size: 14px
}

.list ul li a .txt dl {
    margin-bottom: 15px
}

.list ul li a .txt dl dt {
    font-size: 32px;
    color: #3b3b3b;
    font-weight: bold;
    margin-bottom: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -ms-line-clamp: 1;
    -webkit-box-orient: vertical
}

.list ul li a .txt dl dd {
    font-size: 16px;
    color: #727272;
    line-height: 30px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    /* -webkit-line-clamp: 3;
    -ms-line-clamp: 3;
    -webkit-box-orient: vertical */
}

.list ul li a .txt:hover dl dt {
    color: #333
}

.list ul li a:hover .pic .picBox .readNum {
    display: block
}

.list ul li a:hover .pic .picBox:after {
    display: block
}

.list ul li:last-child {
    margin-bottom: 0
}

.list ul li:hover {
    border-color: #aaa
}
.next p{margin-bottom: 10px;color:var(--text3) ;}
.next a{color:var(--text2); text-decoration:underline;}
.paging{    display: flex;align-items: center;  margin:40px auto;}
.paging ul.pagination{ display: flex;   margin:0px auto;}
.paging li{text-align: center; display: inline-block; margin: 0px 4px;  min-width: 40px; border-radius:0.2em; list-style: none; box-sizing: border-box; }
.paging a,.paging span{ font-size: 16px; color: #666;padding: 0px 15px; display: block;  border: 1px solid #D9D9D9; line-height: 42px;height:42px;     border-radius: 5px;}
.paging li.active span,.paging a:hover{ color: #FFF; background: var(--orange); border: 1px solid var(--orange);box-sizing: border-box;     border-radius: 5px;}
.paging a.disabled{ cursor:default; border: 1px solid #D9D9D9!important;}

/* ─── RESPONSIVE ─── */
@media(max-width:1024px){
  nav{display:none;position: fixed;
    top: 60px;
    flex-direction: column;
    right: 0px;
    background: #fff;
    box-shadow: -2px 1px 3px #999;}
	nav a{height: 40px; line-height: 40px;}
  .topbar-menu{display: block;margin-left: 5px;}
  .topbar-phone{font-size: 0px;}
  .topbar-phone::before{font-size: 21px;}
  .sec{padding: 36px 0px;}
  .sec-hd{margin-bottom: 28px;}
  footer{padding: 26px 0px;}
  .cta-band{   padding: 36px 20px;}
  .svc-grid,.adv-grid{grid-template-columns:1fr 1fr;}
  .prod-layout{grid-template-columns:1fr;}
  .prod-cats{display:grid;grid-template-columns:repeat(4,1fr);border-right:none;border-bottom:1px solid var(--line);}
  .prod-cat{border-right:1px solid rgba(255,255,255,.1);border-bottom:none;}
  .prod-grid{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .proc-steps{grid-template-columns:1fr 1fr;gap:20px;}
  .proc-steps::before{display:none;}
  .banner-right{display:none;}
  .adv-item:nth-child(3n){border-right:1px solid var(--line);}
  .adv-item:nth-child(n+4){border-bottom:1px solid var(--line);}
}
@media(max-width:768px){
  .header-inner{gap:12px;    height: 60px; }
  .logo-text .cn{font-size:16px;}
  .logo-text .en,.logo-text .tag{display:none;}
  .banner{height:auto;padding:60px 0;}
  .banner-stats{flex-wrap:wrap;}
  .banner-stat{min-width:33%;}
  .about-grid{grid-template-columns:1fr;    gap: 30px;}
  .svc-grid{grid-template-columns:1fr 1fr;  gap: 13px;}
  .svc-body{padding: 15px}
  .proj-grid{grid-template-columns:1fr 1fr;}
  .qnav-inner{grid-template-columns:1fr 1fr;}
	footer {padding-bottom: 0px;}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .footer-brand{grid-column: 1 / -1; /* 从第1列开始，跨越到最后一列 → 占满整行 */ }
  .logo{gap: 8px;}
  .logo-icon {width: 40px; height: 40px;}
  .proj-img{height: auto;}
  .proj-body { padding: 10px; text-align: justify;}
  .proj-body h4,.proj-body h2{-webkit-line-clamp: 2; -ms-line-clamp: 2;-webkit-box-orient: vertical; text-overflow: ellipsis;overflow: hidden; display: -webkit-box;    line-height: 1.3;}
  .proj-body p{-webkit-line-clamp: 2; -ms-line-clamp: 2;-webkit-box-orient: vertical; text-overflow: ellipsis;overflow: hidden; display: -webkit-box;    line-height: 1.6;}
  .qnav{border-bottom: none;}
  .qnav-item{border-right: none;padding: 20px 8px;}
  .adv-item p{line-height: 1.6;}
  .cta-contacts{  justify-content: flex-start; gap: 20px;}
  nav{padding-bottom: 20px;}
	nav, nav ul{flex-direction: column;}
   nav ul li { width: 120px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
  }
  nav ul li .downList{transform: translate(0%, 0); position: relative;top: -5px;
    left: 0%;}
  nav ul li .downList .box{padding: 10px; }
  nav ul li .downList .box a{    height: 30px;
    line-height: 30px;
    padding: 0;
    font-size: 12px;}
  .bread {
      margin-bottom: 15px;
      margin-top: 15px;
      font-size: 12px;
  }
  .cate{margin-bottom:30px;margin-top: 20px;}
  .cate a{padding: 0px 10px;
    height: 36px; font-size: 12px;
    line-height: 34px;}
	.inner h1{font-size: 20px;margin-top:20px;margin-bottom:20px}
	.body h2 { font-size: 16.3px;margin-bottom: 10px; margin-top: 15px;}
	.body{    font-size: 14px;}
	.thumb_bottom{width: 100%; margin: 0px; margin-bottom: 10px;}
	.introduction {
	    margin-bottom:30px;display: block;
	}
	.info{margin-top: 10px;margin-bottom: 15px}
	.body img{height: auto !important;}
	.list ul li a{padding:15px;    flex-direction: column;}
	.list ul li a .pic{width: 100%;}
	.list ul li a .txt{width: 100%;}
	.list ul li a .txt dl{margin-bottom: 5px; margin-top: 10px; }
	.list ul li a .txt dl dt{    -webkit-line-clamp: 2;font-size: 15px; -ms-line-clamp: 2;margin-bottom: 10px; line-height: 18px;}
	.list ul li a .txt dl dd{ font-size: 12px; line-height: 18px;}
	.list ul li a .txt .cat,.list ul li a .txt .cat b{font-size: 12px;}
	.paging{margin: 20px auto;}
	.list{margin-bottom: 0px;}
	.list ul li{margin-bottom: 15px;}
}
@media(max-width:480px){
  .proj-grid,.adv-grid,.proc-steps{grid-template-columns:1fr 1fr;}
  .adv-item{padding: 16px 15px}
  .qnav-inner{grid-template-columns:1fr 1fr;}
  .adv-item:nth-child(n+4){border-bottom:1px solid var(--line);}
  .body{line-height: 21px;}
  .body p, .body h3 {line-height: 21px;}
}

/* ─── SCROLL ANIM ─── */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
