/* 铨台芯 QT Chip — 全站样式 v2（无外部字体/CDN 依赖） */
:root{
  --navy:#0a2342;--navy-2:#0f2f57;--navy-3:#163d6e;--deep:#061529;
  --accent:#12a4b6;--accent-2:#0d8696;
  --ink:#1d2733;--ink-2:#4a5664;--ink-3:#7b8794;
  --line:#e2e7ee;--bg:#f4f6f9;--white:#fff;
  --radius:4px;--wrap:1280px;--hh:80px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.75;font-size:16px;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.anchor{scroll-margin-top:calc(var(--hh) + 10px)}

/* ---------- Header（固定；首页顶部透明，滚动后变实色） ---------- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(6,21,41,.92);transition:background .3s,box-shadow .3s}
.page-index .site-header{background:linear-gradient(rgba(6,21,41,.65),rgba(6,21,41,0))}
.page-index .site-header.scrolled,.site-header.scrolled{background:rgba(6,21,41,.97);box-shadow:0 2px 14px rgba(0,0,0,.25)}
.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:var(--hh);max-width:none;padding:0 48px}
.brand img{height:46px;width:auto}
.nav{display:flex;align-items:center;height:100%}
.nav>li{height:100%;display:flex;align-items:center}
.nav>li>a.top{display:block;padding:0 24px;line-height:var(--hh);color:rgba(255,255,255,.9);font-size:16px;position:relative}
.nav>li>a.top:after{content:"";position:absolute;left:24px;right:24px;bottom:0;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .25s}
.nav>li:hover>a.top:after,.nav>li.active>a.top:after{transform:scaleX(1)}
.nav>li:hover>a.top{color:#fff}
/* 下拉大菜单：满宽三栏（链接 / 图片 / 简介） */
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 18px 40px rgba(6,21,41,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}
.nav>li:hover .mega,.nav>li:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega .wrap{display:grid;grid-template-columns:260px 360px 1fr;gap:48px;padding-top:40px;padding-bottom:44px}
.m-name{font-size:22px;font-weight:600;color:var(--navy);padding-bottom:12px;margin-bottom:8px;border-bottom:2px solid var(--accent)}
.m-links a{display:flex;justify-content:space-between;padding:10px 4px;border-bottom:1px solid var(--line);color:var(--ink-2);font-size:15px}
.m-links a i{font-style:normal;color:var(--ink-3)}
.m-links a:hover{color:var(--accent-2);padding-left:10px;transition:padding .2s}
.m-pic{height:200px;overflow:hidden;border-radius:var(--radius)}
.m-pic img{width:100%;height:100%;object-fit:cover}
.m-en{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);margin-bottom:10px}
.m-txt p{color:var(--ink-2);font-size:15px;margin-bottom:22px;max-width:420px}
.li-lang{margin-left:16px}
a.lang{display:inline-block;line-height:1.4;padding:5px 14px;border:1px solid rgba(255,255,255,.45);border-radius:20px;color:#fff;font-size:13px}
a.lang:hover{border-color:var(--accent);color:var(--accent)}
.menu-btn{display:none;background:none;border:0;width:40px;height:40px;cursor:pointer}
.menu-btn span{display:block;width:24px;height:2px;margin:5px auto;background:#fff;transition:.2s}

/* ---------- 按钮 ---------- */
.btn{display:inline-block;padding:11px 32px;border-radius:24px;background:var(--accent);color:#fff;font-size:15px;transition:background .2s;border:0;cursor:pointer}
.btn:hover{background:var(--accent-2)}

/* ---------- Hero（满版） ---------- */
.hero{position:relative;height:100vh;min-height:600px;max-height:960px;overflow:hidden;background:var(--deep);color:#fff}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;pointer-events:none}
.slide.on{opacity:1;pointer-events:auto}
.slide .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 7s ease}
.slide.on .bg{transform:scale(1)}
.slide .wrap{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;padding-top:var(--hh)}
.slide .kicker{font-size:14px;letter-spacing:.25em;color:var(--accent);text-transform:uppercase;margin-bottom:16px}
.slide h1,.slide h2{font-size:54px;line-height:1.25;font-weight:600;max-width:720px}
.slide p{margin-top:22px;max-width:560px;color:rgba(255,255,255,.82);font-size:18px}
.slide .btn{margin-top:36px;align-self:flex-start}
.slide .kicker,.slide h1,.slide h2,.slide p,.slide .btn{opacity:0;transform:translateY(20px);transition:.8s ease}
.slide.on .kicker{opacity:1;transform:none;transition-delay:.2s}
.slide.on h1,.slide.on h2{opacity:1;transform:none;transition-delay:.35s}
.slide.on p{opacity:1;transform:none;transition-delay:.5s}
.slide.on .btn{opacity:1;transform:none;transition-delay:.65s}
.arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(6,21,41,.25);color:#fff;font-size:30px;line-height:46px;cursor:pointer;z-index:2;transition:.2s}
.arrow:hover{background:var(--accent);border-color:var(--accent)}
.arrow.prev{left:32px}.arrow.next{right:32px}
.dots{position:absolute;left:0;right:0;bottom:40px;display:flex;justify-content:center;gap:12px;z-index:2}
.dots button{width:40px;height:3px;border:0;background:rgba(255,255,255,.35);cursor:pointer}
.dots button.on{background:var(--accent)}

/* ---------- 区块与标题 ---------- */
.section{padding:96px 0}
.section.gray{background:var(--bg)}
.section.dark{background:var(--deep) url(../img/cta.svg) center/cover;color:#fff}
.ptitle{text-align:center;margin-bottom:56px}
.ptitle .en{font-size:13px;letter-spacing:.3em;color:var(--accent-2);text-transform:uppercase}
.ptitle h2{font-size:36px;font-weight:600;color:var(--navy);margin-top:4px;position:relative;padding-bottom:18px}
.ptitle h2:after{content:"";position:absolute;left:50%;bottom:0;width:40px;height:3px;margin-left:-20px;background:var(--accent)}
.ptitle p{color:var(--ink-3);margin:18px auto 0;max-width:760px}
.dark .ptitle h2{color:#fff}.dark .ptitle p{color:rgba(255,255,255,.65)}.dark .ptitle .en{color:var(--accent)}

/* 业务卡片 */
.biz{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.biz a{position:relative;display:block;height:520px;overflow:hidden;color:#fff;background:var(--navy-2)}
.biz .art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}
.biz a:hover .art{transform:scale(1.06)}
.biz .label{position:absolute;left:0;right:0;bottom:0;padding:36px 32px;background:linear-gradient(transparent,rgba(6,21,41,.95))}
.biz .label h3{font-size:24px;font-weight:600}
.biz .label .en{font-size:13px;color:rgba(255,255,255,.65);letter-spacing:.1em;text-transform:uppercase}
.biz .plus{position:absolute;right:32px;bottom:40px;width:40px;height:40px;border:1px solid rgba(255,255,255,.6);border-radius:50%;text-align:center;line-height:37px;font-size:22px}
.biz .over{position:absolute;inset:0;padding:48px 36px;background:rgba(13,134,150,.93);display:flex;flex-direction:column;justify-content:center;opacity:0;transition:opacity .4s}
.biz a:hover .over,.biz a:focus .over{opacity:1}
.biz .over h3{font-size:24px;margin-bottom:14px}
.biz .over p{color:rgba(255,255,255,.92);font-size:15px}
.biz .over .more{margin-top:28px;font-size:13px;letter-spacing:.2em}

/* 产品九宫格 */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.pcard{display:flex;align-items:center;gap:22px;background:#fff;padding:34px 30px;transition:.25s}
.pcard:hover{background:var(--navy);color:#fff}
.pcard .ico{flex:0 0 56px;height:56px;color:var(--navy-3)}
.pcard:hover .ico{color:var(--accent)}
.pcard h3{font-size:18px;color:inherit}
.pcard .en{font-size:12px;color:var(--ink-3)}
.pcard:hover .en{color:rgba(255,255,255,.6)}

/* 解决方案：左大右二 */
.featured{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;height:520px}
.featured a{position:relative;display:block;overflow:hidden;color:#fff;background:var(--navy)}
.featured img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}
.featured a:hover img{transform:scale(1.05)}
.featured .cap{position:absolute;left:0;right:0;bottom:0;padding:32px;background:linear-gradient(transparent,rgba(6,21,41,.92))}
.featured .fm .cap{padding:48px}
.featured h3{font-size:22px;font-weight:600}
.featured .fm h3{font-size:28px}
.featured p{color:rgba(255,255,255,.8);font-size:15px;margin-top:6px;max-width:560px}
.featured .fm .btn{margin-top:22px}
.fside{display:grid;grid-template-rows:1fr 1fr;gap:20px}

/* 应用领域 */
.apps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.app{position:relative;height:300px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.app img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.app:hover img{transform:scale(1.06)}
.app .cap{position:absolute;left:0;right:0;bottom:0;padding:24px;background:linear-gradient(transparent,rgba(6,21,41,.95))}
.app h3{font-size:19px}
.app p{font-size:14px;color:rgba(255,255,255,.7)}

/* 简介 + 特点 */
.intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.intro .en-k{font-size:13px;letter-spacing:.3em;color:var(--accent-2);text-transform:uppercase}
.intro h2{font-size:34px;color:var(--navy);font-weight:600;margin-bottom:18px}
.intro p{color:var(--ink-2);margin-bottom:14px}
.intro .btn{margin-top:10px}
.pic{overflow:hidden;border-radius:var(--radius)}
.pic img{width:100%;height:100%;object-fit:cover}
.feats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:64px}
.feats.three{grid-template-columns:repeat(3,1fr);margin-top:0}
.feat{background:#fff;border:1px solid var(--line);padding:34px 28px;transition:.25s}
.feat:hover{border-color:var(--accent);box-shadow:0 12px 30px rgba(10,35,66,.08);transform:translateY(-4px)}
.feat .ico{width:48px;height:48px;color:var(--accent-2);margin-bottom:18px}
.feat h3{font-size:18px;color:var(--navy);margin-bottom:8px}
.feat p{font-size:14px;color:var(--ink-2)}

/* CTA */
.cta{background:var(--navy) url(../img/cta.svg) center/cover no-repeat;color:#fff;text-align:center;padding:80px 0}
.cta h2{font-size:30px;font-weight:600}
.cta p{color:rgba(255,255,255,.75);margin:12px 0 30px}

/* ---------- 内页 ---------- */
.banner{height:440px;background:var(--navy) center/cover no-repeat;color:#fff;display:flex;align-items:center;text-align:center;padding-top:var(--hh)}
.banner .wrap{width:100%}
.banner .en{font-size:14px;letter-spacing:.3em;color:var(--accent);text-transform:uppercase}
.banner h1{font-size:44px;font-weight:600;margin:6px 0 10px}
.banner p{color:rgba(255,255,255,.78);font-size:17px}
.pagebar{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:var(--hh);z-index:20}
.pagebar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:64px;gap:20px;flex-wrap:wrap}
.crumb{font-size:14px;color:var(--ink-3);display:flex;gap:8px}
.crumb a:hover{color:var(--accent-2)}
.tabs{display:flex;flex-wrap:wrap}
.tabs a{display:block;padding:0 22px;line-height:64px;font-size:15px;color:var(--ink-2);position:relative}
.tabs a:hover{color:var(--accent-2)}
.tabs a:after{content:"";position:absolute;left:22px;right:22px;bottom:-1px;height:2px;background:var(--accent);transform:scaleX(0);transition:.2s}
.tabs a:hover:after{transform:scaleX(1)}

.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split.rev .pic{order:2}
.split.even{align-items:start}
.split .pic{height:400px}
.article h2{font-size:28px;color:var(--navy);font-weight:600;margin-bottom:14px}
.article h3{font-size:19px;color:var(--navy);margin:24px 0 10px}
.article p{color:var(--ink-2);margin-bottom:14px}
.svc-ico{width:56px;height:56px;color:var(--accent-2);margin-bottom:14px}
.dots-list li{position:relative;padding-left:20px;color:var(--ink-2);margin-bottom:8px}
.dots-list li:before{content:"";position:absolute;left:2px;top:.72em;width:7px;height:7px;background:var(--accent);transform:rotate(45deg)}
.narrow{max-width:900px}

/* 产品清单卡片 */
.plist{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pitem{background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy-3);padding:30px 28px;scroll-margin-top:calc(var(--hh) + 80px);transition:.25s}
.pitem:hover,.pitem:target{border-top-color:var(--accent);box-shadow:0 12px 30px rgba(10,35,66,.08)}
.phead{display:flex;gap:16px;align-items:center;margin-bottom:12px}
.phead .ico{flex:0 0 56px;height:56px;padding:10px;background:var(--bg);color:var(--navy-3)}
.phead h3{font-size:19px;color:var(--navy);line-height:1.4}
.phead .en{font-size:12px;color:var(--ink-3)}
.pitem p{color:var(--ink-2);font-size:15px;margin-bottom:12px}
.pitem .dots-list li{font-size:14px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.tags span{font-size:12px;padding:2px 10px;border-radius:12px;background:rgba(18,164,182,.1);color:var(--accent-2)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:s;position:relative}
.steps li{text-align:center;padding:0 14px;counter-increment:s;position:relative;color:var(--ink-2);font-size:14px}
.steps li:before{content:"0" counter(s);display:block;width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:var(--navy);color:#fff;font-size:22px;font-weight:700;line-height:72px;position:relative;z-index:1}
.steps li:after{content:"";position:absolute;top:36px;left:50%;width:100%;height:2px;background:var(--line)}
.steps li:last-child:after{display:none}
.steps li b{display:block;color:var(--navy);font-size:17px;margin-bottom:4px}
table.info{width:100%;border-collapse:collapse;font-size:15px;background:#fff}
table.info th,table.info td{border:1px solid var(--line);padding:14px 18px;text-align:left;vertical-align:top}
table.info th{width:190px;background:#eef2f6;color:var(--navy);font-weight:600}

/* 联系 */
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:56px}
.contact-grid .ptitle{text-align:left;margin-bottom:24px}
.contact-grid .ptitle h2:after{left:0;margin-left:0}
.cinfo li{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.cinfo .ico{flex:0 0 40px;height:40px;color:var(--accent-2)}
.cinfo b{display:block;color:var(--navy)}
.cinfo span{color:var(--ink-2)}
.todo{color:#b4690e;font-style:normal}
form.inq{background:var(--bg);padding:36px}
form.inq h3{color:var(--navy);margin-bottom:18px;font-size:22px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form.inq label{display:block;font-size:14px;color:var(--ink-2);margin-bottom:12px}
form.inq input,form.inq select,form.inq textarea{width:100%;margin-top:4px;padding:10px 12px;border:1px solid var(--line);border-radius:3px;font:inherit;font-size:15px;background:#fff}
form.inq input:focus,form.inq textarea:focus,form.inq select:focus{outline:2px solid rgba(18,164,182,.35);border-color:var(--accent)}
form.inq textarea{min-height:130px;resize:vertical}
form.inq .hp{position:absolute;left:-9999px}
.note{font-size:13px;color:var(--ink-3);margin-top:10px}
.note a{color:var(--accent-2)}

/* ---------- Footer（分栏网站地图 + 公司信息） ---------- */
.site-footer{background:#04101f;color:rgba(255,255,255,.62);font-size:14px}
.site-footer .top{display:grid;grid-template-columns:1fr 340px;gap:64px;padding:64px 32px 48px}
.fnav{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.fcol h4{color:#fff;font-size:16px;margin-bottom:16px;font-weight:600}
.fcol a{display:block;margin-bottom:9px}
.fcol a:hover{color:var(--accent)}
.fbrand{border-left:1px solid rgba(255,255,255,.1);padding-left:48px}
.fbrand img{height:44px;width:auto;margin-bottom:18px}
.fbrand .fco{color:#fff;margin-bottom:6px}
.fbrand .btn{margin-top:18px;padding:8px 26px;font-size:14px}
.site-footer .bottom{border-top:1px solid rgba(255,255,255,.08);font-size:13px}
.site-footer .bottom .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:20px;padding-bottom:20px}
.flinks a{margin-left:20px}
.flinks a:hover{color:var(--accent)}

/* ---------- 响应式 ---------- */
@media (max-width:1180px){
  .nav>li>a.top{padding:0 14px}
  .nav>li>a.top:after{left:14px;right:14px}
  .site-header .bar{padding:0 24px}
  .mega .wrap{grid-template-columns:220px 280px 1fr;gap:32px}
  .plist{grid-template-columns:repeat(2,1fr)}
  .apps{grid-template-columns:repeat(2,1fr)}
  .feats{grid-template-columns:repeat(2,1fr)}
  .fnav{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  :root{--hh:64px}
  .wrap{padding:0 20px}
  .menu-btn{display:block}
  .site-header,.page-index .site-header{background:rgba(6,21,41,.97)}
  .nav{position:fixed;top:var(--hh);left:0;right:0;bottom:0;height:auto;flex-direction:column;align-items:stretch;background:var(--deep);padding:8px 0;overflow-y:auto;transform:translateX(100%);transition:transform .3s}
  body.nav-open .nav{transform:none}
  body.nav-open .menu-btn span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.nav-open .menu-btn span:nth-child(2){opacity:0}
  body.nav-open .menu-btn span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .nav>li{height:auto;display:block}
  .nav>li>a.top{line-height:54px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav>li>a.top:after{display:none}
  .nav>li.active>a.top{color:var(--accent)}
  .mega{display:none}
  .li-lang{margin:20px 24px}
  a.lang{display:block;text-align:center;padding:9px}
  .brand img{height:38px}
  .hero{height:78vh;min-height:520px}
  .slide h1,.slide h2{font-size:32px}
  .slide p{font-size:16px}
  .arrow{display:none}
  .section{padding:64px 0}
  .ptitle{margin-bottom:36px}.ptitle h2{font-size:28px}
  .biz,.featured,.intro,.split,.contact-grid,.pgrid{grid-template-columns:1fr}
  .biz a{height:300px}
  .featured{height:auto}.featured a{height:280px}.fside{grid-template-rows:none}
  .split.rev .pic{order:0}.split .pic{height:260px}
  .banner{height:300px}.banner h1{font-size:30px}
  .pagebar{position:static}
  .pagebar .wrap{padding-top:12px;gap:4px}
  .tabs{margin-left:-12px}
  .tabs a{line-height:46px;padding:0 12px}
  .steps{grid-template-columns:1fr 1fr;gap:28px}
  .steps li:after{display:none}
  .site-footer .top{grid-template-columns:1fr;gap:36px}
  .fbrand{border-left:0;padding-left:0}
}
@media (max-width:560px){
  .plist,.apps,.feats,.feats.three,.frow{grid-template-columns:1fr}
  .fnav{grid-template-columns:1fr 1fr}
  table.info th{width:110px}
  form.inq{padding:24px}
  .flinks a{margin:0 16px 0 0}
}
