.columns-section img {
	display:block;
	width:100%;
	vertical-align:bottom
}

.columns-section .grid {
	display:grid
}

.columns-section .grid.gap {
	gap:5px
}

@media (min-width:768px) {
	.columns-section .grid.columns-2 {
		grid-template-columns:repeat(2, 1fr)
	}
}

.columns-section .grid.columns-2 .columns-2 {
	grid-template-columns:none
}

@media (min-width:960px) {
	.columns-section .grid.columns-2 .columns-2 {
		grid-template-columns:repeat(2, 1fr)
	}
}

@media (min-width:960px) {
	.columns-section .grid.columns-reverse-desktop {
		direction:rtl
	}

	.columns-section .grid.columns-reverse-desktop > * {
		direction:ltr
	}
}

.columns-section .grid.rows-2 {
	grid-template-rows:repeat(2, 1fr)
}

@media (max-width:767px) {
	.columns-section .grid.mobile-rows-2 {
		grid-template-rows:repeat(2, 1fr)
	}
}

@media (min-width:768px) and (max-width:959px) {
	.columns-section .grid.tablet-rows-2 {
		grid-template-rows:repeat(2, 1fr)
	}
}

@media (min-width:960px) {
	.columns-section .grid.desktop-rows-2 {
		grid-template-rows:repeat(2, 1fr)
	}
}

.columns-section .columns {
	display:grid
}

@media (min-width:768px) {
	.columns-section .columns.gap__24 {
		gap:24px
	}
}

@media (min-width:768px) {
	.columns-section .columns.columns__2 {
		grid-template-columns:repeat(2, 1fr)
	}
}

@media (min-width:480px) {
	.columns-section .columns.columns__3 {
		grid-template-columns:repeat(3, 1fr)
	}
}

@media (min-width:480px) {
	.columns-section .columns.columns__4 {
		grid-template-columns:repeat(2, 1fr)
	}
}

@media (min-width:960px) {
	.columns-section .columns.columns__4 {
		grid-template-columns:repeat(4, 1fr)
	}
}

.columns-section .content {
	display:block;
	position:relative;
	width:100%;
	height:0;
	padding-bottom:100%
}

.columns-section .format__high .content {
	padding-bottom:118.75%
}

.columns-section .format__hightower .content {
	padding-bottom:150%
}

@media (max-width:767px) {
	.columns-section .format__high-sm .content {
		padding-bottom:118.75%
	}
}

@media (min-width:768px) {
	.columns-section .format_wide-md .content {
		padding-bottom:68.33425%
	}
}

.columns-section .grid-background {
	min-height:280px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover
}

.columns-section .grid-image {
	position:relative
}

.columns-section .grid-image .text {
	display:grid;
	position:absolute;
	z-index:1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:25px;
	align-items:center;
	justify-content:center;
	align-content:center;
	text-transform:uppercase;
	text-align:center;
	font-size:10px;
	color:#fff
}

.columns-section .grid-image .text.bottom {
	align-content:end
}

.columns-section .grid-image .text.top {
	align-content:start
}

.columns-section .grid-image .text.left {
	justify-content:left;
	text-align:left
}

.columns-section .grid-image .text.right {
	justify-content:right;
	text-align:right
}

@media (min-width:480px) {
	.columns-section .grid-image .text {
		font-size:12px
	}
}

@media (min-width:1280px) {
	.columns-section .grid-image .text {
		font-size:14px
	}
}

.columns-section .grid-image .text span {
	display:block;
	text-transform:uppercase;
	line-height:1
}

.columns-section .grid-image .text span.pre-title {
	margin:.2em 0;
	font-size:1.5em
}

.columns-section .grid-image .text span.title {
	margin:.2em 0;
	font-size:3em
}

.columns-section .grid-text {
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#f2f0ec;
	padding:40px
}

.columns-section .grid-text .text {
	text-align:center;
	color:#000
}

.columns-section .grid-text h4 {
	text-transform:uppercase;
	color:inherit
}

.columns-section .grid-products {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:5px
}

.columns-section .product {
	display:block;
	position:relative
}

@media (max-width:767px) {
	.columns-section .product:nth-child(n+3) {
		display:none
	}
}

.columns-section .product .product-inner {
	display:grid;
	position:relative;
	height:100%;
	padding:15px
}

@media (min-width:768px) {
	.columns-section .product .product-inner {
		padding:25px
	}
}

.columns-section .product .product-inner::before {
	display:block;
	content:"";
	position:absolute;
	z-index:1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:#000;
	opacity:.03
}

.columns-section .product .discount, .columns-section .product .labels {
	position:absolute;
	z-index:10;
	top:15px
}

@media (min-width:768px) {
	.columns-section .product .discount, .columns-section .product .labels {
		top:25px
	}
}

.columns-section .product .discount, .columns-section .product .labels li {
	padding:2px 8px;
	background-color:#000;
	border-radius:2px;
	line-height:16px;
	text-transform:uppercase;
	font-size:10px;
	color:#fff
}

.columns-section .product .labels {
	display:flex;
	gap:5px;
	flex-wrap:wrap;
	list-style:none;
	left:15px;
	margin:0 55px 0 0;
	padding:0
}

@media (min-width:768px) {
	.columns-section .product .labels {
		left:25px
	}
}

.columns-section .product .discount {
	right:15px
}

@media (min-width:768px) {
	.columns-section .product .discount {
		right:25px
	}
}

.columns-section .product .img {
	display:block;
	position:relative;
	margin-bottom:10px;
	z-index:0
}

.columns-section .product img {
	display:block;
	width:100%;
	max-width:200px;
	height:auto;
	margin:0 auto
}

.columns-section .product .details {
	position:relative;
	z-index:2;
	overflow:hidden
}

.columns-section .product .brand {
	display:block;
	margin-bottom:5px;
	text-transform:uppercase;
	font-weight:700;
	color:#000
}

.columns-section .product .title {
	display:block;
	margin-bottom:5px;
	color:#000;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis
}

.columns-section .product .product-stock-status {
	margin:8px 0
}

.columns-section .product .prices {
	display:flex;
	gap:2px 8px;
	align-items:end;
	flex-wrap:wrap
}

.columns-section .product .price {
	font-weight:700;
	color:#000
}

.columns-section .product .price-before {
	color:#000
}

.columns-section .product .wishlist-button {
	position:absolute;
	right:10px;
	bottom:10px;
	z-index:2
}