[ui-section=product-grid]{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--color-primary);
  border-radius:var(--radius-section);
  box-shadow:3px 3px 0 var(--color-primary);
}
[ui-section=product-grid] .head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--spacing-8) var(--spacing-12);
  background-color:var(--color-surface-container);
  color:var(--color-primary);
  border-block-end:1px solid var(--color-primary);
}
[ui-section=product-grid] .head .title{
  font:var(--font-title-md);
}
[ui-section=product-grid] .head a{
  display:flex;
  align-items:center;
  gap:var(--spacing-4);
}
[ui-section=product-grid] .head a i{
  font-size:16px;
}
[dir="rtl"] [ui-section=product-grid] .head a i{
  transform:rotate(180deg);
}
[ui-section=product-grid] .list{
  display:grid;
  grid-gap:var(--spacing-12);
  gap:var(--spacing-12);
  grid-template-columns:repeat(2, 1fr);
  padding:var(--spacing-12);
}
[ui-section=product-grid] .list .product-item{
  display:flex;
  gap:var(--spacing-8);
  flex-direction:column;
  height:100%;
}
[ui-section=product-grid] .list .product-item .media{
  position:relative;
  width:100%;
  height:auto;
  overflow:hidden;
}
[ui-section=product-grid] .list .product-item .media[data-aspect-ratio=square]{
  aspect-ratio:1/1;
}
[ui-section=product-grid] .list .product-item .media[data-aspect-ratio=portrait]{
  aspect-ratio:3/4;
}
[ui-section=product-grid] .list .product-item .media[data-aspect-ratio=landscape]{
  aspect-ratio:16/9;
}
[ui-section=product-grid] .list .product-item .media > img{
  -o-object-fit:cover;
     object-fit:cover;
}
[ui-section=product-grid] .list .product-item .content{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:var(--spacing-8);
}
[ui-section=product-grid] .list .product-item .content .name{
  overflow:hidden;
  font:var(--font-title-sm);
  text-overflow:ellipsis;
  white-space:nowrap;
}
[ui-section=product-grid] .list .product-item .content .price{
  display:flex;
  flex:1;
  gap:var(--spacing-4);
}
[ui-section=product-grid] .list .product-item .content .price .compare-at{
  opacity:0.5;
  -webkit-text-decoration:line-through;
  text-decoration:line-through;
}
[ui-section=product-grid] ui-empty{
  padding:var(--spacing-12);
}
