CSS is a style sheet language used to describe the presentation of HTML and XML documents. It can be applied through inline styles, internal style sheets embedded in HTML <style> tags, or external style sheets linked via <link> tags. CSS uses selectors to target elements and properties to style them by setting values like font sizes, colors, spacing and more. This allows separation of document structure/semantics from presentation.