@charset "utf-8";
/*!
 * 万联商务服务中心 - 企业官网样式表
 * 单文件、无外部依赖、压缩后可控制在 8KB 内
 */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --brand:#0b57d0;
  --brand-d:#083f9c;
  --brand-l:#e9f0fe;
  --accent:#00a884;
  --text:#16202e;
  --muted:#5c6b80;
  --line:#e4eaf4;
  --bg:#f5f8fd;
  --white:#fff;
  --r:12px;
  --sd:0 1px 3px rgba(16,42,88,.06),0 6px 18px rgba(16,42,88,.05);
  --sd-lg:0 12px 34px rgba(16,42,88,.12);
  --max:1200px;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  font:16px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  color:var(--text);background:var(--bg);
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .2s}
ul,ol{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
h1,h2,h3,h4{line-height:1.35;font-weight:700;color:var(--text)}

.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

/* ===== 顶部导航 ===== */
.topbar{background:var(--brand-d);color:#cfe0ff;font-size:13px;height:36px;line-height:36px}
.topbar .container{display:flex;justify-content:space-between;align-items:center}
.topbar a:hover{color:#fff}
.topbar .tb-r{display:flex;gap:18px}

.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}
.header .container{display:flex;align-items:center;justify-content:space-between;height:66px}

.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:.3px}
.logo .mark{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--brand),#2f86f6);color:#fff;display:grid;place-items:center;font-size:17px;font-weight:800;flex:none}
.logo small{display:block;font-size:11px;font-weight:500;color:var(--muted);letter-spacing:1.4px;text-transform:uppercase;line-height:1}

.nav{display:flex;align-items:center;gap:4px}
.nav a{padding:8px 15px;border-radius:8px;font-size:15px;font-weight:500;color:#2b3a51}
.nav a:hover{background:var(--brand-l);color:var(--brand)}
.nav a.on{color:var(--brand);font-weight:700;background:var(--brand-l)}

.nav-tel{display:inline-flex;align-items:center;gap:7px;background:var(--brand);color:#fff!important;padding:9px 16px;border-radius:9px;font-weight:700;font-size:14px;margin-left:8px}
.nav-tel:hover{background:var(--brand-d)}

.burger{display:none;width:42px;height:42px;border-radius:9px;border:1px solid var(--line);background:#fff}
.burger span{display:block;width:18px;height:2px;background:#22304a;margin:3px auto;border-radius:2px}

/* ===== 主视觉 ===== */
.hero{position:relative;overflow:hidden;background:linear-gradient(160deg,#eef4ff 0%,#f7fbff 45%,#eefaf6 100%);border-bottom:1px solid var(--line)}
.hero::after{content:"";position:absolute;right:-140px;top:-140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(11,87,208,.13),transparent 68%)}
.hero .container{position:relative;z-index:2;padding-top:76px;padding-bottom:76px;display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}

.hero .tagline{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #d7e4fb;color:var(--brand);font-size:13px;font-weight:600;padding:5px 14px;border-radius:99px;margin-bottom:20px}
.hero .tagline i{width:7px;height:7px;border-radius:50%;background:var(--accent);display:block}

.hero h1{font-size:40px;letter-spacing:-.5px;margin-bottom:18px}
.hero h1 em{font-style:normal;color:var(--brand)}
.hero .lead{font-size:17px;color:#43536b;max-width:560px;margin-bottom:28px}

.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:10px;font-weight:700;font-size:15px;transition:.2s}
.btn-p{background:var(--brand);color:#fff;box-shadow:0 8px 20px rgba(11,87,208,.24)}
.btn-p:hover{background:var(--brand-d);transform:translateY(-1px)}
.btn-o{background:#fff;color:var(--brand);border:1.5px solid #c6daf9}
.btn-o:hover{border-color:var(--brand);background:var(--brand-l)}

.hero-points{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:14px;color:#3c4c63}
.hero-points li{display:flex;align-items:center;gap:8px}
.hero-points li::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--accent);flex:none;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat}

.hero-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--sd-lg)}
.hero-card h2{font-size:17px;margin-bottom:6px}
.hero-card .sub{font-size:13px;color:var(--muted);margin-bottom:20px}

.contact-line{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px dashed var(--line)}
.contact-line:last-child{border-bottom:0}
.contact-line .ic{width:38px;height:38px;border-radius:10px;background:var(--brand-l);color:var(--brand);display:grid;place-items:center;flex:none;font-size:16px}
.contact-line .tx{flex:1;min-width:0}
.contact-line .tx b{display:block;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.5px}
.contact-line .tx span{font-family:"SF Mono",Consolas,"Courier New",monospace;font-size:17px;font-weight:700;color:var(--brand-d);letter-spacing:.6px;word-break:break-all}

.copy{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:#fbfcff;color:var(--muted);font-size:12px;flex:none;display:grid;place-items:center;transition:.18s}
.copy:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-l)}
.copy.done{background:var(--accent);border-color:var(--accent);color:#fff}

/* ===== 区块通用 ===== */
.sec{padding:74px 0}
.sec.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-head{text-align:center;max-width:760px;margin:0 auto 46px}
.sec-head .kicker{display:inline-block;font-size:13px;font-weight:700;letter-spacing:2px;color:var(--brand);text-transform:uppercase;margin-bottom:10px}
.sec-head h2{font-size:29px;margin-bottom:12px}
.sec-head p{color:var(--muted);font-size:15.5px}

.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}

.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px 24px;transition:.22s}
.card:hover{transform:translateY(-4px);box-shadow:var(--sd-lg);border-color:#cfe0fb}
.card .ic{width:48px;height:48px;border-radius:13px;background:var(--brand-l);color:var(--brand);display:grid;place-items:center;font-size:21px;font-weight:800;margin-bottom:16px}
.card h3{font-size:17.5px;margin-bottom:9px}
.card p{font-size:14.5px;color:var(--muted)}
.card ul{margin-top:12px}
.card ul li{font-size:14px;color:var(--muted);padding-left:16px;position:relative;line-height:1.9}
.card ul li::before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;border-radius:50%;background:var(--accent)}

/* 数据条 */
.stats{background:linear-gradient(135deg,var(--brand-d),var(--brand));border-radius:18px;padding:40px 24px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;color:#fff;text-align:center;box-shadow:var(--sd-lg)}
.stats b{display:block;font-size:34px;font-weight:800;letter-spacing:-.5px}
.stats span{font-size:13.5px;color:#cfe0ff}

/* 关于 */
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.about-wrap h2{font-size:28px;margin-bottom:16px}
.about-wrap p{color:var(--muted);margin-bottom:14px}
.about-wrap .quote{border-left:4px solid var(--brand);background:#fff;padding:16px 20px;border-radius:0 10px 10px 0;color:#33455e;font-size:15px;margin:20px 0}
.img-box{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sd-lg);background:#fff}
.img-box svg{display:block;width:100%;height:auto}

/* 流程 */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:s}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 22px;position:relative}
.step::before{counter-increment:s;content:"0" counter(s);font-size:30px;font-weight:800;color:#dbe7fb;line-height:1;display:block;margin-bottom:10px}
.step h3{font-size:16px;margin-bottom:8px}
.step p{font-size:14px;color:var(--muted)}

/* 新闻 */
.news-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:.22s}
.post:hover{transform:translateY(-4px);box-shadow:var(--sd-lg);border-color:#cfe0fb}
.post .thumb{height:150px;background:linear-gradient(135deg,#dce9ff,#eaf7f2);display:grid;place-items:center;color:var(--brand);font-size:34px;font-weight:800;letter-spacing:-1px}
.post .body{padding:20px 22px 24px;flex:1;display:flex;flex-direction:column}
.post .date{font-size:12.5px;color:var(--muted);margin-bottom:8px;letter-spacing:.4px}
.post h3{font-size:17px;margin-bottom:10px;line-height:1.5}
.post p{font-size:14px;color:var(--muted);flex:1}
.post .more{margin-top:14px;font-size:13.5px;font-weight:700;color:var(--brand)}

/* 文章正文 */
.article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:44px 46px;max-width:900px;margin:0 auto}
.article h1{font-size:29px;margin-bottom:14px}
.article .meta{font-size:13.5px;color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:26px}
.article h2{font-size:21px;margin:30px 0 12px;padding-left:13px;border-left:4px solid var(--brand)}
.article h3{font-size:17.5px;margin:22px 0 10px}
.article p{color:#3d4d64;margin-bottom:14px}
.article ul{margin:0 0 16px 4px}
.article ul li{color:#3d4d64;padding-left:18px;position:relative;margin-bottom:7px}
.article ul li::before{content:"";position:absolute;left:2px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.article .note{background:var(--brand-l);border:1px solid #d3e2fb;border-radius:10px;padding:16px 20px;color:#2b4670;font-size:14.5px;margin:20px 0}

.crumb{font-size:13.5px;color:var(--muted);padding:18px 0}
.crumb a:hover{color:var(--brand)}

/* 面包屑 / 分页 */
.page-hero{background:linear-gradient(150deg,#eef4ff,#f6fbff);border-bottom:1px solid var(--line);padding:52px 0 46px;text-align:center}
.page-hero h1{font-size:32px;margin-bottom:12px}
.page-hero p{color:var(--muted);max-width:720px;margin:0 auto;font-size:15.5px}

/* 表格 */
.tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;font-size:14.5px}
.tbl th,.tbl td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line)}
.tbl th{background:#f2f6fe;font-weight:700;color:#22304a;font-size:14px}
.tbl tr:last-child td{border-bottom:0}
.tbl td{color:var(--muted)}

/* FAQ */
.faq{max-width:860px;margin:0 auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:12px;overflow:hidden}
.faq summary{padding:16px 22px;font-weight:700;font-size:15.5px;cursor:pointer;list-style:none;position:relative;padding-right:48px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--brand);font-weight:400}
.faq details[open] summary::after{content:"−"}
.faq .ans{padding:0 22px 18px;color:var(--muted);font-size:14.5px}

/* 联系方式 */
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px}
.contact-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px}
.contact-box h2{font-size:20px;margin-bottom:6px}
.contact-box .hint{font-size:13.5px;color:var(--muted);margin-bottom:18px}
.big-line{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fbfdff}
.big-line .ic{width:44px;height:44px;border-radius:12px;background:var(--brand-l);color:var(--brand);display:grid;place-items:center;font-size:18px;flex:none}
.big-line .tx{flex:1;min-width:0}
.big-line .tx b{display:block;font-size:12.5px;color:var(--muted);font-weight:600}
.big-line .tx span{font-family:"SF Mono",Consolas,"Courier New",monospace;font-size:19px;font-weight:800;color:var(--brand-d);letter-spacing:.7px;word-break:break-all}
.map-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}
.map-box h2{font-size:18px;margin-bottom:14px}
.info-row{padding:12px 0;border-bottom:1px dashed var(--line);font-size:14.5px}
.info-row:last-child{border-bottom:0}
.info-row b{display:block;font-size:12.5px;color:var(--muted);font-weight:600;margin-bottom:2px}
.info-row span{color:#33455e}

/* 页脚 */
.footer{background:#eaf0fa;border-top:1px solid var(--line);padding:52px 0 0;font-size:14px}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px;padding-bottom:36px}
.footer h4{font-size:15px;margin-bottom:16px;position:relative;padding-bottom:9px}
.footer h4::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:3px;border-radius:2px;background:var(--brand)}
.footer p,.footer li{color:var(--muted);font-size:13.5px;line-height:2}
.footer a:hover{color:var(--brand)}
.f-nav{columns:2;column-gap:20px}
.f-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.f-tags a{background:#fff;border:1px solid var(--line);border-radius:99px;padding:4px 12px;font-size:12.5px;color:var(--muted)}
.f-tags a:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-l)}
.f-sitemap{border-top:1px solid #d8e2f2;padding:22px 0}
.f-sitemap h4{font-size:14px;margin-bottom:10px}
.f-bottom{border-top:1px solid #d8e2f2;padding:18px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted)}

/* 悬浮客服 */
.cs-fab{position:fixed;right:22px;bottom:26px;z-index:200;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,var(--brand),#2f86f6);color:#fff;display:grid;place-items:center;box-shadow:0 10px 26px rgba(11,87,208,.36);font-size:15px;font-weight:800;letter-spacing:-.5px}
.cs-fab:hover{transform:translateY(-2px)}
.cs-panel{position:fixed;right:22px;bottom:96px;z-index:201;width:310px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--sd-lg);padding:20px;display:none}
.cs-panel.open{display:block;animation:pop .22s ease}
@keyframes pop{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cs-panel h3{font-size:16px;margin-bottom:4px}
.cs-panel .sub{font-size:12.5px;color:var(--muted);margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.cs-item{display:flex;align-items:center;gap:10px;padding:9px 0}
.cs-item .tx{flex:1;min-width:0}
.cs-item .tx b{display:block;font-size:11.5px;color:var(--muted);font-weight:600}
.cs-item .tx span{font-family:"SF Mono",Consolas,monospace;font-size:14.5px;font-weight:700;color:var(--brand-d);word-break:break-all}
.cs-go{display:block;text-align:center;margin-top:14px;background:var(--brand);color:#fff;padding:11px;border-radius:9px;font-weight:700;font-size:14px}
.cs-go:hover{background:var(--brand-d)}

/* 返回顶部 */
.to-top{position:fixed;right:30px;bottom:96px;z-index:199;width:44px;height:44px;border-radius:11px;background:#fff;border:1px solid var(--line);box-shadow:var(--sd);display:none;place-items:center;font-size:16px;color:var(--brand)}
.to-top.show{display:grid}

/* 提示 */
.toast{position:fixed;left:50%;bottom:40px;transform:translate(-50%,20px);background:#16202e;color:#fff;padding:11px 22px;border-radius:9px;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:300}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* ===== 响应式 ===== */
@media (max-width:1080px){
  .hero .container{grid-template-columns:1fr;gap:36px;padding-top:52px;padding-bottom:52px}
  .hero h1{font-size:33px}
  .g4,.g3{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr);gap:26px}
  .about-wrap,.contact-grid{grid-template-columns:1fr;gap:30px}
  .steps{grid-template-columns:repeat(2,1fr)}
  .news-list{grid-template-columns:1fr 1fr}
  .f-grid{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:720px){
  body{font-size:15.5px}
  .topbar{display:none}
  .nav{position:fixed;left:0;right:0;top:66px;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 14px 16px;border-bottom:1px solid var(--line);box-shadow:var(--sd-lg);display:none}
  .nav.open{display:flex}
  .nav a{padding:12px 14px}
  .nav-tel{margin:8px 0 0;justify-content:center}
  .burger{display:block}
  .hero h1{font-size:26px}
  .hero .lead{font-size:15.5px}
  .sec{padding:50px 0}
  .sec-head h2{font-size:23px}
  .g4,.g3,.g2,.news-list,.steps{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr;padding:28px 18px}
  .stats b{font-size:27px}
  .article{padding:26px 20px}
  .article h1{font-size:22px}
  .article h2{font-size:18.5px}
  .page-hero h1{font-size:24px}
  .f-grid{grid-template-columns:1fr}
  .f-nav{columns:1}
  .cs-panel{right:14px;left:14px;width:auto;bottom:88px}
  .cs-fab{right:16px;bottom:18px;width:52px;height:52px}
  .to-top{right:22px;bottom:82px}
  .tbl{display:block;overflow-x:auto;white-space:nowrap}
}
