/* =========================================================
   SHOPSTYLE FAVORITES V3
   /lemmikud only
   ========================================================= */

.ss-favorites-v3{
  --ssf-ink:#292c31;
  --ssf-muted:#85898f;
  --ssf-line:#e7e7e3;
  --ssf-soft:#f6f6f3;
  --ssf-orange:#f47a20;

  width:100%;
  padding:34px 0 80px;
}


/* OLD PAGE TITLE */

.ss-favorites-v3 .page_title{
  margin:0 0 28px!important;
  padding:0!important;

  font-size:28px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;

  text-align:left!important;
  color:var(--ssf-ink)!important;
}


/* =========================================================
   PRODUCT GRID
   Covers the legacy ShopStyle product markup
   ========================================================= */

.ss-favorites-v3 .products,
.ss-favorites-v3 .products-grid,
.ss-favorites-v3 .product-grid,
.ss-favorites-v3 .product_list,
.ss-favorites-v3 .product-list,
.ss-favorites-v3 .products_list{
  width:100%!important;

  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;

  margin:0!important;
  padding:0!important;
}


/* Bootstrap / old ShopStyle card columns */

.ss-favorites-v3 .product-layout,
.ss-favorites-v3 .product-item,
.ss-favorites-v3 .product_box,
.ss-favorites-v3 .product-box,
.ss-favorites-v3 .product{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;

  margin:0!important;
  padding:0!important;

  float:none!important;
}


/* If legacy view uses Bootstrap columns directly */

.ss-favorites-v3 .row > [class*="col-"]{
  margin-bottom:14px;
}


/* =========================================================
   CARD
   ========================================================= */

.ss-favorites-v3 .product-thumb,
.ss-favorites-v3 .product-item,
.ss-favorites-v3 .product_box,
.ss-favorites-v3 .product-box{
  height:100%!important;

  overflow:hidden!important;

  margin:0!important;
  padding:0!important;

  border:1px solid var(--ssf-line)!important;
  border-radius:15px!important;

  background:#fff!important;

  box-shadow:none!important;

  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease!important;
}

.ss-favorites-v3 .product-thumb:hover,
.ss-favorites-v3 .product-item:hover,
.ss-favorites-v3 .product_box:hover,
.ss-favorites-v3 .product-box:hover{
  transform:translateY(-3px);

  border-color:#dddcd7!important;

  box-shadow:
    0 12px 28px rgba(28,30,34,.07)!important;
}


/* =========================================================
   IMAGE
   ========================================================= */

.ss-favorites-v3 .image,
.ss-favorites-v3 .product-image,
.ss-favorites-v3 .product_img,
.ss-favorites-v3 .product-img{
  position:relative!important;

  width:100%!important;
  height:auto!important;
  aspect-ratio:4/5!important;

  overflow:hidden!important;

  margin:0!important;
  padding:0!important;

  background:var(--ssf-soft)!important;
}

.ss-favorites-v3 .image a,
.ss-favorites-v3 .product-image a{
  width:100%!important;
  height:100%!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.ss-favorites-v3 .image img,
.ss-favorites-v3 .product-image img,
.ss-favorites-v3 .product_img img,
.ss-favorites-v3 .product-img img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;

  display:block!important;

  object-fit:contain!important;

  margin:0 auto!important;
  padding:10px!important;
}


/* =========================================================
   CARD TEXT
   ========================================================= */

.ss-favorites-v3 .caption,
.ss-favorites-v3 .product-info,
.ss-favorites-v3 .product_info{
  min-height:0!important;

  padding:13px 13px 15px!important;

  background:#fff!important;
}

.ss-favorites-v3 h4,
.ss-favorites-v3 .product-title,
.ss-favorites-v3 .product_title,
.ss-favorites-v3 .name{
  min-height:34px!important;
  max-height:34px!important;

  overflow:hidden!important;

  margin:0 0 7px!important;
  padding:0!important;

  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;

  font-size:11px!important;
  line-height:1.45!important;
  font-weight:650!important;
}

.ss-favorites-v3 h4 a,
.ss-favorites-v3 .product-title a,
.ss-favorites-v3 .product_title a,
.ss-favorites-v3 .name a{
  color:var(--ssf-ink)!important;
  text-decoration:none!important;
}


/* =========================================================
   PRICE
   ========================================================= */

.ss-favorites-v3 .price,
.ss-favorites-v3 .product-price,
.ss-favorites-v3 .product_price{
  min-height:22px!important;

  margin:7px 0 0!important;
  padding:0!important;

  color:var(--ssf-ink)!important;

  font-size:12px!important;
  line-height:1.4!important;
  font-weight:800!important;
}

.ss-favorites-v3 .price-old,
.ss-favorites-v3 .old-price{
  margin-left:6px!important;

  color:#aaa!important;

  font-size:9px!important;
  font-weight:500!important;
}


/* =========================================================
   BUTTONS / FAVORITE HEART
   ========================================================= */

.ss-favorites-v3 .button-group{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;

  padding:0 13px 14px!important;

  border:0!important;
  background:#fff!important;
}

.ss-favorites-v3 .wishlist,
.ss-favorites-v3 .favorite{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  padding:0!important;

  border:1px solid #e5e5e1!important;
  border-radius:50%!important;

  background:#fff!important;
  color:#e7655d!important;

  box-shadow:none!important;
}


/* Remove huge legacy spacing */

.ss-favorites-v3 .spacer,
.ss-favorites-v3 .spacer10,
.ss-favorites-v3 .spacer20,
.ss-favorites-v3 .spacer30{
  height:0!important;
  min-height:0!important;
  margin:0!important;
}


/* Legacy empty message */

.ss-favorites-v3 .alert-danger{
  margin:20px 0!important;
  padding:45px 20px!important;

  border:1px dashed #dddcd7!important;
  border-radius:16px!important;

  background:#fafaf8!important;
  color:#777b80!important;

  text-align:center!important;
  font-size:12px!important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1250px){

  .ss-favorites-v3 .products,
  .ss-favorites-v3 .products-grid,
  .ss-favorites-v3 .product-grid,
  .ss-favorites-v3 .product_list,
  .ss-favorites-v3 .product-list,
  .ss-favorites-v3 .products_list{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}


@media(max-width:1050px){

  .ss-favorites-v3 .products,
  .ss-favorites-v3 .products-grid,
  .ss-favorites-v3 .product-grid,
  .ss-favorites-v3 .product_list,
  .ss-favorites-v3 .product-list,
  .ss-favorites-v3 .products_list{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}


@media(max-width:860px){

  .ss-favorites-v3{
    padding:22px 0 65px;
  }

  .ss-favorites-v3 .page_title{
    font-size:23px!important;
  }

  .ss-favorites-v3 .products,
  .ss-favorites-v3 .products-grid,
  .ss-favorites-v3 .product-grid,
  .ss-favorites-v3 .product_list,
  .ss-favorites-v3 .product-list,
  .ss-favorites-v3 .products_list{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
}


@media(max-width:620px){

  .ss-favorites-v3 .products,
  .ss-favorites-v3 .products-grid,
  .ss-favorites-v3 .product-grid,
  .ss-favorites-v3 .product_list,
  .ss-favorites-v3 .product-list,
  .ss-favorites-v3 .products_list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .ss-favorites-v3 .image img,
  .ss-favorites-v3 .product-image img{
    padding:7px!important;
  }
}

/* =========================================================
   FAVORITES V3 — CONTAINER FIX
   keep everything inside ShopStyle body
   ========================================================= */

body .content_container.products_container{
  width:100%!important;
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:26px!important;
  padding-right:26px!important;
  box-sizing:border-box!important;
}

.ss-favorites-v3{
  width:100%!important;
  max-width:1380px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* old Bootstrap rows must not escape the container */
.ss-favorites-v3 .row{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* remove old float/grid widths inside favorites only */
.ss-favorites-v3 .row:before,
.ss-favorites-v3 .row:after{
  display:none!important;
}

.ss-favorites-v3 [class*="col-"]{
  box-sizing:border-box!important;
}

/* product list itself can never exceed parent */
.ss-favorites-v3 .products,
.ss-favorites-v3 .products-grid,
.ss-favorites-v3 .product-grid,
.ss-favorites-v3 .product_list,
.ss-favorites-v3 .product-list,
.ss-favorites-v3 .products_list{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

@media(max-width:860px){

  body .content_container.products_container{
    padding-left:15px!important;
    padding-right:15px!important;
  }

  .ss-favorites-v3{
    max-width:100%!important;
  }
}


/* =========================================================
   FAVORITES V3 — EXACT SHOPSTYLE PRODUCT CARDS
   ========================================================= */

.ss-favorites-v3{
  overflow:visible!important;
}

.ssf-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;

  margin:4px 0 28px;
  padding:0 0 24px;

  border-bottom:1px solid #e7e7e3;
}

.ssf-eyebrow{
  display:block;
  margin-bottom:8px;

  color:#9a9da2;

  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}

.ssf-head h2{
  margin:0!important;

  color:#292c31;

  font-size:30px!important;
  line-height:1.08!important;
  font-weight:800!important;
  letter-spacing:-.04em!important;
}

.ssf-head p{
  margin:8px 0 0;

  color:#85898f;

  font-size:11px;
  line-height:1.55;
}

.ssf-count{
  min-width:84px;

  padding:13px 18px;

  border:1px solid #e7e7e3;
  border-radius:13px;

  background:#fafaf8;

  text-align:center;
}

.ssf-count strong{
  display:block;

  color:#292c31;

  font-size:20px;
  line-height:1;
  font-weight:800;
}

.ssf-count span{
  display:block;
  margin-top:5px;

  color:#96999e;

  font-size:8px;
  font-weight:700;
}


/* GRID */

.ssf-grid{
  width:100%;

  display:grid;

  grid-template-columns:
    repeat(6,minmax(0,1fr));

  gap:14px;

  margin:0;
  padding:0;
}


/* CARD */

.ssf-card{
  position:relative;

  min-width:0;
  overflow:hidden;

  border:1px solid #e7e7e3;
  border-radius:14px;

  background:#fff;

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.ssf-card:hover{
  transform:translateY(-3px);

  border-color:#dddcd7;

  box-shadow:
    0 12px 28px rgba(28,30,34,.07);
}

.ssf-card-link{
  display:block;

  color:#292c31!important;
  text-decoration:none!important;
}


/* IMAGE */

.ssf-image{
  position:relative;

  width:100%;
  aspect-ratio:4/5;

  display:flex;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  background:#f6f6f3;
}

.ssf-image img{
  width:100%;
  height:100%;

  display:block;

  padding:10px;

  object-fit:contain;

  transition:
    transform .22s ease;
}

.ssf-card:hover .ssf-image img{
  transform:scale(1.025);
}

.ssf-no-image{
  color:#b3b5b8;

  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
}

.ssf-sale{
  position:absolute;
  top:10px;
  left:10px;

  min-height:27px;

  display:flex;
  align-items:center;

  padding:0 8px;

  border-radius:999px;

  background:#fff;
  color:#e45e18;

  box-shadow:
    0 4px 14px rgba(0,0,0,.07);

  font-size:8px;
  font-weight:800;
}


/* FAVORITE HEART */

.ssf-heart{
  position:absolute!important;

  top:10px!important;
  right:10px!important;

  z-index:8!important;

  width:34px!important;
  height:34px!important;
  min-width:34px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  margin:0!important;
  padding:0!important;

  border:1px solid rgba(0,0,0,.06)!important;
  border-radius:50%!important;

  background:rgba(255,255,255,.96)!important;
  color:#e75f57!important;

  box-shadow:
    0 4px 14px rgba(0,0,0,.08)!important;

  font-family:Arial,sans-serif!important;
  font-size:17px!important;
  line-height:1!important;

  cursor:pointer!important;
}

.ssf-heart:hover{
  transform:scale(1.07);
}


/* TEXT */

.ssf-info{
  padding:13px 13px 15px;
}

.ssf-brand{
  margin-bottom:5px;

  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;

  color:#999ca1;

  font-size:8px;
  line-height:1.2;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.055em;
}

.ssf-info h3{
  height:34px!important;
  min-height:34px!important;

  display:-webkit-box!important;
  overflow:hidden!important;

  margin:0!important;
  padding:0!important;

  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;

  color:#292c31!important;

  font-size:11px!important;
  line-height:1.45!important;
  font-weight:650!important;
}

.ssf-price{
  min-height:20px;

  display:flex;
  align-items:center;
  gap:7px;

  margin-top:9px;
}

.ssf-price strong{
  color:#292c31;

  font-size:11px;
  font-weight:800;
}

.ssf-price del{
  color:#aaa;

  font-size:9px;
}


/* EMPTY */

.ssf-empty{
  padding:60px 20px;

  border:1px dashed #dddcd7;
  border-radius:18px;

  background:#fafaf8;

  text-align:center;
}

.ssf-empty-heart{
  width:52px;
  height:52px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin:0 auto 14px;

  border-radius:50%;

  background:#fff3eb;
  color:#f47a20;

  font-size:24px;
}

.ssf-empty strong{
  display:block;

  color:#292c31;

  font-size:14px;
  font-weight:800;
}

.ssf-empty span{
  display:block;

  margin-top:6px;

  color:#92959a;

  font-size:10px;
}

.ssf-empty a{
  display:inline-block;

  margin-top:18px;
  padding:11px 18px;

  border-radius:999px;

  background:#292c31;
  color:#fff!important;

  text-decoration:none!important;

  font-size:9px;
  font-weight:800;
}


/* RESPONSIVE */

@media(max-width:1250px){

  .ssf-grid{
    grid-template-columns:
      repeat(5,minmax(0,1fr));
  }
}

@media(max-width:1050px){

  .ssf-grid{
    grid-template-columns:
      repeat(4,minmax(0,1fr));
  }
}

@media(max-width:800px){

  .ssf-grid{
    grid-template-columns:
      repeat(3,minmax(0,1fr));

    gap:10px;
  }
}

@media(max-width:580px){

  .ssf-head{
    align-items:center;
  }

  .ssf-head h2{
    font-size:25px!important;
  }

  .ssf-head p{
    display:none;
  }

  .ssf-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .ssf-info{
    padding:11px 10px 13px;
  }

  .ssf-image img{
    padding:7px;
  }
}
