.stb-banner{
    display:block;
    width:100%;
    max-width:562px;
    aspect-ratio:562 / 115;
    height:auto;
    overflow:hidden;
    border-radius:4px;
    background:#eee;
    line-height:0;
    box-sizing:border-box;
}

/*
 * All banner artwork uses one master geometry: 562 × 115 px.
 * The slot may scale down with a narrower column, but its ratio never changes.
 * Any image with a different ratio is cropped rather than stretching the layout.
 */
.stb-banner img{
    display:block;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
}

/* HOME bottom slots */
.stb-context-home-bottom{
    width:100%;
    max-width:562px;
    aspect-ratio:562 / 115;
}

/* HOME promoted-businesses banner: same 562:115 source ratio */
.stb-context-home-mini{
    width:100%;
    max-width:562px;
    aspect-ratio:562 / 115;
}

/* Sidebar uses the same ratio, scaled down to the sidebar width. */
.stb-context-sidebar-top,
.stb-context-sidebar-bottom{
    width:100%;
    max-width:562px;
    aspect-ratio:562 / 115;
    border:1px solid #dedede;
    background:#fff;
}

/*
 * Home layout correction.
 * The old 31% + 25% + 44% columns already equalled 100% before adding
 * the two 12px grid gaps, which pushed Promoted Businesses past the
 * right edge. fr units divide only the remaining width after gaps.
 */
.stp-row.three{
    grid-template-columns:minmax(0,31fr) minmax(0,25fr) minmax(0,44fr)!important;
}

.stp-row.three > *,
.stp-promoted,
.stp-promoted-body,
.stp-promoted-grid{
    min-width:0!important;
    max-width:100%!important;
}

.stp-promoted-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

/* Keep the Home wrappers tied to the new banner geometry. */
.stp-ads .stp-ad{
    width:100%;
    height:auto!important;
    aspect-ratio:562 / 115;
    overflow:hidden;
}

#stp-home-banner-1,
#stp-home-banner-2,
#stp-home-banner-3{
    width:100%;
    min-width:0;
}

@media(max-width:850px){
    .stb-banner,
    .stb-context-home-bottom,
    .stb-context-home-mini,
    .stb-context-sidebar-top,
    .stb-context-sidebar-bottom{
        width:100%;
        max-width:562px;
        height:auto!important;
        aspect-ratio:562 / 115;
    }

    .stp-ads .stp-ad{
        width:100%!important;
        height:auto!important;
        aspect-ratio:562 / 115!important;
    }
}
