Added sizing logic around short viewport heights and scrolling