The term “hosting” doesn't describe one service, but several services which provide a variety of functions to a domain name. Having a site and emails, as an example, are two separate services even though in the general case they come together, so most people see them as one single service. The truth is, each and every domain has a several DNS records called A and MX, which show the server that deals with each particular service - the former is a numeric IP address, which specifies where the website for the domain name is loaded from, while the latter is an alphanumeric string, which shows the server that deals with the emails for the domain address. For instance, an A record would be 18.104.22.168 and an MX record can be mx1.domain.com. Whenever you open a site or send an email, the global DNS servers are contacted to check the name servers that a domain address has and the traffic/message is first forwarded to that company. When you have custom records on their end, the web browser request or the e-mail will then be directed to the correct server. The concept behind working with separate records is that the two services work with different web protocols and you may have your website hosted by one company and the emails by another.