/* the article is a light page in both themes, so these apply in both (hero rules stay light-only).
   generated from the contrast audit for case-studies/luxury-bedding.html: text that failed WCAG AA on its real background, lifted toward ink only as far as needed (hue kept). Regenerate with theme/_qa. */
html[data-theme] .cs-finding .cs-finding-num { color: rgb(122, 110, 92); }   /* 1.51:1  "01" */
html[data-theme] .cs-ev-num .cs-ev-lbl { color: rgb(122, 107, 82); }   /* 1.66:1  "Google Ads ROAS" */
html[data-theme] .cs-intervention .cs-intervention-num { color: rgb(116, 115, 121); }   /* 1.75:1  "01" */
html[data-theme] .cs-chrome-bar .cs-chrome-label { color: rgb(104, 103, 113); }   /* 1.86:1  "ads.google.com · Campaigns" */
html[data-theme] .ault-ev-frame .ault-ev-nda { color: rgb(115, 115, 118); opacity: 1; }   /* 1.87:1  "Brand identity withheld pe" */
html[data-theme] .cs-mid-hook .cs-mid-hook-link { color: rgb(130, 108, 73); }   /* 2.02:1  "That’s what the Growth Dia" */
html[data-theme] .multichannel-channel .multichannel-roas-lbl { color: rgb(115, 115, 118); opacity: 1; }   /* 2.04:1  "ROAS · Sep 2024" */
html[data-theme] .multichannel-channel.is-secondary .multichannel-roas-lbl { color: rgb(115, 115, 118); opacity: 1; }   /* 2.04:1  "ROAS · Sep 2024" */
html[data-theme] .arch-header .arch-eyebrow { color: rgb(111, 111, 119); }   /* 2.08:1  "Account Architecture" */
html[data-theme] .multichannel-header .multichannel-eyebrow { color: rgb(111, 111, 119); }   /* 2.08:1  "Sustained Performance · Se" */
html[data-theme] .perf-header .perf-eyebrow { color: rgb(115, 115, 123); }   /* 2.09:1  "Full-Year Performance · 20" */
html[data-theme] .cs-ev-num .cs-ev-val { color: rgb(162, 130, 79); }   /* 2.11:1  "10.26×" */
html[data-theme] .perf-conclusion .perf-attribution { color: rgb(115, 115, 117); opacity: 1; }   /* 2.2:1  "All performance data sourc" */
html[data-theme] .perf-exec-table.cs-stack th { color: rgb(113, 113, 115); opacity: 1; }   /* 2.21:1  "Metric" */
html[data-theme] .is-highlighted .metric-note { color: rgb(113, 113, 115); opacity: 1; }   /* 2.21:1  "Full account view, all cam" */
html[data-theme] .arch-lane-foot .arch-lane-metric-lbl { color: rgb(115, 115, 118); opacity: 1; }   /* 2.24:1  "ROAS · Full Year 2023" */
html[data-theme] .perf-exec-table.cs-stack .metric-note { color: rgb(115, 115, 118); opacity: 1; }   /* 2.24:1  "Product + audience coverag" */
html[data-theme] .ault-ev-chrome .ault-ev-chrome-label { color: rgb(107, 108, 119); }   /* 2.25:1  "Platform Summary · Sep 1 –" */
html[data-theme] .is-primary .ault-roas-cell { color: rgb(136, 109, 67); }   /* 2.27:1  "9.52×" */
html[data-theme] .ault-platform-cell .ault-plat-note { color: rgb(114, 113, 115); opacity: 1; }   /* 2.3:1  "5 campaigns · sustained fr" */
html[data-theme] .arch-outcome-col .arch-outcome-label { color: rgb(107, 108, 120); }   /* 2.38:1  "Google Ads Account ROAS" */
html[data-theme] .arch-outcome-col .arch-outcome-note { color: rgb(107, 108, 120); }   /* 2.38:1  "on CA$151K managed spend" */
html[data-theme] .ault-ev-table.cs-stack th { color: rgb(107, 108, 120); }   /* 2.38:1  "Platform" */
html[data-theme] .arch-inner div { color: rgb(110, 111, 123); }   /* 2.39:1  "Campaign Role A" */
html[data-theme] .arch-lane-body .arch-lane-tag { color: rgb(115, 115, 118); opacity: 1; }   /* 2.46:1  "Performance Max" */
html[data-theme] .multichannel-channel .multichannel-platform-tag { color: rgb(116, 115, 125); }   /* 2.47:1  "Google Ads · Primary Chann" */
html[data-theme] .multichannel-channel.is-secondary .multichannel-platform-tag { color: rgb(116, 115, 125); }   /* 2.47:1  "Bing / Microsoft Ads · Exp" */
html[data-theme] .cs-compare-caption .cs-cap-nda { color: rgb(108, 108, 112); opacity: 1; }   /* 2.7:1  "Brand identity withheld pe" */
html[data-theme] .cs-author-authority .cs-author-eyebrow { color: rgb(108, 108, 112); opacity: 1; }   /* 2.7:1  "About the strategist" */
html[data-theme] .cs-author-id-text .cs-author-org { color: rgb(186, 72, 34); }   /* 3.06:1  "MESAscale" */
html[data-theme] .arch-lane-body .arch-lane-role { color: rgb(115, 115, 120); opacity: 1; }   /* 3.34:1  "Broader product and audien" */
html[data-theme] .multichannel-channel .multichannel-note { color: rgb(115, 115, 120); opacity: 1; }   /* 3.34:1  "The 2023 build carried int" */
html[data-theme] .multichannel-channel.is-secondary .multichannel-note { color: rgb(115, 115, 120); opacity: 1; }   /* 3.34:1  "Cold-start channel introdu" */
html[data-theme] .arch-outcome-col .arch-outcome-val.dim { color: rgb(105, 107, 131); }   /* 3.87:1  "Full-Year 2023" */

/* second pass: rules that needed !important to win over the page's own selectors */
html[data-theme] .is-primary .ault-roas-cell { color: rgb(136, 109, 67) !important; }   /* 2.27:1  "9.52×" */
html[data-theme] .arch-inner div { color: rgb(110, 111, 123) !important; }   /* 2.39:1  "Campaign Role A" */
