If you're on systemd anyway, rather than wg-quick, consider defining your wireguard networks through the more powerful systemd-networkd. It has native support and you can define routes, policies, and fwmarks etc in the same files rather than mucking around with ip-route and iptables commands.
wg-quick is really that - quickly get a simple tunnel up and running which works fine when you just want to route all IPs in a single subnet or 0.0.0.0/0 and nothing more, but anything more complex (split tunneling for example) and it quickly (!) becomes cumbersome.
Slightly OT but I personally very much prefer systemd-networkd over NetworkManager, which I find unpredictable.
https://elou.world/en/tutorial/wireguard
https://www.man7.org/linux/man-pages/man5/systemd.netdev.5.h...