/* ======================
   Responsive css
   ====================== */
/* Desktop :1200px. */
@media (max-width: 1200px) {
}

/* Large Desktop :1200px. */
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    ul.top-list-1 {
        display: none;
    }
    .tp-mega-full {
        display: none;
    }
    .icon-bars-card {
        display: block;
    }
	.hero-screen {
		padding: 60px 0px;
	}	
	.hero-screen .hero-content h1 {
		font-size: 48px;
		line-height: 1.2;
	}
    .home_1 .search-card {
        position: relative;
        bottom: 0px;
        padding: 60px 0;
    }
    .google-review-highlight {
        position: relative;
        bottom: 0px;
        padding: 60px 15px;
    }
	.about-section {
		padding: 40px 0px;
	}
	.section {
		padding: 60px 0;
	}
	.footer-widget-card {
		padding: 30px 15px 0px 15px;
	}
	.breadcrumb-section .breadcrumb-card h2 {
		font-size: 32px;
	}
	.sidebar .widget-card .widget-body ul.gallery-card li {
		width: 100%;
	}
	.home_1 .search-card .search-card-inner .search-btn {
		margin-top: 0px;
	}
	.payment-method {
		float: left;
	}
	.newsletter-card .newsletter-form .newsletter-btn {
		padding: 10px 20px;
		font-size: 14px;
	}
	.newsletter-card .newsletter-form input.form-control {
		padding: 12px 130px 12px 15px;
	}
	.modal_newsletter_card .modal-body .newsletter-card {
		padding: 20px;
	}
	.cookie_consent_card.left {
		left: 15px;
	}
	.cookie_consent_card.right {
		right: 15px;
	}
	.cookie_consent_card {
		max-width: 90%;
		bottom: 15px;
		border-radius: 8px;
	}
	.newsletter-card {
		padding: 25px;
	}
}

/* Tablet :768px. */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    ul.top-list-1 {
        display: none;
    }
    .tp-mega-full {
        display: none;
    }
    .icon-bars-card {
        display: block;
    }
	.hero-screen {
		padding: 50px 0px;
	}	
	.hero-screen .hero-content h1 {
		font-size: 42px;
		line-height: 1.2;
	}
    .home_1 .search-card {
        position: relative;
        bottom: 0px;
        padding: 50px 0;
    }
    .google-review-highlight {
        position: relative;
        bottom: 0px;
        padding: 50px 15px;
    }
	.about-section {
		padding: 30px 0px;
	}
	
	/* About Section Tablet Responsive */
	.about-section .about-card {
		margin-top: 25px;
	}
	
	.about-section .about-card .about-title h2 {
		font-size: 28px;
		line-height: 1.3;
	}
	
	.about-section .about-card .about-title h5 {
		font-size: 15px;
	}
	
	.about-section .about-card p {
		font-size: 15px;
		line-height: 1.5;
	}
	
	.about-section .info-card {
		margin-bottom: 15px;
	}
	
	.about-section .info-card .content h4 {
		font-size: 20px;
	}
	
	.about-section .info-card .content p {
		font-size: 13px;
	}
	
	/* Featured Rooms Section Tablet Responsive */
	.featured-section .col-lg-4 {
		width: 50%;
		float: left;
		padding: 0 10px;
	}
	
	.featured-section .item-card {
		margin-bottom: 25px;
	}
	
	.featured-section .item-card .item-content {
		padding: 18px;
	}
	
	.featured-section .item-card .item-content .item-title a {
		font-size: 18px;
		line-height: 1.3;
	}
	
	.featured-section .item-card .pric-card .new-price {
		font-size: 18px;
	}
	
	.featured-section .item-card .pric-card .old-price {
		font-size: 15px;
	}
	
	.featured-section .item-card .pric-card .per-day-night {
		font-size: 13px;
	}
	
	.featured-section .item-card a.btn.theme-btn.book-now-btn {
		padding: 10px 18px;
		font-size: 13px;
		min-width: 120px;
		min-height: 42px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}
	
	.featured-section .item-card ul.item-meta li {
		font-size: 12px;
		padding: 5px 10px;
	}
	.section {
		padding: 50px 0;
	}
	.footer-widget-card {
		padding: 25px 10px 0px 10px;
	}
	.breadcrumb-section .breadcrumb-card h2 {
		font-size: 28px;
	}
	.sidebar .widget-card .widget-body ul.gallery-card li {
		width: 100%;
	}
	.home_1 .search-card .search-card-inner .search-btn {
		margin-top: 15px;
		width: 100%;
	}
	.payment-method {
		float: left;
		margin-bottom: 15px;
	}
	.newsletter-card .newsletter-form .newsletter-btn {
		padding: 10px 15px;
		font-size: 14px;
		margin-top: 10px;
		width: 100%;
	}
	.newsletter-card .newsletter-form input.form-control {
		padding: 12px 15px;
		margin-bottom: 10px;
	}
	.modal_newsletter_card .modal-body .newsletter-card {
		padding: 15px;
	}
	.cookie_consent_card.left {
		left: 10px;
	}
	.cookie_consent_card.right {
		right: 10px;
	}
	.cookie_consent_card {
		max-width: 85%;
		bottom: 10px;
		border-radius: 6px;
		font-size: 14px;
	}
	.newsletter-card {
		padding: 20px;
	}
}

/* Mobile :767px. */
@media only screen and (max-width: 767px) {
    ul.top-list-1 {
        display: none;
    }
    .tp-mega-full {
        display: none;
    }
    .icon-bars-card {
        display: block;
    }
	.hero-screen {
		padding: 40px 0px;
	}	
	.hero-screen .hero-content h1 {
		font-size: 32px;
		line-height: 1.3;
	}
    .home_1 .search-card {
        position: relative;
        bottom: 0px;
        padding: 40px 0;
    }
	.about-section {
		padding: 25px 0px;
	}
	.section {
		padding: 40px 0;
	}
	.footer-widget-card {
		padding: 20px 10px 0px 10px;
	}
	.breadcrumb-section .breadcrumb-card h2 {
		font-size: 24px;
	}
	.sidebar .widget-card .widget-body ul.gallery-card li {
		width: 100%;
	}
	
	/* Places Section Mobile Responsive */
	.places-section .col-lg-4 {
		width: 50%;
		float: left;
		padding: 0 7.5px;
	}
	
	.places-section .offer-card {
		margin-bottom: 15px;
	}
	
	.places-section .offer-card .offer-content {
		padding: 15px;
	}
	
	.places-section .offer-card .offer-content h2 {
		font-size: 16px;
		line-height: 1.3;
		margin-bottom: 8px;
	}
	
	.places-section .offer-card .offer-content p {
		font-size: 12px;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	
	.places-section .offer-card .offer-content .offer-btn {
		display: none; /* Hide button on mobile */
	}
	
	/* Location icon for mobile - show instead of button */
	.places-section .offer-card .offer-content .mobile-location-icon {
		display: inline-block;
		width: 40px;
		height: 40px;
		background-color: #007bff;
		border-radius: 50%;
		text-align: center;
		line-height: 40px;
		color: white;
		font-size: 18px;
		cursor: pointer;
		transition: all 0.3s ease;
		margin-top: 10px;
	}
	
	.places-section .offer-card .offer-content .mobile-location-icon:hover {
		background-color: #0056b3;
		transform: scale(1.1);
	}
	
	.places-section .section-heading h5 {
		font-size: 14px;
	}
	
	.places-section .section-heading h2 {
		font-size: 20px;
		line-height: 1.3;
	}
	.home_1 .search-card .search-card-inner .search-btn {
		margin-top: 15px;
		width: 100%;
		padding: 12px 20px;
	}
	.payment-method {
		float: none;
		width: 100%;
		margin-bottom: 15px;
	}
	.newsletter-card .newsletter-form .newsletter-btn {
		padding: 12px 20px;
		font-size: 14px;
		margin-top: 10px;
		width: 100%;
	}
	.newsletter-card .newsletter-form input.form-control {
		padding: 12px 15px;
		margin-bottom: 10px;
		width: 100%;
	}
	.modal_newsletter_card .modal-body .newsletter-card {
		padding: 15px;
	}
	.cookie_consent_card.left {
		left: 5px;
	}
	.cookie_consent_card.right {
		right: 5px;
	}
	.cookie_consent_card {
		max-width: 95%;
		bottom: 5px;
		border-radius: 4px;
		font-size: 13px;
		padding: 10px;
	}
	.newsletter-card {
		padding: 15px;
	}
	/* Additional mobile optimizations */
	.container {
		padding-left: 15px;
		padding-right: 15px;
	}
	.btn {
		padding: 10px 20px;
		font-size: 14px;
	}
	h1 { font-size: 28px; }
	h2 { font-size: 24px; }
	h3 { font-size: 20px; }
	h4 { font-size: 18px; }
	h5 { font-size: 16px; }
	h6 { font-size: 14px; }
}

/* Large Mobile :480px. */
@media only screen and (min-width: 480px) and (max-width: 767px) {
    .home_1 .search-card .search-card-inner .search-btn {
        margin-top: 15px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group {
        margin-bottom: 15px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .chosen-container {
        width: 100% !important;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .chosen-container .chosen-single {
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .chosen-container .chosen-single div b {
        margin-top: 18px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .form-control {
        height: 50px;
        font-size: 14px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .input-group-addon {
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .input-group-addon i {
        line-height: 50px;
    }
    .home_1 .search-card .search-card-inner .search-btn {
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    .home_1 .search-card .search-card-inner .search-btn i {
        line-height: 50px;
    }
    
    /* Featured Rooms Section Large Mobile Responsive */
    .featured-section .col-lg-4 {
        width: 50%;
        float: left;
        padding: 0 8px;
    }
    
    .featured-section .item-card {
        margin-bottom: 18px;
    }
    
    .featured-section .item-card .item-content {
        padding: 12px;
    }
    
    .featured-section .item-card .item-content .item-title a {
        font-size: 15px;
        line-height: 1.3;
    }
    
    .featured-section .item-card .pric-card .new-price {
        font-size: 15px;
    }
    
    .featured-section .item-card .pric-card .old-price {
        font-size: 13px;
    }
    
    .featured-section .item-card .pric-card .per-day-night {
        font-size: 11px;
    }
    
    .featured-section .item-card a.btn.theme-btn.book-now-btn {
        padding: 7px 12px;
        font-size: 11px;
        min-width: 100px;
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    
    .featured-section .item-card ul.item-meta li {
        font-size: 10px;
        padding: 3px 6px;
    }
    
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control {
        height: 50px;
        font-size: 14px;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus {
        border-color: var(--color-theme);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        border-color: var(--color-theme);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon i {
        color: var(--color-theme);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        background: var(--color-white);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        border-left: 0;
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        border-right: 1px solid var(--color-theme);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        border-top: 1px solid var(--color-theme);
    }
    .home_1 .search-card .search-card-inner .search-form .form-group .input-group .form-control:focus + .input-group-addon {
        border-bottom: 1px solid var(--color-theme);
    }
    
    /* Places Section for Medium Mobile */
    .places-section .col-lg-4 {
        width: 50%;
        float: left;
        padding: 0 10px;
    }
    
    .places-section .offer-card .offer-content h2 {
        font-size: 18px;
    }
    
    .places-section .offer-card .offer-content p {
        font-size: 13px;
    }
    
    .places-section .offer-card .offer-content .offer-btn {
        font-size: 14px;
        padding: 12px 20px;
        min-width: 130px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    
    /* Hide button and show location icon on tablet */
    .places-section .offer-card .offer-content .offer-btn {
        display: none;
    }
    
    .places-section .offer-card .offer-content .mobile-location-icon {
        display: inline-block;
        width: 44px;
        height: 44px;
        background-color: #007bff;
        border-radius: 50%;
        text-align: center;
        line-height: 44px;
        color: white;
        font-size: 20px;
        cursor: pointer;
        transition: all 0.3s ease;
        margin-top: 10px;
    }
    
    .places-section .offer-card .offer-content .mobile-location-icon:hover {
        background-color: #0056b3;
        transform: scale(1.1);
    }
    
    .places-section .section-heading h5 {
        font-size: 12px;
    }
    
    .places-section .section-heading h2 {
        font-size: 18px;
        line-height: 1.2;
    }
    
    .places-section {
        padding: 30px 0;
    }
    
    /* Small Mobile Devices */
    @media only screen and (max-width: 479px) {
        /* Places Section for Small Mobile */
        .places-section .col-lg-4 {
            width: 50%;
            float: left;
            padding: 0 5px;
        }
        
        .places-section .offer-card {
            margin-bottom: 10px;
        }
        
        .places-section .offer-card .offer-content {
            padding: 12px;
        }
        
        .places-section .offer-card .offer-content h2 {
            font-size: 14px;
            line-height: 1.2;
            margin-bottom: 6px;
        }
        
        .places-section .offer-card .offer-content p {
            font-size: 11px;
            line-height: 1.3;
            margin-bottom: 8px;
        }
        
        /* Hide button and show location icon on small mobile */
        .places-section .offer-card .offer-content .offer-btn {
            display: none;
        }
        
        .places-section .offer-card .offer-content .mobile-location-icon {
            display: inline-block;
            width: 38px;
            height: 38px;
            background-color: #007bff;
            border-radius: 50%;
            text-align: center;
            line-height: 38px;
            color: white;
            font-size: 16px;
            cursor: pointer;
            transition: all 0.3s ease;
            margin-top: 8px;
        }
        
        .places-section .offer-card .offer-content .mobile-location-icon:hover {
            background-color: #0056b3;
            transform: scale(1.1);
        }
        
        .places-section .section-heading h5 {
            font-size: 11px;
        }
        
        .places-section .section-heading h2 {
            font-size: 16px;
            line-height: 1.2;
        }
        
        .places-section {
            padding: 25px 0;
        }
    }
