/**
 * @file
 * Styling for the Travel Packages block.
 */

.travel-packages {
  padding: 3rem 0;
  background-color: #fff;
}

/* Headings */
.packages-heading {
  color: #e9a542;
  font-size: 1.25rem;
  font-weight: 500;
  text-transform: capitalize;
}

.packages-subheading {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 2rem;
}

/* Package cards */
.package-card {
  transition: transform 0.3s ease;
}

.package-card:hover {
  transform: translateY(-5px);
}

.package-image-wrapper {
  overflow: hidden;
  height: 240px;
  position: relative;
}

.package-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.package-card:hover .package-image-wrapper img {
  transform: scale(1.05);
}

.package-title {
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: #333;
}

.package-description {
  color: #6c757d;
  font-size: 0.9rem;
  line-height: 1.5;
  margin-bottom: 1rem;
}

.package-btn {
  border-color: #28a745;
  color: #28a745;
  padding: 0.5rem 1.5rem;
  font-weight: 500;
  text-transform: capitalize;
  align-self: flex-start;
}

.package-btn:hover {
  background-color: #28a745;
  color: #fff;
}

/* View all button */
.view-all-btn {
  background-color: #e9a542;
  border-color: #e9a542;
  padding: 0.5rem 2rem;
  font-weight: 500;
}

.view-all-btn:hover {
  background-color: #d69331;
  border-color: #d69331;
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
  .packages-subheading {
    font-size: 1.75rem;
  }

  .package-image-wrapper {
    height: 200px;
  }
}
