/* Olimo 0.36.0 — unified, taller product cards with fully visible media. */
.olimo-product-card{
  height: 410px !important;
  min-height: 410px !important;
  align-self: stretch;
}
.olimo-product-card .olimo-product-card-image{
  width: 100% !important;
  height: 220px !important;
  min-height: 220px !important;
  padding: 10px !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
}
.olimo-product-card .olimo-product-card-image img{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none;
}
.olimo-product-card .olimo-product-card-title h3{
  min-height: 58px !important;
}
.olimo-product-card .olimo-product-card-bottom{
  min-height: 64px;
}















/* Preserve the already-approved desktop related-products card proportions. */
@media (min-width: 901px) {
  .olimo-single-related-track .olimo-product-card{
    height: 100% !important;
    min-height: 0 !important;
  }
  .olimo-single-related-track .olimo-product-card-image{
    height: clamp(150px, 15vw, 210px) !important;
    min-height: 0 !important;
    padding: 5px !important;
  }
  .olimo-single-related-track .olimo-product-card-title h3{
    min-height: 57px !important;
  }
}

@media (max-width: 1180px) and (min-width: 961px) {
  .olimo-product-card{ height: 395px !important; min-height: 395px !important; }
  .olimo-product-card .olimo-product-card-image{ height: 202px !important; min-height: 202px !important; }
  
  
  
}

@media (max-width: 960px) {
  .olimo-product-card, .olimo-shop-product-grid .olimo-product-card, .olimo-single-related-track .olimo-product-card{
    height: 365px !important;
    min-height: 365px !important;
  }
  .olimo-product-card .olimo-product-card-image, .olimo-shop-product-grid .olimo-product-card-image, .olimo-single-related-track .olimo-product-card-image{
    height: 180px !important;
    min-height: 180px !important;
    padding: 7px !important;
  }
  .olimo-product-card .olimo-product-card-title h3{ min-height: 54px !important; }
  
  
  
  
}

@media (max-width: 560px) {
  .olimo-product-card, .olimo-shop-product-grid .olimo-product-card, .olimo-single-related-track .olimo-product-card{
    height: 355px !important;
    min-height: 355px !important;
  }
  .olimo-product-card .olimo-product-card-image, .olimo-shop-product-grid .olimo-product-card-image, .olimo-single-related-track .olimo-product-card-image{
    height: 170px !important;
    min-height: 170px !important;
  }
  .olimo-product-card .olimo-product-card-title h3{
    min-height: 52px !important;
  }
}

@media (max-width: 380px) {
  .olimo-product-card, .olimo-shop-product-grid .olimo-product-card, .olimo-single-related-track .olimo-product-card{
    height: 345px !important;
    min-height: 345px !important;
  }
  .olimo-product-card .olimo-product-card-image, .olimo-shop-product-grid .olimo-product-card-image, .olimo-single-related-track .olimo-product-card-image{
    height: 160px !important;
    min-height: 160px !important;
  }
}


/* Olimo 0.43.0 — decimal visible-item counts for every product carousel. */
.has-olimo-carousel-sizing[data-olimo-product-track]{
  grid-auto-columns: var(--olimo-carousel-item-width) !important;
  scroll-padding-inline: 1px;
}
[data-olimo-product-carousel] [data-olimo-product-track] > *{
  min-width: 0;
  max-width: 100%;
}
.olimo-single-related-track{
  display: grid !important;
  grid-auto-flow: column;
  grid-template-columns: none !important;
  grid-auto-columns: calc((100% - 52px) / 5);
  align-items: stretch;
  gap: 13px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 1px 1px 10px;
  direction: rtl;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  overscroll-behavior-inline: contain;
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}
.olimo-single-related-track::-webkit-scrollbar{ display: none; }
.olimo-single-related-track.is-dragging{ cursor: grabbing; scroll-snap-type: none; }
.olimo-single-related-track .olimo-product-card{
  width: 100% !important;
  min-width: 0 !important;
  scroll-snap-align: start;
}
@media (max-width: 960px) {
  .olimo-single-related-track{ gap: 10px; grid-auto-columns: calc((100% - 10px) / 2); }
}

/* Olimo v1.0.19 — fixed portrait media ratio and sale-price stacks. */
html body .olimo-product-card,
html body .olimo-shop-product-grid .olimo-product-card,
html body .olimo-single-related-track .olimo-product-card{
  height:auto !important;
  min-height:0 !important;
}
html body .olimo-product-card .olimo-product-card-image,
html body .olimo-shop-product-grid .olimo-product-card .olimo-product-card-image,
html body .olimo-shop-archive-main .olimo-shop-product-grid .olimo-product-card .olimo-product-card-image,
html body .olimo-single-related-track .olimo-product-card .olimo-product-card-image{
  display:block !important;
  width:calc(100% - 4px) !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:3 / 4 !important;
  margin:2px !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:16px !important;
  background:#FFFFFF !important;
}
html body .olimo-product-card .olimo-product-card-image img,
html body .olimo-shop-product-grid .olimo-product-card .olimo-product-card-image img,
html body .olimo-shop-archive-main .olimo-shop-product-grid .olimo-product-card .olimo-product-card-image img,
html body .olimo-single-related-track .olimo-product-card .olimo-product-card-image img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  border-radius:inherit !important;
  object-fit:cover !important;
  object-position:center !important;
  mix-blend-mode:normal !important;
}
.olimo-variable-card-price-values{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
}
.olimo-variable-card-price-values del{
  max-width:100%;
  overflow:hidden;
  color:rgba(75,23,63,.48) !important;
  font-size:9px !important;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.olimo-variable-card-price-values strong{
  color:var(--olimo-dark-700);
  font-size:11px;
  font-weight:800;
  line-height:1.3;
  white-space:nowrap;
}
.olimo-variable-card-price-row.is-sale .olimo-variable-card-price-values strong{
  color:var(--olimo-primary);
}
@media(max-width:640px){
  .olimo-variable-card-price-values del{font-size:8px !important}
  .olimo-variable-card-price-values strong{font-size:10px}
}
/* ID-scoped final guard so archive column-count modes cannot alter the media ratio. */
body #primary .olimo-product-card{height:100% !important;min-height:0 !important}
body #primary .olimo-product-card .olimo-product-card-image{
  width:calc(100% - 4px) !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:3 / 4 !important;
  margin:2px !important;
  padding:0 !important;
  border-radius:16px !important;
}
body #primary .olimo-product-card .olimo-product-card-image img{
  width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;
  object-fit:cover !important;border-radius:inherit !important;
}


/* Olimo v1.0.21 — 4px card inset with rating/wishlist over the media. */
body #primary .olimo-product-card,
body #primary .olimo-shop-product-grid .olimo-product-card,
body #primary .olimo-single-related-track .olimo-product-card{
  padding:4px 4px 10px !important;
}
body #primary .olimo-product-card .olimo-product-card-image,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-image,
body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-image{
  width:100% !important;
  margin:0 !important;
  border-radius:17px !important;
}
body #primary .olimo-product-card .olimo-product-card-top,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-top,
body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-top{
  position:absolute !important;
  z-index:8 !important;
  top:10px !important;
  right:10px !important;
  left:10px !important;
  display:flex !important;
  min-height:32px !important;
  align-items:center;
  justify-content:space-between;
  pointer-events:none;
}
body #primary .olimo-product-card .olimo-product-card-top > *,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-top > *,
body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-top > *{
  pointer-events:auto;
}
body #primary .olimo-product-card .olimo-product-rating{
  min-height:29px;
  padding:5px 8px;
  border:1px solid rgba(112,35,88,.10);
  border-radius:999px;
  background:rgba(255,249,250,.90);
  box-shadow:0 3px 10px rgba(75,23,63,.07);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
body #primary .olimo-product-card .olimo-product-card-heart{
  width:32px;
  height:32px;
  border:1px solid rgba(112,35,88,.10);
  background:rgba(255,249,250,.90);
  box-shadow:0 3px 10px rgba(75,23,63,.07);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
body #primary .olimo-product-card .olimo-product-card-title{
  margin:7px 4px 0 !important;
}
body #primary .olimo-product-card .olimo-product-card-bottom{
  margin-inline:4px !important;
}
body #primary .olimo-product-card .olimo-product-card-discount{
  right:0 !important;
  border-radius:9px 0 0 9px !important;
}


/* Olimo v1.0.22 — restore compact discount badge and enlarge card prices. */
body #primary .olimo-product-card .olimo-product-card-discount,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-discount,
body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-discount{
  left:0 !important;
  right:auto !important;
  width:auto !important;
  min-width:55px !important;
  max-width:max-content !important;
  height:28px !important;
  padding:0 11px !important;
  display:inline-grid !important;
  place-items:center !important;
  border-radius:0 9px 9px 0 !important;
  white-space:nowrap !important;
  line-height:1 !important;
}

body #primary .olimo-product-card .olimo-product-card-price > strong,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-price > strong,
body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-price > strong,
body #primary .olimo-product-card .olimo-variable-card-price-row strong,
body #primary .olimo-shop-product-grid .olimo-product-card .olimo-variable-card-price-row strong,
body #primary .olimo-single-related-track .olimo-product-card .olimo-variable-card-price-row strong,
body #primary .olimo-product-card .olimo-variable-card-price-values strong{
  font-size:16px !important;
  line-height:1.35 !important;
}
body #primary .olimo-product-card .olimo-product-card-price del,
body #primary .olimo-product-card .olimo-variable-card-price-values del{
  font-size:12px !important;
  line-height:1.25 !important;
}
body #primary .olimo-product-card .olimo-product-card-price small,
body #primary .olimo-product-card .olimo-variable-card-price-row small{
  font-size:11px !important;
}

@media(max-width:640px){
  body #primary .olimo-product-card .olimo-product-card-discount,
  body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-discount,
  body #primary .olimo-single-related-track .olimo-product-card .olimo-product-card-discount{
    min-width:46px !important;
    height:25px !important;
    padding-inline:8px !important;
    font-size:10px !important;
  }
  body #primary .olimo-product-card .olimo-product-card-price > strong,
  body #primary .olimo-shop-product-grid .olimo-product-card .olimo-product-card-price > strong,
  body #primary .olimo-product-card .olimo-variable-card-price-row strong,
  body #primary .olimo-product-card .olimo-variable-card-price-values strong{
    font-size:14px !important;
  }
  body #primary .olimo-product-card .olimo-product-card-price del,
  body #primary .olimo-product-card .olimo-variable-card-price-values del{
    font-size:11px !important;
  }
}


/* Olimo v1.0.26 — native momentum for related-product carousels. */
@media(max-width:960px){
  [data-olimo-product-carousel] [data-olimo-product-track]{
    touch-action:pan-x pan-y!important;
    -webkit-overflow-scrolling:touch;
    scroll-behavior:smooth;
    scroll-snap-type:x proximity!important;
  }
}
