/* KEUR — accessibility overrides (WCAG 2.1 AA). Loaded after main.min.css; skipped with ?a11y=off. */

/* ---------- Accessibility: main nav in dark text on orange ---------- */
body .header .header__link,
body .header .header__sub-toggle,
body .header .header__burger,
body .header .header__sub-link,
body .header .header__panel-link,
body .header .header__privacy { color: #00101c; }

body .header .header__link:hover,
body .header .header__link:focus-visible,
body .header .header__item--has-sub:hover .header__link,
body .header .header__item--has-sub:focus-within .header__link,
body .header .header__sub-link:hover,
body .header .header__sub-link:focus-visible,
body .header .header__panel-link:hover,
body .header .header__panel-link:focus-visible,
body .header .header__privacy:hover,
body .header .header__privacy:focus-visible {
  color: #00101c;
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: .25em;
}

/* ---------- Accessibility: transparent CTAs become solid white ---------- */
body .elementor .hero__btn--video,
body .elementor .page-hero__btn--outline,
body .elementor .solutions-hero__btn--outline,
body .elementor .phase-intro__btn--outline,
body .elementor .contact-hero__btn:not(.contact-hero__btn--primary),
body .elementor .post-cta__btn,
body .elementor .post-cta button.post-cta__btn,
body .phase__btn--outline,
body .study-card__btn,
body .insights--dark .insights__btn,
body .elementor .form-thanks--popup .form-thanks__btn {
  border-color: #fff;
  background-color: #fff;
  color: #00101c;
}

body .elementor .hero__btn--video:hover,
body .elementor .hero__btn--video:focus-visible,
body .elementor .page-hero__btn--outline:hover,
body .elementor .page-hero__btn--outline:focus-visible,
body .elementor .solutions-hero__btn--outline:hover,
body .elementor .solutions-hero__btn--outline:focus-visible,
body .elementor .phase-intro__btn--outline:hover,
body .elementor .phase-intro__btn--outline:focus-visible,
body .elementor .contact-hero__btn:not(.contact-hero__btn--primary):hover,
body .elementor .contact-hero__btn:not(.contact-hero__btn--primary):focus-visible,
body .elementor .post-cta__btn:hover,
body .elementor .post-cta__btn:focus-visible,
body .elementor .post-cta button.post-cta__btn:hover,
body .elementor .post-cta button.post-cta__btn:focus-visible,
body .phase__btn--outline:hover,
body .phase__btn--outline:focus-visible,
body .study-card__btn:hover,
body .study-card__btn:focus-visible,
body .insights--dark .insights__btn:hover,
body .insights--dark .insights__btn:focus-visible,
body .elementor .form-thanks--popup .form-thanks__btn:hover,
body .elementor .form-thanks--popup .form-thanks__btn:focus-visible {
  border-color: #00101c;
  background-color: #00101c;
  color: #fff;
}

/* ---------- Accessibility: TA cards, teal darkened for AA contrast with white text (was #01958C, 3.7:1) ---------- */
body .ta-card--idv { --card-bg: #00756E; }

/* ---------- Accessibility: orange (#FF2C00) as text on white/cream is 3.3–3.7:1; text-only shade #C42000 (5.1–5.9:1). Backgrounds keep #FF2C00 ---------- */
body .elementor .case-card__link,
body .elementor .case-card__link:hover,
body .elementor .case-card__link:focus-visible,
body .elementor .lead-card__link,
body .phase:not(.phase--late):not(.phase--rwe) .phase__item-title,
body .phase:not(.phase--late):not(.phase--rwe) .phase__eyebrow { color: #C42000; }

/* White on orange band passes only as large text: make the label bold and ≥19px */
body .phase__label { font-weight: 700; }
@media (max-width: 1023.98px) { body .phase__label { font-size: 1.1875rem; } }

/* Contact block on navy */
body .elementor .expert-card__bio { color: #3A8FA6; }  /* was #2E7E93, 4.15:1 */
body .elementor .contact__error { color: #FF4D6A; }    /* was #E30D37, 4.0:1 */

/* Skip link: visible when focused from the keyboard */
body .skip-link.screen-reader-text:focus {
  top: 1rem;
  left: 1rem;
  z-index: 100000;
  width: auto;
  height: auto;
  margin: 0;
  padding: .75rem 1.25rem;
  overflow: visible;
  clip: auto;
  border-radius: 62.5rem;
  background-color: #fff;
  color: #00101c;
  font-size: 1rem;
}

/* ---------- Accessibility: solution cards (Clinical Trials / RWE) ---------- */
body .solution-card--clinical { --card-accent: #C42000; --card-ink: #C42000; }  /* orange text and panel behind white text */
body .solution-card__item-text { opacity: 1; }                                   /* .75 dropped white text below 4.5:1 */
body .solution-card__toggle--close { opacity: .85; }

/* Phase intro heading: same accessible orange as the rest of the orange text */
body .phase:not(.phase--late):not(.phase--rwe) .phase__lead { color: #C42000; }
