:root{
  --bg:#0B1020;
  --fg:#E8EEF7;
  --muted:#9FB0D3;
  --link:#8AB4FF;
  --accent:#70F0C3;
  --card:#0E1426;
  --border:rgba(138,180,255,.18);
  --shadow:0 12px 36px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,'PingFang SC','Noto Sans SC',Segoe UI,Roboto,Helvetica,Arial;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1100px,92%);margin-inline:auto}
.container.narrow{width:min(900px,92%)}

/* 顶部栏 */
.site-header{
  position:sticky;top:0;z-index:50;
  display:flex;justify-content:space-between;align-items:center;
  padding:10px 14px;border-bottom:1px solid var(--border);
  backdrop-filter: blur(10px);
  background:linear-gradient(180deg, rgba(11,16,32,.85), rgba(11,16,32,.55));
}
.brand{display:flex;align-items:center;gap:8px;font-weight:800}
.brand .glyph{display:inline-flex;width:18px;height:18px;border:2px solid var(--fg);border-radius:50%;opacity:.9}
.brand-title{color:var(--fg)}
.topnav{display:flex;gap:16px;align-items:center}
.ghost{background:transparent;border:1px solid var(--border);color:var(--fg);padding:6px 10px;border-radius:10px;cursor:pointer}

/* 左侧进度条与圆点导航 */
.progress{position:fixed;left:14px;top:80px;display:flex;flex-direction:column;gap:10px;z-index:40}
.bar{width:4px;height:220px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}
.bar span{display:block;width:100%;height:0;background:linear-gradient(180deg, var(--link), var(--accent));border-radius:999px}
.dots{display:flex;flex-direction:column;gap:8px;align-items:center}
.dot{display:block;width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.18);border:1px solid var(--border)}
.dot.active{background:var(--accent);box-shadow:0 0 0 6px rgba(112,240,195,.15)}

/* 全屏面板 */
.panel{min-height:100svh;display:flex;align-items:center;padding:48px 0;border-bottom:1px solid var(--border);position:relative}
.panel-hero{padding:0}
.hero-media{position:absolute;inset:0;overflow:hidden;z-index:-1}
.hero-orb{position:absolute;inset:0;background:
  radial-gradient(900px 900px at 20% 30%, rgba(112,240,195,.18), transparent 60%),
  radial-gradient(900px 900px at 80% 70%, rgba(138,180,255,.2), transparent 60%);
  filter:blur(10px);animation:float 12s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px)}}
.hero-copy{padding:18svh 0 14svh}
.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:.9rem}
h1{font-size:clamp(34px,5.2vw,72px);line-height:1.1;margin:.25em 0}
.accent{color:var(--accent);text-shadow:0 0 22px rgba(112,240,195,.35)}
.lede{max-width:60ch;color:var(--muted);font-size:clamp(16px,1.4vw,18px)}
.cta{display:flex;gap:12px;margin-top:14px}
.btn{display:inline-block;padding:10px 14px;border-radius:12px;font-weight:700}
.btn-primary{background:var(--accent);color:#042016;box-shadow:0 6px 20px rgba(112,240,195,.25)}
.btn-outline{border:1px solid var(--border);color:var(--fg);background:transparent}

.panel h2{font-size:clamp(26px,3.4vw,40px);margin:0 0 12px}
.big{font-size:1.25rem}
.bullets{padding-left:18px}

.sticky{position:sticky;top:90px;margin-bottom:16px;background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));border:1px solid var(--border);border-radius:14px;padding:12px}
.muted{color:var(--muted)}

.steps{display:grid;gap:16px;margin-top:12px}
.step{border:1px solid var(--border);border-radius:14px;padding:16px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));box-shadow:var(--shadow);opacity:.6;transform:translateY(6px);transition:all .25s ease}
.step.visible{opacity:1;transform:translateY(0)}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.card{border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));padding:16px;box-shadow:var(--shadow)}
.card.hover{transition:transform .2s ease, box-shadow .2s ease}
.card.hover:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.55)}

.map{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.02)}

.site-footer{border-top:1px solid var(--border);padding:18px 0;background:linear-gradient(180deg, rgba(11,16,32,.55), rgba(11,16,32,.85))}
.foot-inner{display:flex;justify-content:space-between;align-items:center}
.backtop{display:inline-flex;width:32px;height:32px;border-radius:50%;align-items:center;justify-content:center;border:1px solid var(--border);color:var(--fg)}

/* 响应式 */
@media (max-width:960px){
  .progress{display:none}
  .hero-copy{padding:16svh 0 12svh}
  .foot-inner{flex-direction:column;gap:10px}
}
