CSS (Cascading Style Sheets) allows styling and formatting of HTML documents. CSS rules tell HTML how to display by separating structure from presentation. There are various CSS selectors that target elements like classes, IDs, and tags. Properties like color, font, padding, margin and background customize elements. CSS box model controls layout with properties for dimensions, borders, margins and padding. Positioning options include static, relative, fixed and absolute.