/* Intégration commune (Task 8 — harmonisation) : la bannière reste
   contenue dans son cadre (1180px ou pleine largeur selon le gabarit) et
   expose un focus visible clavier. Le contenu interne de la création
   publicitaire (image, HTML embarqué) n'est pas retouché. */
.brxe-lmec-campaign {
  display: block;
  overflow: hidden;
  width: 100%;
  max-width: 100%;
}

.lmec-campaign {
  max-width: 100%;
}

.lmec-campaign__link:focus-visible {
  outline: 2px solid var(--lmec-primary, #28a6a5);
  outline-offset: -2px; /* ring à l'intérieur : l'enveloppe est overflow:hidden */
}

.lmec-campaign__image {
  max-width: 100%;
}

.brxe-lmec-campaign > .lmec-campaign,
.brxe-lmec-campaign .lmec-campaign__link,
.brxe-lmec-campaign .lmec-campaign__picture,
.brxe-lmec-campaign .lmec-campaign__image {
  display: block;
  height: 100%;
  width: 100%;
}

.brxe-lmec-campaign .lmec-campaign__image {
  object-fit: contain;
}

/* Bannière Salon de l'alliance (Bloc 1, card-380) : limitée à la colonne
   éditoriale 780px plutôt que pleine largeur 1180px — lue comme un encart
   d'article au lieu d'une banderole. */
.card-380 {
  max-width: 780px;
  margin-inline: auto;
}

.lmec-campaign-group {
  margin-block: var(--space-m, 2rem);
}

.lmec-campaign-group__intro {
  margin-bottom: var(--space-s, 1.5rem);
}

.lmec-campaign-group__intro > :last-child {
  margin-bottom: 0;
}

.lmec-campaign-group__items {
  display: flex;
  flex-direction: column;
  gap: var(--space-s, 1.5rem);
}

.lmec-campaign-group .lmec-campaign,
.lmec-campaign-group .lmec-campaign__link,
.lmec-campaign-group .lmec-campaign__picture,
.lmec-campaign-group .lmec-campaign__image {
  display: block;
  width: 100%;
}

.lmec-campaign-group .lmec-campaign__image {
  height: auto;
  border-radius: var(--radius-m, 0.8rem);
}
