/* Responsive Design */

/* Large screens */
@media (max-width: 1200px) {
    .hero-title {
        font-size: 3.5rem;
    }
}

/* Tablets and below */
@media (max-width: 991px) {
    .section-padding { padding: 60px 0; }
    
    .hero-title {
        font-size: 2.8rem;
    }
    
    .search-bar-container {
        margin-top: 20px;
        position: relative;
        box-shadow: none;
        background: transparent;
        padding: 0;
    }
    
    .search-form {
        flex-direction: column;
        background: white;
        padding: 20px;
        border-radius: var(--radius-md);
        box-shadow: var(--shadow-md);
    }
    
    .input-group {
        width: 100%;
        border-bottom: 1px solid #eee;
        border-radius: 0;
        border-right: none;
        border-left: none;
        border-top: none;
    }
    
    .search-btn {
        width: 100%;
        margin-top: 10px;
    }
    
    .testimonial-card {
        width: calc(50% - 20px);
    }
}

/* Mobile Devices */
@media (max-width: 768px) {
    .hamburger {
        display: block;
    }
    
    .navbar {
        position: fixed;
        top: 80px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 80px);
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: blur(10px);
        flex-direction: column;
        justify-content: flex-start;
        transition: var(--transition);
        padding-top: 40px;
        border-top: 1px solid #eee;
    }
    
    .navbar.active {
        left: 0;
    }
    
    .nav-links {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }
    
    .nav-links a {
        font-size: 1.2rem;
    }
    
    .btn-book-nav {
        display: none; /* Hide on mobile to save space, rely on hamburger */
    }
    
    .hero-title {
        font-size: 2.2rem;
    }
    
    .hero-subtitle {
        font-size: 1.1rem;
    }
    
    .hero-btns {
        flex-direction: column;
        padding: 0 20px;
    }
    
    .cta-content h2 {
        font-size: 2rem;
    }
    
    .testimonial-card {
        width: 100%;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .hero-title {
        font-size: 1.8rem;
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .destinations-grid, .packages-grid, .blogs-grid {
        grid-template-columns: 1fr;
    }
}
