The Short Version
Cascading style sheets (CSS) allow web developers to assemble and update a site faster, more easily, and with fewer chances for error. This makes everyone happier.
The Detailed Version
Websites have two primary components; they include the content and the presentation. The content is the actual information on the Web page that's visible to the human eye. The presentation includes a set of instructions a developer gives the website, telling it how to display the content. A site without presentation would simply be a mess of black words on a white background.
Years ago, before CSS was used as widely as it is now, the presentation element of websites was coded directly into the HTML code, right alongside the content. This created a lot of work for anyone who wanted to build a website. Furthermore, because style attributes weren't separated into their own documents (the way CSS is), HTML code typically contained excessive amounts of information, making it difficult to isolate the problems that frequently arose. It was a mess.
Now, with CSS, developers can keep all of the presentation "instructions" in their own files, separate from the HTML code. Moreover, the instructions from one CSS file can simultaneously apply to several elements across many pages within a website. Using this method, a developer can change the look of several pages by editing only one document, saving time and the significantly reducing any margin of error.