/* ==========================================================
   Ligue62 — Événements (ACF) — CSS COMPLETE (clean)
   Hypothèses HTML :
   - .ligue62-ev-grid (style inline: --ligue62-ev-cols, --ligue62-ev-img-h)
   - article.ligue62-ev-card
     - .ligue62-ev-media (DIV, pas un lien) + img
     - .ligue62-ev-body
       - h3.ligue62-ev-title > a (seul lien)
       - p.ligue62-ev-excerpt (optionnel)
     - .ligue62-ev-meta (bandeau date, dernier bloc)
   Objectifs :
   - Grille responsive simple
   - Cartes bord carré, pas d'ombre
   - Image crop cover
   - Bandeau bleu #0000E5 collé en bas, bord à bord
   - Avada gère totalement le style des liens
   ========================================================== */

:root{
  --ligue-blue: #0000E5;
  --ligue-border: rgba(0,0,0,.14);

  --ligue-gap: 24px;
  --ligue-pad: 18px;

  --ligue-img-h-fallback: 200px;
}

/* =========================
   SECTION / GRID
========================= */
.ligue62-ev-section{
  width: 100%;
}

.ligue62-ev-grid{
  display: grid;
  width: 100%;
  max-width: 100%;

  grid-template-columns: repeat(var(--ligue62-ev-cols, 3), minmax(0, 1fr));
  gap: var(--ligue-gap);
  align-items: stretch;
}

.ligue62-ev-grid > *{
  min-width: 0;
}

@media (max-width: 1024px){
  .ligue62-ev-grid{ --ligue62-ev-cols: 2; }
}
@media (max-width: 640px){
  .ligue62-ev-grid{
    --ligue62-ev-cols: 1;
    gap: 18px;
  }
  :root{
    --ligue-pad: 16px;
  }
}

/* =========================
   CARD
========================= */
article.ligue62-ev-card{
  background: #fff;
  border: 1px solid var(--ligue-border);
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;

  display: flex;
  flex-direction: column;

  width: 100%;
  max-width: 100%;
  height: 100%;

  /* Avada-proof : évite des comportements de flex/grid */
  min-height: 0;
  padding: 0;
  margin: 0;
}

/* =========================
   MEDIA (NON cliquable)
========================= */
.ligue62-ev-media{
  width: 100%;
  max-width: 100%;

  height: var(--ligue62-ev-img-h, var(--ligue-img-h-fallback));
  overflow: hidden;

  /* pas d'effet */
  box-shadow: none;
  border-radius: 0;
}

.ligue62-ev-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* placeholder si pas d'image */
.ligue62-ev-media--placeholder{
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.04);
}

/* =========================
   BODY
========================= */
.ligue62-ev-body{
  /* le body prend l'espace, permet de coller le bandeau en bas */
  flex: 1 1 auto;
  min-height: 0;

  padding: var(--ligue-pad);
  margin: 0;
}

/* Neutralise d'éventuels espaces Avada sur les blocs internes */
.ligue62-ev-body > *{
  margin-top: 0;
}

/* =========================
   TITLE (Avada gère le lien)
========================= */
.ligue62-ev-title{
  margin: 0;
  line-height: 1.15;
  font-weight: 700;
  font-size: clamp(18px, 1vw + 14px, 26px);
}

/* On ne force pas les couleurs, on ne crée pas de hover : Avada fait */
.ligue62-ev-title a{
  text-decoration: none;
}
.ligue62-ev-title a:hover{
  text-decoration: none;
}

/* =========================
   EXCERPT (optionnel)
========================= */
.ligue62-ev-excerpt{
  margin: 12px 0 0 0;
  line-height: 1.45;
  font-size: 15px;
  color: rgba(0,0,0,.75);
}

/* (au cas où un vieux HTML sortirait un p vide) */
.ligue62-ev-excerpt:empty{
  display: none;
}

/* =========================
   META (bandeau date)
   - collé en bas
   - bord à bord
========================= */
.ligue62-ev-meta{
  margin-top: auto;      /* pousse en bas */
  margin-bottom: 0;

  width: 100%;
  display: block;

  background: var(--ligue-blue);
  color: #fff;

  padding: 12px 14px;
  text-align: center;

  font-weight: 700;
  font-size: 14px;
  line-height: 1.2;

  border-radius: 0;
  box-shadow: none;
  text-shadow: none;

  /* pas cliquable */
  pointer-events: none;
}

@media (max-width: 640px){
  .ligue62-ev-meta{
    font-size: 13px;
    padding: 11px 12px;
  }
}
