Suggestion # 1 Design for maintainability.
There are various parts of the machine that will need periodic maintenance, including the bearing assemblies for the linear rails. Visualize how much of the machine needs to be disassembled to access any of your bearing assemblies to clean, lubricate or replace them. This will need to be done at some point in time.
On my machine, I can remove the 4 screws on any bearing block and slide it off the end of the rail. Please excuse the state of my machine, I just disassembled and moved my machine from my old shop to a small shed on my new property. It is not fully recommissioned.
Y-axis: (my longest axis the way I am currently configured)
X-axis (along the gantry axis)
And yes, there are hard stops on each axis that prevent the any of the moving parts from sliding off accidentally.
Your design shows profile rails, the blocks on those usually have grease nipples, so that eliminates the need to remove them for lubrication, which helps, but they are all trapped on each end of the linear rail by structure, and quite a bit appears to be involved to remove one.