/*
 * Bean presentation tweaks on top of Flatsome.
 *
 * Moved out of the Flatsome theme options (Custom CSS, Tablet, Mobile) on 2026-10-17 so they live in version
 * control and load as a cached file. Flatsome theme options hold settings only, no code. The breakpoints are
 * Flatsome's own: tablet up to 849px, mobile up to 549px. CSS for markup the bean plugin prints (the product
 * filters) lives in the plugin, next to that markup.
 */

/* Hamburger menu title */
.header-nav-main .menu-title {
	text-transform: none !important;
}

/* Swatches */
.ux-swatch.disabled {
	cursor: default;
	opacity: 0.5;
}

.ux-swatches--small .ux-swatch--label,
.ux-swatch--label {
	font-size: 12px;
	padding: 5px 10px;
}

.ux-swatch--label.disabled {
	background: linear-gradient(to top left, transparent calc(50% - .031rem), #000, transparent calc(50% + .031rem));
	background-size: 40px 40px;
	background-repeat: no-repeat;
	background-position: center;
}

/* Mobile sidebar navigation */
.mobile-sidebar-levels-2 .nav-slide > li > .sub-menu > li:not(.nav-slide-header) > a,
.mobile-sidebar-levels-2 .nav-slide > li > ul.children > li:not(.nav-slide-header) > a {
	text-transform: none;
	color: rgb(0, 0, 0);
	padding-bottom: 8px;
	padding-top: 8px;
}

.mobile-sidebar-levels-2 .nav-slide > li > .sub-menu > li:not(.nav-slide-header),
.mobile-sidebar-levels-2 .nav-slide > li > ul.children > li:not(.nav-slide-header) {
	border-top: none !important;
}

/* Toggle icon */
.toggle i {
	font-size: 1.5em;
	transition: all 0.3s;
	color: #000;
}

.toggle {
	opacity: 1;
}

/* Off-canvas content */
.off-canvas-left .mfp-content,
.off-canvas-right .mfp-content {
	background-color: hsla(0, 0%, 100%, 1);
}

/* Navigation links */
.nav-column > li > a,
.nav-dropdown > li > a,
.nav-vertical-fly-out > li > a,
.nav > li > a {
	color: rgb(0, 0, 0);
	transition: all 0.2s;
}

/* Off-canvas vertical nav */
.off-canvas .nav-vertical > li > a {
	padding: 8px 0;
}

/* Sidebar navigation */
.nav-sidebar.nav-vertical > li + li {
	border-top: none !important;
}

/* Sidebar menu tabs */
.sidebar-menu-tabs {
	border-bottom: 1px solid #d3d3d3;
}

.sidebar-menu-tabs__tab,
.sidebar-menu-tabs__tab.active {
	background-color: #ffffff;
}

/* Product page: the description accordion is shown only on mobile */
#accordion-description {
	display: none;
}

/* Header icons: the SVGs from functions.php (flatsome_icon filter) replace Flatsome's icon font */
.bean-icon,
i[class^="icon-shopping"] {
	display: inline-block;
	line-height: 1;
	vertical-align: middle;
	position: relative;
	margin: 0;
	padding: 0;
	font-size: 0; /* hide the icon font character */
}

.bean-icon svg,
i[class^="icon-shopping"] svg {
	display: block;
	width: 20px;
	height: 20px;
}

i[class^="icon-shopping"]:before {
	display: none !important;
}

.stuck .bean-icon,
.stuck i[class^="icon-shopping"] {
	line-height: 1;
	vertical-align: middle;
}

.stuck .bean-icon svg,
.stuck i[class^="icon-shopping"] svg {
	width: 20px;
	height: 20px;
}

/* Cart badge position */
.bean-icon[data-icon-label]:after,
i[class^="icon-shopping"][data-icon-label]:after {
	right: -10px;
	top: -8px;
}

/* Tablet (Flatsome: up to 849px) */
@media (max-width: 849px) {
	.header-nav-main .menu-title {
		display: none;
	}
}

/* Mobile (Flatsome: up to 549px) */
@media (max-width: 549px) {
	.flickity-prev-next-button {
		opacity: 0.5;
		width: 36px;
	}

	#accordion-description {
		display: block !important;
	}

	.category-page-row {
		padding-top: 0px;
	}
}
