body { background: #f5f6f8; }

.page-wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px 60px; }

.breadcrumbs { padding: 14px 0; font-size: 13px; color: #999; }
.breadcrumbs a { color: #999; text-decoration: none; }
.breadcrumbs a:hover { color: #2d9e00; }
.breadcrumbs span { margin: 0 6px; }

.page-title { font-size: 28px; font-weight: 800; color: #111; margin-bottom: 8px; }
.page-sub { font-size: 15px; color: #999; margin-bottom: 32px; }

.brands-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 1024px) { .brands-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 500px)  { .brands-grid { grid-template-columns: repeat(2, 1fr); } }

.brand-card { background: #fff; border: 1px solid #e8e8e8; border-radius: 14px; padding: 28px 16px 20px; display: flex; flex-direction: column; align-items: center; gap: 14px; text-decoration: none; color: inherit; transition: box-shadow .2s, transform .2s, border-color .2s; cursor: pointer; }
.brand-card:hover { box-shadow: 0 6px 24px rgba(0,0,0,.1); transform: translateY(-3px); border-color: #2d9e00; }

.brand-logo-wrap { width: 100px; height: 70px; display: flex; align-items: center; justify-content: center; }
.brand-logo-wrap img { max-width: 100%; max-height: 100%; object-fit: contain; }
.brand-logo-placeholder { width: 100px; height: 70px; background: #f5f5f5; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 36px; color: #ddd; }

.brand-name { font-size: 15px; font-weight: 800; color: #111; text-align: center; }
.brand-count { font-size: 12px; color: #999; font-weight: 600; }

.empty-state { text-align: center; padding: 80px 0; color: #bbb; }
.empty-state p { font-size: 16px; margin-top: 12px; }
