/* Product presentation only. Disable the plugin to restore the previous appearance. */
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag, .single-product) #masthead {
  position: relative !important;
  background: #fff;
  border-bottom: 1px solid #e8e6e1;
}
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag, .single-product) #masthead .main-header-menu .menu-link,
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag, .single-product) #masthead .ast-builder-social-element,
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag, .single-product) #masthead .menu-toggle {
  color: #242722 !important;
}
body:is(.woocommerce-shop, .tax-product_cat, .tax-product_tag) #primary { padding: 28px 24px; }
body ul.products li.product {
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e8e6e1;
  border-radius: 12px;
  padding: 12px 12px 18px !important;
  overflow: hidden;
  box-shadow: 0 3px 14px rgba(28, 27, 24, .035);
  transition: box-shadow .2s ease, border-color .2s ease;
}
body ul.products li.product a img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center;
  background: #faf9f6;
  border-radius: 7px;
  margin-bottom: 16px;
}
body ul.products li.product .woocommerce-loop-product__title {
  color: #22221f;
  font-size: 16px !important;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: .01em;
  padding: 0 0 9px;
  min-height: 3.35em;
}
body ul.products li.product .price {
  color: #252522;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 12px;
}
body ul.products li.product .price del { color: #73736c; opacity: 1; font-size: .85em; }
body ul.products li.product .price ins { background: transparent; font-weight: 600; text-decoration: none; }
body ul.products li.product > a.button,
body ul.products li.product .astra-shop-summary-wrap > a.button {
  background: #242722;
  color: #fff;
  border: 1px solid #242722;
  border-radius: 5px;
  padding: 12px 16px;
  min-height: 44px;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: .02em;
  text-align: center;
  box-shadow: none;
}
body ul.products li.product .star-rating { margin-bottom: 10px; }
body ul.products li.product .onsale,
body ul.products li.product .ast-onsale-card {
  background: #f0eee7;
  color: #35362f;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
  box-shadow: none;
}
body ul.products li.product a:focus-visible,
body.single-product .summary a:focus-visible,
body.single-product .summary button:focus-visible {
  outline: 3px solid #967e51;
  outline-offset: 3px;
}
body.woocommerce-shop .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count { color: #62635c; font-size: 13px; }
body.woocommerce-shop .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select {
  border: 1px solid #deded6;
  border-radius: 5px;
  min-height: 44px;
  background-color: #fff;
}
body.single-product div.product div.images .woocommerce-product-gallery__image {
  background: #faf9f6;
  border-radius: 10px;
  overflow: hidden;
}
body.single-product div.product div.images .woocommerce-product-gallery__image img {
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
}
body.single-product div.product .product_title { line-height: 1.2; letter-spacing: -.02em; }
body.single-product div.product .woocommerce-product-details__short-description { line-height: 1.8; color: #4c4f47; }
body.single-product div.product form.cart .single_add_to_cart_button {
  background: #242722;
  color: #fff;
  border-radius: 5px;
  min-height: 48px;
  padding: 14px 25px;
  letter-spacing: .02em;
}
body.single-product div.product form.cart .quantity .qty { min-height: 48px; border-radius: 5px; }
@media (hover: hover) {
  body ul.products li.product:hover { border-color: #cac9bf; box-shadow: 0 8px 24px rgba(28, 27, 24, .08); }
  body ul.products li.product > a.button:hover,
  body ul.products li.product .astra-shop-summary-wrap > a.button:hover,
  body.single-product div.product form.cart .single_add_to_cart_button:hover { background: #41483b; color: #fff; }
}
@media (max-width: 544px) {
  body ul.products li.product { padding: 8px 8px 14px !important; border-radius: 8px; }
  body ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
  body ul.products li.product .price { font-size: 14px; }
  body ul.products li.product > a.button,
  body ul.products li.product .astra-shop-summary-wrap > a.button { padding: 10px 8px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) { body ul.products li.product { transition: none; } }
