The word “hosting” does not describe only one service, but a set of services which offer numerous functions to a domain name. Having a site and e-mails, for example, are two separate services though in the general case they come together, so most people consider them as one single service. In reality, each domain has a couple of DNS records called A and MX, which show the server that deals with each specific service - the former is a numeric IP address, that defines where the site for the domain name is loaded from, while the second one is an alphanumeric string, which shows the server that manages the emails for the domain name. For example, an A record can be 126.96.36.199 and an MX record is mx1.domain.com. Every time you open a site or send an e-mail, the global DNS servers are contacted to check the name servers that a domain address has and the traffic/message is first directed to that company. In case you have custom records on their end, the web browser request or the e-mail will be sent to the correct server. The reasoning behind working with separate records is that the two services work with different web protocols and you may have your site hosted by one provider and the e-mail messages by another.