/* Responsive Styles */
@media (max-width: 1199px) {
    .container {
        max-width: 960px;
    }
}

@media (max-width: 991px) {
    .container {
        max-width: 720px;
    }
    
    .about-container {
        flex-direction: column;
        text-align: center;
    }
    
    .about-content {
        margin-bottom: 30px;
    }
    
    .about-divider {
        margin: 20px auto;
    }
    
    .booking-container {
        flex-direction: column;
    }
    
    .service-section, .calendar-section, .booking-details {
        width: 100%;
        border-left: none;
        border-right: none;
        border-bottom: 1px solid #ddd;
    }
}

@media (max-width: 768px) {
    .container {
        max-width: 540px;
    }
    
    .mobile-toggle {
        display: block;
    }

    .nav-menu {
        position: fixed;
        top: 70px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 70px);
        background: var(--dark);
        flex-direction: column;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        z-index: 999;
    }

    .nav-menu.active {
        left: 0;
    }

    .nav-menu li {
        margin: 15px 0;
    }

    .hero-title {
        font-size: 28px;
    }

    .hero-buttons {
        flex-direction: column;
        gap: 10px;
    }
    
    .btn {
        width: 40%;
        text-align: center;
    }

    .section-main-title {
        font-size: 28px;
    }

    .contact-container {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .footer-top {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    .video-categories,
    .photography-categories {
        gap: 8px;
    }
    
    .category-btn,
    .photography-btn {
        padding: 6px 12px;
        font-size: 12px;
    }
}

@media (max-width: 576px) {
    .container {
        width: 95%;
    }
    
    .services-grid,
    .videos-grid,
    .photography-grid,
    .design-grid,
    .portfolio-grid {
        grid-template-columns: 1fr;
    }
    
    .hero-title {
        font-size: 24px;
    }
    
    .hero-desc {
        font-size: 14px;
    }
    
    .section-main-title {
        font-size: 24px;
    }
    
    .lightbox-prev,
    .lightbox-next,
    .video-lightbox-prev,
    .video-lightbox-next {
        font-size: 30px;
        width: 40px;
        height: 40px;
    }
    
    .lightbox-close,
    .video-lightbox-close {
        top: 10px;
        right: 10px;
        font-size: 24px;
    }
}


