/* Winter LP motion: progressive enhancement, content visible without JavaScript. */
:root {
  --motion-ease: cubic-bezier(.22, .61, .36, 1);
}
.lp-motion-pending {
  opacity: 0;
  transform: translate3d(0, 26px, 0);
}
.lp-motion-pending[data-motion="heading"] { transform: translate3d(0, 18px, 0); }
.lp-motion-pending[data-motion="image"] {
  transform: translate3d(0, 18px, 0) scale(.985);
  clip-path: inset(0 0 12% 0 round 6px);
}
.lp-motion-pending[data-motion="accent"] { transform: translate3d(0, 16px, 0) scale(.96); }
.lp-motion-enter {
  animation: lp-rise 1500ms var(--motion-ease) both;
  animation-delay: var(--motion-delay, 0ms);
}
.lp-motion-enter[data-motion="heading"] { animation-name: lp-heading; animation-duration: 1400ms; }
.lp-motion-enter[data-motion="image"] { animation-name: lp-image; animation-duration: 1800ms; }
.lp-motion-enter[data-motion="accent"] { animation-name: lp-accent; animation-duration: 1600ms; }
@keyframes lp-rise {
  from { opacity: 0; transform: translate3d(0, 26px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes lp-heading {
  from { opacity: 0; transform: translate3d(0, 18px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes lp-image {
  from { opacity: 0; transform: translate3d(0, 18px, 0) scale(.985); clip-path: inset(0 0 12% 0 round 6px); }
  to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); clip-path: inset(0 round 0); }
}
@keyframes lp-accent {
  from { opacity: 0; transform: translate3d(0, 16px, 0) scale(.96); }
  to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}
.lp-scroll-progress {
  position: fixed;
  inset: 0 0 auto;
  height: 3px;
  z-index: 100;
  pointer-events: none;
  background: linear-gradient(90deg, #37acb2, #71c9e9 55%, #ff4a5e);
  transform: scaleX(0);
  transform-origin: left;
}
/* Keep actions available immediately; hover motion is limited to pointer devices. */
@media (hover: hover) and (pointer: fine) {
  .button1 { transition: transform 240ms var(--motion-ease), box-shadow 240ms ease, background-color 240ms ease; }
  .button1:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgb(27 37 56 / 14%); }
  .button1:active { transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .lp-motion-pending, .lp-motion-enter {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    animation: none !important;
  }
  .lp-scroll-progress { display: none; }
  .button1, .accordion .accordion-content { transition: none !important; }
}
@media print {
  .lp-motion-pending, .lp-motion-enter { opacity: 1 !important; transform: none !important; clip-path: none !important; animation: none !important; }
  .lp-scroll-progress { display: none; }
}
