/* Additional responsive styles */
@media (max-width: 1200px) {
    .container {
        width: 95%;
    }
}

@media (max-width: 992px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .projects-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .services-grid {
        grid-template-columns: 1fr;
    }
    
    .projects-grid {
        grid-template-columns: 1fr;
    }
    
    .hero {
        height: 80vh;
    }
    
    .hero-content h1 {
        font-size: 2rem;
    }
    
    .section-title h2 {
        font-size: 1.8rem;
    }
}

@media (max-width: 576px) {
    .hero-content h1 {
        font-size: 1.5rem;
    }
    
    .hero-content p {
        font-size: 0.9rem;
    }
    
    .btn {
        padding: 10px 20px;
        font-size: 0.8rem;
    }
    
    .contact-info,
    .contact-form {
        padding: 20px;
    }
}

/* Print styles */
@media print {
    .header,
    .footer,
    .cta-section,
    .hero-buttons {
        display: none;
    }
    
    body {
        color: #000;
    }
    
    a {
        text-decoration: underline;
    }
}