/* Tone & Rest — pohyb (GSAP): úvodní sekvence, odhalování sekcí, parallax fotek.
   Doplňuje /styles.css; bez JS nebo s reduced motion zůstává statická. */

html.lenis, html.lenis body { height: auto; }
html.lenis { scroll-behavior: auto; }
.lenis.lenis-stopped { overflow: hidden; }

/* ---------- hero ---------- */
.card { overflow: hidden; }
.hero-info { display: flex; flex-direction: column; align-items: center; position: relative; z-index: 1; }
.mark { z-index: 1; }

/* počáteční stav pro GSAP (jen když běží pohyb) */
.motion .wordmark, .motion .hero-sub, .motion .hero-meta, .motion .hero-info .btn { animation: none; opacity: 0; }
.motion .wordmark:not(.is-in) img {
  -webkit-mask-image: linear-gradient(100deg, #000 calc(var(--r, 125%) - 25%), transparent var(--r, 125%));
          mask-image: linear-gradient(100deg, #000 calc(var(--r, 125%) - 25%), transparent var(--r, 125%));
}
.motion .scroll-cue { opacity: 0; }

/* ---------- parallax fotek ---------- */
.intro-photo, .price-photo, .closing-photo { overflow: hidden; }
.motion .intro-photo img, .motion .price-photo img, .motion .closing-photo img { will-change: transform; }

/* ---------- kroky: linka se kreslí se scrollem ---------- */
.motion .step { --p: 0; }
.motion .step::before { transform: scaleX(var(--p)); transform-origin: left center; }
@media (max-width: 760px) {
  .motion .step::before { transform: scaleY(var(--p)); transform-origin: center top; }
}

/* ---------- nadpisy po slovech ---------- */
.w { display: inline-block; overflow: hidden; vertical-align: top; padding: .16em 0 .1em; margin: -.16em 0 -.1em; }
.wi { display: inline-block; will-change: transform; }

/* ---------- cena: linky seznamu se dokreslí ---------- */
.motion .included { position: relative; border-top-color: transparent; }
.motion .included::before,
.motion .included li::after {
  content: ""; position: absolute; left: 0; right: 0; height: 1px; background: var(--line);
  transform: scaleX(var(--l, 0)); transform-origin: left center;
}
.motion .included::before { top: -1px; }
.motion .included li { border-bottom-color: transparent; }
.motion .included li::after { bottom: -1px; }

/* ---------- podpis se „dopíše“ ---------- */
.motion .sign { display: inline-block; }
