/* Uniform 8:5 presentation for editorial photos and generated image variants.
   Logos, avatars, maps, virtual tours, and inline article images keep their
   intrinsic ratios because cropping those assets would change their meaning. */

:root {
    --content-image-ratio: 8 / 5;
}

:is(
    .home-hero__media,
    .home-event-media,
    .home-place-media,
    .home-article-media,
    .event-card-media,
    .article-card-img,
    .article-featured-card__media,
    .article-feed-item__media,
    .category-img-container,
    .location-img-container,
    .entry-img-height,
    .fullcard-img-wrapper,
    .ritm-result-img-wrapper,
    .object-card-img-container,
    .public-profile-card-media,
    .favorites-list-media,
    .story-image,
    .item-card-img,
    .category-card-img-wrapper,
    .image-preview,
    .gallery-thumb,
    .article-cover-preview,
    .article-gallery-link img,
    .article-gallery-thumb,
    .object-detail-page .thumb-img,
    .photo-manage-card img,
    .moderation-image-change-card,
    .moderation-image-change-card img
) {
    aspect-ratio: var(--content-image-ratio) !important;
}

:is(
    .home-hero__media,
    .event-card-media,
    .category-img-container,
    .location-img-container,
    .entry-img-height,
    .object-card-img-container,
    .story-image,
    .item-card-img,
    .category-card-img-wrapper,
    .image-preview,
    .gallery-thumb,
    .article-gallery-thumb,
    .object-detail-page .thumb-img,
    .photo-manage-card img,
    .moderation-image-change-card,
    .moderation-image-change-card img
) {
    height: auto !important;
    min-height: 0;
}

:is(
    .home-hero__media img,
    .home-event-media img,
    .home-place-media img,
    .home-article-media img,
    .article-featured-card__media img,
    .article-feed-item__media img,
    .category-img-container img,
    .location-img-container img,
    .entry-img-height img,
    .fullcard-img-wrapper img,
    .ritm-result-img-wrapper img,
    .object-card-img-container img,
    .article-gallery-link img,
    .object-detail-page .thumb-img,
    .photo-manage-card img,
    .moderation-image-change-card img
) {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.favorites-list-media {
    align-self: start;
    width: 100%;
    min-height: 0;
}

/* Compact horizontal event cards deliberately use a fixed media column. */
@media (max-width: 767.98px) {
    .events-page .event-card-media {
        height: 100% !important;
        min-height: 100%;
        aspect-ratio: auto !important;
    }
}
