/* ============================================
   KRIVIO — HOME PAGE theme
   Scoped to body.home-violet so every other page keeps the original navy/blue brand.
   Shared components (.offer, .proj, .steps, .faq-item…) live in pages.css.
   ============================================ */
body.home-violet {
  --color-violet: #4F3CC9;
  --color-violet-deep: #3F2EB0;
  --color-violet-tint: #EFEBFC;
  --font-display: 'Fraunces', 'Space Grotesk', serif;
  --font-body: 'Plus Jakarta Sans', 'Sora', sans-serif;
}
body.home-violet h1, body.home-violet h2, body.home-violet h3 { letter-spacing: -0.02em; font-weight: 600; }
body.home-violet .eyebrow {
  font-family: var(--font-body); font-size: 12px; font-weight: 600;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-violet);
}

/* ---- Hero: centered, calm ---- */
body.home-violet .hero {
  position: relative;
  padding-top: calc(var(--nav-height) + var(--space-7));
  padding-bottom: var(--space-7);
  text-align: center;
  background: radial-gradient(ellipse 70% 60% at 50% 0%, var(--color-violet-tint), transparent 70%);
}
.hero__inner { max-width: 820px; margin: 0 auto; }
.hero__pill {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 14px; border-radius: var(--radius-pill);
  background: var(--color-violet-tint); color: var(--color-violet-deep);
  font-size: var(--fs-xs); font-weight: 600; margin-bottom: var(--space-4);
}
.hero__pill::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--color-violet); }
.hero__title { text-wrap: balance; font-size: clamp(2.4rem, 6vw, 4.2rem); line-height: 1.08; margin-bottom: var(--space-3); }
.hero__title em { font-style: normal; color: var(--color-violet); }
.hero__sub { max-width: 620px; margin: 0 auto var(--space-5); font-size: var(--fs-md); }
.hero__actions { display: flex; gap: var(--space-3); justify-content: center; flex-wrap: wrap; }
.hero__stats {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4);
  max-width: 680px; margin: var(--space-6) auto 0; padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}
.hero__stat b { display: block; font-family: var(--font-display); font-size: var(--fs-xl); font-weight: 600; color: var(--color-ink); line-height: 1.1; }
.hero__stat span { font-size: var(--fs-xs); color: var(--color-ink-soft); }
.more-line { text-align: center; margin: var(--space-5) auto 0; font-size: var(--fs-sm); color: var(--color-ink-soft); max-width: 640px; }
.more-line a { color: var(--color-violet); font-weight: 500; }
.center-cta { text-align: center; margin-top: var(--space-5); }

@media (max-width: 640px) {
  body.home-violet .hero { padding-top: calc(var(--nav-height) + var(--space-5)); padding-bottom: var(--space-6); }
  .hero__stats { grid-template-columns: repeat(2, 1fr); gap: var(--space-4) var(--space-3); margin-top: var(--space-5); }
  .hero__actions .btn { width: 100%; justify-content: center; }
}
