/**
 * HP2 contrast restoration
 *
 * Oxygen global color(18) (#003852) is currently resolving to rgba(0,56,82,.2),
 * which washes out dark text on cyan and translucent dark pills on light sections.
 * These solid overrides restore readable contrast without waiting on cache rebuild.
 */

:root {
  --hp2-dark: #003852;
  --hp2-darker: #04202c;
  --hp2-cyan: #00cdff;
  --hp2-on-dark: rgba(255, 255, 255, .82);
  --hp2-footer-muted: #8ba7b6;
}

/* Accent CTAs: cyan fill + solid dark text */
.hp2-pill--accent,
a.hp2-pill--accent,
.hp2-pill.hp2-pill--accent {
  background-color: var(--hp2-cyan) !important;
  color: var(--hp2-dark) !important;
}

.hp2-pill--accent:hover,
a.hp2-pill--accent:hover {
  color: var(--hp2-dark) !important;
}

/* Dark CTAs: solid dark fill + white text */
.hp2-pill--dark,
a.hp2-pill--dark,
.hp2-pill.hp2-pill--dark,
.hp2-people .hp2-pill,
.hp2-people a.hp2-pill {
  background-color: var(--hp2-dark) !important;
  color: #fff !important;
}

.hp2-pill--dark:hover,
.hp2-people .hp2-pill:hover {
  color: #fff !important;
}

/* Qatar cyan band: solid dark teal text */
.hp2-qatar,
.hp2-qatar .hp2-display,
.hp2-qatar .hp2-display em,
.hp2-qatar .ct-headline,
.hp2-qatar .ct-text-block,
.hp2-qatar-copy,
.hp2-qatar-copy .ct-headline,
.hp2-qatar-copy .ct-text-block,
.hp2-qatar-point,
.hp2-qatar-point b,
.hp2-qatar-point span,
.hp2-qatar-points,
.hp2-qatar-points b,
.hp2-qatar-points span {
  color: var(--hp2-dark) !important;
}

.hp2-qatar-coords,
.hp2-qatar .hp2-qatar-coords {
  color: rgba(0, 56, 82, .72) !important;
}

.hp2-qatar-place,
.hp2-qatar .hp2-qatar-place,
.hp2-qatar-points b,
.hp2-qatar-point b {
  color: var(--hp2-dark) !important;
  opacity: 1 !important;
}

/* Capabilities: keep white type; neutralize washed solid bg so gradient reads */
.hp2-capabilities {
  background-color: transparent !important;
  color: #fff !important;
}

.hp2-capabilities .hp2-display,
.hp2-capabilities .ct-headline,
.hp2-capabilities .ct-text-block,
.hp2-capabilities .hp2-service-title,
.hp2-capabilities .hp2-service-kicker,
.hp2-capabilities .hp2-service-summary,
.hp2-capabilities .hp2-service-index,
.hp2-capabilities .hp2-section-num {
  color: #fff !important;
}

.hp2-capabilities .hp2-service-summary {
  color: rgba(255, 255, 255, .78) !important;
}

.hp2-capabilities .hp2-service-arrow {
  color: #fff !important;
}

/* Footer bottom links were inheriting near-black on dark footer */
.hp2-footer,
.hp2-footer-bottom,
.hp2-footer-bottom a,
.hp2-footer-bottom .ct-link-text {
  color: var(--hp2-footer-muted) !important;
}

.hp2-footer-bottom a:hover,
.hp2-footer-bottom .ct-link-text:hover {
  color: var(--hp2-cyan) !important;
}

/* Sticky header: menu + CTA must stay dark on light bar */
.hp2-header.is-scrolled .oxy-pro-menu-list > .menu-item > a,
.hp2-header.is-scrolled .oxy-pro-menu a {
  color: var(--hp2-darker) !important;
}

.hp2-header.is-scrolled .hp2-header-actions .oxy-pws-button-animations,
.hp2-header.is-scrolled .hp2-header-actions .pws-oxy-ba-front,
.hp2-header.is-scrolled .hp2-header-actions .pws-oxy-ba-back,
.hp2-header.is-scrolled .hp2-header-cta {
  --pws-ba-front-color: #04202c !important;
  --pws-ba-back-color: #04202c !important;
  color: #04202c !important;
}

/* Approach / steps body copy on dark */
.hp2-approach-title > .ct-text-block,
.hp2-approach-title p {
  color: #8fadbc !important;
}

.hp2-step > .ct-text-block:not(.hp2-step-num) {
  color: #8fadbc !important;
}

.hp2-step-num {
  color: var(--hp2-cyan) !important;
}

.hp2-step-title {
  color: #fff !important;
}
