.bafe-widget{width:100%;box-sizing:border-box}.bafe-widget *{box-sizing:border-box}.bafe-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 28px}.bafe-tab{appearance:none;-webkit-appearance:none;border:1px solid #0D6C3C;border-radius:999px;background:#0D6C3C;color:#fff;cursor:pointer;font:inherit;font-weight:700;line-height:1;padding:14px 22px;transition:background-color .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}.bafe-hover-lift .bafe-tab:hover{transform:translateY(-2px)}.bafe-hover-scale .bafe-tab:hover{transform:scale(1.04)}.bafe-hover-none .bafe-tab:hover{transform:none}.bafe-tab:focus-visible{outline:3px solid rgba(13,108,60,.25);outline-offset:3px}.bafe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:24px;width:100%}.bafe-card{min-width:0}.bafe-card[hidden]{display:none!important}.bafe-stage{--bafe-position:50%;position:relative;width:100%;height:390px;overflow:hidden;border-radius:16px;background:#e9edf1;user-select:none;-webkit-user-select:none;touch-action:none;cursor:ew-resize;isolation:isolate}.bafe-img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;min-width:100%!important;object-fit:cover!important;object-position:center center!important;transform:none!important;scale:1!important;transition:none!important;animation:none!important;pointer-events:none!important;user-select:none!important;-webkit-user-drag:none!important}.bafe-after{z-index:1}.bafe-before{z-index:2;clip-path:inset(0 calc(100% - var(--bafe-position)) 0 0);-webkit-clip-path:inset(0 calc(100% - var(--bafe-position)) 0 0)}.bafe-divider{position:absolute;z-index:6;top:0;bottom:0;left:var(--bafe-position);width:2px;transform:translateX(-50%);background:#00d99a;box-shadow:0 0 10px rgba(0,217,154,.24);pointer-events:none}.bafe-stage.is-dragging .bafe-range{position:absolute;z-index:9;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.bafe-badge{position:absolute;z-index:7;top:16px;padding:7px 11px;border:1px solid transparent;border-radius:999px;font-size:10px;font-weight:800;line-height:1;letter-spacing:.11em;pointer-events:none;backdrop-filter:blur(5px);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.bafe-badge-before{left:16px;background:rgba(11,28,56,.8);color:#fff}.bafe-badge-after{right:16px;background:rgba(0,201,139,.14);border:1px solid rgba(0,217,154,.58);color:#00d99a}@media(max-width:767px){.bafe-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.bafe-tab{flex:0 0 auto;white-space:nowrap}.bafe-grid{grid-template-columns:1fr}.bafe-stage{height:290px}}

/* Final stable drag handle - no external icon library */
.bafe-handle {
	position: absolute !important;
	z-index: 20 !important;
	top: 50% !important;
	left: var(--bafe-position) !important;

	width: 46px !important;
	height: 46px !important;
	min-width: 46px !important;
	min-height: 46px !important;
	max-width: 46px !important;
	max-height: 46px !important;
	aspect-ratio: 1 / 1 !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	padding: 0 !important;
	margin: 0 !important;

	border: 2px solid #FFFFFF !important;
	border-radius: 50% !important;
	background: #0D6C3C !important;
	color: #FFFFFF !important;

	box-sizing: border-box !important;
	overflow: hidden !important;
	cursor: ew-resize !important;

	transform: translate(-50%, -50%) scale(1) !important;
	transform-origin: center center !important;

	box-shadow: 0 8px 22px rgba(11, 28, 56, .24) !important;

	transition:
		transform .18s ease,
		box-shadow .18s ease,
		background-color .18s ease,
		border-color .18s ease !important;
}

.bafe-handle:hover {
	transform: translate(-50%, -50%) scale(1.14) !important;
	box-shadow: 0 11px 30px rgba(11, 28, 56, .34) !important;
}

.bafe-stage.is-dragging .bafe-handle {
	transform: translate(-50%, -50%) scale(1.08) !important;
}

.bafe-handle:focus-visible {
	outline: 3px solid rgba(13, 108, 60, .28) !important;
	outline-offset: 3px !important;
}

.bafe-ascii-icon {
	position: static !important;
	z-index: 30 !important;

	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	color: #FFFFFF !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 18px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;

	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: none !important;
	user-select: none !important;
}

.bafe-ascii-left,
.bafe-ascii-right {
	display: inline-block !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: #FFFFFF !important;
	font: inherit !important;
	line-height: 1 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.bafe-ascii-left {
	margin-right: 1px !important;
}

.bafe-ascii-right {
	margin-left: 1px !important;
}

/* Responsive filter navigation: Buttons / Dropdown / Both */
.bafe-select-wrap{display:none;}

@media (min-width:1025px){
    .bafe-widget[data-filter-desktop="buttons"] .bafe-tabs{display:flex!important;}
    .bafe-widget[data-filter-desktop="buttons"] .bafe-select-wrap{display:none!important;}
    .bafe-widget[data-filter-desktop="dropdown"] .bafe-tabs{display:none!important;}
    .bafe-widget[data-filter-desktop="dropdown"] .bafe-select-wrap{display:block!important;}
    .bafe-widget[data-filter-desktop="both"] .bafe-tabs{display:flex!important;}
    .bafe-widget[data-filter-desktop="both"] .bafe-select-wrap{display:block!important;}
}

@media (min-width:768px) and (max-width:1024px){
    .bafe-widget[data-filter-tablet="buttons"] .bafe-tabs{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;}
    .bafe-widget[data-filter-tablet="buttons"] .bafe-select-wrap{display:none!important;}
    .bafe-widget[data-filter-tablet="dropdown"] .bafe-tabs{display:none!important;}
    .bafe-widget[data-filter-tablet="dropdown"] .bafe-select-wrap{display:block!important;}
    .bafe-widget[data-filter-tablet="both"] .bafe-tabs{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;}
    .bafe-widget[data-filter-tablet="both"] .bafe-select-wrap{display:block!important;}
}

@media (max-width:767px){
    .bafe-widget[data-filter-mobile="buttons"] .bafe-tabs{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;padding-bottom:0!important;}
    .bafe-widget[data-filter-mobile="buttons"] .bafe-select-wrap{display:none!important;}
    .bafe-widget[data-filter-mobile="dropdown"] .bafe-tabs{display:none!important;}
    .bafe-widget[data-filter-mobile="dropdown"] .bafe-select-wrap{display:block!important;}
    .bafe-widget[data-filter-mobile="both"] .bafe-tabs{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;padding-bottom:0!important;}
    .bafe-widget[data-filter-mobile="both"] .bafe-select-wrap{display:block!important;}
}

/* Mobile/tablet responsive layout hardening */
.bafe-widget,
.bafe-grid,
.bafe-card,
.bafe-stage,
.bafe-select-wrap,
.bafe-select {
	max-width: 100% !important;
}

.bafe-widget {
	width: 100% !important;
	min-width: 0 !important;
	overflow-x: hidden !important;
}

.bafe-grid {
	width: 100% !important;
	min-width: 0 !important;
}

.bafe-card {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	overflow: hidden !important;
}

.bafe-stage {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

.bafe-img {
	width: 100% !important;
	height: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

.bafe-select-wrap {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

.bafe-select {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
	.bafe-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		width: 100% !important;
	}

	.bafe-card,
	.bafe-stage {
		width: 100% !important;
		max-width: 100% !important;
	}

	.bafe-stage {
		height: 320px;
	}
}

@media (max-width: 767px) {
	.bafe-widget {
		width: 100% !important;
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.bafe-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		width: 100% !important;
		max-width: 100% !important;
		column-gap: 0 !important;
		row-gap: 16px !important;
	}

	.bafe-card {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	.bafe-stage {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		height: clamp(220px, 62vw, 320px) !important;
	}

	.bafe-img {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		height: 100% !important;
		object-fit: cover !important;
	}

	.bafe-select-wrap {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.bafe-select {
		width: 100% !important;
		max-width: 100% !important;
	}

	.bafe-tabs {
		max-width: 100% !important;
	}

	.bafe-handle {
		width: 42px !important;
		height: 42px !important;
		min-width: 42px !important;
		min-height: 42px !important;
		max-width: 42px !important;
		max-height: 42px !important;
	}
}

/* Prevent Elementor responsive width controls from overflowing the dropdown */
.bafe-select-wrap,
.bafe-select {
	box-sizing: border-box !important;
	max-width: 100% !important;
}

@media (max-width: 1024px) {
	.bafe-widget .bafe-select-wrap {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.bafe-widget .bafe-select {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}
}

/* Default space between filter navigation and gallery */
.bafe-tabs,
.bafe-select-wrap {
	margin-bottom: 24px;
}

@media (max-width: 1024px) {
	.bafe-tabs,
	.bafe-select-wrap {
		margin-bottom: 20px;
	}
}

@media (max-width: 767px) {
	.bafe-tabs,
	.bafe-select-wrap {
		margin-bottom: 16px;
	}
}


@media (prefers-reduced-motion: reduce) {
	.bafe-tab,
	.bafe-handle {
		transition: none !important;
	}
}
