The term “hosting” doesn't describe one service, but a number of services which provide different functions to a domain. Having a website and emails, as an illustration, are two independent services despite the fact that in the general case they come together, so most of the people consider them as one single service. In reality, every domain name has a couple of DNS records called A and MX, which show the server that deals with each particular service - the former is a numeric IP address, which defines where the site for the domain address is loaded from, while the latter is an alphanumeric string, which shows the server that handles the e-mails for the domain address. As an illustration, an A record is 123.123.123.123 and an MX record would be mx1.domain.com. Each time you open a website 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 forwarded to that company. In case you have custom records on their end, the web browser request or the e-mail will be directed to the correct server. The reasoning behind employing separate records is that the two services employ different web protocols and you could have your website hosted by one service provider and the e-mail messages by another.