/* ================================================================
   YCC Auteur — Thème block FSE
   Style : sobre lumineux, institutionnel, jamais ostentatoire
   ================================================================ */

:root {
	--ycc-creme:     #FAF8F3;
	--ycc-creme-2:   #F2EDE2;
	--ycc-encre:     #1A1815;
	--ycc-encre-2:   #3D362E;
	--ycc-gris:      #807A6E;
	--ycc-terre:     #A0764E;
	--ycc-terre-2:   #B8956F;
	--ycc-or:        #C4A57A;
	--ycc-or-2:      #D9C29A;
	--ycc-trait:     #D8D1C2;
}

/* ── Base typographique ───────────────────────────────────────── */
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

p { hanging-punctuation: first last; }

::selection {
	background-color: var(--ycc-encre);
	color: var(--ycc-creme);
}

/* ── Page hero (bandeau en haut de page) ─────────────────────── */
.ycc-page-hero {
	position: relative;
	padding-block: clamp(3rem, 7vw, 6rem);
	background-color: var(--ycc-creme);
	border-block-end: 1px solid var(--ycc-trait);
	overflow: hidden;
	text-align: center;
}

.ycc-page-hero__eyebrow {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	margin-block-end: 1.5rem;
}

/* Sous-titre sous le H1 du bandeau de page
   Cible 2 structures :
   - <p class="ycc-page-hero__subtitle">…</p> (home.php Écrits)
   - <div class="ycc-page-hero__subtitle"><p class="wp-block-post-excerpt__excerpt">…</p></div> (parts/page-hero.html via wp:post-excerpt) */
.ycc-page-hero__subtitle,
.ycc-page-hero__subtitle .wp-block-post-excerpt__excerpt {
	font-family: "Cormorant Garamond", "EB Garamond", Georgia, serif;
	font-size: clamp(1.125rem, 2vw, 1.375rem);
	font-style: italic;
	font-weight: 400;
	line-height: 1.45;
	color: var(--ycc-encre-2);
}
.ycc-page-hero__subtitle {
	max-width: 640px;
	margin-inline: auto;
	margin-block-start: 1.5rem;
}
.ycc-page-hero__subtitle .wp-block-post-excerpt__excerpt {
	margin: 0;
}
.ycc-page-hero__subtitle em { font-style: normal; }

/* Effet RELIEF CREUSÉ (letterpress, lisible) sur les titres de bandeau —
   l'œil perçoit une lettre gravée dans la matière : highlight clair en bas,
   ombre dense en haut, texte légèrement assombri par rapport au fond pour
   suggérer la zone d'ombre du creux. */
.ycc-page-hero__title,
h1.is-style-engraved,
h2.is-style-engraved {
	font-family: "Cormorant Garamond", "EB Garamond", "Times New Roman", Georgia, serif;
	font-weight: 500;
	font-size: clamp(2.75rem, 7vw, 5.25rem);
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: #4a4036;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(0, 0, 0, 0.35),
		0 2px 6px rgba(0, 0, 0, 0.06);
	margin: 0;
}

/* Variante pour fond très clair — accentue le contraste sans casser l'effet */
.ycc-page-hero--home .ycc-page-hero__title {
	color: #3D362E;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.95),
		0 -1px 1px rgba(0, 0, 0, 0.4),
		0 3px 8px rgba(0, 0, 0, 0.05);
}

/* Subtle filigree below the title */
.ycc-page-hero__rule {
	display: block;
	width: 64px;
	height: 1px;
	margin-block-start: 2rem;
	margin-inline: auto;
	background: linear-gradient(90deg, transparent 0%, var(--ycc-or) 50%, transparent 100%);
	border: 0;
}

/* ── Site header — FIXED (sticky robuste FSE-compatible) ─────── */
.wp-site-blocks > header.wp-block-template-part {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 1000 !important;
	margin: 0 !important;
	background: rgba(250, 248, 243, 0.96); /* var(--ycc-creme) légèrement translucide */
	-webkit-backdrop-filter: saturate(180%) blur(10px);
	backdrop-filter: saturate(180%) blur(10px);
	transition: box-shadow 0.2s ease;
}

.wp-site-blocks > header.wp-block-template-part.scrolled {
	box-shadow: 0 2px 12px rgba(26, 24, 21, 0.08);
}

/* Compense le header fixed en poussant le contenu vers le bas */
body {
	padding-top: 96px;
}

@media (max-width: 720px) {
	body { padding-top: 84px; }
}

.ycc-site-header {
	padding-block: 1.5rem;
	background: transparent;
	border-block-end: 1px solid var(--ycc-trait);
	transition: padding 0.2s ease;
}

/* Légère réduction de la hauteur quand on scrolle */
.wp-site-blocks > header.wp-block-template-part.scrolled .ycc-site-header {
	padding-block: 1rem;
}

.ycc-site-title {
	font-family: "Cormorant Garamond", serif;
	font-weight: 500;
	font-size: 1.5rem;
	letter-spacing: 0.04em;
}

.ycc-site-title a {
	color: var(--ycc-encre);
	text-decoration: none;
}

/* ── Navigation principale ─────────────────────────────────────── */
.wp-block-navigation .wp-block-navigation-item__content {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--ycc-encre-2);
}

.wp-block-navigation .wp-block-navigation-item__content:hover {
	color: var(--ycc-terre);
}

/* ── Boutons ─────────────────────────────────────────────────── */
.wp-block-button__link {
	transition: background-color 200ms ease, color 200ms ease;
}

.is-style-outline > .wp-block-button__link {
	background-color: transparent !important;
	color: var(--ycc-encre) !important;
	border: 1px solid var(--ycc-encre);
}

.is-style-outline > .wp-block-button__link:hover {
	background-color: var(--ycc-encre) !important;
	color: var(--ycc-creme) !important;
}

/* ══════════════════════════════════════════════════════════════════
   CHARTE ARTICLES — Page unique + liste
   Police corps : Lato 1rem / 1.85
   Titres intra-article : Cormorant Garamond
   Palette : --ycc-encre, --ycc-or, --ycc-creme, --ycc-terre
   ══════════════════════════════════════════════════════════════════ */

/* ── Image hero article (featured image) ─── */
.wp-block-post-featured-image img {
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	object-fit: cover;
	object-position: center;
	display: block;
	border: none;
}

/* ── Photo famille Costechareyre (id 20 FR / 145 EN) : photo de groupe affichée
   en entier, sans recadrage 16/9 (sinon les têtes du haut sont coupées).
   Surcharge les styles inline du bloc featured-image → !important nécessaire. ── */
.postid-20 .wp-block-post-featured-image,
.postid-145 .wp-block-post-featured-image {
	aspect-ratio: auto !important;
}
.postid-20 .wp-block-post-featured-image img,
.postid-145 .wp-block-post-featured-image img {
	height: auto !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
}

/* ── Corps typographique ─── */
.wp-block-post-content {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.9;
	color: var(--ycc-encre);
}
.wp-block-post-content > * + * {
	margin-block-start: 1.4em;
}
.wp-block-post-content p {
	margin-block: 0;
	orphans: 3;
	widows: 3;
}
/* Premier paragraphe : lettrine visuelle */
.wp-block-post-content > p:first-of-type {
	font-size: 1.0625rem;
	font-style: italic;
	color: color-mix(in srgb, var(--ycc-encre) 80%, transparent);
	border-left: 3px solid var(--ycc-or);
	padding-left: 1.25rem;
	margin-bottom: 2rem;
}

/* ── Titres intra-article ─── */
.wp-block-post-content h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.3rem, 2vw, 1.65rem);
	font-weight: 600;
	font-style: italic;
	color: var(--ycc-encre);
	margin-block-start: 3em;
	margin-block-end: 0.6em;
}
.wp-block-post-content h3 {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--ycc-or);
	margin-block-start: 2.5em;
	margin-block-end: 0.5em;
}
/* Titres en gras dans les paragraphes → reformatés comme sous-titres */
.wp-block-post-content p > strong:only-child {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ycc-or);
	margin-top: 2.5em;
	margin-bottom: 0.5em;
}

/* ── Listes ─── */
.wp-block-post-content ul,
.wp-block-post-content ol {
	padding-left: 0;
	list-style: none;
	margin: 1.5em 0;
}
.wp-block-post-content ul li,
.wp-block-post-content ol li {
	padding: 0.35em 0 0.35em 1.75em;
	position: relative;
	border-bottom: 1px solid color-mix(in srgb, var(--ycc-encre) 8%, transparent);
	font-size: 0.9625rem;
}
.wp-block-post-content ul li::before {
	content: "—";
	position: absolute;
	left: 0;
	color: var(--ycc-or);
	font-weight: 600;
}
.wp-block-post-content ol {
	counter-reset: ycc-ol;
}
.wp-block-post-content ol li::before {
	counter-increment: ycc-ol;
	content: counter(ycc-ol, decimal-leading-zero);
	position: absolute;
	left: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: 0.875rem;
	color: var(--ycc-or);
	font-weight: 600;
}

/* ── Citation / blockquote ─── */
.wp-block-post-content blockquote,
.wp-block-quote {
	border-left: 3px solid var(--ycc-or);
	padding: 1.25rem 1.5rem;
	margin: 2.5em 0;
	background: #F9F5EE;
	font-family: "Cormorant Garamond", serif;
	font-style: italic;
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	line-height: 1.65;
	color: var(--ycc-encre);
}
.wp-block-post-content blockquote p,
.wp-block-quote p {
	margin: 0 !important;
	font-style: inherit;
}
.wp-block-post-content blockquote cite,
.wp-block-quote cite {
	display: block;
	font-family: "Lato", sans-serif;
	font-style: normal;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	color: color-mix(in srgb, var(--ycc-encre) 55%, transparent);
	margin-top: 0.75rem;
}

/* ── Séparateur typographique ─── */
.wp-block-separator,
.wp-block-post-content hr {
	border: none;
	height: 1px;
	background: linear-gradient(to right, transparent, var(--ycc-or), transparent);
	margin: 3em auto;
	max-width: 200px;
	opacity: 0.5;
}
.wp-block-separator.is-style-ycc-rule {
	max-width: 120px;
}
.wp-block-separator.is-style-ycc-rule::after {
	content: "◆";
	display: block;
	text-align: center;
	color: var(--ycc-or);
	font-size: 0.6rem;
	margin-top: -0.5em;
	background: var(--ycc-creme, #FAF6EF);
	width: 1.5em;
	margin-inline: auto;
}

/* ── Signature auteur (bloc en fin d'article) ─── */
.ycc-article-signature {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	padding: 1.5rem;
	background: #F9F5EE;
	border-left: 3px solid var(--ycc-or);
	margin-top: 3rem;
}
.ycc-article-signature__avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}
.ycc-article-signature__name {
	font-family: "Cormorant Garamond", serif;
	font-size: 1rem;
	font-weight: 600;
	color: var(--ycc-encre);
	display: block;
}
.ycc-article-signature__role {
	font-family: "Lato", sans-serif;
	font-size: 0.8rem;
	color: color-mix(in srgb, var(--ycc-encre) 55%, transparent);
	letter-spacing: 0.05em;
}

/* ── Navigation prev/next ─── */
.wp-block-post-navigation-link { flex: 1; min-width: 0; align-self: flex-start; }
.wp-block-post-navigation-link a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	transition: opacity 0.18s ease;
}
.wp-block-post-navigation-link a:hover { opacity: 0.75; }
.wp-block-post-navigation-link:last-child a { text-align: right; }
/* Libellé direction */
.post-navigation-link__label {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ycc-terre);
	margin-bottom: 0.5rem;
}
/* Titre de l'article adjacent — 2 lignes max */
.post-navigation-link__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-family: "Cormorant Garamond", serif;
	font-style: italic;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
	color: var(--ycc-encre-2);
	letter-spacing: 0;
	text-transform: none;
}

/* ── Card / Liste d'écrits ────────────────────────────────────── */
.ycc-card {
	border-block-end: 1px solid var(--ycc-trait);
	padding-block: 1.75rem;
}

.ycc-card__date {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ycc-gris);
}

.ycc-card__title {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.625rem;
	line-height: 1.2;
	margin-block: 0.5rem 0.75rem;
}

.ycc-card__title a {
	color: var(--ycc-encre);
	text-decoration: none;
}

.ycc-card__title a:hover {
	color: var(--ycc-terre);
}

.ycc-card__excerpt {
	color: var(--ycc-encre-2);
	font-size: 1rem;
	max-width: 65ch;
}

/* ── Footer ───────────────────────────────────────────────────── */
.wp-block-template-part.site-footer,
.ycc-site-footer {
	background-color: var(--ycc-creme-2);
	border-block-start: 1px solid var(--ycc-trait);
	color: var(--ycc-encre-2);
	font-size: 0.9375rem;
	padding-block: 3rem;
}

.ycc-site-footer .wp-block-navigation .wp-block-navigation-item__content {
	font-size: 0.8125rem;
}

/* ── Détails ──────────────────────────────────────────────────── */
hr.is-style-ycc-rule {
	border: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--ycc-trait) 30%, var(--ycc-trait) 70%, transparent);
	margin-block: 3rem;
}

/* ── Classes utilitaires pour le contenu des pages ───────────── */
.ycc-lead {
	font-family: "Cormorant Garamond", "EB Garamond", "Times New Roman", Georgia, serif;
	font-size: clamp(1.25rem, 2vw, 1.5rem);
	font-style: italic;
	font-weight: 300;
	line-height: 1.55;
	color: var(--ycc-encre-2);
	margin-block-end: 2rem;
}

.ycc-intro {
	font-family: "Cormorant Garamond", "EB Garamond", "Times New Roman", Georgia, serif;
	font-size: clamp(1.125rem, 1.8vw, 1.375rem);
	font-weight: 400;
	line-height: 1.65;
	color: var(--ycc-encre);
}

.ycc-eyebrow {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	margin: 0 0 1rem;
}

.ycc-meta {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: var(--ycc-encre-2);
	font-style: italic;
}

.ycc-box {
	background-color: var(--ycc-creme-2);
	padding: 2rem 2.5rem 2.5rem;
	margin-block: 3rem;
}

.ycc-box__eyebrow {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	margin: 0 0 1rem;
}

.ycc-box h3 {
	font-family: "Cormorant Garamond", "EB Garamond", serif;
	font-size: 1.75rem;
	font-weight: 400;
	line-height: 1.25;
	margin-block: 0 1rem;
}

/* Sommaire du livre */
.ycc-toc h3 {
	font-family: "Cormorant Garamond", "EB Garamond", serif;
	font-size: 1.375rem;
	font-weight: 500;
	margin-block: 2.5rem 0.5rem;
	color: var(--ycc-encre);
}

.ycc-toc h3 + p {
	margin-block: 0 0;
	color: var(--ycc-encre-2);
}

/* ── Mise à l'échelle fluide ─────────────────────────────────── */
@media (max-width: 640px) {
	.ycc-page-hero { padding-block: clamp(2rem, 8vw, 4rem); }
	.ycc-box { padding: 1.5rem 1.5rem 2rem; }
}

/* ═════════════════════════════════════════════════════════════════
   PAGE ÉCRITS — refonte éditoriale type Sageocracy
   ═════════════════════════════════════════════════════════════════ */

.ycc-articles-page { background: var(--ycc-creme); }

/* ─── Hero compact ─── */
.ycc-articles-hero {
	background: var(--ycc-encre);
	padding: 5rem 1.5rem 4rem;
	text-align: center;
	color: var(--ycc-creme);
}
.ycc-articles-hero__inner { max-width: 880px; margin: 0 auto; }
.ycc-articles-hero__eyebrow {
	display: inline-block;
	font-family: "Lato", sans-serif;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--ycc-or);
	margin: 0 0 1.75rem;
}
.ycc-articles-hero__title {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2.5rem, 5vw, 4rem);
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.1;
	color: var(--ycc-or);
	margin: 0;
	text-transform: uppercase;
}
.ycc-articles-hero__subtitle {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	color: var(--ycc-or-2);
	max-width: 640px;
	margin: 1.5rem auto 0;
	line-height: 1.6;
	opacity: 0.92;
}
.ycc-articles-hero__subtitle em { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 1.05em; }
.ycc-articles-hero__rule {
	display: flex; align-items: center; justify-content: center;
	gap: 18px; max-width: 200px; margin: 2.5rem auto 0;
}
.ycc-articles-hero__rule__line { flex: 1; height: 1px; background: var(--ycc-or); opacity: 0.5; }
.ycc-articles-hero__rule__diamond { color: var(--ycc-or); font-size: 0.875rem; line-height: 1; }

/* ─── Section + container ─── */
.ycc-articles-section { padding: 4rem 1.5rem 5rem; }
.ycc-articles-container { max-width: 1180px; margin: 0 auto; }

/* ─── Filtres ─── */
.ycc-articles-filters {
	display: flex; gap: 0.5rem; flex-wrap: wrap; align-items: center;
	margin-bottom: 2.5rem;
}
.ycc-articles-filters__label {
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem; font-weight: 700;
	letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--ycc-gris); margin-right: 0.5rem;
}
.ycc-articles-filter {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem; font-weight: 500;
	padding: 0.35rem 1rem;
	border: 1px solid var(--ycc-trait);
	border-radius: 999px;
	color: var(--ycc-encre);
	text-decoration: none;
	transition: all 0.18s ease;
	background: transparent;
}
.ycc-articles-filter:hover { border-color: var(--ycc-terre); color: var(--ycc-terre); }
.ycc-articles-filter.is-active {
	background: var(--ycc-encre); border-color: var(--ycc-encre); color: var(--ycc-creme);
}

/* ─── Grille articles ─── */
.ycc-blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
@media (max-width: 980px) { .ycc-blog-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; } }
@media (max-width: 640px) { .ycc-blog-grid { grid-template-columns: 1fr; gap: 1.75rem; } }

/* ─── Carte article ─── */
.ycc-blog-card {
	background: #fff;
	border: 1px solid var(--ycc-trait);
	display: flex; flex-direction: column;
	transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.ycc-blog-card:hover {
	box-shadow: 0 12px 32px rgba(26, 24, 21, 0.08), 0 2px 6px rgba(26, 24, 21, 0.05);
	transform: translateY(-2px);
}
.ycc-blog-card__img {
	display: block; aspect-ratio: 3 / 2; overflow: hidden;
	background: var(--ycc-encre); position: relative;
}
.ycc-blog-card__img img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 0.45s ease;
}
.ycc-blog-card:hover .ycc-blog-card__img img { transform: scale(1.03); }
.ycc-blog-card__img__placeholder {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	font-family: "Cormorant Garamond", serif;
	font-size: 3rem; color: var(--ycc-or);
	opacity: 0.4;
	background: linear-gradient(135deg, var(--ycc-encre) 0%, var(--ycc-encre-2) 100%);
}

.ycc-blog-card__body {
	padding: 1.5rem 1.5rem 1.75rem;
	display: flex; flex-direction: column; flex: 1;
}
.ycc-blog-card__meta {
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem; font-weight: 500;
	letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--ycc-gris);
	margin: 0 0 0.75rem;
}
.ycc-blog-card__sep { margin: 0 0.5rem; color: var(--ycc-or); }
.ycc-blog-card__cat { color: var(--ycc-terre); text-decoration: none; font-weight: 600; }
.ycc-blog-card__cat:hover { text-decoration: underline; }

.ycc-blog-card__title {
	font-family: "Lato", sans-serif;
	font-size: 1.125rem; font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.005em;
	margin: 0 0 0.75rem;
	color: var(--ycc-encre);
}
.ycc-blog-card__title a { color: inherit; text-decoration: none; }
.ycc-blog-card__title a:hover { color: var(--ycc-terre); }

.ycc-blog-card__excerpt {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem; line-height: 1.65;
	color: var(--ycc-encre-2);
	flex: 1;
	margin-bottom: 1.25rem;
}
.ycc-blog-card__excerpt p { margin: 0; }

.ycc-blog-card__read {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem; font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--ycc-terre);
	text-decoration: none;
	align-self: flex-start;
	border-bottom: 1px solid transparent;
	transition: border-color 0.18s ease;
}
.ycc-blog-card__read:hover { border-bottom-color: var(--ycc-terre); }

/* ─── Pagination ─── */
.ycc-pagination { margin-top: 3.5rem; text-align: center; }
.ycc-pagination .page-numbers {
	display: inline-block;
	padding: 0.5rem 0.9rem; margin: 0 0.15rem;
	font-family: "Lato", sans-serif; font-size: 0.875rem;
	color: var(--ycc-encre);
	text-decoration: none;
	border: 1px solid var(--ycc-trait);
	transition: all 0.18s ease;
}
.ycc-pagination .page-numbers:hover { border-color: var(--ycc-terre); color: var(--ycc-terre); }
.ycc-pagination .page-numbers.current {
	background: var(--ycc-encre); border-color: var(--ycc-encre); color: var(--ycc-creme);
}
.ycc-pagination .page-numbers.dots { border: 0; }

/* ─── Empty state ─── */
.ycc-articles-empty {
	text-align: center;
	padding: 4rem 1.5rem;
	max-width: 560px;
	margin: 0 auto;
}
.ycc-articles-empty__diamond {
	font-family: "Cormorant Garamond", serif;
	font-size: 3rem; color: var(--ycc-or); opacity: 0.6;
	margin: 0 0 1.5rem; line-height: 1;
}
.ycc-articles-empty__title {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.875rem; font-weight: 400;
	letter-spacing: 0.04em;
	color: var(--ycc-encre);
	margin: 0 0 1.25rem;
}
.ycc-articles-empty__text {
	font-family: "Lato", sans-serif;
	font-size: 1rem; line-height: 1.65;
	color: var(--ycc-encre-2);
	margin: 0 0 2rem;
}

/* ─── CTA final ─── */
.ycc-articles-cta {
	background: var(--ycc-encre);
	color: var(--ycc-creme);
	padding: 5rem 1.5rem;
	text-align: center;
}
.ycc-articles-cta__inner { max-width: 720px; margin: 0 auto; }
.ycc-articles-cta__quote {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-style: italic; font-weight: 400;
	line-height: 1.35;
	color: var(--ycc-or);
	margin: 0 0 2rem;
	letter-spacing: 0.01em;
}
.ycc-articles-cta__text {
	font-family: "Lato", sans-serif;
	font-size: 1rem; line-height: 1.7;
	color: var(--ycc-creme); opacity: 0.88;
	margin: 0 0 2.5rem;
}
.ycc-articles-cta__text em { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 1.05em; }
.ycc-articles-cta__buttons {
	display: flex; gap: 1rem; flex-wrap: wrap; justify-content: center;
}
.ycc-articles-cta__buttons .wp-element-button {
	background: var(--ycc-or); color: var(--ycc-encre);
	border: 1px solid var(--ycc-or);
	padding: 0.8rem 1.8rem;
	font-family: "Lato", sans-serif; font-size: 0.875rem; font-weight: 700;
	letter-spacing: 0.08em; text-transform: uppercase;
	text-decoration: none;
	transition: all 0.18s ease;
}
.ycc-articles-cta__buttons .wp-element-button:hover {
	background: transparent; color: var(--ycc-or);
}
.ycc-articles-cta__btn-ghost {
	background: transparent; color: var(--ycc-or);
	border: 1px solid rgba(196, 165, 122, 0.4);
	padding: 0.8rem 1.8rem;
	font-family: "Lato", sans-serif; font-size: 0.875rem; font-weight: 700;
	letter-spacing: 0.08em; text-transform: uppercase;
	text-decoration: none;
	transition: all 0.18s ease;
}
.ycc-articles-cta__btn-ghost:hover { border-color: var(--ycc-or); }

/* ═════════════════════════════════════════════════════════════════
   PAGE LE LIVRE — bloc pitch + cards info + sommaire détaillé
   ═════════════════════════════════════════════════════════════════ */

/* Containers communs */
.ycc-book-section { margin: 3rem 0; }

/* ─── 1. PITCH BLOCK (couverture + détails) ─── */
.ycc-book-preview {
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 2.5rem;
	align-items: start;
	margin: 2rem 0 3rem;
	padding: 0;
}
@media (max-width: 720px) {
	.ycc-book-preview {
		grid-template-columns: 1fr;
		gap: 1.75rem;
	}
}

.ycc-book-preview__cover {
	position: relative;
	max-width: 280px;
	margin: 0 auto;
}
.ycc-book-preview__cover img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow:
		0 1px 2px rgba(26, 24, 21, 0.08),
		0 4px 12px rgba(26, 24, 21, 0.10),
		0 16px 32px rgba(26, 24, 21, 0.10);
	border-radius: 2px;
}

.ycc-book-status {
	display: inline-block;
	position: absolute;
	bottom: -12px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--ycc-or);
	color: var(--ycc-encre);
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 0.4rem 1rem;
	border-radius: 2px;
	white-space: nowrap;
}

.ycc-book-preview__content {
	padding-top: 0.5rem;
}
.ycc-book-preview__eyebrow {
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	margin: 0 0 0.75rem;
}
.ycc-book-preview__title {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.875rem, 3.5vw, 2.5rem);
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 0.5rem;
	letter-spacing: 0.02em;
}
.ycc-book-preview__subtitle {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.125rem;
	font-style: italic;
	color: var(--ycc-encre-2);
	margin: 0 0 1.5rem;
	line-height: 1.4;
}
.ycc-book-preview__content > p {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
	color: var(--ycc-encre-2);
}
.ycc-book-preview__meta {
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 0;
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: var(--ycc-gris);
}
.ycc-book-preview__meta li {
	padding: 0.25rem 0;
}

/* ─── 2 & 8. PULL QUOTES ─── */
.ycc-pull-quote {
	font-family: "Cormorant Garamond", serif;
	font-style: italic;
	font-weight: 400;
	font-size: clamp(1.5rem, 3vw, 2rem);
	line-height: 1.4;
	color: var(--ycc-terre);
	text-align: center;
	max-width: 720px;
	margin: 3rem auto;
	padding: 0 1rem;
	border: 0;
	quotes: none;
}
.ycc-pull-quote--small {
	font-size: clamp(1.25rem, 2.5vw, 1.625rem);
	color: var(--ycc-gris);
	font-style: normal;
	letter-spacing: 0.02em;
}

/* ─── 3, 6, 9. INFO CARDS ─── */
.ycc-info-card {
	background: var(--ycc-creme-2);
	border: 1px solid var(--ycc-trait);
	padding: 1.5rem 1.75rem;
	margin: 2rem 0;
	border-radius: 4px;
}
.ycc-info-card--accent {
	border-left: 3px solid var(--ycc-or);
	background: linear-gradient(135deg, var(--ycc-creme) 0%, var(--ycc-creme-2) 100%);
}
.ycc-info-card h3 {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ycc-terre);
	margin: 0 0 1rem;
}
.ycc-info-card p,
.ycc-info-card ul {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--ycc-encre-2);
	margin: 0;
}
.ycc-info-card ul {
	padding-left: 1.25rem;
}
.ycc-info-card ul li {
	margin: 0.4rem 0;
}

/* Row 2 cards côte à côte */
.ycc-info-cards-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	margin: 2.5rem 0;
}
.ycc-info-cards-row .ycc-info-card {
	margin: 0;
}
@media (max-width: 720px) {
	.ycc-info-cards-row { grid-template-columns: 1fr; }
}

/* ─── 4. GENÈSE (2 columns text + sidebar) ─── */
.ycc-book-genesis {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 2.5rem;
	margin: 3rem 0;
	align-items: start;
}
@media (max-width: 820px) {
	.ycc-book-genesis { grid-template-columns: 1fr; }
}
.ycc-book-genesis__text h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.625rem, 3vw, 2.125rem);
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 1.25rem;
}
.ycc-book-genesis__text p {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
	color: var(--ycc-encre-2);
	margin: 0 0 1rem;
}
.ycc-book-genesis__sidebar .ycc-info-card {
	margin: 0;
}

/* ─── 6. SOMMAIRE DÉTAILLÉ (chiffres romains) ─── */
.ycc-toc-detailed {
	margin: 2rem 0;
}
.ycc-toc-detailed__part {
	display: grid;
	grid-template-columns: 80px 1fr;
	gap: 1.5rem;
	padding: 1.5rem 0;
	border-top: 1px solid var(--ycc-trait);
	align-items: start;
}
.ycc-toc-detailed__part:last-child {
	border-bottom: 1px solid var(--ycc-trait);
}
.ycc-toc-detailed__roman {
	font-family: "Cormorant Garamond", serif;
	font-size: 2.5rem;
	font-weight: 500;
	color: var(--ycc-or);
	line-height: 1;
	text-align: center;
}
.ycc-toc-detailed__body h3 {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.5rem;
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 0.625rem;
	letter-spacing: 0.01em;
}
.ycc-toc-detailed__body p {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--ycc-encre-2);
	margin: 0;
}
@media (max-width: 560px) {
	.ycc-toc-detailed__part {
		grid-template-columns: 50px 1fr;
		gap: 1rem;
	}
	.ycc-toc-detailed__roman { font-size: 1.875rem; }
}

/* ─── 10. CTA FINAL ─── */
.ycc-book-cta {
	margin: 4rem 0 2rem;
	padding: 3rem 1.5rem;
	background: var(--ycc-creme-2);
	border-radius: 4px;
	text-align: center;
}
.ycc-book-cta h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 1rem;
}
.ycc-book-cta p {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	color: var(--ycc-encre-2);
	max-width: 560px;
	margin: 0 auto 2rem;
}
.ycc-book-cta__buttons {
	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
	justify-content: center;
}
.ycc-btn {
	display: inline-block;
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.85rem 1.5rem;
	text-decoration: none;
	border-radius: 2px;
	transition: all 0.18s ease;
}
.ycc-btn--primary {
	background: var(--ycc-encre);
	color: var(--ycc-creme);
	border: 1px solid var(--ycc-encre);
}
.ycc-btn--primary:hover {
	background: var(--ycc-terre);
	border-color: var(--ycc-terre);
}
.ycc-btn--ghost {
	background: transparent;
	color: var(--ycc-encre);
	border: 1px solid var(--ycc-trait);
}
.ycc-btn--ghost:hover {
	border-color: var(--ycc-terre);
	color: var(--ycc-terre);
}

/* ═════════════════════════════════════════════════════════════════
   FORMULAIRE DE CONTACT
   ═════════════════════════════════════════════════════════════════ */

.ycc-contact-form {
	max-width: 640px;
	margin: 2rem 0;
}
.ycc-form-honeypot { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }

.ycc-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}
.ycc-form-row .ycc-form-field { margin-bottom: 0; }
@media (max-width: 600px) {
	.ycc-form-row { grid-template-columns: 1fr; gap: 1.25rem; }
}

.ycc-form-field { margin-bottom: 1.25rem; display: flex; flex-direction: column; }
.ycc-form-field label {
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--ycc-terre);
	margin-bottom: 0.5rem;
}
.ycc-form-field input,
.ycc-form-field textarea {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	padding: 0.85rem 1rem;
	border: 1px solid var(--ycc-trait);
	border-radius: 0;
	background: #fff;
	color: var(--ycc-encre);
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.ycc-form-field input:focus,
.ycc-form-field textarea:focus {
	outline: none;
	border-color: var(--ycc-terre);
	box-shadow: 0 0 0 3px rgba(196, 165, 122, 0.15);
}
.ycc-form-field textarea { resize: vertical; min-height: 160px; }

.ycc-input--capitalize { text-transform: capitalize; }
.ycc-input--uppercase { text-transform: uppercase; letter-spacing: 0.04em; }

.ycc-form-submit {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.9rem 2rem;
	background: var(--ycc-encre);
	color: var(--ycc-creme);
	border: 1px solid var(--ycc-encre);
	cursor: pointer;
	transition: all 0.18s ease;
}
.ycc-form-submit:hover {
	background: var(--ycc-terre);
	border-color: var(--ycc-terre);
}

.ycc-form-success {
	background: #F4EEDC;
	border-left: 3px solid var(--ycc-or);
	padding: 1rem 1.25rem;
	margin-bottom: 1.5rem;
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: var(--ycc-encre);
}
.ycc-form-error {
	background: #F8E8E0;
	border-left: 3px solid #C45A2E;
	padding: 1rem 1.25rem;
	margin-bottom: 1.5rem;
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: #6E2812;
}

/* ── Page À propos ──────────────────────────────────────────────── */
.ycc-apropos-main {
	padding-bottom: 5rem;
}
.ycc-apropos-container {
	max-width: 1100px;
	margin-inline: auto;
	padding-inline: clamp(1.25rem, 4vw, 3rem);
	padding-top: clamp(2.5rem, 5vw, 4rem);
}

/* Layout deux colonnes */
.ycc-apropos-layout {
	display: grid;
	grid-template-columns: 340px 1fr;
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: start;
	margin-bottom: 4rem;
}
@media (max-width: 860px) {
	.ycc-apropos-layout {
		grid-template-columns: 1fr;
	}
}

/* Portrait */
.ycc-apropos-portrait-col {
	position: sticky;
	top: 90px;
}
.ycc-apropos-portrait-wrap {
	position: relative;
	overflow: hidden;
}
.ycc-apropos-portrait {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1/1;
	object-fit: cover;
	object-position: center top;
	border: 1px solid rgba(0,0,0,0.08);
}
.ycc-apropos-portrait-caption {
	padding: 1rem 0.25rem 0;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}
.ycc-apropos-portrait-caption strong {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--ycc-encre);
}
.ycc-apropos-portrait-caption span {
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	color: color-mix(in srgb, var(--ycc-encre) 55%, transparent);
	line-height: 1.5;
}

/* Biographie */
.ycc-apropos-bio {
}
.ycc-apropos-intro {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.1rem, 1.6vw, 1.3rem);
	font-style: italic;
	line-height: 1.7;
	color: var(--ycc-encre);
	margin-bottom: 1.5rem;
}
.ycc-apropos-rule {
	height: 1px;
	background: linear-gradient(to right, var(--ycc-or), transparent);
	margin: 1.75rem 0;
	opacity: 0.5;
	max-width: 200px;
}
.ycc-apropos-rule--full {
	max-width: 100%;
	background: linear-gradient(to right, transparent, var(--ycc-or), transparent);
	margin: 3rem 0;
}
.ycc-apropos-bio h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.2rem, 1.8vw, 1.5rem);
	font-weight: 600;
	color: var(--ycc-encre);
	margin: 1.75rem 0 0.75rem;
}
.ycc-apropos-bio h2:first-of-type { margin-top: 0; }
.ycc-apropos-bio p {
	font-family: "Lato", sans-serif;
	font-size: 0.9625rem;
	line-height: 1.85;
	color: var(--ycc-encre);
	margin-bottom: 1rem;
}
.ycc-apropos-bio p:last-of-type { margin-bottom: 0; }
.ycc-apropos-actions {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 2rem;
}
.ycc-apropos-btn {
	display: inline-block;
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0.75rem 1.75rem;
	transition: all 0.18s ease;
}
.ycc-apropos-btn--primary {
	background: var(--ycc-encre);
	color: var(--ycc-creme, #FAF6EF);
	border: 2px solid var(--ycc-encre);
}
.ycc-apropos-btn--primary:hover {
	background: var(--ycc-or);
	border-color: var(--ycc-or);
	color: var(--ycc-encre);
}
.ycc-apropos-btn--outline {
	background: transparent;
	color: var(--ycc-encre);
	border: 2px solid var(--ycc-encre);
}
.ycc-apropos-btn--outline:hover {
	background: var(--ycc-encre);
	color: var(--ycc-creme, #FAF6EF);
}

/* Frise domaines */
.ycc-apropos-domains {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
	margin-bottom: 2rem;
}
@media (max-width: 900px) {
	.ycc-apropos-domains { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 480px) {
	.ycc-apropos-domains { grid-template-columns: 1fr; }
}
.ycc-apropos-domain {
	padding: 1.75rem 1.25rem;
	background: #F9F5EE;
	border-bottom: 2px solid var(--ycc-or);
	text-align: center;
}
.ycc-apropos-domain__icon {
	font-family: "Cormorant Garamond", serif;
	font-size: 2rem;
	font-weight: 300;
	color: var(--ycc-or);
	line-height: 1;
	margin-bottom: 0.75rem;
}
.ycc-apropos-domain strong {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--ycc-encre);
	margin-bottom: 0.6rem;
}
.ycc-apropos-domain p {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	line-height: 1.6;
	color: color-mix(in srgb, var(--ycc-encre) 70%, transparent);
	margin: 0;
}

/* ── Page Harmonisation ─────────────────────────────────────────── */
.ycc-harmo-main {
	padding-bottom: 5rem;
}

.ycc-harmo-container {
	max-width: 1120px;
	margin-inline: auto;
	padding-inline: clamp(1.25rem, 4vw, 3rem);
}
.ycc-harmo-container--narrow {
	max-width: 780px;
}

.ycc-harmo-section {
	padding-block: clamp(3rem, 6vw, 5rem);
}
.ycc-harmo-section--light {
	background: #F9F5EE;
}

.ycc-harmo-intro {
	padding-block: clamp(2.5rem, 5vw, 4rem);
}

.ycc-harmo-lead {
	font-family: "Lato", sans-serif;
	font-size: clamp(1rem, 1.15vw, 1.1rem);
	line-height: 1.85;
	color: var(--ycc-encre);
	margin-bottom: 1.5rem;
}
.ycc-harmo-lead:last-child { margin-bottom: 0; }

.ycc-harmo-rule {
	height: 1px;
	background: linear-gradient(to right, transparent, var(--ycc-or), transparent);
	margin-inline: clamp(1.25rem, 4vw, 3rem);
	opacity: 0.5;
}

.ycc-harmo-eyebrow {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ycc-or);
	margin-bottom: 0.75rem;
}

.ycc-harmo-section h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.5rem, 2.5vw, 2rem);
	font-weight: 600;
	color: var(--ycc-encre);
	margin-bottom: 1.25rem;
	line-height: 1.25;
}
.ycc-harmo-section h3 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.15rem, 1.8vw, 1.4rem);
	font-weight: 600;
	color: var(--ycc-encre);
	margin-bottom: 0.75rem;
}
.ycc-harmo-section p {
	font-family: "Lato", sans-serif;
	font-size: 0.9625rem;
	line-height: 1.8;
	color: var(--ycc-encre);
	margin-bottom: 1rem;
}
.ycc-harmo-section p:last-child { margin-bottom: 0; }

.ycc-harmo-sub {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
	color: color-mix(in srgb, var(--ycc-encre) 72%, transparent);
	max-width: 640px;
	margin-inline: auto;
	margin-bottom: 0;
}

/* Two-col layout */
.ycc-harmo-two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(2rem, 4vw, 4rem);
	align-items: start;
}
@media (max-width: 768px) {
	.ycc-harmo-two-col { grid-template-columns: 1fr; }
}

/* Lists */
.ycc-harmo-list {
	margin: 1rem 0 1.25rem 0;
	padding-left: 0;
	list-style: none;
}
.ycc-harmo-list li {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: var(--ycc-encre);
	padding: 0.35rem 0 0.35rem 1.5rem;
	position: relative;
	border-bottom: 1px solid rgba(0,0,0,0.06);
}
.ycc-harmo-list li::before {
	content: "—";
	position: absolute;
	left: 0;
	color: var(--ycc-or);
	font-weight: 600;
}

/* Card */
.ycc-harmo-card {
	background: var(--ycc-creme, #FAF6EF);
	border: 1px solid rgba(0,0,0,0.08);
	border-left: 3px solid var(--ycc-or);
	padding: 2rem 1.75rem;
}
.ycc-harmo-card h3 {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.15rem;
	font-weight: 600;
	color: var(--ycc-encre);
	margin-bottom: 1rem;
}
.ycc-harmo-card ul {
	padding-left: 0;
	list-style: none;
	margin: 0 0 1.25rem 0;
}
.ycc-harmo-card ul li {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	color: var(--ycc-encre);
	padding: 0.3rem 0 0.3rem 1.25rem;
	position: relative;
}
.ycc-harmo-card ul li::before {
	content: "◦";
	position: absolute;
	left: 0;
	color: var(--ycc-or);
}
.ycc-harmo-card__note {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-style: italic;
	color: color-mix(in srgb, var(--ycc-encre) 65%, transparent);
	border-top: 1px solid rgba(0,0,0,0.08);
	padding-top: 1rem;
	margin-bottom: 0 !important;
}

/* Steps */
.ycc-harmo-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-top: 1rem;
}
@media (max-width: 900px) {
	.ycc-harmo-steps { grid-template-columns: 1fr; }
}
.ycc-harmo-step {
	background: #fff;
	border: 1px solid rgba(0,0,0,0.07);
	border-top: 3px solid var(--ycc-or);
	padding: 2rem 1.5rem;
}
.ycc-harmo-step__num {
	font-family: "Cormorant Garamond", serif;
	font-size: 2.5rem;
	font-weight: 300;
	color: var(--ycc-or);
	opacity: 0.6;
	line-height: 1;
	margin-bottom: 1rem;
}

/* Blockquote */
.ycc-harmo-quote {
	border-left: 3px solid var(--ycc-or);
	margin: 2rem 0;
	padding: 1.25rem 1.75rem;
	background: #FAF6EF;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	font-style: italic;
	color: var(--ycc-encre);
	line-height: 1.7;
}

/* Three-col */
.ycc-harmo-three-col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.75rem;
	margin-top: 2rem;
}
@media (max-width: 768px) {
	.ycc-harmo-three-col { grid-template-columns: 1fr; }
}
.ycc-harmo-item {
	padding: 1.5rem;
	background: #FAF6EF;
	border-bottom: 2px solid var(--ycc-or);
}
.ycc-harmo-item strong {
	display: block;
	font-family: "Cormorant Garamond", serif;
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--ycc-encre);
	margin-bottom: 0.6rem;
}
.ycc-harmo-item p {
	font-size: 0.9rem !important;
	color: color-mix(in srgb, var(--ycc-encre) 75%, transparent) !important;
	margin: 0 !important;
}

/* Four-col differentiators */
.ycc-harmo-four-col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
}
@media (max-width: 900px) {
	.ycc-harmo-four-col { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.ycc-harmo-four-col { grid-template-columns: 1fr; }
}
.ycc-harmo-diff {
	text-align: center;
	padding: 2rem 1.25rem;
	background: #fff;
	border: 1px solid rgba(0,0,0,0.07);
}
.ycc-harmo-diff__icon {
	font-family: "Cormorant Garamond", serif;
	font-size: 2rem;
	font-weight: 300;
	color: var(--ycc-or);
	margin-bottom: 0.75rem;
	line-height: 1;
}
.ycc-harmo-diff strong {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ycc-encre);
	margin-bottom: 0.6rem;
}
.ycc-harmo-diff p {
	font-size: 0.875rem !important;
	color: color-mix(in srgb, var(--ycc-encre) 70%, transparent) !important;
	line-height: 1.6 !important;
	margin: 0 !important;
}

/* CTA section */
.ycc-harmo-cta-section {
	padding-block: clamp(3rem, 6vw, 5rem);
	background: var(--ycc-encre, #1A1A2E);
	text-align: center;
}
.ycc-harmo-cta-section h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.6rem, 2.5vw, 2.2rem);
	font-weight: 600;
	color: #fff;
	margin-bottom: 1rem;
}
.ycc-harmo-cta-section p {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	color: rgba(255,255,255,0.72);
	max-width: 560px;
	margin-inline: auto;
	margin-bottom: 2rem;
	line-height: 1.75;
}

.ycc-harmo-btn {
	display: inline-block;
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ycc-encre);
	background: var(--ycc-or, #C9A84C);
	border: 2px solid var(--ycc-or, #C9A84C);
	padding: 0.9rem 2.25rem;
	text-decoration: none;
	transition: all 0.2s ease;
}
.ycc-harmo-btn:hover {
	background: transparent;
	color: var(--ycc-or, #C9A84C);
}
.ycc-harmo-cta-section .ycc-harmo-btn {
	color: var(--ycc-encre);
}
.ycc-harmo-cta-section .ycc-harmo-btn:hover {
	color: var(--ycc-or, #C9A84C);
	background: transparent;
	border-color: var(--ycc-or, #C9A84C);
}

/* ═════════════════════════════════════════════════════════════════
   PAGE D'ACCUEIL — refonte « parcours & activités »
   Réutilise la palette et la typo du thème. Tout est préfixé .ycc-home-*
   ═════════════════════════════════════════════════════════════════ */

/* ── Hero : ligne des rôles + lead centré ── */
.ycc-home-hero__roles {
	font-family: "Lato", sans-serif;
	font-size: clamp(0.75rem, 1.2vw, 0.8125rem);
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ycc-terre);
	margin: 1.75rem 0 0;
	line-height: 1.6;
}
.ycc-page-hero--home .ycc-lead { max-width: 680px; margin-inline: auto; }

/* ── Conteneurs & sections génériques de la home ── */
.ycc-home-section {
	padding-block: clamp(3.5rem, 7vw, 6rem);
}
.ycc-home-section--light {
	background: #F9F5EE;
	border-block: 1px solid var(--ycc-trait);
}
.ycc-home-container {
	max-width: 1120px;
	margin-inline: auto;
	padding-inline: clamp(1.25rem, 4vw, 3rem);
}
.ycc-home-container--narrow { max-width: 820px; }

.ycc-home-eyebrow {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	margin: 0 0 1rem;
}
.ycc-home-h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: 0.01em;
	color: var(--ycc-encre);
	margin: 0 0 1rem;
}
.ycc-home-sub {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.125rem, 2vw, 1.4rem);
	font-style: italic;
	line-height: 1.5;
	color: var(--ycc-encre-2);
	margin: 0 0 2.75rem;
	max-width: 640px;
}
.ycc-home-sub .ycc-home-textlink { font-style: normal; }

.ycc-home-textlink {
	font-family: "Lato", sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--ycc-terre);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color 0.18s ease, color 0.18s ease;
	white-space: nowrap;
}
.ycc-home-textlink:hover { border-bottom-color: var(--ycc-terre); color: var(--ycc-encre); }

/* ── QUI JE SUIS : portrait + récit ── */
.ycc-home-intro {
	display: grid;
	grid-template-columns: 360px 1fr;
	gap: clamp(2.5rem, 5vw, 4.5rem);
	align-items: center;
}
@media (max-width: 880px) {
	.ycc-home-intro { grid-template-columns: 1fr; gap: 2.5rem; }
}
.ycc-home-intro__portrait { position: relative; }
.ycc-home-intro__portrait img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: center top;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 16px 16px 0 0 rgba(196, 165, 122, 0.22);
}
@media (max-width: 880px) {
	.ycc-home-intro__portrait { max-width: 360px; }
	.ycc-home-intro__portrait img { box-shadow: 12px 12px 0 0 rgba(196, 165, 122, 0.22); }
}
.ycc-home-intro__lead {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	font-style: italic;
	line-height: 1.55;
	color: var(--ycc-encre);
	margin: 0 0 1.5rem;
}
.ycc-home-intro__text > p:not(.ycc-home-eyebrow):not(.ycc-home-intro__lead) {
	font-family: "Lato", sans-serif;
	font-size: 1.0625rem;
	line-height: 1.85;
	color: var(--ycc-encre);
	margin: 0 0 1.25rem;
}
.ycc-home-intro__actions { margin-top: 1.75rem; }

/* ── TRAJECTOIRE : frise verticale ── */
.ycc-home-timeline { margin: 0; }
.ycc-home-timeline__item {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 1.75rem;
	padding: 1.6rem 0;
	border-top: 1px solid var(--ycc-trait);
	align-items: baseline;
}
.ycc-home-timeline__item:last-child { border-bottom: 1px solid var(--ycc-trait); }
.ycc-home-timeline__year {
	font-family: "Lato", sans-serif;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ycc-gris);
	padding-top: 0.35rem;
}
.ycc-home-timeline__body h3 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.25rem, 2vw, 1.6rem);
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 0.4rem;
	line-height: 1.2;
}
.ycc-home-timeline__body p {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--ycc-encre-2);
	margin: 0;
}
.ycc-home-timeline__item--accent .ycc-home-timeline__year { color: var(--ycc-terre); }
.ycc-home-timeline__item--accent .ycc-home-timeline__body h3 { color: var(--ycc-terre); }
@media (max-width: 600px) {
	.ycc-home-timeline__item { grid-template-columns: 1fr; gap: 0.45rem; padding: 1.3rem 0; }
	.ycc-home-timeline__year { padding-top: 0; }
}

/* ── MES ACTIVITÉS : constellation de cartes ── */
.ycc-home-universe {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
	margin-top: 0.5rem;
}
@media (max-width: 760px) {
	.ycc-home-universe { grid-template-columns: 1fr; }
}
.ycc-home-card {
	display: flex;
	flex-direction: column;
	background: var(--ycc-creme);
	border: 1px solid var(--ycc-trait);
	border-top: 3px solid var(--ycc-or);
	padding: 2rem 1.9rem 1.75rem;
	transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.ycc-home-card:hover {
	box-shadow: 0 14px 34px rgba(26, 24, 21, 0.09), 0 2px 6px rgba(26, 24, 21, 0.05);
	transform: translateY(-3px);
}
.ycc-home-card__num {
	font-family: "Lato", sans-serif;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--ycc-or);
	margin: 0 0 0.85rem;
}
.ycc-home-card__title {
	font-family: "Cormorant Garamond", serif;
	font-size: 1.625rem;
	font-weight: 500;
	color: var(--ycc-encre);
	margin: 0 0 0.6rem;
	line-height: 1.15;
}
.ycc-home-card__lede {
	font-family: "Lato", sans-serif;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--ycc-encre-2);
	margin: 0 0 1rem;
}
.ycc-home-card__quote {
	font-family: "Cormorant Garamond", serif;
	font-style: italic;
	font-size: 1.05rem;
	line-height: 1.45;
	color: var(--ycc-terre);
	margin: 0 0 1.5rem;
}
.ycc-home-card__link {
	margin-top: auto;
	align-self: flex-start;
	font-family: "Lato", sans-serif;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ycc-encre);
	text-decoration: none;
	border-bottom: 1px solid var(--ycc-or);
	padding-bottom: 2px;
	transition: color 0.18s ease, border-color 0.18s ease;
}
.ycc-home-card__link:hover { color: var(--ycc-terre); border-bottom-color: var(--ycc-terre); }

/* Constellation à 3 cartes */
.ycc-home-universe--three { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 880px) { .ycc-home-universe--three { grid-template-columns: 1fr; } }

/* Conviction — citation centrale : la profondeur, en sobriété */
.ycc-home-conviction {
	max-width: 780px;
	margin: 0 auto clamp(3rem, 6vw, 4.5rem);
	padding: 0 1rem;
	text-align: center;
	color: var(--ycc-encre);
	font-style: italic;
	font-size: clamp(1.3rem, 2.3vw, 1.85rem);
	line-height: 1.5;
}
.ycc-home-conviction::before {
	content: "◆";
	display: block;
	color: var(--ycc-or);
	font-size: 0.7rem;
	font-style: normal;
	margin-bottom: 1.5rem;
	letter-spacing: 0.3em;
}

/* Conviction sur la page À propos (dans la colonne bio) */
.ycc-apropos-bio .ycc-apropos-conviction {
	font-family: "Cormorant Garamond", "EB Garamond", Georgia, serif;
	font-style: italic;
	font-size: clamp(1.15rem, 1.7vw, 1.4rem);
	line-height: 1.6;
	color: var(--ycc-encre);
	border-left: 3px solid var(--ycc-or);
	padding-left: 1.5rem;
	margin-top: 2rem;
}

/* ───── Sélecteur de langue FR/EN (ajout module i18n) ───── */
.ycc-nav-wrap{display:flex;align-items:center;gap:1.25rem}
.ycc-header-tools{display:flex;align-items:center}
.ycc-langswitch{position:relative;font-family:"Lato",sans-serif}
.ycc-langswitch__current{display:flex;align-items:center;gap:.4rem;background:none;border:1px solid var(--wp--preset--color--trait,#D8CFC0);border-radius:6px;padding:.34rem .55rem;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#3D362E;line-height:1;transition:border-color .2s ease,background .2s ease}
.ycc-langswitch__current:hover{border-color:#807A6E;background:rgba(61,54,46,.03)}
.ycc-langswitch__flag{display:inline-flex;align-items:center;line-height:1;font-size:1.05em}
.ycc-langswitch__flag img.emoji{height:1em;width:auto;margin:0;vertical-align:-.05em}
.ycc-langswitch__caret{transition:transform .2s ease;color:#807A6E}
.ycc-langswitch.is-open .ycc-langswitch__caret{transform:rotate(180deg)}
.ycc-langswitch__list{display:none;position:absolute;top:calc(100% + 8px);right:0;min-width:172px;background:#FBF8F2;border:1px solid var(--wp--preset--color--trait,#E5DCCD);border-radius:8px;box-shadow:0 14px 36px rgba(61,54,46,.15);list-style:none;margin:0;padding:.35rem 0;z-index:1200}
.ycc-langswitch.is-open .ycc-langswitch__list{display:block}
.ycc-langswitch__list li{margin:0}
.ycc-langswitch__opt{display:flex;align-items:center;gap:.6rem;padding:.5rem .9rem;font-size:.8rem;letter-spacing:.04em;color:#3D362E;text-decoration:none;transition:background .18s ease}
.ycc-langswitch__opt:hover{background:rgba(128,122,110,.12)}
.ycc-langswitch__opt.is-active{font-weight:700;background:rgba(128,122,110,.08)}
.ycc-langswitch__opt .ycc-langswitch__flag{font-size:1.15em}
.ycc-langswitch__code{text-transform:uppercase;letter-spacing:.06em}
.ycc-langswitch__name{color:#807A6E;font-size:.78rem}
@media (max-width:782px){.ycc-nav-wrap{gap:.85rem}}
