Properly lazy-loading background images with JS fallback