Gradually moving over from Teams to Hetzner + Nextcloud over the past year. The chat app is the blocker (Nextcloud Talk is not quite there yet). But we've moved over files, docs, calendar, photos, etc.
I wouldn't hard recommend based on lack of solid experience of using them over time, but Gandi showed a lot of promise for me.
Context: I used to run a domain-related service that used registrar api's and gandi's seemed the most well thought out by a considerable way. The drawback was they're quite expensive for registrations/renewals unless you're doing it at volume.
I had reservations about them being a French company wrt support but their API was so good I never needed to contact them on anything.
Already done: replaced SendGrid with Sweego.
Later: move domains from US registrar to EU based.
The difficult bit is the Microsoft Office because we are also using Azure DevOps for code, tickets, wiki and ci/cd.