/* Homepage motion/state layer only. Layout belongs to first-paint route and shared-card CSS. */
html.ea-motion-ready [data-ea-motion-reveal],
html.ea-motion-ready [data-ea-motion-reveal].is-ea-motion-visible {
  opacity: 1 !important;
  transform: none !important;
  transition-delay: 0ms !important;
  will-change: auto !important;
}

.ea-motion-press {
  transform: translate3d(0, 1px, 0) scale(.985) !important;
}

.ea-motion-cart-pulse {
  animation: eaMotionCartPulse .32s cubic-bezier(.2, .8, .2, 1);
}

@keyframes eaMotionCartPulse {
  0%, 100% { transform: scale(1); }
  48% { transform: scale(1.14); }
}

.ea-motion-control {
  touch-action: manipulation;
  transition: transform 160ms cubic-bezier(.2, .8, .2, 1), background-color 160ms ease, border-color 160ms ease, opacity 160ms ease !important;
}

.ea-motion-control:is(a, button):hover {
  transform: translateY(-1px);
}

.ea-motion-control:is(a, button):focus-visible,
.ea-motion-control-field:focus-visible {
  outline: 3px solid rgba(23, 23, 23, .22) !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-row-added,
html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-added {
  border-color: #2f5b4f !important;
  box-shadow: inset 0 0 0 1px #2f5b4f !important;
}

html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-row-added .ea-collection-card__mini-thumb,
html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-added .ea-collection-card__mini-thumb {
  animation: eaQuickPickConfirm .36s cubic-bezier(.2, .8, .2, 1);
}

@keyframes eaQuickPickConfirm {
  0%, 100% { transform: scale(1); }
  52% { transform: scale(1.08); }
}

#ea-lb {
  position: fixed;
  z-index: 100000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(18px, 4vw, 48px);
  visibility: hidden;
  opacity: 0;
  background: rgba(16, 16, 15, .92);
  transition: opacity 180ms ease, visibility 180ms ease;
}

#ea-lb.ea-lb--open {
  visibility: visible;
  opacity: 1;
}

#ea-lb img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(94vw, 1440px);
  max-height: 88vh;
  object-fit: contain;
  background: #f6f6f3;
}

#ea-lb-close {
  position: fixed;
  z-index: 2;
  top: max(18px, env(safe-area-inset-top));
  right: max(18px, env(safe-area-inset-right));
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid #fff;
  border-radius: 50%;
  color: #fff;
  background: #171717;
  font: 400 30px/1 system-ui, sans-serif;
  cursor: pointer;
}

#ea-lb-close:focus-visible {
  outline: 3px solid rgba(255, 255, 255, .5);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .ea-motion-press,
  .ea-motion-cart-pulse,
  .ea-motion-control,
  html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-row-added .ea-collection-card__mini-thumb,
  html body.home.wp-theme-ea-vintage [data-ea-mini-add].is-added .ea-collection-card__mini-thumb,
  #ea-lb {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}
