:root{--bg:#f6f7fb;--fg:#14161c;--muted:#5b6170;--card:#fff;--line:#e3e6ee;--accent:#2f6fec;color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{--bg:#0d1017;--fg:#eef0f5;--muted:#a1a7b5;--card:#161a23;--line:#262b37;--accent:#7aa5ff}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif}
.top{display:flex;justify-content:space-between;align-items:center;max-width:1080px;margin:0 auto;padding:16px 20px}
.brand{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none;font-weight:600}
.brand img{border-radius:8px}
.lang{display:flex;gap:4px;border:1px solid var(--line);border-radius:999px;padding:3px}
.lang button{font:inherit;font-size:14px;border:0;background:none;color:var(--muted);padding:4px 12px;border-radius:999px;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.lang button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
main{max-width:1080px;margin:0 auto;padding:0 20px}
.hero{text-align:center;padding:48px 0 56px}
.hero-icon{border-radius:28px;box-shadow:0 12px 40px rgba(20,40,90,.25)}
h1{font-size:clamp(36px,6vw,60px);line-height:1.1;margin:24px 0 12px;letter-spacing:-.02em}
.tagline{font-size:clamp(18px,2.4vw,22px);color:var(--muted);max-width:36em;margin:0 auto}
.cta{margin:32px 0 12px}
.badge{display:inline-block;padding:12px 22px;border-radius:14px;background:var(--fg);color:var(--bg);font-weight:600}
.note,.req{color:var(--muted);font-size:14px;margin:10px 0 0}
h2{font-size:28px;text-align:center;margin:0 0 24px}
.grid{list-style:none;padding:0;margin:0 0 64px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grid li{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px 22px}
.grid h3{margin:0 0 6px;font-size:18px}
.grid p{margin:0;color:var(--muted)}
.foot{text-align:center;color:var(--muted);font-size:14px;padding:24px 20px 40px;border-top:1px solid var(--line)}
