/* Smartphone-first motion layer. Keep the LP usable first, then add rhythm. */
html.motion-first-boot {
  --mf-scroll: 0;
  --mf-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --mf-ease-soft: cubic-bezier(0.16, 1, 0.3, 1);
}

html.motion-first-boot .hero-canvas,
html.motion-first-boot .hero-overlay-canvas,
html.motion-first-boot .closing-canvas,
html.motion-first-boot .hero-clock {
  display: none !important;
}

html.motion-first-boot .fade-in,
html.motion-first-boot [data-reveal],
html.motion-first-boot [data-stagger] > *,
html.motion-first-boot .text-reveal .word {
  opacity: 1;
  transform: none;
  filter: none;
  transition: none;
}

html.motion-first-boot .scroll-progress {
  height: 2px;
  background: linear-gradient(90deg, #a66f21, #f7d088 52%, #ffffff);
  box-shadow: 0 0 12px rgba(232, 163, 71, 0.32);
  transform: translateZ(0);
}

html.motion-first-boot:not(.motion-first-ready) .hero-badge,
html.motion-first-boot:not(.motion-first-ready) .hero-logo,
html.motion-first-boot:not(.motion-first-ready) .hero-title,
html.motion-first-boot:not(.motion-first-ready) .hero-sub,
html.motion-first-boot:not(.motion-first-ready) .hero-cta,
html.motion-first-boot:not(.motion-first-ready) .hero-trust-item,
html.motion-first-boot:not(.motion-first-ready) .hero-visual {
  opacity: 0;
  transform: translate3d(0, 18px, 0) scale(0.99);
}

html.motion-first-boot:not(.motion-first-ready) .hero-logo,
html.motion-first-boot:not(.motion-first-ready) .hero-title,
html.motion-first-boot:not(.motion-first-ready) .hero-visual {
  opacity: 1;
}

html.motion-first-ready .mf-item,
html.motion-first-ready .mf-child {
  will-change: opacity, transform;
}

html.motion-first-ready .mf-item:not(.mf-in) {
  opacity: 0 !important;
  transform: translate3d(0, 26px, 0) scale(0.985) !important;
}

html.motion-first-ready .mf-item {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition:
    opacity 520ms var(--mf-ease),
    transform 640ms var(--mf-ease);
  transition-delay: var(--mf-delay, 0ms);
}

html.motion-first-ready .mf-hero:not(.mf-in) {
  transform: translate3d(0, 18px, 0) scale(0.99) !important;
}

html.motion-first-ready .mf-hero {
  transition-duration: 660ms, 820ms;
}

html.motion-first-ready .hero-logo.mf-hero:not(.mf-in) {
  opacity: 1 !important;
  transform: translate3d(0, 14px, 0) scale(0.96) !important;
}

html.motion-first-ready .hero-title.mf-hero:not(.mf-in) {
  opacity: 1 !important;
  transform: translate3d(0, 24px, 0) scale(0.985) !important;
}

html.motion-first-ready .hero-visual.mf-hero:not(.mf-in) {
  opacity: 1 !important;
  transform: translate3d(0, 34px, 0) scale(0.97) !important;
}

html.motion-first-ready .mf-card:not(.mf-in) {
  transform: translate3d(0, 30px, 0) scale(0.982) !important;
}

html.motion-first-ready .mf-left:not(.mf-in) {
  transform: translate3d(-18px, 24px, 0) scale(0.985) !important;
}

html.motion-first-ready .mf-right:not(.mf-in) {
  transform: translate3d(18px, 24px, 0) scale(0.985) !important;
}

html.motion-first-ready .mf-in,
html.motion-first-ready .mf-done {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}

html.motion-first-ready .mf-done {
  will-change: auto;
}

html.motion-first-ready .mf-card .fn-head,
html.motion-first-ready .mf-card .fn-name,
html.motion-first-ready .mf-card .fn-body,
html.motion-first-ready .mf-card .fn-img,
html.motion-first-ready .mf-showcase .fn-head,
html.motion-first-ready .mf-showcase .fn-name,
html.motion-first-ready .mf-showcase .fn-body,
html.motion-first-ready .mf-showcase .fn-showcase-item,
html.motion-first-ready .mf-flow .flow-step-icon,
html.motion-first-ready .mf-flow .flow-step-content {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition:
    opacity 460ms var(--mf-ease),
    transform 560ms var(--mf-ease);
  transition-delay: var(--mf-child-delay, 0ms);
}

html.motion-first-ready .mf-card:not(.mf-in) .fn-head,
html.motion-first-ready .mf-card:not(.mf-in) .fn-name,
html.motion-first-ready .mf-card:not(.mf-in) .fn-body,
html.motion-first-ready .mf-card:not(.mf-in) .fn-img,
html.motion-first-ready .mf-showcase:not(.mf-in) .fn-head,
html.motion-first-ready .mf-showcase:not(.mf-in) .fn-name,
html.motion-first-ready .mf-showcase:not(.mf-in) .fn-body,
html.motion-first-ready .mf-showcase:not(.mf-in) .fn-showcase-item,
html.motion-first-ready .mf-flow:not(.mf-in) .flow-step-icon,
html.motion-first-ready .mf-flow:not(.mf-in) .flow-step-content {
  opacity: 0;
  transform: translate3d(0, 18px, 0) scale(0.99);
}

html.motion-first-ready .mf-showcase .fn-showcase-img {
  overflow: hidden;
}

html.motion-first-ready .mf-showcase .fn-showcase-img img {
  transform: translate3d(0, 10px, 0) scale(1.035);
  transition:
    opacity 520ms var(--mf-ease),
    transform 760ms var(--mf-ease);
  transition-delay: var(--mf-child-delay, 0ms);
}

html.motion-first-ready .mf-showcase:not(.mf-in) .fn-showcase-img img {
  opacity: 0.9;
}

html.motion-first-ready .mf-showcase.mf-in .fn-showcase-img img {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

html.motion-first-ready .mf-showcase .fn-showcase-row.cols-pdf .fn-showcase-item:nth-child(odd) {
  transform: translate3d(-12px, 22px, 0) rotate(-0.6deg) scale(0.985);
}

html.motion-first-ready .mf-showcase .fn-showcase-row.cols-pdf .fn-showcase-item:nth-child(even) {
  transform: translate3d(12px, 22px, 0) rotate(0.6deg) scale(0.985);
}

html.motion-first-ready .mf-showcase.mf-in .fn-showcase-row.cols-pdf .fn-showcase-item,
html.motion-first-ready .mf-showcase.mf-in .fn-showcase-row.cols-4 .fn-showcase-item {
  transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
}

@media (max-width: 768px), (pointer: coarse) {
  .fn-img,
  .fn-showcase-img {
    touch-action: pan-y;
  }

  .fn-card-showcase {
    contain: paint;
  }

  html.motion-first-ready .mf-showcase .fn-showcase-img img {
    transform: none !important;
    transition: opacity 360ms var(--mf-ease) !important;
  }

  html.motion-first-ready .mf-showcase:not(.mf-in) .fn-showcase-img img {
    opacity: 1;
  }

  html.motion-first-ready .mf-showcase:not(.mf-in) .fn-showcase-item,
  html.motion-first-ready .mf-showcase .fn-showcase-row.cols-pdf .fn-showcase-item:nth-child(odd),
  html.motion-first-ready .mf-showcase .fn-showcase-row.cols-pdf .fn-showcase-item:nth-child(even) {
    transform: translate3d(0, 14px, 0) scale(0.995) !important;
  }

  html.motion-first-ready .mf-showcase.mf-in .fn-showcase-row.cols-pdf .fn-showcase-item,
  html.motion-first-ready .mf-showcase.mf-in .fn-showcase-row.cols-4 .fn-showcase-item {
    transform: translate3d(0, 0, 0) scale(1) !important;
  }
}

html.motion-first-ready .mf-pulse {
  animation: mf-soft-pulse 1600ms var(--mf-ease-soft) 260ms 1 both;
}

@keyframes mf-soft-pulse {
  0% { transform: scale(0.96); opacity: 0.72; }
  46% { transform: scale(1.035); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}

@media (min-width: 769px) and (hover: hover) and (pointer: fine) {
  html.motion-first-ready .mf-item:not(.mf-in) {
    transform: translate3d(0, 34px, 0) scale(0.985) !important;
  }

  html.motion-first-ready .mf-left:not(.mf-in) {
    transform: translate3d(-26px, 26px, 0) scale(0.985) !important;
  }

  html.motion-first-ready .mf-right:not(.mf-in) {
    transform: translate3d(26px, 26px, 0) scale(0.985) !important;
  }

  html.motion-first-ready .mf-item {
    transition-duration: 680ms, 820ms;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.motion-first-boot .mf-item,
  html.motion-first-boot .mf-child,
  html.motion-first-boot .fade-in,
  html.motion-first-boot [data-reveal],
  html.motion-first-boot [data-stagger] > *,
  html.motion-first-boot .text-reveal .word {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    animation: none !important;
  }
}
