I explained before that I work with masks a lot (one hard end plus one soft end (you can base that on simple shape combi or the get position in texture+ x to scalar + some smooth steps), the soft end broken up by voronoi PF), so every mask can be applied to a different surface shader, making a stack of them in the water line. And if you transform each incoming mask (move it lengthwise along the coast) you get different patterns overlapping.
Time to experiment, guys!