/* Premium Luxury Travel - Emerald Elegance Color Scheme */

/* General Styles */
.topNavContainer, .copyright {
  background: #FFFFFF; /* Clean white */
  border-bottom: 1px solid #E5E7EB; /* Subtle border */
  color: #1F2937; /* Dark charcoal text */
}

.copyright a {
  color: #4B5563; /* Medium gray for links */
  text-decoration: underline;
}

h1, h2 {
  color: #0F3C4C; /* Deep teal for headings */
}

.fa-bars, .fa-times, a.mobileHomeLink, a.mobileHomeLink:hover, .mobileMenuLink, .mobileMenuLink:hover {
  color: #1E5156 !important; /* Dark teal */
}

.visitorRating {
  color: #1E5156 !important; /* Dark teal */
}

.topNav a {
  color: #12362F; /* Deep emerald for navigation */
}

.topNav a:hover {
  color: #10B981; /* Vibrant emerald for hover state */
}

a {
  color: #12362F; /* Deep emerald for links */
  text-decoration: underline;
}

a:hover {
  color: #10B981; /* Vibrant emerald for hover */
}

.breadcrumbsContainer {
  background: #ECFDF5; /* Light mint */
}

.breadcrumbs li a::after, .breadcrumbs li div::after { 
  border-left: 30px solid #ECFDF5; /* Match breadcrumb container */
}

.breadcrumbs li a:hover { 
  background: #D1FAE5; /* Slightly darker mint for hover */
}

.breadcrumbs li a:hover:after { 
  border-left-color: #D1FAE5 !important; /* Match hover background */
}

.breadcrumbs li a, .breadcrumbs li div {
  background: #ECFDF5; /* Light mint */
  color: #12362F; /* Deep emerald text */
}

h1.showLodgesHeader, .footer, .a3AccommName, h2.newHeader, h4.newHeader, .attractionsTitle {
  background: #064E3B; /* Deep emerald for headers */
  color: #ffffff;
}

.attractionsTitle span {
  color: #065F46; /* Rich emerald */
}

h2.foundNum {
  color: #1E5156; /* Dark teal */
}

.refineHeader, .destinationsHeader, .listPropertyContainer, .leftMenuHeader {
  background: #ECFDF5; /* Light mint */
  color: #0F3C4C; /* Deep teal text */
  border-left: 4px solid #10B981; /* Vibrant emerald accent */
}

.container {
  color: #12362F; /* Deep emerald for body text */
}

/* ★★★ STANDOUT BUTTONS - THE FOCAL POINT ★★★ */
.viewButton, .moreInfoButton, .viewAccomsButtonDesktop, .viewAccomsButtonMobile, .newButton, .carousel-view-button {
  font-size: 16px;
  padding: 16px 14px;
  box-sizing: border-box;
  border-radius: 10px;
  color: white;
  background: #059669; /* Emerald green - elegant and distinctive */
  text-align: center;
  width: 100%;
  font-weight: bold;
  border: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(5, 150, 105, 0.4); /* Subtle glow effect */
  position: relative;
  overflow: hidden;
}

.viewButton:hover, .newButton:hover, .moreInfoButton:hover, .carousel-view-button:hover {
  background: #047857; /* Deeper emerald for hover */
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 7px 20px rgba(4, 120, 87, 0.5); /* Enhanced glow on hover */
  color: white;
}

/* Button after effect - subtle shine animation */
.viewButton:after, .newButton:after, .moreInfoButton:after, .carousel-view-button:after {
  content: "";
  position: absolute;
  top: -50%;
  left: -60%;
  width: 20%;
  height: 200%;
  background: rgba(255, 255, 255, 0.3);
  transform: rotate(30deg);
  transition: all 0.8s;
}

.viewButton:hover:after, .newButton:hover:after, .moreInfoButton:hover:after, .carousel-view-button:hover:after {
  left: 120%;
}

/* Rating Element */
.reevooScore, .ratingMobile {
  background: #F0FDFA; /* Very light mint */
  color: #0F3C4C; /* Deep teal text */
  padding: 5px 10px;
  border-radius: 4px;
  border: 1px solid #D1FAE5;
}

.innerLogo img {
  max-width: 190px;
}

/* Info Text */
.infoTextContainer {
  display: flex;
  flex-wrap: wrap;
}

.infoTextContainer i {
  color: #10B981 !important; /* Vibrant emerald */
}

.infoText {
  margin-right: 15px;
  color: #12362F; /* Deep emerald */
}

.infoText i {
  color: #10B981; /* Vibrant emerald */
  margin-right: 5px;
}

/* Hero Section */
.availabilityHeaderContainer {
  position: relative;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.6)), url('/images/cottage-hero.jpg') no-repeat center center;
  background-size: cover;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 10px;
}

.heroTitle {
  color: white !important;
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 2px;
  margin-bottom: 5px;
  text-transform: uppercase;
  animation: fadeInDown 1.2s ease-out;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.heroSubtitle {
  color: white !important;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: 1px;
  margin-bottom: 15px;
  text-transform: uppercase;
  animation: fadeInDown 1.2s ease-out 0.2s;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.heroDivider {
  width: 120px;
  height: 4px;
  background: #10B981; /* Emerald accent to match buttons */
  margin: 15px auto;
  animation: scaleIn 1.5s ease-out;
}

.heroTagline {
  color: white !important;
  font-size: 1.1rem;
  margin-top: 0;
  animation: fadeInLeft 1.2s ease-out;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

/* Banner text - ensuring visibility */
.bannerText, .bannerContainer h1, .bannerContainer h2, .bannerContainer p {
  color: white !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7);
  background-color: rgba(6, 78, 59, 0.7); /* Semi-transparent deep emerald */
  padding: 8px 15px;
  border-radius: 6px;
}

/* Mobile Adjustments */
@media only screen and (max-width: 768px) {
  h1.showLodgesHeader {
    color: white;
  }

  .newButton {
    border-radius: 8px;
    margin: 10px 0;
  }
  
  .mobAvailButt {
    background: #059669; /* Emerald to match desktop buttons */
    color: white;
    padding: 12px;
    text-align: center;
    border-radius: 8px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 1px;
    box-shadow: 0 4px 10px rgba(5, 150, 105, 0.3);
  }
  
  .favourites {
    color: #D1FAE5; /* Light mint */
  }
}

/* Mobile Adjustments */
@media only screen and (max-width: 600px) {
  .infoTextContainer {
    justify-content: center !important;
    gap: 20px;
  }
 
  .infoText {
    font-size: 12pt !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .infoText i {
    font-size: 15pt !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-bottom: 10px !important;
    color: #10B981 !important; /* Vibrant emerald */
  }

  .shortDescriptionMob {
    font-size: 11pt !important;
  }
}