.location-section { background: var(--white); border-radius: 30px; padding: 4rem; margin: 4rem auto; max-width: 1200px; box-shadow: 0 10px 40px var(--shadow); text-align: center; }
.location-section h2 { font-size: 2.2rem; color: var(--purple-dark); margin-bottom: 1rem; font-weight: 800; }
.location-section > p { color: var(--purple-text); opacity: 0.7; margin-bottom: 2rem; }
.location-card { background: linear-gradient(135deg, var(--pink-bg), var(--pink-light)); border-radius: 20px; padding: 2.5rem; display: inline-flex; align-items: center; gap: 2rem; border: 2px dashed var(--purple-light); flex-wrap: wrap; justify-content: center; }
.location-icon { width: 80px; height: 80px; background: var(--purple-btn); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 2rem; color: var(--white); box-shadow: 0 8px 25px rgba(186, 85, 211, 0.3); }
.location-details { text-align: right; }
.location-details h3 { color: var(--purple-dark); font-size: 1.3rem; margin-bottom: 0.5rem; }
.location-details p { color: var(--purple-text); font-size: 1.1rem; font-weight: 600; }
.location-details .map-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 0.8rem; color: var(--purple-btn); text-decoration: none; font-weight: 700; transition: all 0.3s ease; }
.location-details .map-link:hover { color: var(--purple-dark); gap: 12px; }

@media (max-width: 768px) {
    .location-section { padding: 2rem; margin: 2rem 1rem; }
    .location-card { flex-direction: column; text-align: center; }
    .location-details { text-align: center; }
}