Много читал про методологии организации кода вроде БЭМ, atomic CSS, SMACSS. Но никак я не могу в них вникнуть, как они все это разделяют.
Приходит с опытом
Вкратце, придумывайте название класса для блока так, чтоб из названия было понятно, что он делает и не привязывайте название к позиции блока.
Для позиционирования, используйте отдельные классы в виде обертки или как дополнение к классу блока