/* ==========================================================================
   MANYARI Global Design System
   Extracted from uploaded HTML design references.
   ========================================================================== */
:root {
  --mn-primary: #560019;
  --mn-primary-container: #7a0f2b;
  --mn-deep-maroon: #5C0A20;
  --mn-heritage-gold: #C8A951;
  --mn-festive-amber: #E8952A;
  --mn-surface: #fff8f2;
  --mn-divine-cream: #FFF8F1;
  --mn-on-primary: #ffffff;
  --mn-on-surface: #1e1b17;
  --mn-on-surface-variant: #574143;
  --mn-outline: #8a7173;
  --mn-outline-variant: #ddbfc1;
  --mn-surface-container: #f4ede6;
  --mn-surface-container-low: #f9f2ec;
  --mn-error: #ba1a1a;

  --mn-font-display: 'Playfair Display', serif;
  --mn-font-body: 'Plus Jakarta Sans', sans-serif;

  --mn-radius-sm: 2px;
  --mn-radius-md: 4px;
  --mn-radius-lg: 8px;
  --mn-radius-pill: 999px;

  --mn-section-gap-desktop: 120px;
  --mn-section-gap-mobile: 64px;
  --mn-grid-gutter: 24px;
  --mn-max-width: 1280px;

  --mn-shadow-sacred: 0 10px 30px -5px rgba(92, 10, 32, 0.1);
  --mn-shadow-product: 0 10px 30px -10px rgba(92, 10, 32, 0.08);
  --mn-shadow-product-hover: 0 20px 40px -15px rgba(92, 10, 32, 0.15);

  --mn-ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
  --mn-duration-fast: 0.3s;
  --mn-duration-slow: 0.7s;
}

body, p, li, a, input, textarea, select, button {
  font-family: var(--mn-font-body);
}
h1, h2, h3, h4, h5, h6,
.entry-title, .page-title {
  font-family: var(--mn-font-display);
}

/* ==========================================================================
   Pixel-perfect Product Card
   Reused natively across: Shop, Category/Archive, Homepage shortcodes,
   Related Products, Upsells, Cross-sells (same WooCommerce loop template).
   ========================================================================== */
ul.products li.product {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(221, 191, 193, 0.35);
  border-radius: var(--mn-radius-lg);
  overflow: hidden;
  box-shadow: var(--mn-shadow-product);
  transition: transform var(--mn-duration-fast) var(--mn-ease-bounce), box-shadow var(--mn-duration-fast) ease;
  padding: 0 !important;
  margin: 0 !important;
}
ul.products li.product:hover {
  transform: translateY(-8px);
  box-shadow: var(--mn-shadow-product-hover);
}

ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
  position: relative;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
}
ul.products li.product img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  margin: 0;
  transition: transform var(--mn-duration-slow) ease;
}
ul.products li.product:hover img {
  transform: scale(1.1);
}

ul.products li.product .onsale {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 5;
  background: var(--mn-deep-maroon);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 4px 8px;
  border-radius: var(--mn-radius-sm);
  min-height: 0;
  min-width: 0;
  line-height: 1.4;
  margin: 0;
  text-transform: uppercase;
}

ul.products li.product .mn-quick-view-overlay {
  position: absolute;
  inset: 0;
  background: rgba(86, 0, 25, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--mn-duration-fast) ease;
  pointer-events: none;
  z-index: 4;
}
ul.products li.product:hover .mn-quick-view-overlay {
  opacity: 1;
  pointer-events: auto;
}
ul.products li.product .mn-quick-view-btn {
  background: #fff;
  color: var(--mn-primary);
  font-weight: 700;
  font-size: 13px;
  padding: 10px 24px;
  border-radius: var(--mn-radius-pill);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transform: translateY(16px);
  transition: transform var(--mn-duration-fast) ease;
  text-decoration: none;
}
ul.products li.product:hover .mn-quick-view-btn { transform: translateY(0); }

ul.products li.product .mn-card-category {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mn-on-surface-variant);
  margin: 20px 24px 6px;
}
ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--mn-font-body);
  font-weight: 700;
  font-size: 15px;
  color: var(--mn-primary);
  margin: 6px 24px 6px !important;
  padding: 0 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
ul.products li.product .mn-card-category + .woocommerce-loop-product__title { margin-top: 0 !important; }
ul.products li.product .star-rating {
  color: var(--mn-festive-amber);
  font-size: 13px;
  margin: 0 24px 6px !important;
  width: 5.4em;
}
ul.products li.product .star-rating::before { color: rgba(0,0,0,0.15); }
ul.products li.product .star-rating span::before { color: var(--mn-festive-amber); }
ul.products li.product .mn-review-count {
  font-size: 11px;
  color: var(--mn-on-surface-variant);
  margin-left: 4px;
}
ul.products li.product .price {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 8px 24px 0 !important;
  font-family: var(--mn-font-body);
}
ul.products li.product .price ins {
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  color: var(--mn-deep-maroon);
  order: 1;
}
ul.products li.product .price del {
  font-weight: 400;
  font-size: 13px;
  color: var(--mn-on-surface-variant);
  opacity: 1;
  order: 2;
}
ul.products li.product .price > .amount {
  font-weight: 700;
  font-size: 20px;
  color: var(--mn-deep-maroon);
}

ul.products li.product a.add_to_cart_button,
ul.products li.product a.button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: calc(100% - 48px) !important;
  background: var(--mn-primary) !important;
  color: #fff !important;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 16px !important;
  border-radius: var(--mn-radius-md) !important;
  margin: 16px 24px 24px !important;
  text-align: center;
  transition: background var(--mn-duration-fast) ease, transform 0.15s ease;
}
ul.products li.product a.add_to_cart_button:hover,
ul.products li.product a.button:hover {
  background: var(--mn-deep-maroon) !important;
  color: #fff !important;
}
ul.products li.product a.add_to_cart_button:active { transform: scale(0.97); }
ul.products li.product a.added_to_cart { display: none !important; }

ul.products { gap: var(--mn-grid-gutter) !important; }
