    /* Conteneur global */
    #evenements-libcal { 
        margin-top: 2rem; 
    }

    /* Conteneur : flex + wrap */
    #evenements-libcal .uqam_evenements-wrapper {
        display: flex;
        flex-wrap: wrap;
        gap: 32px;
    }

    /* Par défaut : 1 colonne (fallback) */
    #evenements-libcal .uqam_evenements-item {
        flex: 1 1 100%;
        max-width: 100%;
    }

    /* 2 colonnes desktop */
    #evenements-libcal .uqam_evenements-wrapper.columns-2 .uqam_evenements-item {
        flex: 1 1 calc(50% - 16px);
        max-width: calc(50% - 16px);
    }

    /* 3 colonnes desktop */
    #evenements-libcal .uqam_evenements-wrapper.columns-3 .uqam_evenements-item {
        flex: 1 1 calc(33.333% - 21.34px);
        max-width: calc(33.333% - 21.34px);
    }

    /* Lien image */
    #evenements-libcal .uqam_evenements-images {
        display: block;
        width: 100%;
    }

    /* Cadre d’image: même hauteur pour toutes les cartes */
    #evenements-libcal .uqam_evenements-figure {
      position: relative;
      width: 100%;
      aspect-ratio: 260 / 173;
      overflow: hidden;
    }

    /* L’image remplit le cadre */
    #evenements-libcal .uqam_evenements-figure > img.uqam_evenements-image {
      width: 100% !important;
      height: 100% !important;
      display: block;
      object-fit: cover;
      object-position: center;
    }

    /* Badge “x places disponibles” */
    #evenements-libcal .seat-indicator {
        position: absolute;
        left: 16px;
        bottom: 6px;
        background: rgba(0,0,0,0.85);
        color: #fff;
        padding: 4px 12px;
        border-radius: 4px;
        font-size: 0.85rem;
        white-space: nowrap;
        margin-bottom: 10px;
    }

    /* Texte */
    #evenements-libcal .uqam_evenements-content { 
        padding-top: 0; 
    }

    #evenements-libcal .uqam_evenements-title {
        display: block;
        font-size: 1.1rem;
        font-weight: 600;
        color: #0064a3;
        margin-bottom: 4px;
        text-decoration: none;
    }

    #evenements-libcal .uqam_evenements-title:hover { 
        text-decoration: underline; 
    }

    #evenements-libcal .uqam_evenements-date {
        font-size: 0.95rem;
        color: #333;
        margin-bottom: 2px;
    }

    #evenements-libcal .evenements__heure { 
        font-size: 0.9rem; 
    }

    /* 🔻 Mobile : TOUJOURS 1 colonne, même pour columns-2 / columns-3 */
    @media (max-width: 767px) {
        #evenements-libcal .uqam_evenements-wrapper.columns-2 .uqam_evenements-item,
        #evenements-libcal .uqam_evenements-wrapper.columns-3 .uqam_evenements-item {
            flex: 1 1 100% !important;
            max-width: 100% !important;
        }
    }