I’ve been looking a bit into Elementary OS and I heard it’s quite restrictive, but I’m not exactly sure how. Is it that you can’t remove/install some packages or something like that?
Honestly the only way to know if it fits your use cases is to download it and try it out and see if you get frustrated.
It’s Linux. You can do whatever you want with enough tweaking. I run elementary on an old laptop and it does it’s job as a window manager.
At best, the default-installed desktop environment and applications won’t have a ton of customizability. You can replace those, if you’re not happy with them.
Everything underneath is a normal Linux, with all the freedom you could ever ask for.
Pantheon is the window manager. Elementary is the underlying system, and if it was me, I wouldn’t bother tweaking it, since they’ve made so many opinionated choices throughout the system. I bet you’d pull your hair out getting things just the way you want.
It would likely be easier to start with a vanilla OS with common defaults and customize from there. If you just like Pantheon, check to see how easy it is to install on various distros (e.g. Fedora has a couple spins that use Pantheon, etc.), and test them out in a VM.