@media (max-width: 1480px){
    .navbar .menu_nav .nav-item.submenu ul{
        left: auto;
        right: 0;
    }
}
@media(max-width: 1199px){
}
@media(max-width: 991px){
	.navbar-toggler{
		border: none;
		border-radius: 0px;
		padding: 0px;
		cursor: pointer;
		margin-top: 20px;
		margin-bottom: 20px;
	}
    .navbar{
        padding: 0px 15px;
    }
	.header_area .navbar-brand {
		padding-top: 0px;
	}
	.navbar .logo_h img {
		height: 50px;
		width: auto;
	}
	.main_menu_inner {
		background: #000;
	}
	.navbar-toggler[aria-expanded="false"] span:nth-child(2) {
		opacity: 1;
	}
	.navbar-toggler[aria-expanded="true"] span:nth-child(2) {
		opacity: 0;
	}
	.navbar-toggler[aria-expanded="true"] span:first-child {
		transform: rotate(-45deg);
		position: relative;
		top: 7.5px;
	}
	.navbar-toggler[aria-expanded="true"] span:last-child {
		transform: rotate(45deg);
		bottom: 6px;
		position: relative;
	}
	.navbar-toggler span{
		display: block;
		width: 25px;
		height: 3px;
		background: #fab915;
		margin: auto;
		margin-bottom: 4px;
		transition: all 400ms linear;
		cursor: pointer;
	}
    .navbar .menu_nav .nav-item{
        z-index: 1;
    }
	.navbar .menu_nav .nav-item .nav-link {
        line-height: 36px;
		padding: 0px;
        position: relative;
	}
    .navbar .menu_nav .nav-item.dropdown:after{
        display: inline-block;
        content: "\e874";
        font-family: 'Linearicons-Free';
        font-size: 13px;
        color: #777777;
        top: 0px;
        height: 100%;
        line-height: 36px;
        border: 0px;
        position: absolute;
        right: 0px;
        z-index: -1;
    }
    .navbar .menu_nav .nav-item.dropdown.show:after,.navbar .menu_nav .nav-item.dropdown:focus:after{
        color: #52c5fd;
        outline: none;
    }
	.navbar .menu_nav .nav-item + li {
		margin-left: 0px;
	}
	.navbar-collapse {
		max-height: 288px;
		overflow-y: scroll;
	}
	.hotel_booking_table {
		padding: 28px 15px 15px;
	}
	.banner_area {
		display: block;
	}
	.banner_area .position {
		position: relative;
		background: #04091e;
		bottom: 0px;
	}
	.banner_area {
		min-height: 100%;
	}
	.banner_content {
		margin-bottom: 94px;
		margin-top: 124px;
	}
	.accomodation_area .row{
		max-width: 556px;
		margin: 0px auto -30px;
	}
	.about_content {
		padding-right: 0px;
	}
	.testimonial_slider .testimonial_item {
		padding: 25px 30px;
	}
	.footer-area .col-sm-6{
		margin-bottom: 30px;
	}
	.footer-bottom{
		text-align: center;
	}
	.footer-bottom .footer-social {
		text-align: center;
		margin-top: 20px;
	}
    .blog_banner .banner_content{
        margin: 200px 0px 120px;
    }
    .categories_post img{
        width: 100%;
    }
    .blog_categorie_area .col-lg-4 + .col-lg-4{
        margin-top: 40px;
    }
    .blog_area{
        padding-bottom: 80px;
    }
    .single-post-area .blog_right_sidebar{
        margin-top: 30px;
    }
}
@media(max-width: 767px){
	.about_content {
		padding-bottom: 50px;
	}
	.single-recent-blog-post {
		max-width: 360px;
		margin: 0px auto 30px;
	}
    .boking_table {
		margin-left: -0px;
	}
    .hotel_booking_table{
        display: block;
        padding: 30px 0px;
    }
    
    /* Reorder booking form elements for mobile: Check-in, Check-out, Adults, Kids */
    .boking_table .row {
        display: flex;
        flex-direction: column;
    }
    
    /* Show only Check-in from first column */
    .boking_table .col-md-4:first-child .book_tabel_item .form-group:first-child {
        order: 1;
    }
    
    /* Show only Check-out from second column */
    .boking_table .col-md-4:nth-child(2) .book_tabel_item .form-group:first-child {
        order: 2;
    }
    
    /* Show Adults from first column */
    .boking_table .col-md-4:first-child .book_tabel_item .form-group:last-child {
        order: 3;
    }
    
    /* Show Kids from second column */
    .boking_table .col-md-4:nth-child(2) .book_tabel_item .form-group:last-child {
        order: 4;
    }
    
    /* Show Search button last */
    .boking_table .col-md-4:last-child {
        order: 5;
        margin-top: 20px;
    }
    
    /* Hide the column containers and show individual form groups */
    .boking_table .col-md-4:first-child,
    .boking_table .col-md-4:nth-child(2) {
        display: contents;
    }
    
    .boking_table .col-md-4:first-child .book_tabel_item,
    .boking_table .col-md-4:nth-child(2) .book_tabel_item {
        display: contents;
    }
    
    .boking_table .form-group {
        margin-bottom: 15px;
    }
    
    /* Ensure search button container maintains its structure */
    .boking_table .col-md-4:last-child {
        display: block;
    }
    .gallery_item img {
        max-width: 100%;
        width: 100%;
    }
    .blog_banner .banner_content h4 {
        font-size: 48px;
        line-height: 58px;
        margin-bottom: 20px;
    }
    .blog_info{
        text-align: left !important;
        padding-top: 0px;
        padding-bottom: 10px;
    }
    .blog_meta li{
        display: inline-block;
        width: calc(95%/ 2);
    }
    .single-post .blog_info{
        padding-top: 30px;
        padding-bottom: 0px;
    }
    .single-post-area .social-links{
        padding-left: 0px;
        margin-bottom: 0px;
    }
    .comment-form .email {
        margin-bottom: 0px;
    }
    .contact_form{
        margin-top: 30px;
    }

	    /* Make hero shorter and lift text on mobile */
	    .booking_table {
	        min-height: 540px; /* was 800px on desktop */
	        padding-top: 20px;
	    }
	    .overlay {
	        height: 100%; /* prevent overlay from bleeding into booking area */
	    }
	    .banner_area .bg-parallax {
	        background-position: center top;
	    }
	    .banner_content {
	        margin-top: 60px; /* move headline higher */
	        margin-bottom: 40px;
	    }
}
@media(max-width: 575px){
	.banner_content h2 {
		font-size: 40px;
		line-height: 50px;
	}
	.banner_content p br{
		display: none;
	}
	.accomodation_area .row {
		max-width: 278px;
		margin: 0px auto -30px;
	}
	.section_gap {
		padding: 70px 0;
	}
	.section_title h2 {
		font-size: 26px;
		line-height: 36px;
	}
	.testimonial_slider .testimonial_item img {
		width: 60px;
		height: 60px;
		object-fit: cover;
		margin-right: 0px;
		margin-bottom: 15px;
	}
	.testimonial_slider .testimonial_item{
		display: block;
		text-align: center;
	}
	.testimonial_slider .testimonial_item .media-body {
		text-align: left;
	}
    .navbar{
        padding: 0px 10px;
    }
    .navbar .logo_h img {
        height: 45px;
        width: auto;
    }
    .header_area .container{
        padding: 0px;
    }
    .header-top .container{
        padding: 0px 15px;
    }
    .blog_banner .banner_content h4 {
        font-size: 36px;
        line-height: 46px;
    }

	    /* Further reduce hero height on very small screens */
	    .booking_table {
	        min-height: 480px;
	    }
	    .banner_content {
	        margin-top: 50px;
	        margin-bottom: 30px;
	    }
}
@media(max-width: 480px){
    .comments-area .comment-list.left-padding {
        padding-left: 5px;
    }
    .comments-area .thumb{
        margin-right: 5px;
    }
    .comments-area .btn-reply{
        padding: 0px 8px;
    }
}

/* Prevent horizontal panning/scroll on mobile and fix testimonial display */
@media(max-width: 991px){
    html, body { overflow-x: hidden; }
    .testimonial_slider { 
        overflow: visible; 
        padding: 0 15px;
    }
    .testimonial_slider .owl-stage-outer {
        overflow: visible;
    }
}

/* Room Modal Responsive Improvements */
/* Collapse amenities after 3 rows across all screen sizes */
.amenities-grid {
    /* Default: 3 rows target with slight headroom to avoid premature scrollbars */
    max-height: 114px; /* previously 108px */
    overflow-y: auto;
    scroll-behavior: smooth;
}

@media(max-width: 991px){
    /* Smaller buttons on medium screens */
    .room-actions .btn {
        padding: 10px 25px !important;
        font-size: 0.9rem !important;
    }
}

@media(max-width: 767px){
    /* Slightly increase to ensure 3 rows fit without scroll */
    .amenities-grid {
        max-height: 102px; /* previously 96px */
    }
    
    /* Smaller buttons */
    .room-actions .btn {
        padding: 8px 20px !important;
        font-size: 0.85rem !important;
    }
    
    /* Reduce amenity item size */
    .amenity-item {
        padding: 3px 8px !important;
        font-size: 0.75rem !important;
    }
    
    .amenity-item i {
        font-size: 0.7rem !important;
        margin-right: 5px !important;
    }
}

@media(max-width: 575px){
    /* Slightly increase to ensure 3 rows fit without scroll */
    .amenities-grid {
        max-height: 90px; /* previously 84px */
    }
    
    /* On mobile, stack buttons vertically */
    .room-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }
    .room-actions .btn {
        padding: 7px 12px !important;
        font-size: 0.85rem !important;
        width: 100% !important;
        margin-bottom: 0 !important;
    }
    
    /* Even smaller amenity items */
    .amenity-item {
        padding: 2px 6px !important;
        font-size: 0.7rem !important;
    }
    
    .amenity-item i {
        font-size: 0.65rem !important;
        margin-right: 4px !important;
    }
}

@media(max-width: 480px){
    /* Slightly increase to ensure 3 rows fit without scroll */
    .amenities-grid {
        max-height: 84px; /* previously 78px */
    }
    
    /* Compact amenity items for tiny screens */
    .amenity-item {
        padding: 2px 5px !important;
        font-size: 0.65rem !important;
        border-radius: 12px !important;
    }
}