@media (max-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

@media (max-width: 992px) {
    .about-content,
    .service-detail-content,
    .contact-container {
        flex-direction: column;
    }
    
    .about-image,
    .service-detail-image {
        order: -1;
    }
    
    h1 {
        font-size: 2.2rem;
    }
    
    h2 {
        font-size: 1.8rem;
    }
}

@media (max-width: 768px) {
    h1 {
        font-size: 2rem;
    }
    
    h2 {
        font-size: 1.6rem;
    }
    
    .hero,
    .page-header {
        padding: 80px 0;
    }
    
    .hero h1,
    .page-header h1 {
        font-size: 2.5rem;
    }
    
    section {
        padding: 60px 0;
    }
    
    nav ul {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: var(--white);
        flex-direction: column;
        padding: 20px 0;
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    }
    
    nav ul.active {
        display: flex;
    }
    
    nav li {
        margin: 0;
        text-align: center;
    }
    
    nav li a {
        display: block;
        padding: 15px 0;
    }
    
    .mobile-menu-btn {
        display: block;
    }
    
    .service-features {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .hero h1,
    .page-header h1 {
        font-size: 2rem;
    }
    
    .hero p {
        font-size: 1rem;
    }
    
    .services-grid,
    .facilities-grid {
        grid-template-columns: 1fr;
    }
    
    .gallery-grid {
        grid-template-columns: 1fr;
    }
    
    .footer-container {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .footer-col h3::after {
        left: 50%;
        transform: translateX(-50%);
    }
    
    .social-links {
        justify-content: center;
    }
}