/* =========================================================
   PBE DIRECTORY MANAGER 3.0
   Front-end directory + spotlight styles
   Scoped to plugin classes only.
========================================================= */

.pbe-live,
.pbe-dm-spotlight,
.pbe-dm-profile-meta {
  --pbe-navy:#061b2c;
  --pbe-navy-2:#0c2d49;
  --pbe-blue:#168ed2;
  --pbe-blue-soft:#eaf6fd;
  --pbe-gold:#eca921;
  --pbe-line:#d7e5ef;
  --pbe-text:#0a2034;
  --pbe-muted:#607a91;
  --pbe-white:#fff;
  box-sizing:border-box;
  font-family:Montserrat,Arial,sans-serif;
}

.pbe-live *,
.pbe-live *::before,
.pbe-live *::after,
.pbe-dm-spotlight *,
.pbe-dm-spotlight *::before,
.pbe-dm-spotlight *::after,
.pbe-dm-profile-meta *,
.pbe-dm-profile-meta *::before,
.pbe-dm-profile-meta *::after{box-sizing:border-box}

/* ---------- LIVE DIRECTORY ---------- */
.pbe-live{width:100%;color:var(--pbe-text)}
.pbe-live__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;margin:0 0 38px}
.pbe-live__heading-wrap{max-width:860px}
.pbe-live__eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 19px;color:#1585c5;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.16em}
.pbe-live__eyebrow span{display:inline-block;width:31px;height:3px;border-radius:999px;background:var(--pbe-gold)}
.pbe-live__heading{margin:0;color:var(--pbe-navy);font-size:clamp(44px,5.1vw,74px);line-height:.89;font-weight:900;letter-spacing:-.055em}
.pbe-live__heading span{display:block;margin-top:9px;color:#1592d5}
.pbe-live__intro{max-width:760px;margin:27px 0 0;color:#607a91;font-size:16px;line-height:1.7;font-weight:400}

.pbe-live__count-badge{display:flex;align-items:center;gap:14px;min-width:166px;padding:20px 19px;border:1px solid var(--pbe-line);border-radius:17px;background:#fff;box-shadow:0 15px 34px rgba(5,34,55,.10)}
.pbe-live__count-badge>strong{color:var(--pbe-gold);font-size:39px;line-height:1;font-weight:900;letter-spacing:-.05em}
.pbe-live__count-badge>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.pbe-live__count-badge b{color:var(--pbe-navy);font-size:10px;line-height:1.1;font-weight:900;letter-spacing:.08em}
.pbe-live__count-badge small{color:#627b91;font-size:10px;line-height:1.25;font-weight:500;white-space:nowrap}
.pbe-live__count-only{display:flex;justify-content:flex-end;margin:0 0 28px}
.pbe-live-count-number{font-weight:900;color:var(--pbe-gold)}

.pbe-live__toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;margin:0 0 27px;padding:13px 18px;border:1px solid var(--pbe-line);border-radius:18px;background:#fff}
.pbe-live__active,.pbe-live__tools{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.pbe-live__active-label{color:#5f7b91;font-size:11px;line-height:1;font-weight:800;letter-spacing:.11em}
.pbe-live__active-pill{display:inline-flex;align-items:center;min-height:36px;padding:8px 14px;border:1px solid #bfe2f5;border-radius:999px;background:#eef9ff;color:#1285c7;font-size:13px;line-height:1.2;font-weight:700}
.pbe-live__clear,.pbe-live__clear:visited{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:9px 14px;border:1px solid #d6e2eb;border-radius:999px;background:#fff;color:var(--pbe-navy);font-size:12px;line-height:1.1;font-weight:800;text-decoration:none;transition:border-color .2s ease,color .2s ease,background .2s ease}
.pbe-live__clear:hover{border-color:#9fcbe3;background:#f6fbfe;color:#0d78b8}
.pbe-live__clear:focus-visible{outline:3px solid rgba(22,142,210,.28);outline-offset:2px}
.pbe-live__view-switch{display:flex;overflow:hidden;border:1px solid #d7e4ed;border-radius:11px;background:#fff}
.pbe-live__view-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:38px;margin:0;padding:0;border:0;background:#fff;color:#648096;cursor:pointer;transition:background .2s ease,color .2s ease}
.pbe-live__view-button+ .pbe-live__view-button{border-left:1px solid #d7e4ed}
.pbe-live__view-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pbe-live__view-button svg rect{fill:currentColor;stroke:none}
.pbe-live__view-button.is-active{background:var(--pbe-navy);color:#fff}
.pbe-live__view-button:focus-visible{position:relative;z-index:2;outline:3px solid rgba(22,142,210,.3);outline-offset:-3px}

.pbe-live__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.pbe-live-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--pbe-line);border-radius:21px;background:#fff;box-shadow:0 13px 34px rgba(6,34,55,.055);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.pbe-live-card:hover{transform:translateY(-3px);border-color:#bfd8e7;box-shadow:0 20px 42px rgba(6,34,55,.10)}
.pbe-live-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:1.58/1;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.14),transparent 32%),linear-gradient(135deg,#0c2d49,#168ed2);text-decoration:none}
.pbe-live-card__image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent;transition:none}
.pbe-live-card:hover .pbe-live-card__image{transform:none}
.pbe-live-card__media::after{content:"";position:absolute;inset:auto 0 0;height:34%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(1,18,31,.28))}
.pbe-live-card__location{position:absolute;z-index:3;left:14px;bottom:13px;display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(5,31,50,.91);box-shadow:0 6px 16px rgba(0,0,0,.12);color:#fff;font-size:12px;line-height:1;font-weight:800}
.pbe-live-card__founding{position:absolute;z-index:3;right:14px;top:14px;padding:7px 10px;border-radius:999px;background:var(--pbe-gold);color:#071c2d;font-size:10px;line-height:1;font-weight:900;letter-spacing:.08em}
.pbe-live-card__placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.12),transparent 26%),linear-gradient(135deg,#0b2942,#116c9f);color:#fff}
.pbe-live-card__placeholder b{font-size:50px;line-height:1;font-weight:900;letter-spacing:-.07em}
.pbe-live-card__placeholder small{font-size:10px;font-weight:800;letter-spacing:.13em;opacity:.74}
.pbe-live-card__body{display:flex;flex:1;flex-direction:column;padding:21px 21px 19px}
.pbe-live-card__category{margin:0 0 10px;color:#1689c9;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.08em}
.pbe-live-card h3{margin:0 0 10px;font-size:22px;line-height:1.15;font-weight:900;letter-spacing:-.025em}
.pbe-live-card h3 a,.pbe-live-card h3 a:visited{color:var(--pbe-navy);text-decoration:none}
.pbe-live-card h3 a:hover{color:#117fbd}
.pbe-live-card h3 a:focus-visible{outline:3px solid rgba(22,142,210,.25);outline-offset:3px;border-radius:3px}
.pbe-live-card__body>p{margin:0;color:#6a8093;font-size:15px;line-height:1.58}
.pbe-live-card__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:auto;padding-top:18px}
.pbe-live-card__profile,.pbe-live-card__profile:visited{color:#117fbd;font-size:13px;line-height:1.2;font-weight:800;text-decoration:none}
.pbe-live-card__website,.pbe-live-card__website:visited{color:#60778b;font-size:12px;line-height:1.2;font-weight:700;text-decoration:none}
.pbe-live-card__profile:hover,.pbe-live-card__website:hover{color:var(--pbe-navy);text-decoration:underline;text-underline-offset:3px}
.pbe-live-card__profile:focus-visible,.pbe-live-card__website:focus-visible{outline:3px solid rgba(22,142,210,.25);outline-offset:3px;border-radius:3px}

/* List view: purely presentational; same crawlable content. */
.pbe-live__grid.is-list{grid-template-columns:1fr;gap:16px}
.pbe-live__grid.is-list .pbe-live-card{display:grid;grid-template-columns:minmax(240px,31%) minmax(0,1fr);min-height:230px}
.pbe-live__grid.is-list .pbe-live-card__media{aspect-ratio:auto;height:100%;min-height:230px;border-radius:20px 0 0 20px}
.pbe-live__grid.is-list .pbe-live-card__body{padding:27px 29px}
.pbe-live__grid.is-list .pbe-live-card h3{font-size:27px}
.pbe-live__grid.is-list .pbe-live-card__body>p{max-width:850px;font-size:16px}

.pbe-live__pagination{margin:32px 0 0}
.pbe-live__pagination ul{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.pbe-live__pagination a,.pbe-live__pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:8px 12px;border:1px solid var(--pbe-line);border-radius:10px;background:#fff;color:var(--pbe-navy);font-size:13px;font-weight:800;text-decoration:none}
.pbe-live__pagination .current{border-color:var(--pbe-navy);background:var(--pbe-navy);color:#fff}
.pbe-live__empty{padding:45px 24px;border:1px solid var(--pbe-line);border-radius:20px;background:#f8fbfd;text-align:center}
.pbe-live__empty h3{margin:0 0 8px;color:var(--pbe-navy);font-size:24px}.pbe-live__empty p{margin:0;color:var(--pbe-muted);font-size:15px}

/* ---------- SPOTLIGHT ---------- */
.pbe-dm-spotlight{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(231,184,94,.10),transparent 31%),linear-gradient(115deg,#07111f 0%,#0b1a2d 55%,#081421 100%);color:#fff}
.pbe-dm-spotlight::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(226,184,94,.45),transparent)}
.pbe-dm-spotlight__inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);width:min(1440px,calc(100% - 48px));min-height:620px;margin:auto}
.pbe-dm-spotlight__media{position:relative;display:flex;align-items:center;padding:70px 54px 70px 0}
.pbe-dm-spotlight__media::after{content:"";position:absolute;left:23%;top:-130px;width:360px;height:620px;transform:rotate(17deg);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);background:linear-gradient(180deg,rgba(255,232,169,.18),rgba(244,210,130,.05) 48%,transparent 88%);pointer-events:none}
.pbe-dm-spotlight__image,.pbe-dm-spotlight__placeholder{display:block;width:100%;height:485px;object-fit:cover;border-radius:4px 40px 4px 4px;box-shadow:0 30px 65px rgba(0,0,0,.35)}
.pbe-dm-spotlight__placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d2c46,#156c9d);font-size:90px;font-weight:900}
.pbe-dm-spotlight__month{position:absolute;z-index:2;left:24px;bottom:92px;padding:12px 15px;border-left:3px solid #e2b85e;background:rgba(5,15,26,.84);color:#fff;font-size:13px;font-weight:800}
.pbe-dm-spotlight__copy{position:relative;display:flex;justify-content:center;flex-direction:column;padding:75px 5px 75px 22px}
.pbe-dm-spotlight__ghost{position:absolute;right:-24px;top:70px;color:transparent;-webkit-text-stroke:1px rgba(226,184,94,.08);font-size:clamp(56px,6vw,98px);line-height:.82;font-weight:900;letter-spacing:-.055em;text-align:right;pointer-events:none}
.pbe-dm-spotlight__eyebrow{position:relative;margin-bottom:20px;color:#f1d285;font-size:12px;font-weight:900;letter-spacing:.15em}
.pbe-dm-spotlight__intro{position:relative;margin:0 0 5px;color:#f4d98e;font-family:Georgia,"Times New Roman",serif;font-size:clamp(20px,1.9vw,28px);font-style:italic}
.pbe-dm-spotlight h2{position:relative;margin:0 0 17px;color:#fff;font-size:clamp(38px,4.1vw,66px);line-height:.99;font-weight:900;letter-spacing:-.045em}
.pbe-dm-spotlight__location{position:relative;margin-bottom:23px;color:#cad6e1;font-size:15px;font-weight:650}
.pbe-dm-spotlight__story{position:relative;max-width:590px;margin:0;color:#d7e0ea;font-size:17px;line-height:1.75}
.pbe-dm-spotlight__button,.pbe-dm-spotlight__button:visited{position:relative;display:inline-flex;align-items:center;gap:11px;align-self:flex-start;margin-top:30px;padding:14px 19px;border:1px solid #e2b85e;background:#e2b85e;color:#07111f;font-size:14px;font-weight:900;text-decoration:none;transition:.2s ease}
.pbe-dm-spotlight__button:hover{background:transparent;color:#f4d98e}.pbe-dm-spotlight__button:focus-visible{outline:3px solid #fff;outline-offset:4px}

/* ---------- SINGLE BUSINESS PROFILE META ---------- */
.pbe-dm-profile-meta{margin:28px 0;padding:24px;border:1px solid var(--pbe-line);border-radius:16px;background:#f8fbfd;color:var(--pbe-text)}
.pbe-dm-profile-meta p{margin:9px 0;font-size:15px;line-height:1.55}.pbe-dm-profile-meta a{color:#147fb9;font-weight:700}.pbe-dm-profile-badge{display:inline-flex;margin:0 0 9px;padding:7px 10px;border-radius:999px;background:#f4dfad;color:#523c0a;font-size:11px;font-weight:900;letter-spacing:.07em}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1100px){
  .pbe-live__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pbe-live__header{grid-template-columns:minmax(0,1fr) auto;gap:28px}
  .pbe-dm-spotlight__inner{grid-template-columns:1fr 1fr}
  .pbe-dm-spotlight__media{padding-right:30px}
}

@media(max-width:767px){
  .pbe-live__header{display:block;margin-bottom:28px}
  .pbe-live__eyebrow{font-size:11px;margin-bottom:16px}
  .pbe-live__heading{font-size:clamp(43px,14vw,60px);line-height:.92}
  .pbe-live__intro{margin-top:20px;font-size:16px;line-height:1.62}
  .pbe-live__header .pbe-live__count-badge{margin:25px 0 0}
  .pbe-live__count-only{justify-content:flex-start}
  .pbe-live__count-badge{min-width:160px;padding:16px}.pbe-live__count-badge>strong{font-size:34px}
  .pbe-live__toolbar{align-items:flex-start;flex-direction:column;padding:14px 15px}.pbe-live__tools{width:100%;justify-content:space-between}.pbe-live__active{gap:9px}
  .pbe-live__grid{grid-template-columns:1fr;gap:18px}
  .pbe-live-card h3{font-size:22px}.pbe-live-card__body{padding:20px}
  .pbe-live__grid.is-list .pbe-live-card{display:flex;min-height:0}.pbe-live__grid.is-list .pbe-live-card__media{height:auto;min-height:0;aspect-ratio:1.58/1;border-radius:20px 20px 0 0}.pbe-live__grid.is-list .pbe-live-card__body{padding:20px}.pbe-live__grid.is-list .pbe-live-card h3{font-size:22px}
  .pbe-dm-spotlight__inner{display:flex;width:100%;min-height:0;flex-direction:column}.pbe-dm-spotlight__media{padding:26px 18px 0}.pbe-dm-spotlight__image,.pbe-dm-spotlight__placeholder{height:clamp(300px,88vw,410px);border-radius:3px 28px 3px 3px}.pbe-dm-spotlight__month{left:34px;bottom:16px}.pbe-dm-spotlight__copy{padding:47px 22px 58px}.pbe-dm-spotlight__ghost{top:30px;right:-7px;font-size:58px}.pbe-dm-spotlight__story{font-size:16px;line-height:1.7}.pbe-dm-spotlight__button{width:100%;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  .pbe-live *,
  .pbe-dm-spotlight *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .pbe-live-card:hover{transform:none}.pbe-live-card:hover .pbe-live-card__image{transform:none}
}

/* V3.1 legacy bridge: cloned cards intentionally inherit the approved Elementor card styles. */
.pbe-bridge-added { animation: none !important; }

/* V3.3.1 bridge image hardening: normalized business photos must remain visible
   even when the cloned Elementor template carried lazy-load/image state. */
.pbe-bridge-added [data-pbe-photo-host="1"] {
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.pbe-bridge-added .pbe-bridge-direct-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* V3.3.2: preserve the approved Elementor <picture> wrapper and force only its
   actual storefront image source. This avoids breaking selectors/layout that
   depend on the original picture structure. */
.pbe-bridge-added picture:has(img[data-pbe-photo="1"]),
.pbe-bridge-added [data-pbe-photo-host="1"] {
  position: relative !important;
  overflow: hidden !important;
}
.pbe-bridge-added img[data-pbe-photo="1"] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* =========================================================
   V3.4 LEGACY BRIDGE — NATIVE CARD INTERIOR
   The legacy grid remains in place, but dynamic businesses no longer clone
   Elementor's image/content internals. This makes Media Library photos reliable.
========================================================= */
.pbe-bridge-native-card {
  display:flex !important;
  min-width:0 !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border:1px solid #d7e5ef !important;
  border-radius:21px !important;
  background:#fff !important;
  box-shadow:0 13px 34px rgba(6,34,55,.055) !important;
  font-family:Montserrat,Arial,sans-serif !important;
}
.pbe-bridge-native__media {
  position:relative !important;
  display:block !important;
  overflow:hidden !important;
  width:100% !important;
  aspect-ratio:1.58/1 !important;
  min-height:240px !important;
  background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.14),transparent 32%),linear-gradient(135deg,#0c2d49,#168ed2) !important;
  text-decoration:none !important;
}
.pbe-bridge-native__image {
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  opacity:1 !important;
  visibility:visible !important;
}
.pbe-bridge-native__media::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:auto 0 0;
  height:34%;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(1,18,31,.28));
}
.pbe-bridge-native__location,
.pbe-bridge-native__founding {
  position:absolute !important;
  z-index:3 !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  border-radius:999px !important;
  font-family:Montserrat,Arial,sans-serif !important;
  line-height:1 !important;
  font-weight:800 !important;
}
.pbe-bridge-native__location {
  left:14px !important;
  bottom:13px !important;
  padding:7px 12px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(5,31,50,.91) !important;
  color:#fff !important;
  font-size:12px !important;
}
.pbe-bridge-native__founding {
  right:14px !important;
  top:14px !important;
  padding:7px 10px !important;
  background:#eca921 !important;
  color:#071c2d !important;
  font-size:10px !important;
  letter-spacing:.08em !important;
}
.pbe-bridge-native__placeholder {
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  gap:7px !important;
  background:linear-gradient(135deg,#0b2942,#116c9f) !important;
  color:#fff !important;
}
.pbe-bridge-native__placeholder b {font-size:50px !important;line-height:1 !important;font-weight:900 !important}
.pbe-bridge-native__placeholder small {font-size:10px !important;font-weight:800 !important;letter-spacing:.13em !important;opacity:.74 !important}
.pbe-bridge-native__body {
  display:flex !important;
  flex:1 !important;
  flex-direction:column !important;
  padding:21px 21px 19px !important;
}
.pbe-bridge-native__category {
  margin:0 0 10px !important;
  color:#1689c9 !important;
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
}
.pbe-bridge-native__body h3 {
  margin:0 0 10px !important;
  color:#061b2c !important;
  font-size:22px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
}
.pbe-bridge-native__body h3 a,
.pbe-bridge-native__body h3 a:visited {color:#061b2c !important;text-decoration:none !important}
.pbe-bridge-native__description {
  margin:0 !important;
  color:#6a8093 !important;
  font-size:15px !important;
  line-height:1.58 !important;
}
.pbe-bridge-native__address {
  margin-top:14px !important;
  padding-top:14px !important;
  border-top:1px solid #e3edf3 !important;
  color:#607a91 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
.pbe-bridge-native__actions {
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  margin-top:auto !important;
  padding-top:16px !important;
}
.pbe-bridge-native__call,
.pbe-bridge-native__info,
.pbe-bridge-native__call:visited,
.pbe-bridge-native__info:visited {
  color:#117fbd !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
@media(max-width:767px){
  .pbe-bridge-native__media{min-height:0 !important;aspect-ratio:1.58/1 !important}
}

/* =========================================================
   V3.4.1 LEGACY BRIDGE VISUAL LOCK
   Load and hard-lock the dynamic card to the approved PBE card language.
========================================================= */
.pbe-bridge-native-card,
.pbe-bridge-native-card * {
  box-sizing:border-box !important;
}
.pbe-bridge-native-card {
  color:#071c2d !important;
}
.pbe-bridge-native-card a {
  font-family:Montserrat,Arial,sans-serif !important;
}
.pbe-bridge-native__body {
  gap:0 !important;
  min-height:0 !important;
}
.pbe-bridge-native__category {
  display:block !important;
  margin:0 0 9px !important;
  color:#078bd0 !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:.095em !important;
  text-transform:uppercase !important;
}
.pbe-bridge-native__body h3,
.pbe-bridge-native__body h3 a,
.pbe-bridge-native__body h3 a:link,
.pbe-bridge-native__body h3 a:visited,
.pbe-bridge-native__body h3 a:hover,
.pbe-bridge-native__body h3 a:active {
  margin:0 !important;
  color:#061b2c !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:22px !important;
  line-height:1.16 !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
  text-decoration:none !important;
}
.pbe-bridge-native__body h3 {
  margin:0 0 11px !important;
}
.pbe-bridge-native__description {
  display:-webkit-box !important;
  overflow:hidden !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:3 !important;
  min-height:71px !important;
  margin:0 !important;
  color:#667f93 !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.58 !important;
  font-weight:400 !important;
}
.pbe-bridge-native__address {
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  min-height:48px !important;
  margin:16px 0 0 !important;
  padding:14px 0 0 !important;
  border-top:1px solid #dce8f0 !important;
  color:#536f86 !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}
.pbe-bridge-native__pin {
  width:15px !important;
  height:15px !important;
  flex:0 0 15px !important;
  fill:#f3aa16 !important;
}
.pbe-bridge-native__actions {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:0 !important;
  padding-top:8px !important;
}
.pbe-bridge-native__call,
.pbe-bridge-native__call:link,
.pbe-bridge-native__call:visited {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  padding:10px 15px !important;
  border:1px solid #061f33 !important;
  border-radius:11px !important;
  background:#061f33 !important;
  color:#fff !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  transition:transform .18s ease,background-color .18s ease !important;
}
.pbe-bridge-native__info,
.pbe-bridge-native__info:link,
.pbe-bridge-native__info:visited {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  padding:10px 14px !important;
  border:1px solid #d5e2eb !important;
  border-radius:11px !important;
  background:#f8fbfd !important;
  color:#061f33 !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  transition:transform .18s ease,border-color .18s ease !important;
}
.pbe-bridge-native__call:hover,
.pbe-bridge-native__info:hover {
  transform:translateY(-1px) !important;
}
.pbe-bridge-native__call:focus-visible,
.pbe-bridge-native__info:focus-visible,
.pbe-bridge-native__body h3 a:focus-visible,
.pbe-bridge-native__media:focus-visible {
  outline:3px solid #1599d8 !important;
  outline-offset:3px !important;
}
.pbe-bridge-native__location {
  color:#fff !important;
  text-decoration:none !important;
}
@media(max-width:767px){
  .pbe-bridge-native__body{padding:20px 20px 18px !important}
  .pbe-bridge-native__description{min-height:0 !important;-webkit-line-clamp:4 !important}
}

/* =========================================================
   VERSION 7 — SEO PROFILE LINKS / BREADCRUMBS / RELATED
========================================================= */
.pbe-dm-profile-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 22px;color:#6a8093;font-size:13px;line-height:1.4}
.pbe-dm-profile-breadcrumbs a,.pbe-dm-profile-breadcrumbs a:visited{color:#117fbd;text-decoration:none;font-weight:700}
.pbe-dm-profile-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.pbe-dm-profile-breadcrumbs a:focus-visible{outline:3px solid rgba(22,142,210,.25);outline-offset:3px;border-radius:3px}
.pbe-dm-related{margin:38px 0 0;padding:27px;border:1px solid #d7e5ef;border-radius:18px;background:#f8fbfd}
.pbe-dm-related h2{margin:0 0 16px;color:#061b2c;font-size:24px;line-height:1.15;font-weight:900}
.pbe-dm-related ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:0;padding:0;list-style:none}
.pbe-dm-related a,.pbe-dm-related a:visited{color:#117fbd;font-size:14px;font-weight:800;text-decoration:none}
.pbe-dm-related a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.pbe-dm-related ul{grid-template-columns:1fr}.pbe-dm-related{padding:22px}}



/* =========================================================
   Version 16 — aspect-ratio-safe business imagery
   Directory photos/logos are fully visible inside the approved media frame.
   The navy/blue PBE treatment becomes the letterbox background instead of
   cropping or visually stretching portrait/square artwork.
========================================================= */

/* =========================================================
   Version 12 — legacy location-filter image hydration
   The older location explorer creates #pbe-dir3-results cards in JavaScript.
   Keep their photos inside the compact media rail even with snippets disabled.
========================================================= */
#pbe-dir3-results .pbe-dir3-card__media {
  position:relative !important;
  overflow:hidden !important;
}
#pbe-dir3-results .pbe-dir3-card__media > img.pbe-dm-filter-image {
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  opacity:1 !important;
  visibility:visible !important;
}
#pbe-dir3-results .pbe-dir3-card__media > img.pbe-dm-filter-image[data-pbe-fallback="1"] {
  object-fit:cover !important;
}


/* =========================================================
   VERSION 21 — ACCESSIBILITY HARDENING
   Darken small text/link colors to WCAG AA while preserving the PBE palette.
========================================================= */
.pbe-live__eyebrow{color:#0b73ad !important}
.pbe-live__intro{color:#587287 !important}
.pbe-live__count-badge>strong{color:#b87900 !important}
.pbe-live__count-badge small{color:#587287 !important}
.pbe-live__active-label{color:#566f84 !important}
.pbe-live__active-pill{color:#0b73ad !important}
.pbe-live__view-button{color:#566f84 !important}
.pbe-live-card__category,
.pbe-bridge-native__category{color:#0b73ad !important}
.pbe-live-card__body>p,
.pbe-bridge-native__description{color:#587287 !important}
.pbe-live-card__profile,
.pbe-live-card__profile:visited{color:#0b73ad !important}
.pbe-dm-profile-breadcrumbs{color:#587287 !important}
.pbe-dm-profile-breadcrumbs a,
.pbe-dm-profile-breadcrumbs a:visited,
.pbe-dm-related a,
.pbe-dm-related a:visited{color:#0b73ad !important}
