Make a page return false to is_single() and true for is_post_type_archive() before wp_enqueue_scripts

I am using a page to replace custom post type archive. I used page template in that page to query CPTs like a CPT archive

The problem is, since I conditionally load different css files based on the page, I want this page to return false to is_single() and true to is_archive() so that it won’t break my conditional. How can I achieve this? What is the earliest hook I can use?