Let's assume each unique visitor will hit 200 PHP generates URLs - this would include any requests to JSON APIs to render the cart, etc. That would be:
60,000,000 PHP requests per month
2,000,000/day
83,333/hour
1,388/minute
23/second
If we assume each PHP request takes 1000ms on average that means you're going to have 23 PHP requests running at any one time so, allowing 150MB for each PHP worker, that's 3450MB RAM for PHP. To allow for bottlenecks (for instance locked tables), peaks in traffic and other running services such as the web server I would quadruple that and deploy at least 16GB RAM with the fastest CPU you can achieve, plus NVMe storage.
If your cache is effective then hopefully you can serve a lot of these requests from cache and your server load will be lower.
This is all guesswork of course and the only way to really know is to host the website and see how it performs. If you don't have your own infrastructure, try to choose a cloud provider who can resize your server quickly.