 :root {
     --primary-color: #fc8d43;
     --secondary-color: #28a745;
     --text-color: #52514d;
     --light-text-color: #666;
     --background-color: #f8f9fa;
     --card-background: #fff;
     --border-radius: 8px;
     --shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
     --light-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
     --active-background-color: #fc8d43;
 }

 body {
     font-family: 'Montserrat', sans-serif;
     line-height: 1.5;
     margin: 0;
     padding: 0;
     background-color: var(--background-color);
     color: var(--text-color);
     overflow-x: hidden;
     scroll-behavior: smooth;
font-size:14px;
	
 }

 h3 {
     font-weight: 600;
     font-size: 1.2rem;
 }

 .container {
     max-width: 1050px;
     margin: 0 auto;
     padding: 20px 15px 0px;
 }

 .container-slider {
     max-width: 1150px;
     margin-left: 123px;
 }

.container-slider .mt-5{
	margin-top:1.4rem !important;
}
.header-content p{
	margin-bottom:2px;
}
 .customoverlaySlide {
     width: 100%;
     display: none;
     background: transparent;
     position: fixed;
     z-index: 7;
     height: 100%;
 }
.container-slider .slick-track{
	mrgin-right:0px;
	margin-left:0px;
}

 .absolute {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     width: max-content;
     margin: auto;
     padding: 15px;
 }

 /* --- Header Section --- */
 header {
     position: relative;
     height: 400px;
     overflow: hidden;
     color: white;
 }

 .custom-menu ul.navbar-nav li.nav-item a.nav-link {
     font-weight: 500;
     color: rgb(0, 0, 0);
     font-size: 16px;
 }

.slick-prev, .slick-next{
	top:35% !important;
}
.slick-prev:before, .slick-next:before{
	font-size:30px !important;
	color: #fe8c3e !important;
}
 header img {
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     filter: brightness(0.6);
     z-index: 1;
 }

 header .header-content {
     position: absolute;
     z-index: 2;
     padding: 20px 15px;
     background: rgba(0, 0, 0, 0.8);
     /* border-radius: var(--border-radius); */
     max-width: 100%;
     box-shadow: var(--shadow);
     animation: fadeIn 1s ease-out;
     bottom: 0px;
 }

 header h1 {
     /* font-family: 'Playfair Display', serif; */
     font-size: 2.6em;
     margin-bottom: 8px;
     text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.6);
     letter-spacing: 0.1px;
     width: 540px;
     white-space: normal;
 }

 header p {
     font-size: 0.85em;
     margin-bottom: 9px;
     margin-left: auto;
     margin-right: auto;
     line-height: 1.2rem;
 }

 .hero-stats {
     display: flex;
     justify-content: space-between;
     gap: 12px;
     flex-wrap: wrap;
 }

 .stat-item {
     background: rgba(255, 255, 255, 0.2);
     backdrop-filter: blur(5px);
     padding: 8px 15px;
     border-radius: var(--border-radius);
     font-weight: 600;
     font-size: 0.9em;
     display: flex;
     align-items: center;
     gap: 6px;
     border: 1px solid rgba(67, 65, 65, 0.2);
     transition: transform 0.2s ease, background 0.2s ease;
 }

.container h2.mt-5 {
    margin-top: 10px !important;
	margin-bottom:0px;
text-align: center;
    font-size: 1.9rem;

}

 .stat-item:hover {
     transform: translateY(-2px);
     background: rgba(255, 255, 255, 0.3);
 }

 .stat-item i {
     font-size: 1.2em;
     color: var(--primary-color);
     filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.2));
 }

 .tect-color-white {
     color: var(--text-color-white);
 }

 p {
     color: var(--normal-text-color);
     line-height: 24px;

 }

 footer .footer-link {
     list-style: none;
     padding: 0;
 }

 footer .footer-link li {
     margin-bottom: 10px;
 }

 .popular-slider {
     margin: 0 -10px;
     /* compensates for slide padding */
     overflow: hidden;
 }

 .popular-slider .slick-slide {
     padding: 0 10px;
     box-sizing: border-box;
     max-height: 100%;
     height: 280px;
 }

 .things-todo {
     margin: 0 -10px;
     /* compensates for slide padding */
     overflow: hidden;
 }

 .things-todo .slick-slide {
     padding: 0 10px;
     box-sizing: border-box;
     max-height: 100%;
     height: 280px;
 }

 .places-toeat {
     margin: 0 -10px;
     /* compensates for slide padding */
     overflow: hidden;
 }

 .places-toeat .slick-slide {
     padding: 0 5px;
     box-sizing: border-box;
     max-height: 100%;
     height: 280px;
 }

 .accomodation {
     margin: 0 -10px;
     /* compensates for slide padding */
     overflow: hidden;
 }

 .accomodation .slick-slide {
     padding: 0 5px;
     box-sizing: border-box;
     max-height: 100%;
     height: 280px;
 }


 footer .footer-link li a {
     text-decoration: none;
     color: var(--active-background-color);
     font-size: 1rem;
     font-weight: 400;
 }

 /* --- General Section Styling --- */
 section {
     /* padding: 30px 0; */
     background-color: var(--background-color);
 }

 /* section:nth-of-type(odd) {
            background-color: #f2f2f2;
        }

        section:nth-of-type(even) {
            background-color: #e9ecef;
        } */

 .custom-menu ul.navbar-nav li.nav-item {
     padding: 5px 20px;
 }

 .text-left {
     text-align: left !important;
 }

 h2 {

     font-size: 1.65em;
     /* color: var(--primary-color); */
     /* text-align: center; */
     margin-bottom: 10px;
     position: relative;
     letter-spacing: 0.1px;
     font-weight: 600;
     margin-top:10px;
 }

 h2::after {
     content: '';
     display: block;
     width: 60px;
     height: 3px;
     /* background-color: var(--primary-color); */
     margin: 8px auto 0;
     border-radius: 1.5px;
 }

 .grid-layout {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
     gap: 15px;
     /* padding-left: 15px;
            padding-right: 15px; */
 }

 .card {
     background-color: transparent;
     border-radius: var(--border-radius);
     box-shadow: none;
     border: none;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     min-height: auto;
     position: relative;
 }

 .card-title {
     font-weight: 600;
     font-size: 1rem;
 }

 .rating {
     color: #52514d;
     font-size: 13px !important;
     margin-top: 10px;
     font-weight: 600;
 }

 /* .card:hover {
            transform: translateY(-3px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
        } */

 .card h3 {
     color: var(--text-color);
     margin-top: 0;
     font-size: 1.25em;
     margin-bottom: 6px;
     display: flex;
     align-items: baseline;
     gap: 5px;
 }

 .card h3 i {
     font-size: 0.95em;
     color: var(--primary-color);
 }

 .card p {
    
     line-height: 1.4;
     margin-bottom: 0;
 }

 /* --- Best Time to Visit & Weather/Temperature (Side-by-side) --- */
 .top-info-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 20px;
     justify-content: center;
     /* margin-bottom: 30px; */
 }

 /* .top-info-grid>div {
            flex: 1;
            min-width: 300px;
            max-width: 500px;
        } */

 #best-time-card {
     /* background-color: var(--card-background);
            border-radius: var(--border-radius);
            box-shadow: var(--shadow);
            padding: 20px; */
     display: flex;
     flex-direction: column;
     justify-content: center;
     /* align-items: center; */
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 /* #best-time-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
        } */

 .notes-container {
     display: flex;
     gap: 20px;
     flex-wrap: wrap;
 }

 .note-box {
     background: white;
     border-radius: 8px;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
     padding: 20px;
     width: 240px;
     box-sizing: border-box;
 }

 .note-date {
     font-size: 12px;
     color: #999;
     margin-bottom: 10px;
 }

 .note-title {
     font-size: 16px;
     font-weight: 600;
     margin-bottom: 8px;
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .dot {
     width: 8px;
     height: 8px;
     border-radius: 50%;
     display: inline-block;
 }

 .dot.orange {
     background-color: var(--text-color);
 }


 .note-content {
     font-size: 14px;
     color: #444;
     line-height: 1.4;
 }

 .note-box ul {
     padding-left: 18px;
     margin: 0;
     color: #444;
 }

 .note-box ul li {
     font-size: 13px;
     margin-bottom: 4px;
 }

 .note-box img {
     width: 100%;
     height: auto;
     margin-top: 10px;
     border-radius: 4px;
 }

 .circle-icon {
     font-size: 12px;
     margin-left: auto;
     color: #777;
 }

 #best-time-card h3 {
     font-size: 1.1rem;
     margin-bottom: 10px;
     color: var(--text-color);
     /*text-align: center;*/
 }

 #best-time-card h3 i {
     color: var(--primary-color);
 }

 #best-time-card p {
     margin-bottom: 5px;
     font-weight: 300;
 }

 /* Trip Duration Highlight as Sub-Section */
 .trip-duration-highlight {
     background-color: #fff;
     /* Light green to match primary color */
     /* border-left: 4px solid var(--primary-color); */
     padding: 10px 15px;
     margin-top: 15px;
     border-radius: var(--border-radius);
     box-shadow: var(--light-shadow);
     font-weight: 600;
     color: var(--text-color);
     font-size: 0.95em;
 }

 .trip-duration-highlight h3{
    text-align: left !important;
 }
 .trip-duration-highlight strong {
     color: var(--primary-color);
     font-size: 1.05em;
 }

 .hotel-slider img {
     max-height: 300px;
     width: auto;
     /* keep original width ratio */
     margin: 0 auto;
     /* center images horizontally */
     display: block;
     /* remove inline gaps */
     object-fit: cover;
     /* crop images nicely if needed */
 }

 .supportive-services {
     background: #f9f9f9;
     /* padding: 20px; */
     max-width: 640px;
 }

 .supportive-services h4 {
     font-size: 18px;
     font-weight: 600;
     margin-bottom: 15px;
 }

 .services-list {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 .image-container {
     height: 230px;
     overflow: hidden;
     border-radius: 15px;
 }

 .services-list li {
     display: flex;
     align-items: center;
     background: white;
     margin-bottom: 10px;
     padding: 10px 12px;
     border-radius: 5px;
     box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
 }

 .services-list li img {
     width: 24px;
     height: 24px;
     margin-right: 12px;
     object-fit: contain;
 }

 .services-list li span {
     font-size: 14px;
     font-weight: 500;
     color: #333;
 }


 #weather-aqi-card {
     background-color: var(--card-background);
     border-radius: var(--border-radius);
     box-shadow: var(--shadow);
     padding: 20px;
     display: flex;
     flex-direction: column;
     gap: 15px;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 #weather-aqi-card:hover {
     transform: translateY(-3px);
     box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
 }

 .weather-info {
     display: flex;
     align-items: center;
     gap: 15px;
     background: linear-gradient(135deg, var(--primary-color) 0%, #ff8b3c 100%);
     color: white;
     padding: 15px 20px;
     border-radius: var(--border-radius);
     box-shadow: var(--light-shadow);
 }

 .weather-info .icon {
     font-size: 2.8em;
     text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
     flex-shrink: 0;
 }

 .weather-info .details {
     flex-grow: 1;
 }

 .weather-info .details p {
     margin: 2px 0;
     font-size: 0.85em;
     font-weight: 500;
     color: white;
     line-height: 1.3;
 }

 .temperature-info-inner {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
     gap: 10px;
 }

 .temperature-box {
     background-color: var(--background-color);
     padding: 12px 8px;
     border-radius: var(--border-radius);
     box-shadow: var(--light-shadow);
     /* text-align: center; */
     /* min-width: 165px; */
     flex: 1;
     border: 1px solid #eee;
     transition: all 0.2s ease;
     text-align: center;
 }

 .temperature-box:hover {
     box-shadow: var(--shadow);
     transform: scale(1.005);
 }

 .temperature-box h4 {
     color: var(--primary-color);
     font-size: 1em;
     margin-top: 0;
     margin-bottom: 4px;
 }

 .temperature-box p {
     font-size: 0.8em;
     font-weight: 500;
     color: var(--light-text-color);
     margin-bottom: 0;
 }

 .temperature-box .temp-range {
     font-size: 1.1em;
     font-weight: 600;
     color: var(--text-color);
     margin-top: 6px;
     /* margin-left: 15px; */
 }

 /*slide-modal*/

 .slide-modal {
     position: fixed;
     top: 72px;
     right: -100%;
     width: 400px;
     max-width: 90%;
     height: calc(100vh - 72px);
     background: #f8f9fa;
     color: #52514d;
     z-index: 1050;
     transition: right 0.4s ease-in-out;
     overflow-y: auto;
     box-shadow: -4px 0 10px rgba(0, 0, 0, 0.5);
	
 }

 .slide-modal.open {
     right: 0;
 }

 .slide-modal-content {
     padding: 20px 20px 50px;
 }

 .slide-modal img {
     width: 100% !important;
     height: 188px !important;
     margin-bottom: 15px;
object-fit:fill;
background-position:center;

 }
 .slick-slider{
    height: -webkit-fill-available;
    overflow: hidden;
 }
.slick-dots{
    bottom: 25px;
}
 .slide-modal .close-btn {
     position: absolute;
     top: -3px;
     right: 5px;
     font-size: 24px;
     background: transparent;
     border: none;
     color: #111;
     cursor: pointer;
     z-index: 5;
 }


 /* --- Food Section --- */
 .food-section .grid-layout {
     grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
 }

 .food-section .food-item {
     display: flex;
     align-items: flex-start;
     gap: 10px;
     background-color: var(--card-background);
     padding: 12px;
     border-radius: var(--border-radius);
     box-shadow: var(--light-shadow);
     transition: transform 0.2s ease, box-shadow 0.2s ease;
 }

 .food-section .food-item:hover {
     transform: translateY(-2px);
     box-shadow: var(--shadow);
 }

 .food-section .food-item .food-icon {
     min-width: 45px;
     min-height: 45px;
     width: 45px;
     height: 45px;
     display: flex;
     align-items: center;
     justify-content: center;
     border-radius: 50%;
     background-color: var(--primary-color);
     color: white;
     font-size: 1.8em;
     flex-shrink: 0;
     box-shadow: 0 0 0 1px rgba(255, 193, 7, 0.2);
 }

 .food-section .food-item .details h4 {
     margin-top: 0;
     margin-bottom: 3px;
     font-size: 1.15em;
 }

 .food-section .food-item .details .cuisine {
     font-weight: 600;
     color: var(--text-color);
     margin-bottom: 3px;
     display: block;
     font-size: 0.85em;
 }

 .food-section .food-item .details p {
     margin: 0;
     font-size: 0.78em;
     line-height: 1.3;
 }

 /* --- How to Reach --- */
 .travel-options .card {
     text-align: left;
     padding: 15px;
 }

 .travel-options .card i.fa-solid {
     font-size: 3em;
     color: var(--primary-color);
     margin-bottom: 10px;
     display: block;
 }

 .travel-options .card h3 {
     font-size: 1.25em;
     justify-content: left;
     text-align: center;
     margin-top: 0;
 }

 .travel-options .card p {
     padding: 0 5px;
     text-align: left;
 }

 /* --- Accommodation Section (New Separate Section with page width) --- */
 #accommodation {
     padding: 0px 0;
     background-color: var(--background-color);
     /* text-align: center; */
     width: 100%;
     /* Full page width */
     box-sizing: border-box;
     /* Include padding in the width calculation */
 }

 #accommodation .accommodation-content {

     padding: 30px;
     margin: 0 auto;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
     max-width: 1020px;
     width: calc(100% - 60px);
     box-sizing: border-box;
 }

 span.circle {
     background: #52514d;
     height: 25px;
     width: 25px;
     color: #fff;
     border-radius: 50px;
     display: inline-block;
     text-align: center;
 }

 .footer {
     background-color: #0f1f13;
     padding: 40px 0;
     color: #fff;
 }

 @media (max-width: 768px) {
     #accommodation .accommodation-content {
         width: calc(100% - 40px);
         /* Adjust for padding on smaller screens */
     }
 }

 #accommodation .accommodation-content:hover {
     transform: translateY(-3px);
     box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
 }

 #accommodation .accommodation-content h3 {
     font-size: 1.8em;
     color: var(--text-color);
     margin-top: 0;
     margin-bottom: 15px;
     display: flex;
     align-items: center;
     /* justify-content: center; */
     gap: 10px;
 }

 #accommodation .accommodation-content h3 i {
     font-size: 1.2em;
     color: var(--primary-color);
 }

 #accommodation .accommodation-content p {
     font-size: 1em;
     color: var(--light-text-color);
     margin-bottom: 8px;
     line-height: 1.6;
 }

 #accommodation .accommodation-content p strong {
     color: var(--text-color);
 }

 /* --- Important Notes --- */
 .important-notes-section ul {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
     gap: 10px;
     padding: 0;
     margin: 0 auto;
     list-style: none;
 }

 .important-notes-section li {
     background-color: var(--card-background);
     border-radius: var(--border-radius);
     box-shadow: var(--light-shadow);
     padding: 10px 15px;
     border-left: 3px solid var(--primary-color);
     font-size: 0.85em;
     color: var(--light-text-color);
     display: flex;
     align-items: start;
     margin-bottom: 0;
     transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
 }

 .slick-next {
     right: 17px !important;
 }

 .slick-prev {
     left: 17px !important;
     z-index: 3;
 }

 .important-notes-section li::before {
     content: "\f05a";
     /* Font Awesome info icon */
     font-family: "Font Awesome 6 Free";
     font-weight: 900;
     /* color: var(--primary-color); */
     margin-right: 8px;
     font-size: 1.1em;
     flex-shrink: 0;
     /* Prevent icon from shrinking */
 }

 .important-notes-section li:hover {
     border-left-color: var(--primary-color);
     box-shadow: var(--shadow);
     transform: translateY(-1px);
 }

 /* --- Nearby Destinations --- */

 .feature-icon {
     display: flex;
     align-items: center;
     gap: 0.5rem;
 }

 .photo-grid img {
     object-fit: cover;
     height: 100%;
     width: 100%;
     border-radius: 0.5rem;
 }

 .tag-container {
     display: flex;
     flex-wrap: wrap;
     gap: 15px;
 }

 .tag {
     background-color: #e6f2ff;
     color: #003049;
     padding: 12px 20px;
     border: 2px solid #ff8b3c;
     border-radius: 999px;
     cursor: pointer;
     transition: background-color 0.3s, color 0.3s;
     font-size: 16px;
 }

 .tag:hover {
     background-color: #ff8b3c;
     color: white;
 }


 .overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: rgba(0, 0, 0, 0.5);
     color: white;
     display: flex;
     justify-content: center;
     align-items: center;
     border-radius: 0.5rem;
     font-weight: bold;
 }

 .photo-grid .position-relative {
     height: 100px;
     overflow: hidden;
 }

 .nearby-destinations .destination-card {
     text-align: left;
     padding: 15px;
 }

 .nearby-destinations .destination-card i.fa-solid {
     font-size: 3em;
     color: var(--primary-color);
     margin-bottom: 10px;
     display: block;
 }

 .nearby-destinations .destination-card h4 {
     margin: 8px 0 3px;
     font-size: 1.25em;
     /* color: var(--primary-color); */
     padding: 0 8px;
     font-weight: 600;
 }

 .nearby-destinations .destination-card p {
     padding: 0 8px 15px;
     font-size: 0.85em;
     color: var(--light-text-color);
     margin-bottom: 0;
 }

 .weather-card {
     width: auto;
     border-radius: 12px;
     overflow: hidden;
     box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
     font-family: 'Segoe UI', sans-serif;
 }

 .weather-top {
     padding: 8px;
     text-align: center;
     color: #fff;
     display: flex;
     justify-content: space-around;
     align-items: center;
     position: absolute;
     z-index: 3;
     right: 0;
     top: 0;
     flex-direction: column;
     text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.6);
     bottom: 0;
     width: 200px;
 }



 .weather-top .temp {
     font-size: 48px;
     font-weight: 300;
     line-height: 1;
 }

 .weather-top .degree {
     font-size: 20px;
     vertical-align: top;
 }

 .weather-top .fas {
     font-size: 25px;
 }

 .weather-bottom {
     background-color: #ffffff;
     padding: 5px 15px;
 }

 .weather-bottom .row>div {
     font-size: 14px;
     padding: 5px 15px;
     justify-content: space-between;
 }

 .label {
     color: #888;
 }

 .value {
     font-weight: 600;
 }

 .card-hover {
     border-radius: 15px;
     transition: transform 0.3s ease;
     height: 100%;
 }

 .card-hover .card-img {
     transition: transform 0.3s ease;
     height: 100%;
     object-fit: cover;
 }

 .btn-light {
     color: #ffffff;
     background-color: #ff8b3c;
     border: none;
     border-radius: 30px !important;
     width: max-content;
     padding: 5px 10px !important;
 }

 .overlay-bg {
     /* background: rgba(0, 0, 0, 0.3); */
     transition: opacity 0.4s ease;
     display: flex;
     flex-direction: column;
     justify-content: flex-end;
     padding: 1rem;
     cursor: pointer;
     color: #52514d;
     position: absolute;
     background-color: #fff;
     width: 90%;
     border-radius: 20px;
     bottom: 0px;
     margin: auto;
     left: 0;
     right: 0;
     box-shadow: var(--shadow)
 }

 #slideModalImageWrapper {
     max-height: 200px;
     overflow: hidden;
     margin-bottom: 30px;
 }


 .overlay-bg .card-title,
 .overlay-bg .btn {
     opacity: 1;
     transform: translateY(0);
     transition: all 0.4s ease;
     z-index: 2;
 }

 /* Hide paragraph by default */
 .overlay-bg .card-text {
     opacity: 0;
     max-height: 0;
     overflow: hidden;
     transition: all 0.4s ease;
 }

 /* On hover, show full content */
 .card-hover:hover .overlay-bg {
     justify-content: center;
 }

 .card-hover:hover .overlay-bg .card-text {
     opacity: 1;
     max-height: 300px;
     /* adjust if needed */
 }


 .hover-card {
     position: relative;
     overflow: hidden;
     border-radius: 15px;
     box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
     background-color: #f8f9fa;
     height: 100%;
     transition: transform 0.3s ease;
 }

 .stars {
     display: inline-flex;
     font-size: 24px;
     color: orange;
 }

 .stars .star {
     margin-right: 4px;
 }

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

 .hover-card .card-img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: opacity 0.4s ease;
     display: block;
 }

 .hover-card .hover-content {
     position: absolute;
     top: 0;
     left: 0;
     padding: 20px;
     width: 100%;
     height: 100%;
     color: #333;
     background-color: rgba(255, 255, 255, 0.95);
     opacity: 0;
     pointer-events: none;
     transition: opacity 0.4s ease;
     overflow-y: auto;
 }

 .hover-card:hover .card-img {
     opacity: 0;
 }

 .hover-card:hover .hover-content {
     opacity: 1;
     pointer-events: auto;
 }





 .image-side {
     background-size: cover;
     background-position: center;
     height: 100%;
     overflow: hidden;
 }
 .image-side img{
   object-fit: cover;
    width: 245px;
    min-height: -webkit-fill-available;
 }

 .nearby-destinations .destination-card {
     background-color: var(--card-background);
     border-radius: var(--border-radius);
     box-shadow: var(--shadow);
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .nearby-destinations .destination-card:hover {
     transform: translateY(-3px);
     box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
 }

 /* --- FAQ Section --- */
 .faq-section {
     padding: 20px;
     margin: 0 auto;
     background-color: var(--card-background);
     border-radius: var(--border-radius);
     box-shadow: var(--shadow);
 }

 .faq-item {
     margin-bottom: 8px;
     border-bottom: 1px solid #eee;
     padding-bottom: 6px;
     cursor: pointer;
 }

 .faq-item:last-child {
     border-bottom: none;
 }

 .faq-question {
     display: flex;
     justify-content: space-between;
     align-items: center;
     font-weight: 600;
     color: var(--text-color);
     padding: 4px 0;
     transition: color 0.2s ease;
 }

 .faq-question:hover {
     color: var(--primary-color);
 }

 .faq-question i {
     transition: transform 0.3s ease;
 }

 .faq-item.active .faq-question i {
     transform: rotate(180deg);
 }

 .faq-answer {
     max-height: 0;
     overflow: hidden;
     transition: max-height 0.2s ease-out, padding-top 0.2s ease-out;
     padding-top: 0;
     font-size: 0.8em;
     color: var(--light-text-color);
     margin-top: 4px;
 }

 .faq-item.active .faq-answer {
     max-height: 60px;
     /* Adjust as needed */
     padding-top: 5px;
 }

 /* --- Location Map Section (Last Section) --- */
 #location-map {
     padding: 15px 0;
     text-align: center;
     background-color: var(--background-color);
 }

 #location-map .container {
     padding: 0px 15px;
 }

 #location-map .map-container {
     position: relative;
     padding-bottom: 56.25%;
     /* 16:9 Aspect Ratio */
     height: 0;
     overflow: hidden;
     max-width: 100%;
     background: var(--card-background);
     /* border-radius: var(--border-radius); */
     box-shadow: var(--shadow);
     margin: 0 auto;
 }

 #location-map .map-container iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     border: 0;
     /* border-radius: var(--border-radius); */
 }

 #location-map .map-coordinates {
     font-size: 0.9em;
     color: var(--light-text-color);
     margin-top: 15px;
 }

 .mobile-btn {
     display: none;
 }

 .season-card {
     border: 1px solid #eee;
     border-radius: 12px;
     padding: 10px;
     text-align: center;
     background-color: #f9f9f9;
     box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
     transition: 0.3s;
     margin-bottom: 10px;
 }

 .season-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
 }

 #slideModalMap {
     height: 330px;
     margin-bottom: 20px;
 }

 #slideModalTitle {
     font-size: 1.2rem;
     font-weight: 600;
 }


 .season-temp {
     color: var(--normal-text-color);
     font-size: 12px;
     font-weight: 500;
     white-space: nowrap;
 }

 /*----Popup css----*/

 .popup-overlay {
     display: none;
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background-color: rgba(0, 0, 0, 0.6);
     z-index: 1021;
 }


 .popup-content {
     background: #fff;
     padding: 15px;
     max-width: 400px;
     width: 90%;
     margin: 1% auto;
     border-radius: 10px;
     position: relative;
     box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
 }

 .popup-content h2 {
     margin-bottom: 0px;
     font-size: 20px;
 }

 .close-btn {
     position: absolute;
     top: 12px;
     right: 15px;
     font-size: 22px;
     font-weight: bold;
     color: #333;
     cursor: pointer;
     z-index: 5;
 }


 form label {
     display: block;
     margin-top: 8px;
     font-weight: normal;
 }

 form input,
 form textarea {
     width: 100%;
     padding: 5px;
     margin-top: 3px;
     box-sizing: border-box;
     border: 1px solid #ccc;
     border-radius: 6px;
     font-size: 14px;
 }

 form button {
     margin-top: 10px;
     padding: 10px 15px;
     background-color: #007bff;
     border: none;
     color: white;
     font-size: 16px;
     border-radius: 6px;
     cursor: pointer;
 }

 form button:hover {
     background-color: #0056b3;
 }

 .mobile-version {
     display: block;
     position: fixed;
     z-index: 1021;
     right: 18px;
     top: 16px;
 }

 button#openPopupBtn {
     background: linear-gradient(135deg, var(--primary-color) 0%, #ff8b3c 100%);
     color: white;
     padding: 6px 20px;
     box-shadow: var(--light-shadow);
     max-height: 38px;
     border-radius: 20px;
     white-space: nowrap;
 }

 /* --- Footer --- */
 footer {
     padding: 20px 0;
     margin-top: 40px;
     font-size: 0.8em;
     text-align: center;
     color: var(--light-text-color);
     background-color: var(--card-background);
     box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.05);
 }

 footer i {
     color: #e74c3c;
 }

 @media (min-width: 992px) {
     .navbar-expand-lg {
         flex-wrap: nowrap;
         justify-content: flex-start;
     }
 }

 /* --- Responsive Design --- */
 @media (max-width: 992px) {
     .container {
         max-width: 95%;
     }

     header h1 {
         font-size: 2em;
     }

     header p {
         font-size: 0.85em;
     }

     h2 {
         font-size: 1.8em;
     }

     .grid-layout {
         grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
         gap: 12px;
     }

     .card {
         padding: 0px;
     }
 }

 @media (max-width: 768px) {
     .container-slider {
         margin-left: 17px;
         padding: 10px;
     }

     .note-box {
         width: 100%;
     }

     .mobile-version {
         display: none !important;
     }

     header {
         height: 300px;
     }

     header h1 {
         font-size: 1.6em;
     }

     header p {
         font-size: 0.75em;
         margin-bottom: 10px;
     }

     .hero-stats {
         gap: 8px;
     }

     .stat-item {
         font-size: 0.8em;
         padding: 4px 8px;
         flex: 1 1 auto;
     }

     section {
         padding: 20px 0;
     }

     h2 {
         font-size: 1.5em;
         margin-bottom: 18px;
     }

     .top-info-grid {
         flex-direction: column;
         gap: 15px;
         margin-bottom: 20px;
     }

     .top-info-grid>div {
         min-width: unset;
         max-width: 100%;
     }

    

     .weather-info {
         flex-direction: column;
         text-align: center;
         gap: 10px;
         padding: 12px;
     }

     .weather-info .details {
         text-align: center;
     }

     .temperature-info-inner {
         flex-wrap: wrap;
         gap: 8px;
     }

     .temperature-box {
         flex: 1 1 45%;
         padding: 10px 15px;
     }

     .food-section .food-item {
         padding: 10px;
         gap: 8px;
     }

     .food-section .food-item .food-icon {
         min-width: 40px;
         min-height: 40px;
         width: 40px;
         height: 40px;
         font-size: 1.6em;
     }

     .food-section .food-item .details h4 {
         font-size: 1.05em;
     }

     .food-section .food-item .details p {
         font-size: 0.7em;
     }

     .travel-options .card i.fa-solid {
         font-size: 2.5em;
     }

     #accommodation .accommodation-content {
         padding: 20px;
     }

     #accommodation .accommodation-content h3 {
         font-size: 1.5em;
     }

     #accommodation .accommodation-content p {
         font-size: 0.9em;
     }

     .important-notes-section ul {
         grid-template-columns: 1fr;
         /* Stack on small screens */
         gap: 8px;
         max-width: 95%;
     }

     .important-notes-section li {
         padding: 8px 12px;
     }

     .nearby-destinations .destination-card i.fa-solid {
         font-size: 2.5em;
     }

     .faq-section {
         padding: 15px;
     }

     .faq-item.active .faq-answer {
         max-height: 100px;
         /* Adjusted max-height for smaller screens */
         padding-top: 4px;
     }

     #location-map .map-container {
         padding-bottom: 75%;
     }

     .mobile-btn {
         display: block;
         position: fixed;
         bottom: 0px;
         z-index: 3;
         width: 100%;
     }

     .mobile-btn #openPopupBtn {
         width: 100%;
         display: block;
         border-radius: 0px;
         min-height: 60px;

     }

     .tag {
         width: 48%;
         font-size: 15px;
     }
 }

 @media (max-width: 480px) {
    .g-recaptcha iframe{
        width: 294px;
    border: 1px solid #c1c1c1;
    }
     header {
         height: 465px;
         flex-direction: column-reverse;
         display: flex;
         justify-content: flex-end;
     }

     .tag {
         width: 47%;
         font-size: 12px;
     }

     header h1 {
         font-size: 1.4em;
         width: 370px;
         white-space: normal;
         padding: 15px;
     }

     header p {
         font-size: 0.7em;
     }

     .stat-item {
         font-size: 0.7em;
         padding: 3px 6px;
     }

     h2 {
         font-size: 1.3em;
     }

     .card h3 {
         font-size: 1.05em;
     }

    

     .temperature-box {
         min-width: unset;
         flex: 1 1 100%;
     }

     header img {
         position: absolute;
     }

     .absolute {
         position: relative !important;
         width: max-content !important;
         margin: auto !important;
         z-index: 1;
         padding: 15px;
     }

     .weather-top {
         padding: 8px;
         text-align: center;
         color: #fff;
         display: flex;
         justify-content: space-around;
         align-items: center;
         position: relative;
         z-index: 3;
         right: 0;
         top: 0;
         flex-direction: column;
         text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.6);
         bottom: 0;
         width: 200px;
         margin: 20px auto;
     }

     .slick-list {
         max-height: 240px;
     }

     .slide-modal-content{
        padding: 20px 20px 70px;
     }
     .slideModalMap {
         margin-bottom: 20px;
     }
     .overlay-bg{
        bottom: 38px;
     }

     .weather-top .temp {
         font-size: 26px;
         font-weight: 600;
         line-height: 1;
     }
     .image-container{
        height: 188px;
     }
     .slide-modal .close-btn{
        top: -6px;
        right: 6px;
     }
     .custom-grid {
        flex-direction: column;
        width: 100%;
        margin-bottom: 20px;
        height: 535px !important;
    }
    .image-side img {
    width: 100%;
    object-fit: fill;
    height: 324px;
    }
    .image-side{
        width: 100% !important;
       
    }
    .custom-grid .w-50{
        width: 100% !important;
    }
    .custom-grid .bg-white{
        padding-top: 20px;
    }
 }