/* Gabarit article single + archive catégorie, calé sur mon-sport-bien-etre
   (SITES/factoryandfields/notes/spec-home-modele-msbe.md §3/§4/§5). Fichier séparé de
   style.css (bloc .ff- de la home) pour éviter toute collision pendant que la home est
   encore éditée en parallèle. */

/* --- Article single --- */

.ff-single-kicker {
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 13px;
	font-weight: 700;
	color: var(--ast-global-color-0);
	margin-bottom: 0.6em;
}
.ff-single-kicker a {
	color: inherit;
	text-decoration: none;
}

.ast-single-post .entry-title {
	margin-bottom: 0.3em;
}

.ff-single-featured-image {
	margin: 0 0 2em;
}
.ff-single-featured-image img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	display: block;
}

/* Table des matières Easy TOC : tailles lisibles (défaut plugin trop petit en % hérité) */
#ez-toc-container {
	margin-bottom: 2.5em;
}
#ez-toc-container .ez-toc-title {
	font-size: 19px !important;
}
#ez-toc-container ul.ez-toc-list li {
	font-size: 17px !important;
}
#ez-toc-container ul.ez-toc-list ul.ez-toc-list li {
	font-size: 16px !important;
}

/* Sidebar : aération, cohérent avec l'espacement du reste du gabarit */
#secondary {
	margin: 4em 0 2.5em;
	line-height: 2;
}
.ast-right-sidebar #secondary {
	padding-left: 60px;
}
@media (max-width: 921px) {
	.ast-right-sidebar #secondary {
		padding-left: 0;
	}
}

/* Titres de widgets sidebar, cohérents avec .ff-kicker de la home (variables --ff-*
   définies dans style.css, chargé avant ce fichier) */
#secondary .ff-widget-title {
	font-size: 0.8rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ff-steel);
	font-weight: 600;
	margin-bottom: 1em;
}
#secondary .wp-block-latest-posts__featured-image img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
	width: 100%;
	height: auto;
}
#secondary .wp-block-latest-posts {
	list-style: none;
	margin-left: 0;
}
#secondary .wp-block-latest-posts li {
	margin-bottom: 1.2em;
}
#secondary .wp-block-latest-posts__post-date {
	display: block;
	font-size: 0.85em;
	opacity: 0.75;
}

/* Bannière sponsor sidebar (Promafor Sovema), HTML localisé (15/09) */
.ff-sponsor-banner{margin-bottom:2em;background:var(--ff-white);border:1px solid var(--ff-line);border-top:3px solid var(--ff-rust);border-radius:4px;padding:1.5rem 1.25rem;text-align:center}
.ff-sponsor-banner__kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ff-steel);margin:0 0 .75rem}
.ff-sponsor-banner__logo{display:block;margin:0 auto 1rem;max-width:210px}
.ff-sponsor-banner__logo img{width:100%;height:auto;display:block}
.ff-sponsor-banner__title{font-family:'Zilla Slab',Georgia,serif;font-size:1.35rem;line-height:1.25;font-weight:700;color:var(--ff-ink);margin:0 0 .35rem}
.ff-sponsor-banner__sub{font-size:.85rem;color:var(--ff-steel);margin:0 0 1rem}
.ff-sponsor-banner__cta{display:inline-block;background:var(--ff-rust);color:#fff !important;font-weight:600;padding:.7rem 1.4rem;border-radius:999px;text-decoration:none !important;font-size:.95rem}
.ff-sponsor-banner__cta:hover{background:var(--ff-ink)}

/* Grille de la page Blog (Query Loop natif, pagination réelle) */
.ff-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.ff-blog-card {
	background: var(--ff-white);
	border: 1px solid var(--ff-line);
	border-top: 3px solid var(--ff-line);
	border-radius: 4px;
	overflow: hidden;
	padding: 0 0 1.25rem;
}
.ff-blog-card:hover { border-top-color: var(--ff-moss); }
.ff-blog-card__img { margin: 0 0 1rem; }
.ff-blog-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ff-blog-card__kicker, .ff-blog-card__title, .ff-blog-card__date, .ff-blog-card__excerpt { padding-inline: 1.25rem; }
.ff-blog-card__kicker { font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ff-rust); font-weight: 600; margin-top: 1rem; display: block; }
.ff-blog-card__kicker a { color: inherit; text-decoration: none; }
.ff-blog-card__title { font-size: 1.15rem; margin: .5rem 0; }
.ff-blog-card__title a { color: var(--ff-ink) !important; text-decoration: none !important; }
.ff-blog-card__title a:hover { color: var(--ff-rust); }
.ff-blog-card__date { font-size: .85rem; color: var(--ff-steel); display: block; margin-bottom: .5rem; }
.ff-blog-card__excerpt { color: var(--ff-steel); font-size: .95rem; }
.ff-blog-pagination { margin-top: 2.5rem; gap: 1rem; font-size: .95rem; }
.ff-blog-pagination a { color: var(--ff-rust); text-decoration: none; font-weight: 600; }
.ff-blog-pagination .page-numbers.current { color: var(--ff-ink); font-weight: 700; }
@media (max-width: 920px) { .ff-blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .ff-blog-grid { grid-template-columns: 1fr; } }

/* --- Archive catégorie (grille) --- */

.category .ast-article-post .post-thumb-img-content {
	aspect-ratio: 3 / 2;
	overflow: hidden;
}
.category .ast-article-post .post-thumb-img-content img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.category .ast-taxonomy-container {
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 12px;
	font-weight: 700;
}
.category .ast-excerpt-container p {
	color: var(--ast-global-color-3, #4b5563);
}
