/* Unified image sizing per section */

/* Card grids (home case studies, case studies index, blog if images present) */
.posts .image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    /* consistent landscape ratio */
    overflow: hidden;
    border-radius: 0.25rem;
}

.posts .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* crop while preserving composition */
    display: block;
}

/* Sidebar mini posts/cards */
.mini-posts .image {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    /* squares for tidy sidebar */
    overflow: hidden;
    border-radius: 0.25rem;
}

.mini-posts .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Testimonial/Team card banner area when using background-image inline */
.team-card .card-img-top {
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
}

@media (min-width: 992px) {
    .posts .image {
        aspect-ratio: 16 / 9;
    }

    .mini-posts .image {
        aspect-ratio: 1 / 1;
    }
}

/* Proven Process images: slightly smaller & uniform */
#provenProcess .image.object.fit {
    /* Slightly larger than previous, still not full width */
    max-width: clamp(420px, 88%, 680px);
    margin: 0 auto;
    /* center within column */
}

#provenProcess .ProcessImage {
    width: 100%;
    aspect-ratio: 16 / 9;
    /* consistent ratio */
    object-fit: cover;
    border-radius: 0.25rem;
    display: block;
}

/* No special desktop override needed; clamp keeps it mid-sized responsively */