/* Motion owns animated transforms; avoid a competing CSS transform tween. */
html{scroll-behavior:auto}
[data-project-card][hidden],[data-project-empty][hidden]{display:none!important}
[data-project-card]{position:relative;transform-origin:center;transition-property:box-shadow,background-color!important}
.following-pointer{position:fixed;z-index:90;width:16px;height:16px;pointer-events:none;border-radius:50%;transform-origin:50% 50%}
.following-pointer>svg{display:block;width:24px;height:24px;max-width:none;stroke:#0284c7;fill:#0ea5e9;transform:translate(-12px,-10px) rotate(-70deg)}
.following-pointer-label{min-width:max-content;width:max-content;padding:8px;border-radius:9999px;font-size:12px;line-height:16px;font-weight:600;white-space:nowrap;color:#161616;transform-origin:50% 50%}
.typing-cursor{position:relative;left:3px;top:0;font:inherit;line-height:inherit;animation:typing-blink .8s infinite}
.ui-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes typing-blink{from{opacity:1}to{opacity:0}}
@media(hover:hover) and (pointer:fine){
  .motion-ready [data-project-card],.motion-ready [data-project-card] a:not(.button){cursor:none}
  .motion-ready [data-project-card] .button,.motion-ready [data-project-card] button{cursor:pointer}
}
@media(prefers-reduced-motion:reduce){
  .following-pointer{display:none}
  .typing-cursor{animation:none}
  .motion-ready [data-project-card],.motion-ready [data-project-card] a:not(.button){cursor:auto}
  .motion-ready [data-project-card] a{cursor:pointer}
}
