From WordPress Codex:
Add the $max_pages parameter to the next_posts_link() function when
querying the loop with WP_Query. To get the total amount of pages you
can use the ‘max_num_pages’ property of the custom WP_Query object.
So:
next_posts_link( __( 'Next <span class="meta-nav">→</span>', 'domain' ), $loop->max_num_pages );