/*
 * D-218 (owner, 4 Nov 2026: "reduce the para text to 12px, right now it is way too big, and keep it constant throughout the
 * website"; asked, the owner kept 12px - "if any page requires bigger I will suggest" - for "every piece of body text").
 * One size for all running text on every page: paragraphs, list items, definition lists, table cells, quotes, captions and
 * D-219 (owner, 4 Nov: "12 is way too small, go to 14px"): 14px. OLD (D-218): 12px.
 * labels, plus the short descriptions that sit in <small>, in a plain <span> after a bold card title, and the footer
 * licence text (.footer-text). Subtitles (class containing "subtitle") count as body text. 14px (D-219) with a 1.6 line height. Loaded last (layouts/partials/head, layouts/my-account).
 *
 * Not body text, so not changed: headings (h1-h6 and anything inside them), buttons, the header and navigation, the
 * "On this page" rail, form fields, and display text that only happens to be a <p>: card and section titles (class
 * containing "title"), figures and results (class containing "value" or "amount"), and the Trust Center's statement lines
 * (.subhead, .adv-close, .subline).
 *
 * The two :not(#…) on html give the rule ID-level weight, so it beats every page's own class-based size (many use
 * !important). To make one page or block bigger, add its selector to the :not() list below, or write a later rule with
 * the same prefix.
 * OLD: sizes per page - 14px default (tokens.css), 15-16px in the glass sections, 16.5px home hero, 17-22px hero ledes.
 */
html:not(#cy-bt-1):not(#cy-bt-2) body :is(p, li, dd, dt, td, th, blockquote, figcaption, label, address, small, .footer-text, :is(b, strong) ~ span:not([class])):not(:is(h1, h2, h3, h4, h5, h6, button, .cy-btn, header, nav, .ppx-toc, .voice-author-info) *):not([class*="title"]:not([class*="subtitle"]), [class*="value"], [class*="amount"], .subhead, .adv-close, .subline) {
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* D-220: the review cards ("Voices That Inspire Trust", style.css) were sized for 12-13px text with fixed heights (481 / 297 /
   160px and rows 297px 160px); at 14px the quote ran over the reviewer's name. The cards now grow with their text, keeping
   those heights as minimums. Every page that shows the reviews. */
.voices-trust-grid { grid-template-rows: auto auto !important; }
.voices-trust-grid .voice-card--featured { height: auto !important; min-height: 481px; }
.voices-trust-grid .voice-card--tall { height: auto !important; min-height: 297px; }
.voices-trust-grid .voice-card--wide { height: auto !important; min-height: 160px; }
/* the reviewer row (name, role, stars) was pinned 194px from the top (position: absolute); it now follows the quote at the
   bottom of the card, so a longer quote pushes it down instead of running under it. The reviewer's name and role keep their
   own small sizes (excluded above), so the role never reads larger than the name. */
.voices-trust-grid .voice-card { display: flex; flex-direction: column; }
.voices-trust-grid .voice-card .voice-footer { position: static !important; inset: auto !important; margin-top: auto; padding-top: 14px; }
.voices-trust-grid .voice-card > .voice-tag { align-self: flex-start; }
