Blueprint Sync Ladder Climb Animations

Im working on an immersive side-scroller title, and I have climb up, climb down, and some idles for a ladder mechanic. As well as a ladder static mesh that has steps that are perfectly spaced down to the math. The animations were created with this mesh to ensure they work infinitely, which they do.

Im just running into issues where the animation becomes offset. I need to ensure his hands and legs are always grabbing the steps of the ladder. Animation quality is all apart of the immersion. I tried relying on root motion of the animations and limited the axis to the Z axis for the player controller. Set a bunch of booleans to make sure he only enters idle after grabbing each step. But its not working. I think things are getting offset when the character idles somehow.

Does anyone have any guidance on how to properly sync the character to a ladder mesh with precision?

UPDATE: I did have an idea, that when the character goes idle on the ladder, that it will interpolate to specific points on the ladder to preserve accuracy. Havent tried that yet though.