/* Real interface covers retain their geometry despite shared Webflow rules. */
.portfolio-case main .case-cover-art img:not(.miquel-cover-texture){
  height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;
}
.portfolio-case main .case-cover-art{display:grid;place-items:center}
.portfolio-case main .case-cover-art:not(.oisy-cover-art):not(.bilet-cover-art):not(.miquel-cover-art){aspect-ratio:auto;height:auto;min-height:0;max-height:none}
.portfolio-case.oisy-page .oisy-cover-art{display:block;min-width:0;min-height:0;aspect-ratio:1.3;padding:0;align-self:center}
.portfolio-case.oisy-page .oisy-cover-art .oisy-cover-desktop{position:relative;display:block;width:90%;max-width:100%;height:auto;max-height:none;object-fit:contain;margin:0}
.portfolio-case.oisy-page .oisy-cover-art .oisy-cover-mobile{position:absolute;right:0;bottom:0;width:29%;max-width:220px;height:auto;max-height:none;object-fit:contain}
.portfolio-case.series-case .case-cover-art>img{width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}
.portfolio-case[data-case=bilet-pb-ua] .bilet-cover-mobile{height:auto;max-height:none;object-fit:contain}
.portfolio-case[data-case=bilet-pb-ua] .bilet-seat-map .case-shot-media{max-height:none}
.portfolio-case .v52-mobile-block-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:clamp(24px,4vw,56px);align-items:start;justify-items:center}
.portfolio-case .v52-mobile-block-grid figure{width:min(100%,280px);margin:0}
.portfolio-case .v52-mobile-block-grid img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:700px){
 .portfolio-case.oisy-page .oisy-cover-art{aspect-ratio:1.12;min-height:0}
 .portfolio-case.oisy-page .oisy-cover-art .oisy-cover-desktop{width:100%;height:auto}
 .portfolio-case.oisy-page .oisy-cover-art .oisy-cover-mobile{width:37%;max-width:160px;height:auto;right:2%;bottom:0}
 .portfolio-case .v52-mobile-block-grid{grid-template-columns:1fr}
}

/* Updated Bilet phone captures use their native source ratio. */
.portfolio-case[data-case=bilet-pb-ua] .bilet-mobile-grid figure,.portfolio-case[data-case=bilet-pb-ua] .bilet-mobile-grid figure:last-child{max-width:300px}
.portfolio-case[data-case=bilet-pb-ua] .bilet-mobile-screen{aspect-ratio:auto}
.portfolio-case[data-case=bilet-pb-ua] .bilet-mobile-screen img{height:auto;object-fit:contain}

/* Oisy cover: phone stays portrait and inside the desktop composition. */
.portfolio-case.oisy-page main .oisy-cover-art{aspect-ratio:auto;height:auto;min-height:0;}
.portfolio-case.oisy-page main .oisy-cover-art .oisy-cover-desktop{width:100%;}
.portfolio-case.oisy-page main .oisy-cover-art .oisy-cover-mobile{width:23%;max-width:180px;right:2%;bottom:3%;}
