Doing this is going to require quite a lot of technical skill, especially to do it securely.
What I would do is identify the location with the best, most reliable internet connection and reliable power, and put a server there which would aggregate the video streams into one convenient web page.
Then I'd establish connectivity between the locations via one of these methods:
- Port forward (in the internet router at each location) the RTSP port (554 TCP) of the camera with the forwarding rule or firewall preventing access to this port from any address except that of the aggregation server because opening the port to the whole internet is a recipe for getting the cameras hacked. I'd also set up DDNS if the locations did not have static IP addresses, or use IPv6 instead of IPv4.
- Otherwise I'd use a site-to-site VPN, probably with a 3rd-party service like tailscale in order to ease the routing issues. But this requires a server at each location to run the tailscale software and serve as a gateway. And there may be issues with the local networks at multiple locations using the same IPv4 address range. I haven't tried it before so I'm not sure what all is involved.
Then on the aggregation server I would install any VMS product, most likely
Blue Iris because that is what I am most familiar with, and have it pull video streams from each camera. And finally make the VMS product's mobile app / web interface available to the company management as requested.