/* Add custom CSS styles below */ 


/* =========================================================
   Lumina Spa – equal product cards (Raed theme)  v3
   - Same card height in every row / slider
   - Same square image area for every product (photo cropped to fill)
   - Title: max 2 lines
   - Description: always 2 lines tall
       1 line  -> keeps an empty 2nd line
       3+ lines -> cut at the 2nd line with "..."
       none    -> keeps the same 2 lines of space
   - Price and "أضف إلى السلة" aligned at the bottom
   ========================================================= */

/* rows, grids and sliders: every card as tall as the tallest one */
.s-products-list-wrapper {
  align-items: stretch !important;
}
.swiper-wrapper:has(> .swiper-slide > custom-salla-product-card) {
  align-items: stretch !important;
}
.swiper-slide:has(> custom-salla-product-card) {
  height: auto !important;
  display: flex !important;
}
.swiper-slide > custom-salla-product-card {
  width: 100%;
}
custom-salla-product-card.s-product-card-vertical {
  height: auto !important;
  align-self: stretch !important;
}

/* same square image for every card */
.s-product-card-vertical .s-product-card-image {
  flex: none !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
}
.s-product-card-vertical .s-product-card-image > a,
.s-product-card-vertical .s-product-card-image img {
  display: block;
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}

/* text area takes the remaining height */
.s-product-card-vertical .s-product-card-content {
  flex: 1 1 auto !important;
  display: flex;
  flex-direction: column;
}

/* title: max 2 lines */
.s-product-card-vertical .s-product-card-content-title a {
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

/* description: exactly 2 lines */
.s-product-card-vertical .s-product-card-content-subtitle {
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  line-height: 1.5rem !important;
  height: 3rem !important;   /* 2 x line-height */
}

/* no description: reserve the same 2 lines */
.s-product-card-vertical .s-product-card-content-main:not(:has(.s-product-card-content-subtitle))::after {
  content: "";
  display: block;
  height: 3rem;
  margin-bottom: 0.625rem;
}

/* price row + button pushed to the bottom, aligned across cards */
.s-product-card-vertical .s-product-card-content-sub {
  margin-top: auto !important;
}
.s-product-card-vertical .s-product-card-content-footer {
  margin-top: 0 !important;
}

/* Lumina: hide the theme's automatic product-page rows
   ("منتجات مشابهة", "customers also bought", "customers also viewed").
   Our own rows from the recommendations script replace them. Delete to bring them back. */
.s-block--bundle-similar-products,
.s-block--bundle-customers-also-bought,
.s-block--bundle-customers-also-viewed {
  display: none !important;
}
/* and their wrapper when nothing else is in it (removes the empty gap) */
.s-blocks-wrapper.s-before-related:not(:has(> :not(.s-block--bundle-similar-products):not(.s-block--bundle-customers-also-bought):not(.s-block--bundle-customers-also-viewed))) {
  display: none !important;
}