.cat-page { padding: 40px 0 80px; }
.cat-page h1 { margin-bottom: 32px; }

/* ===== Kategória kártyák ===== */
.category-grid { display: flex; flex-wrap: wrap; gap: 24px; }
.cat-card { flex: 0 0 226px; width: 226px; height: 294px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid rgba(0, 0, 0, .08); border-radius: 16px; background: #f8f6f3; color: var(--deep-olive); text-decoration: none; transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease; }
.cat-card:hover { text-decoration: none; transform: translateY(-4px); box-shadow: 0 12px 24px -12px rgba(0, 0, 0, .25); }

.cat-media { flex: 0 0 auto; overflow: hidden; }
.cat-media img, .cat-placeholder { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform .5s cubic-bezier(.2, .8, .2, 1); }
.cat-placeholder { background: var(--olive); }
.cat-card:hover img, .cat-card:hover .cat-placeholder { transform: scale(1.05); }

.cat-card span { flex: 1; display: flex; align-items: center; padding: 0 18px; font-family: var(--font-heading); font-size: 16px; font-weight: 700; line-height: 22px; }

/* ===== Reszponzív ===== */
@media (max-width: 1440px) { .category-grid { gap: 20px; } }

@media (max-width: 1280px) {
.cat-page { padding: 24px 0 calc(var(--mobil-nav-h, 72px) + 32px); }
.cat-page h1 { font-size: 32px; line-height: 40px; margin-bottom: 24px; }
.category-grid { gap: 16px; }
.cat-card { flex: 0 0 calc((100% - 2 * 16px) / 3); width: auto; height: auto; }
.cat-media img, .cat-placeholder { aspect-ratio: 2 / 3; }
.cat-card span { padding: 16px 14px; }
}

@media (max-width: 700px) {
.cat-card { flex-basis: calc((100% - 16px) / 2); }
.cat-card span { padding: 14px 12px; font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) { .cat-card, .cat-media img, .cat-placeholder { transition-duration: .01ms !important; } }