I'm creating a molecular model where I need to rotate a cylinder (representing a chemical bond) around the normal vector of its end face. The cylinder connects to an OH group (represented by red and grey spheres with another cylinder between them), and I need the bond to rotate so the OH group moves with it (direction is shown with an arrow in the picture). 
My current geometry nodes setup uses Capture Attribute to store the face normal of the cylinder's end, then connects it to the Axis input of a Vector Rotate node. When I disconnect the normal from Vector Rotate and use standard X/Y/Z axis rotation, the bond does rotate, but this isn't useful because the cylinder is not aligned with any global axis and cannot be due to the molecular geometry. When I connect the captured face normal to the Vector Rotate axis input, it doesn't rotate at all.
If I just connect a Vector node to the Axis socket it doesn't seem to rotate at all when the Vector node is set at 0, 0, 0. If you change one of them to a non-zero value then it rotates. So I think probably what is happening is the Capture Attribute is passing all zeros to the Axis node for some reason. Not sure why that would be.
The goal is to rotate the cylinder around its actual bond axis (the end face normal) rather than global axes, so that the attached OH group rotates properly with the bond. Ideally, the solution should be using geometry nodes, as I'd love to use it more than once and don't want to waste time creating other systems. I already have another way of rotating the OH group by setting the 3D cursor to the oxygen (red sphere), setting the origin of the O-H bond to the 3D cursor, aligning the cylinder's local axis, then parenting the OH group to the bond and rotating it using that axis - but it's too long and inconvenient, while with a geometry node setup I could apply it to other bonds as well. Here's a link to video where I'm doing rotation the old way: link to video If I could get the same result by using geometry nodes setup, that would be amazing.
What's the proper way to rotate a cylinder mesh around a captured face normal vector in geometry nodes? Should I be using Transform Geometry or a different node setup entirely? Any guidance on the correct node chain for this type of molecular bond rotation would be greatly appreciated. Thank you.
