/* destination.css */
.destination-list {
  padding: 2rem;
}

.destination-list h1 {
  font-size: 2.5rem;
  margin-bottom: 1.5rem;
}

.destination-list .cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
}

.destination-list .destination-card {
  border: 1px solid #ccc;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  transition: transform 0.2s ease;
  display: flex;
  flex-direction: column;
  height: 100%; /* let grid define height */
}

.destination-list .destination-card:hover {
  transform: scale(1.03);
}

/* Image area */
.destination-card .card-image {
  width: 100%;
  height: 180px;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
}

/* Content area */
.destination-card .card-content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  flex: 1; /* fill remaining space */
}

/* Title */
.destination-card .card-content h2 {
  margin: 0 0 0.5rem;
  font-size: 1.25rem;
  flex-shrink: 0;
}

/* Description */
.destination-card .card-content p {
  color: #555;
  font-size: 0.95rem;
  flex: 1;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4; /* max 4 lines */
  line-clamp: 4;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}

/* Optional: button or footer */
.destination-card .card-content a {
  margin-top: 0.5rem;
  flex-shrink: 0;
}
