/**
 * Blocs partagés des pages du blog : encart organisateur, formulaire newsletter,
 * événements à venir (tokens `--fl-*` uniquement). La publicité vient de la
 * primitive `ad`.
 */

/* Fond de page, comme le reste du site public */

body.fl-blog-page {
	background: var(--fl-color-page);
}

/* Encart organisateur */

.fl-blog-cta {
	padding: var(--fl-space-xl);
	background: var(--fl-color-ink);
	border-radius: var(--fl-radius-md);
	color: var(--fl-text-inverse);
}

.fl-blog-cta__title {
	margin: 0 0 var(--fl-space-md);
	font-size: var(--fl-font-size-xl);
	font-weight: var(--fl-font-weight-bold);
	line-height: 1.2;
	color: var(--fl-text-inverse);
}

.fl-blog-cta__text {
	margin: 0 0 var(--fl-space-sm);
	font-size: var(--fl-font-size-base);
	line-height: 1.6;
	color: var(--fl-text-inverse);
}

.fl-blog-cta__link {
	display: inline-flex;
	align-items: center;
	gap: var(--fl-space-2xs);
	margin-bottom: var(--fl-space-xl);
	font-size: var(--fl-font-size-base);
	font-weight: var(--fl-font-weight-semibold);
	color: var(--fl-color-accent) !important;
	text-decoration: underline;
}

.fl-blog-cta .fl-ui-button {
	display: flex;
	width: fit-content;
}

/* Formulaire newsletter des archives (champ anti-robots et message) */

.fl-blog-newsletter__honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.fl-blog-newsletter__feedback {
	flex-basis: 100%;
	margin: 0;
	font-size: var(--fl-font-size-md);
}

/* Événements à venir */

.fl-blog-upcoming {
	padding: var(--fl-space-4xl) 0 var(--fl-space-5xl);
}

/* Sans marge, les cartes touchent l'écran et la flèche « suivant » en sort. */
@media (max-width: 1220px) {
	.fl-blog-upcoming {
		padding-inline: var(--fl-space-xl);
	}
}

/* Listes d'articles : grille et colonne latérale */

.fl-blog-listing {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: var(--fl-space-2xl);
	align-items: start;
	max-width: 1170px;
	margin: 0 auto;
	padding: var(--fl-space-4xl) var(--fl-space-lg) var(--fl-space-5xl);
}

.fl-blog-listing__main {
	min-width: 0;
}

.fl-blog-listing__sidebar {
	display: flex;
	flex-direction: column;
	gap: var(--fl-space-2xl);
	min-width: 0;
}

.fl-blog-grid {
	display: grid;
	gap: var(--fl-space-2xl);
}

.fl-blog-grid--two {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fl-blog-grid--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fl-blog-grid__pagination {
	margin-top: var(--fl-space-3xl);
}

@media (max-width: 1024px) {
	.fl-blog-listing {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.fl-blog-listing {
		padding: var(--fl-space-2xl) var(--fl-space-xl) var(--fl-space-4xl);
	}

	.fl-blog-grid--two,
	.fl-blog-grid--three {
		grid-template-columns: minmax(0, 1fr);
	}
}
