header { 
    background: #111; 
    padding: 10px 0; 
    border-bottom: 1px solid #333; 
    position: sticky; 
    top: 0; 
    z-index: 1000; 
}

.header-container { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    max-width: 1200px; 
    margin: auto; 
    padding: 0 20px; 
}

.logo img { 
    max-height: 100px; 
    width: auto; 
}

.nav-links a { 
    color: #fff; 
    margin-left: 20px; 
    text-decoration: none; 
    font-weight: 500; 
    cursor: pointer; 
}

.nav-links a:hover { 
    color: var(--accent); 
}

.hero { 
    height: 60vh; 
    background: linear-gradient(rgba(0,0,0,0.8), rgba(0,0,0,0.8)), 
        url('https://images.unsplash.com/photo-1555066931-4365d14bab8c?auto=format&fit=crop&w=1950&q=80'); 
    background-size: cover; 
    background-position: center;
    display: flex; 
    align-items: center; 
    text-align: center;
    color: #fff;
}

.hero-content { 
    max-width: 800px; 
    margin: auto; 
    padding: 20px; 
}

section { 
    padding: 80px 20px; 
}

h2 { 
    text-align: center; 
    font-size: 2.5rem; 
    margin-bottom: 50px; 
    color: var(--primary); 
}

.grid-cards { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); 
    gap: 30px; 
    max-width: 1200px; 
    margin: auto; 
}

.map-section { 
    width: 100%; 
    display: flex; 
    justify-content: center; 
    padding: 40px 0; 
    background: var(--dark); 
}

.map-container { 
    width: 60%; 
    height: 400px; 
    border-radius: 15px; 
    overflow: hidden; 
    border: 2px solid var(--primary); 
    position: relative; 
}

.main-footer { 
    background-color: var(--darker); 
    color: #b3b3b3; 
    padding: 80px 0 30px 0; 
    border-top: 4px solid var(--primary); 
    font-size: 0.95rem; 
}

.footer-grid { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); 
    gap: 40px; 
    max-width: 1200px; 
    margin: auto; 
    padding: 0 20px; 
    margin-bottom: 60px; 
}

.footer-col h4 { 
    color: #fff; 
    font-size: 1.1rem; 
    margin-bottom: 25px; 
    text-transform: uppercase; 
    border-left: 3px solid var(--accent); 
    padding-left: 10px; 
}

.footer-col ul li { 
    margin-bottom: 12px; 
    list-style: none; 
}

.footer-col ul li a { 
    cursor: pointer; 
    color: #b3b3b3; 
    text-decoration: none; 
    transition: 0.3s; 
}

.footer-col ul li a:hover { 
    color: var(--accent); 
    padding-left: 5px; 
}

.copyright { 
    text-align: center; 
    padding: 30px 20px; 
    border-top: 1px solid #333; 
    font-size: 0.85rem; 
    background: var(--darker); 
    color: #fff;
}

@media (max-width: 768px) { 
    .map-container { width: 90%; } 
    .hero h1 { font-size: 2.2rem; } 
}

#localizacao {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#localizacao .map-container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

#map {
  width: 100%;
  height: 450px;
}
