.accommodation-gallery{padding:40px 0 70px}.accommodation-gallery .carousel{border-radius:24px;overflow:hidden;box-shadow:0 15px 45px #0000001f}.gallery-image{object-fit:contain;width:100%;height:650px}.carousel.carousel-fade .carousel-item{transition:opacity .8s ease-in-out}.accommodation-gallery .carousel-control-prev,.accommodation-gallery .carousel-control-next{width:8%}.accommodation-gallery .carousel-control-prev-icon,.accommodation-gallery .carousel-control-next-icon{background-color:#00000073;background-size:55%;border-radius:50%;width:55px;height:55px}.accommodation-gallery .carousel-indicators{margin-bottom:0;bottom:25px}.accommodation-gallery .carousel-indicators button{opacity:1;background:#fff9;border:none;border-radius:50%;width:14px;height:14px;margin:0 6px;transition:all .3s}.accommodation-gallery .carousel-indicators .active{background:var(--olive);border-radius:30px;width:36px}.gallery-caption{color:#fff;z-index:2;max-width:500px;position:absolute;bottom:45px;left:40px}.gallery-caption h3{color:#fff;margin-bottom:10px;font-size:2rem}.gallery-caption p{color:#ffffffeb;margin:0;font-size:1.1rem}.gallery-overlay{background:linear-gradient(#0000,#00000014,#00000073);position:absolute;inset:0}.accommodation-header{text-align:center;padding:20px 0}.accommodation-header h1{margin-bottom:15px;font-size:4rem}.accommodation-header p{color:var(--muted);font-size:1.3rem}.filter-bar{background:#fff;border-radius:20px;margin-bottom:50px;padding:25px;box-shadow:0 8px 30px #00000014}.accommodation-grid{margin-top:40px}.accommodation-card{background:#fff;border:none;border-radius:24px;height:100%;transition:all .3s;overflow:hidden;box-shadow:0 12px 40px #00000014}.accommodation-card:hover{transform:translateY(-6px)}.accommodation-image{object-fit:cover;width:100%;height:280px}.accommodation-body{padding:25px}.room-name{margin-bottom:10px;font-size:1.8rem}.feature-list{flex-wrap:wrap;gap:8px;margin-top:15px;margin-bottom:20px;display:flex}.feature-badge{background:#f5f5f5;border-radius:999px;padding:8px 14px;font-size:.9rem}.room-details{margin-top:15px}.room-details p{margin-bottom:8px}.price-section{border-top:1px solid #eee;margin-top:25px;padding-top:20px}.price-label{color:var(--muted);margin-bottom:5px}.price{color:var(--olive);font-size:2rem;font-weight:600}.guest-selector{margin-top:20px}.guest-selector label{margin-bottom:6px;font-weight:500}.total-price{background:#f8f8f8;border-radius:15px;margin-top:20px;padding:15px}.total-price h4{margin:0}.reserve-btn{border-radius:999px;width:100%;margin-top:20px}.accommodation-hero{height:500px;position:relative;overflow:hidden}.accommodation-hero img{object-fit:cover;width:100%;height:100%}.accommodation-overlay{background:#00000073;position:absolute;inset:0}.accommodation-hero-content{text-align:center;color:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.accommodation-hero-content h1{color:#fff;font-size:5rem}.accommodation-hero-content p{font-size:1.5rem}.included-section{border-left:5px solid var(--olive);background:#f8f8f4;border-radius:20px;margin-top:30px;padding:25px}.included-section h5{margin-bottom:20px}.included-card{align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.included-icon{font-size:2rem}.included-card h6{color:var(--olive);margin-bottom:6px}.included-card p{margin-bottom:4px}.included-card small{color:#777}@media (max-width:991px){h1{font-size:4rem!important}.accommodation-header h1{font-size:3rem!important}.accommodation-hero{height:400px;margin-top:100px}.accommodation-hero-content h1{font-size:3rem}.accommodation-gallery{padding:30px 0 50px}.gallery-image{object-fit:cover;width:100%;height:100%}.gallery-caption{bottom:30px;left:25px;right:25px}.gallery-caption h3{font-size:1.5rem}.gallery-caption p{font-size:1rem}.accommodation-gallery .carousel-control-prev-icon,.accommodation-gallery .carousel-control-next-icon{width:45px;height:45px}.accommodation-gallery .carousel-item{height:420px}}@media (max-width:576px){h1{font-size:2.8rem!important}.accommodation-header h1{font-size:2.2rem}.price{font-size:1.5rem}.accommodation-image{height:220px}.gallery-image{object-fit:cover;width:100%;height:100%}.gallery-caption{bottom:20px;left:20px;right:20px}.gallery-caption h3{font-size:1.25rem}.gallery-caption p{display:none}.accommodation-gallery .carousel-indicators{bottom:15px}}
