CSS is short for Cascading Style Sheets, which is a powerful way to tell browsers how to format and style the HTML for a web page. While HTML controls the structure of a webpage, the CSS controls all the visual presentation of that information such as font type, colors. It also allows you to set up different presentations depending on the size of the screen. This separation of style sheets versus HTML allows for quick global changes, and easy to maintain environments.
CSS3 is the latest evolution of the Cascading Style Sheets language. This adds a lot of new features and additions like rounded corners, shadows, gradients, transitions, animations as well as multi-columns, flexible box and grid layouts.