/* 荣发环境 · 品牌站点样式
   配色：深墨蓝 #0A1A26 / 洁净青 #0EA5C6 / 达标绿 #2FCB7E
   浅蓝底：#EAF3FA 页面 / #F5FAFE 卡片 / #DCEBF7 区块 / #C3DCEE 分隔线 */
:root{
  --ink:#0A1A26; --ink-2:#132C3C; --flow:#0EA5C6; --flow-d:#0B8CAA;
  --dot:#2FCB7E;
  --bg:#EAF3FA; --bg-soft:#F5FAFE; --grey:#DCEBF7; --line:#C3DCEE;
  --deep:#0C2A47; --deep-line:#1B4062;
  --t1:#0A1A26; --t2:#4A5C68; --t3:#6B7E89;
  --max:1200px; --nav:72px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans SC",sans-serif;
  color:var(--t1); background:var(--bg); line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}

/* ============ 导航 ============ */
.nav{
  position:fixed;top:0;left:0;right:0;height:var(--nav);z-index:100;
  background:rgba(234,243,250,.94);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);transition:box-shadow .3s;
}
.nav.on{box-shadow:0 2px 20px rgba(10,26,38,.10)}
.nav .wrap{height:100%;display:flex;align-items:center;justify-content:space-between}
.nav .logo{height:30px;width:auto}
.nav ul{display:flex;align-items:center;gap:34px;list-style:none}
.nav ul a{font-size:14.5px;color:var(--t2);letter-spacing:.5px;transition:color .2s}
.nav ul a:hover{color:var(--flow)}
.lang{
  font-size:13px;color:var(--ink);border:1px solid var(--line);
  padding:6px 14px;border-radius:2px;letter-spacing:1px;transition:.2s;white-space:nowrap;
}
.lang:hover{border-color:var(--flow);color:var(--flow)}
.burger{display:none;width:26px;height:18px;position:relative;cursor:pointer;background:none;border:0}
.burger span{position:absolute;left:0;right:0;height:2px;background:var(--ink);transition:.25s}
.burger span:nth-child(1){top:0}.burger span:nth-child(2){top:8px}.burger span:nth-child(3){top:16px}
.burger.on span:nth-child(1){top:8px;transform:rotate(45deg)}
.burger.on span:nth-child(2){opacity:0}
.burger.on span:nth-child(3){top:8px;transform:rotate(-45deg)}

/* ============ Hero ============ */
.hero{
  margin-top:var(--nav);position:relative;min-height:560px;
  display:flex;align-items:center;overflow:hidden;background:var(--deep);
}
.hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .mask{position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(12,42,71,.94) 0%,rgba(12,42,71,.82) 42%,rgba(12,42,71,.44) 100%)}
.hero .wrap{position:relative;z-index:2;padding:80px 28px}
.hero .kick{font-size:12px;color:var(--flow);letter-spacing:5px;margin-bottom:20px}
.hero h1{font-size:46px;font-weight:700;color:#fff;line-height:1.3;letter-spacing:.5px}
.hero .lead{font-size:16.5px;color:#A9C8D4;margin-top:22px;max-width:620px;line-height:1.9}
.hero .btns{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-block;padding:13px 30px;font-size:15px;letter-spacing:.5px;
  border-radius:2px;transition:.25s;
}
.btn-a{background:var(--flow);color:#fff}
.btn-a:hover{background:var(--flow-d);transform:translateY(-2px)}
.btn-b{border:1px solid rgba(255,255,255,.4);color:#fff}
.btn-b:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* ============ 数据条 ============ */
.stats{background:var(--deep);padding:0}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.stats .col{padding:34px 10px;text-align:center;border-top:1px solid var(--deep-line)}
.stats .col+.col{border-left:1px solid var(--deep-line)}
.stats .n{font-size:38px;font-weight:700;color:#fff;line-height:1}
.stats .n em{font-style:normal;color:var(--dot)}
.stats .l{font-size:12px;color:#8CABC2;margin-top:12px;letter-spacing:1.5px}

/* ============ 通用区块 ============ */
section{padding:86px 0}
.sec-grey{background:var(--grey)}
.sec-head{margin-bottom:52px}
.sec-head .t{font-size:30px;font-weight:700;letter-spacing:1px}
.sec-head .t span{color:var(--flow)}
.sec-head .s{font-size:12px;color:var(--t3);letter-spacing:3px;margin-top:10px}
.sec-head .d{font-size:16px;color:var(--t2);margin-top:18px;max-width:760px;line-height:1.95}

/* ============ 关于 ============ */
.about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about .txt p{font-size:16px;color:var(--t2);line-height:2.05;margin-bottom:18px}
.about .txt p:last-child{margin-bottom:0}
.about .pic{position:relative}
.about .pic img{width:100%;border-radius:3px}
.about .pic::after{content:"";position:absolute;left:-14px;top:-14px;width:70px;height:70px;
  border-left:3px solid var(--flow);border-top:3px solid var(--flow)}

/* ============ 技术实力 ============ */
.tech{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.tech .card{
  background:var(--bg-soft);border:1px solid var(--line);border-top:2px solid var(--flow);
  padding:30px 26px;transition:.25s;
}
.tech .card:hover{box-shadow:0 10px 30px rgba(10,26,38,.09);transform:translateY(-3px)}
.tech .no{font-size:12px;font-weight:700;color:var(--flow);letter-spacing:2px}
.tech .h{font-size:17px;font-weight:700;margin-top:10px;line-height:1.5}
.tech .p{font-size:13.5px;color:var(--t2);margin-top:12px;line-height:1.85}

/* ============ 服务行业 ============ */
.ind{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.ind .cell{
  background:var(--bg-soft);border:1px solid var(--line);padding:26px 14px;text-align:center;
  transition:.25s;
}
.ind .cell:hover{border-color:var(--flow);transform:translateY(-3px)}
.ind .n{font-size:18px;font-weight:700;letter-spacing:1px}
.ind .d{font-size:11.5px;color:var(--t3);margin-top:8px;line-height:1.6}

/* ============ 案例 ============ */
.cases{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.case{background:var(--bg-soft);border:1px solid var(--line);overflow:hidden;transition:.25s;display:block}
.case:hover{box-shadow:0 12px 34px rgba(10,26,38,.12);transform:translateY(-4px)}
.case .pic{position:relative;padding-top:66%;overflow:hidden;background:var(--ink)}
.case .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.4s}
.case:hover .pic img{transform:scale(1.06)}
.case .tag{
  position:absolute;left:12px;top:12px;background:rgba(10,26,38,.85);color:#fff;
  font-size:11px;padding:4px 10px;letter-spacing:1px;
}
.case .body{padding:18px 18px 22px}
.case .h{font-size:15.5px;font-weight:700;line-height:1.5}
.case .m{font-size:12px;color:var(--flow);margin-top:8px;letter-spacing:.5px}
.case .p{font-size:12.5px;color:var(--t2);margin-top:10px;line-height:1.8;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* 封面上的「点击查看」提示 */
.case .zoom{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(12,42,71,.55);opacity:0;transition:.25s;
}
.case:hover .zoom,.case:focus-visible .zoom{opacity:1}
.case .zoom span{
  color:#fff;font-size:12.5px;letter-spacing:1.5px;padding:8px 16px;
  border:1px solid rgba(255,255,255,.75);border-radius:2px;transform:translateY(6px);transition:.25s;
}
.case:hover .zoom span{transform:translateY(0)}

/* ============ 案例图片查看器 ============ */
.lb{position:fixed;inset:0;z-index:200;display:none}
.lb.on{display:block}
.lb-mask{position:absolute;inset:0;background:rgba(8,20,32,.9);cursor:pointer}
.lb-panel{
  position:relative;max-width:1120px;margin:0 auto;height:100%;
  display:flex;flex-direction:column;justify-content:center;padding:44px 20px 30px;
}
.lb-x{
  position:absolute;right:8px;top:6px;width:40px;height:40px;line-height:1;
  font-size:30px;color:#fff;background:none;border:0;cursor:pointer;opacity:.75;transition:.2s;
}
.lb-x:hover{opacity:1;transform:rotate(90deg)}
.lb-stage{
  position:relative;background:#06121E;display:flex;align-items:center;justify-content:center;
  min-height:0;flex:0 1 auto;
}
.lb-img{max-width:100%;max-height:68vh;object-fit:contain;display:block}
.lb-nav{
  position:absolute;top:50%;transform:translateY(-50%);width:46px;height:76px;
  background:rgba(10,26,38,.55);color:#fff;border:0;font-size:30px;line-height:1;
  cursor:pointer;transition:.2s;
}
.lb-nav:hover{background:var(--flow)}
.lb-nav.prev{left:0}
.lb-nav.next{right:0}
.lb-count{
  position:absolute;right:12px;bottom:12px;background:rgba(10,26,38,.8);color:#fff;
  font-size:12px;letter-spacing:1px;padding:5px 12px;
}
.lb-info{background:#fff;padding:20px 24px 22px;flex:0 0 auto;max-height:34vh;overflow:auto}
.lb-tag{
  display:inline-block;background:var(--grey);color:var(--t2);font-size:11px;
  padding:3px 10px;letter-spacing:1px;
}
.lb-h{font-size:19px;font-weight:700;margin-top:10px;line-height:1.5}
.lb-m{font-size:12.5px;color:var(--flow);margin-top:6px;letter-spacing:.5px}
.lb-p{font-size:13.5px;color:var(--t2);margin-top:10px;line-height:1.9}
.lb-thumbs{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.lb-thumb{
  width:60px;height:42px;padding:0;border:2px solid transparent;background:none;
  cursor:pointer;overflow:hidden;opacity:.6;transition:.2s;
}
.lb-thumb img{width:100%;height:100%;object-fit:cover}
.lb-thumb:hover{opacity:1}
.lb-thumb.on{border-color:var(--flow);opacity:1}

/* ============ 资质认证 ============ */
.qual{display:grid;grid-template-columns:330px 1fr;gap:56px;align-items:start}
.qual .cert{
  background:#fff;border:1px solid var(--line);padding:10px;
  box-shadow:0 12px 32px rgba(10,26,38,.10);
}
.qual .cert img{width:100%;height:auto}
.qual .qinfo{border-top:2px solid var(--flow);padding-top:4px}
.qual .row{display:flex;gap:22px;align-items:baseline;padding:17px 0;border-bottom:1px solid var(--line)}
.qual .k{flex:0 0 110px;font-size:13px;color:var(--t3);letter-spacing:3px;white-space:nowrap}
.qual .v{font-size:16.5px;font-weight:700;color:var(--ink);line-height:1.6}
.qual .v em{font-style:normal;color:var(--flow)}
.qual .v small{font-size:13px;font-weight:400;color:var(--t2);margin-left:6px}
.qual .note{font-size:12.5px;color:var(--t3);margin-top:22px;line-height:1.95}
.qual .note a{color:var(--flow);border-bottom:1px solid rgba(14,165,198,.35)}

/* ============ 联系 ============ */
.contact{background:var(--deep);color:#fff}
.contact .sec-head .t{color:#fff}
.contact .sec-head .s{color:#8CADC2}
.ct{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}
.ct .co{font-size:22px;font-weight:700;letter-spacing:1px}
.ct .en{font-size:11px;color:#7FA5BE;letter-spacing:2px;margin-top:8px}
.ct .line{width:52px;height:2px;background:var(--dot);margin:22px 0}
.ct .row{font-size:15px;color:#C3D4DC;line-height:2.4}
.ct .row b{color:#fff;font-weight:700}
.ct .qrbox{text-align:center}
.ct .qr{width:150px;background:#fff;padding:8px}
.ct .qrt{font-size:12px;color:#97B3C6;letter-spacing:2px;margin-top:12px}

/* ============ 页脚 ============ */
.foot{background:var(--deep);border-top:1px solid var(--deep-line);padding:26px 0;
      font-size:12.5px;color:#87A6BC}
.foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* 备案号：广东管局要求居中、无序号（粤ICP备XXXXXXXX号，不带 -1/-2） */
.foot .beian{flex:0 0 100%;text-align:center;margin-top:16px;padding-top:13px;
  border-top:1px solid var(--deep-line);font-size:12px;color:#87A6BC;letter-spacing:.3px}
.foot .beian a{color:#87A6BC;transition:.2s}
.foot .beian a:hover{color:#fff}

/* ============ 悬浮咨询 ============ */
.fab{
  position:fixed;right:22px;bottom:22px;z-index:90;background:var(--flow);color:#fff;
  width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 20px rgba(14,165,198,.4);font-size:22px;transition:.25s;
}
.fab:hover{transform:scale(1.06);background:var(--flow-d)}

/* ============ 响应式 ============ */
@media (max-width:1000px){
  .ind{grid-template-columns:repeat(3,1fr)}
  .cases{grid-template-columns:repeat(2,1fr)}
  .tech{grid-template-columns:repeat(2,1fr)}
  .about{grid-template-columns:1fr;gap:34px}
  .qual{grid-template-columns:1fr;gap:34px}
  .qual .cert{max-width:320px}
}
@media (max-width:760px){
  .nav ul{
    display:none;position:absolute;top:var(--nav);left:0;right:0;background:var(--bg);
    flex-direction:column;gap:0;padding:8px 0;border-bottom:1px solid var(--line);
    box-shadow:0 8px 20px rgba(10,26,38,.1);
  }
  .nav ul.on{display:flex}
  .nav ul li{width:100%}
  .nav ul a{display:block;padding:14px 28px;font-size:15px}
  .burger{display:block}
  .hero{min-height:460px}
  .hero h1{font-size:30px}
  .hero .lead{font-size:15px}
  .hero .wrap{padding:56px 28px}
  .stats .wrap{grid-template-columns:repeat(2,1fr)}
  .stats .col:nth-child(3){border-left:0}
  .stats .col:nth-child(-n+2){border-bottom:1px solid var(--deep-line)}
  .ind{grid-template-columns:repeat(2,1fr)}
  .cases{grid-template-columns:1fr}
  .tech{grid-template-columns:1fr}
  .ct{grid-template-columns:1fr;gap:34px}
  .ct .qrbox{text-align:left}
  section{padding:60px 0}
  .sec-head .t{font-size:24px}
  /* 图片查看器 · 移动端 */
  .lb-panel{padding:40px 10px 14px}
  .lb-img{max-height:44vh}
  .lb-nav{width:38px;height:62px;font-size:24px}
  .lb-info{padding:15px 16px 16px;max-height:40vh}
  .lb-h{font-size:16.5px}
  .lb-p{font-size:12.5px;line-height:1.8}
  .lb-thumb{width:52px;height:36px}
}
