/* MJJY Hover Image Widget */
.mjjy_hover_image_outer { display: block; }

.mjjy_hover_image_link{
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

.mjjy_hover_image_wrap{
  position: relative;
  display: inline-block;
  overflow: hidden;
  line-height: 0;
  width: 100%;
  height: auto;
  --mjjy-hover-opacity: 1;
  --mjjy-duration: 250ms;
}

.mjjy_hover_image_wrap img.mjjy_img{
  display: block;
  width: 100%;
  height: 100%;
  object-position: center;
}

.mjjy_hover_image_wrap img.mjjy_img_normal{
  transition: opacity var(--mjjy-duration) ease, transform var(--mjjy-duration) ease;
  will-change: opacity, transform;
}

.mjjy_hover_image_wrap img.mjjy_img_hover{
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity var(--mjjy-duration) ease, transform var(--mjjy-duration) ease;
  will-change: opacity, transform;
  pointer-events: none;
}

/* Tryb: overlay */
.mjjy_hover_image_wrap.mjjy_mode_overlay:hover img.mjjy_img_hover{
  opacity: var(--mjjy-hover-opacity);
}

/* Tryb: swap */
.mjjy_hover_image_wrap.mjjy_mode_swap:hover img.mjjy_img_hover{
  opacity: var(--mjjy-hover-opacity);
}
.mjjy_hover_image_wrap.mjjy_mode_swap:hover img.mjjy_img_normal{
  opacity: 0;
}

/* Presety animacji */
.mjjy_hover_image_wrap.mjjy_preset_fade img.mjjy_img_hover{
  transform: none;
}
.mjjy_hover_image_wrap.mjjy_preset_fade:hover img.mjjy_img_hover{
  transform: none;
}

/* Fade + Zoom */
.mjjy_hover_image_wrap.mjjy_preset_fade_zoom img.mjjy_img_hover{
  transform: scale(1.03);
}
.mjjy_hover_image_wrap.mjjy_preset_fade_zoom:hover img.mjjy_img_hover{
  transform: scale(1);
}

/* Fade + Slide Up */
.mjjy_hover_image_wrap.mjjy_preset_fade_slide img.mjjy_img_hover{
  transform: translateY(10px);
}
.mjjy_hover_image_wrap.mjjy_preset_fade_slide:hover img.mjjy_img_hover{
  transform: translateY(0);
}