load balancing – How does DNS work across two separate networks using NAT?

Apologies for sounding naive in advance, I am a newbie in servers/networking and have a generic question around Load Balancers, DNS and NATting.

We have an app deployed on our private data center. The DNS/endpoint points to our load balancer (HAProxy). We have a new client who want to access our endpoint but it is not possible to establish direct connectivity from their hosts to our endpoint (as they are outside our network). So, we thought of implementing NATting. Now the client has established some sort of NATting where they connect to the NAT host and it routes traffic to our load balancer.

However, this is not enough as traffic is served over https on our load balancer and the dns has to resolve along with the certificates (SSL). Their network does not have direct access to our network and thus their hosts do not understand what our endpoint is.

So, how do we make this to work? How can we make our DNS accessible to them securely so that the requests flow from their network into NAT servers and then onto our load balancer?