the child selector is really slow and the `*` is the slowest of them all, in every condition:

 > Child and adjacent selectors are inefficient because, for each matching element, the browser has to evaluate another node. It becomes doubly expensive for each child selector in the rule.
 >
 > -- [google developers](https://developers.google.com/speed/docs/best-practices/rendering)