/* BV Listing Badge */

.bv-listing-badge {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	width: fit-content;
	min-height: 21px;
	padding: 5px 12px 5px 50px;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
	transition:
		background-color .18s ease,
		border-color .18s ease,
		color .18s ease,
		transform .18s ease,
		box-shadow .18s ease;
}

.bv-listing-badge::before {
	position: absolute;
	inset: 0 auto 0 0;
	z-index: 0;
	display: block;
	width: 42px;
	border-radius: 9px 0 0 9px;
	content: "";
	transition: background-color .18s ease;
}

.bv-listing-badge::after {
	position: absolute;
	inset: 0 auto 0 0;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 100%;
	border: 0;
	background: transparent;
	box-shadow: none;
	font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", "Font Awesome 5 Free";
	font-size: 15px;
	font-style: normal;
	font-variant: normal;
	font-weight: 900;
	line-height: 1;
	text-rendering: auto;
	transform: none;
	transition: color .18s ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.bv-listing-badge[href] {
	cursor: pointer;
}

.bv-listing-badge:hover {
	transform: translateY(-1px);
	text-decoration: none;
}

.bv-listing-badge:hover::after {
	transform: none;
}

.bv-listing-badge:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-1, #C99A3A);
	outline-offset: 3px;
}

/* Standard */
.bv-listing-badge--standard {
	background: var(
		--wp--preset--color--package-standard-bg,
		var(--wp--preset--color--accent-9, #F2F4F7)
	);
	border-color: var(
		--wp--preset--color--package-standard-border,
		var(--wp--preset--color--accent-10, #E7E9EE)
	);
	color: var(--wp--preset--color--contrast, #061B33);
	box-shadow: 0 8px 20px rgba(6, 27, 51, .045);
}

.bv-listing-badge--standard::before {
	background: var(
		--wp--preset--color--package-standard-border,
		var(--wp--preset--color--accent-10, #E7E9EE)
	);
}

.bv-listing-badge--standard::after {
	content: "\f058"; /* fa-circle-check */
	color: var(--wp--preset--color--contrast, #061B33);
	font-size: 21px;
}

/* Featured */
.bv-listing-badge--featured {
	background: var(
		--wp--preset--color--package-featured-bg,
		color-mix(in srgb, var(--wp--preset--color--accent-1, #C99A3A) 8%, var(--wp--preset--color--base, #fff))
	);
	border-color: var(
		--wp--preset--color--package-featured-border,
		color-mix(in srgb, var(--wp--preset--color--accent-1, #C99A3A) 38%, var(--wp--preset--color--base, #fff))
	);
	color: var(--wp--preset--color--contrast, #061B33);
	box-shadow: 0 8px 20px color-mix(
		in srgb,
		var(--wp--preset--color--accent-1, #C99A3A) 10%,
		transparent
	);
}

.bv-listing-badge--featured::before {
	background: var(--wp--preset--color--accent-1, #C99A3A);
}

.bv-listing-badge--featured::after {
	content: "\f005"; /* fa-star */
	color: var(--wp--preset--color--contrast, #061B33);
	font-size: 19px;
}

/* Premium */
.bv-listing-badge--premium {
	background: var(
		--wp--preset--color--package-premium-bg,
		color-mix(in srgb, var(--wp--preset--color--contrast, #061B33) 8%, var(--wp--preset--color--accent-5, #F6F3EE))
	);
	border-color: var(
		--wp--preset--color--package-premium-border,
		color-mix(in srgb, var(--wp--preset--color--contrast, #061B33) 38%, var(--wp--preset--color--accent-10, #E7E9EE))
	);
	color: var(--wp--preset--color--contrast, #061B33);
	box-shadow: 0 8px 22px rgba(6, 27, 51, .06);
}

.bv-listing-badge--premium::before {
	background: var(
		--wp--preset--color--package-premium-border,
		color-mix(in srgb, var(--wp--preset--color--contrast, #061B33) 38%, var(--wp--preset--color--accent-10, #E7E9EE))
	);
}

.bv-listing-badge--premium::after {
	content: "\f3a5"; /* fa-gem */
	color: var(--wp--preset--color--contrast, #061B33);
	font-size: 21px;
}

/* Hover */
.bv-listing-badge--standard:hover {
	background: color-mix(
		in srgb,
		var(--wp--preset--color--package-standard-bg, #F2F4F7) 78%,
		var(--wp--preset--color--base, #fff)
	);
	border-color: var(--wp--preset--color--contrast, #061B33);
	box-shadow: 0 10px 24px rgba(6, 27, 51, .10);
}

.bv-listing-badge--standard:hover::before {
	background: var(--wp--preset--color--contrast, #061B33);
}

.bv-listing-badge--standard:hover::after {
	color: var(--wp--preset--color--base, #fff);
}

.bv-listing-badge--featured:hover {
	background: color-mix(
		in srgb,
		var(--wp--preset--color--package-featured-bg, #F6F3EE) 74%,
		var(--wp--preset--color--base, #fff)
	);
	border-color: var(--wp--preset--color--accent-1, #C99A3A);
	box-shadow: 0 10px 24px color-mix(
		in srgb,
		var(--wp--preset--color--accent-1, #C99A3A) 18%,
		transparent
	);
}

.bv-listing-badge--featured:hover::after {
	color: var(--wp--preset--color--base, #fff);
}

.bv-listing-badge--premium:hover {
	background: color-mix(
		in srgb,
		var(--wp--preset--color--package-premium-bg, #F6F3EE) 82%,
		var(--wp--preset--color--base, #fff)
	);
	border-color: var(
		--wp--preset--color--package-premium-border,
		color-mix(in srgb, var(--wp--preset--color--contrast, #061B33) 38%, var(--wp--preset--color--accent-10, #E7E9EE))
	);
	box-shadow: 0 10px 24px rgba(6, 27, 51, .10);
}

.bv-listing-badge--premium:hover::before {
	background: color-mix(
		in srgb,
		var(--wp--preset--color--package-premium-border, #A8ADB7) 82%,
		var(--wp--preset--color--contrast, #061B33)
	);
}

.bv-listing-badge--premium:hover::after {
	color: var(--wp--preset--color--base, #fff);
}