/* Perspective-mapped live signage inside the untouched storefront photograph.
   The existing .hero__scene and image object-fit rules remain responsible for
   all desktop/mobile cropping; JS maps the four inner screen corners. */
.hero--with-storefront .hero__scene-live {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 1920px;
    height: 1080px;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: #141c18;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform-origin: 0 0;
    backface-visibility: hidden;
    pointer-events: none;
    transition: opacity .25s ease;
}
.hero--with-storefront .hero__scene-live.is-ready {
    opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
    .hero--with-storefront .hero__scene-live {
        transition: none;
    }
}

/* Broker showcase copy must stay inside the card without clipping. */
.ft6-broker-stage .ft4-split-photo{width:42%}
.ft6-broker-stage .ft4-split-copy{width:58%;padding:12px 14px;gap:6px;justify-content:center}
.ft6-broker-stage .ft4-split-copy>*{flex-shrink:0}
.ft6-broker-stage .ft4-split-copy>span{letter-spacing:.04em;white-space:nowrap}
.ft6-broker-stage .ft4-split-copy strong{display:block;overflow:visible;-webkit-line-clamp:unset;font-size:clamp(16px,1.25vw,20px);line-height:1.15}
.ft6-broker-stage .ft4-split-copy small{display:block;overflow:visible;-webkit-line-clamp:unset;max-width:none;font-size:12px;line-height:1.35}
@media(max-width:650px){
.ft6-broker-stage .ft4-split-copy{padding:8px 9px;gap:4px}
.ft6-broker-stage .ft4-split-copy>span{white-space:normal;letter-spacing:.02em;font-size:8px}
.ft6-broker-stage .ft4-split-copy strong{font-size:14px;line-height:1.12}
.ft6-broker-stage .ft4-split-copy small{font-size:11px;line-height:1.3}
}
