:root{--ease-out-quint:cubic-bezier(0.16,1,0.3,1)}@keyframes heroEnterFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-enter-1,.hero-enter-2,.hero-enter-3,.hero-enter-4,.hero-enter-5{opacity:0;animation:heroEnterFade .7s var(--ease-out-quint) both}.hero-enter-1{animation-delay:60ms}.hero-enter-2{animation-delay:.14s}.hero-enter-3{animation-delay:.22s}.hero-enter-4{animation-delay:.3s}.hero-enter-5{animation-delay:.38s}@keyframes heroH1Enter{0%{transform:translateY(8px)}to{transform:translateY(0)}}.hero-h1-enter{animation:heroH1Enter .6s var(--ease-out-quint) both}@media (prefers-reduced-motion:reduce){.hero-h1-enter{animation:none}.hero-enter-1,.hero-enter-2,.hero-enter-3,.hero-enter-4,.hero-enter-5{animation:none;opacity:1;transform:none}}.btn-dark-tactile{background:linear-gradient(180deg,#1f2937,#0f172a);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.15),0 6px 24px rgba(0,0,0,.18);transition:transform .2s var(--ease-out-quint),box-shadow .24s var(--ease-out-quint),background .24s var(--ease-out-quint),filter .2s var(--ease-out-quint);will-change:transform,box-shadow,background}.btn-dark-tactile:hover{background:linear-gradient(180deg,#2a3441,#131a28);transform:translateY(-2px) scale(1.02);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.22),0 12px 32px rgba(0,0,0,.25),0 2px 8px rgba(30,64,175,.18);filter:brightness(1.05)}.btn-dark-tactile:active{transform:translateY(0) scale(.98)}.btn-ghost-tactile{background:hsla(0,0%,100%,0);box-shadow:inset 0 0 0 1px rgba(15,23,42,.18);transition:transform .2s var(--ease-out-quint),box-shadow .24s var(--ease-out-quint),background .24s var(--ease-out-quint)}.btn-ghost-tactile:hover{background:hsla(0,0%,100%,.85);transform:translateY(-2px) scale(1.02);box-shadow:inset 0 0 0 1px rgba(15,23,42,.28),0 8px 24px rgba(15,23,42,.06)}.btn-ghost-tactile:active{transform:translateY(0) scale(.98)}@media (prefers-reduced-motion:reduce){.btn-dark-tactile:hover,.btn-ghost-tactile:hover{transform:none}}.reveal{opacity:0;transform:translateY(56px) scale(.975);transition:opacity 1.4s var(--ease-out-quint),transform 1.4s var(--ease-out-quint);will-change:opacity,transform}.reveal-in{opacity:1;transform:translateY(0) scale(1)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.bento-stagger-in .bento-card{animation:bentoCardEnter .95s var(--ease-out-quint) both;animation-delay:calc(var(--bento-idx, 0) * .11s + .1s)}@keyframes bentoCardEnter{0%{opacity:0;transform:translateY(36px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.bento-stagger-in .bento-card{animation:none}}