/* ==========================================================================
   FAMÍLIA 7: SEÇÃO 7 - LOCALIZAÇÃO
   ========================================================================== */

/* --- Estilos Padrão (Desktop-First) --- */
.location-section { padding: 120px 4%; background-color: #fff; color: #111; position: relative; z-index: 5; }
.location-container { max-width: 1400px; margin: 0 auto; }
.location-header { margin-bottom: 60px; }
.location-pre-title { font-family: 'Poppins', sans-serif; font-size: 0.9rem; font-weight: 500; color: #888; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 15px; }
.location-main-title { font-family: 'Poppins', sans-serif; font-size: 2.8rem; font-weight: 500; color: #111; line-height: 1.3; }
.location-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px 30px; }
.location-card { text-decoration: none; color: inherit; display: block; }
.location-photo { width: 100%; aspect-ratio: 1 / 1; margin-bottom: 20px; overflow: hidden; }
.location-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1); }
.location-card:hover .location-photo img { transform: scale(1.05); }
.location-info { font-family: 'Poppins', sans-serif; }
.location-name { font-size: 1.2rem; font-weight: 500; margin-bottom: 8px; }
.location-time { font-size: 1rem; color: #888; }

/* --- Responsividade da Seção 7 --- */
@media (max-width: 991px) {
    .location-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .location-header { text-align: center; }
    .location-main-title { font-size: 2.2rem; }
}

@media (max-width: 575px) {
    .location-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }
    .location-card {
        max-width: 400px;
        margin: 0 auto;
    }
}
