CSS (Cascading Style Sheets) is a style sheet language used to describe the presentation of HTML documents. HTML was intended for describing content, not design. As HTML allowed design styles, web pages became unwieldy when changing design required changing attributes on every page. CSS removes styles from HTML and stores them commonly in a separate file. Changes to the CSS file then update styles across the entire website. CSS rules consist of selectors that specify elements to style and declaration blocks that define properties for those elements. Styles can be defined internally in HTML pages or externally in separate CSS files for easier website-wide design changes.