
/* ==== /css/pages/home.css ==== */


.home-page { min-height: calc(100vh - 56px); }

.home-hero {
  padding: 5rem 1rem 4rem;
  background: linear-gradient(160deg, var(--color-primary-soft) 0%, transparent 60%);
}
.home-hero__inner { text-align: center; }
.home-hero__eyebrow {
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-primary);
  margin-bottom: .75rem;
}
.home-hero__title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 1rem;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.home-hero__subtitle {
  font-size: 1.1rem;
  color: var(--fg-2);
  max-width: 560px;
  margin: 0 auto 2rem;
}
.home-hero__actions { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }

.home-how { padding: 4rem 1rem; }
.home-how__title { font-size: 1.75rem; font-weight: 700; margin-bottom: 3.5rem; text-align: center; }

.home-step-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
  margin-bottom: 4rem;
}
.home-step-row--flip .home-step-text { order: 2; }
.home-step-row--flip .home-step-media { order: 1; }

@media (max-width: 767px) {
  .home-step-row { grid-template-columns: 1fr; gap: 1.5rem; }
  .home-step-row--flip .home-step-text,
  .home-step-row--flip .home-step-media { order: unset; }
}

.home-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--color-primary-soft);
  color: var(--color-primary);
  font-weight: 700;
  font-size: .85rem;
  margin-bottom: .85rem;
}
.home-step-title { font-size: 1.25rem; font-weight: 700; margin-bottom: .5rem; }
.home-step-desc { color: var(--fg-2); line-height: 1.65; margin: 0; }

.img-placeholder {
  width: 100%;
  aspect-ratio: 16/9;
  border: 2px dashed var(--color-slate-300);
  border-radius: .75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--color-slate-400);
  gap: .5rem;
  background: var(--color-bg-sunken);
  font-size: .85rem;
}
.img-placeholder .bi { font-size: 2.5rem; }
[data-theme="dark"] .img-placeholder {
  border-color: var(--color-slate-600);
  background: rgba(var(--color-white-rgb),.04);
}

.home-cta {
  padding: 4rem 1rem 5rem;
  background: var(--color-primary-soft);
}
.home-cta__title { font-size: 1.5rem; font-weight: 700; margin-bottom: 1.5rem; }
