/* Full-height catalog carousel with proportional image widths. */
.one-lp-photo.one-lp-photo--full {
    --catalog-carousel-height: 220px;
    /* Reserve space until the lazy image reveals its actual proportions. */
    width: calc(var(--catalog-carousel-height) * var(--catalog-carousel-ratio, 1.5));
    min-width: 0;
    flex: 0 0 auto;
}

.one-lp-photo--full span,
.one-lp-photo--full a {
    width: auto;
    height: var(--catalog-carousel-height);
    aspect-ratio: auto;
}

.one-lp-photo--full a img {
    display: block;
    width: auto;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: contain;
}

.one-lp-photo--full img[data-lazy]:not([src]) {
    width: 100%;
}

.one-lp-photo--full a {
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
}

@media (min-width: 1367px) and (max-width: 1680px) {
    .one-lp-photo.one-lp-photo--full {
        --catalog-carousel-height: 190px;
    }
}
