/* Bullmade cart/search integration for the Ride Style header */
#header .contentsticky_search .bm-search-trigger,
#header .contentsticky_cart .bm-cart-toggle,
#header .header-mobile .bm-search-trigger,
#header .header-mobile .bm-cart-toggle,
#header .header-mobile #_mobile_menutop {
	color: #fff;
}

#header .contentsticky_search .bm-search-trigger,
#header .header-mobile .bm-search-trigger {
	width: auto;
	padding: 0.25rem;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

#header .contentsticky_search .bm-search-trigger svg,
#header .contentsticky_cart .bm-cart-toggle svg,
#header .header-mobile .bm-search-trigger svg,
#header .header-mobile .bm-cart-toggle svg {
	color: #fff;
	fill: none;
	stroke: currentColor;
}

#header .contentsticky_search .bm-search-trigger svg,
#header .header-mobile .bm-search-trigger svg {
	fill: none;
}

/*
 * Ride Style gives every .blockcart a legacy 46px right margin. In the compact
 * desktop header that becomes empty space between the cart and currency picker.
 */
@media (min-width: 768px) {
	#header .header-top .contentsticky_cart .blockcart {
		margin-right: 16px;
	}
}

#header .header-mobile #_mobile_search,
#header .header-mobile #_mobile_cart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0 0 0 12px;
}

#header .header-mobile .mobile_logo {
	margin-right: auto;
}

#header .header-mobile .logo-mobile {
	width: 120px;
	max-width: 120px;
	height: auto;
}

#header .header-mobile #_mobile_search,
#header .header-mobile #_mobile_search_content,
#header .header-mobile #_mobile_search .bm-search-container {
	position: relative;
	width: 36px;
	height: 36px;
}

#header .header-mobile #_mobile_search_content {
	overflow: visible;
	background: transparent;
	border-radius: 0;
}

#header .header-mobile #_mobile_search .bm-search-trigger {
	position: static;
	top: auto;
	right: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 6px;
	transform: none;
}

#header .bm-search-trigger .bm-search-glyph {
	display: block;
	width: 24px;
	height: 24px;
	color: currentColor;
	fill: none;
}

/*
 * Ridestyle positions every button nested in a mobile header item absolutely.
 * Reset only buttons inside bm_search's modal so its controls and result tabs
 * keep the module's intended flex layout.
 */
#header .header-mobile #_mobile_search_content .bm-search-popover button {
	position: static;
	inset: auto;
	transform: none;
}

#header .header-mobile #_mobile_search_content .bm-search-popover {
	font-size: 14px;
}

#header .header-mobile #_mobile_search_content .bm-search-clear {
	width: auto;
	height: auto;
	font-size: 13px;
}

#header .header-mobile #_mobile_search_content .bm-search-close {
	width: 32px;
	height: 32px;
}

#header .header-mobile #_mobile_search_content .bm-search-tab {
	width: auto;
	height: auto;
	font-size: 12px;
}

#header .header-mobile #_mobile_search .bm-search-trigger svg {
	width: 24px;
	height: 24px;
	fill: none;
}

#header .header-mobile #_mobile_menutop {
	width: 36px;
	height: 36px;
	margin-left: 12px;
	flex: 0 0 36px;
	cursor: pointer;
}

#header .header-mobile #_mobile_cart_content,
#header .header-mobile #_mobile_cart_content .bm-cart-toggle-wrapper,
#header .header-mobile #_mobile_cart_content .blockcart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
}

#header .header-mobile #_mobile_cart_content .bm-cart-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 6px;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: #fff;
}

#header .header-mobile #_mobile_cart_content .bm-cart-icon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	line-height: 0;
}

#header .header-mobile #_mobile_search .bm-search-trigger svg,
#header .header-mobile #_mobile_cart_content .bm-cart-toggle svg,
#header .header-mobile #_mobile_menutop .mobile-menu-icon {
	display: block;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
}

#header .header-mobile #_mobile_menutop .mobile-menu-icon {
	color: #fff;
	fill: none;
	stroke: currentColor;
}

/* Keep non-carousel product cards compact on phones: always two per row. */
@media (max-width: 575.98px) {
	.products:not(.owl-carousel):not(.slick-slider) {
		display: flex;
		flex-wrap: wrap;
	}

	.products:not(.owl-carousel):not(.slick-slider) > .item {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%;
	}
}
