CSS (Cascading Style Sheets) allows separation of document content from document presentation/style. CSS is used to define styles like fonts, colors, spacing for HTML elements. It can be defined inline with elements, internally in <style> tags, or externally in .css files. CSS syntax uses selectors to target elements, sets properties to style, and values to determine styling. Styles cascade from parent elements to nested elements but more specific selector styles will override inherited ones. CSS enables changing a site's look through different style sheets without altering content.