There are two approaches to this. The approach that most competition aquascapers use is to create steep slopes is by simply layering rock/wood thickly. The rock itself becomes the slope. Lighter rock such as lava rock is often used as a base, with more aesthetic rock on the surface. Cosmetic sand/aquasoil is then used to fill the gaps. This approach uses a lot of rock, but gives the most flexibility in terms of hardscape positioning.
In this hardscape by Takayuki fukada, the rear rock is elevated using bricks.
In such scapes, the rock and wood themselves are planted with mosses and plants that can grow attached to hardscape. There is less usage of rooted plants. Again, this approach gives the most flexibility in terms of hardscape design - as one is not limited to planting in areas with substrate.
Aquascapers that intend to have large portions of rooted plants use this method. Aquasoil is layered thickly in the rear, with less soil in the front and hardscape is formed into ridgelines and used to hold back the slope from sliding. Cosmetic sand may be used as well. Planting must be done carefully at the start; once rooted, the plants will hold back the soil as well. Best to also avoid fish that will disturb the substrate layer and cause the slope to slide.
In this example by Luca galarraga, aquasoil is used thickly in the rear while cosmetic sand is used in the front part of the planted tank where there is less rooted plants. Hardscape form ridges which hold back the soil slopes.
If using very deep soil layers to construct slopes, drainage crate/flo-cells can be used to support the soil/hardscape. The deeper layers are then filled with large porous inert substrate such as small sized lava rock and clay chips.
This porous inert layer prevents compaction from using deep soil layers. Generally I would want the soil layer to be less than 4 inches or so. This pertains mainly to raw soils. Aquasoils with their large pore spacing due to the granular format have less issues with compaction even with very deep slopes.