Blog template with different header to rest of site

Try this:

if ( !is_home() && !is_cart() && !is_checkout() && !is_account_page() ) :
    if ( is_page( 'contact-us' ) ):
        get_template_part( 'template-parts/header/header', 'map' ); 
    else:
        get_template_part( 'template-parts/header/header', 'slider' );
    endif;
endif;

is_home() will return true if the current page/query is for the blog homepage, otherwise it returns false.

You can read up about is_home() on the WordPress Developer page.