The term “hosting” doesn't describe a particular service, but a set of services that provide numerous functions to a domain address. Having a site and e-mails, for instance, are two independent services despite the fact that in the general case they come together, so most of the people see them as one single service. Actually, every domain has a number of 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 name is loaded from, while the latter is an alphanumeric string, which shows the server that deals with the emails for the domain address. As an illustration, an A record is 126.96.36.199 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. If you have custom records on their end, the Internet browser request or the e-mail will then be forwarded to the correct server. The idea behind using separate records is that the two services use different web protocols and you could have your site hosted by one company and the emails by another.