/* Tous en sons ! – Spectacles : styles de base, à surcharger dans le thème / Divi */
:root {
	--tes-bleu: #0b6a94;
	--tes-texte-bleu: #fff;
}

/* Étiquettes : bloc bleu en haut à gauche de l'image, séparées par un filet */
.tes-vignette__visuel,
.tes-fiche__visuel { position: relative; }

.tes-etiquettes {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	margin: 0;
	padding: 0;
	list-style: none;
	background: var(--tes-bleu);
	color: var(--tes-texte-bleu);
	text-transform: uppercase;
	text-align: center;
	font-weight: 700;
	line-height: 1.15;
	max-width: 60%;
}
.tes-etiquettes li { margin: 0; padding: .6em 1em; }
.tes-etiquettes li + li { position: relative; }
.tes-etiquettes li + li::before {
	content: "";
	position: absolute;
	top: 0; left: 15%; right: 15%;
	border-top: 1px solid currentColor;
}

/* Mosaïque */
.tes-mosaique {
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(var(--tes-cols, 3), minmax(0, 1fr));
}
@media (max-width: 980px) { .tes-mosaique { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .tes-mosaique { grid-template-columns: 1fr; } }

.tes-vignette__lien { display: block; color: inherit; text-decoration: none; }
.tes-vignette__visuel img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.tes-vignette__vide { display: block; width: 100%; aspect-ratio: 4 / 3; background: #e6e6e6; }
.tes-vignette__titre { margin: .6em 0 .2em; }
.tes-vignette p { margin: 0 0 .3em; }
.tes-vignette__date { font-weight: 700; }

/* Représentations */
.tes-rep__liste { list-style: none; margin: 0; padding: 0; }
.tes-rep__item {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em 1.2em;
	padding: .7em 0;
	border-bottom: 1px solid rgba(0, 0, 0, .12);
}
.tes-rep__date { font-weight: 700; }
.tes-rep__item--passe .tes-rep__date,
.tes-rep__item--passe .tes-rep__horaire,
.tes-rep__item--passe .tes-rep__lieu { opacity: .6; }
.tes-rep__complet {
	margin-left: auto;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--tes-bleu);
}
.tes-rep__tarif { margin-left: auto; }
.tes-rep__tarif + .tes-bouton { margin-left: 0; }
.tes-bouton {
	display: inline-block;
	padding: .5em 1.2em;
	background: var(--tes-bleu);
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	text-transform: uppercase;
}
.tes-rep__item > .tes-bouton:first-of-type { margin-left: auto; }

.tes-pin { display: inline-flex; vertical-align: middle; color: var(--tes-bleu); }

/* Galerie, partenaires */
.tes-galerie { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.tes-galerie figure { margin: 0; }
.tes-galerie img { display: block; width: 100%; height: auto; }
.tes-partenaires ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1.5rem; align-items: center; }
.tes-partenaires img { display: block; max-height: 80px; width: auto; }

/* Version scolaire : point d'accroche (body.public-sco) */
/* body.public-sco .tes-bouton { background: #c2185b; } */
