/* Unified Rkiza-style elegant reveal */
@keyframes ixElegantRevealUp {
  from {
    opacity: 0;
    transform: translateY(24px);
    filter: blur(8px);
  }
  55% {
    filter: blur(0);
  }
  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

.hero :is(
  .hero-content,
  .hero-content > *,
  .hero-copy > *,
  .hero-kicker,
  .hero-title,
  .hero-lines,
  .hero-promise-row,
  .hero-soon,
  .hero-actions,
  .hero-trust,
  .hero-visual
),
.product-selector .wrap > *,
.hero-clean-kicker,
.hero-clean-title,
.hero-clean-lines,
.hero-clean-actions,
.hero-clean-soon,
.hero-clean-proof {
  opacity: 0;
  animation-name: ixElegantRevealUp !important;
  animation-duration: 3.15s !important;
  animation-timing-function: cubic-bezier(.2, 1, .2, 1) !important;
  animation-fill-mode: both !important;
}

.hero :is(.hero-content, .hero-kicker, .hero-content > :nth-child(1), .product-selector .wrap > :nth-child(1)),
.product-selector .wrap > :nth-child(1),
.hero-clean-kicker {
  animation-delay: .12s !important;
}

.hero :is(.hero-title, .hero-content > :nth-child(2)),
.product-selector .wrap > :nth-child(2),
.hero-clean-title {
  animation-delay: .34s !important;
}

.hero :is(.hero-lines, .hero-content > :nth-child(3)),
.product-selector .wrap > :nth-child(3),
.hero-clean-lines {
  animation-delay: .58s !important;
}

.hero :is(.hero-promise-row, .hero-content > :nth-child(4)),
.product-selector .wrap > :nth-child(4),
.hero-clean-actions {
  animation-delay: .82s !important;
}

.hero :is(.hero-soon, .hero-content > :nth-child(5)),
.product-selector .wrap > :nth-child(5),
.hero-clean-soon {
  animation-delay: 1.06s !important;
}

.hero :is(.hero-actions, .hero-content > :nth-child(6)),
.product-selector .wrap > :nth-child(6),
.hero-clean-proof {
  animation-delay: 1.30s !important;
}

.hero :is(.hero-trust, .hero-content > :nth-child(7)),
.product-selector .wrap > :nth-child(7) {
  animation-delay: 1.54s !important;
}

.hero .hero-visual {
  animation-delay: .55s !important;
}

.reveal > .wrap {
  opacity: 0;
  transform: translateY(30px);
  filter: blur(8px);
  clip-path: none !important;
  transition:
    opacity 2.35s cubic-bezier(.2, 1, .2, 1),
    transform 2.35s cubic-bezier(.2, 1, .2, 1),
    filter 2.35s cubic-bezier(.2, 1, .2, 1) !important;
}

.reveal.visible > .wrap {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

@media (prefers-reduced-motion: reduce) {
  .hero :is(
    .hero-content,
    .hero-content > *,
    .hero-copy > *,
    .hero-kicker,
    .hero-title,
    .hero-lines,
    .hero-promise-row,
    .hero-soon,
    .hero-actions,
    .hero-trust,
    .hero-visual
  ),
  .product-selector .wrap > *,
  .hero-clean-kicker,
  .hero-clean-title,
  .hero-clean-lines,
  .hero-clean-actions,
  .hero-clean-soon,
  .hero-clean-proof,
  .reveal > .wrap {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
    transition: none !important;
  }
}
