/* Mosaico sin celdas vacías: cada franja completa las doce columnas. */
.home-spaces__grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-rows: 160px;
    gap: 1.25rem;
}

.home-space-card {
    grid-column: span 4;
    grid-row: span 2;
    min-height: 0;
}

/* Paisajes protagonistas arriba; formatos menores completan la segunda franja. */
.home-space-card:nth-child(1) { grid-column: span 8; grid-row: span 3; }
.home-space-card:nth-child(2) { grid-column: span 4; grid-row: span 3; }
.home-space-card:nth-child(3) { grid-column: span 4; grid-row: span 2; }
.home-space-card:nth-child(4) { grid-column: span 5; grid-row: span 2; }
.home-space-card:nth-child(5) { grid-column: span 3; grid-row: span 2; }
.home-space-card:nth-child(6) { grid-column: span 7; grid-row: span 3; }
.home-space-card:nth-child(7) { grid-column: span 5; grid-row: span 3; }

@media (max-width: 900px) {
    .home-spaces__grid { grid-auto-rows: 205px; }

    .home-space-card,
    .home-space-card:nth-child(n) {
        grid-column: span 6;
        grid-row: span 2;
        min-height: 0;
    }

    .home-space-card:nth-last-child(1):nth-child(odd) { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
    .home-spaces__grid { grid-auto-rows: 210px; }

    .home-space-card,
    .home-space-card:nth-child(n) {
        grid-column: 1 / -1;
        grid-row: span 2;
        min-height: 0;
    }
}
