.single-product .related.products,
.single-product .invoga-product-rail {
  --invoga-rail-side-pad: clamp(10px, 2vw, 18px);
  --invoga-rail-gap: clamp(14px, 1.8vw, 22px);
  --invoga-rail-card-width: clamp(210px, 22vw, 298px);
  position: relative !important;
  padding-inline: 0 !important;
}

.single-product .related.products.invoga-product-rail--scroll,
.single-product .invoga-product-rail.invoga-product-rail--scroll {
  padding: 0 0 clamp(42px, 5vw, 68px) !important;
}

.single-product .related.products .invoga-product-rail__head,
.single-product .invoga-product-rail__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 16px !important;
  padding-inline: 0 !important;
}

.single-product .related.products > h2,
.single-product .related.products .invoga-product-rail__head h2,
.single-product .invoga-product-rail__head h2 {
  margin: 0 !important;
  padding-inline: 0 !important;
  color: rgba(17, 16, 14, .78) !important;
  font-family: var(--invoga-body-font, "Inter Tight", "Inter", Arial, sans-serif) !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  text-align: left !important;
  text-wrap: balance !important;
}

.single-product .invoga-product-rail__nav {
  display: inline-flex !important;
  position: absolute !important;
  top: calc((var(--invoga-rail-card-width) * 1.5) / 2) !important;
  right: var(--invoga-rail-side-pad) !important;
  left: var(--invoga-rail-side-pad) !important;
  z-index: 6 !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0 !important;
  padding-inline: 0 !important;
  pointer-events: none !important;
  transform: translateY(-50%) !important;
}

.single-product .invoga-product-rail__nav[hidden] {
  display: none !important;
}

.single-product .invoga-product-rail__arrow {
  display: inline-flex !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(17, 16, 14, .62) !important;
  box-shadow: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  transition: color .18s ease, border-color .18s ease, background-color .18s ease, opacity .18s ease !important;
}

.single-product .invoga-product-rail__arrow svg {
  width: 15px !important;
  height: 15px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 1.8 !important;
}

.single-product .invoga-product-rail__arrow[disabled] {
  opacity: .32 !important;
  cursor: default !important;
  pointer-events: none !important;
}

@media (hover: hover) and (pointer: fine) {
  .single-product .invoga-product-rail__arrow:hover {
    border-color: transparent !important;
    background: transparent !important;
    color: rgba(17, 16, 14, .98) !important;
  }
}

.single-product .related.products ul.products,
.single-product .invoga-product-rail ul.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--invoga-rail-gap) !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  margin: 0 !important;
  padding: 0 var(--invoga-rail-side-pad) 4px !important;
  scroll-behavior: smooth !important;
  scroll-padding-inline: var(--invoga-rail-side-pad) !important;
  scroll-snap-type: x proximity !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
}

.single-product .related.products ul.products::-webkit-scrollbar,
.single-product .invoga-product-rail ul.products::-webkit-scrollbar {
  display: none !important;
}

.single-product .related.products ul.products > li.product,
.single-product .invoga-product-rail ul.products > li.product {
  flex: 0 0 var(--invoga-rail-card-width) !important;
  width: var(--invoga-rail-card-width) !important;
  min-width: var(--invoga-rail-card-width) !important;
  margin: 0 !important;
  scroll-snap-align: start !important;
}

.single-product div.product p.price {
  margin: 0 0 22px !important;
  color: var(--invoga-ink) !important;
  font-family: var(--invoga-body-font, "Inter Tight", "Inter", Arial, sans-serif) !important;
  font-size: 32px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
}

.single-product div.product p.price .invoga-single-price-row {
  gap: 12px !important;
}

.single-product div.product p.price .invoga-single-price-row del {
  font-size: .68em !important;
}

.single-product div.product p.price .invoga-single-discount {
  font-size: 15px !important;
}

@media (prefers-reduced-motion: reduce) {
  .single-product .related.products ul.products,
  .single-product .invoga-product-rail ul.products {
    scroll-behavior: auto !important;
  }
}

@media (max-width: 760px) {
  .single-product .related.products,
  .single-product .invoga-product-rail {
    --invoga-rail-side-pad: clamp(18px, 4.8vw, 22px);
    --invoga-rail-gap: 12px;
    --invoga-rail-card-width: calc((100% - var(--invoga-rail-gap)) / 2);
    box-sizing: border-box !important;
    margin-top: 32px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
    padding: 0 var(--invoga-rail-side-pad) 44px !important;
  }

  .single-product .related.products.invoga-product-rail--scroll,
  .single-product .invoga-product-rail.invoga-product-rail--scroll {
    padding: 0 var(--invoga-rail-side-pad) 44px !important;
  }

  .single-product .related.products .invoga-product-rail__head,
  .single-product .invoga-product-rail__head {
    margin-bottom: 14px !important;
    padding-inline: 0 !important;
  }

  .single-product .related.products > h2,
  .single-product .related.products .invoga-product-rail__head h2,
  .single-product .invoga-product-rail__head h2 {
    color: rgba(17, 16, 14, .72) !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
  }

  .single-product .invoga-product-rail__nav {
    top: calc((var(--invoga-rail-card-width) * 1.5) / 2) !important;
    right: calc(var(--invoga-rail-side-pad) + 2px) !important;
    left: calc(var(--invoga-rail-side-pad) + 2px) !important;
    padding-inline: 0 !important;
  }

  .single-product .invoga-product-rail__arrow {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
  }

  .single-product .related.products ul.products,
  .single-product .invoga-product-rail ul.products {
    gap: var(--invoga-rail-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 0 2px !important;
  }

  .single-product .related.products ul.products > li.product,
  .single-product .invoga-product-rail ul.products > li.product {
    flex: 0 0 var(--invoga-rail-card-width) !important;
    width: var(--invoga-rail-card-width) !important;
    min-width: var(--invoga-rail-card-width) !important;
    max-width: var(--invoga-rail-card-width) !important;
  }

  .single-product .invoga-mobile-gallery-dots {
    right: 0 !important;
    bottom: 14px !important;
    left: 0 !important;
    z-index: 44 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    pointer-events: auto !important;
  }

  .single-product .invoga-mobile-gallery-dots button {
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(17, 16, 14, .14) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .72) !important;
    box-shadow: none !important;
  }

  .single-product .invoga-mobile-gallery-dots button.is-active {
    border-color: rgba(17, 16, 14, .82) !important;
    background: rgba(17, 16, 14, .82) !important;
  }

  .single-product div.product p.price {
    font-size: 28px !important;
    line-height: 1.06 !important;
  }

  .single-product div.product p.price .invoga-single-discount {
    font-size: 14px !important;
  }
}
