The downside to Keepass is it is not self hosted, as in it’s designed to run locally per device. Yes, you can put the database file on a network and have multiple clients from different operating systems access the database, but you will end up with collisions and database issues. Ask me how I know.
Running cross platform Keepass (and it’s various forks) is absolutely doable, but it is not as seemless as BitWarden. I’m running self hosted VaultWarden and I’m hoping to run it for a long time as it’s much easier than Keepass.
My wife had an iPhone XR. She loved it. It was all she needed. However it was only 64 GB and she ran out of storage. If it had an expandable storage option she would still be using it. Your comment is daft.