/**
 * Lets Pop — transparent product cards + Featured Range layout (homepage + shop).
 */

.lpc-section .lpc-grid,
body.lp-shop-archive ul.products.lpc-grid,
.single-product .related.products ul.products.lpc-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2.5vw, 26px);
  width: 100%;
  align-items: stretch;
}

.single-product .related.products ul.products.lpc-grid::before,
.single-product .related.products ul.products.lpc-grid::after {
  display: none;
}

.single-product .related.products ul.products.lpc-grid li.product {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  float: none !important;
  clear: none !important;
}

@media (max-width: 767px) {
  .lpc-section .lpc-grid,
  body.lp-shop-archive ul.products.lpc-grid,
  .single-product .related.products ul.products.lpc-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.lpc-section .lpc-card,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
  border-radius: 18px;
  overflow: hidden;
  min-width: 0;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.lpc-section .lpc-media-link,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media-link {
  display: block;
  text-decoration: none;
  color: inherit;
  padding: clamp(14px, 2vw, 20px);
}

.lpc-section .lpc-media,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media {
  position: relative;
  aspect-ratio: 1 / 1;
  width: 100%;
  margin: 0 auto;
  border-radius: 16px;
  overflow: hidden;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lpc-section .lpc-media img,
.lpc-section .lpc-media .lpc-media__img,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media img,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media .lpc-media__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  transition: transform 0.28s ease;
  border-radius: 0;
  background: transparent;
  image-rendering: auto;
}

.lpc-section .lpc-card:hover .lpc-media img,
.lpc-section .lpc-card:hover .lpc-media .lpc-media__img,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card:hover .lpc-media img,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card:hover .lpc-media .lpc-media__img {
  transform: scale(1.03);
}

.lpc-section .lpc-media-placeholder,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media-placeholder {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
}

.lpc-section .lpc-card-body,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-card-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 8px clamp(14px, 2vw, 22px) clamp(22px, 3vw, 28px);
  flex: 1 1 auto;
}

.lpc-section .lpc-name,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-name {
  font-family: var(--lp-font-primary, 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: clamp(calc(17px + var(--lp-font-bump)), 2vw + calc(10px + var(--lp-font-bump)), calc(26px + var(--lp-font-bump)));
  font-weight: 400;
  font-style: normal;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--clr-text);
  margin: 0;
  max-width: 100%;
}

.lpc-section .lpc-name-link,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-name-link {
  color: inherit;
  text-decoration: none;
}

.lpc-section .lpc-name-link:hover,
.lpc-section .lpc-name-link:focus-visible,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-name-link:hover,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-name-link:focus-visible {
  text-decoration: none;
}

.lpc-section .lpc-price,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-price {
  font-size: clamp(calc(17px + var(--lp-font-bump)), 1.4vw, calc(19px + var(--lp-font-bump)));
  font-weight: 700;
  color: var(--clr-text) !important;
  margin-top: auto;
  padding-top: 4px;
}

.lpc-section .lpc-price del,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-price del {
  opacity: 0.55;
  font-weight: 400;
  margin-right: 8px;
}

.lpc-section .lpc-price ins,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-price ins {
  text-decoration: none;
  color: var(--clr-text);
}

.lpc-section .lpc-buy,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-buy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 6px;
  padding: 7px 32px;
  border-radius: 9999px;
  background: var(--clr-btn-dark);
  color: var(--clr-btn-text) !important;
  font-size: clamp(calc(14px + var(--lp-font-bump)), 1.6vw + calc(9.5px + var(--lp-font-bump)), calc(16px + var(--lp-font-bump)));
  font-weight: 400;
  line-height: 1.25;
  text-decoration: none;
  transition: none;
  border: none;
  cursor: pointer;
}

.lpc-section .lpc-buy.lpc-buy--disabled,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-buy.lpc-buy--disabled {
  opacity: 0.45;
  pointer-events: none;
  cursor: default;
  background: var(--color-surface);
}

.lpc-section .lpc-card,
.uup-grid .uup-card,
.ps-card,
.product-card,
.coming-soon-card,
.lp-product-search-card,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card,
.single-product .related.products ul.products li.product,
.single-product .upsells.products ul.products li.product,
body.woocommerce-cart .cross-sells ul.products li.product {
  background: transparent !important;
  border: 1px solid var(--lp-product-card-border, #00000014) !important;
  box-shadow: none !important;
}

.lpc-section .lpc-card:hover,
.uup-grid .uup-card:hover,
.ps-card:hover,
.product-card:hover,
.coming-soon-card:hover,
.lp-product-search-card:hover,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card:hover,
.single-product .related.products ul.products li.product:hover,
.single-product .upsells.products ul.products li.product:hover,
body.woocommerce-cart .cross-sells ul.products li.product:hover {
  background: transparent !important;
  border-color: var(--lp-product-card-border, #00000014) !important;
  box-shadow: none !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .lpc-section .lpc-card,
  .uup-grid .uup-card,
  .ps-card,
  .product-card,
  body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card,
  .single-product .related.products ul.products li.product,
  .single-product .upsells.products ul.products li.product {
    transition: none !important;
  }
}

/* Buy Now / Notify me — no hover animation in either theme */
.lpc-section .lpc-buy,
.uup-grid .uup-cta {
  transition: none !important;
}

.lpc-section .lpc-buy:not(.lpc-buy--disabled):hover,
.lpc-section .lpc-buy:not(.lpc-buy--disabled):focus-visible,
.lpc-section .lpc-buy:not(.lpc-buy--disabled):active,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-buy:not(.lpc-buy--disabled):hover,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-buy:not(.lpc-buy--disabled):focus-visible,
body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-buy:not(.lpc-buy--disabled):active {
  background: var(--clr-btn-dark) !important;
  color: var(--clr-btn-text) !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .lpc-section .lpc-media img,
  .lpc-section .lpc-media .lpc-media__img,
  body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media img,
  body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card .lpc-media .lpc-media__img {
    transition: none;
  }

  .lpc-section .lpc-card:hover .lpc-media img,
  .lpc-section .lpc-card:hover .lpc-media .lpc-media__img,
  body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card:hover .lpc-media img,
  body.lp-shop-archive ul.products.lpc-grid li.product.lpc-card:hover .lpc-media .lpc-media__img {
    transform: none;
  }
}
.uup-grid .uup-cta:hover,
.uup-grid .uup-cta:focus-visible,
.uup-grid .uup-cta:active {
  background: var(--clr-badge-bg) !important;
  color: var(--clr-badge-text) !important;
  transform: none !important;
}

/* ----- PDP related products — Featured Range / Shop the range typography ----- */
.single-product .related.products {
  font-family: var(--lp-font-primary, 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
}

.single-product .related.products > h2 {
  font-family: var(--lp-font-primary, 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: clamp(calc(28px + var(--lp-font-bump)), 4vw, 2.5rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--clr-text, #ffffff);
  text-align: center;
  margin: 0 0 clamp(40px, 5.5vw, 64px);
}

.single-product .related.products ul.products.lpc-grid li.product {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
  border-radius: 18px;
  padding: 0 !important;
}

.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__link {
  padding: clamp(4px, 0.6vw, 8px);
  text-decoration: none;
  color: inherit;
}

.single-product .related.products ul.products.lpc-grid li.product .astra-shop-thumbnail-wrap,
.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__link {
  display: block;
}

.single-product .related.products ul.products.lpc-grid li.product .astra-shop-thumbnail-wrap {
  min-height: clamp(260px, 32vw, 380px);
}

.single-product .related.products ul.products.lpc-grid li.product img {
  width: 100%;
  height: 100%;
  min-height: clamp(260px, 32vw, 380px);
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
  border-radius: 16px;
}

.single-product .related.products ul.products.lpc-grid li.product .astra-shop-summary-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 8px clamp(14px, 2vw, 22px) clamp(22px, 3vw, 28px);
  flex: 1 1 auto;
}

.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__title,
.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__title a {
  font-family: var(--lp-font-primary, 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: clamp(calc(17px + var(--lp-font-bump)), 2vw + calc(10px + var(--lp-font-bump)), calc(26px + var(--lp-font-bump)));
  font-weight: 400;
  font-style: normal;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--clr-text, #ffffff) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none;
}

.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__title a:hover,
.single-product .related.products ul.products.lpc-grid li.product .woocommerce-loop-product__title a:focus-visible {
  text-decoration: none;
  color: inherit;
}

.single-product .related.products ul.products.lpc-grid li.product .price,
.single-product .related.products ul.products.lpc-grid li.product .woocommerce-Price-amount,
.single-product .related.products ul.products.lpc-grid li.product .price .amount {
  font-family: inherit;
  font-size: clamp(calc(17px + var(--lp-font-bump)), 1.4vw, calc(19px + var(--lp-font-bump)));
  font-weight: 700;
  color: var(--clr-text, #ffffff) !important;
  margin-top: auto;
  padding-top: 4px;
}

.single-product .related.products ul.products.lpc-grid li.product .price del {
  opacity: 0.55;
  font-weight: 400;
  margin-right: 8px;
}

.single-product .related.products ul.products.lpc-grid li.product .price ins {
  text-decoration: none;
  color: var(--clr-text, #ffffff);
}

.single-product .related.products ul.products.lpc-grid li.product .button,
.single-product .related.products ul.products.lpc-grid li.product a.add_to_cart_button,
.single-product .related.products ul.products.lpc-grid li.product .lp-related-buy-now {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 6px !important;
  padding: 7px 32px !important;
  border-radius: 9999px !important;
  background: var(--clr-btn-dark) !important;
  background-image: none !important;
  border: none !important;
  color: var(--clr-btn-text) !important;
  font-family: var(--lp-font-primary, 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  font-size: clamp(calc(14px + var(--lp-font-bump)), 1.6vw + calc(9.5px + var(--lp-font-bump)), calc(16px + var(--lp-font-bump)));
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: none;
  width: auto;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  transition: none !important;
}

.single-product .related.products ul.products.lpc-grid li.product .button:hover,
.single-product .related.products ul.products.lpc-grid li.product a.add_to_cart_button:hover,
.single-product .related.products ul.products.lpc-grid li.product .lp-related-buy-now:hover,
.single-product .related.products ul.products.lpc-grid li.product .lp-related-buy-now:focus-visible,
.single-product .related.products ul.products.lpc-grid li.product .lp-related-buy-now:active {
  background: var(--clr-btn-dark) !important;
  color: var(--clr-btn-text) !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .single-product .related.products ul.products.lpc-grid li.product img {
    transition: none;
  }
}
