/**
 * Scroll experience — Link Mahal patterns: smooth snap (desktop), progressive immerse colors.
 */

html.lm-scroll-ready {
  scroll-behavior: auto;
}

@media (prefers-reduced-motion: no-preference) {
  html.lm-scroll-ready:not(.lm-scroll-coarse) {
    scroll-behavior: smooth;
  }
}

/* Disable snap while programmatic anchor scroll runs (prevents mis-snap on mobile) */
html.lm-scroll-anchor-lock:has(body.landing-page--snap) {
  scroll-snap-type: none !important;
}

/* Desktop + mobile — scroll-snap disabled (causes text shimmer / layout jitter while scrolling) */
html.lm-scroll-ready:has(body.landing-page--snap) {
  scroll-snap-type: none !important;
  scroll-padding-top: var(--landing-header-offset);
}

@media (prefers-reduced-motion: no-preference) {
  /* snap rules retired — anchor scroll handled in lm-scroll-experience.js */
  @media (min-width: 1024px) {
    .landing-page--snap .landing-panel--hero,
    .landing-page--snap .landing-section.landing-panel,
    .landing-page--snap .landing-flow-strip.landing-panel,
    .landing-page--snap .section-live-stores.landing-section.landing-panel,
    .landing-page--snap .section-profit-cta.landing-panel,
    .landing-page--snap .section-cta-final.landing-panel,
    .landing-page--snap .section-faq.landing-panel,
    .landing-page--snap .lm-cta-block.landing-panel,
    .landing-page--snap .landing-order-live.landing-panel {
      scroll-snap-align: none;
      scroll-margin-top: var(--landing-header-offset);
      scroll-margin-bottom: max(var(--space-4), env(safe-area-inset-bottom, 0px));
    }

    .landing-page--snap .landing-trust-band,
    .landing-page--snap .section-capabilities.landing-panel {
      scroll-snap-align: none;
      scroll-margin-top: var(--landing-header-offset);
    }
  }

  @media (max-width: 1023px) {
    .landing-page--snap .landing-panel {
      scroll-snap-align: none;
      scroll-margin-top: var(--landing-header-offset);
      scroll-margin-bottom: max(var(--space-4), env(safe-area-inset-bottom, 0px));
    }
  }
}

/* Scroll-linked parallax layers */
[data-scroll-parallax] {
  --scroll-parallax-y: 0px;
  transform: translate3d(0, var(--scroll-parallax-y), 0);
}

.landing-panel__parallax,
.landing-page--snap [data-scroll-parallax] {
  transition: transform 0.12s linear;
}

/* Touch devices — scroll-snap off (see global rule above) */
html.lm-scroll-coarse:has(body.landing-page--snap) {
  scroll-snap-type: none !important;
}

/* Landing copy — stable while scrolling (no reveal hiding, no balance reflow) */
.landing-page--snap .landing-section-head,
.landing-page--snap .landing-section-title,
.landing-page--snap .landing-section-sub,
.landing-page--snap .demo-caption,
.landing-page--snap .demo-caption__panel.is-active,
.landing-page--snap .demo-bullets,
.landing-page--snap .features-grid__head,
.landing-page--snap .features-grid__lead {
  opacity: 1;
  visibility: visible;
  transform: none;
  text-wrap: wrap;
}

.landing-page--snap [data-animate],
.landing-page--snap [data-stagger-item] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  will-change: auto;
}

/* —— Order live: progressive color immersion —— */
.landing-order-straight.landing-order-live {
  --lm-ost-immerse: 0;
  --lm-ost-bg-light: #f6faf7;
  --lm-ost-bg-dark: #ecfdf5;
  --lm-ost-title-light: #0c1222;
  --lm-ost-title-dark: #0c1222;
  --lm-ost-lead-light: #334155;
  --lm-ost-lead-dark: #334155;
  --lm-ost-eyebrow-light: var(--lm-accent-deep, #0f766e);
  --lm-ost-eyebrow-dark: var(--lm-accent-deep, #0f766e);
  background: color-mix(
    in srgb,
    var(--lm-ost-bg-light) calc((1 - var(--lm-ost-immerse)) * 100%),
    var(--lm-ost-bg-dark) calc(var(--lm-ost-immerse) * 100%)
  );
  border-block-color: rgba(15, 23, 42, 0.06);
  border-block: 1px solid;
  transition: background 0.35s ease, border-color 0.35s ease;
}

.lm-ost-backdrop__glow,
.lm-ost-backdrop__floor {
  opacity: calc(var(--lm-ost-immerse, 0) * 0.85);
}

.lm-ost-eyebrow {
  color: color-mix(
    in srgb,
    var(--lm-ost-eyebrow-light) calc((1 - var(--lm-ost-immerse)) * 100%),
    var(--lm-ost-eyebrow-dark) calc(var(--lm-ost-immerse) * 100%)
  );
}

.lm-ost-title.landing-section-title {
  color: color-mix(
    in srgb,
    var(--lm-ost-title-light) calc((1 - var(--lm-ost-immerse)) * 100%),
    var(--lm-ost-title-dark) calc(var(--lm-ost-immerse) * 100%)
  );
}

.lm-ost-lead {
  color: color-mix(
    in srgb,
    var(--lm-ost-lead-light) calc((1 - var(--lm-ost-immerse)) * 100%),
    var(--lm-ost-lead-dark) calc(var(--lm-ost-immerse) * 100%)
  );
}

@media (max-width: 1023px) {
  [data-scroll-parallax] {
    transform: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.lm-scroll-ready {
    scroll-behavior: auto;
    scroll-snap-type: none !important;
  }

  [data-scroll-parallax],
  .landing-page--snap .landing-panel > .landing-container,
  .landing-page--snap .landing-panel__parallax {
    transform: none !important;
  }

  .landing-order-straight.landing-order-live {
    transition: none;
  }
}
