/* ============================================================
 * 添机 · 基金智参 官网（门户 v3 · 全模块逐个独立介绍）
 * 深色大厂风 + Hero（左介绍右真机截图）+ 19 功能分 5 梯队逐屏图文
 * ============================================================ */
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  /* 深蓝星空底(对齐基金智参 App tokens: --bg #060a18): 顶部双色晕染 + 纵向渐深, 粒子 canvas 衬在其上 */
  background:
    radial-gradient(1100px 620px at 28% -160px, rgba(86,64,220,.20), transparent 65%),
    radial-gradient(900px 560px at 80% -220px, rgba(48,90,255,.13), transparent 65%),
    linear-gradient(180deg,#0a1026 0%,#070b1c 46%,#060a18 100%);
  background-color:#060a18;
  color:#eef0fa;
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
#particle-canvas { transform:translateZ(0); }
a { text-decoration:none; color:inherit; }
img { max-width:100%; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; border-radius:12px; font-weight:700; cursor:pointer; transition:all .2s; border:none; }
.btn-primary { background:linear-gradient(135deg,#6a5cff,#9a5cff); color:#fff; font-size:15px; padding:13px 28px; box-shadow:0 8px 28px -8px rgba(106,92,255,.75); }
.btn-primary:hover { transform:translateY(-1px); box-shadow:0 12px 36px -8px rgba(106,92,255,.95); }
.btn-ghost { background:rgba(255,255,255,.05); color:#eef0fa; font-size:15px; padding:13px 28px; border:1px solid rgba(255,255,255,.14); }
.btn-ghost:hover { background:rgba(255,255,255,.09); }
.btn-sm { padding:9px 18px; font-size:13.5px; border-radius:10px; }

/* ===== 导航 ===== */
.nav { position:sticky; top:0; z-index:100; backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); background:rgba(7,11,26,.72); border-bottom:1px solid rgba(255,255,255,.06); }
.nav-inner { max-width:1200px; margin:0 auto; padding:0 24px; height:64px; display:flex; align-items:center; justify-content:space-between; }
.logo { display:flex; align-items:center; gap:10px; font-size:17px; font-weight:800; letter-spacing:.5px; }
.logo-mark { width:30px; height:30px; display:block; border-radius:9px; box-shadow:0 4px 16px -6px rgba(23,38,82,.95); flex:none; }
.logo-mark svg { width:100%; height:100%; display:block; }
.logo-sub { color:#8b8fa8; font-weight:500; font-size:13px; margin-left:2px; }
.nav-links { display:flex; gap:34px; font-size:14px; color:#a0a4c0; }
.nav-links a:hover { color:#fff; }

/* ===== Hero ===== */
.hero { position:relative; overflow:hidden; padding:64px 24px 88px; }
.hero::before { content:''; position:absolute; top:-260px; left:22%; width:1020px; height:680px; border-radius:50%; background:radial-gradient(closest-side,rgba(106,92,255,.30),transparent 70%); pointer-events:none; }
.hero::after { content:''; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px); background-size:54px 54px; -webkit-mask-image:radial-gradient(ellipse 66% 62% at 46% 30%,#000 26%,transparent 74%); mask-image:radial-gradient(ellipse 66% 62% at 46% 30%,#000 26%,transparent 74%); }
.hero-grid { position:relative; z-index:1; max-width:1200px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) 396px; column-gap:70px; align-items:center; }
.hero-copy { min-width:0; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; padding:7px 17px; border-radius:999px; font-size:13px; color:#c9c2ff; background:rgba(106,92,255,.12); border:1px solid rgba(106,92,255,.35); margin-bottom:24px; }
.hero-badge .dot { width:6px; height:6px; border-radius:50%; background:#4ade80; box-shadow:0 0 9px #4ade80; }
.hero h1 { font-size:clamp(30px,4.2vw,52px); font-weight:900; letter-spacing:-1px; line-height:1.22; margin-bottom:16px; }
.grad { background:linear-gradient(120deg,#9a7bff 0%,#c084fc 45%,#6a8bff 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.hero-sub { font-size:clamp(16px,1.8vw,19px); color:#c3c7dd; font-weight:600; letter-spacing:3px; margin-bottom:14px; }
.hero-desc { font-size:14.5px; color:#8b8fa8; max-width:520px; margin:0 0 28px; line-height:1.85; }
.hero-cta { display:flex; gap:13px; margin-bottom:30px; }
.hero-note { font-size:12px; color:#6b6f8d; margin-top:14px; line-height:1.7; }
/* 获取方式（购买口径：闲鱼购买原创资料，赠送使用） */
.hero-buy { font-size:13.5px; color:#a7abc4; margin:-14px 0 22px; line-height:1.9; }
.hero-buy b { color:#c9c2ff; font-weight:700; }
.hero-buy a { color:#9a7bff; font-weight:700; white-space:nowrap; }
.hero-buy a:hover { color:#c4b5ff; }
.hero-steps { display:flex; flex-direction:column; gap:9px; margin-top:6px; }
.hero-steps .st { display:flex; align-items:center; gap:9px; font-size:13px; color:#a7abc4; }
.hero-steps .st b { color:#c9c2ff; }

/* 手机 mockup（静态真机截图） */
.hero-phone { display:flex; flex-direction:column; align-items:center; min-width:0; }
.phone { position:relative; width:396px; max-width:100%; padding:10px; border-radius:52px; background:linear-gradient(165deg,#303048,#17172a 55%,#0e0e1c); box-shadow:0 0 0 1px rgba(255,255,255,.10),0 50px 120px -30px rgba(106,92,255,.5),0 30px 60px -30px rgba(0,0,0,.9); }
.phone img { width:100%; aspect-ratio:390/844; display:block; border-radius:42px; }
.hero-phone .hint { margin-top:16px; font-size:12.5px; color:#6b6f8d; display:flex; align-items:center; gap:6px; text-align:center; }
.hero-phone .hint b { color:#9a7bff; font-weight:700; }

/* ===== 信任条 ===== */
.trust { max-width:1200px; margin:0 auto; padding:0 24px; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.07); border-radius:18px; overflow:hidden; }
.trust-item { background:#0b1024; padding:22px 26px; display:flex; align-items:center; gap:13px; }
.ti-icon { font-size:21px; }
.ti-t { font-size:14.5px; font-weight:700; }
.ti-d { font-size:12px; color:#8b8fa8; margin-top:3px; }

/* ===== 亮点逐屏 ===== */
.spots { max-width:1160px; margin:0 auto; padding:110px 24px 0; }
.spots-head { text-align:center; margin-bottom:20px; }
.spots-head h2 { font-size:clamp(26px,4vw,40px); font-weight:900; letter-spacing:-.5px; margin-bottom:14px; }
.spots-head p { color:#8b8fa8; font-size:15px; line-height:1.7; }

.spot { padding:70px 0; border-top:1px dashed rgba(255,255,255,.08); }
.spot-inner { display:flex; align-items:center; gap:76px; }
.spot.rev .spot-inner { flex-direction:row-reverse; }
.spot-media { flex:0 0 316px; display:flex; justify-content:center; min-width:0; }
.phone-min { width:316px; max-width:100%; padding:9px; border-radius:44px; background:linear-gradient(165deg,#303048,#17172a 55%,#0e0e1c); box-shadow:0 0 0 1px rgba(255,255,255,.10),0 34px 84px -30px rgba(106,92,255,.42),0 22px 48px -24px rgba(0,0,0,.9); }
.phone-min img { width:100%; aspect-ratio:390/844; display:block; border-radius:35px; }
/* 双图变体: 同一模块两张实拍并排(19 选基工具 · 基金体检) */
.spot-media.duo { flex:0 0 auto; gap:20px; align-items:flex-start; }
.spot-media.duo .phone-min { width:232px; padding:7px; border-radius:34px; }
.spot-media.duo .phone-min img { border-radius:27px; }
.spot-body { flex:1; min-width:0; }
.spot-no { font-size:13px; font-weight:800; color:#8a7bff; letter-spacing:3px; margin-bottom:14px; }
.spot-no span { color:#4b4f6b; font-weight:600; letter-spacing:1px; }
.spot-body h3 { font-size:clamp(22px,2.6vw,30px); font-weight:900; letter-spacing:-.3px; margin-bottom:16px; display:flex; align-items:center; gap:14px; }
.spot-body h3 .ic { width:48px; height:48px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; font-size:23px; background:linear-gradient(135deg,rgba(106,92,255,.28),rgba(106,92,255,.08)); border:1px solid rgba(106,92,255,.34); flex:0 0 auto; }
.spot-tag { font-size:16px; font-weight:700; color:#c9c2ff; line-height:1.8; margin-bottom:14px; }
.spot-desc { font-size:14.5px; color:#9a9eb8; line-height:2.05; }
.spot-cta { margin-top:22px; display:inline-flex; align-items:center; gap:6px; font-size:13.5px; font-weight:700; color:#9a7bff; }
.spot-cta:hover { color:#c4b5ff; }

/* ===== 梯队分组标题 ===== */
.ghead { padding:92px 0 0; }
.ghead .gline { display:flex; align-items:baseline; gap:18px; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.12); }
.ghead .gnum { font-size:13px; font-weight:800; color:#8a7bff; letter-spacing:3px; white-space:nowrap; }
.ghead h2 { font-size:clamp(22px,3.2vw,32px); font-weight:900; letter-spacing:-.4px; }
.ghead .gsub { font-size:13.5px; color:#5d6180; letter-spacing:1px; margin-left:auto; white-space:nowrap; }
.ghead p { margin-top:14px; font-size:14.5px; color:#8b8fa8; line-height:1.8; }
.ghead + .spot { border-top:none; padding-top:46px; }

/* ===== 免责声明 ===== */
.disclaimer { max-width:1200px; margin:104px auto 0; padding:0 24px; }
.disc-box { border-radius:18px; padding:30px 34px; background:rgba(255,255,255,.022); border:1px solid rgba(255,255,255,.08); }
.disc-box h3 { font-size:15px; font-weight:800; color:#c3c7dd; margin-bottom:12px; display:flex; align-items:center; gap:8px; }
.disc-box p { font-size:13px; color:#83879f; line-height:2; }
.disc-box p + p { margin-top:8px; }
.disc-box b { color:#a7abc4; font-weight:700; }

/* ===== 底部 CTA ===== */
.cta-final { margin-top:110px; padding:96px 24px 100px; text-align:center; position:relative; overflow:hidden; border-top:1px solid rgba(255,255,255,.06); }
.cta-final::before { content:''; position:absolute; bottom:-320px; left:50%; transform:translateX(-50%); width:900px; height:560px; border-radius:50%; background:radial-gradient(closest-side,rgba(106,92,255,.3),transparent 70%); pointer-events:none; }
.cta-final > * { position:relative; }
.cta-final h2 { font-size:clamp(26px,4vw,40px); font-weight:900; letter-spacing:-.5px; margin-bottom:16px; }
.cta-final .cta-p { color:#9a9eb8; font-size:15px; margin-bottom:36px; line-height:1.8; }
.cta-btns { display:flex; gap:13px; justify-content:center; }
.cta-url { margin-top:24px; font-size:14px; color:#8b8fa8; line-height:1.9; }
.cta-url b { color:#c9c2ff; font-weight:700; letter-spacing:.4px; }

/* ===== 页脚 ===== */
footer { border-top:1px solid rgba(255,255,255,.07); padding:46px 24px 42px; background:#05070f; }
.foot-inner { max-width:1200px; margin:0 auto; text-align:center; }
.foot-disc { font-size:12.5px; color:#6b6f8d; line-height:2; max-width:680px; margin:0 auto 22px; }
.foot-meta { font-size:12.5px; color:#6b6f8d; display:flex; gap:20px; justify-content:center; flex-wrap:wrap; }

/* ===== 手机适配 ===== */
@media (max-width:960px) {
  .hero-grid { grid-template-columns:1fr; row-gap:48px; }
  .hero-desc { max-width:none; }
  .trust-grid { grid-template-columns:repeat(2,1fr); }
  .spot-inner, .spot.rev .spot-inner { flex-direction:column; gap:30px; }
  .spot { padding:54px 0; }
  .spot-media { flex-basis:auto; }
  .phone-min { width:min(316px,84vw); }
  .spot-media.duo { gap:14px; }
  .spot-media.duo .phone-min { width:min(232px,40vw); }
  .nav-links { display:none; }
  .disc-box { padding:24px 22px; }
  .ghead { padding-top:72px; }
  .ghead .gline { flex-wrap:wrap; row-gap:6px; }
  .ghead .gsub { margin-left:0; width:100%; }
}
@media (max-width:480px) {
  .hero { padding:44px 18px 64px; }
  .hero-cta { flex-direction:column; align-items:stretch; }
  .cta-btns { flex-direction:column; align-items:stretch; }
  .trust-item { padding:16px 16px; gap:10px; }
}
