.filters{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:32px}.filters select{background-color:#fff;border:1px solid #d1d5db;border-radius:10px;cursor:pointer;font-size:.9rem;padding:10px 14px}.cards-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:40px 0}.business-card{background-color:#fff;border-radius:18px;box-shadow:0 6px 20px rgba(0,0,0,.08);display:flex;flex-direction:column;height:100%;padding:20px;transition:transform .25s ease,box-shadow .25s ease}.business-card:hover{box-shadow:0 14px 32px rgba(0,0,0,.14);transform:translateY(-4px)}.card-logo{align-items:center;display:flex;justify-content:center;margin-bottom:16px}.card-logo img{height:auto;max-width:180px;object-fit:contain}.card-content{flex-grow:1}.card-title{color:#111827;font-size:1.1rem;font-weight:600;margin-bottom:10px}.card-description{color:#4b5563;font-size:.95rem;line-height:1.5}.card-footer{margin-top:20px}.card-link{color:#2563eb;display:inline-block;font-size:.9rem;font-weight:600;text-decoration:none}.card-link:hover{text-decoration:underline}.card-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.badge{background-color:#e5e7eb;border-radius:999px;color:#111827;font-size:.7rem;font-weight:600;padding:4px 8px;white-space:nowrap}.badge-featured{background-color:#fde68a;color:#92400e}.badge-category{background-color:#dbeafe;color:#1e40af}.badge-city{background-color:#dcfce7;color:#166534}.badge-school{background-color:#ede9fe;color:#5b21b6}.no-results{color:#6b7280;display:none;font-size:1rem;margin-top:40px;text-align:center}.business-detail{margin:60px auto;max-width:900px;padding:0 20px}.detail-header{align-items:center;display:grid;gap:32px;grid-template-columns:140px 1fr;margin-bottom:40px}.detail-logo img{height:auto;max-width:140px;object-fit:contain;width:100%}.detail-title h1{color:#111827;font-size:2rem;font-weight:700;margin-bottom:12px}.detail-meta{display:flex;flex-wrap:wrap;gap:8px}.meta-item{background-color:#f3f4f6;border-radius:999px;color:#374151;font-size:.75rem;font-weight:600;padding:6px 10px}.detail-content h2{color:#111827;font-size:1.25rem;margin-bottom:12px}.detail-content p{color:#4b5563;font-size:1rem;line-height:1.7}.detail-footer{margin-top:48px}.back-link{color:#2563eb;font-size:.9rem;font-weight:600;text-decoration:none}.back-link:hover{text-decoration:underline}@media (max-width:640px){.detail-header{grid-template-columns:1fr;text-align:center}.detail-logo{margin:0 auto}.detail-meta{justify-content:center}}