/* ===================================
   HAD Global Image Proportions & Styling
   Applies to all pages except homepage
   =================================== */

/* Exclude homepage from these styles */
body:not(.homepage) {
  
  /* General image fixes for all sections */
  .images img,
  .image img,
  .images-all img,
  .image1 img,
  .image2 img,
  .main-image img,
  .service-image img,
  .blog-image img,
  .team-image img,
  .portfolio-image img,
  .details-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 500px !important;
    object-fit: cover !important;
    border-radius: 12px;
    transition: transform 0.3s ease;
  }

  /* Specific sizing for different sections */
  /* Service pages */
  .service-details-img img,
  .service-single-box .image img,
  .service-box .image img {
    height: 300px !important;
    object-fit: cover !important;
  }

  /* About sections */
  .about1 .image img,
  .about2 .main-image img,
  .about3 .image1 img,
  .about3 .image2 img,
  .about4 .image img,
  .about5-img img {
    height: 400px !important;
    object-fit: cover !important;
  }

  /* Team member images */
  .team-box .image img,
  .team-single-box .image img {
    height: 350px !important;
    object-fit: cover !important;
  }

  /* Blog/News images */
  .blog-box .image img,
  .blog-single-box .image img,
  .blog-details .main-image img {
    height: 280px !important;
    object-fit: cover !important;
  }

  /* Portfolio/Case study images */
  .portfolio-box .image img,
  .case-study-box .image img {
    height: 320px !important;
    object-fit: cover !important;
  }

  /* Contact page images */
  .contact-page-sec .images-all img,
  .contact5 .images-all img {
    height: 350px !important;
    object-fit: cover !important;
  }

  /* Gallery style images */
  .gallery-item img,
  .project-gallery img {
    height: 300px !important;
    object-fit: cover !important;
  }

  /* Smaller companion images */
  .images-all .image2 img,
  .about-page-advicx .image2 img {
    height: 250px !important;
    object-fit: cover !important;
  }

  /* Hero/Banner images on inner pages */
  .inner-hero img,
  .page-banner img,
  .breadcrumb-area img {
    height: 400px !important;
    object-fit: cover !important;
  }

  /* Add consistent shadows to all images */
  img {
    box-shadow: 0 8px 24px rgba(30, 95, 153, 0.12);
  }

  /* Hover effects */
  .image:hover img,
  .images:hover img,
  .image1:hover img,
  .image2:hover img {
    transform: scale(1.05);
    box-shadow: 0 12px 32px rgba(30, 95, 153, 0.18);
  }

  /* Fix overlapping issues */
  .images-all {
    position: relative;
    height: auto !important;
    overflow: visible;
  }

  .images-all .image1,
  .images-all .image2 {
    position: relative !important;
    margin-bottom: 20px;
  }

  /* Responsive image sizing */
  @media (max-width: 991px) {
    .about1 .image img,
    .about2 .main-image img,
    .about3 .image1 img,
    .about3 .image2 img,
    .about4 .image img,
    .about5-img img {
      height: 350px !important;
    }

    .service-details-img img,
    .service-single-box .image img,
    .service-box .image img {
      height: 250px !important;
    }

    .team-box .image img,
    .team-single-box .image img {
      height: 300px !important;
    }
  }

  @media (max-width: 767px) {
    /* Mobile sizing */
    .images img,
    .image img,
    .images-all img,
    .image1 img,
    .image2 img,
    .main-image img {
      height: 250px !important;
    }

    .about1 .image img,
    .about2 .main-image img,
    .about3 .image1 img,
    .about3 .image2 img,
    .about4 .image img,
    .about5-img img {
      height: 280px !important;
    }

    .service-details-img img,
    .service-single-box .image img,
    .service-box .image img,
    .blog-box .image img,
    .team-box .image img {
      height: 220px !important;
    }

    .images-all .image2 img,
    .about-page-advicx .image2 img {
      height: 200px !important;
    }
  }

  /* Special handling for HAD images */
  img[src*="Images-for-HAD"] {
    object-fit: cover !important;
    object-position: center center;
  }

  /* Fix for absolute positioned images */
  .images-all .image1,
  .images-all .image2,
  .about-page-advicx .images-all .image1,
  .about-page-advicx .images-all .image2 {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }

  /* Grid layout for multiple images */
  .images-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
  }

  .images-grid img {
    height: 280px !important;
    width: 100% !important;
    object-fit: cover !important;
  }

  /* Ensure shapes don't interfere with images */
  .shape,
  .shape1,
  .shape2,
  .shape3,
  .shape4,
  .shape5 {
    z-index: -1 !important;
    pointer-events: none;
  }
}

/* Utility classes for specific image ratios */
.img-ratio-16-9 img {
  aspect-ratio: 16/9 !important;
  height: auto !important;
  object-fit: cover !important;
}

.img-ratio-4-3 img {
  aspect-ratio: 4/3 !important;
  height: auto !important;
  object-fit: cover !important;
}

.img-ratio-1-1 img {
  aspect-ratio: 1/1 !important;
  height: auto !important;
  object-fit: cover !important;
}

/* Fix image containers */
.image-container {
  overflow: hidden;
  border-radius: 12px;
  position: relative;
}

.image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.image-container:hover img {
  transform: scale(1.05);
}