/* Color-only overrides. Original geometry, typography and animation remain intact. */
:root {
  --color-primary: #146f86;
  --color-primary-text: #146f86;
  --color-primary-hover: #edf7f9;
  --color-border-accent: #146f86;
}
:root[data-theme=dark] {
  --color-primary: #247f95;
  --color-primary-text: #75d0df;
  --color-primary-hover: #16343d;
  --color-border-accent: #247f95;
}
.kv-blob.kv-blob-1 { filter: grayscale(1) sepia(1) hue-rotate(155deg) saturate(2); }
.kv-blob.kv-blob-2 { filter: hue-rotate(170deg) saturate(.65); }
.kv-blob.kv-blob-3 { filter: hue-rotate(150deg) saturate(.65); }
.cta-band .cta-gradient-fill {
  background-image: linear-gradient(243.376deg, #9ddfdc 9.3067%, #9ddfdc00 45.119%), linear-gradient(10.887deg, #35699d 2.047%, #54b2c4 44.719%, var(--color-primary) 77.061%);
}

/* Clients block: partner marks in gray, except the three named clients which keep their brand colors.
   The injected SVGs have no width/height attributes, so size them explicitly (the original cells size by height only). */
.clients-cell img:not(.clutch-client-color) { filter: grayscale(1); opacity: .72; }
.clients-cell img.clutch-client-color { max-width: 100%; width: auto; object-fit: contain; }
.clients-cell.clutch-client-roblox img.clutch-client-color { height: 3.4rem; }
.clients-cell.clutch-client-google img.clutch-client-color { height: 5.2rem; }
.clients-cell.clutch-client-sumitomo img.clutch-client-color { height: 3.6rem; }
@media (max-width: 768px) {
  .clients-cell.clutch-client-roblox img.clutch-client-color { height: 1.9rem; }
  .clients-cell.clutch-client-google img.clutch-client-color { height: 3rem; }
  .clients-cell.clutch-client-sumitomo img.clutch-client-color { height: 1.7rem; }
}

/* SP: the original sticky header fades to transparent and the wordmark overlaps page content when scrolling up.
   Keep size/layout; only make the background opaque while the header is shown over content. */
@media (max-width: 768px) {
  .header[class].is-sticky.is-sticky { background: rgb(var(--color-surface-rgb)); }
}
