Sweetheart puts a beating heart behind flowing romantic script. The heart keeps its own rhythm while the words rise in over it — the pulse continues after the text has settled.
sh-beat runs the heart on a double-thump cycle timed to a resting heart rate rather than a plain sine, while sh-rise, sh-word and sh-pop bring the script in on separate offsets. The heart never stops, so the frame stays alive after the reveal ends.
Yes — the beat is a self-contained cycle, so an exported GIF or MP4 loops without a visible seam.