/* Non-critical CSS styles loaded asynchronously */

/* Additional animation styles */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.fade-in {
    animation: fadeIn 0.8s ease-out;
}

/* Print styles */
@media print {
    .hero, nav, .contact-section, footer {
        display: none !important;
    }
    
    body {
        font-size: 12pt;
        color: #000;
    }
    
    a {
        color: #000 !important;
        text-decoration: none !important;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    body {
        background-color: #121212;
        color: #f0f0f0;
    }
    
    .service-card {
        background-color: #2d2d2d;
    }
    
    .features-section {
        background-color: #1e1e1e;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .logo {
        color: #000;
    }
    
    nav a {
        color: #000;
    }
}

/* Reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}