/* =========================================================================
   Article de blog Chatounette : DA « kawaii douce »
   Mise en page reprise du blog beyondd (bandeau titre + image, sommaire
   collant, colonne « À lire aussi » + produit conseillé), charte du site :
   corail #f37678, indigo #48456d, rose poudré #fdeeee, crème #fff8f4,
   menthe #d8efe6, lilas #e8e3f6, beurre #ffeab3, Quicksand.
   ========================================================================= */

.ch-blog-main {
	--ch-max: 1320px;
	--ch-gutter: 32px;
	--ch-col-gap: 32px;
	--ch-petrole: #48456d;
	--ch-encre: #48456d;
	--ch-menthe: #f37678;
	--ch-menthe-hover: #48456d;
	--ch-menthe-clair: #fdeeee;
	--ch-creme: #fff8f4;
	--ch-mint: #d8efe6;
	--ch-lilas: #e8e3f6;
	--ch-beurre: #ffeab3;
	--ch-trait: #f6d6d4;
	--ch-gris: #7a7794;
	--ch-rayon: 22px;
	--ch-ombre: 0 8px 24px rgba(243, 118, 120, 0.14);
	--ch-patte: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23f37678'%3E%3Cellipse cx='12' cy='16' rx='5.2' ry='4.3'/%3E%3Ccircle cx='5.6' cy='10.2' r='2.3'/%3E%3Ccircle cx='9.6' cy='6.4' r='2.4'/%3E%3Ccircle cx='14.4' cy='6.4' r='2.4'/%3E%3Ccircle cx='18.4' cy='10.2' r='2.3'/%3E%3C/g%3E%3C/svg%3E");
	--ch-titre: 'Quicksand', sans-serif;
	--ch-texte: 'Quicksand', sans-serif;
	/* Hauteur de l'en-tête collant du thème, mesurée par ch-blog.js. */
	--ch-sticky: calc(var(--ch-entete, 0px) + 20px);

	display: block;
	color: var(--ch-encre);
	font-family: var(--ch-texte);
}

/* Le gabarit est servi dans le .col-full du thème : le bandeau sort de ce
   conteneur sur toute la largeur, sans barre de défilement horizontale. */
.ch-blog-article .site-content {
	overflow-x: clip;
}

.ch-blog-article .archive-header:empty,
.ch-blog-article .shoptimizer-archive > .archive-header {
	display: none;
}

.ch-blog-article #content > .shoptimizer-archive > .col-full {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

/* 1. Boutons ------------------------------------------------------------ */

.ch-blog-main .ch-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15px 24px;
	border: 0;
	border-radius: 8px;
	background-color: var(--ch-menthe);
	color: #fff;
	font-family: var(--ch-texte);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background-color 200ms ease;
}

.ch-blog-main .ch-btn:hover,
.ch-blog-main .ch-btn:focus-visible {
	background-color: var(--ch-menthe-hover);
	color: #fff;
}

.ch-blog-main a:focus-visible {
	outline: 2px solid var(--ch-petrole);
	outline-offset: 2px;
}

/* 2. Bandeau ------------------------------------------------------------ */

.ch-blog-main .ch-article__hero {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	background-color: var(--ch-menthe-clair);
}

.ch-blog-main .ch-article__hero-inner {
	display: grid;
	grid-template-columns: 52% 48%;
	align-items: stretch;
	width: min(var(--ch-max), 100%);
	min-height: 460px;
	margin-inline: auto;
}

.ch-blog-main .ch-article__intro {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 20px;
	padding: 48px 48px 48px var(--ch-gutter);
}

.ch-blog-main .ch-article__breadcrumb {
	font-size: 14px;
	line-height: 1.4;
	color: var(--ch-gris);
}

.ch-blog-main .ch-article__breadcrumb a {
	color: var(--ch-encre);
	text-decoration: none;
}

.ch-blog-main .ch-article__breadcrumb a:hover,
.ch-blog-main .ch-article__breadcrumb a:focus-visible {
	text-decoration: underline;
}

.ch-blog-main .ch-article__title {
	margin: 0;
	font-family: var(--ch-titre);
	font-size: 46px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.5px;
	color: var(--ch-petrole);
}

.ch-blog-main .ch-article__lead {
	margin: 0;
	font-size: 18px;
	line-height: 1.6;
}

.ch-blog-main .ch-article__cta {
	align-self: flex-start;
}

.ch-blog-main .ch-article__meta {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
	color: var(--ch-gris);
}

.ch-blog-main .ch-article__cover {
	position: relative;
	overflow: hidden;
}

.ch-blog-main .ch-article__cover img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 70% center;
}

/* 3. Grille à trois colonnes ------------------------------------------- */

.ch-blog-main .ch-article__layout {
	display: grid;
	grid-template-columns: minmax(0, 11fr) minmax(0, 28fr) minmax(0, 11fr);
	gap: var(--ch-col-gap);
	align-items: start;
	width: min(var(--ch-max), 100% - (var(--ch-gutter) * 2));
	margin: 0 auto 72px;
	padding-top: 56px;
}

.ch-blog-main .ch-article__layout > * {
	min-width: 0;
}

/* 4. Sommaire ----------------------------------------------------------- */

.ch-blog-main .ch-toc {
	position: sticky;
	top: var(--ch-sticky);
	max-height: calc(100vh - var(--ch-sticky) * 2);
	overflow-y: auto;
	border: 1px solid var(--ch-trait);
	border-radius: 8px;
	scrollbar-width: thin;
}

.ch-blog-main .ch-toc--vide {
	border: 0;
}

.ch-blog-main .ch-toc__title,
.ch-blog-main .ch-related__title,
.ch-blog-main .ch-promo__title {
	margin: 0;
	padding: 11px 14px;
	background-color: var(--ch-petrole);
	color: #fff;
	font-family: var(--ch-texte);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ch-blog-main .ch-toc__title {
	position: sticky;
	top: 0;
	border-radius: 7px 7px 0 0;
}

.ch-blog-main .ch-toc__body {
	padding: 14px 14px 16px;
}

.ch-blog-main .ch-toc__list {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: ch-toc;
}

.ch-blog-main .ch-toc__item {
	position: relative;
	margin: 0 0 6px;
	padding-left: 28px;
	counter-increment: ch-toc;
}

.ch-blog-main .ch-toc__item::before {
	content: counter(ch-toc);
	position: absolute;
	top: 2px;
	left: 0;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--ch-menthe-clair);
	color: var(--ch-petrole);
	font-size: 11px;
	font-weight: 600;
	line-height: 20px;
	text-align: center;
}

.ch-blog-main .ch-toc__item.is-active::before {
	background-color: var(--ch-menthe);
}

.ch-blog-main .ch-toc__link {
	font-size: 14px;
	line-height: 1.45;
	color: var(--ch-encre);
	text-decoration: none;
}

.ch-blog-main .ch-toc__link:hover,
.ch-blog-main .ch-toc__link:focus-visible {
	text-decoration: underline;
}

.ch-blog-main .ch-toc__item.is-active .ch-toc__link {
	color: var(--ch-petrole);
	font-weight: 600;
}

.ch-blog-main .ch-toc-mobile {
	display: none;
}

/* 5. Colonne de droite -------------------------------------------------- */

.ch-blog-main .ch-article__side {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.ch-blog-main .ch-related__title,
.ch-blog-main .ch-promo__title {
	border-radius: 8px 8px 0 0;
}

.ch-blog-main .ch-related__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0;
	padding: 16px 0 0;
	list-style: none;
}

.ch-blog-main .ch-related__item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0;
}

.ch-blog-main .ch-related__media {
	flex: 0 0 38%;
	max-width: 38%;
}

.ch-blog-main .ch-related__media img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 6px;
	object-fit: cover;
	object-position: 70% center;
}

.ch-blog-main .ch-related__post-title {
	margin: 0;
	font-family: var(--ch-texte);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: normal;
}

.ch-blog-main .ch-related__post-title a {
	color: var(--ch-encre);
	text-decoration: none;
}

.ch-blog-main .ch-related__post-title a:hover,
.ch-blog-main .ch-related__post-title a:focus-visible {
	color: var(--ch-petrole);
	text-decoration: underline;
}

.ch-blog-main .ch-promo__card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 16px;
	border: 1px solid var(--ch-trait);
	border-top: 0;
	border-radius: 0 0 8px 8px;
}

.ch-blog-main .ch-promo__media img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
}

.ch-blog-main .ch-promo__name {
	margin: 4px 0 0;
	font-family: var(--ch-titre);
	font-size: 19px;
	font-weight: 500;
	line-height: 1.25;
}

.ch-blog-main .ch-promo__name a {
	color: var(--ch-petrole);
	text-decoration: none;
}

.ch-blog-main .ch-promo__note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 13px;
	color: var(--ch-gris);
}

.ch-blog-main .ch-promo__etoiles {
	--pc: calc(var(--note) / 5 * 100%);
	background: linear-gradient(90deg, #6EC522 var(--pc), #D7DEDD var(--pc));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-size: 15px;
	letter-spacing: 1px;
}

.ch-blog-main .ch-promo__desc {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

.ch-blog-main .ch-promo__price {
	margin: 0;
	font-size: 18px;
	font-weight: 600;
	color: var(--ch-petrole);
}

.ch-blog-main .ch-promo__price del {
	margin-right: 6px;
	font-size: 14px;
	font-weight: 300;
	color: var(--ch-gris);
}

.ch-blog-main .ch-promo__price ins {
	text-decoration: none;
}

.ch-blog-main .ch-promo__cta {
	width: 100%;
}

/* Bureau : la colonne de droite occupe toute la hauteur de l'article pour
   que l'encart produit reste collé pendant la lecture. */
@media (min-width: 1025px) {
	.ch-blog-main .ch-article__side {
		align-self: stretch;
	}

	.ch-blog-main .ch-promo {
		position: sticky;
		top: var(--ch-sticky);
	}
}

/* 6. Contenu de l'article ------------------------------------------------ */

.ch-blog-main .ch-article__content {
	font-size: 17px;
	font-weight: 300;
	line-height: 1.75;
	color: var(--ch-encre);
}

.ch-blog-main .ch-article__content > *:first-child {
	margin-top: 0;
}

.ch-blog-main .ch-article__content p {
	margin: 0 0 20px;
}

.ch-blog-main .ch-article__content strong,
.ch-blog-main .ch-article__content b {
	font-weight: 600;
}

.ch-blog-main .ch-article__content h2,
.ch-blog-main .ch-article__content h3,
.ch-blog-main .ch-article__content h4 {
	font-family: var(--ch-titre);
	font-weight: 500;
	line-height: 1.2;
	color: var(--ch-petrole);
	letter-spacing: -0.2px;
}

.ch-blog-main .ch-article__content h2 {
	margin: 48px 0 16px;
	font-size: 31px;
	scroll-margin-top: 110px;
}

.ch-blog-main .ch-article__content h3 {
	margin: 32px 0 10px;
	font-size: 23px;
}

.ch-blog-main .ch-article__content h4 {
	margin: 24px 0 8px;
	font-size: 19px;
}

.ch-blog-main .ch-article__content a {
	color: var(--ch-petrole);
	font-weight: 500;
	text-decoration: underline;
	text-decoration-color: var(--ch-menthe);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

.ch-blog-main .ch-article__content a:hover,
.ch-blog-main .ch-article__content a:focus-visible {
	text-decoration-color: var(--ch-petrole);
}

.ch-blog-main .ch-article__content ul,
.ch-blog-main .ch-article__content ol {
	margin: 0 0 24px 22px;
	padding: 0;
}

.ch-blog-main .ch-article__content ul {
	list-style: disc;
}

.ch-blog-main .ch-article__content ol {
	list-style: decimal;
}

.ch-blog-main .ch-article__content li {
	margin: 0 0 6px;
}

.ch-blog-main .ch-article__content li::marker {
	color: var(--ch-petrole);
}

.ch-blog-main .ch-article__content figure {
	width: 100%;
	max-width: 100%;
	margin: 32px 0;
}

.ch-blog-main .ch-article__content figure img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.ch-blog-main .ch-article__content figcaption {
	margin-top: 10px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--ch-gris);
	text-align: center;
}

.ch-blog-main .ch-article__content blockquote {
	margin: 28px 0;
	padding: 20px 24px;
	border-left: 4px solid var(--ch-petrole);
	border-radius: 0 8px 8px 0;
	background-color: var(--ch-menthe-clair);
	font-style: normal;
}

.ch-blog-main .ch-article__content blockquote p:last-child {
	margin-bottom: 0;
}

/* Tableaux : en-tête pétrole, lignes alternées menthe, défilement horizontal
   sur petit écran. */
.ch-blog-main .ch-article__content .wp-block-table {
	margin: 28px 0;
	overflow-x: auto;
}

.ch-blog-main .ch-article__content table {
	width: 100%;
	margin: 0;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--ch-trait);
	border-radius: 8px;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.5;
}

.ch-blog-main .ch-article__content th,
.ch-blog-main .ch-article__content td {
	padding: 12px 14px;
	border: 0;
	border-bottom: 1px solid var(--ch-trait);
	text-align: left;
	vertical-align: top;
}

.ch-blog-main .ch-article__content thead th {
	background-color: var(--ch-petrole);
	color: #fff;
	font-weight: 600;
}

.ch-blog-main .ch-article__content tbody tr:nth-child(even) td {
	background-color: var(--ch-menthe-clair);
}

.ch-blog-main .ch-article__content tbody tr:last-child td {
	border-bottom: 0;
}

/* FAQ RankMath : questions en cartes. */
.ch-blog-main .ch-article__content .rank-math-faq-item {
	margin: 0 0 12px;
	padding: 18px 20px;
	border: 1px solid var(--ch-trait);
	border-radius: 8px;
	background-color: #fff;
}

.ch-blog-main .ch-article__content .rank-math-question {
	margin: 0 0 8px;
	font-size: 19px;
}

.ch-blog-main .ch-article__content .rank-math-answer p:last-child {
	margin-bottom: 0;
}

/* 7. Écrans intermédiaires ------------------------------------------------ */

@media (max-width: 1240px) {
	.ch-blog-main {
		--ch-col-gap: 24px;
	}

	.ch-blog-main .ch-article__title {
		font-size: 40px;
	}
}

/* 8. Tablette et mobile : une colonne, sommaire repliable en tête --------- */

@media (max-width: 1024px) {
	.ch-blog-main {
		--ch-gutter: 20px;
	}

	.ch-blog-main .ch-article__hero-inner {
		display: flex;
		flex-direction: column-reverse;
		min-height: 0;
	}

	.ch-blog-main .ch-article__cover {
		aspect-ratio: 4 / 3;
	}

	.ch-blog-main .ch-article__intro {
		padding: 28px var(--ch-gutter) 32px;
	}

	.ch-blog-main .ch-article__title {
		font-size: 34px;
	}

	.ch-blog-main .ch-article__layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
		padding-top: 28px;
	}

	.ch-blog-main .ch-toc {
		display: none;
	}

	.ch-blog-main .ch-toc-mobile {
		display: block;
		margin: 0 0 28px;
		border: 1px solid var(--ch-trait);
		border-radius: 8px;
		background-color: var(--ch-menthe-clair);
	}

	.ch-blog-main .ch-toc-mobile summary {
		padding: 14px 16px;
		color: var(--ch-petrole);
		font-size: 14px;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		cursor: pointer;
	}

	.ch-blog-main .ch-toc-mobile .ch-toc__list {
		margin: 0;
		padding: 0 16px 16px 36px;
		list-style: decimal;
		font-size: 15px;
		line-height: 1.5;
	}

	.ch-blog-main .ch-toc-mobile .ch-toc__item {
		margin: 0 0 6px;
	}

	.ch-blog-main .ch-toc-mobile .ch-toc__link {
		color: var(--ch-encre);
		font-weight: 400;
		text-decoration: none;
	}

	.ch-blog-main .ch-article__side {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
		align-items: start;
	}

	.ch-blog-main .ch-article__content h2 {
		scroll-margin-top: 90px;
	}
}

@media (max-width: 767px) {
	.ch-blog-main .ch-article__title {
		font-size: 29px;
	}

	.ch-blog-main .ch-article__content {
		font-size: 16px;
	}

	.ch-blog-main .ch-article__content h2 {
		margin-top: 40px;
		font-size: 25px;
	}

	.ch-blog-main .ch-article__content h3 {
		font-size: 20px;
	}

	.ch-blog-main .ch-article__side {
		grid-template-columns: minmax(0, 1fr);
	}

	.ch-blog-main .ch-article__cta {
		align-self: stretch;
	}
}

/* =========================================================================
   9. Page Blog et archives de catégorie
   ========================================================================= */

.ch-blog-archive .ch-blog__hero {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	background-color: var(--ch-menthe-clair);
	color: var(--ch-encre);
}

.ch-blog-archive .ch-blog__hero-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: min(var(--ch-max), 100% - (var(--ch-gutter) * 2));
	margin-inline: auto;
	padding: 40px 0 44px;
	text-align: center;
}

.ch-blog-archive .ch-article__breadcrumb,
.ch-blog-archive .ch-article__breadcrumb a {
	color: var(--ch-gris);
}

.ch-blog-archive .ch-blog__surtitre {
	margin: 0;
	color: var(--ch-menthe);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ch-blog-archive .ch-blog__title {
	margin: 0;
	font-family: var(--ch-titre);
	font-size: 54px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.5px;
	color: var(--ch-petrole);
}

.ch-blog-archive .ch-blog__lead {
	max-width: 680px;
	margin: 0;
	font-size: 17px;
	line-height: 1.6;
	color: var(--ch-encre);
}

.ch-blog-archive .ch-blog__pastilles {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	max-width: 1000px;
	margin-top: 12px;
}

.ch-blog-archive .ch-pastille {
	display: inline-block;
	padding: 8px 16px;
	border: 2px solid var(--ch-trait);
	border-radius: 999px;
	background-color: #fff;
	color: var(--ch-encre);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 200ms ease, color 200ms ease;
}

.ch-blog-archive .ch-pastille:hover,
.ch-blog-archive .ch-pastille:focus-visible,
.ch-blog-archive .ch-pastille.is-active {
	border-color: var(--ch-menthe);
	background-color: var(--ch-menthe);
	color: #fff;
}

.ch-blog-archive .ch-blog__main {
	width: min(var(--ch-max), 100% - (var(--ch-gutter) * 2));
	margin: 0 auto 80px;
	padding-top: 56px;
}

.ch-blog-archive .ch-blog__grid-title {
	margin: 0 0 32px;
	font-family: var(--ch-titre);
	font-size: 36px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--ch-petrole);
}

.ch-blog-archive .ch-blog__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 28px;
	row-gap: 44px;
}

.ch-blog-archive .ch-carte {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ch-blog-archive .ch-carte__media {
	overflow: hidden;
	aspect-ratio: 4 / 3;
	margin-bottom: 6px;
	border-radius: 10px;
	background-color: var(--ch-menthe-clair);
}

.ch-blog-archive .ch-carte__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 400ms ease-out;
}

.ch-blog-archive .ch-carte:hover .ch-carte__media img,
.ch-blog-archive .ch-carte:focus-within .ch-carte__media img {
	transform: scale(1.04);
}

.ch-blog-archive .ch-carte__cat {
	margin: 0;
	color: var(--ch-gris);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ch-blog-archive .ch-carte__title {
	margin: 0;
	font-family: var(--ch-texte);
	font-size: 20px;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: normal;
}

.ch-blog-archive .ch-carte__link {
	color: var(--ch-petrole);
	text-decoration: none;
}

/* Toute la carte est cliquable. */
.ch-blog-archive .ch-carte__link::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
}

.ch-blog-archive .ch-carte:hover .ch-carte__link,
.ch-blog-archive .ch-carte:focus-within .ch-carte__link {
	text-decoration: underline;
	text-decoration-color: var(--ch-menthe);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

.ch-blog-archive .ch-carte__cta {
	display: inline-flex;
	gap: 8px;
	align-self: flex-start;
	margin: auto 0 0;
	padding-bottom: 3px;
	border-bottom: 2px solid var(--ch-menthe);
	color: var(--ch-petrole);
	font-size: 14px;
	font-weight: 600;
}

.ch-blog-archive .ch-blog__pagination {
	margin-top: 56px;
}

.ch-blog-archive .ch-blog__pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}

.ch-blog-archive .ch-blog__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	border: 1px solid var(--ch-trait);
	border-radius: 6px;
	color: var(--ch-petrole);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
}

.ch-blog-archive .ch-blog__pagination .page-numbers.current,
.ch-blog-archive .ch-blog__pagination a.page-numbers:hover {
	border-color: var(--ch-petrole);
	background-color: var(--ch-petrole);
	color: #fff;
}

.ch-blog-archive .ch-blog__pagination .dots {
	border: 0;
}

@media (max-width: 1024px) {
	.ch-blog-archive .ch-blog__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 20px;
	}

	.ch-blog-archive .ch-blog__title {
		font-size: 42px;
	}
}

@media (max-width: 767px) {
	.ch-blog-archive .ch-blog__hero-inner {
		padding: 28px 0 32px;
	}

	.ch-blog-archive .ch-blog__title {
		font-size: 32px;
	}

	.ch-blog-archive .ch-blog__lead {
		font-size: 15px;
	}

	/* Pastilles sur une ligne qui défile, plutôt que cinq lignes empilées. */
	.ch-blog-archive .ch-blog__pastilles {
		flex-wrap: nowrap;
		justify-content: flex-start;
		width: calc(100% + var(--ch-gutter) * 2);
		margin-inline: calc(var(--ch-gutter) * -1);
		padding: 0 var(--ch-gutter) 4px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.ch-blog-archive .ch-pastille {
		flex: 0 0 auto;
	}

	.ch-blog-archive .ch-blog__main {
		padding-top: 36px;
	}

	.ch-blog-archive .ch-blog__grid-title {
		font-size: 26px;
		margin-bottom: 24px;
	}

	.ch-blog-archive .ch-blog__grid {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ch-blog-main .ch-btn,
	.ch-blog-archive .ch-pastille,
	.ch-blog-archive .ch-carte__media img {
		transition: none;
	}
}

/* Imagify sert les images dans un <picture> : on le rend transparent pour que
   l'image remplisse son cadre, et on lève le plafond de hauteur du thème. */
.ch-blog-main picture {
	display: contents;
}

.ch-blog-main .ch-carte__media img,
.ch-blog-main .ch-related__media img,
.ch-blog-main .ch-article__cover img {
	max-height: none;
}


/* 9. Touche kawaii -------------------------------------------------------- */

.ch-blog-main .ch-btn {
	border-radius: 999px;
	font-weight: 700;
	box-shadow: 0 4px 0 rgba(72, 69, 109, 0.12);
}

.ch-blog-main .ch-article__hero {
	background:
		radial-gradient(circle at 8% 18%, var(--ch-beurre) 0 46px, transparent 47px),
		radial-gradient(circle at 46% 88%, var(--ch-mint) 0 64px, transparent 65px),
		var(--ch-menthe-clair);
}

.ch-blog-main .ch-article__title,
.ch-blog-archive .ch-blog__title {
	font-weight: 700;
	letter-spacing: 0;
}

.ch-blog-main .ch-article__cover {
	margin: 28px var(--ch-gutter) 28px 0;
	border-radius: 36px 36px 36px 8px;
	box-shadow: var(--ch-ombre);
}

.ch-blog-main .ch-toc,
.ch-blog-main .ch-toc-mobile,
.ch-blog-main .ch-promo__card,
.ch-blog-main .ch-related__item {
	border-radius: var(--ch-rayon);
}

.ch-blog-main .ch-promo__card {
	border: 2px dashed var(--ch-trait);
	background-color: var(--ch-creme);
	box-shadow: none;
}

.ch-blog-main .ch-promo__title::before,
.ch-blog-main .ch-related__title::before,
.ch-blog-main .ch-toc__title::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	vertical-align: -2px;
	background: var(--ch-patte) center / contain no-repeat;
}

.ch-blog-main .ch-related__media img,
.ch-blog-main .ch-promo__media img {
	border-radius: 16px;
}

.ch-blog-main .ch-article__content h2 {
	position: relative;
	padding-bottom: 12px;
	font-weight: 700;
}

.ch-blog-main .ch-article__content h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 6px;
	border-radius: 6px;
	background: repeating-linear-gradient(90deg, var(--ch-menthe) 0 10px, transparent 10px 16px);
}

.ch-blog-main .ch-article__content h3 {
	font-weight: 700;
}

.ch-blog-main .ch-article__content ul {
	list-style: none;
	padding-left: 0;
}

.ch-blog-main .ch-article__content ul > li {
	position: relative;
	padding-left: 30px;
}

.ch-blog-main .ch-article__content ul > li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 0.35em;
	width: 17px;
	height: 17px;
	background: var(--ch-patte) center / contain no-repeat;
}

.ch-blog-main .ch-article__content figure img {
	border-radius: var(--ch-rayon);
}

.ch-blog-main .ch-article__content blockquote {
	border-left: 0;
	border-radius: var(--ch-rayon);
	background-color: var(--ch-lilas);
}

.ch-blog-main .ch-article__content table {
	overflow: hidden;
	border-radius: 18px;
}

.ch-blog-main .ch-article__content thead th {
	background-color: var(--ch-menthe);
}

.ch-blog-main .ch-article__content .rank-math-faq-item {
	border: 2px solid var(--ch-trait);
	border-radius: var(--ch-rayon);
	background-color: var(--ch-creme);
}

.ch-blog-archive .ch-blog__hero {
	background:
		radial-gradient(circle at 92% 20%, var(--ch-beurre) 0 52px, transparent 53px),
		radial-gradient(circle at 6% 86%, var(--ch-mint) 0 70px, transparent 71px),
		var(--ch-menthe-clair);
}

.ch-blog-archive .ch-pastille {
	border-radius: 999px;
	font-weight: 700;
}

.ch-blog-archive .ch-carte {
	border-radius: 26px;
	background-color: #fff;
	box-shadow: var(--ch-ombre);
	overflow: hidden;
	transition: transform 200ms ease;
}

.ch-blog-archive .ch-carte:hover,
.ch-blog-archive .ch-carte:focus-within {
	transform: translateY(-4px);
}

.ch-blog-archive .ch-carte__media img {
	border-radius: 0;
}

.ch-blog-archive .ch-carte__cat {
	display: inline-block;
	align-self: flex-start;
	padding: 4px 12px;
	border-radius: 999px;
	background-color: var(--ch-mint);
	font-weight: 700;
}

@media (prefers-reduced-motion: reduce) {
	.ch-blog-archive .ch-carte {
		transition: none;
	}
}

.ch-blog-archive .ch-carte > :not(.ch-carte__media) {
	margin-left: 20px;
	margin-right: 20px;
}

.ch-blog-archive .ch-carte > :last-child {
	margin-bottom: 20px;
}

.ch-blog-main .ch-toc__title,
.ch-blog-main .ch-related__title,
.ch-blog-main .ch-promo__title {
	border-radius: 999px;
	background-color: var(--ch-menthe);
	font-weight: 700;
}

.ch-blog-main .ch-toc__title::before,
.ch-blog-main .ch-related__title::before,
.ch-blog-main .ch-promo__title::before {
	filter: brightness(0) invert(1);
}

.ch-blog-main .ch-toc {
	border: 2px solid var(--ch-trait);
	background-color: var(--ch-creme);
}

/* Le thème limite les articles à 840 px : le gabarit gère lui-même ses largeurs. */
.ch-blog-main article.ch-article {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}

@media (max-width: 1024px) {
	.ch-blog-main .ch-article__cover {
		margin: 16px 16px 0;
	}
}
