/* Custom overrides layered on top of the mirrored Webflow styles.
   Copied into export/mirror/css/ on every `npm run mirror` — edit here, not in export/mirror/. */

/* /services pill sub-nav: plain static row right after the hero (not
 * Webflow's original fixed-to-bottom, not sticky either — sticky covered
 * text scrolling underneath it). Renamed from Webflow's own
 * "services-sub-nav" to "services-quicknav" in apply-ux-improvements.mjs
 * (see patchServices) so Webflow's compiled interaction JS — which kept
 * finding this element and continuously rewriting its inline style back
 * to display:none/opacity:0, fighting any reveal animation frame by frame
 * — can no longer match it at all. Nothing fights these styles now, so no
 * !important tug-of-war is needed; a plain transition triggered by a
 * JS-added class (ux-improvements.js) is enough. */
.services-quicknav {
  position: static;
  margin-bottom: 3rem;
  padding: 0;
  opacity: 0;
  transform: translateY(40px);
  /* 400ms bumped 60% slower per feedback (was 300ms Webflow-matched,
     then 400ms, now 640ms). */
  transition: opacity 0.64s ease-out, transform 0.64s ease-out;
}
.services-quicknav.is-visible {
  opacity: 1;
  transform: translateY(0);
}
/* The pill row's background/shadow actually lives on this inner wrapper
 * (Webflow's own .div-block-20, unrenamed — its own background/radius/
 * padding rules still apply), constrained to max-width:870px. Drop the
 * constraint so the background spans edge-to-edge; the pills themselves
 * (.services-grid) keep their own max-width so they stay centered. */
.services-quicknav .div-block-20 {
  max-width: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
/* Without this, jumping to a pill's target lands right under the sticky
   main header (~73px), hiding the section heading. */
#authority,
#credibility,
#growth {
  scroll-margin-top: 100px;
}
