/* 响应式设计 */
@media (max-width: 1199px) {
    .slide-title {
        font-size: 40px;
    }
    
    .section-title {
        font-size: 32px;
    }
}

@media (max-width: 991px) {
    /* 导航栏适配平板 */
    .hamburger {
        display: block;
    }
    
    .hamburger.active .bar:nth-child(2) {
        opacity: 0;
    }
    
    .hamburger.active .bar:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
    }
    
    .hamburger.active .bar:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg);
    }
    
    .nav-menu {
        position: fixed;
        left: -100%;
        top: 80px;
        flex-direction: column;
        background-color: var(--white);
        width: 100%;
        text-align: center;
        transition: var(--transition);
        box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
        padding: 20px 0;
        z-index: 999;
    }
    
    .nav-menu.active {
        left: 0;
    }
    
    .nav-item {
        margin: 15px 0;
    }
    
    /* 轮播图 */
    .slide-title {
        font-size: 32px;
    }
    
    .slide-subtitle {
        font-size: 18px;
    }
    
    .carousel-btn {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
    
    .prev-btn {
        left: 15px;
    }
    
    .next-btn {
        right: 15px;
    }
    
    /* 服务网格 */
    .services-grid {
        grid-template-columns: 1fr;
        max-width: 500px;
        margin: 0 auto;
    }
    
    /* 行程网格 */
    .tours-grid {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
    
    /* 页脚网格 */
    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* 聊天窗口 */
    .chat-window {
        width: 300px;
        height: 400px;
    }
}

@media (max-width: 767px) {
    /* 移动端样式 */
    .banner-carousel {
        height: 60vh;
        margin-top: 70px;
    }
    
    .slide-title {
        font-size: 24px;
    }
    
    .slide-subtitle {
        font-size: 16px;
        margin-bottom: 20px;
    }
    
    .btn {
        padding: 10px 20px;
        font-size: 14px;
    }
    
    .section-header {
        margin-bottom: 40px;
    }
    
    .section-title {
        font-size: 28px;
    }
    
    .section-subtitle {
        font-size: 16px;
    }
    
    .service-card {
        padding: 30px 20px;
    }
    
    .service-icon {
        width: 70px;
        height: 70px;
        margin-bottom: 20px;
    }
    
    .service-icon i {
        font-size: 30px;
    }
    
    .service-title {
        font-size: 20px;
    }
    
    .tours-grid {
        grid-template-columns: 1fr;
    }
    
    .tour-actions {
        flex-direction: column;
    }
    
    .tour-actions .btn {
        width: 100%;
        margin-bottom: 10px;
    }
    
    .tour-actions .btn:last-child {
        margin-bottom: 0;
    }
    
    /* 页脚 */
    .footer {
        padding: 50px 0 20px;
    }
    
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .footer-title {
        font-size: 18px;
        margin-bottom: 15px;
    }
    
    /* 语言切换器 */
    .language-switcher {
        top: 15px;
        right: 15px;
    }
    
    .lang-btn {
        padding: 6px 12px;
        font-size: 14px;
    }
    
    /* 聊天窗口 */
    .chat-window {
        width: 280px;
        right: -20px;
    }
    
    .chat-btn:hover .chat-text {
        opacity: 0;
    }
}

@media (max-width: 480px) {
    .slide-title {
        font-size: 20px;
    }
    
    .slide-subtitle {
        font-size: 14px;
    }
    
    .carousel-dots {
        bottom: 20px;
    }
    
    .dot {
        width: 10px;
        height: 10px;
        margin: 0 5px;
    }
    
    .services-section, .featured-tours {
        padding: 60px 0;
    }
    
    .container {
        padding: 0 15px;
    }
}