Scroll progress "pointer" in navigation

Is it possible to create a pointer that moves up and down based on the current section of a one-page site? Currently I can create the effect I’m after but it only works once, ie. if I scroll back up the arrow doesn’t move up.

I’ve tried using a “while scrolling in page” interaction but it doesn’t provide precise enough control as it’s based on the height of the viewport. I don’t see how to control that the arrow will point to the correct section.

Thank you

Here is my public share link