/* Reuse Woodmart's product forms and scroll behaviour on every screen size. */
body.single-product.wd-sticky-btn-on {
  --wd-sticky-btn-height: 84px;
  padding-bottom: var(--wd-sticky-btn-height) !important;
}
.single-product.wd-sticky-btn-on .wd-toolbar {
  display: none !important;
}
.single-product.wd-sticky-btn-on .wd-sticky-btn {
  --wd-sticky-btn-gap: 14px;
  bottom: 0;
  padding: 12px 0;
  height: var(--wd-sticky-btn-height);
  border-top: 1px solid #e8ebef;
  background: #fff;
  box-shadow: 0 -4px 24px rgb(30 40 55 / 8%);
}
.single-product .wd-sticky-btn .wd-sticky-btn-container {
  gap: 28px;
}
.single-product .wd-sticky-btn-content {
  min-width: 0;
  gap: 14px;
}
.single-product .wd-sticky-btn-thumbnail img {
  width: 58px;
  min-width: 58px;
  max-width: 58px;
  height: 58px;
  max-height: 58px;
  border-radius: 8px;
  object-fit: contain;
}
.single-product .wd-sticky-btn-info {
  min-width: 0;
}
.single-product .wd-sticky-btn .wd-entities-title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 0;
  font-size: 15px !important;
  font-weight: 600;
  line-height: 1.25;
}
.single-product .wd-sticky-btn .star-rating {
  margin-top: 5px;
  font-size: 12px;
}
.single-product .wd-sticky-btn .price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 4px 8px;
  margin: 0 4px 0 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.single-product .wd-sticky-btn .price del {
  color: #92979e;
  font-size: 14px;
  font-weight: 400;
}
.single-product .wd-sticky-btn .price ins {
  margin: 0;
}
.single-product .wd-sticky-btn .wd-sticky-btn-cart {
  flex: 0 0 auto;
  margin: 0;
}
.single-product .wd-sticky-btn form.cart {
  align-items: center;
  margin: 0 !important;
}
.single-product .wd-sticky-btn :is(.single_add_to_cart_button, .wd-sticky-add-to-cart) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 166px;
  min-height: 48px;
  height: 48px;
  margin: 0;
  padding: 10px 20px;
  border-radius: 8px !important;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}
.single-product .wd-sticky-btn .single_add_to_cart_button {
  padding-inline-start: 58px;
}
.single-product .wd-sticky-btn .single_add_to_cart_button::before {
  inset-block: 0;
  inset-inline-start: 0;
  width: 44px;
  height: auto;
  margin: 0;
  background-color: #b70001;
  background-size: 26px;
}
.single-product .wd-sticky-btn div.quantity {
  height: 48px;
}
.single-product .wd-sticky-btn div.quantity input {
  height: 48px;
}
.single-product .wd-sticky-btn-actions {
  margin: 0;
}
.single-product .wd-sticky-btn-actions .wd-action-btn {
  --wd-action-h: 44px;
  --wd-action-w: 44px;
  border: 1px solid #e3e6eb;
  border-radius: 8px;
}
.single-product .wd-sticky-btn .ariete-sticky-label-short {
  display: none;
}
.single-product.wd-sticky-btn-on .scrollToTop.wd-sticky-btn-shown {
  bottom: calc(12px + var(--wd-sticky-btn-height));
}
@media (max-width: 1024px) {
  .single-product .wd-sticky-btn .wd-sticky-btn-container {
    gap: 18px;
  }
  .single-product .wd-sticky-btn .price {
    font-size: 20px;
  }
  .single-product .wd-sticky-btn .price del {
    font-size: 13px;
  }
}
@media (max-width: 768.98px) {
  body.single-product.wd-sticky-btn-on.wd-sticky-btn-on-mb {
    --wd-sticky-btn-height: calc(80px + env(safe-area-inset-bottom, 0px));
  }
  /* Releva's launcher and prompts live in shadow roots. Its offset token
     keeps both above the purchase bar, including when the chat loads later. */
  .single-product.wd-sticky-btn-on-mb:has(.wd-sticky-btn.wd-sticky-btn-shown) :is(.chat-bot-launcher-host, .chat-bot-notification-host) {
    --cb-offset-y: calc(var(--wd-sticky-btn-height) + 16px) !important;
    z-index: 330 !important;
  }
  .single-product.wd-sticky-btn-on-mb:has(.wd-sticky-btn.wd-sticky-btn-shown):has(.chat-bot-launcher-host) .scrollToTop {
    display: none;
  }
  .single-product.wd-sticky-btn-on-mb .wd-sticky-btn {
    display: flex;
    padding: 10px 0 calc(10px + env(safe-area-inset-bottom, 0px));
  }
  .single-product .wd-sticky-btn .wd-sticky-btn-container {
    width: 100%;
    gap: 12px;
    padding-inline: 12px;
  }
  .single-product .wd-sticky-btn .wd-sticky-btn-content {
    display: flex;
    flex: 1 1 0;
    gap: 10px;
  }
  .single-product .wd-sticky-btn-thumbnail img {
    width: 48px;
    min-width: 48px;
    max-width: 48px;
    height: 48px;
    max-height: 48px;
    border-radius: 6px;
  }
  .single-product .wd-sticky-btn .wd-entities-title {
    font-size: 13px !important;
    font-weight: 500;
    line-height: 1.25;
  }
  .single-product .wd-sticky-btn .star-rating {
    margin-top: 4px;
    font-size: 11px;
  }
  .single-product .wd-sticky-btn .wd-sticky-btn-cart {
    flex: 0 0 auto;
    gap: 0;
  }
  .single-product .wd-sticky-btn form.cart {
    width: auto;
  }
  .single-product .wd-sticky-btn :is(.price, div.quantity, .wd-buy-now-btn, .wd-sticky-btn-actions) {
    display: none !important;
  }
  .single-product .wd-sticky-btn :is(.single_add_to_cart_button, .wd-sticky-add-to-cart) {
    width: auto;
    min-width: 118px;
    min-height: 46px;
    height: 46px;
    padding: 10px 14px;
    font-size: 13px;
    border-radius: 7px !important;
  }
  .single-product .wd-sticky-btn .wd-sticky-btn-cart form.cart .single_add_to_cart_button {
    padding-inline-start: 46px;
  }
  .single-product .wd-sticky-btn .single_add_to_cart_button::before {
    width: 36px;
    background-size: 23px;
  }
  .single-product .wd-sticky-btn .ariete-sticky-label-full {
    display: none;
  }
  .single-product .wd-sticky-btn .ariete-sticky-label-short {
    display: inline;
  }
}
@media (prefers-reduced-motion: reduce) {
  .single-product .wd-sticky-btn {
    transition: none;
  }
}
