/* Isolated homepage widget. Existing Brand Directory CSS remains untouched. */
.bbd-random-widget {
  width:100%;
  min-width:0;
  --bbd-text:#1f2430;
}
.bbd-random-widget .bbd-random-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  padding:0;
  margin:0;
  align-items:stretch;
}
.bbd-random-widget .bbd-random-grid .bbd-card {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  width:100%;
  min-width:0;
  min-height:220px;
  padding:18px 15px 16px;
  border:1px solid #ededed;
  border-radius:10px;
  background:#fff;
  color:#1f2430;
  text-decoration:none !important;
  box-sizing:border-box;
  overflow:hidden;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.bbd-random-widget .bbd-random-grid .bbd-card:hover {
  transform:translateY(-3px);
  border-color:#ddb15a;
  box-shadow:0 12px 25px rgba(0,0,0,.07);
}
.bbd-random-widget .bbd-random-grid .bbd-logo-wrap {
  display:flex;
  width:100%;
  min-width:0;
  flex:1 1 auto;
  min-height:105px;
  justify-content:center;
  align-items:center;
  overflow:hidden;
}
.bbd-random-widget .bbd-random-grid .bbd-logo {
  display:block;
  width:75%;
  max-width:100%;
  max-height:105px;
  height:auto;
  object-fit:contain;
  filter:none !important;
  box-shadow:none !important;
}
.bbd-random-widget .bbd-random-grid .bbd-no-logo {
  width:68px;
  height:68px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  background:#f5f5f5;
  color:#777;
}
.bbd-random-widget .bbd-random-grid .bbd-title {
  font-size:15px;
  line-height:1.3;
  font-weight:500;
  color:#1f2430;
  margin-top:11px;
  text-align:center;
}
.bbd-random-widget .bbd-random-grid .bbd-category,
.bbd-random-widget .bbd-random-grid .bbd-floor {
  font-size:11px;
  line-height:1.35;
  color:#777;
  margin-top:5px;
  text-align:center;
}
.bbd-random-widget.bbd-random-hide-name .bbd-title,
.bbd-random-widget.bbd-random-hide-category .bbd-category,
.bbd-random-widget.bbd-random-hide-floor .bbd-floor { display:none !important; }
.bbd-random-widget .bbd-random-grid .bbd-empty {
  grid-column:1/-1;
  padding:30px 15px;
  text-align:center;
  color:#777;
}
@media(max-width:1024px) {
  .bbd-random-widget .bbd-random-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
  .bbd-random-widget .bbd-random-grid .bbd-card { min-height:200px; }
}
@media(max-width:767px) {
  .bbd-random-widget .bbd-random-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
  .bbd-random-widget .bbd-random-grid .bbd-card { min-height:150px;padding:12px 9px;border-radius:8px; }
  .bbd-random-widget .bbd-random-grid .bbd-logo-wrap { min-height:78px; }
  .bbd-random-widget .bbd-random-grid .bbd-logo { max-height:74px; }
  .bbd-random-widget .bbd-random-grid .bbd-title { font-size:13px;margin-top:8px; }
  .bbd-random-widget .bbd-random-grid .bbd-category,
  .bbd-random-widget .bbd-random-grid .bbd-floor { font-size:10px; }
}
@media(prefers-reduced-motion:reduce) {
  .bbd-random-widget .bbd-random-grid .bbd-card { transition:none; }
}
