.block-cards .cards-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.block-cards .card {
    background: var(--bg-card);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.block-cards .card:hover { transform: translateY(-4px); box-shadow: var(--shadow-hover); }
.block-cards .card-image img { width: 100%; height: 220px; object-fit: cover; }
.block-cards .card-body {
    padding: 24px;
    display: flex; flex-direction: column;
    flex: 1; gap: 12px;
}
.block-cards .card-body .btn { margin-top: auto; align-self: flex-start; }
