The word “hosting” doesn't describe a single service, but several services that offer different functions to a domain address. Having a site and emails, as an illustration, are two independent services even though in the general case they come together, so a lot of people think of them as one single service. In fact, every domain name has a several DNS records called A and MX, which show the server that manages each specific service - the first one is a numeric IP address, that identifies where the site for the domain is loaded from, while the latter is an alphanumeric string, which shows the server that manages the emails for the domain. For instance, an A record can be 220.127.116.11 and an MX record would be mx1.domain.com. Each time you open a site or send an email, 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. In case you have custom records on their end, the web browser request or the email will be sent to the correct server. The concept behind working with separate records is that the two services use different web protocols and you can have your site hosted by one provider and the e-mails by another.