/* ===========================================================
   环众科技官网 · 设计稿还原样式
   科技蓝 + 浅灰 简约商务体系
   =========================================================== */
:root{
  --primary:#1E5AE8;
  --primary-dark:#1A4FCC;
  --primary-050:#E9F0FF;
  --navy:#0C1E3E;
  --navy-card:#14294D;
  --cyan:#5EE0FF;
  --bg:#FFFFFF;
  --bg-alt:#F7F9FD;
  --bg-tint:#F2F6FF;
  --border:#E6ECF5;
  --text:#12213D;
  --text-2:#3D4759;
  --text-3:#5B6577;
  --muted:#8A94A6;
  --radius-card:16px;
  --radius-lg:18px;
  --radius-btn:10px;
  --shadow-card:0 10px 28px rgba(31,41,56,.06);
  --shadow-soft:0 8px 24px rgba(31,41,56,.06);
  --shadow-float:0 10px 24px rgba(8,23,64,.16);
  --container:1240px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--text);background:var(--bg);line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}
img,svg{display:block}
.container{max-width:var(--container);margin:0 auto;padding:0;width:100%}

/* ---------- 通用按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-weight:500;font-size:16px;border-radius:var(--radius-btn);
  padding:15px 30px;cursor:pointer;border:none;transition:.25s;white-space:nowrap;
}
.btn--sm{padding:11px 22px;font-size:15px;border-radius:8px}
.btn--primary{background:var(--primary);color:#fff}
.btn--primary:hover{background:var(--primary-dark);transform:translateY(-2px)}
.btn--glow{box-shadow:0 10px 26px rgba(30,90,232,.4)}
.btn--ghost{background:rgba(255,255,255,.1);color:#fff}
.btn--ghost:hover{background:rgba(255,255,255,.2)}
.btn--white{background:#fff;color:var(--primary)}
.btn--white:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.15)}
.btn--outline-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5)}
.btn--outline-light:hover{background:rgba(255,255,255,.12)}

/* ---------- 顶部导航 ---------- */
.header{
  position:sticky;top:0;z-index:50;background:var(--navy);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.header__inner{display:flex;align-items:center;justify-content:flex-start;height:74px}
.logo{display:flex;align-items:center;gap:12px;margin-right:28px}
.logo__mark svg{width:40px;height:40px}
.logo__text{display:flex;flex-direction:column;line-height:1.1}
.logo__text strong{font-size:20px;font-weight:700;color:#fff}
.logo__text em{font-family:"Outfit",sans-serif;font-style:normal;font-size:10px;letter-spacing:1.5px;color:#8CA0C4}
.logo__img{height:40px;width:auto;object-fit:contain;display:block}
.nav{display:flex;align-items:center;gap:28px}
.nav__link{font-size:15px;color:#B7C2D8;transition:.2s;position:relative}
.nav__link:hover{color:#fff}
.nav__link.is-active{color:#fff;font-weight:500}
.header__actions{display:flex;align-items:center;gap:18px;margin-left:auto}
.header__phone{display:flex;align-items:center;gap:6px;font-family:"Outfit",sans-serif;font-weight:600;font-size:16px;color:#fff}

body.nav-open{overflow:hidden}

/* ---------- Hero ---------- */
.hero{
  background:linear-gradient(120deg,#071638 0%,#0C2555 55%,#163D7C 100%);
  overflow:hidden;
}
.hero__inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:90px 0}
.hero__left{max-width:640px;flex:1}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:100px;background:rgba(46,107,255,.18);color:#CFE0FF;font-size:13px;font-weight:500}
.badge__dot{width:6px;height:6px;border-radius:50%;background:var(--cyan)}
.hero__title{font-size:52px;line-height:1.25;font-weight:700;color:#fff;margin-top:26px}
.hero__title2{font-size:30px;line-height:1.3;font-weight:700;color:var(--cyan);margin-top:8px}
.hero__sub{font-size:17px;line-height:1.7;color:#AFC0DE;margin-top:20px;max-width:560px}
.hero__cta{display:flex;gap:16px;margin-top:32px;flex-wrap:wrap}
.hero__trust{font-size:14px;color:#8CA0C4;margin-top:26px}
.hero__carousel{display:flex;align-items:center;gap:8px;margin-top:24px}
.dot{width:8px;height:6px;border-radius:3px;background:rgba(255,255,255,.25);transition:.3s}
.dot--active{width:26px;background:var(--cyan)}
.hero__counter{font-family:"Outfit",sans-serif;font-size:13px;color:#8CA0C4;margin-left:6px}

/* Hero 可视化 */
.hero__visual{position:relative;width:560px;height:470px;flex-shrink:0}
.hero__glow{position:absolute;left:150px;top:30px;width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle,rgba(61,125,255,.55) 0%,rgba(61,125,255,0) 70%)}
.app-window{position:absolute;left:28px;top:62px;width:496px;height:348px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 56px rgba(8,23,64,.28)}
.app-window__bar{display:flex;align-items:center;gap:8px;height:46px;padding:0 18px;background:var(--bg-alt)}
.wd{width:10px;height:10px;border-radius:50%}
.wd--r{background:#FF5F57}.wd--y{background:#FEBC2E}.wd--g{background:#28C840}
.app-window__title{margin-left:6px;font-size:12px;color:var(--muted)}
.app-window__body{padding:20px 22px}
.app-window__h{font-size:15px;font-weight:700;color:var(--text)}
.bars{display:flex;align-items:flex-end;justify-content:space-between;height:176px;margin-top:16px}
.bars i{width:52px;border-radius:7px;background:#DCE6FA;display:block}
.bars .bars__hl{background:var(--primary)}
.chip{position:absolute;background:#fff;border-radius:12px;box-shadow:0 10px 24px rgba(8,23,64,.16);display:flex;align-items:center}
.chip--tr{right:12px;top:26px;padding:10px 14px;gap:8px}
.chip__dot{width:8px;height:8px;border-radius:50%;background:#28C840}
.chip--tr{font-size:13px;font-weight:500;color:var(--text)}
.chip--bl{left:0;bottom:34px;flex-direction:column;align-items:flex-start;padding:14px 18px;border-radius:14px}
.chip--bl strong{font-family:"Outfit",sans-serif;font-size:26px;font-weight:700;color:var(--primary)}
.chip--bl span{font-size:12px;color:var(--text-3)}

/* ---------- 通用 section ---------- */
.section{padding:80px 0}
.section--alt{background:var(--bg-alt)}
.section--tint{background:var(--bg-tint)}
.section--dark{background:var(--navy)}
.sec-head{margin-bottom:44px;max-width:760px}
.sec-head--center{text-align:center;margin-left:auto;margin-right:auto}
.sec-head--row{display:flex;justify-content:space-between;align-items:flex-end;max-width:100%;gap:24px}
.eyebrow{font-family:"Outfit",sans-serif;font-size:12px;font-weight:600;letter-spacing:2px;color:var(--primary)}
.eyebrow--cyan{color:var(--cyan)}
.sec-title{font-size:30px;font-weight:700;color:var(--text);margin-top:10px;line-height:1.35}
.sec-title--light{color:#fff}
.sec-sub{font-size:15px;color:var(--text-3);margin-top:10px}
.sec-sub--light{color:#8CA0C4}
.link-more{font-size:15px;font-weight:500;color:var(--primary);white-space:nowrap;transition:.2s}
.link-more:hover{opacity:.7}
.tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:4px;background:var(--primary-050);color:var(--primary);font-size:12px;font-weight:500}
.tag--solid{background:var(--primary);color:#fff}
.tag--solid i{width:5px;height:5px;border-radius:50%;background:#fff}

/* ---------- 栅格 ---------- */
.grid{display:grid;gap:20px}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--2{grid-template-columns:repeat(2,1fr)}

/* ---------- 数据实力 ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat-card{background:#fff;border-radius:var(--radius-card);padding:28px 0;text-align:center;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:10px;align-items:center}
.stat-card__num{font-family:"Outfit",sans-serif;font-size:44px;font-weight:700;color:var(--primary);line-height:1}
.stat-card__label{font-size:15px;color:var(--text-2)}

/* ---------- 服务卡片 ---------- */
.s-card{background:#fff;border-radius:var(--radius-card);padding:26px;box-shadow:var(--shadow-card);transition:.25s;border:1px solid transparent}
.s-card:hover{transform:translateY(-4px);border-color:#D8E3FA}
.s-card__icon,.p-card__icon{width:54px;height:54px;border-radius:12px;background:var(--primary-050);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.s-card h3{font-size:18px;font-weight:700;margin-bottom:10px}
.s-card p{font-size:14px;color:var(--text-3);line-height:1.6}

/* ---------- 成品产品卡片 ---------- */
.p-card{background:#fff;border-radius:var(--radius-lg);padding:26px;box-shadow:var(--shadow-card);transition:.25s;display:flex;flex-direction:column}
.p-card:hover{transform:translateY(-4px)}
.p-card__icon{width:54px;height:54px;border-radius:14px;margin-bottom:14px}
.p-card h3{font-size:18px;font-weight:700;margin-bottom:10px}
.p-card p{font-size:14px;color:var(--text-3);line-height:1.6}
.p-card--cta{background:linear-gradient(135deg,#1E5AE8,#1740B0);color:#fff;justify-content:center;align-items:flex-start}
.p-card--cta h3{color:#fff}
.p-card--cta p{color:rgba(255,255,255,.85);margin-bottom:18px}

/* ---------- 行业卡片（深色） ---------- */
.i-card{background:var(--navy-card);border-radius:var(--radius-card);padding:24px;transition:.25s}
.i-card:hover{transform:translateY(-4px);background:#1A3260}
.i-card__icon{width:42px;height:42px;border-radius:10px;background:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.i-card h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:8px}
.i-card p{font-size:14px;color:#8CA0C4;line-height:1.6}

/* ---------- 案例卡片 ---------- */
.case{background:#fff;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);transition:.25s}
.case:hover{transform:translateY(-4px)}
.case__img{aspect-ratio:7/4;display:flex;align-items:center;justify-content:center;position:relative;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#f5f7fa!important}



.case__img span{color:rgba(255,255,255,.92);font-size:16px;font-weight:500;letter-spacing:1px;z-index:1}
.case__img::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.14),transparent)}
.case__img--1{background:linear-gradient(135deg,#3373E6,#14418C)}
.case__img--2{background:linear-gradient(135deg,#2E6BC7,#0D3373)}
.case__img--3{background:linear-gradient(135deg,#3D7DE6,#1A4FB0)}
.case__img--4{background:linear-gradient(135deg,#2B84C9,#124A8C)}
.case__img--5{background:linear-gradient(135deg,#3565D6,#16357A)}
.case__img--6{background:linear-gradient(135deg,#2E77D6,#0F3A82)}
.case__body{padding:20px 22px;display:flex;flex-direction:column;gap:8px}
.case__body h3{font-size:17px;font-weight:700}
.case__body p{font-size:13px;color:var(--text-3)}

/* ---------- 核心优势 ---------- */
.adv{display:flex;gap:20px;background:var(--bg-alt);border-radius:var(--radius-lg);padding:30px 28px;transition:.25s;border:1px solid var(--border)}
.adv:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);background:#fff}
.adv__no{font-family:"Outfit",sans-serif;font-size:40px;font-weight:800;color:var(--primary);line-height:1;opacity:.85}
.adv h3{font-size:19px;font-weight:700;margin-bottom:8px}
.adv p{font-size:14px;color:var(--text-3);line-height:1.65}

/* ---------- 合作伙伴 ---------- */
.partners{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.partners span{background:#fff;border:1px solid var(--border);border-radius:10px;padding:16px 32px;font-size:16px;color:var(--text-2);transition:.25s;min-width:150px;text-align:center}
.partners span:hover{color:var(--primary);border-color:#C7D6F5;box-shadow:var(--shadow-soft)}

/* ---------- 底部转化 ---------- */
.cta-band{background:linear-gradient(120deg,#1E5AE8,#1636A8)}
.cta-band__inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:56px 24px;flex-wrap:wrap}
.cta-band__text h2{font-size:30px;font-weight:700;color:#fff}
.cta-band__text p{font-size:16px;color:rgba(255,255,255,.85);margin-top:10px}
.cta-band__actions{display:flex;gap:16px;flex-wrap:wrap}

/* ---------- 页脚 ---------- */
.footer{background:var(--navy);color:#B7C2D8}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding:64px 24px 48px}
.logo--light .logo__text strong{color:#fff}
.footer__slogan{font-size:14px;line-height:1.7;color:#8CA0C4;margin:18px 0 16px}
.footer__contact-line{font-size:14px;color:#B7C2D8;margin-top:6px}
.footer__contact-line a:hover{color:var(--cyan)}
.footer__col h4{font-size:16px;color:#fff;margin-bottom:18px;font-weight:500}
.footer__col a{display:block;font-size:14px;color:#8CA0C4;margin-bottom:12px;transition:.2s}
.footer__col a:hover{color:#fff}
.footer__bottom{border-top:1px solid rgba(255,255,255,.08)}
.footer__bottom-inner{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;font-size:13px;color:#6B7794;flex-wrap:wrap;gap:10px}
.footer__legal a:hover{color:var(--cyan)}

/* ---------- 悬浮转化组件 ---------- */
.fab{position:fixed;right:20px;bottom:40px;z-index:60;display:flex;flex-direction:column;gap:2px}
.fab__item{width:66px;background:var(--primary);color:#fff;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;font-size:0}
.fab__item b{font-size:11px;font-weight:400}
.fab__item:first-child{border-radius:12px 12px 0 0}
.fab__item+.fab__item{border-top:1px solid rgba(255,255,255,.15)}
.fab__item:hover{background:var(--primary-dark)}
.fab__top{width:66px;height:48px;background:#fff;border:1px solid var(--border);border-radius:0 0 12px 12px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft);transition:.2s;opacity:0;pointer-events:none}
.fab__top.show{opacity:1;pointer-events:auto}
.fab__top:hover{background:var(--bg-alt)}

/* ---------- 卡片入场动画 ---------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.68,.36,1)}
.reveal--in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ===========================================================
   响应式（手机端优先适配）
   =========================================================== */
@media (max-width:1080px){
  .container{padding:0 24px}
  .hero__visual{width:440px;height:400px}
  .app-window{width:420px}
  .nav{gap:20px}
  .footer__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .nav{position:fixed;top:74px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:flex-start;
    gap:0;padding:8px 24px;border-bottom:1px solid rgba(255,255,255,.08);transform:translateY(-140%);transition:.35s;box-shadow:0 16px 40px rgba(0,0,0,.25)}
  .nav.open{transform:translateY(0)}
  .nav__link{width:100%;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#B7C2D8}
  .nav__link:hover{color:#fff}
  .nav__link.is-active{color:#fff}
  .header__burger{display:flex}
  .header__phone{display:none}
  .hero__inner{flex-direction:column;text-align:center;padding:56px 24px}
  .hero__left{max-width:100%}
  .hero__sub{margin-left:auto;margin-right:auto}
  .hero__cta,.hero__carousel{justify-content:center}
  .hero__visual{margin-top:36px;width:100%;max-width:480px;height:420px}
  .app-window{left:50%;transform:translateX(-50%)}
  .hero__glow{left:50%;transform:translateX(-50%)}
  .grid--3,.stats{grid-template-columns:repeat(2,1fr)}
  .sec-head--row{flex-direction:column;align-items:flex-start;gap:14px}
}
@media (max-width:600px){
  .container{padding:0 16px}
  .hero__title{font-size:36px}
  .hero__title2{font-size:22px}
  .sec-title{font-size:24px}
  .section{padding:56px 0}
  .grid--3,.grid--2,.stats{grid-template-columns:1fr}
  .cta-band__text h2{font-size:24px}
  .footer__grid{grid-template-columns:1fr;gap:32px;padding:48px 24px 36px}
  .fab{right:12px;bottom:20px}
  .hero__visual{height:380px}
  .app-window{width:340px}
  .bars i{width:40px}
}

/* ===========================================================
   子页通用：Banner / 面包屑
   =========================================================== */
.subhero{background:linear-gradient(120deg,#071638 0%,#0C2555 55%,#163D7C 100%);padding:64px 0 56px}
.breadcrumb{font-size:14px;color:#8CA0C4;margin-bottom:14px}
.breadcrumb a{color:#8CA0C4}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb span{margin:0 8px}
.subhero__title{font-size:40px;font-weight:700;color:#fff}
.subhero__sub{font-size:16px;color:#AFC0DE;margin-top:12px;max-width:680px}

/* ---------- 新闻中心：搜索 + 分类 ---------- */
.news-tools{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:18px}
.search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:100px;padding:12px 18px;flex:1;min-width:260px;max-width:420px;box-shadow:var(--shadow-soft)}
.search-box input{border:none;outline:none;font-size:15px;width:100%;color:var(--text);background:transparent}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips--center{justify-content:center;margin-bottom:28px}
.chip-btn{border:1px solid var(--border);background:#fff;color:var(--text-2);font-size:14px;padding:9px 18px;border-radius:100px;cursor:pointer;transition:.2s;font-family:inherit}
.chip-btn:hover{border-color:#C7D6F5;color:var(--primary)}
.chip-btn.is-active{background:var(--primary);border-color:var(--primary);color:#fff}
.news-count{font-size:14px;color:var(--text-3);margin-bottom:22px}

/* ---------- 新闻中心：头条焦点 ---------- */
.news-featured{display:grid;grid-template-columns:1fr 340px;gap:24px}
.news-featured__main{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:.25s;border:1px solid transparent;display:flex;flex-direction:column}
.news-featured__main:hover{transform:translateY(-4px);border-color:#D8E3FA}
.news-featured__img{height:220px;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#3373E6,#14418C)}
.news-featured__img span{color:rgba(255,255,255,.92);font-size:18px;font-weight:600;z-index:1}
.news-featured__img::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.14),transparent)}
.news-featured__body{padding:24px 26px;display:flex;flex-direction:column;gap:12px}
.news-featured__body h3{font-size:22px;font-weight:700;line-height:1.35}
.news-featured__body p{font-size:15px;color:var(--text-3);line-height:1.7}
.news-featured__foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.news-featured__foot time{font-family:"Outfit",sans-serif;font-size:13px;color:var(--muted)}
.news-featured__side{display:flex;flex-direction:column;gap:16px}
.news-side-card{background:#fff;border-radius:var(--radius-card);padding:20px 22px;box-shadow:var(--shadow-card);transition:.25s;border:1px solid transparent;display:flex;flex-direction:column;gap:8px}
.news-side-card:hover{transform:translateY(-3px);border-color:#D8E3FA}
.news-side-card h4{font-size:16px;font-weight:700;line-height:1.4}
.news-side-card p{font-size:13px;color:var(--text-3);line-height:1.5}
.news-side-card time{font-family:"Outfit",sans-serif;font-size:12px;color:var(--muted)}
.news-side-card__link{font-size:14px;font-weight:500;color:var(--primary);transition:.2s}
.news-side-card__link:hover{opacity:.7}
.tag--sm{font-size:11px;padding:3px 8px}

/* ---------- 新闻中心：新闻列表 ---------- */
.news-list{display:flex;flex-direction:column;gap:16px}
.news-item{background:#fff;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);transition:.25s;border:1px solid transparent}
.news-item:hover{transform:translateY(-3px);border-color:#D8E3FA}
.news-item__link{display:flex;align-items:center;gap:24px;padding:20px 24px;text-decoration:none;color:inherit}
.news-item__img{width:180px;height:130px;border-radius:12px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat}

.news-item__img span{color:rgba(255,255,255,.92);font-size:13px;font-weight:500;z-index:1}
.news-item__img::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.14),transparent)}
.news-item__img--2{background:linear-gradient(135deg,#2E6BC7,#0D3373)}
.news-item__img--3{background:linear-gradient(135deg,#3D7DE6,#1A4FB0)}
.news-item__img--4{background:linear-gradient(135deg,#2B84C9,#124A8C)}
.news-item__img--5{background:linear-gradient(135deg,#3565D6,#16357A)}
.news-item__img--6{background:linear-gradient(135deg,#2E77D6,#0F3A82)}
.news-item__img--7{background:linear-gradient(135deg,#4285F4,#1A56CC)}
.news-item__img--8{background:linear-gradient(135deg,#5B9BD5,#2E6B9E)}
.news-item__img--9{background:linear-gradient(135deg,#6C8EBF,#3D5A80)}
.news-item__img--10{background:linear-gradient(135deg,#1E5AE8,#1636A8)}
.news-item__body{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}
.news-item__meta{display:flex;align-items:center;gap:12px}
.news-item__meta time{font-family:"Outfit",sans-serif;font-size:13px;color:var(--muted)}
.news-item__body h3{font-size:17px;font-weight:700;line-height:1.35}
.news-item__body p{font-size:14px;color:var(--text-3);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-item__arrow{font-size:20px;color:var(--primary);font-weight:300;flex-shrink:0;opacity:0;transition:.25s;margin-left:auto}
.news-item:hover .news-item__arrow{opacity:1}
.news-list__empty{text-align:center;color:var(--text-3);padding:40px 0}

/* ---------- 新闻中心：分页 ---------- */
.news-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:32px}
.news-pagination__btn{background:#fff;border:1px solid var(--border);border-radius:var(--radius-btn);padding:10px 24px;font-size:14px;color:var(--text-2);cursor:pointer;transition:.2s;font-family:inherit}
.news-pagination__btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}
.news-pagination__btn:disabled{opacity:.4;cursor:not-allowed}
.news-pagination__current{font-size:14px;color:var(--text-3)}

/* ---------- 新闻中心：详情页 ---------- */
.news-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:start}
.news-detail__main{background:#fff;border-radius:var(--radius-lg);padding:36px;box-shadow:var(--shadow-card)}
.news-detail__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.news-detail__meta{display:flex;align-items:center;gap:16px}
.news-detail__meta time{font-family:"Outfit",sans-serif;font-size:13px;color:var(--muted)}
.news-detail__views{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.news-detail__title{font-size:26px;font-weight:700;line-height:1.4;margin-bottom:28px}
.news-detail__content{font-size:16px;color:var(--text-2);line-height:1.85}
.news-detail__content p{margin-bottom:18px}
.news-detail__content h3{font-size:20px;font-weight:700;color:var(--text);margin:32px 0 16px}
.news-detail__content ul{margin:16px 0;padding-left:24px}
.news-detail__content li{margin-bottom:10px;line-height:1.7}
.news-detail__content li strong{color:var(--primary)}
.news-detail__tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}
.news-detail__tag{background:var(--primary-050);color:var(--primary);font-size:13px;padding:6px 14px;border-radius:6px;font-weight:500}
.news-detail__share{display:flex;align-items:center;gap:12px;margin-top:24px;font-size:14px;color:var(--text-3)}
.share-btn{width:32px;height:32px;border-radius:8px;cursor:pointer;border:none;background:none;display:flex;align-items:center;justify-content:center;transition:.2s;padding:0}
.share-btn:hover{transform:scale(1.1)}

/* 侧边栏 */
.news-detail__side{display:flex;flex-direction:column;gap:20px}
.news-detail__back{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:500;color:var(--primary);padding:14px 18px;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow-soft);transition:.2s;border:1px solid transparent}
.news-detail__back:hover{border-color:#D8E3FA;transform:translateY(-2px)}
.news-detail__related{background:#fff;border-radius:var(--radius-card);padding:22px;box-shadow:var(--shadow-soft)}
.news-detail__related h4{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--text)}
.news-detail__related-item{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px solid var(--border);transition:.2s;text-decoration:none;color:inherit}
.news-detail__related-item:last-child{border-bottom:none;padding-bottom:0}
.news-detail__related-item:hover{color:var(--primary)}
.news-detail__related-item p{font-size:14px;font-weight:500;line-height:1.4}
.news-detail__related-item time{font-size:12px;color:var(--muted)}
.news-detail__hot-tags{background:#fff;border-radius:var(--radius-card);padding:22px;box-shadow:var(--shadow-soft)}
.news-detail__hot-tags h4{font-size:16px;font-weight:700;margin-bottom:14px;color:var(--text)}
.hot-tags-list{display:flex;flex-wrap:wrap;gap:8px}
.hot-tag{background:var(--bg-alt);border:1px solid var(--border);color:var(--text-3);font-size:12px;padding:6px 12px;border-radius:6px;transition:.2s;cursor:pointer}
.hot-tag:hover{background:var(--primary-050);border-color:var(--primary);color:var(--primary)}

/* ---------- 联系：信息卡 ---------- */
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:40px}
.info-card{background:#fff;border-radius:var(--radius-card);padding:28px 24px;box-shadow:var(--shadow-card);text-align:center;border:1px solid transparent;transition:.25s}
.info-card:hover{transform:translateY(-4px);border-color:#D8E3FA}
.info-card__icon{width:54px;height:54px;border-radius:14px;background:var(--primary-050);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.info-card h3{font-size:17px;font-weight:700;margin-bottom:8px}
.info-card p{font-size:14px;color:var(--text-3);line-height:1.6}
.info-card a:hover{color:var(--primary)}

/* ---------- 联系：地图 + 表单 ---------- */
.contact-main{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:stretch}
.map-box{position:relative;min-height:380px;border-radius:var(--radius-lg);overflow:hidden;background:
  radial-gradient(circle at 30% 30%,rgba(94,147,255,.35),transparent 60%),
  linear-gradient(135deg,#E9F0FF,#CFE0FF);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border:1px solid var(--border)}
.map-box__pin{filter:drop-shadow(0 10px 18px rgba(30,90,232,.35))}
.map-box__label{font-size:16px;font-weight:600;color:var(--navy);background:rgba(255,255,255,.85);padding:8px 16px;border-radius:10px}
.map-box__hint{position:absolute;bottom:14px;font-size:12px;color:var(--text-3)}

.cform{background:var(--bg-alt);border-radius:var(--radius-lg);padding:32px;border:1px solid var(--border)}
.cform h3{font-size:22px;font-weight:700}
.cform__sub{font-size:14px;color:var(--text-3);margin:8px 0 20px}
.cform label{display:block;font-size:14px;color:var(--text-2);font-weight:500}
.cform > label{margin-bottom:16px}
.cform input,.cform select,.cform textarea{
  width:100%;margin-top:8px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;
  font-size:15px;font-family:inherit;color:var(--text);background:#fff;outline:none;transition:.2s;resize:vertical}
.cform input:focus,.cform select:focus,.cform textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(30,90,232,.12)}
.cform__tip{font-size:12px;color:var(--muted);margin-top:12px;text-align:center}
.cform__ok{text-align:center;padding:30px 10px}
.cform__ok h3{font-size:20px;font-weight:700;margin-bottom:8px}
.cform__ok p{font-size:14px;color:var(--text-3);margin-bottom:18px}
.contact-cta{margin-top:40px;background:linear-gradient(120deg,#1E5AE8,#1636A8);border-radius:var(--radius-lg);padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.contact-cta p{font-size:20px;font-weight:700;color:#fff}

/* ---------- 报价弹窗 ---------- */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px}
.modal.is-open{display:flex}
.modal__overlay{position:absolute;inset:0;background:rgba(8,23,64,.55);backdrop-filter:blur(2px)}
.modal__panel{position:relative;width:100%;max-width:680px;background:#fff;border-radius:var(--radius-lg);padding:36px;box-shadow:0 30px 70px rgba(8,23,64,.35);animation:modalSlideIn .28s ease}
@keyframes modalSlideIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.modal__x{position:absolute;top:14px;right:16px;width:34px;height:34px;border:none;background:var(--bg-alt);border-radius:50%;font-size:22px;line-height:1;color:var(--text-3);cursor:pointer;transition:.2s;z-index:2}
.modal__x:hover{background:#E6ECF5;color:var(--text)}
.modal__header .eyebrow{display:inline-block}
.modal__header h3{font-size:24px;font-weight:700;margin:8px 0}
.modal__header p{font-size:14px;color:var(--text-3);margin-bottom:24px}

/* 弹窗两栏：表单左 + 微信二维码右 */
.modal__body{display:grid;grid-template-columns:1fr 200px;gap:28px;align-items:start}
.modal__field{margin-bottom:14px}
.modal__field label{display:block;font-size:14px;color:var(--text-2);font-weight:500}
.field__req{color:#E53E3E;font-weight:400;font-size:13px}
.modal__field input{width:100%;margin-top:8px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;color:var(--text);background:#fff;outline:none;transition:.2s}
.modal__field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(30,90,232,.12)}
.field__err{display:block;font-size:12px;color:#E53E3E;margin-top:4px;line-height:1.3}
.field__err:empty{display:none;margin:0}
.modal__form .btn--full{width:100%;margin-top:6px}
.modal__note{font-size:12px;color:var(--muted);margin-top:12px;text-align:center}

/* 微信二维码区 */
.modal__qr{text-align:center;background:var(--bg-alt);border-radius:var(--radius-card);padding:24px 18px;border:1px solid var(--border);align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center}
.modal__qr-img-wrap{width:140px;height:140px;margin:0 auto 12px;border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.modal__qr-img{width:100%;height:100%;object-fit:cover;display:block}
.modal__qr-fallback{width:140px;height:140px;background:#fff;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-3);font-size:13px}
.modal__qr-tip{font-size:13px;color:var(--text-3);line-height:1.5}
.modal__qr-tip::before{content:"";display:block;width:40px;height:2px;background:var(--primary);margin:0 auto 10px;border-radius:2px}

/* 提交成功提示 */
.modal__success{text-align:center;padding:30px 10px}
.modal__success-icon{width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.modal__success h3{font-size:20px;font-weight:700;margin-bottom:8px}
.modal__success p{font-size:14px;color:var(--text-3)}

/* ---------- 子页响应式补充 ---------- */
@media (max-width:1080px){
  .news-featured{grid-template-columns:1fr}
  .news-featured__side{flex-direction:row;gap:16px}
  .news-side-card{flex:1}
  .news-detail-layout{grid-template-columns:1fr 260px}
}
@media (max-width:900px){
  .contact-grid{grid-template-columns:repeat(2,1fr)}
  .contact-main{grid-template-columns:1fr}
  .map-box{min-height:300px}
  .subhero__title{font-size:32px}
  .news-featured__side{flex-direction:column}
  .news-item__link{gap:16px}
  .news-item__img{width:140px;height:100px}
  .news-detail-layout{grid-template-columns:1fr}
  .news-detail__side{order:-1}
  .news-detail__related{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
  .news-detail__related h4{grid-column:1/-1}
}
@media (max-width:680px){
  .modal__body{grid-template-columns:1fr}
  .modal__qr{flex-direction:row;gap:16px;padding:16px;text-align:left;justify-content:flex-start}
  .modal__qr-img-wrap,.modal__qr-fallback{width:100px;height:100px;flex-shrink:0}
  .modal__panel{padding:24px}
  .modal__qr-tip{font-size:12px}
  .modal__qr-tip::before{margin-left:0}
  .news-item__link{flex-direction:column;gap:0}
  .news-item__img{width:100%;height:160px;border-radius:0}
  .news-item__arrow{display:none}
}
@media (max-width:600px){
  .contact-grid{grid-template-columns:1fr}
  .news-tools{flex-direction:column;align-items:stretch}
  .search-box{max-width:100%}
  .modal__qr{flex-direction:column;align-items:center;text-align:center}
  .modal__qr-tip::before{margin-left:auto}
  .contact-cta{padding:28px 24px}
}

/* ===========================================================
   服务方案页：流程步骤 / 服务卡扩展 / 特性列表
   =========================================================== */
.grid--5{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.step-card{background:#fff;border-radius:var(--radius-card);padding:26px 22px;box-shadow:var(--shadow-card);text-align:center;transition:.25s;border:1px solid transparent;position:relative}
.step-card:hover{transform:translateY(-4px);border-color:#D8E3FA}
.step-card__no{font-family:"Outfit",sans-serif;font-size:28px;font-weight:800;color:var(--primary);opacity:.18;display:block;margin-bottom:8px}
.step-card h3{font-size:16px;font-weight:700;margin-bottom:8px}
.step-card p{font-size:13px;color:var(--text-3);line-height:1.6}

.s-card--full{display:flex;flex-direction:column}
.feat-list{list-style:none;padding:0;margin:14px 0 0;border-top:1px solid var(--border);padding-top:14px}
.feat-list li{font-size:13px;color:var(--text-3);line-height:1.8;padding-left:18px;position:relative}
.feat-list li::before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:700;font-size:12px}
.feat-list--2col{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}

/* ===========================================================
   成品产品页：产品详情 / 对比表
   =========================================================== */
.product-list{display:flex;flex-direction:column;gap:24px}
.product-detail{display:grid;grid-template-columns:auto 1fr;gap:28px;background:#fff;border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-card);border:1px solid transparent;transition:.25s}
.product-detail:hover{border-color:#D8E3FA}
.product-detail__icon{width:64px;height:64px;border-radius:16px;background:var(--primary-050);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.product-detail__body h3{font-size:20px;font-weight:700;margin-bottom:8px}
.product-detail__desc{font-size:15px;color:var(--text-3);line-height:1.6;margin-bottom:4px}
.product-detail .btn{margin-top:16px;align-self:flex-start}

.compare-table{overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}
.compare-table table{width:100%;border-collapse:collapse;background:#fff;min-width:560px}
.compare-table th,.compare-table td{padding:16px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}
.compare-table th{background:var(--bg-alt);font-weight:700;color:var(--navy);font-size:15px}
.compare-table th:nth-child(2){color:var(--primary)}
.compare-table td:first-child{font-weight:600;color:var(--text-2)}
.compare-table tr:last-child td{border-bottom:none}
.compare-table tr:hover td{background:#F8FAFF}

/* ===========================================================
   成功案例页：案例详情
   =========================================================== */
.case--detail .case__body{padding:18px 20px 22px}
.case--detail h3{font-size:17px;font-weight:700;margin:6px 0}
.case--detail .feat-list{margin-top:12px;padding-top:12px}

/* ===========================================================
   关于环众页：简介布局 / 时间线
   =========================================================== */
.about-intro{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}
.about-intro__text p{font-size:15px;color:var(--text-3);line-height:1.85;margin-bottom:16px}
.about-intro__text .btn{margin-top:8px}
.about-intro__stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.timeline{max-width:760px;margin:0 auto;position:relative;padding-left:32px}
.timeline::before{content:"";position:absolute;left:8px;top:4px;bottom:4px;width:2px;background:linear-gradient(to bottom,var(--primary),#D8E3FA)}
.timeline__item{position:relative;padding-bottom:32px}
.timeline__item:last-child{padding-bottom:0}
.timeline__year{position:absolute;left:-32px;top:0;font-family:"Outfit",sans-serif;font-size:15px;font-weight:700;color:var(--primary);background:#fff;padding:0 8px;border-radius:6px;border:2px solid var(--primary);width:42px;height:42px;display:flex;align-items:center;justify-content:center}
.timeline__body{padding-left:28px}
.timeline__body h3{font-size:17px;font-weight:700;margin-bottom:6px}
.timeline__body p{font-size:14px;color:var(--text-3);line-height:1.6}

/* ---------- 新组件响应式 ---------- */
@media (max-width:1080px){
  .grid--5{grid-template-columns:repeat(3,1fr)}
  .about-intro{grid-template-columns:1fr;gap:32px}
}
@media (max-width:900px){
  .grid--5{grid-template-columns:repeat(2,1fr)}
  .product-detail{grid-template-columns:1fr;gap:16px}
  .feat-list--2col{grid-template-columns:1fr}
  .about-intro__stats{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .grid--5{grid-template-columns:1fr}
  .about-intro__stats{grid-template-columns:1fr}
  .timeline{padding-left:24px}
  .timeline__year{width:36px;height:36px;font-size:13px;left:-24px}
  .timeline__body{padding-left:20px}
}
/* ============ 新闻列表三列 ============ */
.news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 24px;
}

.news-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,.06);
  transition: transform .25s ease, box-shadow .25s ease;
}

.news-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,.1);
}

.news-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.news-card__img {
  width: 100%;
  aspect-ratio: 16 / 9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #f7f9fc;
  position: relative;
}

.news-card__img span {
  display: none;
}

.news-card__body {
  padding: 18px 20px 22px;
}

.news-card__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  font-size: 13px;
  color: #8896a8;
}

.news-card__meta .tag {
  flex-shrink: 0;
}

.news-card__body h3 {
  font-size: 16px;
  line-height: 1.45;
  margin-bottom: 10px;
  color: #1a2332;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.news-card__body p {
  font-size: 14px;
  line-height: 1.6;
  color: #6b7b8f;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

.news-featured__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

@media (max-width: 991px) {
  .news-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .news-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .news-featured {
    flex-direction: column;
  }

  .news-featured__main,
  .news-featured__side {
    width: 100%;
  }
}
/* === 导航栏：全部强制单行 + 收紧间距 === */
.header__inner,
.header .container,
[class*="header__inner"],
[class*="nav__wrap"] {
  max-width: 1400px !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* 导航菜单：单行 + 收紧 */
.header__nav,
.nav,
[class*="header__nav"] {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
  font-size: 15px !important;
}

/* 每个菜单项：不换行 + 紧凑 padding */
.header__nav a,
.header__nav li,
.nav a,
.nav li,
[class*="nav__item"] {
  white-space: nowrap !important;
  padding: 0 10px !important;
  flex-shrink: 0 !important;
}

/* 电话那一项：不换行 + 不被压缩 */
.header__phone,
.header__phone span {
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
