/* Performance Optimization CSS */

/* Image optimization */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Lazy loading placeholder */
img[loading="lazy"] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Optimize hero slideshow */
.hero-slideshow .slide {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    will-change: transform;
}

/* GPU acceleration for animations */
.slide,
.cta-button,
.service-card,
.portfolio-item {
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Optimize fonts */
@font-face {
    font-display: swap;
}

/* Reduce layout shifts */
.service-card img,
.portfolio-item img,
.team-member img {
    aspect-ratio: 16/9;
    object-fit: cover;
}

/* Defer offscreen content */
.footer {
    content-visibility: auto;
}

/* Optimize testimonials */
.testimonial-card {
    content-visibility: auto;
    contain-intrinsic-size: 300px;
}
