/**
 * London Premium v89
 * 1) Restore original product-image luminance in the home Immediate Selection carousel.
 * 2) Refine Watches/Jewelry catalogue cards and enforce one full card per row on phones.
 * 3) Present clear, premium 10-item pagination controls.
 */

/* --------------------------------------------------------------------------
   HOME — keep product photography at its original brightness and colour.
   v88 intentionally uses a dark media frame; legacy mix-blend:multiply rules
   darkened the actual image against that frame. These overrides remove only
   that unintended compositing without changing carousel geometry or controls.
   -------------------------------------------------------------------------- */
body.home .lp-home-product-carousel .lp-v88-carousel-viewport .lp-product-card__image,
body.home .lp-home-product-carousel .lp-v88-carousel-viewport .lp-product-card__media {
  isolation: isolate !important;
}

body.home .lp-home-product-carousel .lp-v88-carousel-viewport .lp-product-card__image > img,
body.home .lp-home-product-carousel .lp-v88-carousel-viewport .lp-product-card__image-secondary img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  background: transparent !important;
  image-rendering: auto !important;
}

/* Keep secondary-image hover behaviour intact while preventing inherited
   darkening on the secondary layer itself. */
body.home .lp-home-product-carousel .lp-v88-carousel-viewport .lp-product-card__image-secondary {
  mix-blend-mode: normal !important;
  background: transparent !important;
}

/* --------------------------------------------------------------------------
   WATCHES + JEWELRY ARCHIVES — shared presentation only.
   Filter contents remain department-specific and untouched.
   -------------------------------------------------------------------------- */
body.woocommerce-shop .lp-shop-main ul.products.lp-product-grid,
body.tax-product_cat .lp-shop-main ul.products.lp-product-grid,
body.post-type-archive-product .lp-shop-main ul.products.lp-product-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 46px 24px !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-shop .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card,
body.tax-product_cat .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card,
body.post-type-archive-product .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

/* A cleaner, consistent catalogue image frame. Product images remain crisp and
   are not composited through multiply/blending. */
body.woocommerce-shop .lp-shop-main .lp-product-card__media,
body.tax-product_cat .lp-shop-main .lp-product-card__media,
body.post-type-archive-product .lp-shop-main .lp-product-card__media {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #eee7da !important;
  border: 1px solid rgba(117, 90, 42, .14) !important;
}

body.woocommerce-shop .lp-shop-main .lp-product-card__image,
body.tax-product_cat .lp-shop-main .lp-product-card__image,
body.post-type-archive-product .lp-shop-main .lp-product-card__image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.woocommerce-shop .lp-shop-main .lp-product-card__media img,
body.woocommerce-shop .lp-shop-main .lp-product-card__image-secondary img,
body.tax-product_cat .lp-shop-main .lp-product-card__media img,
body.tax-product_cat .lp-shop-main .lp-product-card__image-secondary img,
body.post-type-archive-product .lp-shop-main .lp-product-card__media img,
body.post-type-archive-product .lp-shop-main .lp-product-card__image-secondary img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  background: transparent !important;
}

body.woocommerce-shop .lp-shop-main .lp-product-card__content,
body.tax-product_cat .lp-shop-main .lp-product-card__content,
body.post-type-archive-product .lp-shop-main .lp-product-card__content {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 9px !important;
  width: 100% !important;
  padding: 18px 4px 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-shop .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
body.woocommerce-shop .lp-shop-main .lp-product-card .woocommerce-loop-product__title a,
body.tax-product_cat .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
body.tax-product_cat .lp-shop-main .lp-product-card .woocommerce-loop-product__title a,
body.post-type-archive-product .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
body.post-type-archive-product .lp-shop-main .lp-product-card .woocommerce-loop-product__title a {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  line-height: 1.02 !important;
}

/* Tablet: two balanced cards. */
@media (max-width: 1024px) and (min-width: 761px) {
  body.woocommerce-shop .lp-shop-main ul.products.lp-product-grid,
  body.tax-product_cat .lp-shop-main ul.products.lp-product-grid,
  body.post-type-archive-product .lp-shop-main ul.products.lp-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 40px 20px !important;
  }
}

/* Phone: exactly one complete product card below the previous one. */
@media (max-width: 760px) {
  body.woocommerce-shop .lp-shop-main ul.products.lp-product-grid,
  body.woocommerce-shop .lp-shop-main ul.products.products.lp-product-grid,
  body.tax-product_cat .lp-shop-main ul.products.lp-product-grid,
  body.tax-product_cat .lp-shop-main ul.products.products.lp-product-grid,
  body.post-type-archive-product .lp-shop-main ul.products.lp-product-grid,
  body.post-type-archive-product .lp-shop-main ul.products.products.lp-product-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    gap: 48px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-shop .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card,
  body.tax-product_cat .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card,
  body.post-type-archive-product .lp-shop-main ul.products.lp-product-grid > li.product.lp-product-card {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.woocommerce-shop .lp-shop-main .lp-product-card__media,
  body.tax-product_cat .lp-shop-main .lp-product-card__media,
  body.post-type-archive-product .lp-shop-main .lp-product-card__media {
    aspect-ratio: 1 / 1 !important;
    border-radius: 0 !important;
  }

  body.woocommerce-shop .lp-shop-main .lp-product-card__content,
  body.tax-product_cat .lp-shop-main .lp-product-card__content,
  body.post-type-archive-product .lp-shop-main .lp-product-card__content {
    padding: 20px 3px 0 !important;
    gap: 10px !important;
  }

  body.woocommerce-shop .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
  body.woocommerce-shop .lp-shop-main .lp-product-card .woocommerce-loop-product__title a,
  body.tax-product_cat .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
  body.tax-product_cat .lp-shop-main .lp-product-card .woocommerce-loop-product__title a,
  body.post-type-archive-product .lp-shop-main .lp-product-card .woocommerce-loop-product__title,
  body.post-type-archive-product .lp-shop-main .lp-product-card .woocommerce-loop-product__title a {
    font-size: clamp(29px, 8.4vw, 35px) !important;
    line-height: .98 !important;
  }

  body.woocommerce-shop .lp-shop-main .lp-product-card__price,
  body.tax-product_cat .lp-shop-main .lp-product-card__price,
  body.post-type-archive-product .lp-shop-main .lp-product-card__price {
    margin-top: 4px !important;
    font-size: 13px !important;
  }

  /* Keep the image actions legible and comfortably inset on a full-width card. */
  body.woocommerce-shop .lp-shop-main .lp-product-card__media-footer,
  body.tax-product_cat .lp-shop-main .lp-product-card__media-footer,
  body.post-type-archive-product .lp-shop-main .lp-product-card__media-footer {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
  }
}

/* --------------------------------------------------------------------------
   PAGINATION — up to 10 products per page (query handled in PHP below).
   Clear English Previous / Next labels and restrained luxury styling.
   -------------------------------------------------------------------------- */
body .lp-shop-results nav.woocommerce-pagination {
  margin: 64px 0 0 !important;
  padding: 0 !important;
}

body .lp-shop-results nav.woocommerce-pagination ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body .lp-shop-results nav.woocommerce-pagination ul.page-numbers li {
  float: none !important;
  margin: 0 !important;
  border: 0 !important;
}

body .lp-shop-results nav.woocommerce-pagination .page-numbers a,
body .lp-shop-results nav.woocommerce-pagination .page-numbers span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 44px !important;
  padding: 0 13px !important;
  border: 1px solid rgba(29, 23, 16, .18) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #17120d !important;
  font-family: "Inter Tight", "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-sizing: border-box !important;
}

body .lp-shop-results nav.woocommerce-pagination .page-numbers a.prev,
body .lp-shop-results nav.woocommerce-pagination .page-numbers a.next {
  min-width: 104px !important;
  padding-inline: 20px !important;
  letter-spacing: .14em !important;
}

body .lp-shop-results nav.woocommerce-pagination .page-numbers span.current,
body .lp-shop-results nav.woocommerce-pagination .page-numbers a:hover,
body .lp-shop-results nav.woocommerce-pagination .page-numbers a:focus-visible {
  border-color: #0d0a07 !important;
  background: #0d0a07 !important;
  color: #fff !important;
  outline: none !important;
}

@media (max-width: 760px) {
  body .lp-shop-results nav.woocommerce-pagination {
    margin-top: 54px !important;
  }

  body .lp-shop-results nav.woocommerce-pagination ul.page-numbers {
    gap: 7px !important;
  }

  body .lp-shop-results nav.woocommerce-pagination .page-numbers a,
  body .lp-shop-results nav.woocommerce-pagination .page-numbers span {
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 11px !important;
    font-size: 9px !important;
  }

  body .lp-shop-results nav.woocommerce-pagination .page-numbers a.prev,
  body .lp-shop-results nav.woocommerce-pagination .page-numbers a.next {
    min-width: 92px !important;
    padding-inline: 15px !important;
  }
}

/* Mobile catalogue toolbar: result count first, then Refine + Sort in one
   balanced control row. This changes presentation only; each department keeps
   its own filter fields and taxonomy logic. */
@media (max-width: 760px) {
  body.woocommerce-shop .lp-shop-toolbar,
  body.tax-product_cat .lp-shop-toolbar,
  body.post-type-archive-product .lp-shop-toolbar {
    display: grid !important;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important;
    grid-template-areas:
      "summary summary"
      "refine sort" !important;
    gap: 14px 10px !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 0 36px !important;
    padding: 0 0 22px !important;
    align-items: stretch !important;
  }

  body.woocommerce-shop .lp-shop-toolbar__summary,
  body.tax-product_cat .lp-shop-toolbar__summary,
  body.post-type-archive-product .lp-shop-toolbar__summary {
    grid-area: summary !important;
    justify-self: center !important;
    width: 100% !important;
    text-align: center !important;
  }

  body.woocommerce-shop .lp-shop-toolbar .js-filter-toggle,
  body.tax-product_cat .lp-shop-toolbar .js-filter-toggle,
  body.post-type-archive-product .lp-shop-toolbar .js-filter-toggle {
    grid-area: refine !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 50px !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.woocommerce-shop .lp-shop-toolbar__sort,
  body.tax-product_cat .lp-shop-toolbar__sort,
  body.post-type-archive-product .lp-shop-toolbar__sort {
    grid-area: sort !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.woocommerce-shop .lp-shop-toolbar__sort .woocommerce-ordering,
  body.tax-product_cat .lp-shop-toolbar__sort .woocommerce-ordering,
  body.post-type-archive-product .lp-shop-toolbar__sort .woocommerce-ordering,
  body.woocommerce-shop .lp-shop-toolbar__sort select,
  body.tax-product_cat .lp-shop-toolbar__sort select,
  body.post-type-archive-product .lp-shop-toolbar__sort select {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 50px !important;
    margin: 0 !important;
  }

  /* Availability already appears as a media badge; remove the duplicated tiny
     content label on phones for a calmer premium card hierarchy. */
  body.woocommerce-shop .lp-shop-main .lp-product-card__stock,
  body.tax-product_cat .lp-shop-main .lp-product-card__stock,
  body.post-type-archive-product .lp-shop-main .lp-product-card__stock {
    display: none !important;
  }

  body.woocommerce-shop .lp-shop-main .lp-product-card__meta,
  body.tax-product_cat .lp-shop-main .lp-product-card__meta,
  body.post-type-archive-product .lp-shop-main .lp-product-card__meta {
    display: block !important;
    width: 100% !important;
    margin: 0 0 2px !important;
  }
}
