/* Only partner logos: preserve the approved grid, typography and all other images. */
.ally-grid img { width: 100%; max-width: 220px; height: 160px; object-fit: contain; object-position: left center; }
.allies-strip .mex-smcf-logo { object-fit: contain; }
@media (max-width: 600px) { .ally-grid img { max-width: 180px; height: 140px; } }
/* Event announcement explicitly requested above the existing home hero. */
.mex-event-banner { margin-top: 24px; margin-bottom: 24px; }
.mex-event-banner .mex-event-art { display:block; border-radius:14px; overflow:hidden; }
.mex-event-banner .mex-event-image { display:block; width:100%; height:auto; object-fit:contain; }
.mex-event-caption { display:none; }
@media(max-width:700px) {
 .mex-event-banner { margin-top:16px; margin-bottom:16px; }
 .mex-event-caption { display:block; position:static; width:auto; height:auto; margin:0; padding:12px 0 0; overflow:visible; clip:auto; white-space:normal; }
 .mex-event-caption strong { display:block; font-size:16px; }
 .mex-event-caption p { margin:6px 0; font-size:14px; }
 .mex-event-caption a { display:inline-block; padding:6px 0; text-decoration:underline; font-size:14px; }
}
