/* Legible text on dark surfaces; light surfaces retain dark ink. */
body { --muted:#fff; }
body .site-header,
body .site-header .brand,
body .site-header .brand-global-domain,
body .nav > a:not(.nav-cta),
body .portal-back,
body .hero,
body .gateway-hero,
body .country-hero,
body .page-hero,
body .model-hero,
body .dark-section,
body .equipment,
body .gateway-systems,
body .outcome-dark,
body .flow-card-main,
body .project-card,
body .country-project-video,
body .portal-copy,
body .economic-entry,
body .entry-card,
body .result-card,
body footer { color:#fff; }

body .hero-copy,
body .hero-proof span,
body .gateway-proof,
body .country-label,
body .country-hero-content > p,
body.country-paraguay .country-hero-content > p,
body .breadcrumb,
body .page-hero-copy,
body .model-hero p,
body .model-photo-section figcaption,
body .portal-copy > p:not(.eyebrow),
body .portal-features span,
body .equipment-meta span,
body .equipment-card p,
body .gateway-models span,
body .flow-card-main p,
body .flow-card-main .flow-number,
body .outcome-dark p:last-child,
body .outcome-dark .outcome-index,
body .value-card p,
body .project-card p,
body .project-card .project-card-copy p,
body .contact-panel:last-child .contact-detail span,
body .data-list li,
body .entry-card > span,
body .entry-card p,
body .result-card p,
body .result-mini span,
body .result-unit,
body .result-illustration span,
body .footer-brand p,
body .footer-block p,
body .footer-bottom { color:#fff; }

body :is(.hero,.gateway-hero,.country-hero,.page-hero,.model-hero,.portal-copy) .eyebrow,
body :is(.page-hero,.dark-section,.equipment,.gateway-systems,.economic-entry,.entry-card,.result-card) .section-kicker,
body :is(.equipment,.gateway-systems,.dark-section) .section-top p { color:#fff; }
body .outcome-dark .outcome-index { opacity:1; }

/* These home sections use the site's dark background. */
body .odor-explainer,
body .odor-explainer .section-kicker,
body .odor-explainer .problem-copy p,
body .odor-explainer .value-strip p { color:#fff; }
body:not(.country-page):not(.inner-page) main > .section:not(.gateway-intro):not(.problem):not(.sectors) .section-top p,
body:not(.country-page):not(.inner-page) main > .section:not(.gateway-intro):not(.problem):not(.sectors) .section-kicker { color:#fff; }

/* Strong text on light backgrounds, including forms and library articles. */
body :is(.problem,.experience,.gateway-intro,.country-summary,.lagoon-explainer) .problem-copy p,
body .gateway-intro .value-strip p,
body .experience-content > p,
body .intro-grid p,
body .process-video-copy p,
body .split-copy > p,
body .model-row p,
body .model-intro > div > p,
body .step p,
body .reading-content p,
body .reading-content li,
body .kb-intro,
body .kb-card summary p,
body .kb-body p,
body .kb-note,
body #kb-count,
body .field-grid small,
body .tool-note,
body .tool-section .source-note,
body .reading-content .source-note,
body .faq-list p,
body .faq-list .source-note { color:#203126; }
body .tool-section .result-card p,
body .tool-section .result-card .tool-note,
body .tool-section .result-card .source-note { color:#fff; }

/* Keep white navigation readable against the bright sky in the cover photo. */
body .site-header:not(.scrolled) { background:linear-gradient(180deg,rgba(4,17,9,.8),rgba(4,17,9,.62)); }
