/* Prevent horizontal scrolling */
html, body {
  overflow-x: hidden;
}

/* Smooth fade-in animations */
.fade-in-right {
  opacity: 0;
  transform: translateX(50px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in-left {
  opacity: 0;
  transform: translateX(-50px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.appear {
  opacity: 1;
  transform: translateX(0);
}

/* Custom class to keep elements invisible initially */
.not-visible {
  opacity: 0;
}

/* Package Styles */
.package {
  margin-bottom: 50px;
}

.package-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #5D3A1A;
}

.package-price {
  font-size: 1rem;
  color: #444;
  margin-bottom: 10px;
}

.package-list {
  list-style-type: disc;
  margin-left: 20px;
  color: #555;
}

.package-img {
  height: 200px;
  width: 100%;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

/* Room Image styling for uniform appearance */
.room-image {
  width: 100%;
  object-fit: cover;
  display: block;
}

/* Mobile view adjustments */
@media only screen and (max-width: 768px) {
  /* Rooms page images get a fixed height on mobile */
  .room-image.rooms-page {
    height: 250px;
  }
  /* About section images use their natural height on mobile */
  .room-image.about-image {
    height: auto;
  }
}

/* Desktop view adjustments */
@media only screen and (min-width: 769px) {
  /* Rooms page images: taller height to avoid zoom */
  .room-image.rooms-page {
    height: 600px; /* Adjust as needed */
  }
  /* About section images: set a uniform height */
  .room-image.about-image {
    height: 300px; /* Adjust as needed for uniformity */
  }
}

/* Travel Packages Video Background Styling */
#travel-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translate(-50%, -50%);
  z-index: -1;
  filter: brightness(0.7);
}

/* Dark Forest Green Theme for Navigation and Footer */
.nav-sage {
  background-color: #006400;
}

.footer-sage {
  background-color: #006400;
}

/* Underlined Navigation Link */
.nav-link {
  text-decoration: underline;
}

/* Additional styles for hero and parallax */
.hero-overlay {
  background-attachment: fixed;
}

/* Live Hover Animation for Room Cards */
.room-card {
  transition: transform 0.3s ease;
}
.room-card:hover {
  transform: scale(1.02);
}
.room-card:hover .room-image {
  transform: scale(1.05);
  transition: transform 0.3s ease;
}

/* List Animation for Amenities Items: appear from left */
.amenities-list li {
  opacity: 0;
  transform: translateX(-20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
div.visible .amenities-list li:nth-child(1) {
  transition-delay: 0.2s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(2) {
  transition-delay: 0.4s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(3) {
  transition-delay: 0.6s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(4) {
  transition-delay: 0.8s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(5) {
  transition-delay: 1s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(6) {
  transition-delay: 1.2s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(7) {
  transition-delay: 1.4s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(8) {
  transition-delay: 1.6s;
  opacity: 1;
  transform: translateX(0);
}
div.visible .amenities-list li:nth-child(9) {
  transition-delay: 1.8s;
  opacity: 1;
  transform: translateX(0);
}

/* RESPONSIVE MEDIA QUERIES */

/* For mobile devices (max-width: 600px) */
@media only screen and (max-width: 600px) {
  .hero-overlay:not(.video-hero):not(.rooms-hero) {
    background: url('images/SNY01523.JPG') no-repeat center center/cover;
  }
  #travel-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* For small tablets (min-width: 601px) and (max-width: 768px) */
@media only screen and (min-width: 601px) and (max-width: 768px) {
  .hero-overlay:not(.video-hero):not(.rooms-hero) {
    background: url('images/SNY01523.JPG') no-repeat center 40%/cover;
  }
}

/* For larger devices (min-width: 769px) */
@media only screen and (min-width: 769px) {
  .hero-overlay:not(.video-hero):not(.rooms-hero) {
    background: url('images/SNY01523.JPG') no-repeat center 30%/cover;
    min-height: 500px;  /* Increase height for larger screens */
  }
}
