The word “hosting” does not describe one service, but several services which provide different functions to a domain. Having a website and e-mails, for instance, are two individual services despite the fact that in the general case they come together, so most of the people see them as one single service. Actually, each domain name has a several DNS records called A and MX, which show the server that manages each particular service - the former is a numeric IP address, which specifies where the website for the domain is loaded from, while the latter is an alphanumeric string, which shows the server that handles the e-mails for the domain address. For example, an A record is 123.123.123.123 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 has and the traffic/message is first directed to that company. In case you have custom records on their end, the web browser request or the email will then be directed to the correct server. The concept behind using separate records is that the two services work with different web protocols and you can have your website hosted by one provider and the emails by another.