Простой способ — каждый блок содержит все относящиеся к нему media-запросы: https://ru.bem.info/methodology/faq/#Как-адаптировать-сайт-к-различным-устройствам
Да, при такой схеме условия запросов будут дублироваться в разных блоках, но это нормально — на этапе сборки их можно будет автоматически сгруппировать. Например, с помощью https://www.npmjs.com/package/group-css-media-queries
Второй, более сложный, но более мощный вариант — совмещать этот подход с использованием уровней переопределения (https://ru.bem.info/methodology/redefinition-levels/).
Благодарю!