/* Moodys Vitrin 1.4.1 – clean product tiles with true hover-image crossfade. */
.mvs-showcase {
  --mvs-cols: 4;
  --mvs-gap: 11px;
  --mvs-ratio: 1/1;
  --mvs-card-bg: #fff;
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 auto 30px;
  padding: 0;
  box-sizing: border-box;
  color: #131313;
  font: 400 14px/1.4 Poppins, Arial, sans-serif;
}
.mvs-showcase *, .mvs-showcase *::before, .mvs-showcase *::after { box-sizing: border-box; }
.mvs-showcase .mvs-head { display: flex; align-items: end; justify-content: space-between; gap: 15px; margin: 0 0 24px; }
.mvs-showcase .mvs-heading { margin: 0 0 3px !important; padding: 0 !important; color: #111; font: 800 clamp(20px,2vw,29px)/1.2 Poppins,Arial,sans-serif; font-size: clamp(20px,2vw,29px) !important; font-weight: 800 !important; letter-spacing: -.6px; text-transform: uppercase; }
.mvs-showcase .mvs-note { margin: 0; padding: 0; color: #666; font-size: 12px; }
.mvs-showcase a.mvs-view-all { color: #111 !important; text-decoration: none !important; font-size: 11px; font-weight: 600; white-space: nowrap; letter-spacing: .4px; }
.mvs-showcase .mvs-view-all span { font-size: 17px; vertical-align: -1px; margin-left: 5px; }
.mvs-showcase a.mvs-view-all:hover { opacity: .65; }
.mvs-showcase .mvs-scroller { position: relative; min-width: 0; }
.mvs-showcase .mvs-track { display: grid; gap: var(--mvs-gap); margin: 0; padding: 0; min-width: 0; align-items: stretch; }
.mvs-showcase.mvs-slider-mode .mvs-track {
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - (var(--mvs-cols) - 1) * var(--mvs-gap)) / var(--mvs-cols));
  overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory; scroll-behavior: smooth;
  scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.mvs-showcase.mvs-slider-mode .mvs-track::-webkit-scrollbar { display: none; }
.mvs-showcase.mvs-grid-mode .mvs-track { grid-template-columns: repeat(var(--mvs-cols),minmax(0,1fr)); }

/* One continuous surface: no grey image rectangle, borders, white info panel, or theme card decorations. */
.mvs-showcase .mvs-item {
  display: flex !important; flex-direction: column !important; align-items: stretch !important;
  position: relative; min-width: 0; max-width: none !important;
  padding: 0 !important; margin: 0 !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: var(--mvs-card-bg) !important;
  list-style: none; scroll-snap-align: start; text-align: center !important;
}
.mvs-showcase a.mvs-product-image-link {
  display: block !important; flex: 0 0 auto; width: 100%;
  padding: 0 !important; margin: 0 !important;
  text-decoration: none !important; border: 0 !important;
  border-radius: 0 !important; box-shadow: none !important; outline-offset: 2px;
}
.mvs-showcase .mvs-image-box {
  display: flex !important; position: relative; align-items: center; justify-content: center;
  aspect-ratio: var(--mvs-ratio); width: 100%; min-width: 0;
  background: var(--mvs-card-bg) !important;
  overflow: hidden !important; border: 0 !important; border-radius: 0 !important;
  padding: 0 !important; margin: 0 !important;
}
.mvs-showcase .mvs-image-box .mvs-image,
.mvs-showcase .mvs-image-box img {
  display: block !important; position: static !important;
  width: 100% !important; height: 100% !important;
  max-width: 100% !important; max-height: 100% !important;
  min-width: 0 !important; min-height: 0 !important;
  object-fit: contain !important; object-position: center !important;
  padding: clamp(2px,.38vw,7px) !important;
  margin: 0 auto !important;
  background: transparent !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  mix-blend-mode: normal !important;
  transition: transform .25s ease;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .mvs-showcase .mvs-product-image-link:hover img { transform: scale(1.025); }
}
.mvs-showcase .mvs-product-content {
  display: flex !important; flex: 1 0 auto; flex-direction: column !important;
  align-items: center !important; justify-content: flex-start !important;
  width: 100% !important; min-width: 0 !important;
  padding: 8px 8px 16px !important; margin: 0 !important;
  color: #111 !important; text-align: center !important;
  line-height: 1.3 !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: var(--mvs-card-bg) !important;
}
.mvs-showcase .mvs-brand {
  display: block !important; width: 100%; max-width: 100%;
  padding: 0 !important; margin: 0 0 3px !important;
  font: 800 13px/1.25 Poppins,Arial,sans-serif !important;
  color: #111 !important; text-align: center !important; text-transform: uppercase !important;
  overflow-wrap: anywhere;
}
.mvs-showcase a.mvs-product-name {
  display: block !important; width: 100%; max-width: 100%; min-width: 0;
  padding: 0 !important; margin: 0 0 8px !important;
  font: 400 12px/1.4 Poppins,Arial,sans-serif !important;
  color: #323232 !important; text-align: center !important;
  text-decoration: none !important; text-transform: none !important;
  overflow-wrap: anywhere;
}
.mvs-showcase a.mvs-product-name:hover { color: #777 !important; }

/* Sale: small square percent label left, struck-out former price above bold new price. */
.mvs-showcase .mvs-price-row {
  display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
  align-items: center !important; justify-content: center !important;
  gap: 9px !important; max-width: 100%; min-height: 38px;
  margin: 0 !important; padding: 0 !important;
  text-align: left !important; background: transparent !important; border: 0 !important;
}
.mvs-showcase .mvs-sale-badge {
  display: flex !important; flex: 0 0 42px !important;
  align-items: center !important; justify-content: center !important;
  width: 42px !important; height: 38px !important; min-height: 38px !important;
  padding: 0 3px !important; margin: 0 !important;
  background: #000 !important; color: #fff !important;
  font: 800 12px/1 Poppins,Arial,sans-serif !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
}
.mvs-showcase .mvs-price {
  display: flex !important; flex-direction: column !important;
  align-items: flex-start !important; justify-content: center !important;
  width: auto !important; min-width: 0 !important;
  margin: 0 !important; padding: 0 !important; float: none !important;
  font: 800 17px/1.16 Poppins,Arial,sans-serif !important;
  color: #111 !important; text-align: left !important;
  white-space: nowrap !important; background: transparent !important; border: 0 !important;
}
.mvs-showcase .mvs-price .price,
.mvs-showcase .mvs-price ins,
.mvs-showcase .mvs-price .amount,
.mvs-showcase .mvs-price .woocommerce-Price-amount,
.mvs-showcase .mvs-price .woocommerce-Price-currencySymbol,
.mvs-showcase .mvs-price bdi {
  color: #111 !important;
  font-size: 17px !important; font-weight: 800 !important; line-height: 1.17 !important;
  background: transparent !important; box-shadow: none !important; border: 0 !important;
}
.mvs-showcase .mvs-price ins {
  display: block !important; margin: 0 !important; padding: 0 !important;
  text-decoration: none !important;
}
.mvs-showcase .mvs-price del,
.mvs-showcase .mvs-price del .amount,
.mvs-showcase .mvs-price del .woocommerce-Price-amount,
.mvs-showcase .mvs-price del .woocommerce-Price-currencySymbol,
.mvs-showcase .mvs-price del bdi {
  display: inline !important;
  opacity: 1 !important;
  margin: 0 !important; padding: 0 !important;
  color: #b0b0b0 !important;
  font-size: 12px !important; font-weight: 400 !important; line-height: 1.18 !important;
  text-decoration: line-through !important;
}
.mvs-showcase .mvs-price del { display: block !important; }
.mvs-showcase .mvs-price .woocommerce-price-suffix { font-size: 11px !important; font-weight: 400 !important; }

.mvs-showcase .mvs-arrow {
  display: flex; align-items: center; justify-content: center;
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 5;
  border: 0 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important;
  color: #262626 !important; cursor: pointer;
  width: 34px; height: 44px; min-width: 34px;
  padding: 0 !important; line-height: 1 !important;
}
.mvs-showcase .mvs-arrow span { display: block; font: 300 28px/1 Arial,sans-serif; margin-top: -3px; }
.mvs-showcase .mvs-arrow-prev { left: 0; }
.mvs-showcase .mvs-arrow-next { right: 0; }
.mvs-showcase .mvs-arrow:disabled { opacity: .2; cursor: default; }
.mvs-showcase.mvs-no-scroll .mvs-arrow { display: none; }
.mvs-empty { padding: 12px 16px; border: 1px solid #ddd; color: #777; }
@media (max-width:1024px) { .mvs-showcase { --mvs-cols:3 !important; --mvs-gap:9px; } }
@media (max-width:700px) {
  .mvs-showcase { --mvs-cols:2 !important; --mvs-gap:7px; }
  .mvs-showcase .mvs-head { align-items:center; margin-bottom:15px; }
  .mvs-showcase .mvs-heading { font-size:21px !important; }
  .mvs-showcase .mvs-note { font-size:11px; }
  .mvs-showcase a.mvs-view-all { font-size:11px; }
  .mvs-showcase .mvs-image-box img { padding:2px !important; }
  .mvs-showcase .mvs-product-content { padding:8px 3px 12px !important; }
  .mvs-showcase .mvs-brand { font-size:11px !important; margin-bottom:3px !important; }
  .mvs-showcase a.mvs-product-name { font-size:11px !important; margin-bottom:6px !important; }
  .mvs-showcase .mvs-price-row { gap:5px !important; min-height:34px; }
  .mvs-showcase .mvs-sale-badge { width:34px !important; flex-basis:34px !important; height:34px !important; min-height:34px !important; font-size:11px !important; }
  .mvs-showcase .mvs-price,
  .mvs-showcase .mvs-price .amount,
  .mvs-showcase .mvs-price ins,
  .mvs-showcase .mvs-price bdi,
  .mvs-showcase .mvs-price .woocommerce-Price-amount,
  .mvs-showcase .mvs-price .woocommerce-Price-currencySymbol { font-size:14px !important; }
  .mvs-showcase .mvs-price del,
  .mvs-showcase .mvs-price del .amount,
  .mvs-showcase .mvs-price del .woocommerce-Price-amount,
  .mvs-showcase .mvs-price del .woocommerce-Price-currencySymbol,
  .mvs-showcase .mvs-price del bdi { font-size:11px !important; }
  .mvs-showcase .mvs-arrow { width:26px; min-width:26px; height:34px; }
  .mvs-showcase .mvs-arrow span { font-size:23px; }
}
@media (prefers-reduced-motion:reduce) { .mvs-showcase .mvs-track { scroll-behavior:auto !important; } .mvs-showcase img { transition:none !important; } }

/* v1.2: frame-free arrows aligned with the center of the entire carousel. */
.mvs-showcase .mvs-arrow,
.mvs-showcase .mvs-arrow:hover,
.mvs-showcase .mvs-arrow:focus,
.mvs-showcase .mvs-arrow:active {
  border: 0 !important;
  outline: 0;
  background: transparent !important;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
}
.mvs-showcase .mvs-arrow:focus-visible { outline: 2px solid currentColor !important; outline-offset: 2px; }
.mvs-showcase .mvs-arrow:hover:not(:disabled) { opacity: .65; }
.mvs-showcase .mvs-arrow::before,
.mvs-showcase .mvs-arrow::after { content: none !important; }
/* Native touch swiping stays active. Desktop can also drag the product row. */
.mvs-showcase.mvs-slider-mode .mvs-track { cursor: grab; }
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-dragging {
  cursor: grabbing !important;
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-dragging * {
  user-select: none !important;
  -webkit-user-select: none !important;
}
.mvs-showcase.mvs-slider-mode .mvs-track img { -webkit-user-drag: none; user-drag: none; }

/* v1.4.1: Crossfade BOTH layers. Gallery PNGs often have transparency:
   fading only the second image in leaves the first product showing through it.
   Keep the two images in exactly the same box and fade the first OUT too. */
.mvs-showcase .mvs-image-box {
  position: relative !important;
  isolation: isolate;
  background: var(--mvs-card-bg, #fff) !important;
}
.mvs-showcase .mvs-image-box > img.mvs-image-primary,
.mvs-showcase .mvs-image-box > img.mvs-image-secondary {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  pointer-events: none;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transition-property: opacity !important;
  transition-timing-function: cubic-bezier(.22,.61,.36,1) !important;
}
.mvs-showcase .mvs-image-box > img.mvs-image-primary {
  z-index: 1 !important;
  opacity: 1 !important;
  transition-duration: .22s !important;
}
.mvs-showcase .mvs-image-box > img.mvs-image-secondary {
  z-index: 2 !important;
  opacity: 0 !important;
  transition-duration: .42s !important;
}
@media (hover: hover) {
  .mvs-showcase a.mvs-product-image-link.mvs-hover-ready:is(:hover, :focus-visible) .mvs-image-box > img.mvs-image-primary {
    opacity: 0 !important;
  }
  .mvs-showcase a.mvs-product-image-link.mvs-hover-ready:is(:hover, :focus-visible) .mvs-image-box > img.mvs-image-secondary {
    opacity: 1 !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mvs-showcase .mvs-image-box > img.mvs-image-primary,
  .mvs-showcase .mvs-image-box > img.mvs-image-secondary { transition-duration: 0s !important; }
}
/* Snap only for native trackpad/touch input. JS controls easing for button/drag slides. */
.mvs-showcase.mvs-slider-mode .mvs-track {
  scroll-behavior: auto !important;
  scroll-snap-type: x proximity;
}
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-dragging,
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-animating {
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
}

/* v1.4: one scrolling controller, no CSS snap competing with JS easing.
   Snap used to re-enable during mouse release and could jerk the next animation. */
.mvs-showcase.mvs-slider-mode .mvs-track,
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-dragging,
.mvs-showcase.mvs-slider-mode .mvs-track.mvs-animating {
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
}
.mvs-showcase.mvs-slider-mode .mvs-item { scroll-snap-align: none !important; }

/* v1.4.2: Mobilde vitrinin tum dis bosluklarini sifirla. Masaustu degismez. */
@media (max-width: 767px) {
  .mvs-showcase { margin: 0 !important; }
}
