/* Saras Resort Damdama Lake - Stylesheet */
/* Additional styles beyond critical CSS */

/* Mobile Menu */
.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:4px;padding:8px}
.mobile-menu-toggle span{width:25px;height:3px;background:#2d5016;transition:all .3s}
@media (max-width:768px){
    .mobile-menu-toggle{display:flex}
    .nav-links{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:1rem;box-shadow:0 4px 6px rgba(0,0,0,.1);transform:translateY(-100%);opacity:0;pointer-events:none;transition:all .3s}
    .nav-links.active{transform:translateY(0);opacity:1;pointer-events:all}
    .mobile-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
    .mobile-menu-toggle.active span:nth-child(2){opacity:0}
    .mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}
}

/* Hero Slider Controls */
.slider-prev,.slider-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.8);border:none;font-size:3rem;padding:1rem 1.5rem;cursor:pointer;z-index:3;transition:background .3s}
.slider-prev:hover,.slider-next:hover{background:rgba(255,255,255,.95)}
.slider-prev{left:20px}
.slider-next{right:20px}
.slider-indicators{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:3}
.slider-indicator{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);border:2px solid #fff;cursor:pointer;transition:all .3s}
.slider-indicator.active{background:#fff;transform:scale(1.2)}

/* About Section */
.about-content{max-width:900px;margin:0 auto;text-align:center}
.about-content p{margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8;color:#555}
.about-content strong{color:#2d5016;font-weight:600}

/* Packages Section */
.package-category{margin-bottom:4rem}
.package-category h3{font-size:2rem;color:#2d5016;margin-bottom:2rem;text-align:center}
.package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}
.package-card{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 4px 15px rgba(0,0,0,.1);transition:transform .3s,box-shadow .3s;position:relative}
.package-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgba(0,0,0,.15)}
.package-card.featured{border:3px solid #2d5016}
.package-badge{position:absolute;top:-12px;right:20px;background:#2d5016;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}
.package-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}
.package-header h4{font-size:1.5rem;color:#2d5016;margin-bottom:.5rem}
.package-price{font-size:1.8rem;font-weight:700;color:#333}
.package-price span{font-size:1rem;font-weight:400;color:#666}
.package-features ul{list-style:none;margin-bottom:1.5rem}
.package-features li{padding:.5rem 0;color:#555;font-size:.95rem}
.package-note{text-align:center;margin-top:2rem;padding:1rem;background:#f9f9f9;border-radius:5px}
.package-note p{margin:0;color:#666;font-size:.95rem}

/* Activities Section */
.section-intro{text-align:center;font-size:1.1rem;color:#666;margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto}
.activities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}
.activity-card{background:#fff;border-radius:10px;padding:2rem;text-align:center;box-shadow:0 4px 15px rgba(0,0,0,.1);transition:transform .3s}
.activity-card:hover{transform:translateY(-5px)}
.activity-icon{font-size:3rem;margin-bottom:1rem}
.activity-card h3{font-size:1.3rem;color:#2d5016;margin-bottom:1rem}
.activity-card p{color:#666;font-size:.95rem;line-height:1.6}

/* Gallery Section */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}
.gallery-item{position:relative;overflow:hidden;border-radius:8px;cursor:pointer;aspect-ratio:4/3}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gallery-item:hover img{transform:scale(1.1)}

/* Lightbox */
.lightbox{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);z-index:1000;align-items:center;justify-content:center}
.lightbox.active{display:flex}
.lightbox-content{max-width:90%;max-height:90%;position:relative}
.lightbox-content img{max-width:100%;max-height:90vh;object-fit:contain}
.lightbox-close{position:absolute;top:20px;right:40px;font-size:3rem;color:#fff;background:none;border:none;cursor:pointer;z-index:1001}
.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);font-size:3rem;color:#fff;background:rgba(255,255,255,.2);border:none;padding:1rem;cursor:pointer;transition:background .3s}
.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,.3)}
.lightbox-prev{left:20px}
.lightbox-next{right:20px}

/* Reviews Section */
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:2rem}
.review-card{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 4px 15px rgba(0,0,0,.1)}
.review-rating{margin-bottom:1rem}
.review-rating .star{color:#ffd700;font-size:1.2rem}
.review-rating .star.gray{color:#ddd}
.review-text{font-style:italic;color:#555;margin-bottom:1.5rem;line-height:1.6}
.review-author{font-weight:600;color:#2d5016}
.review-location{display:block;color:#888;font-size:.9rem;margin-top:.25rem}
.review-cta{text-align:center;margin-top:2rem}
.review-cta a{color:#2d5016;font-weight:600;text-decoration:underline}

/* Location Section */
.location-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}
.location-info h3{color:#2d5016;margin-bottom:1rem;margin-top:2rem}
.location-info h3:first-child{margin-top:0}
.location-list{list-style:none;margin-bottom:1.5rem}
.location-list li{padding:.5rem 0;color:#555;border-bottom:1px solid #f0f0f0}
.location-list li:last-child{border-bottom:none}
.location-map{background:#f5f5f5;border-radius:10px;padding:2rem;display:flex;align-items:center;justify-content:center}
.map-placeholder{text-align:center}
.map-placeholder p{margin-bottom:1rem;color:#666}
@media (max-width:768px){
    .location-content{grid-template-columns:1fr}
}

/* Contact Section */
.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}
.contact-info{background:#f9f9f9;border-radius:10px;padding:2rem}
.contact-info h3{color:#2d5016;margin-bottom:1.5rem}
.contact-item{margin-bottom:1.5rem}
.contact-item strong{display:block;margin-bottom:.5rem;color:#2d5016}
.contact-item a{color:#333;text-decoration:none;transition:color .3s}
.contact-item a:hover{color:#2d5016}
.contact-social{margin-top:2rem}
.contact-social h4{color:#2d5016;margin-bottom:1rem}
.social-links{display:flex;gap:1rem;flex-wrap:wrap}
.social-links a{color:#2d5016;font-weight:600;text-decoration:none;transition:opacity .3s}
.social-links a:hover{opacity:.7}
.contact-form-wrapper{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 4px 15px rgba(0,0,0,.1)}
.contact-form-wrapper h3{color:#2d5016;margin-bottom:1.5rem}
.form-group{margin-bottom:1.5rem}
.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:1rem;transition:border-color .3s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2d5016}
@media (max-width:768px){
    .contact-content{grid-template-columns:1fr}
}

/* FAQ Section */
.faq-list{max-width:900px;margin:2rem auto}
.faq-item{background:#fff;border-radius:8px;margin-bottom:1rem;box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden}
.faq-item summary{padding:1.5rem;cursor:pointer;font-weight:600;color:#2d5016;font-size:1.1rem;list-style:none;transition:background .3s}
.faq-item summary:hover{background:#f9f9f9}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';float:right;font-size:1.5rem;transition:transform .3s}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-answer{padding:0 1.5rem 1.5rem;color:#555;line-height:1.8}
.faq-answer a{color:#2d5016;text-decoration:underline}

/* Footer */
.footer{background:#1f3810;color:#fff;padding:3rem 5% 1rem;margin-top:4rem}
.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1400px;margin:0 auto 2rem}
.footer-section h3,.footer-section h4{color:#fff;margin-bottom:1rem}
.footer-section p{color:#ddd;line-height:1.6;margin-bottom:.5rem}
.footer-links{list-style:none}
.footer-links li{margin-bottom:.5rem}
.footer-links a{color:#ddd;text-decoration:none;transition:color .3s}
.footer-links a:hover{color:#fff}
.footer-section a{color:#ddd;transition:color .3s}
.footer-section a:hover{color:#fff}
.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2);max-width:1400px;margin:0 auto}
.footer-bottom p{color:#ddd;margin:0}
.footer-bottom a{color:#ddd;text-decoration:underline}

/* Responsive Adjustments */
@media (max-width:1024px){
    .section{padding:3rem 4%}
    .package-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
}
@media (max-width:768px){
    .slider-prev,.slider-next{font-size:2rem;padding:.5rem 1rem}
    .slider-prev{left:10px}
    .slider-next{right:10px}
    .package-grid{grid-template-columns:1fr}
    .activities-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
    .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
    .reviews-grid{grid-template-columns:1fr}
    .lightbox-prev,.lightbox-next{font-size:2rem;padding:.5rem}
}
@media (max-width:480px){
    .hero-content h1{font-size:1.8rem}
    .package-card{padding:1.5rem}
    .activity-card{padding:1.5rem}
    .whatsapp-float{width:50px;height:50px;font-size:1.5rem}
}