I add the gradient on :hover to the th-header__links class.
This class is added to the “Nav links” items. There it works perfectly.
If this class is added to the “Dropdown” item, it does not work. Any gradient applied to Text makes the dropdown text disappear.
Therefore it is not added to the nav nestable element because that would make all text links on hover gradient. But again, if you would do that, also the “Dropdown” text would disappear on hover.
Basically the moment you add to the Dropdown item a gradient on apply to “Text” and give it a “color”, the text disappears. Also inside the dropdown content.
To add the gradient to the text, the text-fill-color must be set to transparent. Then the text is given a background-image (that contains the gradient) and told that the gradient should only take place within the text (background-clip).
Because the dropdown element is a parent element, the text-fill-color is inherited by the children, so they also get a transparent text-fill-color, making them invisible.
Solution
You can easily work around this problem by adding the following CSS to the dropdown element (or the nav nestable element) to override the transparent value.