The term “hosting” does not describe a particular service, but a number of services that provide various functions to a domain. Having a website and emails, for example, are two independent services although in the general case they come together, so a lot of people see 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 handles each particular service - the first one is a numeric IP address, which defines where the site for the domain is loaded from, while the second one is an alphanumeric string, which shows the server that handles the emails for the domain address. For example, 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 directed to that company. If you have custom records on their end, the browser request or the email will be forwarded to the correct server. The concept behind working with separate records is that the two services employ different web protocols and you can have your site hosted by one service provider and the emails by another.