Find normal line distance between vertices of a base mesh and a sculpture

I’m trying to do something and I’m not sure how to go about it. I have a sculpture of a male pectoral muscle. I have a flat mesh which lies beneath this sculpture, inside of it actually. Call the flat mesh the sub-mesh. I’d like to move each vertex in the submesh until it intersects with the sculpture mesh similar to shrink wrap modifier. Specifically I want the distance between the vertex in the submesh and the sculpture which hovers above it, however, I need each vertex in the submesh to move only normal to the sub-mesh. The distances between the vertices in the sub-mesh must be constant.

I saw, mathutils.geometry. intersect_line_plane() in the python library but I’m not sure if this would work. The sculpture is very complex, it is not a simple plane. I thought maybe it is possible to create a line normal to each vertex in the submesh and trace that line until it intersects the sculpture mesh. Then just record that distance.

But how could I find the normal direction of a line off of a vertex in mesh? Also, how could I find the distance of the line traced from this vertex to the sculpture?