We open with a shimmer grid, load the first 12 posts from the API, and fetch the next 12 when the footer enters view.