/* alive common v1 · opening moment + button feel. Loaded after the site's own CSS. */
.js-alive .rv{opacity:0;transform:translate3d(0,18px,0)}
.js-alive.alive-in .rv{opacity:1;transform:none;transition:opacity .55s cubic-bezier(.2,.7,.2,1) calc(var(--d,0) * 1ms),transform .65s cubic-bezier(.2,.7,.2,1) calc(var(--d,0) * 1ms)}
@keyframes rvsafe{to{opacity:1;transform:none}}
.js-alive:not(.alive-in) .rv{animation:rvsafe .01s 2s forwards}
.draw{stroke-dasharray:1;stroke-dashoffset:1}
.js-alive.alive-in .draw{stroke-dashoffset:0;transition:stroke-dashoffset .9s cubic-bezier(.6,.05,.3,1) calc(var(--d,0) * 1ms)}
.js-alive:not(.alive-in) .draw{animation:drsafe .01s 2s forwards}
@keyframes drsafe{to{stroke-dashoffset:0}}
/* buttons: quick, felt response (under .3s) */
a.btn,a.btn-primary,a.btn-solid,a.btn-ghost,a.btn-o,.btn-gold,.btn-outline,button.btn{transition:transform .18s ease,background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important}
a.btn:hover,a.btn-primary:hover,a.btn-solid:hover,.btn-gold:hover,.btn-outline:hover,a.btn-o:hover{transform:translateY(-2px)}
a.btn:active,a.btn-primary:active,a.btn-solid:active,.btn-gold:active,.btn-outline:active,a.btn-o:active,a.btn-ghost:active{transform:translateY(0) scale(.98)}
@media (prefers-reduced-motion:reduce){.js-alive .rv{opacity:1;transform:none}.draw{stroke-dashoffset:0}a.btn:hover,a.btn-primary:hover,a.btn-solid:hover,.btn-gold:hover,.btn-outline:hover{transform:none}}
