html.portal-scroll-cursor,html.portal-scroll-cursor body{cursor:none}html.portal-scroll-cursor a,html.portal-scroll-cursor button,html.portal-scroll-cursor [role=button],html.portal-scroll-cursor input,html.portal-scroll-cursor textarea,html.portal-scroll-cursor select{cursor:pointer}.portal-scroll-cursor-follower{z-index:9999;pointer-events:none;opacity:0;will-change:transform, opacity;width:32px;height:32px;margin:-16px 0 0 -16px;transition:opacity .12s;position:fixed;top:0;left:0}.portal-scroll-cursor-follower__motion{width:100%;height:100%;animation:1.4s ease-in-out infinite portal-scroll-cursor-bob}@keyframes portal-scroll-cursor-bob{0%,to{transform:translateY(-3px)}50%{transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.portal-scroll-cursor-follower__motion{animation:none}}@supports (animation-timeline:scroll()){.portal-scroll-track{height:var(--portal-scroll-track-height,250vh)}.portal-scroll-viewport{height:100svh;position:sticky;top:0;overflow:hidden}@keyframes portal-foreground-zoom{0%{transform:scale(1)}to{transform:scale(2.25)}}@keyframes portal-background-zoom{0%{transform:scale(1)}to{transform:scale(1.12)}}@keyframes portal-ui-fade{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-24px)}}@keyframes portal-vignette-in{0%{opacity:0}to{opacity:.22}}.portal-scroll__foreground{transform-origin:50%;will-change:transform;animation:linear both portal-foreground-zoom;animation-timeline:scroll(root);animation-range:0% 85%}.portal-scroll__background{transform-origin:50%;will-change:transform;animation:linear both portal-background-zoom;animation-timeline:scroll(root);animation-range:0% 85%}.portal-scroll__ui{animation:linear both portal-ui-fade;animation-timeline:scroll(root);animation-range:0% 32%}.portal-scroll__vignette{animation:linear both portal-vignette-in;animation-timeline:scroll(root);animation-range:35% 75%}}
