
/**
 * Habillage de The Events Calendar
 *
 * Ce fichier est chargé uniquement si The Events Calendar est actif
 * (voir functions.php).
 *
 */

/* ====================================================================
   THE EVENTS CALENDAR — VUE LISTE (cartes d'évènements)
   Ce fichier ne garde que : titre de mois + grille + cartes.
   Polices : Cinzel (titres) et Nunito (texte), définies dans theme.json.
   Chaque règle est suivie d'un commentaire expliquant ce que fait chaque champ.
   !important est utilisé partout car le plugin impose ses propres styles.
   ==================================================================== */

/* ====================================================================
   ÉVÉNEMENTS — VUE LISTE
   ==================================================================== */




/* -------------------------------------------------------------------- */
/* 1. Variables de design de Tribe Common : on les redéfinit en priorité */
/* -------------------------------------------------------------------- */
.tribe-common {
	--tec-color-accent-primary: #B5651D;
	--tec-color-accent-primary-hover: #2E1F16;
	--tec-color-accent-primary-active: #2E1F16;
	--tec-color-accent-secondary: #5C3D2E;

	--tec-color-button-primary: #2E1F16;
	--tec-color-button-primary-hover: #B5651D;
	--tec-color-button-primary-active: #5C3D2E;
	--tec-color-button-primary-text: #F5EFE6;

	--tec-color-icon-primary: #2E1F16;
	--tec-color-icon-secondary: #5C3D2E;

	--tec-color-link-primary: #B5651D;
	--tec-color-link-primary-hover: #2E1F16;

	--tec-color-text-primary: #2E1F16;
	--tec-color-text-secondary: #5C3D2E;

	--tec-color-background-primary: #FFFFFF;
	--tec-color-background-secondary: #F5EFE6;

	font-family: var(--wp--preset--font-family--corps), sans-serif;
	color: #2E1F16;
}

/* -------------------------------------------------------------------- */
/* 2. Barre de recherche + sélecteur de vue (Liste/Mois/Jour) : masqués  */
/*    pour ne garder que la barre Aujourd'hui / À venir en dessous       */
/* -------------------------------------------------------------------- */
.tribe-events-header,
.tribe-events-c-search,
.tribe-events-c-view-selector {
	display: none !important;
}

/* -------------------------------------------------------------------- */
/* 3. Barre du haut : Précédent/Suivant, Aujourd'hui, "À venir",         */
/*    sélecteur de date — devient la seule barre visible en haut        */
/* -------------------------------------------------------------------- */
.tribe-events-c-top-bar {
	background: transparent;
	border-color: #E7DCC8 !important;
	margin-top: 2rem;
}

.tribe-events-c-top-bar .tribe-events-c-top-bar__datepicker-button,
.tribe-events-c-top-bar .tribe-events-c-view-selector-button,
.tribe-events-c-top-bar .tribe-events-c-nav__prev,
.tribe-events-c-top-bar .tribe-events-c-nav__next {
	background-color: #ffffff !important;
	border: 1px solid #E7DCC8 !important;
	border-radius: 999px !important;
	color: #2E1F16 !important;
	box-shadow: 0 2px 10px rgba(46, 31, 22, 0.06);
}
.tribe-events-c-top-bar .tribe-events-c-top-bar__datepicker-button:hover,
.tribe-events-c-top-bar .tribe-events-c-view-selector-button:hover {
	border-color: #B5651D !important;
	color: #B5651D !important;
}

.tribe-events-c-view-selector__list-item--selected .tribe-events-c-view-selector__list-item-link,
.tribe-events-c-top-bar__nav-link--active {
	color: #2E1F16 !important;
	border-bottom-color: #B5651D !important;
}

.tribe-events-c-top-bar__datepicker-desktop-daterange-details,
.tribe-events-c-top-bar__nav-title {
	font-family: var(--wp--preset--font-family--titres), serif;
	color: #2E1F16 !important;
}






/* ====================================================================
   0. TITRE DE MOIS
   ==================================================================== */

li.tribe-events-calendar-list__month-separator
.tribe-events-calendar-list__month-separator-text {
    font-family: var(--wp--preset--font-family--cinzel) !important; /* police des titres */
    font-size: 2rem !important;          /* taille du texte (1rem = 16px) */
    font-weight: 700 !important;         /* épaisseur : 700 = gras */
    color: #FFFFFF !important;           /* couleur du texte : blanc */
    display: inline-block !important;    /* le bloc ne prend que la largeur du texte */
    padding-bottom: 0.5rem !important;   /* espace sous le texte */
    text-transform: uppercase !important;/* tout en majuscules */
    letter-spacing: 0.5px !important;    /* espace entre les lettres */
}

.tribe-events-calendar-list__month-separator {
    margin-top: 2.5rem !important;       /* espace au-dessus du titre de mois */
    grid-column: 1 / -1 !important;      /* le titre occupe toute la largeur de la grille */
}


/* ====================================================================
   1. GRILLE : la liste des événements
   ==================================================================== */

.tribe-events-calendar-list {
    display: grid !important;            /* affiche les cartes en colonnes (grille) */
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)) !important;
                                         /* autant de colonnes que possible, chacune d'au
                                            moins 380px, qui se partagent la largeur */
    gap: 24px !important;                /* espace entre les cartes */
    list-style: none !important;         /* enlève les puces de liste */
    justify-content: center !important;  /* centre la grille */
    max-width: 1400px !important;        /* largeur maximale de la grille */
    margin: 0 auto !important;           /* centrée horizontalement */
}

.tribe-events-calendar-list__event-wrapper,
.tribe-events-calendar-list__event,
.tribe-events-calendar-list__event-details,
.tribe-events-calendar-list__event-header {
    display: contents !important;
}


/* ====================================================================
   3. CARTE DE L'ÉVÉNEMENT
   ==================================================================== */

.tribe-events-calendar-list__event-row {
    position: relative !important;       /* repère pour placer la pastille de date et
                                            la zone cliquable */
    display: flex !important;            /* range les éléments de la carte... */
    flex-wrap: wrap !important;          /* ...ligne par ligne */
    width: 100% !important;              /* toute la largeur de sa colonne */
    background: #2E1F16 !important;      /* fond brunc foncé */
    border: 1px solid #EFE3D0 !important;/* fin contour beige */
    border-radius: 20px !important;      /* coins arrondis */
    box-shadow: 0 8px 24px rgba(46, 31, 22, 0.06) !important;
                                         /* ombre légère (décalage-x, y, flou, couleur) */
    overflow: hidden !important;         /* rien ne dépasse des coins arrondis */
    margin: 0 !important;                /* pas de marge extérieure */
    padding: 0 0 38px 0 !important;      /* espace intérieur : seulement 38px en bas */
    box-sizing: border-box !important;   /* la largeur inclut bordure et marges internes */
}

.tribe-events-calendar-list__event-row > * {
    box-sizing: border-box !important;   /* même règle pour tous les éléments de la carte */
}


/* ====================================================================
   3a. PASTILLE DE DATE
   ==================================================================== */

.tribe-events-calendar-list__event-date-tag {
    position: absolute !important;       /* posée librement sur la carte... */
    top: 18px !important;                /* ...à 18px du haut... */
    left: 18px !important;               /* ...et 18px de la gauche */
    z-index: 2 !important;               /* passe devant les autres éléments */
    width: 58px !important;              /* largeur de la pastille */
    min-height: 58px !important;         /* hauteur minimale (58px = carrée) */
    display: flex !important;
    flex-direction: column !important;   /* jour de la semaine au-dessus du numéro */
    align-items: center !important;      /* centré horizontalement */
    justify-content: center !important;  /* centré verticalement */
    background: #5C3D2E !important;      /* fond brun */
    color: #ffffff !important;           /* texte blanc */
    padding: 6px 4px !important;         /* espace intérieur (haut/bas, côtés) */
    border-radius: 14px !important;      /* coins arrondis */
    box-shadow: 0 4px 10px rgba(46, 31, 22, 0.18) !important; /* ombre */
    box-sizing: border-box !important;
    overflow: hidden !important;
    text-align: center !important;
}

.tribe-events-calendar-list__event-date-tag * {
    color: #ffffff !important;           /* force le blanc sur tous les textes de la pastille */
}

.tribe-events-calendar-list__event-date-tag-weekday {   /* "MER" */
    font-size: 0.7rem !important;        /* petite taille */
    letter-spacing: 1px !important;      /* lettres espacées */
    text-transform: uppercase !important;/* majuscules */
    opacity: 0.85 !important;            /* un peu transparent (1 = opaque) */
    line-height: 1 !important;           /* hauteur de ligne serrée */
}

.tribe-events-calendar-list__event-date-tag-daynum {    /* "21" */
    font-family: var(--wp--preset--font-family--cinzel), serif !important;
    font-size: 1.6rem !important;        /* grand numéro */
    font-weight: 700 !important;
    line-height: 1.15 !important;
}


/* ====================================================================
   3b. LIGNE DATE / HEURE
   ==================================================================== */

.tribe-events-calendar-list__event-datetime-wrapper {
    order: 1 !important;                 /* position dans la carte : 1re ligne */
    flex: 0 0 100% !important;           /* occupe toute la largeur (ne rétrécit pas) */
    position: relative !important;       /* repère pour placer l'icône horloge */
    z-index: 5 !important;               /* au-dessus de la zone cliquable */
    display: flex !important;
    align-items: center !important;      /* texte centré verticalement */
    background: transparent !important;
    color: #ffffff !important;           /* texte brun */
    margin: 22px 24px 6px 90px !important;
                                         /* marges : haut 22 / droite 24 / bas 6 / gauche 90.
                                            Les 90px à gauche laissent la place à la pastille */
    padding: 0 0 0 24px !important;
    font-size: 13px !important;
    font-weight: 600 !important;         /* semi-gras */
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    padding-left: 45px !important;       /* espace pour l'icône horloge (remplace la valeur de la ligne du dessus) */
}

.tribe-events-calendar-list__event-datetime-wrapper * {
    color: #ffffff !important;
}

.tribe-events-calendar-list__event-datetime-wrapper::before {   /* l'icône horloge */
    content: "" !important;
    position: absolute !important;
    left: 0 !important;                  /* collée à gauche de la ligne */
    top: 50% !important;
    transform: translateY(-50%) !important; /* centrée verticalement */
    width: 16px !important;
    height: 16px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='%23FFFFFF' stroke-width='2'/%3E%3Cpath d='M12 7v5l3 2' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
/* dessin de l'horloge (couleur ocre #B5651D) intégré au CSS */
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    padding-left: 50px !important;
}

/* Sans lieu, la pastille (58px) déborderait sur le titre : on réserve
   la même hauteur que lorsqu'un lieu est présent. */
.tribe-events-calendar-list__event-row:not(:has(.tribe-events-calendar-list__event-venue))
.tribe-events-calendar-list__event-datetime-wrapper {
    margin-bottom: 44px !important;
}

/* ====================================================================
   3c. LIGNE LIEU
   ==================================================================== */

.tribe-events-calendar-list__event-venue {
    order: 2 !important;                 /* 2e ligne de la carte */
    flex: 0 0 100% !important;
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
    color: #ffffff !important;
    margin: 0 24px 20px 90px !important; /* haut 0 / droite 24 / bas 20 / gauche 90 */
    padding: 0 0 0 24px !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    padding-left: 45px !important;       /* espace pour l'icône épingle */
}

.tribe-events-calendar-list__event-venue::before {              /* l'icône épingle */
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 16px !important;
    height: 16px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11Z' fill='none' stroke='%23FFFFFF' stroke-width='2'/%3E%3Ccircle cx='12' cy='10' r='2.5' fill='none' stroke='%23FFFFFF' stroke-width='2'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    padding-left: 50px !important;
}

.tribe-events-calendar-list__event-venue-title {                /* nom du lieu (en gras) */
    color: #ffffff !important;
    display: inline !important;          /* reste sur la même ligne que l'adresse */
    font-weight: 700 !important;
    font-size: 13px !important;
}

.tribe-events-calendar-list__event-venue-address {              /* adresse (texte normal) */
    color: #ffffff !important;
    display: inline !important;
    font-weight: 400 !important;         /* épaisseur normale */
    font-size: 13px !important;
    padding-left: 5px !important;        /* petit espace après le nom du lieu */
}

/* ====================================================================
   3d. IMAGE (l'affiche de l'évènement)
   ==================================================================== */

.tribe-events-calendar-list__event-featured-image-wrapper {
    order: 4 !important;                 /* 4e élément de la carte (sous la date et le lieu) */
    flex: 0 0 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.tribe-events-calendar-list__event-featured-image-wrapper
img.tribe-events-calendar-list__event-featured-image {
    display: block !important;
    width: 100% !important;              /* toute la largeur de la carte */
    height: 450px !important;            /* hauteur fixe de la zone image */
    max-width: none !important;
    object-fit: contain !important;      /* l'affiche s'affiche en entier, sans être rognée
                                            ("cover" la remplirait en rognant) */
    object-position: center !important;  /* centrée */
    background: transparent !important;
    margin: 0 !important;
}

/* ====================================================================
   3e. TITRE de evenement
   ==================================================================== */

/* Le <h4> ne doit JAMAIS être position:relative : le calque cliquable
   (::after, plus bas) posé sur le lien doit remonter jusqu'à la carte
   pour couvrir toute la carte, pas seulement la ligne du titre. */
.tribe-events-calendar-list__event-title {
    order: 5 !important;                 /* 5e élément : sous l'image */
    flex: 0 0 calc(100% - 48px) !important;
    width: calc(100% - 48px) !important; /* largeur = carte moins 24px de chaque côté */
    margin: 12px 24px 8px 24px !important;
                                         /* haut 12 / droite 24 / bas 8 / gauche 24 */
    padding: 0 !important;
    font-family: var(--wp--preset--font-family--cinzel), serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;           /* brun */
    text-align: left !important;         /* aligné à gauche */
    box-sizing: border-box !important;
}

.tribe-events-calendar-list__event-title-link {                 /* le lien dans le titre */
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    color: inherit !important;           /* reprend la couleur du titre */
}

.tribe-events-calendar-list__event-title-link:hover {
    color: #B5651D !important;           /* au survol : ocre */
}

/* Calque invisible qui étend la zone cliquable du titre à toute la
   carte (image comprise). */
.tribe-events-calendar-list__event-title-link::after {
    content: "" !important;
    position: absolute !important;       /* se cale sur la carte (position:relative) */
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;                /* les 4 = couvre toute la carte */
    z-index: 1 !important;               /* sous la date et le lieu (z-index 5) qui restent cliquables */
}

/* ====================================================================
   3f. DESCRIPTION resume de levenement
   ==================================================================== */

.tribe-events-calendar-list__event-description.tribe-common-a11y-hidden {
    order: 6 !important;                 /* 6e élément : tout en bas */
    flex: 0 0 calc(100% - 48px) !important;
    width: calc(100% - 48px) !important;
    position: static !important;         /* annule le masquage du plugin */
    height: auto !important;
    margin: 0 24px !important;           /* 24px à gauche et à droite */
    padding: 0 !important;
    clip: auto !important;               /* annule le masquage du plugin (texte "caché") */
    clip-path: none !important;
    overflow: hidden !important;
    color: #FFFFFF !important;
    line-height: 1.6 !important;
    font-size: 13px !important;
    text-align: justify !important;      /* texte justifié */
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;    /* maximum 2 lignes, puis "…" */
    -webkit-box-orient: vertical !important;
    box-sizing: border-box !important;
}

/* ====================================================================
   3g. PRIX / LIENS
   ==================================================================== */

.tribe-events-calendar-list__event-row-actions-details-link,
.tribe-events-calendar-list__event-cost {
    color: #2E1F16 !important;
    font-weight: 600 !important;
}

/* -------------------------------------------------------------------- */
/* 6. "S'abonner au calendrier" et pagination                            */
/* -------------------------------------------------------------------- */
.tribe-events-c-subscribe-dropdown__button {
	background-color: #ffffff !important;
	border: 1px solid #2E1F16 !important;
	border-radius: 999px !important;
	color: #2E1F16 !important;
}
.tribe-events-c-subscribe-dropdown__button:hover {
	background-color: #2E1F16 !important;
	color: #F5EFE6 !important;
}
.tribe-events-c-subscribe-dropdown__container,
.tribe-events-c-subscribe-dropdown {
	display: none !important;
}

.tribe-events-c-nav__list-item-link:hover,
.tribe-events-nav-next a,
.tribe-events-nav-previous a {
	color: #B5651D !important;
}

/* ====================================================================
   3h. NAVIGATION
   ==================================================================== */

/* La pagination en bas de liste ("Évènements précédents / suivants") réutilise
   les mêmes classes que les flèches de la barre du haut : on les repasse en
   liens simples, sans le fond blanc en pilule appliqué plus haut. */
.tribe-events-c-nav__prev,
.tribe-events-c-nav__next {
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	color: #ffffff !important;
	padding: 0.4rem 0 !important;
}

.tribe-events-calendar-list-nav,
.tribe-events-c-nav {
	margin: 1.5rem !important;
	border: none !important;
}

.tribe-events-c-nav__prev:hover,
.tribe-events-c-nav__next:hover {
	color: #B5651D !important;
}

/* Navigation événement précédent / suivant + "Tous les Évènements" */
.la-taniere-event-nav {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 1rem;
	margin: 2.5rem 0;
}
.la-taniere-event-nav__prev { text-align: left; }
.la-taniere-event-nav__all { text-align: center; }
.la-taniere-event-nav__next { text-align: right; }

.la-taniere-event-nav a {
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	background-color: #ffffff;
	border: 1px solid #EFE3D0;
	border-radius: 999px;
	padding: 0.75rem 1.5rem;
	color: #2E1F16 !important;
	font-weight: 600;
	text-decoration: none !important;
	box-shadow: 0 4px 14px rgba(46, 31, 22, 0.06);
	transition: background-color 0.2s ease, color 0.2s ease;
}
.la-taniere-event-nav a:hover {
	background-color: #2E1F16;
	color: #F5EFE6 !important;
}

/* ====================================================================
   ÉVÉNEMENTS — UNIQUE
   ==================================================================== */
.single-tribe_events .wp-block-post-title {
	display: block !important;
	text-align: center;
	font-size: clamp(2.8rem, 4vw, 4.5rem);
	color: var(--wp--preset--color--brun-fonce);
	margin-bottom: 2rem;
}
.single-tribe_events .wp-block-post-featured-image img {
	border-radius: 24px;
	overflow: hidden;
}
.single-tribe_events .wp-block-post-content {
	font-size: 1.15rem;
	line-height: 1.9;
}

/* -------------------------------------------------------------------- */
/* 8. Carte de lieu (venue) sur la page événement                        */
/* -------------------------------------------------------------------- */
/* On masque le texte du lieu */
.tribe-block__venue__meta {
	display: none !important;
}
/* Conteneur principal du bloc lieu */
.single-tribe_events .tribe-block__venue,
.single-tribe_events .tribe-block__venue--has-map {
	max-width: 1000px;
	margin: 0 auto !important;
	padding: 0 !important;
}
/* Suppression des marges parasites + bordure rectangulaire du conteneur */
.single-tribe_events .tribe-block__venue__map {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;

	overflow: hidden;
}
/* Le bloc lieu lui-même ne doit avoir ni bordure ni ombre */
.single-tribe_events .tribe-block__venue,
.single-tribe_events .tribe-block__venue--has-map {
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}
/* Carte Google */
.single-tribe_events .tribe-block__venue__map iframe {
	display: block;
	width: 100% !important;
	height: 420px !important;
	border: none;
	border-radius: 24px;
}
/* Réduction des espaces avant/après la carte */
.single-tribe_events .wp-block-group .tribe-block__venue {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.single-tribe_events .wp-block-group:has(.tribe-block__venue) {
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Force la pastille active sur "ACTIVITÉS" pour toutes les pages liées aux événements
   (le lien personnalisé /event ne matche sinon que l'URL exacte de l'archive) */
body.single-tribe_events .la_taniere_de_l_ouest-nav a[href="/event"],
body.tax-tribe_events_cat .la_taniere_de_l_ouest-nav a[href="/event"],
body.post-type-archive-tribe_events .la_taniere_de_l_ouest-nav a[href="/event"] {
	background-color: #1E140C !important;
	color: #F5EFE6 !important;
}

/* ====================================================================
   MOBILE (écrans de 600px de large ou moins)
   Les règles ci-dessous remplacent celles du dessus uniquement sur téléphone.
   ==================================================================== */

@media (max-width: 600px) {

    li.tribe-events-calendar-list__month-separator
    .tribe-events-calendar-list__month-separator-text {
        font-size: 1rem !important;      /* titre de mois plus petit */
    }

    .tribe-events-calendar-list {
        grid-template-columns: 1fr !important;   /* une seule colonne */
    }

    .tribe-events-calendar-list__event-row {
        border-radius: 16px !important;  /* coins un peu moins arrondis */
        padding-bottom: 30px !important;
    }

    .tribe-events-calendar-list__event-date-tag {
        top: 14px !important;
        left: 14px !important;
        width: 56px !important;
        min-height: 56px !important;
    }

    .tribe-events-calendar-list__event-datetime-wrapper {
        margin: 18px 20px 6px 82px !important;
        font-size: 8px !important;
        padding-left: 20px !important;
    }

    .tribe-events-calendar-list__event-datetime-wrapper::before {
        padding-left: 0px !important;
    }

    /* Sans lieu : réserve la hauteur de la pastille (version mobile) */
    .tribe-events-calendar-list__event-row:not(:has(.tribe-events-calendar-list__event-venue))
    .tribe-events-calendar-list__event-datetime-wrapper {
        margin-bottom: 36px !important;
    }

    .tribe-events-calendar-list__event-venue {
        margin: 0 20px 18px 82px !important;
        font-size: 8px !important;
        padding-left: 20px !important;
    }

    .tribe-events-calendar-list__event-venue::before {
        padding-left: 0px !important;
    }

    .tribe-events-calendar-list__event-venue-title {
        font-size: 8px !important;
    }

    .tribe-events-calendar-list__event-venue-address {
        font-size: 8px !important;
    }

    .tribe-events-calendar-list__event-featured-image-wrapper
    img.tribe-events-calendar-list__event-featured-image {
        height: auto !important;         /* hauteur automatique selon l'image */
        max-height: 450px !important;
        object-fit: contain !important;
        margin-top: 15px !important;
    }

    .tribe-events-calendar-list__event-title {
        flex-basis: calc(100% - 40px) !important;
        width: calc(100% - 40px) !important;
        margin: 12px 20px 8px 20px !important;
        font-size: 18px !important;
    }

    .tribe-events-calendar-list__event-description.tribe-common-a11y-hidden {
        flex-basis: calc(100% - 40px) !important;
        width: calc(100% - 40px) !important;
        margin: 0 20px !important;
    }
}



/* ====================================================================
   12. ESPACES AUTOUR DE LA LISTE (page Agenda)
   Le plugin met 96px en haut et 160px en bas : on les réduit.
   ==================================================================== */
.post-type-archive-tribe_events .tribe-common-l-container {
    height: fit-content !important;   /* la hauteur suit le contenu */
    min-height: 0 !important;
    padding-top: 0 !important;        /* espace en haut (était 96px) */
    padding-bottom: 0 !important;     /* espace en bas (était 160px) */
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.post-type-archive-tribe_events .tribe-events-view {
    height: fit-content !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Espace entre la navigation « précédents / suivants » et la liste */
.post-type-archive-tribe_events .tribe-events-c-nav {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
    padding: 0 !important;
}

/* Le premier titre de mois ne garde pas son espace du dessus (était 2.5rem = 40px) */
.tribe-events-calendar-list__month-separator:first-child {
    margin-top: 0 !important;
}

/* En-tête du plugin (recherche / sélecteur de vue) : vide chez vous, mais il garde de la hauteur */
.tribe-events-header {
    display: none !important;
}