#mapa{
  height:520px;
  border-radius:12px;
  margin-top:20px;
}

.popup-cidade{
  max-width:255px;
  font-family:Georgia, serif;
  line-height:1.6;
  background:rgba(255,255,255,0.45);
  padding:8px 10px;
  border-radius:10px;
}

.popup-titulo{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  position:relative;
  text-align:center;
  font-size:20px;
  font-weight:700;
  color:var(--cor-marrom);
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid #cfb48b;
}

.popup-titulo::before,
.popup-titulo::after{
  content:"";
  display:none;
}

.popup-bandeira{
  width:24px !important;
  height:16px !important;
  min-width:24px;
  max-width:24px;
  min-height:16px;
  max-height:16px;
  object-fit:cover;

  display:block !important;
  border-radius:2px;

  margin:0 !important;
  padding:0 !important;

  background:transparent !important;
  border:none !important;
  box-shadow:none !important;

  transform:none !important;
}

.popup-cabecalho-cidade{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.popup-nome-cidade{
  display:inline-block;
  line-height:1.1;
}

.popup-texto{
  font-size:14px;
  color:#4d4338;
}

.leaflet-popup-content-wrapper{
  background:#f7efdf url("../imagens/fundo-mapa.jpg") center/cover !important;
  border-radius:14px !important;
  border:1px solid var(--cor-destaque-clara) !important;
  padding:1px;
  box-shadow:0 10px 24px rgba(0,0,0,0.16) !important;
}

.leaflet-popup-content{
  margin:10px 12px !important;
}

.leaflet-popup-tip{
  background:#f7efdf !important;
}

.leaflet-container a.leaflet-popup-close-button{
  color:#8b6a4a !important;
  font-size:20px !important;
  padding:8px 10px 0 0 !important;
}

.leaflet-container a.leaflet-popup-close-button:hover{
  color:var(--cor-marrom) !important;
}

.pin-mapa{
  width:18px;
  height:18px;
  background:var(--cor-destaque);
  border:3px solid #fff;
  border-radius:50%;
  box-shadow:0 0 0 rgba(139,94,60,0.4);
  animation:pulsePin 2s infinite;
}

@keyframes pulsePin{
  0%{transform:scale(1);box-shadow:0 0 0 0 rgba(139,94,60,0.5);}
  50%{transform:scale(1.3);box-shadow:0 0 0 10px rgba(139,94,60,0);}
  100%{transform:scale(1);box-shadow:0 0 0 0 rgba(139,94,60,0);}
}
