/* ── Base Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--blue:#1A5FD0;--cyan:#16C2D4;--dark:#11203A;--mid:#46566B;--light:#5B6878;--muted:#8A97A8;--border:#EEF2F7;--bg:#FAFBFD}
html{scroll-behavior:smooth}
body{background:#faf9f5;font-family:'Noto Sans SC',-apple-system,BlinkMacSystemFont,sans-serif;color:var(--dark);line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto}

/* ── Header / Nav ── */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
nav{max-width:1200px;margin:0 auto;padding:16px 32px;display:flex;align-items:center;gap:14px}
.nav-logo{display:flex;align-items:center;gap:12px;flex-shrink:0}
.nav-logo svg{width:38px;height:38px}
.nav-brand{display:flex;flex-direction:column;line-height:1}
.nav-brand-cn{font:900 21px 'Noto Sans SC';letter-spacing:1px}
.nav-brand-en{font:600 9px 'Sora';letter-spacing:2px;color:var(--muted);margin-top:3px}
.nav-links{margin-left:auto;display:flex;align-items:center;gap:34px}
.nav-links a{font:500 15px 'Noto Sans SC';color:var(--mid);white-space:nowrap;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--blue)}
.btn-primary{font:700 15px 'Noto Sans SC';color:#fff!important;background:var(--blue);padding:10px 22px;border-radius:8px;white-space:nowrap;transition:opacity .2s,transform .15s}
.btn-primary:hover{opacity:.9;transform:translateY(-1px)}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto;padding:4px;background:none;border:none}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--dark);border-radius:2px;transition:.25s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;flex-direction:column;background:#fff;border-top:1px solid var(--border);padding:12px 0}
.mobile-menu.open{display:flex}
.mobile-menu a{font:500 16px 'Noto Sans SC';color:var(--mid);padding:14px 24px;border-bottom:1px solid var(--border);transition:background .15s}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a:hover{background:#F4F8FF}
.mobile-menu .btn-mobile{color:var(--blue)!important;font-weight:700}

/* ── Footer ── */
footer{border-top:1px solid var(--border);background:var(--bg)}
.footer-inner{max-width:1200px;margin:0 auto;padding:54px 32px 36px;display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:40px}
.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer-logo svg{width:34px;height:34px}
.footer-logo span{font:900 20px 'Noto Sans SC';letter-spacing:1px}
.footer-desc{font:400 14px/1.8 'Noto Sans SC';color:var(--muted);max-width:300px}
.footer-col-title{font:700 14px 'Noto Sans SC';margin-bottom:16px}
.footer-links{display:flex;flex-direction:column;gap:11px}
.footer-links a,.footer-links span{font:400 14px 'Noto Sans SC';color:var(--muted);transition:color .2s}
.footer-links a:hover{color:var(--blue)}
.footer-qr{text-align:center}
.footer-qr img{width:120px;height:120px;border-radius:8px;border:2px solid var(--border)}
.footer-qr span{display:block;font:400 12px 'Noto Sans SC';color:var(--muted);margin-top:8px}
.footer-bottom{border-top:1px solid var(--border)}
.footer-bottom-inner{max-width:1200px;margin:0 auto;padding:22px 32px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.footer-bottom-inner span{font:400 13px 'Noto Sans SC';color:#A6B0BE}

/* ── Responsive Base ── */
@media(max-width:900px){
  nav{padding:14px 20px}
  .nav-links{display:none}
  .nav-toggle{display:flex}
  .footer-inner{grid-template-columns:1fr;gap:32px;padding:40px 20px 28px}
  .footer-bottom-inner{padding:18px 20px;flex-direction:column;gap:6px}
}
