Start here. This is the direct spoken answer to practice first.
Overview
The first task is to determine whether the selector matched. Only then does it make sense to ask why another declaration won.
I inspect the element's matched and computed styles in DevTools. First I confirm the selector matches and the stylesheet loaded. Then I check cascade origin, importance, cascade layers, specificity, and source order. If the property is inherited, I trace the computed value from the ancestor and distinguish inheritance from a selector that directly matched the child.