*{margin:0;padding:0;box-sizing:border-box}
:root{--gx-pri:#0e7c61;--gx-drk:#1a2a3a;--gx-lt:#f5f7f8;--gx-acc:#f5a623;--gx-txt:#333;--gx-gry:#888;--gx-brd:#e2e6e8}
html{scroll-behavior:smooth}
body{font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;color:var(--gx-txt);line-height:1.7;background:#fff;font-size:15px}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
ul{list-style:none}
.gx-wrap{max-width:1200px;margin:0 auto;padding:0 20px}

.gx-topbar{background:var(--gx-drk);color:#cfd8dc;font-size:13px;padding:6px 0}
.gx-topbar .gx-wrap{display:flex;justify-content:space-between;flex-wrap:wrap}
.gx-topbar a{color:#cfd8dc}
.gx-topbar a:hover{color:var(--gx-acc)}

.gx-head{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08);position:sticky;top:0;z-index:100}
.gx-head .gx-wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.gx-logo{display:flex;align-items:center;gap:10px}
.gx-logo img{height:48px;width:auto}
.gx-logo span{font-size:18px;font-weight:700;color:var(--gx-drk)}
.gx-nav ul{display:flex;gap:8px}
.gx-nav a{display:block;padding:10px 16px;font-size:15px;color:var(--gx-drk);border-radius:4px;transition:.2s}
.gx-nav a:hover,.gx-nav a.on{background:var(--gx-pri);color:#fff}
.gx-burger{display:none;background:none;border:none;width:28px;height:22px;cursor:pointer;position:relative}
.gx-burger span{display:block;height:3px;background:var(--gx-drk);margin:4px 0;border-radius:2px}

.gx-banner{position:relative;background:linear-gradient(135deg,#0a5c4a 0%,#0e7c61 50%,#15997a 100%);color:#fff;overflow:hidden}
.gx-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.gx-banner .gx-inner{position:relative;z-index:2;padding:90px 0;text-align:center}
.gx-banner h1{font-size:38px;margin-bottom:16px;text-shadow:0 2px 12px rgba(0,0,0,.3)}
.gx-banner p{font-size:17px;opacity:.92;max-width:680px;margin:0 auto 28px}
.gx-btn{display:inline-block;padding:12px 36px;background:var(--gx-acc);color:#fff;border-radius:3px;font-size:15px;transition:.25s;border:none;cursor:pointer}
.gx-btn:hover{background:#e09612;transform:translateY(-2px)}
.gx-btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.6);margin-left:10px}

.gx-sec{padding:70px 0}
.gx-sec.alt{background:var(--gx-lt)}
.gx-sec-t{text-align:center;margin-bottom:44px}
.gx-sec-t h2{font-size:30px;color:var(--gx-drk);margin-bottom:10px}
.gx-sec-t p{color:var(--gx-gry);font-size:15px}
.gx-line{width:50px;height:3px;background:var(--gx-pri);margin:12px auto 0}

.gx-about{display:flex;gap:40px;align-items:center;flex-wrap:wrap}
.gx-about .gx-txt{flex:1;min-width:300px}
.gx-about .gx-txt h3{font-size:24px;color:var(--gx-drk);margin-bottom:16px}
.gx-about .gx-txt p{margin-bottom:14px;color:#555}
.gx-about .gx-img{flex:1;min-width:300px}
.gx-about .gx-img img{border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,.12)}

.gx-stats{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px;background:var(--gx-pri);color:#fff;padding:36px 0;border-radius:6px;margin-top:40px}
.gx-stat{text-align:center}
.gx-stat b{font-size:34px;display:block}
.gx-stat span{font-size:13px;opacity:.9}

.gx-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.gx-card{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.07);transition:.25s}
.gx-card:hover{transform:translateY(-5px);box-shadow:0 10px 28px rgba(0,0,0,.13)}
.gx-card .pic{height:180px;overflow:hidden}
.gx-card .pic img{width:100%;height:100%;object-fit:cover}
.gx-card .bd{padding:18px}
.gx-card .bd h3{font-size:17px;color:var(--gx-drk);margin-bottom:8px}
.gx-card .bd p{font-size:13px;color:#777;line-height:1.6}
.gx-card .bd a{color:var(--gx-pri);font-size:13px;margin-top:10px;display:inline-block}

.gx-sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.gx-sol{position:relative;border-radius:6px;overflow:hidden;height:220px}
.gx-sol img{width:100%;height:100%;object-fit:cover;transition:.3s}
.gx-sol:hover img{transform:scale(1.06)}
.gx-sol .ov{position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(10,40,35,.88));display:flex;flex-direction:column;justify-content:flex-end;padding:18px;color:#fff}
.gx-sol .ov h3{font-size:18px;margin-bottom:6px}
.gx-sol .ov p{font-size:13px;opacity:.9}

.gx-news{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}
.gx-news-list li{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--gx-brd)}
.gx-news-list .dt{flex-shrink:0;text-align:center;background:var(--gx-lt);border-radius:4px;padding:8px 12px;height:54px}
.gx-news-list .dt b{display:block;font-size:22px;color:var(--gx-pri);line-height:1.1}
.gx-news-list .dt span{font-size:12px;color:var(--gx-gry)}
.gx-news-list .inf h3{font-size:15px;color:var(--gx-drk);margin-bottom:4px}
.gx-news-list .inf p{font-size:13px;color:#888}
.gx-news-list li:hover h3{color:var(--gx-pri)}
.gx-news-side img{border-radius:6px;margin-bottom:14px}
.gx-news-side h3{font-size:16px;color:var(--gx-drk)}

.gx-flow{display:flex;justify-content:space-around;flex-wrap:wrap;gap:16px;text-align:center}
.gx-flow .st{flex:1;min-width:140px;max-width:200px}
.gx-flow .ic{width:64px;height:64px;border-radius:50%;background:var(--gx-lt);display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:24px;color:var(--gx-pri);font-weight:700}
.gx-flow h4{font-size:15px;color:var(--gx-drk);margin-bottom:6px}
.gx-flow p{font-size:12px;color:#888}

.gx-foot{background:var(--gx-drk);color:#90a4ae;padding:50px 0 20px;margin-top:60px}
.gx-foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:30px;margin-bottom:30px}
.gx-foot h4{color:#fff;font-size:16px;margin-bottom:14px}
.gx-foot ul li{margin-bottom:8px;font-size:13px}
.gx-foot a:hover{color:var(--gx-acc)}
.gx-foot .copy{text-align:center;font-size:12px;border-top:1px solid rgba(255,255,255,.1);padding-top:18px}

.gx-bread{background:var(--gx-lt);padding:14px 0;font-size:13px;color:#777}
.gx-bread a{color:var(--gx-pri)}
.gx-banner.sm{padding:50px 0}
.gx-banner.sm .gx-inner{padding:20px 0}
.gx-banner.sm h1{font-size:28px}

.gx-detail{display:flex;gap:40px;flex-wrap:wrap}
.gx-detail .pic{flex:1;min-width:320px}
.gx-detail .pic img{border-radius:6px}
.gx-detail .info{flex:1;min-width:320px}
.gx-detail .info h1{font-size:26px;color:var(--gx-drk);margin-bottom:14px}
.gx-detail .info .price{color:var(--gx-acc);font-size:22px;margin-bottom:18px}
.gx-spec{width:100%;border-collapse:collapse;margin:18px 0}
.gx-spec th,.gx-spec td{border:1px solid var(--gx-brd);padding:10px 14px;font-size:14px;text-align:left}
.gx-spec th{background:var(--gx-lt);width:35%;color:var(--gx-drk)}

.gx-article{max-width:820px;margin:0 auto}
.gx-article h1{font-size:26px;color:var(--gx-drk);margin-bottom:10px}
.gx-article .meta{font-size:13px;color:var(--gx-gry);margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--gx-brd)}
.gx-article .cover{border-radius:6px;margin-bottom:24px}
.gx-article .body p{margin-bottom:16px;text-indent:2em;color:#444}
.gx-article .body h3{font-size:18px;color:var(--gx-drk);margin:22px 0 12px}
.gx-article .back{margin-top:40px;padding-top:20px;border-top:1px solid var(--gx-brd)}

.gx-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.gx-case{border-radius:6px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.07)}
.gx-case img{height:190px;width:100%;object-fit:cover}
.gx-case .bd{padding:14px}
.gx-case h3{font-size:15px;color:var(--gx-drk)}

.gx-404{text-align:center;padding:100px 20px}
.gx-404 h1{font-size:100px;color:var(--gx-pri);line-height:1}
.gx-404 h2{font-size:24px;color:var(--gx-drk);margin:16px 0}
.gx-404 p{color:#888;margin-bottom:24px}

.gx-contact{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.gx-contact .box h3{font-size:18px;color:var(--gx-drk);margin-bottom:14px}
.gx-contact .box p{margin-bottom:10px;font-size:14px}

@media(max-width:900px){
  .gx-grid{grid-template-columns:repeat(2,1fr)}
  .gx-sol-grid,.gx-case-grid{grid-template-columns:repeat(2,1fr)}
  .gx-news{grid-template-columns:1fr}
  .gx-foot .cols{grid-template-columns:1fr 1fr}
  .gx-contact{grid-template-columns:1fr}
  .gx-banner h1{font-size:26px}
  .gx-banner .gx-inner{padding:60px 0}
}
@media(max-width:640px){
  .gx-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;box-shadow:0 8px 16px rgba(0,0,0,.1);padding:10px 20px}
  .gx-nav.open{display:block}
  .gx-nav ul{flex-direction:column;gap:0}
  .gx-burger{display:block}
  .gx-grid,.gx-sol-grid,.gx-case-grid{grid-template-columns:1fr}
  .gx-foot .cols{grid-template-columns:1fr}
  .gx-topbar .gx-wrap{justify-content:center;gap:10px}
  .gx-sec{padding:45px 0}
}
