/* BVZ Preferred Vendors Grid (GSheet Import, v1.2.2) */
.bvz-vendors-wrap{margin:1rem 0 2rem;color:#1a1a1a}
.bvz-vendors-wrap .bvz-grid{display:grid;grid-template-columns:repeat(var(--bvz-columns,3),1fr);gap:16px}
@media (max-width:1024px){.bvz-vendors-wrap .bvz-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.bvz-vendors-wrap .bvz-grid{grid-template-columns:1fr}}
.vendor-card{background:#fff;border:1px solid #e6e6e6;border-radius:14px;overflow:hidden;display:grid;grid-template-rows:auto 1fr;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.vendor-card__media img,.vendor-card .placeholder-img{display:block;width:100%;height:200px;object-fit:cover} /* uniform height fix */
.vendor-card .placeholder-img{display:grid;place-items:center;color:#666;font-size:.95rem;letter-spacing:.2px;background:#f6f6f6}
.vendor-card__body{padding:16px}
.vendor-card__category{font-weight:700;color:#0e6efd;margin-bottom:4px}
.vendor-card__name{font-size:1.15rem;margin:0 0 2px}
.vendor-card__company{color:#444;margin:0 0 8px}
.vendor-card__meta{list-style:none;padding:0;margin:0 0 10px;display:flex;gap:12px;flex-wrap:wrap;font-size:.95rem}
.vendor-card__actions{display:flex;gap:8px;flex-wrap:wrap}
.btn{display:inline-block;padding:.55rem .8rem;border-radius:10px;background:#0e6efd;color:#fff !important;text-decoration:none;font-weight:600;font-size:.95rem;line-height:1;transition:transform .05s ease, background .2s ease}
.btn:hover{background:#0b5ed7;transform:translateY(-1px)}
.btn--ghost{background:#f2f5ff;color:#0e6efd !important;border:1px solid #cddcff}
.vendors__note{margin-top:10px;color:#555;font-size:.95rem}
/* 2-line description clamp */
.vendor-card__desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
