/* ═══════════════════════════════════
   LANDING
═══════════════════════════════════ */
#screen-landing{
  background:
    radial-gradient(ellipse 90% 55% at 50% -5%, rgba(99,102,241,.14), transparent),
    radial-gradient(ellipse 55% 40% at 85% 85%, rgba(139,92,246,.07), transparent),
    var(--bg);
}
.hero{
  position:relative;overflow:hidden;
  padding:114px 20px 56px;text-align:center;
}
.hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 30%,transparent 75%);
}
.hero-label{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.22);
  border-radius:30px;padding:6px 16px;
  font-size:12px;font-weight:800;color:#6366F1;letter-spacing:.6px;
  margin-bottom:26px;animation:fadeUp .5s ease both;
}
.hero-dot{width:6px;height:6px;border-radius:50%;background:#6366F1;animation:blink 2s ease infinite}
.hero-title{
  font-size:clamp(34px,6.5vw,68px);font-weight:900;line-height:1.06;
  letter-spacing:-1px;margin-bottom:16px;
  animation:fadeUp .5s .08s ease both;
}
.hero-grad{
  background:linear-gradient(135deg,#60A5FA,#818CF8,#C084FC);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-sub{
  font-size:clamp(14px,2.2vw,18px);color:var(--muted);line-height:1.85;
  max-width:520px;margin:0 auto 38px;
  animation:fadeUp .5s .16s ease both;
}
.hero-cta{
  display:flex;gap:11px;justify-content:center;flex-wrap:wrap;
  margin-bottom:64px;animation:fadeUp .5s .22s ease both;
}
.btn-cta-main{
  padding:15px 32px;border-radius:13px;font-family:var(--font);
  font-size:15px;font-weight:900;background:var(--grad);color:#fff;
  border:none;cursor:pointer;
  box-shadow:0 8px 28px rgba(99,102,241,.42);transition:all .22s;
}
.btn-cta-main:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(99,102,241,.58)}
.btn-cta-sec{
  padding:15px 26px;border-radius:13px;font-family:var(--font);
  font-size:14px;font-weight:800;
  background:var(--card2);border:1.5px solid var(--border2);
  color:var(--text);cursor:pointer;transition:all .22s;
}
.btn-cta-sec:hover{background:rgba(255,255,255,.1);color:var(--text)}

/* ── HERO CHARACTER STAGE ── */
.hero-char-stage{
  width:80px;height:80px;
  border-radius:20px;
  border:1.5px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  transition:all .28s;
  overflow:hidden;
  position:relative;
}
.hero-char-stage:hover{
  border-color:rgba(99,102,241,.45);
  box-shadow:0 8px 28px rgba(99,102,241,.28);
  filter:brightness(1.1);
}
.hero-char-stage svg{width:58px;height:58px}
.hero-char-lbl{font-size:11px;font-weight:700;color:var(--muted)}

/* Stats bar */
.stats-bar{
  display:flex;justify-content:center;
  max-width:660px;margin:0 auto;
  border-radius:16px;overflow:hidden;
  border:1px solid var(--border);background:var(--card);
}
.stats-bar-item{
  flex:1;padding:18px 10px;text-align:center;
  border-left:1px solid var(--border);
}
.stats-bar-item:last-child{border-left:none}
.stats-bar-n{
  font-size:clamp(20px,3.5vw,30px);font-weight:900;
  background:var(--grad);-webkit-background-clip:text;
  -webkit-text-fill-color:transparent;background-clip:text;
}
.stats-bar-l{font-size:11px;color:var(--muted);margin-top:2px}

/* Features */
.features{padding:60px 20px;max-width:980px;margin:0 auto}
.sec-title{font-size:clamp(20px,3.5vw,28px);font-weight:900;text-align:center;margin-bottom:6px}
.sec-sub{font-size:13px;color:var(--muted);text-align:center;margin-bottom:32px}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.feat{
  padding:20px 16px;background:var(--card);
  border:1px solid var(--border);border-radius:16px;
  transition:all .22s;position:relative;overflow:hidden;
}
.feat:hover{border-color:rgba(99,102,241,.28);transform:translateY(-3px)}
.feat-icon{
  width:44px;height:44px;border-radius:12px;
  background:rgba(99,102,241,.12);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:12px;
}
.feat-icon svg{width:22px;height:22px}
.feat-title{font-size:13px;font-weight:800;margin-bottom:5px}
.feat-desc{font-size:11.5px;color:var(--muted);line-height:1.75}

/* Pricing */
.pricing-card{border-color:var(--border)!important;}
.pricing-card.selected{border-color:#6366F1!important;background:rgba(99,102,241,.1)!important;box-shadow:0 0 0 1px #6366F1;}
.hero-badge{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.2);color:var(--blue);}

footer{
  background:var(--bg2);border-top:1px solid var(--border);
  padding:22px 20px;text-align:center;font-size:12px;color:var(--dim);
}
