Large text needs only 4.5:1 under 1.4.6, so a heading of 24px or more, or 18.66px and bold, can stay in #767676. Everything smaller needs 7:1, and that includes the text designers most often make quiet: bylines, captions, helper text under a field, the small print in a footer.
Give the token a name that says what it may be used for, and write its ratio beside it. A token called --muted gets used for anything quiet; one called --text-secondary with a 7.46:1 comment tells the next person it is safe for paragraphs.
prefers-contrast: more is worth honouring, as the switch does when nothing is saved, but on its own it is not a fix for 1.4.6. It only changes the page for people who have turned on a contrast setting on their device, and the page everyone else gets still has to meet the criterion.
The switch reads its choice in a script, so a page can show the grey for a moment before it turns dark. Set data-contrast from localStorage in a small script in the head, before the body is drawn, or on the server from a cookie.
Every state and every theme counts, as with the AA minimum: hover, focus and visited colours, a dark theme's own greys, and text with opacity on it, whose colour is lighter than its token. In a Windows contrast theme the browser replaces these colours with the user's own, so the grey doesn't reach them there, but it still has to pass in the page's own colours.