The term “hosting” doesn't describe a single service, but a number of services which offer numerous functions to a domain name. Having a website and e-mails, for example, are two independent services despite the fact that in the general case they come together, so many people see them as one single service. In reality, every domain has a couple of DNS records called A and MX, which show the server that manages each particular service - the first one is a numeric IP address, that identifies where the site for the domain is loaded from, while the second one is an alphanumeric string, which shows the server that handles the e-mails for the domain name. For instance, an A record is 22.214.171.124 and an MX record would 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 address has and the traffic/message is first forwarded to that company. When 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 working with separate records is that the two services use different web protocols and you can have your website hosted by one company and the e-mails by another.