/* Service-specific imagery and face-safe framing. Hero dimensions remain unchanged. */
#vision .visual img{object-position:100% 50%}
/* Content images preserve the full scene so both faces and monitors remain visible. */
.consulting-visual img{aspect-ratio:auto!important;max-height:none!important;object-fit:contain!important}
.brand-editorial .editorial-image img,.recruit-intro .editorial-image img{aspect-ratio:auto;max-height:none;object-fit:contain}
.unified-hero[data-hero-photo] .unified-art{left:23%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%);mask-image:linear-gradient(90deg,transparent,#000 24%)}
.unified-hero[data-hero-motion] .hero-frame img{object-position:var(--hero-focus-x,70%) var(--hero-focus-y,45%);transform-origin:var(--hero-focus-x,70%) var(--hero-focus-y,45%);animation-duration:24s}
.unified-hero[data-hero-motion] .hero-frame-next img{transform-origin:var(--hero-focus-x,65%) var(--hero-focus-y,45%)}
.hero-frame-next{animation-duration:24s}
@keyframes hiddenad-hero-dissolve{0%,40%,100%{opacity:0}50%,90%{opacity:1}}
@media(max-width:960px){.unified-hero[data-hero-photo] .unified-art{left:0;-webkit-mask-image:none;mask-image:none}}
@media(max-width:700px){
 #vision .visual img{aspect-ratio:1.4;object-position:100% 50%}
 .unified-hero[data-hero-motion] .hero-frame img{object-position:var(--hero-mobile-x,var(--hero-focus-x,70%)) var(--hero-focus-y,45%);transform-origin:var(--hero-mobile-x,var(--hero-focus-x,70%)) var(--hero-focus-y,45%)}
}
