Porque definir los estilos en CSS

Existen muchos motivos para ello. Imagina un sitio web con 30 paginas distintas (no tiene que ser muy grande para llegar a ese número). Imagina que llegado un día, te cansas ser color negro y lo quieres azul, y el color de los enlaces amarillo, y lo quieres en verde. Si tienes los estilos en el HTML, tendrías que ir página a página cambiando los etilos X veces.

CSS, entre otras cosas, te permite tener los estilos definidos en un único lugar, un archivo con código en texto plano, y todas las páginas de tu sitio web usarían ese mismo archivo para definir su presentación. Así, si un día te cansas del color del fondo, el color del texto, el tipo de letra o su tamaño, entonces solo tienes que ir a un único lugar (el archivo CSS) y cambiarlo una única vez.