/*
 * Browsome Catalog UI — product card of the v2 grids (shop, category, brand, search, listing).
 * Numbers: docs/CATALOG-FIGMA-SPEC.md sections 2 and 7 (Figma 4658:43142 desktop, 4658:43977 mobile,
 * out of stock 4658:43151 / 4658:43980, UI-kit Label 779:9749, Button 3 432:2210).
 * The card is Elementor loop item 56108 (template data is not edited): every rule here beats the template's
 * own custom CSS by specificity and, where the template uses !important, by !important.
 * Loaded after browsome-catalog-ui.css on v2 pages only. Ops module (browsome-*, Mykhailo). 2026-10-15.
 */

.bp-v2 {
	/* UI-kit Label colours: change a badge in one line. */
	--bp-badge-bestseller-bg: #C7E03D;
	--bp-badge-bestseller-fg: #1F2270;
	--bp-badge-new-bg: #3F44B5;
	--bp-badge-new-fg: #fff;
	--bp-badge-sale-bg: #D85855;
	--bp-badge-sale-fg: #fff;
	--bp-badge-soon-bg: #D5D6F6;
	--bp-badge-soon-fg: #3F44B5;

	--bp-card-line: #E3E2EC;
	--bp-card-media-bg: #F8F8F8;
	--bp-card-title: #1A1B2E;
	--bp-card-muted: #777A96;
	--bp-card-price: #3F44B5;
	--bp-card-bar-bg: #ECEDFB;
	--bp-card-bar-fg: #1F2270;
	--bp-card-wash: rgba(248, 248, 248, .24);
	--bp-btn-border: #3F44B5;
	--bp-btn-text: #1F2270;
	--bp-btn-hover-fill: #3F44B5;
	--bp-btn-hover-text: #fff;
	--bp-btn-active-fill: #C7E03D;
	--bp-btn-active-text: #1A1B2E;
	--bp-btn-ring: #7E84E8;
	--bp-btn-disabled: #777A96;

	--bp-ico-bag: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.3332' height='17.3335' viewBox='0 0 17.3332 17.3335' fill='none'%3E%3Cg stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15.4803 9.09293C15.1884 6.59099 14.7617 4.71504 14.3661 3.38227C14.0417 2.28943 13.8794 1.74301 13.2142 1.24659C12.549 0.750173 11.8691 0.750173 10.5093 0.750173H5.99054C4.63071 0.750173 3.9508 0.750173 3.2856 1.24659C2.6204 1.74301 2.45819 2.28943 2.13377 3.38227C1.73812 4.71504 1.31149 6.59099 1.01951 9.09293C0.675392 12.0416 0.503333 13.5159 1.49767 14.633C2.492 15.7502 4.10342 15.7502 7.32626 15.7502H9.17359'/%3E%3Cpath d='M5.74991 4.08351C5.74991 5.46422 6.8692 6.58351 8.24991 6.58351C9.63062 6.58351 10.7499 5.46422 10.7499 4.08351'/%3E%3Cpath d='M11.5832 14.0835H16.5832M14.0832 16.5835V11.5835'/%3E%3C/g%3E%3C/svg%3E");
	--bp-ico-bell: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.5' height='17.3333' viewBox='0 0 16.5 17.3333' fill='none'%3E%3Cg stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.1667 13.6667C11.1667 15.2775 9.86083 16.5833 8.25 16.5833C6.63917 16.5833 5.33333 15.2775 5.33333 13.6667'/%3E%3Cpath d='M14.2759 13.6667H2.22406C1.40996 13.6667 0.75 13.0067 0.75 12.1926C0.75 11.8017 0.905302 11.4267 1.18174 11.1503L1.68443 10.6476C2.15327 10.1788 2.41667 9.54287 2.41667 8.87983V6.58333C2.41667 3.36167 5.02834 0.75 8.25 0.75C11.4717 0.75 14.0833 3.36167 14.0833 6.58333V8.87983C14.0833 9.54287 14.3467 10.1788 14.8156 10.6476L15.3183 11.1503C15.5947 11.4267 15.75 11.8017 15.75 12.1926C15.75 13.0067 15.09 13.6667 14.2759 13.6667Z'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------- card shell */

/* A grid item's automatic minimum width is its content: one long one-line text must never widen its column. */
.bp-v2 .elementor-widget-loop-grid .elementor-loop-container > .e-loop-item:has(.bp-card-media) {
	min-width: 0;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item > .e-con:has(> .bp-card-media) {
	display: flex;
	flex-direction: column;
	height: 100%;
	max-height: none;
	padding: 0;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--bp-card-line);
	border-radius: 24px;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media {
	position: relative;
	flex: 0 0 auto;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1 !important;
	padding: 0;
	overflow: hidden;
	background: var(--bp-card-media-bg);
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media > .e-con {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	overflow: hidden;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media .e-image-link-base {
	display: block;
	width: 100%;
	height: 100%;
}

/* The template's own image rule is height:354% (it shows the top of the photo and spills out of a short card).
   A one-line title must not change the image box: the box is the square, the photo covers it from the centre. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media img.e-image-base {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	border-radius: 0;
}

.bp-v2 .postsArchive .elementor-loop-container.elementor-grid {
	align-items: stretch;
}

/* The badge widget stays out of the layout; labels and the bar position against the image box. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media > .elementor-widget-shortcode {
	position: static;
	margin: 0;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media .elementor-shortcode,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media .elementor-widget-container {
	position: static;
}

/* No hover zoom on touch screens (the :hover state sticks after a tap). */
@media (hover: none) {
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media a:hover img {
		transform: none !important;
	}
}

/* ---------------------------------------------------------------- labels (UI-kit Label) */

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badges {
	position: absolute;
	top: 16px;
	right: 16px;
	left: 16px;
	z-index: 3;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 0;
	pointer-events: none;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	box-sizing: border-box;
	height: 24px;
	margin: 0;
	padding: 2px 8px;
	border-radius: 100px;
	font-family: Inter, sans-serif !important;
	font-size: 10px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: .4px;
	text-transform: uppercase;
	white-space: nowrap;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge--bestseller { background: var(--bp-badge-bestseller-bg); color: var(--bp-badge-bestseller-fg); }
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge--new { background: var(--bp-badge-new-bg); color: var(--bp-badge-new-fg); }
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge--sale { background: var(--bp-badge-sale-bg); color: var(--bp-badge-sale-fg); }
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge--soon { background: var(--bp-badge-soon-bg); color: var(--bp-badge-soon-fg); }

/* ---------------------------------------------------------------- out of stock */

.bp-v2 .elementor-widget-loop-grid .e-loop-item.outofstock .bp-card-media::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--bp-card-wash);
	pointer-events: none;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-oos-bar {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
	box-sizing: border-box;
	margin: 0;
	padding: 8px 16px;
	background: var(--bp-card-bar-bg);
	color: var(--bp-card-bar-fg);
	font-family: Inter, sans-serif !important;
	font-size: 12px;
	font-weight: 600;
	line-height: 20px;
	letter-spacing: 2px;
	text-align: center;
	text-transform: uppercase;
}

/* ---------------------------------------------------------------- info block */

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 8px;
	width: 100%;
	min-height: 0;
	max-width: 100%;
	max-height: none;
	height: auto;
	padding: 20px;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget {
	margin: 0;
	min-width: 0;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget > .elementor-widget-container {
	margin: 0;
	padding: 0;
}

/* Title: exactly two lines, the box keeps its height for one-line titles. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget-heading .elementor-heading-title {
	display: -webkit-box !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	box-sizing: border-box;
	height: 48px;
	min-height: 48px;
	max-height: 48px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	overflow-wrap: anywhere;
	font-family: Inter, sans-serif !important;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	text-overflow: ellipsis;
	color: var(--bp-card-title);
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget-heading .elementor-heading-title a {
	display: inline;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
}

/* The title keeps its ink colour on out-of-stock cards (the template greyed it, Figma does not). */
.bp-v2 .elementor-widget-loop-grid .e-loop-item.outofstock .bp-card-media + .e-con > .elementor-widget-heading .elementor-heading-title {
	color: var(--bp-card-title) !important;
}

@media (hover: hover) {
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget-heading:hover .elementor-heading-title {
		color: var(--bp-card-price) !important;
	}
}

/* Loyalty line: one line, ellipsis, number SemiBold in the same muted colour. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-points {
	width: 100%;
	height: 20px;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-points .elementor-shortcode {
	display: block;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-points {
	display: block;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	background: none !important;
	color: var(--bp-card-muted);
	font-family: Inter, sans-serif !important;
	font-size: 12px;
	font-weight: 400;
	line-height: 20px;
	letter-spacing: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-points strong,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-points .wlr-points-value {
	color: inherit;
	font-family: Inter, sans-serif !important;
	font-size: inherit;
	font-weight: 600;
}

/* One loyalty line per card: whatever WPLoyalty prints inside the add-to-cart form or the button is a duplicate. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .e-loop-add-to-cart-form .wlr-product-message,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .button .wlr-product-message {
	display: none !important;
}

/* ---------------------------------------------------------------- price + button row */

.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .e-con {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	height: auto;
	max-height: none;
	margin: auto 0 0;
	padding: 0;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost {
	order: 1;
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	white-space: nowrap;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price {
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-family: Inter, sans-serif !important;
	font-size: 16px;
	line-height: 24px;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price .amount,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price .amount bdi {
	font-family: Inter, sans-serif !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	white-space: nowrap;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price ins {
	background: none;
	text-decoration: none;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del .amount,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del .amount bdi {
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 20px !important;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item.outofstock .productPricePost .price .amount,
.bp-v2 .elementor-widget-loop-grid .e-loop-item.outofstock .productPricePost .price .amount bdi {
	color: var(--bp-card-muted) !important;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart {
	order: 2;
	flex: 0 0 auto;
	margin: 0 0 0 auto;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .elementor-widget-container,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form {
	display: block;
	margin: 0;
	padding: 0;
}

/* "View cart" after a successful add must not push the price (the template hides it too). */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .added_to_cart {
	display: none !important;
}

/* ---------------------------------------------------------------- Button 3 */

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	box-sizing: border-box;
	width: auto;
	height: 44px;
	min-width: 0;
	margin: 0;
	padding: 0 24px !important;
	border: 1px solid var(--bp-btn-border) !important;
	border-radius: 100px !important;
	background: transparent !important;
	background-image: none !important;
	color: var(--bp-btn-text) !important;
	font-family: Inter, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600;
	line-height: 20px;
	letter-spacing: .5px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: background-color .3s, color .3s, border-color .3s;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button::before,
.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button::after {
	content: none;
}

@media (hover: hover) {
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button:hover {
		background: var(--bp-btn-hover-fill) !important;
		color: var(--bp-btn-hover-text) !important;
	}
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button:active {
	background: var(--bp-btn-active-fill) !important;
	color: var(--bp-btn-active-text) !important;
}

/* The template filled the button on :focus, which sticks after a click; only the keyboard ring remains. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button:focus-visible {
	outline: 2px solid var(--bp-btn-ring);
	outline-offset: 2px;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button:focus:not(:focus-visible) {
	outline: 0;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button:is(.disabled, [aria-disabled="true"]) {
	border-color: var(--bp-btn-disabled) !important;
	background: transparent !important;
	color: var(--bp-btn-disabled) !important;
	pointer-events: none;
}

/* Adding: the label fades, a spinner takes its place, the box does not change size. */
.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button.loading {
	color: transparent !important;
	pointer-events: none;
}

.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button.loading::after {
	content: '';
	position: absolute;
	inset: 0;
	width: 18px;
	height: 18px;
	margin: auto;
	border: 2px solid var(--bp-btn-text);
	border-top-color: transparent;
	border-radius: 50%;
	background: none;
	font: 0/0 a;
	animation: bp-card-spin .7s linear infinite;
}

@keyframes bp-card-spin {
	to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button.loading::after {
		animation: none;
	}
}

/* ---------------------------------------------------------------- mobile card (Figma 4658:43977) */

@media (max-width: 767px) {
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badges {
		top: 12px;
		right: 12px;
		left: 12px;
		gap: 4px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-badge {
		height: 20px;
		padding: 2px 8px;
		font-size: 8px;
		line-height: 16px;
		letter-spacing: .32px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-oos-bar {
		padding: 4px 16px;
		font-size: 10px;
		line-height: 16px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con {
		gap: 4px;
		padding: 12px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .elementor-widget-heading .elementor-heading-title {
		height: 40px;
		min-height: 40px;
		max-height: 40px;
		font-size: 14px;
		line-height: 20px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-points {
		height: 16px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-points {
		font-size: 10px;
		line-height: 16px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .bp-card-media + .e-con > .e-con {
		flex-wrap: nowrap;
		margin-top: 4px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price {
		flex-direction: column-reverse !important;
		align-items: flex-start !important;
		font-size: 14px !important;
		line-height: 20px !important;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price .amount,
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price .amount bdi {
		font-size: 14px !important;
		line-height: 20px !important;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del,
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del .amount,
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .productPricePost .price del .amount bdi {
		margin: 0 !important;
		font-size: 10px !important;
		line-height: 16px !important;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button {
		width: 36px;
		min-width: 36px;
		height: 36px;
		padding: 0 !important;
		color: #1A1B2E !important;
		font-size: 0 !important;
		line-height: 0;
		letter-spacing: 0;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button::before {
		content: '';
		position: absolute;
		inset: 0;
		width: 20px;
		height: 20px;
		margin: auto;
		background-color: currentColor;
		-webkit-mask: var(--bp-ico-bag) center / 17.33px no-repeat;
		mask: var(--bp-ico-bag) center / 17.33px no-repeat;
	}

	/* 36 px circle as designed, 44 px tap target: the invisible ring belongs to the link. */
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button::after {
		content: '';
		position: absolute;
		inset: -4px;
	}

	.bp-v2 .elementor-widget-loop-grid .e-loop-item.outofstock .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button::before,
	.bp-v2 .elementor-widget-loop-grid .e-loop-item .elementor-widget-woocommerce-product-add-to-cart .e-loop-add-to-cart-form-container form.cart.e-loop-add-to-cart-form a.button.bp-notify-btn::before {
		-webkit-mask-image: var(--bp-ico-bell);
		mask-image: var(--bp-ico-bell);
	}
}


/*
 * Narrow desktop (1025–1365 px): three columns leave a card about 270–310 px wide, too narrow for "price | button" on one row
 * with the longest button labels (SL "Dodaj v košarico", HR "Dodaj u košaricu"); the Figma desktop frames start at 1440.
 * Two columns until 1365 keep the row in one piece; from 1366 the design's three columns apply.
 */
@media (min-width: 1025px) and (max-width: 1365px) {
	.bp-v2 .postsArchive .elementor-loop-container,
	.bp-v2 .postsArchive .elementor-grid {
		--grid-columns: 2;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
