On mobile, viewport height can be dynamic due to e.g. collapsible tab
bar. vh is based on the largest viewport height, so specifying 100vh
will cause part of the body to be covered by e.g. expanded tab bar.
using svh fixes this issue, as it is based on the smallest possible
viewport height instead e.g. the viewport height when the tab bar is
expanded.