:root{
  --primary-start:#1E3A8A;
  --primary-end:#6D28D9;
  --primary-gradient: linear-gradient(90deg,var(--primary-start),var(--primary-end));
  --bg:#0A0A23;
  --card-bg: rgba(255,255,255,0.02);
  --surface: rgba(255,255,255,0.03);
  --success:#10B981;
  --muted: rgba(255,255,255,0.6);
  --glass: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  --radius:14px;
}

/* Hero VIP */
.hero--vip{
  padding:64px 0 40px 0;
  background:
    radial-gradient(800px 320px at 10% 20%, rgba(30,58,138,0.12), transparent 10%),
    radial-gradient(700px 300px at 90% 80%, rgba(109,40,217,0.06), transparent 10%),
    var(--bg);
  border-bottom:1px solid rgba(255,255,255,0.03);
}
.hero-inner{
  display:grid;
  grid-template-columns:1fr 480px;
  gap:28px;
  align-items:center;
}
@media (max-width:1024px){
  .hero-inner{grid-template-columns:1fr}
}

/* Hero text */
.hero-title{
  font-size:1.6rem;
  margin:0 0 8px 0;
  font-weight:900;
  color:transparent;
  background: linear-gradient(90deg,#fff, rgba(255,255,255,0.95));
  -webkit-background-clip:text;
  background-clip:text;
}
.hero-sub{color:var(--muted);margin:0 0 18px 0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}

/* Plans */
.plans{padding:40px 0}
.plans-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  align-items:start;
}
@media (max-width:900px){
  .plans-grid{grid-template-columns:1fr}
}
.plan-card{
  background:var(--card-bg);
  border-radius:var(--radius);
  padding:20px;
  box-shadow:0 8px 26px rgba(0,0,0,0.5);
  transition:transform .18s ease, box-shadow .18s ease, border .18s ease;
  border:1px solid rgba(255,255,255,0.02);
  display:flex;
  flex-direction:column;
  gap:14px;
  position:relative;
  overflow:hidden;
}
.plan-card:hover{
  transform:translateY(-8px);
  box-shadow:0 20px 50px rgba(99,102,241,0.12);
  border-color:rgba(99,102,241,0.12);
}
.plan-card--highlight{
  background: linear-gradient(180deg, rgba(109,40,217,0.06), rgba(30,58,138,0.03));
  border:1px solid rgba(109,40,217,0.12);
}
.plan-badge{
  position:absolute;left:18px;top:18px;background:rgba(255,255,255,0.04);padding:6px 10px;border-radius:999px;font-weight:700;font-size:13px;color:var(--muted)
}
.plan-badge--save{background:linear-gradient(90deg,var(--primary-start),var(--primary-end));color:#fff;box-shadow:0 8px 30px rgba(99,102,241,0.08)}

.plan-head{display:flex;gap:12px;align-items:center}
.plan-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01))}
.plan-title{font-weight:900;margin:0}
.plan-price{font-size:1.25rem;margin:4px 0 0 0;color:#fff;font-weight:800}

/* Features list */
.plan-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.plan-features li{color:var(--muted);display:flex;gap:8px;align-items:center}
.tick{color:var(--success);font-weight:900;background:rgba(16,185,129,0.08);padding:4px;border-radius:6px;font-size:0.9rem;display:inline-flex;align-items:center;justify-content:center;width:28px;height:20px}

/* Actions */
.plan-actions{margin-top:8px}
.plan-cta{width:100%;display:inline-block;text-align:center;padding:12px;border-radius:10px;font-weight:900}
.plan-footer{color:var(--muted)}

/* Testimonials */
.testimonials{padding:36px 0}
.testimonials-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
@media (max-width:1024px){
  .testimonials-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  .testimonials-grid{grid-template-columns:1fr}
}
.testimonial-card{
  background:var(--surface);
  border-radius:12px;padding:18px;
  box-shadow:0 8px 30px rgba(0,0,0,0.5);
  transition:transform .16s ease;
}
.testimonial-card:hover{transform:translateY(-6px)}
.quote{margin:0 0 12px 0;color:#fff;font-weight:700}
.author{color:var(--muted);font-size:0.95rem}

/* FAQ */
.faq{padding:36px 0}
.faq-list{display:flex;flex-direction:column;gap:8px}
.faq-item{
  display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:10px;background:var(--card-bg);border:1px solid rgba(255,255,255,0.02);cursor:pointer;font-weight:700;color:#fff;
}
.faq-item[aria-expanded="true"]{background:linear-gradient(90deg,var(--primary-start),var(--primary-end));color:#fff}
.faq-a{padding:12px 16px;border-radius:8px;background:rgba(255,255,255,0.01);margin-top:6px;color:var(--muted)}

/* Fade-in utility */
.fade-in{opacity:0;transform:translateY(10px);transition:opacity .64s ease, transform .64s ease}
.fade-in.show{opacity:1;transform:none}

/* Small tweaks */
.section-title{margin-bottom:18px}
.muted{color:var(--muted)}
.small{font-size:0.92rem}
.color-gold{color: #ffd700;}