I guess widely used protocols today don't encrypt the domain names in TLS certificates. Does HTTP/3 and TLS 1.3 encrypt domain names of web sites?
I think you are confusing this with encrypting the domain name send in the TLS handshake by the client, which has nothing to do with encrypting parts of the certificate. In fact, with TLS 1.3 certificates are encrypted anyway inside the handshake.
What is left instead is that the client even with TLS 1.3 sends the expected target domain name inside the ClientHello (SNI - server domain indication). Up-front knowledge of this name is necessary for the server to pick the correct certificate in case when multiple certificates are configured on the same IP address.
There is already a draft to encrypt the SNI too and there are also implementations of this draft. Note that in order to work it must be supported by both client and server, i.e. there is no way to protect connections from the client side with this unless the server also supports this. See Encrypt it or lose it: how encrypted SNI works for more details.