74 lines
1.4 KiB
SCSS
74 lines
1.4 KiB
SCSS
$break-small: 600px;
|
|
|
|
$grid-gap: 1.25em;
|
|
$min-product-width: 150px;
|
|
|
|
@mixin break-small() {
|
|
@media (min-width: #{ ($break-small) }) {
|
|
@content;
|
|
}
|
|
}
|
|
|
|
.wc-block-product-template {
|
|
margin-top: 0;
|
|
margin-bottom: 0;
|
|
max-width: 100%;
|
|
list-style: none;
|
|
padding: 0;
|
|
|
|
// Unset background colors that can be inherited from Global Styles with extra specificity.
|
|
&.wc-block-product-template {
|
|
background: none;
|
|
}
|
|
|
|
&.is-flex-container {
|
|
flex-direction: row;
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 1.25em;
|
|
|
|
> li {
|
|
margin: 0;
|
|
width: 100%;
|
|
// Below style is required to override high-specificity Storefront styles
|
|
list-style: none;
|
|
}
|
|
|
|
@include break-small {
|
|
@for $i from 2 through 6 {
|
|
&.is-flex-container.columns-#{ $i } > li {
|
|
width: calc((100% / #{ $i }) - 1.25em + (1.25em / #{ $i }));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&__responsive {
|
|
display: grid;
|
|
grid-gap: $grid-gap;
|
|
|
|
@for $i from 2 through 6 {
|
|
$gap-count: calc(#{ $i } - 1);
|
|
$total-gap-width: calc(#{ $gap-count } * #{ $grid-gap });
|
|
$max-product-width: calc((100% - #{ $total-gap-width }) / #{ $i });
|
|
|
|
&.columns-#{ $i } {
|
|
grid-template-columns: repeat(auto-fill, minmax(max(#{ $min-product-width }, #{ $max-product-width }), 1fr));
|
|
}
|
|
}
|
|
|
|
> li {
|
|
margin-block-start: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Default spacing between product elements
|
|
*/
|
|
:where(.wc-block-product-template .wc-block-product) > *:not(:last-child) {
|
|
margin-bottom: 0.75rem;
|
|
margin-top: 0;
|
|
}
|
|
|