/**
 * Build 41: high-contrast body copy on every surface.
 *
 * Build 40 standardised type size. These rules deliberately change colour
 * only, so the larger body-copy scale remains intact.
 */

/* Body colour is intentionally not assigned globally. Each component owns its
   foreground colour according to its rendered surface. */

html body .site-main p.trinity-about-intro {
  color: #55453c !important;
}

/* Dark branded surfaces need warm, near-cream copy rather than muted brown. */
html body .site-main .split-hero p:not(.eyebrow),
html body .site-main .section--ink p:not(.eyebrow),
html body .site-main .results-section p:not(.eyebrow),
html body .site-main .trinity-why-section-v10 p:not(.eyebrow),
html body .site-main .trinity-services-preview p:not(.eyebrow),
html body .site-main .trinity-services-cta p:not(.eyebrow),
html body .site-main .cta-band p:not(.eyebrow),
html body .site-main .has-espresso-background-color p:not(.eyebrow),
html body .site-main .has-forest-background-color p:not(.eyebrow),
html body .site-main .has-black-background-color p:not(.eyebrow),
html body.home .site-main > .wp-block-group:has(.wp-block-image):not(:has(.deadline-row)):not(.trinity-deadlines-v18):has(.wp-block-buttons):not(.split-hero):not(.trinity-services-gateway-v18) p:not(.eyebrow),
html body.home .site-main > .wp-block-columns:has(.wp-block-image):not(:has(.deadline-row)):not(.trinity-deadlines-v18):has(.wp-block-buttons):not(.split-hero__columns) p:not(.eyebrow),
html body.home .site-main .wp-block-media-text:has(.wp-block-buttons) p:not(.eyebrow),
html body.front-page .site-main > .wp-block-group:has(.wp-block-image):not(:has(.deadline-row)):not(.trinity-deadlines-v18):has(.wp-block-buttons):not(.split-hero):not(.trinity-services-gateway-v18) p:not(.eyebrow),
html body.front-page .site-main > .wp-block-columns:has(.wp-block-image):not(:has(.deadline-row)):not(.trinity-deadlines-v18):has(.wp-block-buttons):not(.split-hero__columns) p:not(.eyebrow),
html body.front-page .site-main .wp-block-media-text:has(.wp-block-buttons) p:not(.eyebrow) {
  color: rgba(255, 248, 238, .92) !important;
}

html body .site-main .results-section .uni-grid__top {
  color: rgba(255, 248, 238, .97) !important;
}

html body .site-main .results-section .uni-grid__bottom {
  color: rgba(255, 248, 238, .76) !important;
}

/* Light cards and dialogs nested within dark sections switch back to ink. */
html body .site-main .section--ink .card p:not(.eyebrow),
html body .site-main .results-section .overlay__card p,
html body .site-main .results-section .overlay__body p,
html body .site-main .trinity-services-preview .service-card p:not(.service-card__number),
html body .site-main .trinity-services-preview .card p:not(.eyebrow) {
  color: #56463d !important;
}

/* Preserve strong metadata and links without allowing them to inherit the
   body-colour override from a surrounding paragraph. */
html body .site-main .founder-full__sub,
html body .site-main .deadline__label {
  color: #67564b !important;
}

html body .site-main .section--ink a:not(.wp-block-button__link),
html body .site-main .results-section a:not(.wp-block-button__link),
html body .site-main .trinity-why-section-v10 a:not(.wp-block-button__link),
html body .site-main .trinity-services-preview > .container > a:not(.wp-block-button__link) {
  color: #fff8ee !important;
}
