:root{
/* easing */
--ease-pop:cubic-bezier(.34,1.56,.64,1); /* @kind other */ /* overshoot bounce — cards, badges */
--ease-rise:cubic-bezier(.22,.8,.25,1); /* @kind other */ /* decisive slide-up for text */
--ease-press:cubic-bezier(.4,0,.2,1); /* @kind other */
/* durations */
--dur-pop:.55s; /* @kind other */
--dur-rise:.9s; /* @kind other */
--dur-press:.15s; /* @kind other */ /* hover translate/shadow swap */
--dur-ui:.25s; /* @kind other */ /* accordion, toggles */
--dur-hover:.18s; /* @kind other */ /* guide-card lift */
}
/* signature keyframes (from homepage) */
@keyframes sUp{from{opacity:0;transform:translateY(56px)}to{opacity:1;transform:none}}
@keyframes popIn{from{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}
@keyframes popInR{from{opacity:0;transform:scale(.55) rotate(-1.5deg)}to{opacity:1;transform:scale(1) rotate(-1.5deg)}}
@keyframes blink{50%{opacity:0}}
@keyframes bob{50%{transform:translateY(4px)}}
@keyframes typeW{from{width:0}to{width:var(--tw,454px)}}
@media (prefers-reduced-motion: reduce){*{animation:none !important;transition:none !important}}
