:root{--motion-ease:cubic-bezier(.22,1,.36,1)}
.lenis.lenis-smooth{scroll-behavior:auto!important}
/* Replace the original reveal timing with pxaport's 24px / .9s reveal. */
.springs-motion [data-reveal]{opacity:1;transform:none;transition:none}
.springs-motion [data-springs-reveal]{opacity:0;transform:translateY(24px);transition:opacity .9s var(--motion-ease),transform .9s var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}
.springs-motion [data-springs-reveal].motion-shown{opacity:1;transform:none}
.network .card,.member,.step,.rule{transition:box-shadow .3s var(--motion-ease),border-color .3s var(--motion-ease),translate .3s var(--motion-ease)}
@media(hover:hover) and (pointer:fine){.network .card:hover,.member:hover,.step:hover,.rule:hover{translate:0 -5px;border-color:var(--brand-line);box-shadow:0 12px 28px #0002}.network .card:hover .backdrop{transform:scale(1.05)}.member:hover .avatar{scale:1.06}.network .card:hover .discord-icon{scale:1.06}}
.member .avatar,.discord-icon{transition:scale .4s var(--motion-ease)}
.network .backdrop{transition:transform .6s var(--motion-ease)}
.developers-dialog[open]{animation:springs-dialog-enter .3s var(--motion-ease)}
.developers-dialog[open] .developers-roster li{animation:springs-card-rise .5s var(--motion-ease) both}
.developers-roster li:nth-child(2){animation-delay:40ms!important}.developers-roster li:nth-child(3){animation-delay:80ms!important}.developers-roster li:nth-child(4){animation-delay:120ms!important}.developers-roster li:nth-child(5){animation-delay:160ms!important}.developers-roster li:nth-child(6){animation-delay:200ms!important}.developers-roster li:nth-child(7){animation-delay:240ms!important}
.springs-reading-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:150;background:linear-gradient(90deg,var(--love),var(--brand));transform:scaleX(0);transform-origin:left;pointer-events:none}
@keyframes springs-card-rise{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes springs-dialog-enter{from{opacity:0;translate:0 14px;scale:.98}to{opacity:1;translate:0 0;scale:1}}
@media(prefers-reduced-motion:reduce){.springs-motion [data-springs-reveal]{opacity:1;transform:none;transition:none}.network .card:hover,.member:hover,.step:hover,.rule:hover{translate:none}.member:hover .avatar,.network .card:hover .discord-icon{scale:1}.network .card:hover .backdrop{transform:none}.developers-dialog[open],.developers-dialog[open] .developers-roster li{animation:none}.springs-reading-progress{display:none}}
