/* monchanvre — Contenu éditorial : prose, articles, blog, contact, sidebar, commentaires */

/* — Prose (article / pages / mentions légales / description produit) — */
.prose{max-width:720px;margin:0 auto;font-size:var(--fs-md);color:#283328;font-weight:var(--fw-regular)}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:var(--fs-xl);margin-top:1.8em}
.prose h3{font-size:var(--fs-lg);margin-top:1.4em}
.prose p{line-height:1.75}
.prose a{color:var(--green-d);font-weight:var(--fw-semibold);text-decoration:underline;text-decoration-color:var(--green-soft);text-underline-offset:3px}
.prose a:hover{text-decoration-color:var(--green)}
.prose strong{font-weight:var(--fw-bold)}
.prose ul{padding-left:0;display:flex;flex-direction:column;gap:10px;margin-top:1em}
.prose ul li{position:relative;padding-left:30px;line-height:1.6}
.prose ul li::before{content:"🌿";position:absolute;left:0;font-size:15px}
.prose ol{padding-left:22px;display:flex;flex-direction:column;gap:10px;margin-top:1em}
.prose ol li{line-height:1.6}
.prose blockquote{border-left:5px solid var(--green);background:var(--green-soft);padding:18px 22px;border-radius:0 var(--r-md) var(--r-md) 0;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold)}
.prose blockquote p{margin:0}
.prose .callout,.prose .wp-block-group.is-style-callout{background:var(--sun-soft);border:2px solid var(--sun);border-radius:var(--r-md);padding:18px 22px;font-size:var(--fs-base)}
.prose figure{margin:0}
.prose figure .ph{aspect-ratio:16/9;border-radius:var(--r-md);border:var(--border)}
.prose figure img,.prose img{border-radius:var(--r-md)}
.prose figcaption{font-size:var(--fs-sm);color:var(--muted);text-align:center;margin-top:10px}
.prose .wp-block-image{margin-top:1.2em}

/* — Contenu de page Gutenberg (.entry-content) : typographie « prose »,
     tout en laissant les blocs alignfull/alignwide s'étendre (cf. base.css) — */
.entry-content{font-size:var(--fs-md);color:#283328;font-weight:var(--fw-regular)}
.entry-content > p{line-height:1.75}
.entry-content h2{font-size:var(--fs-xl);margin-top:1.6em}
.entry-content h3{font-size:var(--fs-lg);margin-top:1.3em}
.entry-content a:not(.btn){color:var(--green-d);font-weight:var(--fw-semibold);text-decoration:underline;text-decoration-color:var(--green-soft);text-underline-offset:3px}
.entry-content a:not(.btn):hover{text-decoration-color:var(--green)}
.entry-content > ul{padding-left:0;display:flex;flex-direction:column;gap:10px}
.entry-content > ul li{position:relative;padding-left:30px;line-height:1.6;list-style:none}
.entry-content > ul li::before{content:"🌿";position:absolute;left:0;font-size:15px}
.entry-content blockquote,.entry-content .wp-block-quote{border-left:5px solid var(--green);background:var(--green-soft);padding:18px 22px;border-radius:0 var(--r-md) var(--r-md) 0;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold)}
.entry-content .wp-block-group.is-style-callout{background:var(--sun-soft);border:2px solid var(--sun);border-radius:var(--r-md);padding:18px 22px}
.entry-content img{border-radius:var(--r-md)}

/* — En-tête & mise en page d'article — */
.article-head{max-width:760px;margin:0 auto;text-align:center;padding:24px 0 36px}
.article-head h1{font-size:var(--fs-3xl);margin:16px 0;line-height:1.08}
.article-meta{display:flex;gap:16px;justify-content:center;align-items:center;font-size:var(--fs-sm);color:var(--muted);font-weight:var(--fw-semibold);flex-wrap:wrap}
.article-cover .ph,.article-cover img{aspect-ratio:21/9;object-fit:cover;width:100%;border-radius:var(--r-lg);border:var(--border);box-shadow:var(--shadow-md);max-width:980px;margin:0 auto;display:block}
.article-tags{max-width:720px;margin:32px auto 0;display:flex;gap:10px;flex-wrap:wrap}
.article-tags a{font-size:var(--fs-sm);font-weight:var(--fw-semibold);background:var(--green-soft);color:var(--green-d);padding:6px 14px;border-radius:var(--r-pill)}

.author{display:flex;gap:14px;align-items:center;max-width:720px;margin:48px auto 0;padding:20px;border:var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);background:#fff}
.author .ava{width:54px;height:54px;border-radius:50%;background:var(--berry-soft);border:2px solid var(--ink);flex:none;display:grid;place-items:center;font-size:24px;font-family:var(--font-display);font-weight:var(--fw-black);text-transform:uppercase}
.author b{font-family:var(--font-display);font-size:16px;display:block}
.author p{font-size:var(--fs-sm);color:var(--muted);margin-top:3px}

/* — Liste blog — */
.featured{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;border:var(--border);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-md);background:#fff;margin-bottom:48px}
.featured .ph,.featured img{min-height:340px;height:100%;width:100%;object-fit:cover}
.featured .body{padding:40px;display:flex;flex-direction:column;justify-content:center}
.featured h2{font-size:var(--fs-2xl);margin:14px 0;line-height:1.08}
.featured h2 a:hover{color:var(--green)}
.featured p{color:var(--muted);font-weight:var(--fw-medium);margin-bottom:20px}

.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:#fff;border:var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--ease),box-shadow var(--ease);display:flex;flex-direction:column}
.post:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-lg)}
.post .ph,.post .post-thumb{aspect-ratio:16/10;object-fit:cover;width:100%}
.post .body{padding:20px;display:flex;flex-direction:column;flex:1}
.post h3{font-family:var(--font-body);font-weight:var(--fw-bold);font-size:19px;line-height:var(--lh-snug);letter-spacing:0;margin:12px 0 8px}
.post h3 a:hover{color:var(--green)}
.post p{font-size:var(--fs-sm);color:var(--muted)}
.post .pill{align-self:flex-start}
.post .date{font-size:var(--fs-xs);color:var(--faint);margin-top:auto;padding-top:12px;font-weight:var(--fw-semibold)}

.topics{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:40px}

/* — Chips (topics, filtres) — */
.chip{font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:7px 14px;border-radius:var(--r-pill);border:2px solid var(--line);cursor:pointer;background:#fff;transition:.15s;display:inline-block;color:var(--ink)}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* — Contact — */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.field{margin-bottom:18px}
.field label{display:block;font-size:var(--fs-sm);font-weight:var(--fw-bold);margin-bottom:7px}
.field input,.field textarea,.field select{width:100%;padding:14px 16px;border:2px solid var(--line);border-radius:var(--r-md);font-family:inherit;font-size:var(--fs-base);background:#fff;transition:border-color var(--ease)}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--green)}
.field textarea{min-height:140px;resize:vertical}
.info-card{border:var(--border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-md);background:#fff}
.info-row{display:flex;gap:14px;padding:16px 0;border-bottom:2px solid var(--line);align-items:flex-start}
.info-row:last-child{border-bottom:none}
.info-row .ic{width:42px;height:42px;border-radius:var(--r-md);display:grid;place-items:center;font-size:20px;flex:none;border:2px solid var(--ink)}
.info-row b{font-family:var(--font-display);font-size:16px;display:block}
.info-row p{font-size:var(--fs-sm);color:var(--muted)}

/* — Encart « En bref » (résumé d'article) —
     Usage Gutenberg : style de bloc « Encart « En bref » » sur un Paragraphe/Groupe,
     ou classe CSS additionnelle « encart ». Commence le texte par « En bref ». */
.encart,
.is-style-encart{
	background:var(--green-soft);
	border:var(--border);
	border-radius:var(--r-md);
	box-shadow:var(--shadow-sm);
	padding:24px 26px;
	margin:0 0 32px;
	font-size:var(--fs-base);
	font-weight:var(--fw-medium);
	color:var(--ink);
	line-height:1.65;
}
.encart::before,
.is-style-encart::before{
	content:"🌿 En bref";
	display:block;
	font-family:var(--font-display);
	font-weight:800;
	font-size:13px;
	letter-spacing:.1em;
	text-transform:uppercase;
	color:var(--green-d);
	margin-bottom:10px;
}
.encart > *,
.is-style-encart > *{margin-top:0}
.encart p,
.is-style-encart p{margin:0 0 .5em}
.encart p:last-child,
.is-style-encart p:last-child{margin-bottom:0}

/* — Mise en page légale (sommaire ancré + prose) — */
.legal-layout{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start}
.legal-toc{position:sticky;top:90px}
.legal-toc .check{font-weight:var(--fw-semibold)}
@media (max-width:920px){.legal-layout{grid-template-columns:1fr}.legal-toc{position:static}}

/* — Sidebar / widgets — */
.sidebar{display:flex;flex-direction:column;gap:28px}
.widget{border:var(--border);border-radius:var(--r-lg);padding:22px;background:#fff;box-shadow:var(--shadow-sm)}
.widget-title{font-family:var(--font-display);font-size:18px;margin-bottom:12px}
.widget ul{display:flex;flex-direction:column;gap:8px}
.widget a:hover{color:var(--green)}

/* — Pagination chiffrée — */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:44px;flex-wrap:wrap}
.pagination .page-numbers{width:42px;height:42px;border-radius:var(--r-md);border:2px solid var(--line);display:grid;place-items:center;font-weight:var(--fw-bold);transition:.15s;text-decoration:none;color:var(--ink)}
.pagination .page-numbers:hover{border-color:var(--ink)}
.pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}
.pagination .page-numbers.dots{border-color:transparent}

.page-links{display:flex;gap:8px;align-items:center;margin-top:24px;font-weight:var(--fw-bold)}
.page-links a{padding:4px 12px;border:2px solid var(--line);border-radius:var(--r-sm)}

/* — Commentaires — */
.comments-area{margin-top:48px}
.comment-list{display:flex;flex-direction:column;gap:18px;padding:0}
.comment-list li{list-style:none}
.comment-body{border:2px solid var(--line);border-radius:var(--r-md);padding:18px}
.comment-respond{margin-top:24px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{
	width:100%;padding:12px 14px;border:2px solid var(--line);border-radius:var(--r-md);font-family:inherit;margin-top:6px;
}
.comment-form .submit{margin-top:12px}
