html {
  scroll-behavior: smooth;
}

body {
  background-image:
    linear-gradient(rgba(255,255,255,0.45), rgba(255,255,255,0.45)),
    radial-gradient(circle at top, rgba(199, 169, 123, 0.10), transparent 28%),
    radial-gradient(circle at bottom right, rgba(214, 190, 176, 0.18), transparent 24%);
}

.hero-card,
.intent-card,
article,
footer a,
header a,
button {
  will-change: transform;
}

.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 700ms ease, transform 700ms ease;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .animate-floaty {
    animation: none !important;
  }
}
