Height-Restricted Procedural foliage along the z axis

I have a procedural foliage blueprint controlled by a material instance, and although grass and trees are spawned as intended only where there is a relatively flat surface, how can I ensure that neither grass nor trees spawn below a certain customizable depth along the z axis even if the surface is flat?

Currently, the grass placement is determined by weight according to a weight-based layer in the landscape paint settings. The trees are placed anywhere there is grass according to a grass function and foliage blueprint / grass type.

I actually have a similar issue, I wish to define the height just like when you can paint the terrain you have the Height and Slope values, how would you define this value in a procedural blueprint?
So that we can define the height that foliage would spawn after-all I have lily-pads growing up on the banks of a lake when they should be only below a certain level of of the lake, because I have mud extending along the upper edge of the lake.

I am amazed that the LandscapeGrassType

Although it includes all the usual settings to setup the Foliage actors, it still does not include a value for “Height and Slope”

So how do you define this in a Blueprint then?