/* Image Optimization CSS */

/* Optimize image loading and rendering */
img {
  /* Enable hardware acceleration for images */
  transform: translateZ(0);
  backface-visibility: hidden;
  
  /* Optimize image rendering */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  
  /* Prevent layout shifts */
  height: auto;
  max-width: 100%;
}

/* Optimize specific image types */
.client-logo {
  /* Optimize logo rendering */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  
  /* Enable GPU acceleration */
  transform: translateZ(0);
  will-change: transform, filter;
  
  /* Optimize transitions */
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
              filter 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.team-member-image {
  /* Optimize profile image rendering */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  
  /* Enable GPU acceleration */
  transform: translateZ(0);
  will-change: transform;
  
  /* Optimize transitions */
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Optimize project images */
.project-card img {
  /* Optimize project image rendering */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  
  /* Enable GPU acceleration */
  transform: translateZ(0);
  will-change: transform;
  
  /* Optimize object-fit */
  object-fit: cover;
  object-position: center;
}

/* Optimize partner logos */
.partner-card img {
  /* Optimize partner logo rendering */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  
  /* Enable GPU acceleration */
  transform: translateZ(0);
  will-change: transform;
  
  /* Optimize object-fit */
  object-fit: contain;
  object-position: center;
}

/* Optimize for different screen densities */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  img {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* Optimize for high DPI displays */
@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 288dpi) {
  img {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* Optimize for slow connections */
@media (prefers-reduced-data: reduce) {
  img {
    /* Reduce image quality for slow connections */
    image-rendering: auto;
  }
  
  /* Hide non-critical images */
  .project-card img,
  .team-member-image,
  .partner-card img {
    display: none;
  }
}

/* Optimize for print */
@media print {
  img {
    /* Optimize images for printing */
    image-rendering: auto;
    max-width: 100% !important;
    height: auto !important;
  }
  
  /* Hide decorative images */
  .client-logo,
  .team-member-image {
    display: none;
  }
}

/* Optimize for dark mode */
@media (prefers-color-scheme: dark) {
  img {
    /* Adjust images for dark mode */
    filter: brightness(0.9) contrast(1.1);
  }
  
  .client-logo {
    filter: grayscale(100%) brightness(0.8) contrast(1.1);
  }
  
  .client-logo:hover {
    filter: grayscale(0%) brightness(1) contrast(1.1);
  }
}

/* Optimize for forced colors mode */
@media (forced-colors: active) {
  img {
    /* Optimize images for forced colors */
    image-rendering: auto;
  }
  
  .client-logo {
    filter: none;
  }
}

/* Optimize for reduced motion */
@media (prefers-reduced-motion: reduce) {
  img {
    /* Remove image animations */
    transition: none;
  }
  
  .client-logo,
  .team-member-image {
    transition: none;
  }
}

/* Optimize for low-end devices */
@media (max-width: 480px) and (max-height: 800px) {
  img {
    /* Reduce image processing on low-end devices */
    image-rendering: auto;
  }
  
  .client-logo,
  .team-member-image {
    transition: none;
  }
}

/* Optimize for battery saving */
@media (prefers-reduced-data: reduce) {
  img {
    /* Reduce image processing for battery saving */
    image-rendering: auto;
  }
  
  .client-logo,
  .team-member-image {
    transition: none;
  }
}

/* Optimize for accessibility */
@media (prefers-contrast: high) {
  img {
    /* Enhance image contrast */
    filter: contrast(1.2);
  }
  
  .client-logo {
    filter: grayscale(100%) contrast(1.2);
  }
  
  .client-logo:hover {
    filter: grayscale(0%) contrast(1.2);
  }
}

/* Optimize for different orientations */
@media (orientation: landscape) {
  img {
    /* Optimize images for landscape orientation */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

@media (orientation: portrait) {
  img {
    /* Optimize images for portrait orientation */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* Optimize for different viewport sizes */
@media (max-width: 768px) {
  img {
    /* Optimize images for mobile */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
  
  .client-logo {
    /* Reduce logo size on mobile */
    max-width: 80px;
    max-height: 40px;
  }
  
  .team-member-image {
    /* Optimize team member images for mobile */
    width: 60px;
    height: 60px;
  }
}

@media (max-width: 480px) {
  img {
    /* Further optimize images for small mobile */
    image-rendering: auto;
  }
  
  .client-logo {
    /* Further reduce logo size on small mobile */
    max-width: 60px;
    max-height: 30px;
  }
  
  .team-member-image {
    /* Further optimize team member images for small mobile */
    width: 50px;
    height: 50px;
  }
}

/* Optimize for different connection types */
@media (prefers-reduced-data: reduce) {
  img {
    /* Reduce image quality for slow connections */
    image-rendering: auto;
  }
  
  /* Hide non-critical images */
  .project-card img,
  .team-member-image,
  .partner-card img {
    display: none;
  }
}

/* Optimize for different color schemes */
@media (prefers-color-scheme: light) {
  img {
    /* Optimize images for light mode */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

@media (prefers-color-scheme: dark) {
  img {
    /* Optimize images for dark mode */
    filter: brightness(0.9) contrast(1.1);
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* Optimize for different input types */
@media (pointer: coarse) {
  img {
    /* Optimize images for touch devices */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

@media (pointer: fine) {
  img {
    /* Optimize images for mouse devices */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* Optimize for different hover capabilities */
@media (hover: none) {
  img {
    /* Optimize images for devices without hover */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
  
  .client-logo:hover,
  .team-member-image:hover {
    /* Remove hover effects for devices without hover */
    transform: none;
    filter: none;
  }
}

@media (hover: hover) {
  img {
    /* Optimize images for devices with hover */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}
