.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}.cat-card{display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-mist);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);height:100%}.cat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:#fff0}.cat-media{aspect-ratio:4 / 3;overflow:hidden;background:var(--color-cloud)}.cat-media img{width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:transform 600ms var(--ease)}.cat-card:hover .cat-media img{transform:scale(1.06)}.cat-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);flex:1}.cat-body h3{text-transform:none;font-size:1.3rem}.cat-body p{font-size:.9rem;color:var(--color-muted);line-height:1.6;flex:1}.cat-link{margin-top:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:.85rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--color-graphite)}.cat-card:hover .cat-link{color:var(--color-red)}.cat-link i{transition:transform var(--dur-fast) var(--ease);font-style:normal}.cat-card:hover .cat-link i{transform:translateX(4px)}@media (max-width:1080px){.cat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.cat-grid{grid-template-columns:1fr}}