1. Отделение стилей от структуры страниц. 2. Разгружение кода страницы, так как в рамках страницы могут встречаться элементы со схожими стилями. 3. Разгружение сайта, так как одни и те же стили могут применяться ко всему сайту, следовательно не требуется их в том числе загружать повторно.
CSS - каскадные таблицы стилей. Нужны для верстки сайтов. Представьте, что у вас на странице сайта есть 4 блока div, которые должны выглядеть одинаково (цвет, шрифт, размер шрифта). Так вот, CSS позволяет задать для всех 4 блоков определенный стиль. И не нужно будет копировать свойства блоков при написании HTML-страницы. Достаточно будет просто подключить свои CSS - файлы.