/* Tarjetas compactas para que las modalidades ocupen mejor el ancho disponible. */
.event-categories-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
}

.event-category-card {
    padding: 1.35rem 1.1rem;
}

.event-category-card .card-icon {
    width: 48px;
    height: 48px;
    margin-bottom: .85rem;
}

.event-category-card .card-icon i {
    width: 23px;
    height: 23px;
}

.event-category-card h3 {
    font-size: 1.05rem;
    line-height: 1.18;
}

.event-category-card p {
    font-size: .82rem;
    line-height: 1.55;
}

.past-events-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    max-width: 900px;
    margin: 0 auto;
}

@media (max-width: 1080px) {
    .event-categories-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .event-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .8rem;
    }

    .event-category-card {
        padding: 1.15rem .9rem;
    }

    .past-events-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .event-categories-grid {
        grid-template-columns: 1fr;
    }
}
