Cascading Style Sheets (CSS) is a stylesheet language that describes the presentation of HTML and XML documents. CSS describes how elements should be displayed on screen, paper, or other media. There are three ways to add CSS styles to HTML: inline, internal, and external. CSS properties can control text styling, box model properties like padding and borders, background images and colors, and layout with flexbox and CSS grid. Media queries allow CSS styles to apply conditionally based on screen size or other media features. Selectors target elements by id, class, type, and other attributes, and combinators define relationships between selectors. Pseudo-classes and pseudo-elements allow additional selection capabilities. Specificity determines which