matrix – Apply external to the list of matrices and vectors

I have a list, M, of nxn square matrices, {M1,M2,M3,...}, and a list, V, of vectors nx1, {v1,v2,v3,...}, and the corresponding transpositions of those vectors {r1,r2,r3,...}. I am trying to form the matrix
{{r1.M1.v1, r2.M1.v2, r3.M1.v3,...},{{r1.M2.v1, r2.M2.v2, r3.M2.v3,...},...}

It looked like a method using Outer It would work, like:

Outer(Transpose(#2).#1.#2 &,M,V), which should be a two-dimensional array of scalars.

However, I think this is a problem because lists M and V are technically lists of lists (M is a list of matrices, V is a list of vectors), so that the external is distributed in the sublists, in instead of doing the calculation I want and it ends up being an object of high dimension. I have tried to play with several flattening schemes, but I haven't discovered it yet: any help on how to implement this functionality (is Outer even the right functional tool to use)?