@charset "utf-8";
/* CSS Document */

*{margin: 0px;padding: 0px;}

body{font-family:'harmonyos-regular',Arial, Verdana, Geneva, sans-serif;color: #333;background-color: #fff; line-height: 150%; font-size: 1rem;} 
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, th, td, hr{margin: 0px;padding: 0px;}
html, body{ height: 100%; width: 100%;}
a{color: #333;text-decoration: none;}
a:hover{text-decoration: none;}
img{border: 0;}
ul{display: block;}
ul, ul li{list-style: none;}
input, select, textarea{vertical-align: middle;font: 1rem "harmonyos-regular", Verdana, Geneva, sans-serif;border: 1px solid #dedede;}
.left{float: left;}
.right{float: right;}
.mt{margin-top: 0.625rem;}
.mr{margin-right: 0.625rem;}
.mb{margin-bottom: 0.625rem;}
.ml{margin-left: 0.625rem;}
.mt3{margin-top:1.875rem;}
.mb3{margin-bottom:1.875rem;}
.mt4{margin-top:2.5rem;}
.mb4{margin-bottom:2.5rem;}
.pt{padding-top: 0.625rem;}
.pt2{padding-top:1.25rem;}
.pt3{padding-top:1.875rem;}
.pt4{padding-top:2.5rem;}
.pt5{padding-top:3.125rem;}
.pt6{padding-top:3.75rem;}
.pt7{padding-top:4.375rem;}
.pt8{padding-top:5rem;}
.pt9{padding-top:5.625rem;}
.pt10{padding-top:6.25rem;}
.pr{padding-right: 0.625rem;}
.pb{padding-bottom: 0.625rem;}
.pb2{padding-bottom: 1.25rem;}
.pb3{padding-bottom: 1.875rem;}
.pb4{padding-bottom: 2.5rem;}
.pb5{padding-bottom: 3.125rem;}
.pb6{padding-bottom: 3.75rem;}
.pb7{padding-bottom: 4.375rem;}
.pb8{padding-bottom: 5rem;}
.pb9{padding-bottom: 5.625rem;}
.pb10{padding-bottom: 6.25rem;}
.pb16{padding-bottom: 10rem;}
.pl{padding-left: 0.625rem;}
.wp{margin: 0px auto;width: 1200px;}
.cls{font-size: 0px;height: 0px;line-height: 0px;clear: both;}
.hs{ background: #f6f6f6;}
.wp1380{ width:1380px; margin:0px auto}
.hs{ background: #f5f5f5;}
.h1, h1{ font-size: 16px; font-weight: 600;}
.container-s{ padding: 0px 40px;} 

img.img-fluid{transition: all 0.36s ease;}
.gap-t4{gap: 2.5rem 0rem;}

.zsy-img{ width: 100%; overflow: hidden;  height: auto;position: relative; text-align: center;}
.zsy-img img{ max-width:100%;      display: block;}
.zsy-img img.abc {position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; display: block; text-align: center; margin: auto;  transition:all 0.36s ease; object-fit:cover;}
.zsy-img a:hover img.abc{ transform: scale(1.08);} 



.zsy-img:after{content:"";position:absolute;width:200%;height:0;left:50%;top:50%;background-color:rgba(255,255,255,.3);transform:translate(-50%,-50%) rotate(-45deg);z-index:1}
.zsy-img:hover:after{height:250%;transition:all 600ms linear;background-color:transparent}



.hover-img:hover img{transform: scale(1.08);}

.zoom{ transition:all 0.36s ease;}

.zoom-box{ overflow:hidden;}
.zoom-box img{ max-width:100%;}
.zoom-box:hover .zoom{ transform:scale(1.08); border-radius:0px;}

.box-pl10{ padding-left:100px;}
.box-pr10{ padding-right:100px;}


.f18{font-size: 1.125rem;  color: #333;}
.f24{font-size: 1.5rem;  color: #333; font-weight: bold; line-height: 150%;}
.f30{font-size: 1.875rem;  color: #333; font-weight: bold; line-height: 150%;}
.f48{font-size: 3rem; line-height: 120%; font-weight: bold; color: #333;}

.container { padding-right: 1.25rem; padding-left: 1.25rem;}
.row {     --bs-gutter-x: 2.5rem;}  
/* .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9{padding-right: 1.25rem; padding-left: 1.25rem;} */
.g-0, .gx-0 {--bs-gutter-x: 0;}
img{display:inline-block; max-width: 100%;}

.x1{ width:100%;  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.x2{ width:100%;   overflow: hidden;  text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical;  display: -moz-box; -moz-line-clamp: 2;  -moz-box-orient: vertical; word-break:auto-phrase;  white-space: normal;    }
.x3{ width:100%;   overflow: hidden;  text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3;  -webkit-box-orient: vertical;  display: -moz-box; -moz-line-clamp: 3;  -moz-box-orient: vertical; word-wrap:auto-phrase;  white-space: normal;    }


.ty-flex{display: flex; flex-wrap: wrap;}
.ty-flex-zy-lb{justify-content: space-between;}
.ty-flex-zy-jz{justify-content: center;}
.ty-flex-sx-jz{ align-items: center;} 
.ty-flex-wrap{flex-wrap: wrap;}

.mt5{margin-top: 50px;}


.cb-cursor:before{background:var(--theme-color)}



h1,
h2,
h3,
h4,
h5,
h6 {
    position: relative;
    
    color: var(--title-color);
    font-weight: 600;
    margin: 0;
    transition: all 500ms ease;
    line-height: 150%;

}

.centred {
    text-align: center;
}



@font-face {
  font-family: "iconfont"; /* Project id 5128250 */
  src: url('../font/iconfont.woff2?t=1771917752232') format('woff2'),
       url('../font/iconfont.woff?t=1771917752232') format('woff'),
       url('../font/iconfont.ttf?t=1771917752232') format('truetype');
}



.iconfont {
  font-family: "iconfont" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}



:root{--theme-color:#004099; --theme-color2:#fd5523;  --theme-color3:#0a0f1a; 
  --secondary-color:#e5f1ff;   --title-color: #1a1a1a;
 --title-font-size:3.2rem;--primary-color:#1a1a1a;
  --accent-color:#f27830;--accent-color-two:#506CD7;--white-color:#FFF;--divider-color:#55617124;
  --dark-divider-color:#FFF24;--error-color:#e65757;}

.ty-color{color:var(--theme-color)}
.bs-color{color:#fff;}


/*图片效果*/
 figure{margin: 0rem;}
.image-anime{position:relative;overflow:hidden; width:100%;}
.image-anime:after{content:"";position:absolute;width:200%;height:0;left:50%;top:50%;background-color:rgba(255,255,255,.3);transform:translate(-50%,-50%) rotate(-45deg);z-index:1}
.image-anime:hover:after{height:250%;transition:all 600ms linear;background-color:transparent}




@font-face {
  font-family: "harmonyos-regular";
  src: url("../font/harmonyos-regular.woff2") format("woff2"),
       url("../font/harmonyos-regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}


.zt{ font-family: 'harmonyos-regular';  font-size: 30px; color:#b2b2b2;   -webkit-font-smoothing: antialiased;  -moz-osx-font-smoothing: grayscale;}

*{margin:0;padding:0;box-sizing:border-box}
:root{
  --green-900:#0a2e0c;--green-800:#14521a;--green-700:#1b6b22;
  --green-600:#237a2b;--green-500:#2e8b38;--green-400:#3da647;
  --green-300:#6dc474;--green-200:#a8dba9;--green-100:#d6eed7;--green-50:#edf7ee;
  --gold:#b8860b;--gold-light:#f5d78e;
  --gray-900:#1a1a1a;--gray-700:#444;--gray-500:#777;--gray-300:#ccc;--gray-100:#f5f5f5;--gray-50:#fafafa;
  --white:#fff;--nav-h:64px;
}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',Arial,sans-serif;color:var(--gray-900);background:var(--white);line-height:1.6}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);background:var(--green-800);z-index:1000;display:flex;align-items:center;padding:0 2rem;gap:2rem;box-shadow:0 2px 8px rgba(0,0,0,.25)}
nav a:hover{color:#fff;}
.nav-logo{font-size:1.4rem;font-weight:700;color:var(--white);letter-spacing:.05em;text-decoration:none;white-space:nowrap;cursor:pointer}
.nav-logo img{height:45px;}
.nav-logo span{color:var(--gold-light);font-size:.75rem;font-weight:400;display:block;letter-spacing:.08em;margin-top:-4px}
.nav-links{display:flex;gap:0;flex:1;list-style:none}
.nav-links li{position:relative}
.nav-links a{display:block;padding:.5rem 1rem;color:rgba(255,255,255,.85);text-decoration:none;font-size:.875rem;font-weight:500;transition:color .2s;cursor:pointer;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--white)}
.nav-links a.active{border-bottom:2px solid var(--gold-light)}
.nav-links li:hover .dropdown{display:block}
.dropdown{display:none;position:absolute;top:100%;left:0;background:var(--green-700);min-width:200px;border-top:2px solid var(--gold);box-shadow:0 4px 12px rgba(0,0,0,.3)}
.dropdown a{display:block;padding:.65rem 1.2rem;color:rgba(255,255,255,.9);font-size:.82rem;border-bottom:1px solid rgba(255,255,255,.08)}
.dropdown a:hover{background:var(--green-600);color:var(--white)}
.nav-contact{margin-left:auto;background:var(--gold);color:#fff;border:none;padding:.4rem 1.1rem;border-radius:3px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}
.nav-contact:hover{background:#9a7009}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:.25rem}
.hamburger span{display:block;width:22px;height:2px;background:var(--white);margin:5px 0;transition:.3s}


/* ── PAGES ── */
.page{padding-top:var(--nav-h)}
.page.active{display:block}




/* ── HERO ── */
.hero-bj{position:relative; z-index:11;}
.hero{background:linear-gradient(135deg,var(--green-900) 0%,var(--green-700) 60%,var(--green-500) 100%);color:var(--white);padding:6rem 2rem 5rem;text-align:center;min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hero::after{content:'';position:absolute;inset:0; background:rgba(0,0,0,0.5);}
.hero-tag{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,1);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .9rem;border-radius:2px;margin-bottom:1.5rem;display:inline-block}
.hero h1{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:700;margin-bottom:1rem;letter-spacing:-.02em; color:#fff;}
.hero h1 span{color:var(--gold-light)}
.hero p{font-size:clamp(1rem,2vw,1.25rem);color:rgba(255,255,255,1);max-width:680px;margin-bottom:2.5rem}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.btn-primary{background:var(--gold);color:var(--white);padding:.75rem 2rem;border-radius:3px;text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;border:none;transition:background .2s;display: inline-block;}
.btn-primary:hover{background:#9a7009}
.btn-outline{background:transparent;color:var(--white);padding:.75rem 2rem;border-radius:3px;border:1.5px solid rgba(255,255,255,.6);text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:border-color .2s,background .2s}
.btn-outline:hover{border-color:var(--green-600);background:var(--green-600); color:#fff;}

/* ── STAT BAR ── */
.stat-bar{background:var(--green-800);padding:2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--green-600)}
.stat-item{background:var(--green-800);text-align:center;padding:1.5rem 1rem}
.stat-num{font-size:2.2rem;font-weight:700;color:var(--gold-light)}
.stat-label{font-size:.8rem;color:rgba(255,255,255,.7);margin-top:.2rem}

/* ── SECTIONS ── */
section{padding:5rem 2rem}
.section-inner{max-width:1100px;margin:0 auto; position:relative; z-index:1;}
.pg-banner{position:relative; min-height: 340px; display: flex; align-items: center;}
.pg-banner::after{content:'';position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5);}
.section-tag{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-600);font-weight:600;margin-bottom:.5rem}
.section-title{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;color:var(--green-800);margin-bottom:1rem}
.section-subtitle{font-size:1.05rem;color:var(--gray-500);max-width:680px;margin-bottom:3rem}
.divider{width:48px;height:3px;background:var(--green-500);margin:.75rem 0 2rem}
.ix-projects{position:relative; opacity:1;}
.ix-projects::after{content:''; width:100%; height:100%; background:rgba(0,0,0,0.2); position:absolute; left:0; top:0;}
.ix-projects .section-tag{color:#fff;}
.ix-projects .section-title{color:#fff;}

.pg-pro-tit-img { display: grid !important; /* 强制生效 */ grid-template-columns: repeat(2, 1fr) !important; gap: 2rem;  margin-bottom: 2rem; align-items: center; /* 让两个子元素在垂直方向居中 */ width: 100%;}


.pg-text p{padding:0.5rem 0px;}
.pg-text figure{padding:0.5rem 0px;}
.pg-text img{height:auto;}

.section-inner .step ul li{border-left:4px solid #64ae6a !important;}


/* 确保子元素不会超出容器 */
.pg-pro-tit, .pg-pro-img {position:relative; min-width: 0; /* 防止内容溢出撑开网格 */}

.pg-pro-img{overflow:hidden; position:relative;}

.swiper-pagination{width:100%; text-align:center; overflow:hidden;}
.swiper-pagination .swiper-pagination-bullet{width: 10px; height: 10px; border-radius: 5px; background: rgba(0, 0, 0, 0.2);margin: 0px 5px; transition: all 0.36s ease;opacity: 1;}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{width:1.875rem;background: var(--green-800);}

/* ── CARDS ── */
.card-grid{/*display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem*/ overflow: hidden;}
.card{padding:1.75rem;transition:box-shadow .2s,border-color .2s;    }
/* .card:hover{box-shadow:0 4px 20px rgba(0,0,0,.1);border-color:var(--green-300)} */
.card-icon{width:44px;height:44px;background:var(--green-100);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}

.card-icon img{width:22px;height:22px;}
.card h3{font-size:1.05rem;font-weight:600;color:var(--green-800);margin-bottom:.6rem}
.card p{font-size:.9rem;color:var(--gray-500);line-height:1.65}


.card-grid .swiper-button-next,.card-grid .swiper-button-prev{width:3.125rem;height:3.125rem;background:rgba(0,0,0,0.5);border-radius:6px;text-align:center;line-height:50px;transition:all 0.36s ease;}
.card-grid .swiper-button-next i,.card-grid .swiper-button-prev i{font-size:0.9rem;color:#fff;}
.card-grid .swiper-button-next{right:0rem;}
.card-grid .swiper-button-prev{left:0rem;}
.card-grid .swiper-button-prev:after,.card-grid .swiper-button-next:after{display:none;}

.card-grid .swiper-button-next:hover,.card-grid .swiper-button-prev:hover{background:var(--green-800);}
.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:1.25rem;}


.card-grid .swiper-wrapper{ align-items: stretch;}
.card-grid .swiper-backface-hidden .swiper-slide{ border:1px solid var(--gray-300);   height: auto !important;     background: #f1fff2f7;}


.pro-card-grid{position:relative; overflow: hidden;}
.pro-card-grid .swiper-backface-hidden .swiper-slide{    background: var(--green-800);    border-radius: 4px;  height: auto !important;}
.pro-card-grid .swiper-button-next:hover,.pro-card-grid .swiper-button-prev:hover{background:var(--green-800);}
.pro-card-grid .swiper-wrapper{ align-items: stretch;}

.pro-card-grid .swiper-button-next,.pro-card-grid .swiper-button-prev{width:3.125rem;height:3.125rem;background:rgba(0,0,0,0.5);border-radius:6px;text-align:center;line-height:50px;transition:all 0.36s ease;}
.pro-card-grid .swiper-button-next i,.pro-card-grid .swiper-button-prev i{font-size:0.9rem;color:#fff;}
.pro-card-grid .swiper-button-next{right:0rem;}
.pro-card-grid .swiper-button-prev{left:0rem;}
.pro-card-grid .swiper-button-prev:after,.pro-card-grid .swiper-button-next:after{display:none;}


.project-grid{position:relative; overflow: hidden;}
.project-grid .swiper-backface-hidden .swiper-slide{    background: #fff;    border-radius: 4px;  height: auto !important;}
.project-grid .swiper-button-next:hover,.project-grid .swiper-button-prev:hover{background:var(--green-800);}
.project-grid .swiper-wrapper{ align-items: stretch;}

.project-grid .swiper-button-next,.project-grid .swiper-button-prev{width:3.125rem;height:3.125rem;background:rgba(0,0,0,0.5);border-radius:6px;text-align:center;line-height:50px;transition:all 0.36s ease;}
.project-grid .swiper-button-next i,.project-grid .swiper-button-prev i{font-size:0.9rem;color:#fff;}
.project-grid .swiper-button-next{right:0rem;}
.project-grid .swiper-button-prev{left:0rem;}
.project-grid .swiper-button-prev:after,.project-grid .swiper-button-next:after{display:none;}

/* ── TABLE ── */
.table-wrap{overflow-x:auto;border-radius:4px;border:1px solid var(--gray-300)}
table{width:100%;border-collapse:collapse;font-size:.9rem}
thead tr{background:var(--green-700)}
thead th{color:var(--white);padding:.85rem 1.1rem;text-align:left;font-weight:600;font-size:.85rem;letter-spacing:.03em;    width: auto;}
tbody tr:nth-child(even){background:var(--green-50)}
tbody tr:hover{background:var(--green-100)}
tbody td{padding:.8rem 1.1rem;border-bottom:1px solid var(--gray-100);color:var(--gray-700);vertical-align:top;    width: auto;}
tbody td:first-child{font-weight:600;color:var(--green-700)}

.pg-pro-aabbcc{list-style: none; display: flex;flex-direction: column; gap: .6rem;}
.pg-pro-aabbcc p{background: var(--green-50); border-left: 3px solid var(--green-500); padding: .65rem 1rem; font-size: .88rem; color: var(--gray-700); font-weight:bold;}
.pg-pro-aabbcc div{background: var(--green-50); border-left: 3px solid var(--green-500); padding: .65rem 1rem; font-size: .88rem; color: var(--gray-700); font-weight:bold;}
/* ── ACCORDION ── */
.accordion{border:1px solid var(--gray-300);border-radius:4px;overflow:hidden;margin-bottom:1rem}
.accordion-btn{width:100%;background:var(--green-50);border:none;padding:1rem 1.25rem;text-align:left;font-size:.95rem;font-weight:600;color:var(--green-800);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}
.accordion-btn:hover{background:var(--green-100)}
.accordion-btn.open{background:var(--green-700);color:var(--white)}
.accordion-btn .arrow{font-size:1.2rem;transition:transform .3s}
.accordion-btn.open .arrow{transform:rotate(180deg)}
.accordion-body{display:none;padding:1.25rem;background:var(--white);font-size:.9rem;color:var(--gray-700);line-height:1.7}
.accordion-body.open{display:block}

/* ── TIMELINE ── */
.pg-lcp{display:flex;}
.timeline{position:relative;     padding-top: 2rem;}
.timeline::before{content:'';position:absolute;left:5.75rem;top:0;bottom:0;width:2px;background:var(--green-200)}
.tl-item{position:relative;margin-bottom:2rem;padding-left:2.8rem}
.tl-dot{position:absolute;left:.85rem;top:.2rem;width:14px;height:14px;border-radius:50%;background:var(--green-600);border:2px solid var(--white);box-shadow:0 0 0 2px var(--green-600)}
.tl-year{font-size:.8rem;font-weight:700;color:var(--green-600);letter-spacing:.06em;margin-bottom:.25rem}
.tl-text{font-size:.9rem;color:var(--gray-700);line-height:1.65}

/* ── TAG CLOUD ── */
.tag-cloud{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem; display: grid;grid-template-columns: repeat(5, 1fr);}
.tag{background:var(--green-100);color:var(--green-800);padding:.3rem .85rem;border-radius:3px;font-size:.82rem;font-weight:500}

/* ── HIGHLIGHT BOX ── */
.highlight-box{background:var(--green-800);color:var(--white);border-radius:4px;padding:2rem 2.5rem;margin:2rem 0}
.highlight-box h3{color:var(--gold-light);font-size:1.1rem;margin-bottom:.75rem}
.highlight-box p{color:rgba(255,255,255,.85);font-size:.9rem;line-height:1.7}

/* ── PROCESS STEPS ── */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;position:relative}
.step{background:var(--white);border:1px solid var(--gray-300);padding:1.75rem 1.5rem;position:relative}
.step-num{font-size:2.5rem;font-weight:700;color:#5e9261;line-height:1;margin-bottom:.75rem}
.step h3{font-size:1rem;font-weight:600;color:var(--green-800);margin-bottom:.5rem}
.step p{font-size:.85rem;color:var(--gray-500);line-height:1.6}
.step-head{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green-500);margin-bottom:.25rem;font-weight:600}
.ix-projects .project-card{border:none;}
.ix-projects .divider{background:#fff;}
/* ── PROJECTS ── */
.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}
.project-card{border:1px solid var(--gray-300);border-radius:4px;overflow:hidden;transition:box-shadow .2s; background:#fff;}
/*.project-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.1)}*/
.project-header{background:var(--green-700);padding:1.1rem 1.25rem;display:flex;justify-content:space-between;align-items:center}
.project-header h3{color:var(--white);font-size:.95rem;font-weight:600}
.project-badge{background:rgba(255,255,255,.15);color:rgba(255,255,255,.9);font-size:.73rem;padding:.2rem .6rem;border-radius:2px}
.project-body{padding:1.1rem 1.25rem}
.project-row{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--gray-100);font-size:.85rem}
.project-row:last-child{border-bottom:none}
.project-row span:first-child{color:var(--gray-500);font-size:.8rem}
.project-row span:last-child{color:var(--gray-700);font-weight:500;text-align:right;max-width:60%}


.project-body p{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--gray-100);font-size:.85rem; font-weight:500;}
.project-body p:last-child{border-bottom:none}


.tag-cloud .zsy-img img.abc{ object-fit: contain;}
/* ── CERT TABLE ── */
.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.cert-item{background:var(--green-50);border-left:3px solid var(--green-500);padding:1rem 1.25rem;border-radius:0 4px 4px 0}
.cert-name{font-size:.82rem;font-weight:700;color:var(--green-700);margin-bottom:.35rem}
.cert-desc{font-size:.82rem;color:var(--gray-600);line-height:1.55}

/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.contact-info .info-row{display:flex;align-items:center;gap:.9rem;padding:1rem 0;border-bottom:1px solid var(--gray-100)}
.contact-info .info-row:last-child{border-bottom:none}
.contact-info .info-icon{width:38px;height:38px;background:var(--green-100);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-info .info-icon svg{width:18px;height:18px;stroke:var(--green-600);fill:none;stroke-width:1.8}
.contact-info .info-label{font-size:.75rem;color:var(--gray-500);margin-bottom:.1rem}
.contact-info .info-val{font-size:.95rem;font-weight:500;color:var(--green-800)}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:.75rem 1rem;border:1px solid var(--gray-300);border-radius:3px;font-size:.9rem;font-family:inherit;margin-bottom:.9rem;transition:border-color .2s}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:none;border-color:var(--green-500)}
.contact-form textarea{min-height:130px;resize:vertical}
.contact-form label{font-size:.82rem;font-weight:600;color:var(--gray-700);margin-bottom:.3rem;display:block}
.form-submit{background:var(--green-700);color:var(--white);border:none;padding:.8rem 2rem;border-radius:3px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s;width:100%}
.form-submit:hover{background:var(--green-600)}
.form-success{display:none;background:var(--green-100);border:1px solid var(--green-300);border-radius:3px;padding:1rem;color:var(--green-800);font-size:.9rem;text-align:center;margin-top:.75rem}

/* ── NETWORK ── */
.network-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;   word-wrap: break-word;word-break: break-all; /* 长单词也能换行，比如Saudi-Arabia这种 */
  }
.network-card{background:var(--green-50);border:1px solid var(--green-200);border-radius:4px;padding:1rem 1.25rem}
.network-card h4{font-size:.82rem;font-weight:700;color:var(--green-700);margin-bottom:.4rem}
.network-card p{font-size:.82rem;color:var(--gray-600);line-height:1.55}

/* ── FOOTER ── */
footer{background:var(--green-900);color:rgba(255,255,255,.7);padding:3rem 2rem 2rem}
.footer-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:2.5rem}
.footer-brand h2{color:var(--white);font-size:1.3rem;margin-bottom:.5rem}
.footer-brand p{font-size:.85rem;line-height:1.7;margin-bottom:1rem}
.footer-col h4{color:var(--white);font-size:.85rem;font-weight:600;margin-bottom:1rem;letter-spacing:.04em}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:.5rem}
.footer-col ul li a{color:rgba(255,255,255,.6);text-decoration:none;font-size:.83rem;cursor:pointer;transition:color .2s}
.footer-col ul li a:hover{color:var(--white)}
.footer-bottom{max-width:1100px;margin:0 auto;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;display:flex;justify-content:space-between;font-size:.8rem;flex-wrap:wrap;gap:.5rem}
.footer-bottom span a{color:rgba(255,255,255,.5);text-decoration:none}

/* ── PRODUCT PAGE ── */
.product-nav{display:flex;gap:.5rem;margin-bottom:2.5rem;flex-wrap:wrap}
.product-tab{background:transparent;border:1px solid var(--gray-300);padding:.5rem 1.25rem;border-radius:3px;font-size:.87rem;cursor:pointer;color:var(--gray-600);transition:all .2s}
.product-tab:hover{border-color:var(--green-400);color:var(--green-700)}
.product-tab.active{background:var(--green-700);border-color:var(--green-700);color:var(--white)}
.product-section{display:none}
.product-section.active{display:block}

/* ── SECTION BG ALTERNATES ── */
.bg-gray{background:var(--gray-50)}
.bg-green{background:var(--green-800)}
.bg-green *{color:rgba(255,255,255,.85)}
.bg-green .section-title{color:var(--gold-light)}
.bg-green .section-tag{color:rgba(255,255,255,.5)}


.sl-img{width:60px; margin-right:20px;}
.sl-img img{max-width:100%;}

/* ── MOBILE ── */
/*@media(max-width:768px){
  .nav-links,.nav-contact{display:none}
  .hamburger{display:block}
  .nav-links.open{display:flex;flex-direction:column;position:fixed;top:var(--nav-h);left:0;right:0;background:var(--green-800);padding:1rem;gap:0;z-index:999}
  .nav-links.open a{padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}
  .dropdown{position:static;box-shadow:none;border-top:none;background:var(--green-600)}
  .stat-bar{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr}
  section{padding:3rem 1.25rem}
}*/

.project-table-wrap {
  overflow-x: auto;
  border-radius: 6px;
  border: 1px solid var(--green-700);
  background: var(--white);
}

.project-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 840px; /* 根据需要调整最小宽度 */
  font-size: .95rem;
}

.project-table thead th {
  background: var(--green-800);
  color: var(--white);
  text-align: left;
  padding: .75rem 1rem;
  font-weight: 700;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.project-table tbody td:first-child{ border-left: none;}
.project-table td {
  padding: .75rem 1rem;
  border-top: 1px solid rgba(0,0,0,0.03);
  color: var(--gray-700);
  vertical-align: top;
  border:none;
  border-left: 1px solid var(--green-700) ;
}

.project-table tbody tr:nth-child(even) {
  background: var(--green-50);
}

/* 移动端折叠为卡片式（隐藏表头） */
/*@media (max-width: 768px) {
  .project-table, .project-table thead, .project-table tbody, .project-table th, .project-table td, .project-table tr {
    display: block;
  }
  .project-table thead {
    display: none;
  }
  .project-table tr {
    margin-bottom: .75rem;
    border: 1px solid var(--green-100);
    border-radius: 6px;
    padding: .5rem;
    background: var(--white);
  }
  .project-table td {
    padding: .5rem .6rem;
    border: none;
  }
  .project-table td:before {
    content: attr(data-label) ": ";
    font-weight: 700;
    color: var(--green-800);
    display: inline-block;
    min-width: 110px;
  }
  .project-table {
    min-width: 0;
  }
}*/