Of course, if you can bill the machines through to the clients, why bother!
Good luck switching hard drives on locked down customer provided laptops, or from the own IT on the consulting firm for that matter.
but you can with Linux.
I've never tried it with MacOS but the days of swapping Apple harddrives are in the past anyway.
Now, if you're doing this for concerns regarding discovery, I'd just use separate devices, as my confidence is low the court wouldn't just require the entire host(s) involved anyway.
This is personally why my environment is not tied to a specific host. Should any given device(s) get caught up in discovery I can still build/recover a full fresh environment on a new device relatively unimpeded - and do so regularly to ensure it's not just a theoretical. It can be a hassle, but at least I'm not trying to juggle devices in that way and have flexibility to either BYOB or work with client supplied kit and still bring my env and tools with me.
For me, I have a separate laptop for every contract I work on, sometimes more than one for a given contract (for complicated compliance reasons). The reason for this is to a) prevent cross-contamination between projects, and b) because the laptops could get caught up in legal shenanigans. If one contract ends up in dispute, the laptop could end up getting subpoenaed, and if it was my only laptop I would be SOL. Or god forbid, code from two projects gets mixed by accident, and now I'm in violations of multiple NDAs. In one case, the customer paid for my hardware during development, and when we were done they took ownership of the laptops along with the code.
Your work computer is just like your work code: At the end of the day it's not really yours, don't get attached.