/*! @author Trần Thành (Tran Thanh) — labcare.com.vn · TT-LBC-2026 */

.product-grid,
.product-related,
.product-preview-list {
  container-type: inline-size;
  container-name: product-list;
}

.product-card {
  display: flex;
  flex-direction: column;
  gap: var(--s-3);
}
.product-card__media { aspect-ratio: 4/3; }
.product-card__title { font-size: var(--fs-4); }
.product-card__specs { display: none; }   

@container product-list (min-width: 280px) {
  .product-card__specs { display: grid; gap: var(--s-1); }
  .product-card__title { font-size: var(--fs-5); }
}

@container product-list (min-width: 360px) {
  .product-card {
    flex-direction: row;
    gap: var(--s-5);
  }
  .product-card__media {
    flex: 0 0 40%;
    aspect-ratio: 1 / 1;
  }
}

@container product-list (min-width: 480px) {
  .product-card {
    flex-direction: column;
  }
  .product-card__media {
    flex: none;
    aspect-ratio: 4/3;
  }
  .product-card__title { font-size: var(--fs-6); }
}

.art-related__grid,
.news-band__list {
  container-type: inline-size;
  container-name: article-list;
}

@container article-list (min-width: 320px) {
  .art h3 { font-size: var(--fs-5); }
}
@container article-list (min-width: 480px) {
  .art h3 { font-size: var(--fs-6); }
}
@container article-list (min-width: 640px) {
  .art h3 { font-size: var(--fs-7); }
}

.range__list,
.brand-cases__row,
.psp__grid {
  container-type: inline-size;
  container-name: card-grid;
}

.range-card,
.bc,
.psp {
  display: flex;
  flex-direction: column;
  gap: var(--s-3);
}

@container card-grid (min-width: 420px) {
  .range-card,
  .bc,
  .psp {
    flex-direction: row;
    gap: var(--s-5);
  }
}

.cart-list,
.co-mini-list {
  container-type: inline-size;
  container-name: cart;
}

.cart-row,
.co-mini-row {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: var(--s-3);
  align-items: start;
}

@container cart (min-width: 480px) {
  .cart-row { grid-template-columns: 100px 1fr 100px 120px; }
  .cart-row__qty,
  .cart-row__price { display: block; }
}

@container cart (max-width: 479px) {
  .cart-row__qty,
  .cart-row__price { grid-column: 2; }  
}

.lib-feat__row {
  container-type: inline-size;
  container-name: feat;
}

.lib-feat-card { padding: var(--s-5); }
.lib-feat-card__title { font-size: var(--fs-5); }
.lib-feat-card__excerpt { display: none; }

@container feat (min-width: 360px) {
  .lib-feat-card__title { font-size: var(--fs-6); }
  .lib-feat-card__excerpt { display: block; }
}
@container feat (min-width: 600px) {
  .lib-feat-card__title { font-size: var(--fs-7); }
}

@supports not (container-type: inline-size) {
  .art.size-xl h3 { font-size: var(--fs-7); }
  .art.size-lg h3 { font-size: var(--fs-7); }
  .art.size-md h3 { font-size: var(--fs-5); }
  .art.size-sm h3 { font-size: var(--fs-4); }
}
