Using Viewport for lazy loading. Should fix some wonky bugs on mobile.