/* Motion. Two easings, three durations — used everywhere instead of ad-hoc values. */
:root {
  --ease-standard: cubic-bezier(0.2, 0, 0, 1); /* @kind other */
  --ease-emphasized: cubic-bezier(0.22, 1, 0.36, 1); /* @kind other */
  --dur-fast: 120ms; /* @kind other */
  --dur-base: 200ms; /* @kind other */
  --dur-slow: 400ms; /* @kind other */

  /* Interaction contract */
  --press-scale: 0.97; /* @kind other */       /* buttons: active:scale-[0.97] */
  --press-scale-lg: 0.98; /* @kind other */    /* large/full-width buttons */
  --hover-lift: -2px; /* @kind other */        /* navigable cards: hover:-translate-y-0.5 */
  --hover-lift-window: -4px; /* @kind other */ /* WindowMock in a card grid */
}

@keyframes hero-rise { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes settle { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fade-in { from { opacity: 0; } to { opacity: 1; } }
