/*
 * ZAVRYNE 16.63 — reliable cursor-follow zoom on every fine-pointer desktop/laptop viewport.
 * No minimum viewport width: hover-capable mouse/trackpad is the capability gate.
 */
@media (hover: hover) and (pointer: fine) {
  .single-product .zv33-main-media[data-zv33-zoom-media] {
    position: relative !important;
    overflow: hidden !important;
    cursor: zoom-in !important;
    isolation: isolate !important;
    background: #fff !important;
  }

  .single-product .zv33-main-media[data-zv33-zoom-media] > .zv33-zoom-pane {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    background-image: none !important;
  }

  .single-product .zv33-main-media[data-zv33-zoom-media]:not(.is-video-active) > img[data-zv33-main-image] {
    transform: scale(1) !important;
    transform-origin: 50% 50% !important;
    transition: transform 135ms cubic-bezier(.2,.72,.2,1) !important;
    will-change: transform, transform-origin !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
  }

  .single-product .zv33-main-media[data-zv33-zoom-media].zv1663-zoom-active {
    cursor: zoom-out !important;
  }

  .single-product .zv33-main-media[data-zv33-zoom-media].zv1663-zoom-active:not(.is-video-active) > img[data-zv33-main-image] {
    transform: scale(2.05) !important;
    transition-duration: 85ms !important;
  }
}

/* Never interfere with touch-first devices. */
@media (hover: none), (pointer: coarse) {
  .single-product .zv33-main-media[data-zv33-zoom-media] > img[data-zv33-main-image] {
    transform: none !important;
    transform-origin: 50% 50% !important;
  }
}
