.card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card .card-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.card .card-content a {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  text-decoration: none;
}

/* Empurra o preço para o rodapé do card */
.card .card-content a p:last-child {
  margin-top: auto;
  padding-top: 1rem;
}

/* Destaque visual para o botão de filtro quando há mudanças */
button[type="submit"].has-changes {
  background-color: var(--secondary) !important;
  border-color: var(--secondary) !important;
  color: white !important;
  animation: pulse 2s infinite;
  box-shadow: 0 0 0 0 rgba(255, 107, 53, 0.7);
}

button[type="submit"].has-changes:hover {
  background-color: var(--secondary) !important;
  border-color: var(--secondary) !important;
  box-shadow: 0 0 0 0.2rem rgba(255, 107, 53, 0.5);
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 107, 53, 0.7);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255, 107, 53, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 107, 53, 0);
  }
}