.scroll-invitation .surprise-hint{display:block!important;font-size:clamp(14px,1.3vw,20px);line-height:1.5;margin-top:7px;animation:surprise-breathe 2.4s ease-in-out infinite;color:#625951}
@keyframes surprise-breathe{0%,100%{opacity:.4}50%{opacity:1}}
.shot-hat.is-swaying .hat-finished{transform-origin:50% 7%;animation:momo-sway 4s ease-in-out infinite}
@keyframes momo-sway{0%,100%{rotate:-2deg}50%{rotate:2deg}}
#desktop .collage-cursor{right:auto;left:61%;top:52%;font-size:44px;opacity:.45;filter:none;animation:cursor-invite 2.2s ease-in-out infinite;transform:none;color:#555}
@keyframes cursor-invite{0%,100%{opacity:.22;translate:5px 5px}50%{opacity:.6;translate:0 0}}
@media(max-width:700px){#desktop .collage-cursor{font-size:28px;left:61%;top:52%}.scroll-invitation .surprise-hint{font-size:14px}}
@media(prefers-reduced-motion:reduce){.scroll-invitation .surprise-hint,.shot-hat.is-swaying .hat-finished,#desktop .collage-cursor{animation:none;opacity:.6}}

.collage-cursor svg{display:block;width:44px;height:52px}@media(max-width:700px){.collage-cursor svg{width:28px;height:34px}}

/* Cursor tip shares the exact canvas coordinates and character transform. */
#desktop .demo-pet .collage-cursor{left:var(--tip-x);top:var(--tip-y);right:auto;width:48px;height:56px;transform:translate(-10px,-8px);translate:none;animation:cursor-tip-pulse 2.2s ease-in-out infinite}
#desktop .demo-pet .collage-cursor[hidden]{display:none}
#desktop .demo-pet .collage-cursor svg{width:48px;height:56px}
@keyframes cursor-tip-pulse{0%,100%{opacity:.22}50%{opacity:.6}}
@media(max-width:700px){#desktop .demo-pet .collage-cursor{width:30px;height:35px;transform:translate(-6.25px,-5px)}#desktop .demo-pet .collage-cursor svg{width:30px;height:35px}}
@media(prefers-reduced-motion:reduce){#desktop .demo-pet .collage-cursor{animation:none;opacity:.45}}
