Помимо каскадирования(и приоритета по более точному указанию), работает принцип последовательности.
Таким образом ваши стили указанные в media queries срабатывают, но затем перетираются стилями которые подходят этим же элементам, но указаны ниже.
Короче говоря, лучше всего все media запросы располагать в конце файла либо несоредственно после определения базовых стилей, таким образом медиа запросы будут дополнением, которое при срабатывании переопределит основной класс.
Отдельный разговор методики распределения свойств, наверное самые простой будет определять в css классах базовые свойства(иногда + для мобильных вертикальных экранов), а далее в медиа запросах расширять их для каждого более высокого разрешения экрана. От простого к сложному.
PS а вообще на досуге советую
изучить.