/* ==========================================================================
   Scroll effects (paired with js/scroll-fx.js — GSAP)
   To remove all effects: delete this <link>, the fx-js inline script in
   <head>, and the GSAP + scroll-fx.js <script> tags in index.html.
   ========================================================================== */

/* Hide the hero title until GSAP starts the intro (avoids a flash).
   Failsafe: if the scripts never run, show it anyway after 2.5s. */
.fx-js .hero__title {
  visibility: hidden;
  animation: fx-failsafe 0s 2.5s forwards;
}

.fx-off .hero__title {
  visibility: visible;
}

@keyframes fx-failsafe {
  to { visibility: visible; }
}

/* ScrollSmoother moves #smooth-content with transforms */
#smooth-content {
  overflow: visible;
  width: 100%;
}

/* ---- Odometer digits ---- */
.counter__value {
  display: inline-flex;
  justify-content: center;
}

.odo-digit {
  display: inline-block;
  height: var(--lh-h2);
  overflow: hidden;
}

.odo-strip {
  display: block;
  width: 1ch;
  word-break: break-all;   /* one digit per line */
  line-height: var(--lh-h2);
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.works__col,
.project-card {
  will-change: transform;
}
