The term “hosting” doesn't describe just one service, but a set of services that provide various functions to a domain name. Having a website and emails, for instance, are two independent services despite the fact that in the general case they come together, so most of the people see them as one single service. In reality, each and every domain name has a number of DNS records called A and MX, which show the server that handles each particular service - the former is a numeric IP address, which identifies where the site for the domain address is loaded from, while the second one is an alphanumeric string, which shows the server that handles the emails for the domain. For instance, an A record is 18.104.22.168 and an MX record can be mx1.domain.com. Whenever you open a site or send an e-mail, the global DNS servers are contacted to check the name servers that a domain name has and the traffic/message is first forwarded to that company. When you have custom records on their end, the browser request or the e-mail will be forwarded to the correct server. The concept behind using separate records is that the two services work with different web protocols and you could have your website hosted by one service provider and the e-mail messages by another.