/* v210: keep customer-facing artwork clear while retaining local text-safe veils. */

html[data-theme] body main :is(
  .services-v177-hero-visual,
  .service-route-card,
  .services-shortcut-card,
  .premium-service-visual,
  .selected-work-media,
  .case-study-media,
  .hero-img-shell,
  .image-card,
  .visual-card,
  .service-image-panel
) > img {
  opacity: 1 !important;
  filter: saturate(1.06) contrast(1.025) brightness(1.035) !important;
}

html[data-theme] body#services-v177-page .services-v177-hero-visual > img {
  filter: saturate(1.08) contrast(1.025) brightness(1.05) !important;
}

html[data-theme] body#services-v177-page .services-v177-hero-visual:hover > img {
  filter: saturate(1.11) contrast(1.035) brightness(1.075) !important;
}

html[data-theme] body#services-v177-page .services-v177-hero-visual::after {
  background: linear-gradient(
    180deg,
    transparent 50%,
    rgba(4, 7, 10, .18) 70%,
    rgba(4, 7, 10, .78) 100%
  ) !important;
}

html[data-theme] body#services-v177-page .service-route-card > img,
html[data-theme] body#services-v177-page .services-shortcut-card > img {
  filter: saturate(1.08) contrast(1.025) brightness(1.045) !important;
}

html[data-theme] body#services-v177-page .service-route-card:is(:hover, :focus-visible) > img,
html[data-theme] body#services-v177-page .services-shortcut-card:is(:hover, :focus-visible) > img {
  filter: saturate(1.12) contrast(1.035) brightness(1.08) !important;
}

html[data-theme] body#services-v177-page .service-route-card::before {
  background: linear-gradient(
    180deg,
    rgba(5, 8, 12, .02) 8%,
    rgba(5, 8, 12, .28) 50%,
    rgba(5, 8, 12, .9) 100%
  ) !important;
}

html[data-theme] body#services-v177-page .services-shortcut-card::before {
  background: linear-gradient(
    180deg,
    rgba(4, 7, 10, .02) 6%,
    rgba(4, 7, 10, .24) 54%,
    rgba(4, 7, 10, .88) 100%
  ) !important;
}

html[data-theme] body.growth-page .growth-capability-card::before {
  filter: saturate(1.06) contrast(1.035) brightness(1.04) !important;
}

html[data-theme] body.growth-page .growth-capability-card:is(:hover, :focus-within)::before {
  filter: saturate(1.11) contrast(1.04) brightness(1.08) !important;
}

/* Homepage tiles use background images rather than img elements. */
html[data-theme]:not([data-theme="light"]) body main .showcase-service-card {
  background:
    linear-gradient(
      180deg,
      rgba(var(--home-card-veil-rgb), .12) 0%,
      rgba(var(--home-card-veil-rgb), .025) 46%,
      rgba(var(--home-card-veil-rgb), .22) 100%
    ),
    var(--tile-image) center / cover no-repeat !important;
}

html[data-theme]:not([data-theme="light"]) body main .showcase-service-card::before {
  opacity: .34 !important;
}

html[data-theme="light"] body main .showcase-service-card {
  filter: saturate(1.04) contrast(1.015) brightness(1.015) !important;
}

html[data-theme] body .selected-work-media img,
html[data-theme] body .case-study-media img {
  opacity: 1 !important;
  filter: saturate(1.04) contrast(1.02) brightness(1.025) !important;
}

@media (prefers-reduced-motion: reduce) {
  html[data-theme] body main :is(
    .services-v177-hero-visual,
    .service-route-card,
    .services-shortcut-card,
    .premium-service-visual,
    .selected-work-media,
    .case-study-media
  ) > img {
    transition: none !important;
  }
}
