@font-face{font-family:'IBM Plex Sans';font-weight:400;font-display:swap;src:url(fonts/ibm-plex-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:500;font-display:swap;src:url(fonts/ibm-plex-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:600;font-display:swap;src:url(fonts/ibm-plex-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:700;font-display:swap;src:url(fonts/ibm-plex-sans-latin-700-normal.woff2) format('woff2')}
:root{--brand:#1F4E79;--soft:#E3ECF4;--dim:#D0021B;--ink:#14202B;--muted:#5B6570;--s0:#DCE2E7;--s1:#F7F9FA;--s2:#fff;--line:#C3CBD2;--ok:#1E6B3A;--okbg:#E6F2EA;
  --sans:'IBM Plex Sans','Microsoft YaHei','PingFang SC','Noto Sans CJK SC',system-ui,sans-serif;--zh:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC','IBM Plex Sans',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.5 var(--sans);color:var(--ink);background:var(--s2)}
html[lang^=zh] body{font-family:var(--zh)}
[data-en],[data-zh]{}
html[lang^=zh] [data-en]{display:none}
html[lang=en] [data-zh]{display:none}
a{color:var(--brand)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;gap:20px;height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);white-space:nowrap}
.brand img{width:32px;height:32px}
.brand b{font-size:20px;font-weight:600;letter-spacing:-.02em}
.brand .zh{font-family:var(--zh);font-weight:700;letter-spacing:.12em;font-size:16px;padding-left:10px;border-left:2px solid var(--brand);line-height:1}
nav.top{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:15px}
nav.top a{text-decoration:none;color:var(--ink)}
.lang{display:flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--s2)}
.lang button{border:0;padding:6px 11px;background:transparent;font:inherit;font-size:14px;cursor:pointer;color:var(--ink)}
.lang button[aria-pressed=true]{background:var(--soft);color:var(--brand);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:6px;border:1px solid var(--brand);background:var(--brand);color:#fff!important;text-decoration:none;font-weight:600;cursor:pointer;font:inherit}
.btn.ghost{background:transparent;color:var(--brand)!important}
.hero{padding:72px 0 40px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:center}
.hero h1{margin:0 0 16px;font-size:44px;line-height:1.1;font-weight:600;letter-spacing:-.025em}
.hero p.lead{margin:0 0 28px;font-size:19px;color:var(--muted)}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}
.hero .cta small{display:block;width:100%;color:var(--muted);font-size:13px;margin-top:6px}
.sheetcard{background:var(--s0);border-radius:10px;padding:18px;box-shadow:inset 0 0 0 1px var(--line)}
.sheetcard img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 1px 0 var(--line),0 12px 32px rgba(20,30,40,.14)}
.sheetcard figcaption{margin:10px 2px 0;font-size:13px;color:var(--muted)}
.strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:40px 0}
.step{background:var(--s1);border:1px solid var(--line);border-radius:8px;padding:22px}
.step .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--soft);color:var(--brand);font-weight:600;font-size:14px;margin-bottom:12px}
.step h3{margin:0 0 6px;font-size:17px;font-weight:600}
.step p{margin:0;color:var(--muted);font-size:15px}
section.band{padding:56px 0;border-top:1px solid var(--line)}
section h2{margin:0 0 8px;font-size:30px;font-weight:600;letter-spacing:-.02em}
section p.sub{margin:0 0 28px;color:var(--muted);font-size:17px;max-width:720px}
.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 40px}
.features div h4{margin:0 0 4px;font-size:16px;font-weight:600}
.features div p{margin:0;color:var(--muted);font-size:15px}
.key{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:14px}
.key span{display:inline-flex;align-items:center;gap:8px}
.key i{display:inline-block;width:18px;height:4px;border-radius:2px}
.numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.numbers div{border-left:2px solid var(--brand);padding-left:14px}
.numbers b{display:block;font-size:30px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.numbers span{color:var(--muted);font-size:14px}
form.contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:720px}
form.contact label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500;color:var(--muted)}
form.contact label.full{grid-column:span 2}
form.contact input,form.contact textarea{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:5px;background:var(--s2);color:var(--ink)}
form.contact .hp{position:absolute;left:-9999px}
form.contact .done{grid-column:span 2;padding:10px 12px;border-radius:6px;background:var(--okbg);color:var(--ok)}
footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:13px}
footer .wrap{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
footer .grow{flex-grow:1}
@media (max-width:900px){.hero{grid-template-columns:1fr;padding-top:40px}.hero h1{font-size:34px}.strip,.features,.numbers,form.contact{grid-template-columns:1fr}form.contact label.full,form.contact .done{grid-column:span 1}nav.top a.hide{display:none}}
