0

Python 2, 433 bytes
import re;i,o,l,j=input(),range,lambda s,r:s.replace(*r),"".join;i=l(l(l(i,".1"),"#."),"| ");s=o(len(i))
def f(x,y,w):
for i in o(w):r[x+i][y:y+w]=["".join(c*(w/3)for c in l)for l in["-o-","--o","ooo"]][3*i/w]
for x in s:
for y in s:
for q in s:
r=map(list,l(l(i,"o...