Медиа-запросы. Что я делаю не так?
Рискну предположить, что дело в meta viewport, погугли про это.
Попробуй добавить в head следующее:<meta name="viewport" content="width=device-width, initial-scale=1">
Уже ответили. Но могу посоветовать использовать bootstrap.