/* A calm first-view reveal for the role-selection landing page. */
.gentle-reveal-landing h1,
.gentle-reveal-landing .gentle-reveal-copy,
.gentle-reveal-landing .gentle-reveal-role {
  will-change: opacity, transform;
}

.gentle-reveal-landing:not(.gentle-reveal-ready) h1,
.gentle-reveal-landing:not(.gentle-reveal-ready) .gentle-reveal-copy,
.gentle-reveal-landing:not(.gentle-reveal-ready) .gentle-reveal-role {
  opacity: 0;
}

.gentle-reveal-landing.gentle-reveal-ready h1 {
  animation: memoir-title-arrive 560ms cubic-bezier(.22, .75, .3, 1) both;
}
.gentle-reveal-landing.gentle-reveal-ready .gentle-reveal-copy {
  animation: memoir-copy-arrive 520ms cubic-bezier(.22, .75, .3, 1) 120ms both;
}
.gentle-reveal-landing.gentle-reveal-ready .gentle-reveal-role {
  animation: memoir-card-arrive 480ms cubic-bezier(.22, .75, .3, 1) both;
}
.gentle-reveal-landing.gentle-reveal-ready .gentle-reveal-role-1 { animation-delay: 250ms; }
.gentle-reveal-landing.gentle-reveal-ready .gentle-reveal-role-2 { animation-delay: 380ms; }

@keyframes memoir-title-arrive {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes memoir-copy-arrive {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes memoir-card-arrive {
  from { opacity: 0; transform: translateY(18px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
  .gentle-reveal-landing h1,
  .gentle-reveal-landing .gentle-reveal-copy,
  .gentle-reveal-landing .gentle-reveal-role {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
