/* ==========================================================================
   ADHARVA — FOOTER ATHLETE
   A procedural athlete running the length of the footer wordmark, using the
   rule beneath it as her ground line. Loaded on all six pages after
   adharva.css and adharva-mobile.css. Additive: without the JS, or under
   reduced motion, the footer renders exactly as it did before.
   Scene-local tokens are prefixed --sc- and map onto the site tokens.
   ========================================================================== */

.sc {
  --sc-line: rgba(244, 241, 234, 0.26);   /* uprights, hurdles, lane marks */
  --sc-dim:  var(--chalk-dim);            /* javelin, pole, wheels, crank */
  --sc-ink:  var(--chalk);                /* contact shadow, handlebar */

  position: relative;
  overflow: hidden;
  background: transparent;
}

.sc__svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.sc .thin {
  stroke: var(--sc-line);
  stroke-width: 1.5;
  stroke-linecap: round;
  fill: none;
}

/* The wrapper around .footer__word. Its bottom edge is where .footer__base
   draws its border-top, so the scene's bottom edge IS that rule. The
   padding-top that gives the pole vault headroom is set from JS, because it
   depends on how big the figure renders at the current width. */
.ath-footer { position: relative; }

/* Must come after the .sc block and carry more specificity than it: .sc
   sets `position: relative`, and if that wins the stage collapses to zero
   height and nothing renders. `bottom` is set from JS to a negative value,
   because the swim dips below the rule and the stage has to overhang it. */
.ath-footer > .ath-footer__scene {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  pointer-events: none;
}

/* The footer runs the scene in minimal mode: the footer's own rule is the
   ground, so the scene drops its track, lane ticks, parallax bands, water
   fill and floodlit wash, and stays transparent so the wordmark reads
   through. The scenery layer (hurdles, mats, uprights, sand bed) is kept --
   the pole and the javelin rest on supports that live in it. */
.sc--minimal .sc__wash { display: none; }
.sc--minimal [data-el="far"],
.sc--minimal [data-el="mid"],
.sc--minimal [data-el="lanes"],
.sc--minimal [data-el="wfill"],
.sc--minimal [data-el="track"] { display: none; }

/* Nothing animates, and the block keeps its original height. */
@media (prefers-reduced-motion: reduce) {
  .ath-footer { padding-top: 0 !important; }
  .ath-footer__scene { display: none; }
}
