Why doesn’t media(max-width) work on h2 title?

It’s being overwritten by the line at the top. You can see from the bit on the end of the filename that the your media query CSS is on line 133, but the CSS that’s overwriting it is on line 182. Because they use the same selector (.posts h2) the last one will take precedence, according to the rules of specificity. You either need to remove the line on 182, or move your new CSS below it.