/* Home — full-viewport animated galaxy (contrast to /voice pastel hero) */

.home {
  min-height: 100svh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  background: #050508;
  color: #ffffff;
}

#bg-waves {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

.home .site-header,
.home-main {
  position: relative;
  z-index: 1;
}

.home-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: 2rem 0 3.5rem;
  min-height: calc(100svh - 5.5rem);
  min-height: calc(100dvh - 5.5rem);
}

.home-inner {
  width: 100%;
  max-width: var(--content);
  margin: 0 auto;
  padding: 0 var(--header-pad-x);
  animation: home-rise 0.9s var(--ease) both;
  text-align: left;
}

.home-eyebrow {
  color: rgba(255, 255, 255, 0.72);
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.85);
  animation: home-rise 0.9s var(--ease) 0.05s both;
}

.home-title {
  max-width: 14ch;
  color: #fff;
  text-shadow:
    0 2px 24px rgba(0, 0, 0, 0.9),
    0 0 40px rgba(0, 0, 0, 0.55);
  animation: home-rise 0.9s var(--ease) 0.12s both;
}

.home-lede {
  max-width: 38rem;
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 1px 16px rgba(0, 0, 0, 0.85);
  animation: home-rise 0.9s var(--ease) 0.2s both;
}

.home-lede strong {
  color: #fff;
}

.home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 2rem;
  animation: home-rise 0.9s var(--ease) 0.28s both;
}

/* White primary CTA on dark galaxy */
.home .btn-primary {
  background: #fff;
  color: var(--ink);
  border-color: #fff;
}

.home .btn-primary:hover {
  color: var(--ink);
  background: #f5f5f3;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.45);
}

/* Keep secondary / Lena CTA readable on dark galaxy (avoid inherit → white) */
.home .btn-secondary:hover,
.home .btn-secondary:focus-visible,
.home .btn-lena:hover,
.home .btn-lena:focus-visible {
  color: var(--ink);
}

/* Edge depth only — no CSS blush blob (that read as a pasted sticker) */
.home::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 120% 90% at 50% 40%, transparent 35%, rgba(5, 5, 8, 0.35) 78%, rgba(5, 5, 8, 0.72) 100%);
}

@keyframes home-rise {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 640px) {
  .home-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .home-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-inner,
  .home-eyebrow,
  .home-title,
  .home-lede,
  .home-actions {
    animation: none;
  }
}
