/* Image-only overrides: existing Hero containers determine every height. */
.sm-crop-frame{display:block;overflow:hidden;position:relative}
.sm-crop-frame>.sm-crop-source{display:block!important;position:absolute!important;max-width:none!important;max-height:none!important;object-fit:cover!important;margin:0!important;aspect-ratio:auto!important;transform:none!important}
.moment-hero>.sm-crop-frame,.overview-hero>.sm-crop-frame,.hero>.sm-crop-frame{position:absolute;inset:0;width:100%;height:100%}
.sm-hero-fill,.sm-hero-center,.sm-hero-right{overflow:hidden}
.sm-hero-fill>.hero-image{object-fit:cover;width:100%;inset:0}
.sm-hero-center,.sm-hero-right{background:var(--sm-dark);color:#fff}
.sm-hero-center>:is(.hero-image,.moment-hero-image,.overview-hero-image),.sm-hero-right>:is(.hero-image,.moment-hero-image,.overview-hero-image){position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
.sm-hero-center>.sm-crop-frame>.sm-crop-source{object-fit:contain!important}
.sm-hero-center>.sm-crop-frame{inset:0;width:100%;height:100%;max-width:none;margin:0;transform:none;aspect-ratio:auto}
.sm-hero-right>:is(.hero-image,.moment-hero-image,.overview-hero-image){left:auto;right:0;width:65%;object-fit:cover;mask-image:linear-gradient(to right,transparent,#000 25%);-webkit-mask-image:linear-gradient(to right,transparent,#000 25%)}
/* Inner anchor follows .sm-container: 93.2%, capped by --sm-site-width.
   Match its existing responsive gutters; leave image sizing and zoom untouched. */
.sm-hero-right{--sm-editorial-inset:max(3.4%,calc((100% - var(--sm-site-width))/2))}
@media(max-width:800px){.sm-hero-right{--sm-editorial-inset:16px}}
@media(max-width:520px){.sm-hero-right{--sm-editorial-inset:12px}}
.sm-hero-right>.sm-crop-frame{left:auto;right:var(--sm-editorial-inset);width:auto;max-width:100%;aspect-ratio:var(--sm-right-ratio,3/2);transform:scale(var(--sm-right-zoom,1));transform-origin:100% var(--sm-right-y,50%);mask-image:linear-gradient(to right,transparent,#000 40%,#000 97.5%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 40%,#000 97.5%,transparent)}
/* Editorial zoom always expands the frame to the left, including on mobile.
   Anchor the source as well: generic focal-point offsets must never move its right edge. */
.sm-hero-right>.sm-crop-frame>.sm-crop-source{width:100%!important;height:100%!important;top:0!important;left:auto!important;right:0!important;object-fit:contain!important}
/* The existing editorial image boxes alone determine geometry. */
.featured-visual>.sm-crop-frame.story-image,.story-main>.sm-crop-frame.story-image{position:absolute}
.olympic-image>.sm-crop-frame{width:100%;height:100%}
@media(max-width:520px){.story-small .story-main>.sm-crop-frame.story-image{position:relative;flex-shrink:0}}

/* Approved variant 3: only pictured rubric heroes in Editorial/right mode.
   Existing geometry, other modes, term heroes, home and articles stay unchanged. */
.sportmomente-archive.is-reading-archive > .magazine-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source) > .sm-crop-frame,
.sportmomente-archive.is-sportheld-overview > .magazine-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source) > .sm-crop-frame,
.title-overview > .overview-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source) > .sm-crop-frame,
.chronicle-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source) > .sm-crop-frame,
.depesche-overview > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source) > .sm-crop-frame{mask-image:linear-gradient(to right,transparent,#000 40%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 40%,#000 95%,transparent)}
.sportmomente-archive.is-reading-archive > .magazine-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source)::after,
.sportmomente-archive.is-sportheld-overview > .magazine-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source)::after,
.title-overview > .overview-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source)::after,
.chronicle-page > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source)::after,
.depesche-overview > .overview-hero.sm-hero-right:has(> .sm-crop-frame > .sm-crop-source)::after{background:linear-gradient(90deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.15) 48%,rgba(0,0,0,.50) 100%)}
