По CSS вопросов нет - там просто соблюдать "чистоту"
Да как бы ни так, по моему лично мнению, касательно html, достаточно следовать этим styleguid'ам
От разработчика bootstrap
Опять же соблюдать DRY в чистом html сложно (6 одинаковых блоков по структуре), по этому как советуют выше присмотритесь к jade и другим шаблонизаторам (особенно к php, волею судеб придется работать с ними).
Ну и чтобы быстрее придти к осмысленности, стоит взглянуть на БЭМ хотя бы на уровне именования классов.
nicothin.github.io/idiomatic-pre-CSS