The method of send is largely irrelevant for IP warm-up. All of the above can potentially work - what is important is what you are sending and who you are sending it to. I would probably lean towards manual sends from Content Builder for the reasons I'll outline below.
For IP warm-up you should be sending to your most engaged subscribers and sending emails that will have high engagement...you should have a plan worked out that potentially includes multiple emails that span at least 8 weeks (because you're ideally going to need to send a lot of emails - as you say it'll be in the millions).
The SFMC documentation for this is fairly thorough - https://help.salesforce.com/articleView?id=sf.mc_es_ip_address_warming.htm&type=5
Depending on what your normal email content would be, I would be ever-so-slightly concerned that you're planning to send safety protocols and product awareness, unless of course you think the email engagement on these would be high. If you think engagement will be good they may do the job.
What you do have to concentrate on (and this is where you'll spend all your time) is breaking up your audience into controlled daily send lists. You don't want to go above the daily max volumes from the SF help page and you need to make sure your numbers for each domain are under the daily ISP/domain-based limit. You also don't necessarily want to be sending to everyone, especially at the beginning of IP warm-up...break up your total audience and concentrate on the people that actually interact with your emails based on what they've historically done.
And most important of all, check your email sends on a daily basis to make sure there's no major issues (this is why manual is probably the easiest). What you're looking for is hard or block bounces that centre around a single domain. If for some reason you get issues with a domain/ISP you'll need to deal with them at the time. Don't keep sending to the domain if you get blocked because the emails won't get through and you're just damaging your IP.