
/* Launch QA: page-surface contrast and removal of legacy visual artifacts. */
:root { --n92-ink-light:#0b1638; --n92-ink-dark:#efece8; }
#content .n92-gs { color:#0b1638; }
#content .n92-gs a:not(.n92-gs-btn) { color:#0b1638; }
#content .n92-gs a:not(.n92-gs-btn):hover { color:#bc1953; }
#content .n92-gs :is(.n92-gs-btn--ghost,.n92-gs-btn--outline) { color:#0b1638; }
#content .n92-gs :is(.n92-gs-book,.n92-gs-inquiry) a:not(.n92-gs-btn) { color:#0b1638; }
#content .n92-services-hub .n92-svc-process :is(h1,h2,h3,p) { color:#efece8; }
#content .n92-services-hub .n92-svchub-cta :is(h1,h2,h3,p) { color:#efece8; }
/* Highlight below text. Never strike through headings. */
.n92-services-hub .n92-svchub-capability__detail-grid h4 {
  display:inline-block; width:fit-content; position:relative;
  margin-bottom:.55rem; padding-bottom:.18rem;
  background:none!important; text-decoration:none!important;
  border-bottom:3px solid #ff3377; color:#0b1638!important; line-height:1.4;
}
.n92-services-hub .n92-svchub-capability__detail-grid h4::before,
.n92-services-hub .n92-svchub-capability__detail-grid h4::after {
  display:none!important; content:none!important;
}
/* Optical normalization for transparent client logo marks. */
.n92-aboutv3-logos-grid { gap:clamp(1rem,2vw,2rem); }
.n92-aboutv3-logos-grid__item {
  border:0!important; background:transparent!important;
  padding:clamp(.25rem,1vw,.75rem)!important; display:grid; place-items:center;
  min-height:clamp(120px,14vw,190px);
}
.n92-aboutv3-logos-grid__item > div { width:100%; }
.n92-aboutv3-logos-grid__img {
  width:100%; height:clamp(65px,8vw,112px); object-fit:contain; opacity:.78;
  filter:brightness(0) saturate(100%) invert(9%) sepia(28%) saturate(1324%) hue-rotate(192deg) brightness(92%) contrast(95%);
}
.n92-aboutv3-logos-grid__item:hover .n92-aboutv3-logos-grid__img { opacity:1; }
/* Homepage main feature images should act like case-study links. */
.scale a.frame { display:block; position:relative; color:inherit; text-decoration:none; }
.scale a.frame:focus-visible { outline:4px solid #f2c500; outline-offset:4px; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 .scale a.frame img { transition:transform .45s ease; }
 .scale a.frame:hover img { transform:scale(1.016); }
}
/* Keep visible forms and booking actions above legacy ambient effects. */
#content:has(.n92-gs) .n92-gs { isolation:isolate; position:relative; }
#content .n92-gs :is(.n92-gs-inquiry__form,.n92-gs-book__widget) { position:relative; z-index:1; }
/* Dark homepage sections must not inherit navy text from a global cream-page rule. */
#content:has(.scale) #chain :is(h2,h3,p,strong,a),
#content:has(.scale) .start :is(h2,h3,p) { color:#efece8; }
/* Accessible focus feedback. */
:is(.n92-gs,.n92-services-hub,.n92-aboutv3) :is(a,button,input,textarea,select):focus-visible {
  outline:3px solid #f2c500; outline-offset:3px;
}

/* Buyer pathways on the homepage are dark even though the parent .scale is cream. */
#content:has(.scale) .scale .n92-buyer :is(h2,h3,p,a) { color:#efece8; }
#content:has(.scale) .scale .n92-buyer a:hover { color:#ff3377; }

/* Calendly was retired: direct-contact section gets full width and no empty second column. */
#content .n92-gs-book__grid {
  grid-template-columns: minmax(0, 1fr);
  max-width: 1000px;
}
#content .n92-gs-book__contact { max-width: 760px; }
#content .n92-gs-book__widget,
#content .n92-gs-calendly,
#content .n92-gs-calendly-external { display: none !important; }
