.contato {
  padding: 48px 16px;
  background-color: #f9f6f0;
  margin-left: 0;
  padding-left: 80px;
  max-width: 1200px;
}

.contato-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;


}


.breadcrumb {
  display: flex;
  gap: 8px;
  font-size: 14px;
  opacity: 0.75;
  margin-bottom: 14px;
}

.breadcrumb a {
  text-decoration: none;
}

.contato h1 {
  font-size: clamp(28px, 3.2vw, 40px);
  margin: 0 0 10px;
}

.contato-sub {
  margin: 0 0 22px;
  font-size: 16px;
  line-height: 1.6;
  opacity: 0.85;
  text-align: center;
}

.contato-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  width: 100%;
  margin: 0 auto;
  
  
  
 
}

.contato-card {
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
  padding: 18px;
  box-shadow: 0 10px 22px rgba(0,0,0,0.06);
  background: #fff;
 width: 100%;
 max-width: 520px;  
 margin: 0 auto;
 
}

.contato-card h2 {
  font-size: 18px;
  margin: 0 0 12px;
  color: #7f674d;
}

.contato-list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
  display: grid;
  gap: 10px;
}

.contato-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.06);
  text-decoration: none;
  transition: 0.2s ease;
  word-break: break-word; /* quebra e-mail/links no celular */
}

.contato-link:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 14px rgba(0,0,0,0.06);
}

.icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(0,0,0,0.05);
  flex: 0 0 28px;
}

.endereco {
  margin: 0;
  line-height: 1.6;
  opacity: 0.9;
}

.mapa {
  width: 100%;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.08);
  aspect-ratio: 16 / 10; /* altura automática e responsiva */
}

.mapa iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.btn-rota {
  display: inline-block;
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  text-decoration: none;
  border: 1px solid rgba(0,0,0,0.12);
}

/* Desktop */
@media (min-width: 860px) {
  .contato-grid {
    grid-template-columns: 1.1fr 0.9fr; /* info maior, mapa menor */
    align-items: start;
   
  }
}

/* Container da imagem */
.contato-hero {
  width: 100%;
  margin: 12px 0 20px;
  border-radius: 14px;
  overflow: hidden;
}

/* Imagem responsiva */
.contato-hero img {
  width: 100%;
  height: 180px;          /* mobile */
  object-fit: cover;     /* não distorce */
  display: block;
}

/* Tablet */
@media (min-width: 600px) {
  .contato-hero img {
    height: 220px;
  }
}

/* Desktop */
@media (min-width: 992px) {
  .contato-hero img {
    height: 260px;
  }
}