:root{
  --accent:#0e6bb5;--accent-strong:#0a5aa0;--accent-soft:#e5f1fb;
  --ink:#14251f;--ink-2:#44615a;--ink-3:#7c8f89;
  --line:#e2ebe7;--surface:#ffffff;--surface-soft:#f3f8fc;
  --dark:#062a4d;--warn:#d9822b;
  --radius:12px;--radius-lg:18px;
  --ff:"PingFang SC","Microsoft YaHei","Segoe UI",system-ui,-apple-system,sans-serif;
  --ff-mono:"SF Mono",Consolas,"Roboto Mono",monospace;
  --shadow:0 10px 30px rgba(12,64,55,.08);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
html,body{overflow-x:clip}
body{font-family:var(--ff);color:var(--ink);line-height:1.65;background:#fff}
img{max-width:100%;display:block}
a{color:var(--accent);text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
section{padding:clamp(2.4rem,5vw,4rem) 0}
.section-head{max-width:820px;margin-bottom:2rem}
.kicker{display:inline-block;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:.3rem .8rem;border-radius:999px;margin-bottom:.8rem;font-weight:600}
.section-head h1,.section-head h2{font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.2;letter-spacing:-.01em;margin-bottom:.6rem}
.section-head p{color:var(--ink-2);font-size:.98rem}
.section-head.center{text-align:center;margin-left:auto;margin-right:auto}
.lead{color:var(--ink-2)}
.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--accent);color:#fff;font-weight:600;padding:.7rem 1.5rem;border-radius:10px;border:0;font-size:.95rem;cursor:pointer;transition:.2s}
.btn:hover{background:var(--accent-strong)}
.btn--ghost{background:var(--surface);color:var(--accent);border:1px solid var(--accent)}
.btn--ghost:hover{background:var(--accent-soft)}
.btn--lg{padding:.85rem 1.9rem;font-size:1rem}

/* ===== 顶部导航 ===== */
.site-header{position:sticky;top:0;z-index:100;background:#fdfdfd;border-bottom:1px solid var(--line)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.05rem;color:var(--dark)}
.brand .logo{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));display:grid;place-items:center;color:#fff;font-weight:800;font-size:.72rem}
.brand .logo-img{height:36px;width:auto;object-fit:contain}
.nav-main{display:flex;gap:1.4rem;align-items:center}
.nav-main a{color:var(--ink-2);font-size:.95rem;font-weight:500;padding:.3rem 0;position:relative}
.nav-main a:hover,.nav-main a.active{color:var(--accent)}
.nav-main a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent);border-radius:2px}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:.4rem}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.nav-overlay{display:none}

/* ===== Hero ===== */
.hero{background:linear-gradient(180deg,#0a3557 0%,#082e4c 55%,#0a3355 100%);color:#eef5f2;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;left:50%;top:-20%;transform:translateX(-50%);width:120%;height:70%;background:radial-gradient(ellipse at center,rgba(20,120,150,.14),transparent 65%);pointer-events:none}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,4vw,3rem);align-items:center;padding:clamp(3rem,6vw,5rem) 0}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;color:#bfd8ef;border:1px solid rgba(255,255,255,.22);padding:.3rem .85rem;border-radius:999px;margin-bottom:1.1rem}
.hero h1{font-size:clamp(1.8rem,3.6vw,2.7rem);line-height:1.15;letter-spacing:-.02em;margin-bottom:1.1rem}
.hero h1 em{font-style:normal;color:#4fb0e8}
.hero p{font-size:1.02rem;color:#c7daec;max-width:52ch;margin-bottom:1.8rem}
.hero-cta{display:flex;gap:.9rem;flex-wrap:wrap}
.hero .btn--ghost{background:transparent;color:#d8e7f3;border-color:rgba(255,255,255,.4)}
.hero .btn--ghost:hover{background:rgba(255,255,255,.08)}
.hero-visual{display:flex;justify-content:center;align-items:center;width:100%}
.hero-photo{width:100%;max-width:500px;aspect-ratio:4/3;background:linear-gradient(180deg,#0b4a72,#083a5e);border-radius:20px;overflow:hidden;display:grid;place-items:center;color:#9dbdd8;border:1px solid rgba(255,255,255,.12);font-size:.9rem}
.hero-cards{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;width:100%;max-width:460px}
.hero-cards .hcard{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:1rem .9rem;backdrop-filter:blur(4px)}
.hero-cards .hcard-ic{width:34px;height:34px;border-radius:9px;background:rgba(79,176,232,.18);color:#7fc4ef;display:grid;place-items:center;margin-bottom:.6rem;font-size:.9rem}
.hero-cards .hcard b{display:block;font-size:.98rem;margin-bottom:.15rem;color:#eef6ff}
.hero-cards .hcard span{font-size:.8rem;color:#bfd8ef}

/* ===== 指标带 ===== */
.statband{background:var(--surface);border-block:1px solid var(--line)}
.statband-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.6rem 0}
.stat{text-align:center}
.stat b{display:block;font-size:clamp(1.3rem,2.4vw,1.7rem);color:var(--accent);font-family:var(--ff-mono);line-height:1.1}
.stat span{font-size:.83rem;color:var(--ink-2)}

/* ===== 产品卡片 ===== */
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
.prod{display:grid;grid-template-columns:148px 1fr;align-items:center;background:#eef2f6;border:1px solid #e2e9ef;border-radius:var(--radius-lg);overflow:hidden;transition:.25s;box-shadow:0 1px 0 rgba(12,64,55,.03)}
.prod:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#cfe5de}
.prod-media{height:108px;padding:.55rem;background:transparent;display:grid;place-items:center;color:var(--ink-3);font-size:.76rem}
.prod-media img{width:100%;height:100%;object-fit:contain}
.prod-body{padding:1.05rem 1.1rem 1.15rem}
.prod-tag{display:inline-block;font-size:.72rem;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:.12rem .7rem;margin-bottom:.6rem}
.prod h3{font-size:1.15rem;margin-bottom:.4rem}
.prod p{font-size:.9rem;color:var(--ink-2);margin-bottom:.9rem}
.prod .btn{font-size:.86rem;padding:.5rem 1.1rem}

/* ===== 通用区块 ===== */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.4rem,3vw,2.4rem);align-items:center}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3,1.5rem)}
.soft{background:var(--surface-soft);border-radius:var(--radius-lg);padding:clamp(1.3rem,3vw,2rem)}
.bg-soft{background:var(--surface-soft)}

/* 特征列表 */
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.feat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem}
.feat .ic{width:40px;height:40px;border-radius:9px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:.8rem}
.feat h3{font-size:1rem;margin-bottom:.35rem}
.feat p{font-size:.87rem;color:var(--ink-2)}

/* 步骤 */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem;counter-reset:st}
.step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;position:relative}
.step .n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;margin-bottom:.6rem}
.step b{display:block;margin-bottom:.25rem}
.step span{font-size:.82rem;color:var(--ink-2)}

/* 表格美化 */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.table-wrap table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px}
.table-wrap caption{text-align:left;font-weight:700;font-size:.98rem;padding:1rem 1.2rem .6rem;color:var(--ink)}
.table-wrap th,.table-wrap td{padding:.72rem 1.1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table-wrap thead th{background:linear-gradient(180deg,#eef4fb,#e3ebf6);font-size:.85rem;color:#0a5aa0;font-weight:600;border-bottom:1px solid #d6e2f0}
.table-wrap tbody tr:nth-child(even){background:#f7fafd}
.table-wrap tbody tr:hover{background:var(--accent-soft)}
.table-wrap tbody th[scope=row]{font-weight:600;color:var(--ink);background:#f3f8fc;border-right:1px solid var(--line);white-space:nowrap}
.num{font-variant-numeric:tabular-nums}

/* ===== 页脚 ===== */
.site-footer{background:var(--dark);color:#b7c9db;margin-top:2rem}
.site-footer .container{padding-top:3rem;padding-bottom:2rem}
.footer-grid{display:grid;grid-template-columns:2fr 1.2fr 1.2fr 1.4fr;gap:2rem;margin-bottom:2rem}
.footer-grid h4{color:#eef5f2;font-size:.95rem;margin-bottom:.9rem}
.footer-grid a{display:block;color:#9fb8b0;font-size:.89rem;padding:.18rem 0}
.footer-grid a:hover{color:#fff}
.f-footer{color:#6f8a81;font-size:.8rem;padding-bottom:.4rem}
.footer-note{border-top:1px solid rgba(255,255,255,.1);padding-top:1.2rem;font-size:.8rem;color:#6f8a81}
/* footer 美化增强 */
.footer-brand p{font-size:.88rem;line-height:1.9;color:#9fb8b0;max-width:34ch}
.footer-badges{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}
.footer-badges span{font-size:.72rem;color:#cfe3e0;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.22rem .7rem;letter-spacing:.03em}
.footer-col a{display:flex;align-items:baseline;gap:.5rem;color:#9fb8b0;font-size:.89rem;padding:.2rem 0;text-decoration:none;line-height:1.5}
.footer-col a:hover{color:#fff}
.footer-col a .fi{flex:none;color:#4fb0e8;font-size:.78rem;width:1rem}
.footer-col .f-nowrap{white-space:nowrap}
.footer-contact p{display:flex;gap:.5rem;align-items:flex-start;font-size:.88rem;line-height:1.7;margin:.22rem 0;color:#9fb8b0}
.footer-contact .fc-ic{flex:none;color:#4fb0e8;width:1.1rem;margin-top:.1rem}
.footer-contact .fc-val{min-width:0}
.footer-contact .f-nowrap{white-space:nowrap}
.footer-qr{margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:.8rem}
.footer-qr .qr-box{width:84px;height:84px;border-radius:8px;background:#fff;display:grid;place-items:center;flex:none;overflow:hidden}
.footer-qr .qr-box{position:relative}
.footer-qr .qr-box img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:auto;position:relative;z-index:2;-webkit-user-drag:none;user-drag:none;user-select:auto}
.footer-qr .qr-box .qr-ph{font-size:.68rem;color:#7a8a9a;text-align:center;padding:.3rem;line-height:1.5}
.footer-qr .qr-txt b{display:block;color:#eef5f2;font-size:.86rem;margin-bottom:.25rem}
.footer-qr .qr-txt span{font-size:.75rem;color:#8aa0b0;line-height:1.6}
.footer-qr .qr-item{display:grid;gap:.35rem;justify-items:center;text-align:center;color:#8aa0b0;font-size:.72rem}

/* ===== 下拉菜单 ===== */
.nav-drop{position:relative;display:flex;align-items:center}
.nav-drop .drop{position:absolute;top:100%;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.85rem .55rem .55rem;min-width:230px;display:none;z-index:130}
.nav-drop:hover .drop,.nav-drop:focus-within .drop{display:block}
.drop-l{display:block!important;border-bottom:0!important;padding:.55rem .8rem;border-radius:8px;font-size:.9rem;color:var(--ink)!important;width:100%}
.drop-l:hover{background:var(--accent-soft);color:var(--accent)!important}
.drop-l small{display:block;color:var(--ink-3);font-size:.76rem}

/* ===== 移动端 ===== */
.mobnav{position:fixed;left:0;right:0;bottom:0;z-index:120;display:none;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);box-shadow:0 -4px 20px rgba(0,0,0,.06);justify-content:space-around;padding:.4rem .2rem calc(.4rem + env(safe-area-inset-bottom));border-top:1px solid var(--line)}
.mobnav a{display:flex;flex-direction:column;align-items:center;gap:.16rem;font-size:.66rem;color:var(--ink-2);padding:.2rem .4rem}
.mobnav a.active,.mobnav a.hot{color:var(--accent)}
.mobnav svg{width:20px;height:20px}

@media(max-width:900px){
  .nav-overlay{display:block;position:fixed;inset:0;z-index:120;background:rgba(8,16,32,.55);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s .3s}
  .nav-overlay.show{opacity:1;visibility:visible;transition:opacity .3s ease}
  .nav-main{position:fixed;top:0;right:0;bottom:0;width:min(300px,84vw);height:100dvh;max-height:100dvh;background:#fff;flex-direction:column;align-items:stretch;gap:.3rem;padding:4.7rem .9rem calc(1.5rem + env(safe-area-inset-bottom));transform:translateX(100%);transition:transform .3s ease,visibility 0s .3s;z-index:130;visibility:hidden;pointer-events:none;overflow-y:auto;overscroll-behavior:contain}
  .nav-main.open{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .3s ease}
  .nav-main a{width:100%;font-size:1.03rem;padding:.72rem .85rem;border-radius:10px;line-height:1.3;border-bottom:0;transition:background .2s,color .2s}
  .nav-main a:hover,.nav-main a.active{background:#e6f0fb;color:#0a4f8a}
  .nav-main .nav-drop{display:block;width:100%}
  .nav-main .nav-drop>a{font-weight:700;color:#16233a;display:flex;justify-content:space-between;align-items:center}
  .nav-main .nav-drop .drop{position:relative;z-index:2;background:transparent;border-radius:0;padding:.05rem 0 .2rem .85rem;gap:0;margin:.05rem 0 0 0;display:grid;grid-template-columns:1fr;border-left:0;pointer-events:auto}
  .nav-main .nav-drop .drop a{border-radius:0;padding:.5rem .4rem;font-size:.9rem;background:transparent;border:0;text-align:left;display:flex;justify-content:space-between;align-items:center;width:100%;box-shadow:none;transition:background .12s}
  .nav-main .nav-drop .drop a small{font-size:.68rem;color:#93a0b3;font-weight:400;flex-shrink:0;margin-left:.5rem}
  .nav-drop .drop{position:static;transform:none;display:none;box-shadow:none;border:0;padding:0 0 .4rem .8rem;min-width:0}
  .nav-main .nav-drop:hover .drop,.nav-main .nav-drop:focus-within .drop{display:none;box-shadow:none}
  .nav-main .nav-drop.open .drop{display:block;display:grid}
  .drop-l{padding:.5rem .4rem}
  .mnav-head{position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(130deg,#0a4f8a,#0e6bb5);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 1.05rem;z-index:3}
  .mnav-head span{font-size:.98rem;font-weight:700;letter-spacing:.04em}
  .mnav-close{background:none;border:0;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;padding:.2rem .3rem}
  .nav-main .nav-drop>a{padding-top:.7rem}
  .nav-toggle{display:block;z-index:120}
  .hero-inner{grid-template-columns:1fr;padding-top:2.4rem}
  .hero-visual{order:-1}
  .prod-grid,.grid-2{grid-template-columns:1fr}
  .statband-inner{grid-template-columns:repeat(2,1fr);row-gap:1.2rem}
  .footer-grid{grid-template-columns:1fr 1fr}
  .mobnav{display:flex}
  body{padding-bottom:60px}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr}
}

/* ===== 框架固定色补丁 =====
   供产品页/独立单页在整站框架内显示时统一 topbar / 页脚 / 移动端导航配色；
   使用写死青绿色值，不依赖会被页面局部 :root 覆盖的变量，避免破坏产品正文原色。 */
.site-header{border-bottom:1px solid #e2ebe7}
.brand{color:#062a4d}
.brand .logo{background:linear-gradient(135deg,#0e6bb5,#0a5aa0)}
.nav-main a{color:#44615a}
.nav-main a:hover,.nav-main a.active{color:#0e6bb5}
.nav-main a.active::after{background:#0e6bb5}
.nav-toggle span{background:#14251f}
.nav-drop .drop{border:1px solid #e2ebe7;border-radius:12px;box-shadow:0 10px 30px rgba(12,64,55,.08)}
.drop-l{color:#14251f!important}
.drop-l:hover{background:#e5f1fb;color:#0e6bb5!important}
.drop-l small{color:#7c8f89}
.mobnav{border-top:1px solid #e2ebe7}
.mobnav a{color:#44615a}
.mobnav a.active,.mobnav a.hot{color:#0e6bb5}
.site-footer{background:#062a4d}
/* ===== 产品页自身子导航条 =====
   显示在整站 topbar 之下，承接产品页内部各区块的锚点导航；
   参考整站品牌色写死，规避产品页局部 :root 覆盖。 */
.product-nav{position:sticky;top:64px;z-index:95;background:#f5f9f7;border-bottom:1px solid #e2ebe7;-webkit-transform:translateZ(0)}
.product-nav .container{display:flex;align-items:center;gap:.25rem;overflow-x:auto;padding:.4rem max(1rem,calc((100% - 1180px)/2));scrollbar-width:none;-ms-overflow-style:none}
.product-nav .container::-webkit-scrollbar{display:none}
.product-nav a{flex:none;font-size:.86rem;color:#44615a;padding:.42rem .9rem;border-radius:999px;font-weight:500;white-space:nowrap;transition:all .2s}
.product-nav a:hover{color:#0e6bb5;background:#e5f1fb}
.product-nav a.active{color:#fff;background:linear-gradient(135deg,#0e6bb5,#0a5aa0)}
.product-nav .pn-title{flex:none;font-size:.85rem;font-weight:700;color:#062a4d;margin-right:.4rem;white-space:nowrap}
@media(max-width:600px){.product-nav{top:64px}.product-nav .pn-title{display:none}}

.section-more{margin-top:1.2rem;text-align:right}
.section-more a{display:inline-flex;align-items:center;gap:.3rem;font-size:.9rem;font-weight:600;color:var(--accent);padding:.5rem .9rem;border:1px solid var(--line);border-radius:999px;background:#fff}
.section-more a:hover{border-color:var(--accent);background:var(--accent-soft)}

/* ===== 详情/深入了解区（整站共享，产品页用） ===== */
  .spec-narrow,.order-narrow{max-width:820px;margin-inline:auto}
  .case-list-compact{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
  .case-list-compact .case{border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;background:#fff}
  .case-list-compact .case-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
  .case-list-compact .case-head .tag{background:var(--accent);color:#fff;font-size:.68rem;padding:.2rem .55rem;border-radius:999px;letter-spacing:.02em}
  .case-list-compact .case-head h3{font-size:1.02rem;margin:0}
  .case-list-compact .case-body{margin-top:.55rem;color:var(--ink-2);font-size:.93rem}
  .case-list-compact .case-body p{margin:.25rem 0}
  .case-list-compact .case-need{color:var(--ink-3);font-size:.86rem}
  .placeholder-badge{font-size:.72rem;color:var(--ink-3);background:var(--surface-soft);border:1px dashed var(--line);padding:.25rem .7rem;border-radius:999px}
  .deepdive{padding-block:2.4rem;background:linear-gradient(180deg,#f3f8f5,#eef5f1);border-top:1px solid #e2ebe7;border-bottom:1px solid #e2ebe7}
  .dd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:1.2rem}
  .dd{border:1px solid #dfe9e4;border-radius:var(--radius);padding:1.5rem 1.3rem;background:#fff;display:flex;flex-direction:column;gap:.45rem;text-decoration:none;color:inherit;box-shadow:0 2px 12px rgba(21,48,42,.05);transition:transform .18s ease,box-shadow .18s ease}
  .dd:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(21,48,42,.10)}
  .dd-ic{width:40px;height:40px;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.05rem;margin-bottom:.2rem}
  .dd h3{margin:0;font-size:1.08rem}
  .dd p{color:var(--ink-2);font-size:.9rem;margin:0;flex:1}
  .dd-links{display:flex;gap:.45rem;flex-wrap:wrap}
  .dd-links a{font-size:.8rem;padding:.3rem .65rem;border:1px solid var(--line);border-radius:999px;color:var(--accent);text-decoration:none;background:#fff}
  .dd-links a:hover{border-color:var(--accent)}
  .dd-cta{font-weight:600;color:var(--accent);font-size:.9rem}
  .dd-btn{display:inline-block;margin-top:.4rem;padding:.6rem 1.1rem;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;font-size:.9rem;text-align:center}
  .dd-btn:hover{background:var(--ink)}
  .dd--cta{background:var(--ink);border-color:var(--ink);color:#fff}
  .dd--cta p{color:#cfe0d9}
  .dd--cta .dd-ic{background:#fff;color:var(--ink)}
  @media(max-width:860px){.dd-grid{grid-template-columns:1fr}.case-list-compact{grid-template-columns:1fr}.adv-grid,.app-grid{grid-template-columns:1fr}}

/* 吸顶子导航当前区块高亮（scrollspy） */
.product-nav a.on{color:var(--accent);background:var(--accent-soft);border-radius:999px;font-weight:600}
/* 卡片网格等高对齐 */
.adv-grid .adv,.app-grid .app,.func-grid .fstep{display:flex;flex-direction:column}
.adv-grid .adv p,.app-grid .app p,.func-grid .fstep p{flex:1;margin:0}
/* 产品图通用样式 */
.pimg{width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line);display:block;box-shadow:var(--shadow-sm)}
.pimg-cap{font-size:.78rem;color:var(--ink-3);text-align:center;margin-top:.5rem}

/* 底部 CTA BANNER（整站统一） */
.cta-band{position:relative;overflow:hidden;text-align:center;background:linear-gradient(140deg,#0a3355,#0a5aa0);color:#eef5f2;border-radius:22px;padding:clamp(2rem,4vw,3rem) 1.5rem 2.2rem}
.cta-band::before{content:"";position:absolute;left:-6%;top:-40%;width:36%;height:140%;background:radial-gradient(circle,rgba(79,176,232,.28),transparent 65%);pointer-events:none}
.cta-band::after{content:"";position:absolute;right:-8%;bottom:-50%;width:40%;height:150%;background:radial-gradient(circle,rgba(255,255,255,.10),transparent 62%);pointer-events:none}
.cta-band>*{position:relative;z-index:1}
.cta-head h2{font-size:clamp(1.35rem,3vw,1.9rem);margin-bottom:.5rem}
.cta-head h2 b{color:#7fc4ef;font-weight:700}
.cta-head p{color:#c7daec;font-size:.95rem;margin-bottom:1.4rem}
.cta-actions{margin-bottom:1.4rem}
.btn--cta{background:var(--accent);box-shadow:0 8px 22px rgba(14,107,181,.35)}
.btn--cta:hover{background:var(--accent-strong)}
.cta-tips{display:flex;justify-content:center;flex-wrap:wrap;gap:.6rem 1.2rem;font-size:.82rem;color:#bfd8ef}
.cta-tips span{display:inline-flex;align-items:center;gap:.35rem}
@media(max-width:520px){.cta-tips{gap:.5rem .8rem;font-size:.78rem}}

/* 资质证书 */
.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-top:1.4rem}
.cert{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.5rem 1.2rem;text-align:center}
.cert .cert-ic{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto .8rem;font-size:1.2rem}
.cert b{display:block;font-size:1.02rem;margin-bottom:.3rem}
.cert span{font-size:.8rem;color:var(--ink-3)}
/* 地图 */
.map-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:1.4rem;align-items:center;margin-top:.4rem}
.map-box{border:1px solid var(--line);border-radius:16px;overflow:hidden;min-height:300px;position:relative;background:linear-gradient(160deg,#eaf2fb,#dfecf7)}
.map-box iframe{width:100%;height:100%;min-height:300px;border:0;display:block}
.map-info h4{margin-bottom:.8rem}
.map-info p{color:var(--ink-2);font-size:.92rem;margin-bottom:.5rem;line-height:1.5}
.map-info a{margin-top:.5rem;display:inline-flex}
@media(max-width:720px){.map-wrap{grid-template-columns:1fr}}

.cert-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.6rem}
.cert-gallery figure{margin:0;background:#fff;border:1px solid var(--line,#dfe9e5);border-radius:14px;padding:.7rem .7rem .9rem;box-shadow:0 10px 24px rgba(6,53,87,.08);display:flex;flex-direction:column}
.cert-gallery .cg-frame{flex:1;min-height:360px;border-radius:10px;background:linear-gradient(160deg,#f3f7fa,#e8f0f4);display:grid;place-items:center;overflow:hidden}
.cert-gallery img{max-width:100%;max-height:100%;object-fit:contain;background:transparent}
.cert-gallery figcaption{text-align:center;padding-top:.8rem}
.cert-gallery figcaption b{display:block;color:var(--ink,#17324b);font-size:.98rem}
.cert-gallery figcaption span{color:var(--ink-3,#7a8f9e);font-size:.82rem}
@media(max-width:760px){.cert-gallery{grid-template-columns:1fr}.cert-gallery .cg-frame{min-height:300px}}

/* contact 联系卡片 */
.c-item{display:flex;gap:.8rem;align-items:flex-start;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;padding:.95rem 1.05rem;margin-bottom:.8rem}
.c-item .ic{flex:none;width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.c-item .ic svg{width:20px;height:20px}
.c-item b{display:block;color:var(--ink);font-size:.95rem;margin-bottom:.25rem;font-weight:700}
.c-item div>div>span{display:block;color:var(--ink-2);font-size:.9rem;line-height:1.55}
.c-item .c-en{opacity:.75;font-size:.8rem;margin-top:.15rem}

.footer-brand .footer-logo{height:42px;width:auto;object-fit:contain;margin-bottom:.6rem}
.footer-contact .fc-person{color:#eef5f2;font-weight:700;font-size:.86rem}
.footer-contact .fc-p2{margin-top:.6rem}
.footer-contact .fc-addr{margin-top:.6rem}

.footer-contact .fc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.4rem}
.footer-contact small{display:block;color:#7f969f;font-size:.66rem;line-height:1.4;margin-top:.1rem}

.nav-main .nav-drop .drop a:hover{background:#eef4fb;color:#0a4f8a}
  .nav-main .nav-drop>a .mnav-arr{transition:transform .25s ease;font-size:.82em;margin-left:.4rem;color:#7f8ca3}
  .nav-main .nav-drop.open>a .mnav-arr{transform:rotate(180deg);color:#0a4f8a}
  .nav-main .nav-drop .drop a:hover{background:#eef4fb;color:#0a4f8a}
/* 二维码点击放大 lightbox，便于长按/扫码 */
.qr-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(6,12,20,.82);display:none;align-items:center;justify-content:center;flex-direction:column;gap:1rem}
.qr-lightbox.show{display:flex}
.qr-lightbox img{width:min(78vw,300px);background:#fff;padding:14px;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.4)}
.qr-lightbox .lb-tip{color:#cfe3f5;font-size:.82rem;letter-spacing:.02em}
.qr-lightbox .lb-close{position:absolute;top:16px;right:16px;font-size:1.8rem;line-height:1;color:#fff;background:rgba(255,255,255,.14);border:0;border-radius:50%;width:42px;height:42px;cursor:pointer}

/* ===== 新统一 footer（footer-top + f-mid）===== */
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.3rem;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:1.5rem;flex-wrap:wrap}
.footer-top .ft-brand{display:flex;align-items:center;gap:.9rem}
.site-footer .footer-logo{width:46px;height:46px;object-fit:contain;background:#fff;border-radius:10px;padding:5px}
.footer-top b{color:#eef4fa;font-size:1.02rem;display:block}
.footer-top p{color:#8fa7bd;font-size:.82rem;margin:0}
.ft-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--accent);color:#fff!important;text-decoration:none;padding:.58rem 1.15rem;border-radius:8px;font-weight:600;font-size:.9rem}
.ft-btn:hover{background:var(--accent-strong)}
.f-mid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.2fr;gap:2rem;padding-bottom:1.6rem}
.f-mid-col h4{color:#eef4fa;font-size:.92rem;margin:0 0 .8rem;text-transform:none;letter-spacing:.02em}
.f-mid-col a{display:block;color:#a9bccd;text-decoration:none;padding:.22rem 0;font-size:.88rem}
.f-mid-col a:hover{color:#7cc0f0}
.f-col-brand p{color:#8fa7bd;line-height:1.6;margin:0 0 .9rem}
.footer-qr{display:flex;gap:1rem;margin-top:.9rem}
.footer-qr .qr-box{margin:0;text-align:center}
.footer-qr .qr-box img{width:88px;height:88px;object-fit:contain;background:#fff;border-radius:8px;padding:4px;display:block;margin-bottom:.3rem;-webkit-user-drag:none;-webkit-touch-callout:none}
.footer-qr figcaption{font-size:.74rem;color:#8fa7bd}
.f-mid-col .fc-line{margin:0 0 .55rem;color:#a9bccd;line-height:1.5}
.f-footer{border-top:1px solid rgba(255,255,255,.09);padding-top:1.2rem;font-size:.8rem;color:#7e93a8;display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}
.f-footer a{color:#7e93a8;text-decoration:none}
@media(max-width:900px){.f-mid{grid-template-columns:1fr 1fr}.footer-top{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.f-mid{grid-template-columns:1fr}}
