/* ===========================
   Base & Reset
=========================== */
:root{
  --primary:#6a0dad;
  --primary-600:#580a9e;
  --primary-50:#f6efff;
  --ink:#111318;
  --ink-2:#1b1b1d;
  --muted:#6b7280;
  --bg:#ffffff;
  --bg-alt:#fbfbff;
  --card:#ffffff;
  --ring:rgba(106,13,173,.18);
  --shadow:0 10px 30px rgba(16,24,40,.08);
  --radius:16px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue','Noto Sans',sans-serif;
  color:var(--ink-2);
  background:var(--bg);
  line-height:1.6;
}

/* Utilities */
.container{max-width:1160px;margin:0 auto;padding:0 16px}
.img-fluid{max-width:100%;height:auto}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;
  font-weight:700;text-decoration:none;border:0;cursor:pointer;transition:.2s ease}
.btn:focus{outline:3px solid var(--ring);outline-offset:2px}
.btn-primary{background:var(--primary);color:#fff;box-shadow:0 6px 16px rgba(106,13,173,.25)}
.btn-primary:hover{background:var(--primary-600)}
.btn-outline{background:#fff;border:1.6px solid var(--primary);color:var(--primary)}
.btn-outline:hover{background:var(--primary-50)}
.btn-success{background:#16a34a;color:#fff}
.btn-white{background:#fff;color:var(--ink-2);border:1px solid #e5e7eb}
.btn-large{padding:14px 20px;font-size:16px}
.btn-block{display:block;width:100%}
.btn-glow{box-shadow:0 10px 22px rgba(106,13,173,.30)}

/* ===========================
   Header & Navigation
=========================== */
.header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid #f1f5f9}
.navbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink-2);font-size:18px}
.logo i{color:var(--primary)}

.nav-menu{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.nav-menu a{color:var(--ink-2);text-decoration:none;font-weight:600}
.nav-menu a:hover{color:var(--primary)}

.nav-buttons{display:flex;gap:10px;align-items:center}
.mobile-menu-toggle{display:none;border:none;background:transparent;font-size:22px;color:var(--ink-2)}

/* Mobile menu */
@media (max-width: 992px){
  .nav-menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-top:1px solid #eef2f7;
    padding:12px 16px;flex-direction:column}
  .nav-menu.open{display:flex;animation:slideDown .15s ease-out}
  .nav-buttons{display:none}
  .mobile-menu-toggle{display:inline-flex}
}
@keyframes slideDown{from{transform:translateY(-6px);opacity:.6}to{transform:translateY(0);opacity:1}}

/* ===========================
   Hero
=========================== */
.hero{padding:64px 0;background:linear-gradient(180deg,var(--bg-alt) 0%,#fff 100%)}
.hero-content{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:32px}
@media (max-width: 992px){.hero-content{grid-template-columns:1fr}}
.badge{display:inline-flex;align-items:center;gap:8px;background:#efe7ff;color:var(--primary);
  border-radius:999px;padding:8px 12px;font-weight:800;margin-bottom:12px}
.hero h1{font-size:42px;line-height:1.15;margin:8px 0 12px;font-weight:900;color:var(--ink)}
.hero .highlight{color:var(--primary)}
.hero-description{color:#434955;font-size:16px;max-width:58ch}

.hero-stats{display:flex;gap:18px;flex-wrap:wrap;margin:16px 0 6px}
.stat{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #eef2f7;border-radius:14px;padding:10px 12px}
.stat-icon{width:36px;height:36px;display:grid;place-items:center;background:var(--primary-50);color:var(--primary);border-radius:10px}
.stat-text strong{display:block;font-size:15px}
.stat-text span{font-size:12px;color:var(--muted)}

/* ===========================
   Sections
=========================== */
section{scroll-margin-top:84px}
.section-header{text-align:center;margin-bottom:28px}
.section-badge{display:inline-block;background:#eef2ff;color:#4f46e5;font-weight:800;padding:8px 12px;border-radius:999px;font-size:12px}

/* ===========================
   Features
=========================== */
.features{padding:56px 0}
.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width: 1024px){.features-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width: 768px){.features-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.features-grid{grid-template-columns:1fr}}

.feature-card{background:var(--card);border:1px solid #eef2f7;border-radius:16px;padding:18px;box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .2s ease}
.feature-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,0,0,.08)}
.feature-card h3{margin:10px 0 6px;font-size:18px}
.feature-card p{margin:0;color:#475569}
.feature-thumb{width:48px;height:48px;border-radius:12px;object-fit:cover;background:#f6f7fb;display:block}

/* ===========================
   How It Works
=========================== */
.how-it-works{padding:56px 0;background:linear-gradient(180deg,#fff 0%,#fafafe 100%)}
.steps-container{max-width:900px;margin:0 auto}
.step{display:flex;gap:16px;background:#fff;border:1px solid #eef2f7;padding:16px;border-radius:16px;box-shadow:var(--shadow)}
.step + .step{margin-top:14px}
.step-number{min-width:40px;height:40px;border-radius:999px;background:var(--primary-50);color:var(--primary);
  display:grid;place-items:center;font-weight:900}
.step-content h3{margin:0 0 4px;font-size:18px}
.step-content p{margin:0;color:#475569}
.step-arrow{display:grid;place-items:center;color:#98a2b3;margin:10px 0}

/* CTA box */
.cta-box{margin-top:20px;background:#f4f0ff;border:1px dashed rgba(106,13,173,.35);
  border-radius:16px;padding:18px;text-align:center}
.cta-box h3{margin:0 0 6px}
.cta-box p{margin:0 0 10px;color:#475569}

/* ===========================
   Pricing
=========================== */
.pricing{padding:56px 0}
.pricing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width: 1024px){.pricing-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 720px){.pricing-cards{grid-template-columns:1fr}}

.pricing-card{background:#fff;border:1px solid #eef2f7;border-radius:18px;padding:20px;box-shadow:var(--shadow);position:relative}
.pricing-card.featured{border:2px solid var(--primary);box-shadow:0 16px 40px rgba(106,13,173,.18)}
.badge-popular{position:absolute;top:14px;right:14px;background:var(--primary);color:#fff;font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px}

.pricing-header h3{margin:2px 0 6px}
.price{display:flex;align-items:baseline;gap:6px}
.price .currency{font-size:16px;font-weight:800;color:var(--primary)}
.price .amount{font-size:32px;font-weight:900}
.period{color:#64748b;margin:4px 0}
.discount{text-decoration:line-through;color:#9aa4b2}

.pricing-features{list-style:none;margin:12px 0 16px;padding:0}
.pricing-features li{display:flex;gap:10px;margin:8px 0;color:#334155}
.pricing-features i{color:#10b981}
.pricing-note{color:#6b7280;font-size:13px;margin:6px 0 0}

/* ===========================
   FAQ
=========================== */
.faq{padding:56px 0;background:linear-gradient(180deg,#fff 0%,#fbfbff 100%)}
.faq-container{max-width:900px;margin:0 auto}
.faq-item{background:#fff;border:1px solid #eef2f7;border-radius:14px;margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow)}
.faq-question{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;cursor:pointer}
.faq-question h3{margin:0;font-size:16px}
.faq-answer{padding:0 16px 14px;color:#475569;display:none}
.faq-item.open .faq-answer{display:block}
.faq-toggle{color:#9aa4b2}

/* ===========================
   Testimonials
=========================== */
.testimonials{padding:56px 0}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width: 992px){.testimonials-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 600px){.testimonials-grid{grid-template-columns:1fr}}

.testimonial-card{background:#fff;border:1px solid #eef2f7;border-radius:16px;padding:18px;box-shadow:var(--shadow)}
.testimonial-avatar img{width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.testimonial-rating{color:#fbbf24;margin:8px 0 6px}
.testimonial-text{margin:0 0 10px;color:#374151}
.testimonial-author strong{display:block}

/* ===========================
   CTA Final
=========================== */
.cta-final{padding:56px 0;background:radial-gradient(1200px 600px at 50% -20%, #f5f0ff 0, transparent 60%), #fff; text-align:center}
.cta-final h2{font-size:28px;margin:0 0 6px}
.cta-final p{color:#475569;margin:0 0 14px}
.cta-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.cta-note{color:#6b7280;font-size:13px}

/* ===========================
   Footer
=========================== */
.footer{background:#0f0f14;color:#c7c9d1;padding:36px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:18px}
@media (max-width: 992px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 600px){.footer-grid{grid-template-columns:1fr}}
.footer a{color:#c7c9d1;text-decoration:none}
.footer a:hover{color:#fff}
.footer-col h4{margin:0 0 10px;color:#fff}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col li{margin:8px 0}
.footer-logo{display:flex;align-items:center;gap:10px;font-weight:900;color:#fff}
.footer-bottom{border-top:1px solid #1f1f24;margin-top:20px;padding-top:14px;text-align:center}

/* ===========================
   Small helpers
=========================== */
.highlight{color:var(--primary)}
.text-muted{color:#6b7280}
.text-primary{color:var(--primary)}
.text-success{color:#16a34a}

/* Cards & generic */
.card{background:#fff;border:1px solid #eef2f7;border-radius:16px;box-shadow:var(--shadow)}

/* ===== Hero stats polish ===== */
.hero-stats{
  display:flex; gap:16px; flex-wrap:wrap; margin:18px 0 8px;
}
.stat-pill{
  background:#fff;
  border:1px solid #eef2f7;
  border-radius:14px;
  padding:12px 14px;
  display:flex; align-items:center; gap:12px;
  box-shadow:0 8px 22px rgba(16,24,40,.06);
  transition:transform .15s ease, box-shadow .2s ease;
}
.stat-pill:hover{ transform:translateY(-2px); box-shadow:0 14px 34px rgba(16,24,40,.08); }

.stat-icon{
  width:40px; height:40px; display:grid; place-items:center;
  background:var(--primary-50); color:var(--primary);
  border-radius:12px; flex:0 0 40px;
  font-size:16px;
}

.stat-copy{ display:flex; flex-direction:column; line-height:1.2; }
.stat-value{
  font-weight:800; color:var(--ink);
  font-size:16px; letter-spacing:.2px;
}
.stat-label{
  color:#6b7280; font-size:12.5px; margin-top:4px;
}

/* Responsive: center & full width on small screens */
@media (max-width:560px){
  .hero-stats{ gap:12px; }
  .stat-pill{ width:100%; }
  .stat-value{ font-size:15.5px; }
  .stat-icon{ width:36px; height:36px; font-size:14px; }
}

