/*
 * Better Business Reviews – compact and floating widget
 * Matches the palette and radii used in style.css.
 */

.brtpmj_compact{
	display: inline-block;
	max-width: 100%;
}

.brtpmj_compact_link{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	padding: 10px 14px;
	background: #ffffff;
	border: 1px solid rgba(0,0,0,.10);
	border-radius: 12px;
	box-shadow: 0 6px 18px rgba(0,0,0,.06);
	text-decoration: none;
	color: rgba(0,0,0,.86);
	line-height: 1.2;
	transition: box-shadow .18s ease, transform .18s ease;
}

.brtpmj_compact_link:hover,
.brtpmj_compact_link:focus-visible{
	box-shadow: 0 10px 24px rgba(0,0,0,.10);
	transform: translateY(-1px);
	text-decoration: none;
	color: rgba(0,0,0,.86);
}

.brtpmj_compact_logo{
	width: 26px;
	height: 26px;
	object-fit: contain;
	border-radius: 4px;
	flex: 0 0 auto;
}

.brtpmj_compact_score{
	font-weight: 700;
	font-size: 17px;
	flex: 0 0 auto;
}

.brtpmj_compact_stars{
	height: 20px;
	width: auto;
	flex: 0 0 auto;
}

.brtpmj_compact_count{
	font-size: 13px;
	color: rgba(0,0,0,.62);
	white-space: nowrap;
}

.brtpmj_compact_brand{
	font-size: 13px;
	font-weight: 600;
	color: #0b6b3a;
	white-space: nowrap;
}

/* Floating variant */
.brtpmj_compact--floating{
	position: fixed;
	bottom: 18px;
	z-index: 9000;
}

.brtpmj_compact--left{  left: 18px; }
.brtpmj_compact--right{ right: 18px; }

.brtpmj_compact--floating .brtpmj_compact_link{
	box-shadow: 0 12px 30px rgba(0,0,0,.16);
}

/* On small screens the floating widget drops the review count so it does not
   cover the page content. */
@media (max-width: 600px){
	.brtpmj_compact--floating{
		bottom: 12px;
	}

	.brtpmj_compact--left{  left: 12px; }
	.brtpmj_compact--right{ right: 12px; }

	.brtpmj_compact--floating .brtpmj_compact_count{
		display: none;
	}

	.brtpmj_compact--floating .brtpmj_compact_link{
		padding: 8px 11px;
		gap: 8px;
	}
}

@media (prefers-reduced-motion: reduce){
	.brtpmj_compact_link{
		transition: none;
	}

	.brtpmj_compact_link:hover,
	.brtpmj_compact_link:focus-visible{
		transform: none;
	}
}

/* Non-interactive variant used in the cart and at checkout, where the badge
   should reassure rather than offer a way out of the funnel. */
.brtpmj_compact_link--static{
	cursor: default;
}

.brtpmj_compact_link--static:hover{
	box-shadow: 0 6px 18px rgba(0,0,0,.06);
	transform: none;
}

/* Automatic placement inside the shop templates.
   Sits directly under the purchase buttons, so it matches their full width and
   stays on a single low row instead of stacking into a tall card. */
.brtpmj_compact--placement{
	display: block;
	width: 100%;
	/* Roomier below than above: the badge belongs with the buttons it sits
	   under, and needs clear air before the product description starts. */
	margin: 12px 0 24px;
}

.brtpmj_compact--placement .brtpmj_compact_link{
	display: flex;
	width: 100%;
	box-sizing: border-box;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
	padding: 7px 12px;
	border-radius: 10px;
}

.brtpmj_compact--placement .brtpmj_compact_score{
	font-size: 15px;
}

.brtpmj_compact--placement .brtpmj_compact_stars{
	height: 15px;
}

.brtpmj_compact--placement .brtpmj_compact_logo{
	width: 18px;
	height: 18px;
}

.brtpmj_compact--placement .brtpmj_compact_count,
.brtpmj_compact--placement .brtpmj_compact_brand{
	font-size: 12px;
	/* min-width lets a flex child shrink below its content width, so a cramped
	   row ellipsises instead of overflowing the card. */
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Narrow phones: drop the review count rather than let the row wrap. */
@media (max-width: 380px){
	.brtpmj_compact--placement .brtpmj_compact_count{
		display: none;
	}
}
