
/* =========================================================
   PBE Ratings Version 10
   Free = white / light
   Pro = blue / premium
   Elite = gold / branded
   Pending = restrained placeholder
========================================================= */

.pbe-directory-rating{
	--pbe-navy:#071b2f;
	--pbe-blue:#168bc8;
	--pbe-cyan:#5cc8f3;
	--pbe-gold:#e9b84d;
	--pbe-gold-hi:#ffd879;
	display:grid;
	grid-template-columns:minmax(155px,.82fr) minmax(245px,1.45fr) minmax(150px,.78fr);
	align-items:stretch;
	width:100%;
	box-sizing:border-box;
	margin:14px 0 16px;
	border-radius:16px;
	overflow:hidden;
	font-family:inherit;
	color:#fff;
	text-decoration:none!important;
	cursor:default;
	position:relative;
}
.pbe-directory-rating__zone{
	position:relative;
	z-index:1;
	display:flex;
	align-items:center;
	justify-content:center;
	box-sizing:border-box;
	padding:15px 17px;
	min-width:0;
}
.pbe-directory-rating__brand{
	justify-content:flex-start;
	gap:11px;
}
.pbe-directory-rating__seal{
	display:grid;
	place-items:center;
	width:34px;
	height:34px;
	flex:0 0 34px;
	position:relative;
	overflow:visible;
	isolation:isolate;
	border-radius:50%;
	font-size:17px;
	font-weight:900;
}
.pbe-directory-rating__brandcopy{
	display:block;
	min-width:0;
}
.pbe-directory-rating__brandcopy small,
.pbe-directory-rating__brandcopy strong,
.pbe-directory-rating__brandcopy em{
	display:block;
}
.pbe-directory-rating__brandcopy small{
	margin-bottom:4px;
	font-size:9.5px;
	line-height:1.15;
	font-weight:900;
	letter-spacing:.11em;
	white-space:nowrap;
}
.pbe-directory-rating__brandcopy strong{
	font-size:12px;
	line-height:1.15;
	font-weight:900;
	letter-spacing:.06em;
	white-space:nowrap;
}
.pbe-directory-rating__brandcopy em{
	font-style:normal;
	font-size:10px;
	line-height:1.15;
	font-weight:800;
	letter-spacing:.08em;
	white-space:nowrap;
}
.pbe-directory-rating__main{
	flex-direction:column;
	gap:5px;
	align-items:flex-end;
	justify-content:center;
	text-align:right;
	padding-right:26px;
}
.pbe-directory-rating__scoreline{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:10px;
	width:100%;
}
.pbe-directory-rating__score{
	font-size:26px;
	line-height:1;
	font-weight:950;
	letter-spacing:-.045em;
	white-space:nowrap;
}
.pbe-directory-rating__stars{
	--pbe-fill:100%;
	position:relative;
	display:inline-block;
	font-size:21px;
	line-height:1;
	letter-spacing:1.8px;
	white-space:nowrap;
}
.pbe-directory-rating__stars-base{ color:#375168; }
.pbe-directory-rating__stars-fill{
	position:absolute;
	inset:0 auto 0 0;
	width:var(--pbe-fill);
	overflow:hidden;
	white-space:nowrap;
}
.pbe-directory-rating__label{
	font-size:11px;
	line-height:1.1;
	font-weight:950;
	letter-spacing:.15em;
	white-space:nowrap;
	text-align:right;
}
.pbe-directory-rating__proof{
	flex-direction:column;
	gap:1px;
	text-align:center;
}
.pbe-directory-rating__proof strong{
	display:block;
	font-size:19px;
	line-height:1;
	font-weight:950;
	letter-spacing:-.02em;
}
.pbe-directory-rating__proof span{
	display:block;
	margin-top:3px;
	font-size:9px;
	line-height:1.1;
	font-weight:900;
	letter-spacing:.105em;
	white-space:nowrap;
}
.pbe-directory-rating__proof small{
	display:block;
	margin-top:5px;
	font-size:9px;
	line-height:1.1;
	font-weight:800;
	white-space:nowrap;
}

/* =========================================================
   PRO (blue) — the current premium verified look
========================================================= */
.pbe-directory-rating--pro{
	border:1px solid rgba(225,180,79,.42);
	background:
		radial-gradient(circle at 15% 50%,rgba(44,164,219,.12),transparent 28%),
		linear-gradient(135deg,#071b2f,#0a243d 52%,#081d31);
	box-shadow:
		0 0 0 1px rgba(233,184,77,.14),
		0 0 26px rgba(233,184,77,.10),
		0 10px 24px rgba(3,20,36,.18),
		inset 0 1px 0 rgba(255,255,255,.06);
}
.pbe-directory-rating--pro:before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:
		linear-gradient(90deg,transparent 0 10%,rgba(233,184,77,.00) 20%,rgba(233,184,77,.14) 50%,rgba(233,184,77,.00) 80%,transparent 100%),
		linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.028) 50%,transparent 58%);
}
.pbe-directory-rating--pro:after{
	content:"";
	position:absolute;
	inset:7px;
	border-radius:10px;
	pointer-events:none;
	border:1px solid rgba(233,184,77,.18);
	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.025),
		0 0 18px rgba(233,184,77,.06);
}
.pbe-directory-rating--pro .pbe-directory-rating__brand{
	border-right:0;
}
.pbe-directory-rating--pro .pbe-directory-rating__proof{
	border-left:1px solid rgba(255,255,255,.08);
}
.pbe-directory-rating--pro .pbe-directory-rating__seal{
	border:1px solid rgba(233,184,77,.55);
	background:
		radial-gradient(circle at 35% 30%,rgba(255,255,255,.12),transparent 42%),
		linear-gradient(145deg,rgba(233,184,77,.20),rgba(233,184,77,.06));
	color:var(--pbe-gold-hi);
	box-shadow:
		0 0 0 4px rgba(233,184,77,.045),
		inset 0 1px 0 rgba(255,255,255,.08);
	animation:pbeSealGlow 3.6s ease-in-out infinite;
}
.pbe-directory-rating--pro .pbe-directory-rating__seal:before{
	content:"";
	position:absolute;
	inset:-6px;
	border-radius:50%;
	border:1px solid rgba(233,184,77,.26);
	box-shadow:0 0 12px rgba(233,184,77,.12);
	opacity:.8;
	animation:pbeSealPulse 2.8s ease-in-out infinite;
}
.pbe-directory-rating--pro .pbe-directory-rating__seal:after{
	content:"";
	position:absolute;
	left:50%;
	top:50%;
	width:7px;
	height:7px;
	margin:-3.5px 0 0 -3.5px;
	border-radius:50%;
	background:radial-gradient(circle,rgba(255,248,210,.96) 0%,rgba(255,216,121,.98) 55%,rgba(233,184,77,.98) 100%);
	box-shadow:
		0 0 10px rgba(255,216,121,.65),
		0 0 18px rgba(233,184,77,.32);
	transform-origin:0 0;
	animation:pbeSealOrbit 4.8s linear infinite;
	z-index:2;
}
.pbe-directory-rating--pro .pbe-directory-rating__brandcopy small{ color:#91adbf; }
.pbe-directory-rating--pro .pbe-directory-rating__brandcopy strong{ color:#f7fbff; }
.pbe-directory-rating--pro .pbe-directory-rating__score{ color:#fff; text-shadow:0 2px 10px rgba(0,0,0,.18); }
.pbe-directory-rating--pro .pbe-directory-rating__stars-base{ color:#375168; }
.pbe-directory-rating--pro .pbe-directory-rating__stars-fill{
	color:var(--pbe-gold);
	text-shadow:0 1px 0 #8a6417, 0 0 9px rgba(233,184,77,.17);
}
.pbe-directory-rating--pro .pbe-directory-rating__label{ color:var(--pbe-cyan); }
.pbe-directory-rating--pro .pbe-directory-rating__proof strong{ color:#fff; }
.pbe-directory-rating--pro .pbe-directory-rating__proof span{ color:#b9cedc; }
.pbe-directory-rating--pro .pbe-directory-rating__proof small{ color:#6fbbe0; }

/* =========================================================
   FREE (white / light)
========================================================= */
.pbe-directory-rating--free{
	border:1px solid rgba(12,59,92,.12);
	background:
		linear-gradient(180deg,#ffffff,#f4f8fb);
	box-shadow:
		0 8px 20px rgba(9,31,48,.07),
		inset 0 1px 0 rgba(255,255,255,.85);
	color:#07233a;
}
.pbe-directory-rating--free .pbe-directory-rating__brand{
	border-right:0;
}
.pbe-directory-rating--free .pbe-directory-rating__proof{
	border-left:1px solid rgba(10,47,73,.08);
}
.pbe-directory-rating--free .pbe-directory-rating__seal{
	border:1px solid rgba(17,102,153,.16);
	background:linear-gradient(145deg,#ffffff,#eef5fa);
	color:#1d83bf;
	box-shadow:0 3px 10px rgba(12,72,108,.08);
}
.pbe-directory-rating--free .pbe-directory-rating__brandcopy small{ color:#618198; }
.pbe-directory-rating--free .pbe-directory-rating__brandcopy strong{ color:#0c2e46; }
.pbe-directory-rating--free .pbe-directory-rating__score{ color:#0b2840; }
.pbe-directory-rating--free .pbe-directory-rating__stars-base{ color:#d7e0e7; }
.pbe-directory-rating--free .pbe-directory-rating__stars-fill{ color:#d8aa43; text-shadow:none; }
.pbe-directory-rating--free .pbe-directory-rating__label{ color:#2f89bc; }
.pbe-directory-rating--free .pbe-directory-rating__proof strong{ color:#10314b; }
.pbe-directory-rating--free .pbe-directory-rating__proof span{ color:#6b8496; }
.pbe-directory-rating--free .pbe-directory-rating__proof small{ color:#4d92b8; }

/* =========================================================
   ELITE (gold flagship / branded)
========================================================= */
.pbe-directory-rating--elitebrand{
	border:1px solid rgba(255,220,140,.52);
	background:
		radial-gradient(circle at 10% 76%,rgba(255,199,88,.18),transparent 26%),
		radial-gradient(circle at 50% 10%,rgba(255,214,116,.10),transparent 18%),
		linear-gradient(135deg,#060a12,#0c1522 55%,#050a12);
	box-shadow:
		0 0 0 1px rgba(255,217,121,.22),
		0 0 38px rgba(233,184,77,.18),
		0 14px 34px rgba(3,12,24,.28),
		inset 0 1px 0 rgba(255,255,255,.05);
}
.pbe-directory-rating--elitebrand:before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:
		linear-gradient(90deg,transparent 0 8%,rgba(255,216,121,.00) 18%,rgba(255,216,121,.18) 50%,rgba(255,216,121,.00) 82%,transparent 100%),
		linear-gradient(115deg,transparent 0 40%,rgba(255,255,255,.03) 50%,transparent 60%);
}
.pbe-directory-rating--elitebrand:after{
	content:"";
	position:absolute;
	inset:7px;
	border-radius:10px;
	pointer-events:none;
	border:1px solid rgba(255,216,121,.22);
	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.018),
		0 0 22px rgba(255,216,121,.08);
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__brand{
	border-right:1px solid rgba(255,221,143,.12);
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__proof{
	border-left:1px solid rgba(255,221,143,.12);
}
.pbe-directory-rating__brand--elite{
	justify-content:flex-start;
	gap:14px;
}
.pbe-directory-rating__seal--elite{
	border:2px solid rgba(255,221,143,.88);
	background:
		radial-gradient(circle at 35% 30%,rgba(255,255,255,.14),transparent 45%),
		linear-gradient(145deg,#0b1018,#0f1624 52%,#070b12);
	color:#ffde88;
	box-shadow:
		0 0 0 6px rgba(233,184,77,.055),
		0 0 18px rgba(255,216,121,.18),
		inset 0 1px 0 rgba(255,255,255,.08);
	animation:pbeEliteSealGlow 3.8s ease-in-out infinite;
}
.pbe-directory-rating__seal--elite:before{
	content:"";
	position:absolute;
	inset:-8px;
	border-radius:50%;
	border:2px solid rgba(255,216,121,.22);
	box-shadow:0 0 16px rgba(255,216,121,.12);
	animation:pbeEliteSealPulse 3s ease-in-out infinite;
}
.pbe-directory-rating__seal--elite:after{
	content:"";
	position:absolute;
	left:50%;
	top:50%;
	width:8px;
	height:8px;
	margin:-4px 0 0 -4px;
	border-radius:50%;
	background:radial-gradient(circle,rgba(255,249,220,1) 0%,rgba(255,224,130,1) 55%,rgba(233,184,77,1) 100%);
	box-shadow:
		0 0 12px rgba(255,224,130,.72),
		0 0 24px rgba(233,184,77,.40);
	transform-origin:0 0;
	animation:pbeEliteSealOrbit 5.3s linear infinite;
}
.pbe-directory-rating__brandcopy--elite small{
	color:#d7bd79;
	font-size:11px;
}
.pbe-directory-rating__brandcopy--elite strong{
	color:#f8d98e;
	font-size:20px;
	letter-spacing:.03em;
	line-height:1.05;
}
.pbe-directory-rating__brandcopy--elite em{
	margin-top:4px;
	color:#e8c979;
	font-size:10px;
	letter-spacing:.16em;
}
.pbe-directory-rating__main--elite{
	align-items:center;
	text-align:center;
	padding-right:0;
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__score{
	color:#ffe29b;
	font-size:30px;
	text-shadow:0 0 14px rgba(255,216,121,.14);
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__stars-base{
	color:#3d2f18;
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__stars-fill{
	color:#f3c55a;
	text-shadow:0 1px 0 #8a6417, 0 0 12px rgba(255,216,121,.22);
}
.pbe-directory-rating--elitebrand .pbe-directory-rating__label{
	color:#f3d58d;
	font-size:12px;
	letter-spacing:.20em;
	text-align:center;
}
.pbe-directory-rating__proof--elite strong{ color:#ffe09a; }
.pbe-directory-rating__proof--elite span{ color:#e8c97e; }
.pbe-directory-rating__proof--elite small{ color:#d8bb73; }

/* =========================================================
   PENDING / NOT-YET-RATED
========================================================= */
.pbe-directory-rating--pending{
	border:1px solid rgba(116,151,176,.22);
	background:
		radial-gradient(circle at 15% 50%,rgba(44,164,219,.07),transparent 28%),
		linear-gradient(135deg,#081a2c,#0a2239 52%,#081a2c);
	box-shadow:
		0 0 0 1px rgba(98,145,174,.06),
		0 8px 20px rgba(3,20,36,.12),
		inset 0 1px 0 rgba(255,255,255,.04);
}
.pbe-directory-rating--pending:before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.018) 50%,transparent 58%);
}
.pbe-directory-rating--pending:after{
	content:"";
	position:absolute;
	inset:7px;
	border-radius:10px;
	pointer-events:none;
	border:1px solid rgba(112,157,184,.10);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.015);
}
.pbe-directory-rating--pending .pbe-directory-rating__proof{
	border-left:1px solid rgba(255,255,255,.08);
}
.pbe-directory-rating__seal--pending{
	font-size:8px;
	letter-spacing:.04em;
	color:#9bc5db;
	border:1px solid rgba(107,178,211,.28);
	background:
		radial-gradient(circle at 35% 30%,rgba(255,255,255,.07),transparent 42%),
		linear-gradient(145deg,rgba(65,154,196,.12),rgba(65,154,196,.03));
	box-shadow:
		0 0 0 4px rgba(65,154,196,.025),
		inset 0 1px 0 rgba(255,255,255,.05);
}
.pbe-directory-rating__main--pending{
	align-items:center;
	justify-content:center;
	text-align:center;
	padding-right:17px;
}
.pbe-directory-rating__pending-title{
	display:block;
	color:#d7e8f2;
	font-size:14px;
	line-height:1.1;
	font-weight:950;
	letter-spacing:.11em;
	white-space:nowrap;
}
.pbe-directory-rating__pending-copy{
	display:block;
	margin-top:4px;
	max-width:360px;
	color:#829eaf;
	font-size:9px;
	line-height:1.35;
	font-weight:700;
}
.pbe-directory-rating__proof--pending strong{ color:#7392a6; }
.pbe-directory-rating__proof--pending span{ color:#a2bac8; }
.pbe-directory-rating__proof--pending small{ color:#6c9ab1; }



/* Version 11: Free businesses remain WHITE even when rating is pending. */
.pbe-directory-rating--free-pending .pbe-directory-rating__main--pending{
	align-items:center;
	justify-content:center;
	text-align:center;
	padding-right:17px;
}
.pbe-directory-rating--free-pending .pbe-directory-rating__pending-title{
	color:#16344a;
}
.pbe-directory-rating--free-pending .pbe-directory-rating__pending-copy{
	color:#70899a;
}
.pbe-directory-rating--free-pending .pbe-directory-rating__proof--pending strong{
	color:#6f8798;
}
.pbe-directory-rating--free-pending .pbe-directory-rating__proof--pending span{
	color:#6b8496;
}
.pbe-directory-rating--free-pending .pbe-directory-rating__proof--pending small{
	color:#4d92b8;
}

/* OneCall Elite can be gold even while its actual rating is still pending. */
.pbe-directory-rating__pending-title--elite{
	color:#f7d98c!important;
	font-size:13px;
	letter-spacing:.12em;
}
.pbe-directory-rating__pending-copy--elite{
	color:#c5a963!important;
}
.pbe-directory-rating--elite-pending .pbe-directory-rating__proof--pending strong{
	color:#ffe09a;
	font-size:15px;
	letter-spacing:.08em;
}
.pbe-directory-rating--elite-pending .pbe-directory-rating__proof--pending span{
	color:#e8c97e;
}
.pbe-directory-rating--elite-pending .pbe-directory-rating__proof--pending small{
	color:#d8bb73;
}

/* Individual business profile placement. */
.pbe-directory-rating--profile{
	margin:18px 0 22px;
}

/* =========================================================
   ANIMATION
========================================================= */
@keyframes pbeSealGlow{
	0%,100%{
		box-shadow:
			0 0 0 4px rgba(233,184,77,.045),
			0 0 0 rgba(233,184,77,0),
			inset 0 1px 0 rgba(255,255,255,.08);
	}
	50%{
		box-shadow:
			0 0 0 5px rgba(233,184,77,.07),
			0 0 14px rgba(233,184,77,.16),
			inset 0 1px 0 rgba(255,255,255,.10);
	}
}
@keyframes pbeSealPulse{
	0%,100%{ transform:scale(.96); opacity:.45; }
	50%{ transform:scale(1.08); opacity:.92; }
}
@keyframes pbeSealOrbit{
	0%{ transform:rotate(0deg) translateX(23px) rotate(0deg); opacity:.85; }
	50%{ opacity:1; }
	100%{ transform:rotate(360deg) translateX(23px) rotate(-360deg); opacity:.85; }
}
@keyframes pbeEliteSealGlow{
	0%,100%{
		box-shadow:
			0 0 0 6px rgba(233,184,77,.055),
			0 0 18px rgba(255,216,121,.18),
			inset 0 1px 0 rgba(255,255,255,.08);
	}
	50%{
		box-shadow:
			0 0 0 7px rgba(233,184,77,.08),
			0 0 22px rgba(255,216,121,.28),
			0 0 36px rgba(233,184,77,.18),
			inset 0 1px 0 rgba(255,255,255,.10);
	}
}
@keyframes pbeEliteSealPulse{
	0%,100%{ transform:scale(.95); opacity:.42; }
	50%{ transform:scale(1.10); opacity:.98; }
}
@keyframes pbeEliteSealOrbit{
	0%{ transform:rotate(0deg) translateX(25px) rotate(0deg); opacity:.92; }
	50%{ opacity:1; }
	100%{ transform:rotate(360deg) translateX(25px) rotate(-360deg); opacity:.92; }
}

/* =========================================================
   Compact search cards
========================================================= */
.pbe-dir3-card__body .pbe-directory-rating{
	grid-template-columns:1fr;
	margin:10px 0 0;
	border-radius:12px;
}
.pbe-dir3-card__body .pbe-directory-rating__brand,
.pbe-dir3-card__body .pbe-directory-rating__proof{
	display:none;
}
.pbe-dir3-card__body .pbe-directory-rating__main,
.pbe-dir3-card__body .pbe-directory-rating__main--pending,
.pbe-dir3-card__body .pbe-directory-rating__main--elite{
	padding:10px 8px;
	align-items:center;
	text-align:center;
	justify-content:center;
}
.pbe-dir3-card__body .pbe-directory-rating__scoreline{
	justify-content:center;
}
.pbe-dir3-card__body .pbe-directory-rating__score{
	font-size:20px;
}
.pbe-dir3-card__body .pbe-directory-rating__stars{
	font-size:16px;
}
.pbe-dir3-card__body .pbe-directory-rating__label{
	font-size:9px;
	text-align:center;
}
.pbe-dir3-card__body .pbe-directory-rating__pending-title{
	font-size:10px;
}
.pbe-dir3-card__body .pbe-directory-rating__pending-copy{
	display:none;
}

a .pbe-directory-rating,
.pbe-directory-rating *{
	text-decoration:none!important;
}

@media (prefers-reduced-motion: reduce){
	.pbe-directory-rating__seal,
	.pbe-directory-rating__seal:before,
	.pbe-directory-rating__seal:after{
		animation:none!important;
	}
}

@media(max-width:760px){
	.pbe-directory-rating{
		grid-template-columns:1fr;
	}
	.pbe-directory-rating__brand,
	.pbe-directory-rating__proof{
		border:0!important;
	}
	.pbe-directory-rating__brand{
		justify-content:center;
		border-bottom:1px solid rgba(255,255,255,.08)!important;
	}
	.pbe-directory-rating__proof{
		border-top:1px solid rgba(255,255,255,.08)!important;
		padding-top:11px;
		padding-bottom:11px;
	}
	.pbe-directory-rating__zone{
		padding:12px 14px;
	}
	.pbe-directory-rating__main,
	.pbe-directory-rating__main--elite{
		align-items:center;
		text-align:center;
		padding-right:14px;
	}
	.pbe-directory-rating__scoreline{
		justify-content:center;
	}
	.pbe-directory-rating__label{
		text-align:center;
	}
	.pbe-directory-rating__brandcopy--elite strong{
		font-size:16px;
	}
}


/* =========================================================
   VERSION 29 — UNIVERSAL WHITE PBE BADGE FOUNDATION
   All rated businesses use the white badge template.
   Rating, stars, review count and verification date remain live.
========================================================= */
.pbe-directory-rating--v29{
    container-type:inline-size;
    display:block!important;
    position:relative!important;
    width:100%!important;
    aspect-ratio:2172 / 724!important;
    min-height:0!important;
    margin:14px 0 18px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
    color:#082b52!important;
    background:url('../img/pbe-rating-white-shell.png') center center / 100% 100% no-repeat!important;
    box-shadow:none!important;
    isolation:isolate;
}
.pbe-directory-rating--v29:before{
    content:none!important;
}
.pbe-directory-rating--v29:after{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    left:28.4%!important;
    right:14.4%!important;
    bottom:31.9%!important;
    height:max(1px,.16cqi)!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#0f4f91,#139be3 50%,#0f4f91)!important;
    opacity:.82!important;
    pointer-events:none!important;
}
.pbe-directory-rating--v29 .pbe-v29-live{
    position:absolute;
    z-index:3;
    left:26.2%;
    right:20.1%;
    top:38.2%;
    bottom:24.7%;
    display:grid;
    grid-template-columns:minmax(0,2.22fr) max(1px,.14cqi) minmax(0,.96fr);
    gap:2.25%;
    align-items:center;
    pointer-events:none;
}
.pbe-directory-rating--v29 .pbe-v29-rating-zone,
.pbe-directory-rating--v29 .pbe-v29-reviews-zone{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.pbe-directory-rating--v29 .pbe-v29-rating-zone{
    align-items:center;
    text-align:center;
}
.pbe-directory-rating--v29 .pbe-v29-scoreline{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1.75cqi;
    white-space:nowrap;
}
.pbe-directory-rating--v29 .pbe-v29-score{
    display:block;
    margin:0;
    color:#062c55!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:8.1cqi!important;
    line-height:.88!important;
    font-weight:950!important;
    letter-spacing:-.055em!important;
    text-shadow:0 .32cqi .42cqi rgba(4,36,69,.16)!important;
}
.pbe-directory-rating--v29 .pbe-directory-rating__stars{
    --pbe-fill:100%;
    position:relative!important;
    display:inline-block!important;
    flex:0 0 auto;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:4.45cqi!important;
    line-height:1!important;
    letter-spacing:.18cqi!important;
    white-space:nowrap!important;
    transform:translateY(-.15cqi);
}
.pbe-directory-rating--v29 .pbe-directory-rating__stars-base{
    color:#d7dde4!important;
    text-shadow:none!important;
}
.pbe-directory-rating--v29 .pbe-directory-rating__stars-fill{
    position:absolute!important;
    inset:0 auto 0 0!important;
    width:var(--pbe-fill)!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    color:#e9a920!important;
    text-shadow:0 .13cqi .13cqi rgba(112,73,0,.28),0 .18cqi .5cqi rgba(233,169,32,.22)!important;
}
.pbe-directory-rating--v29 .pbe-v29-label{
    display:block;
    margin-top:.72cqi;
    color:#116ab8!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:2.15cqi!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.20em!important;
    white-space:nowrap!important;
}
.pbe-directory-rating--v29 .pbe-v29-divider{
    align-self:stretch;
    width:100%;
    border-radius:999px;
    background:linear-gradient(180deg,rgba(40,103,163,.30),#1665a7,rgba(40,103,163,.30));
    box-shadow:0 0 .35cqi rgba(23,101,168,.12);
}
.pbe-directory-rating--v29 .pbe-v29-reviews-zone{
    align-items:center;
    text-align:center;
    white-space:nowrap;
}
.pbe-directory-rating--v29 .pbe-v29-reviews{
    display:block;
    margin:0;
    color:#082b52!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:5.65cqi!important;
    line-height:.86!important;
    font-weight:950!important;
    letter-spacing:-.03em!important;
    text-shadow:0 .18cqi .28cqi rgba(7,45,84,.12)!important;
}
.pbe-directory-rating--v29 .pbe-v29-reviews-label{
    display:block;
    margin-top:.65cqi;
    color:#335f86!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:2.18cqi!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
}
.pbe-directory-rating--v29 .pbe-v29-date{
    display:block;
    margin-top:.66cqi;
    color:#1474be!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:1.55cqi!important;
    line-height:1!important;
    font-weight:850!important;
    white-space:nowrap!important;
}
.pbe-directory-rating--v29.pbe-directory-rating--profile{
    margin:16px 0 20px!important;
}
.pbe-dir3-card__body .pbe-directory-rating--v29{
    width:100%!important;
    margin:10px 0 0!important;
}
.pbe-dir3-card__body .pbe-directory-rating--v29 .pbe-v29-live{
    display:grid!important;
}
@media(max-width:760px){
    .pbe-directory-rating--v29{
        width:100%!important;
        margin:12px 0 16px!important;
    }
}

/* =========================================================
   VERSION 36 — PBE FACE CARD
   Server-rendered, no legacy profile builder.  Premium icon set,
   improved focal image treatment, tighter hierarchy and responsive polish.
========================================================= */

body.single-pbe_business main#content.site-main,
body.single-pbe_business main#content.pbe-profile-shell-v36{
    width:min(1380px,calc(100% - 32px))!important;
    max-width:1380px!important;
    margin:24px auto 70px!important;
    padding:0!important;
    background:transparent!important;
}
body.single-pbe_business main#content.site-main>.page-header{display:none!important}
body.single-pbe_business main#content.site-main>.page-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}

.pbe-face-card-v36,
.pbe-face-card-v36 *{box-sizing:border-box}

.pbe-face-card-v36{
    overflow:hidden;
    width:100%;
    border:1px solid #c7deed;
    border-radius:30px;
    background:#fff;
    box-shadow:0 24px 58px rgba(7,38,61,.115);
    color:#0a2034;
    font-family:Montserrat,Inter,Arial,sans-serif;
}

.pbe-face-card-v36__hero{
    position:relative;
    overflow:hidden;
    width:100%;
    aspect-ratio:3.55/1;
    min-height:340px;
    max-height:430px;
    background:linear-gradient(120deg,#0c3554,#e9f3f9 48%,#1479b7);
}
.pbe-face-card-v36__hero>img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 50%;
    transform:translateZ(0);
}
.pbe-face-card-v36__hero:after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:23%;
    pointer-events:none;
    background:linear-gradient(180deg,transparent,rgba(2,22,38,.13));
}
.pbe-face-card-v36__location{
    position:absolute;
    z-index:2;
    left:34px;
    bottom:22px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:48px;
    padding:10px 19px;
    border:1px solid #168bd0;
    border-radius:999px;
    background:rgba(4,34,57,.965);
    box-shadow:0 9px 22px rgba(0,0,0,.20);
    color:#fff;
    font-size:15px;
    line-height:1;
    font-weight:850;
    white-space:nowrap;
}
.pbe-face-card-v36__location img{width:19px;height:19px;filter:brightness(0) invert(1)}

.pbe-face-card-v36__body{padding:24px 38px 28px}
.pbe-face-card-v36__top{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:34px;
    align-items:start;
}
.pbe-face-card-v36__identity{min-width:0}
.pbe-face-card-v36__eyebrow{
    margin:0 0 11px;
    color:#0876bf;
    font-size:14px;
    line-height:1;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.pbe-face-card-v36 h1{
    margin:0!important;
    color:#071d35!important;
    font-size:clamp(40px,4.45vw,64px)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:-.052em!important;
}

.pbe-face-card-v36__actions{
    display:grid;
    grid-template-columns:minmax(174px,1fr) minmax(214px,1.14fr);
    gap:13px;
    align-items:start;
}
.pbe-face-card-v36__action{
    min-height:66px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    padding:14px 22px;
    border-radius:15px;
    font-family:Montserrat,Inter,Arial,sans-serif;
    font-size:19px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    text-decoration:none!important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.pbe-face-card-v36__action:hover{transform:translateY(-1px)}
.pbe-face-card-v36__action img{width:27px;height:27px}
.pbe-face-card-v36__action--primary{
    border:1px solid #082846;
    background:linear-gradient(135deg,#0c4c7c,#031d31);
    box-shadow:0 11px 26px rgba(4,31,52,.18);
    color:#fff!important;
}
.pbe-face-card-v36__action--primary img{filter:brightness(0) invert(1)}
.pbe-face-card-v36__action--secondary{
    border:2px solid #0b3f70;
    background:#fff;
    color:#071d35!important;
}
.pbe-face-card-v36__action--secondary img{filter:invert(17%) sepia(23%) saturate(2275%) hue-rotate(170deg) brightness(89%) contrast(96%)}

.pbe-face-card-v36__description{
    max-width:1040px;
    margin:18px 0 0!important;
    color:#294960!important;
    font-size:19px!important;
    line-height:1.55!important;
    font-weight:450!important;
}

.pbe-face-card-v36__highlights{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    margin-top:23px;
    padding:3px 0 22px;
}
.pbe-v36-highlight{
    display:flex;
    align-items:center;
    gap:17px;
    min-width:0;
    padding:5px 25px;
    border-right:1px solid #cfe0ec;
}
.pbe-v36-highlight:first-child{padding-left:7px}
.pbe-v36-highlight:last-child{border-right:0;padding-right:7px}
.pbe-v36-highlight img{
    width:43px;
    height:43px;
    flex:0 0 43px;
    filter:none;
}
.pbe-v36-highlight span{display:block;min-width:0;color:#163b5d}
.pbe-v36-highlight strong,.pbe-v36-highlight small{display:block;font-size:15.5px;line-height:1.2}
.pbe-v36-highlight strong{font-weight:750}
.pbe-v36-highlight small{margin-top:3px;font-weight:500}

.pbe-face-card-v36__info-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow:hidden;
    margin-top:2px;
    border:1px solid #bcd9ec;
    border-radius:16px;
    background:linear-gradient(135deg,#f4faff,#fbfdff);
    outline:none;
}
.pbe-v36-info{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:14px;
    align-items:start;
    min-height:106px;
    padding:21px 25px;
    border-right:1px solid #d1e2ed;
    border-bottom:1px solid #d1e2ed;
}
.pbe-v36-info:nth-child(3n){border-right:0}
.pbe-v36-info:nth-child(n+4){border-bottom:0}
.pbe-v36-info>img{
    width:34px;
    height:34px;
    margin-top:2px;
    filter:none;
}
.pbe-v36-info>div{min-width:0}
.pbe-v36-info small{
    display:block;
    margin:0 0 7px;
    color:#102a43;
    font-size:14.5px;
    line-height:1.1;
    font-weight:850;
}
.pbe-v36-info span,.pbe-v36-info a{
    display:block;
    color:#1f4563;
    font-size:15.5px;
    line-height:1.36;
    font-weight:500;
    overflow-wrap:anywhere;
}
.pbe-v36-info a{color:#0872d1;text-decoration:underline;text-underline-offset:2px}
.pbe-v36-info--claim a{font-weight:650}

.pbe-face-card-v36__rating-slot{
    display:flex;
    justify-content:center;
    min-height:0;
    padding:15px 0 0;
}
.pbe-face-card-v36__rating-slot:empty{display:none}

.pbe-v36-rating-badge{
    container-type:inline-size;
    position:relative;
    width:min(100%,470px);
    aspect-ratio:2172/724;
    margin:0 auto;
    background:url('../img/pbe-rating-white-shell.png') center center/100% 100% no-repeat;
    color:#082b52;
    isolation:isolate;
}

.pbe-v36-rating-badge--free{background-image:url('../img/pbe-rating-white-shell.png')}
.pbe-v36-rating-badge--pro{background-image:url('../img/pbe-rating-blue-shell.png')}
.pbe-v36-rating-badge--elite{background-image:url('../img/pbe-rating-gold-shell.png')}
.pbe-v36-rating-badge--pro .pbe-v36-rating-badge__scoreline>strong,
.pbe-v36-rating-badge--pro .pbe-v36-rating-badge__reviewzone>strong{color:#042e63}
.pbe-v36-rating-badge--pro .pbe-v36-rating-badge__label,
.pbe-v36-rating-badge--pro .pbe-v36-rating-badge__reviewzone>small{color:#075fb6}
.pbe-v36-rating-badge--elite .pbe-v36-rating-badge__scoreline>strong,
.pbe-v36-rating-badge--elite .pbe-v36-rating-badge__reviewzone>strong{color:#5b3c00}
.pbe-v36-rating-badge--elite .pbe-v36-rating-badge__label,
.pbe-v36-rating-badge--elite .pbe-v36-rating-badge__reviewzone>small{color:#8a5d00}
.pbe-v36-rating-badge--elite .pbe-v36-stars__fill{color:#c58c16}
.pbe-v36-rating-badge--pending .pbe-v36-rating-badge__scoreline>strong,
.pbe-v36-rating-badge--pending .pbe-v36-rating-badge__pending-mark{opacity:.72}
.pbe-v36-rating-badge--pending .pbe-v36-stars__base{color:#c5cdd6}
.pbe-v36-rating-badge--pending .pbe-v36-rating-badge__label{font-size:1.62cqi;letter-spacing:.11em}
.pbe-v36-rating-badge__live{
    position:absolute;
    z-index:2;
    left:26.4%;
    right:19.8%;
    top:33.6%;
    bottom:31.8%;
    display:grid;
    grid-template-columns:minmax(0,2.17fr) max(1px,.14cqi) minmax(0,.96fr);
    gap:2.1%;
    align-items:center;
}
.pbe-v36-rating-badge__scorezone,.pbe-v36-rating-badge__reviewzone{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.pbe-v36-rating-badge__scoreline{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1.4cqi;
    white-space:nowrap;
}
.pbe-v36-rating-badge__scoreline>strong{
    display:block;
    color:#062c55;
    font-family:Arial,Helvetica,sans-serif;
    font-size:7.45cqi;
    line-height:.88;
    font-weight:950;
    letter-spacing:-.055em;
}
.pbe-v36-stars{
    --pbe-fill:100%;
    position:relative;
    display:inline-block;
    flex:0 0 auto;
    font-family:Arial,Helvetica,sans-serif;
    font-size:4.05cqi;
    line-height:1;
    letter-spacing:.13cqi;
    white-space:nowrap;
}
.pbe-v36-stars__base{color:#d9dfe5}
.pbe-v36-stars__fill{
    position:absolute;
    inset:0 auto 0 0;
    width:var(--pbe-fill);
    overflow:hidden;
    color:#e9a920;
    white-space:nowrap;
}
.pbe-v36-rating-badge__label{
    display:block;
    margin-top:.72cqi;
    color:#116ab8;
    font-family:Arial,Helvetica,sans-serif;
    font-size:1.8cqi;
    line-height:1;
    font-weight:950;
    letter-spacing:.18em;
    white-space:nowrap;
}
.pbe-v36-rating-badge__divider{
    align-self:center;
    width:100%;
    height:82%;
    border-radius:999px;
    background:linear-gradient(180deg,rgba(40,103,163,.15),#1665a7,rgba(40,103,163,.15));
}
.pbe-v36-rating-badge__reviewzone>strong{
    display:block;
    color:#082b52;
    font-family:Arial,Helvetica,sans-serif;
    font-size:5.05cqi;
    line-height:.86;
    font-weight:950;
    letter-spacing:-.03em;
}
.pbe-v36-rating-badge__reviewzone>span{
    display:block;
    margin-top:.42cqi;
    color:#335f86;
    font-family:Arial,Helvetica,sans-serif;
    font-size:1.82cqi;
    line-height:1;
    font-weight:950;
    letter-spacing:.075em;
}
.pbe-v36-rating-badge__reviewzone>small{
    display:block;
    margin-top:.66cqi;
    color:#1474be;
    font-family:Arial,Helvetica,sans-serif;
    font-size:1.5cqi;
    line-height:1;
    font-weight:900;
    white-space:nowrap;
}

/* The permalink is the Face Card — never the legacy profile shell. */
body.single-pbe_business .pbe-profile-shell-v36>.page-header,
body.single-pbe_business .pbe-profile-shell-v36>.pbe-dm-profile-breadcrumbs,
body.single-pbe_business .pbe-profile-shell-v36>.pbe-dm-profile-meta{display:none!important}
body.single-pbe_business .pbe-profile-shell-v36>.pbe-face-card-v36:first-child{margin-top:0!important}
body.single-pbe_business .pbe-dm-related{
    width:min(1180px,calc(100% - 10px));
    margin:34px auto 0!important;
}

@media(max-width:1050px){
    .pbe-face-card-v36__hero{aspect-ratio:2.35/1;min-height:300px}
    .pbe-face-card-v36__hero>img{object-position:50% 50%}
    .pbe-face-card-v36__top{grid-template-columns:1fr;gap:20px}
    .pbe-face-card-v36__actions{grid-template-columns:1fr 1fr;width:min(100%,520px)}
    .pbe-face-card-v36__description{font-size:18px!important}
    .pbe-face-card-v36__highlights{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:15px}
    .pbe-v36-highlight:nth-child(2){border-right:0}
    .pbe-v36-highlight:nth-child(3),.pbe-v36-highlight:nth-child(4){padding-top:12px}
    .pbe-face-card-v36__info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .pbe-v36-info{border-right:1px solid #d1e2ed!important;border-bottom:1px solid #d1e2ed!important}
    .pbe-v36-info:nth-child(2n){border-right:0!important}
    .pbe-v36-info:nth-child(n+5){border-bottom:0!important}
}

@media(max-width:700px){
    body.single-pbe_business main#content.site-main,
    body.single-pbe_business main#content.pbe-profile-shell-v36{width:calc(100% - 14px)!important;margin:12px auto 44px!important}
    .pbe-face-card-v36{border-radius:22px;box-shadow:0 14px 34px rgba(7,38,61,.10)}
    .pbe-face-card-v36__hero{min-height:245px;aspect-ratio:1.55/1;max-height:none}
    .pbe-face-card-v36__hero>img{object-position:50% 50%}
    .pbe-face-card-v36__location{left:14px;bottom:14px;min-height:38px;padding:8px 13px;font-size:12px}
    .pbe-face-card-v36__location img{width:16px;height:16px}
    .pbe-face-card-v36__body{padding:22px 16px 24px}
    .pbe-face-card-v36__eyebrow{font-size:11px;margin-bottom:10px}
    .pbe-face-card-v36 h1{font-size:clamp(32px,10vw,44px)!important;line-height:1.02!important}
    .pbe-face-card-v36__actions{width:100%;gap:8px}
    .pbe-face-card-v36__action{min-height:52px;padding:11px 12px;border-radius:13px;font-size:15px;gap:9px}
    .pbe-face-card-v36__action img{width:22px;height:22px}
    .pbe-face-card-v36__description{margin-top:15px!important;font-size:16px!important;line-height:1.6!important}
    .pbe-face-card-v36__highlights{grid-template-columns:1fr 1fr;margin-top:18px;padding-bottom:17px}
    .pbe-v36-highlight{gap:11px;padding:8px 12px}
    .pbe-v36-highlight:first-child,.pbe-v36-highlight:nth-child(3){padding-left:2px}
    .pbe-v36-highlight img{width:33px;height:33px;flex-basis:33px}
    .pbe-v36-highlight strong,.pbe-v36-highlight small{font-size:12px}
    .pbe-face-card-v36__info-grid{grid-template-columns:1fr;border-radius:14px}
    .pbe-v36-info{grid-template-columns:35px minmax(0,1fr);min-height:0;padding:16px 15px;border-right:0!important;border-bottom:1px solid #d1e2ed!important}
    .pbe-v36-info:last-child{border-bottom:0!important}
    .pbe-v36-info>img{width:28px;height:28px}
    .pbe-v36-info small{font-size:12px;margin-bottom:5px}
    .pbe-v36-info span,.pbe-v36-info a{font-size:14px}
    .pbe-face-card-v36__rating-slot{padding-top:12px}
    .pbe-v36-rating-badge{width:min(100%,450px)}
    body.single-pbe_business .pbe-dm-related{width:100%}
}

@media(prefers-reduced-motion:reduce){
    .pbe-face-card-v36__action{transition:none!important}
}

