CSS is a computer language used to write formatting rules that tell a web browser how webpage content should look in terms of layout and style. There are different types of CSS stylesheets including inline, internal, and external stylesheets. Responsive design is an approach to web design that makes pages adapt to different screen sizes using flexible layouts, images, and media queries in CSS. Media queries allow CSS rules to be applied conditionally based on characteristics of the device viewing the site.