/* =========================================================================
   Café du Musée, composants (complète theme.json)
   Direction « galerie éditoriale » : angles nets, images encadrées,
   filets typographiques, survols dynamiques. Variables WP : --wp--preset--*
   ========================================================================= */

:root {
	--cdm-sh-s: 0 1px 0 rgba(36, 23, 18, .05);
	--cdm-sh: 0 10px 30px rgba(36, 23, 18, .10);
	--cdm-r: 3px;
	--cdm-rlg: 4px;
	--cdm-bord: var(--wp--preset--color--bordure, #E5DBCD);
	--cdm-bord-2: #d9cbb6;
	--cdm-ease: cubic-bezier(.2,.7,.2,1);
	--cdm-trans: .25s var(--cdm-ease);
	--cdm-arch: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cpath d='M40 220 V120 a80 80 0 0 1 160 0 V220' fill='none' stroke='%23caa06b' stroke-opacity='0.16' stroke-width='6'/%3E%3C/svg%3E");
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Eyebrow avec filet d'amorce (signature éditoriale) */
.is-eyebrow,
.eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: var(--wp--preset--font-family--inter);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--noisette);
}
.is-eyebrow::before,
.eyebrow::before {
	content: "";
	width: 26px;
	height: 1px;
	background: currentColor;
	opacity: .8;
}

/* Focus visible */
:where(a, button, input, select, textarea, .wp-block-button__link, [tabindex]):focus-visible {
	outline: 2px solid var(--wp--preset--color--ambre-fonce, #C27D2B);
	outline-offset: 3px;
	border-radius: 2px;
}

/* Lien « Aller au contenu » */
.skip-link.screen-reader-text {
	position: absolute; left: -9999px; top: 0; z-index: 1000;
	background: var(--wp--preset--color--moka); color: #fff;
	padding: 10px 16px; border-radius: 0 0 6px 0;
}
.skip-link.screen-reader-text:focus { left: 0; }

/* =========================================================================
   En-tête sticky translucide + filet d'accent café
   ========================================================================= */
.cdm-header {
	position: sticky; top: 0; z-index: 50;
	background: rgba(251, 247, 240, .9);
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--cdm-bord);
	box-shadow: inset 0 3px 0 var(--wp--preset--color--cafe);
}
.cdm-header .wp-block-navigation { font-weight: 500; }
.cdm-header .wp-block-navigation .wp-block-navigation-item__content {
	position: relative; padding-bottom: 4px;
}
.cdm-header .wp-block-navigation .wp-block-navigation-item__content::after {
	content: ""; position: absolute; left: 0; bottom: 0; height: 2px; width: 100%;
	background: var(--wp--preset--color--ambre);
	transform: scaleX(0); transform-origin: left; transition: transform var(--cdm-trans);
}
.cdm-header .wp-block-navigation .wp-block-navigation-item:hover .wp-block-navigation-item__content::after {
	transform: scaleX(1);
}
.cdm-logo img { height: 50px; width: auto; display: block; }

/* Champ de recherche en pilule */
.cdm-search .wp-block-search__inside-wrapper {
	border: 1px solid var(--cdm-bord); border-radius: 999px; background: #fff;
	padding: 5px 6px 5px 16px; overflow: hidden;
}
.cdm-search .wp-block-search__input { border: 0; background: transparent; font-size: .9rem; }

/* Header : logo image, bouton CTA non coupé, recherche compacte */
.cdm-logo a { display: inline-flex; align-items: center; }
.cdm-header .wp-block-buttons, .cdm-header .wp-block-button { flex: 0 0 auto; }
.cdm-header .wp-block-button__link { white-space: nowrap; }
@media (min-width: 901px) { .cdm-header .cdm-search .wp-block-search__inside-wrapper { max-width: 240px; } }

/* =========================================================================
   Boutons : affilié & ghost
   ========================================================================= */
.wp-block-button.is-style-affilie .wp-block-button__link {
	background: var(--wp--preset--color--ambre); color: #fff;
	border-radius: var(--cdm-r); font-weight: 600; letter-spacing: .01em;
	transition: background .2s, transform .2s var(--cdm-ease), box-shadow .2s;
}
.wp-block-button.is-style-affilie .wp-block-button__link:hover,
.wp-block-button.is-style-affilie .wp-block-button__link:focus {
	background: var(--wp--preset--color--ambre-fonce);
	transform: translateY(-2px); box-shadow: 0 6px 18px rgba(193,125,43,.28);
}
.wp-block-button.is-style-ghost .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--moka);
	border: 1.5px solid var(--cdm-bord-2); border-radius: var(--cdm-r); font-weight: 600;
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover,
.wp-block-button.is-style-ghost .wp-block-button__link:focus {
	border-color: var(--wp--preset--color--cafe); background: #fff;
}
.wp-block-button .wp-block-button__link {
	transition: background .2s, transform .2s var(--cdm-ease), box-shadow .2s;
}
.wp-block-button:not(.is-style-ghost) .wp-block-button__link:hover {
	transform: translateY(-2px); box-shadow: 0 6px 18px rgba(193,125,43,.24);
}
.cdm-affilie-note {
	font-size: .6875rem; color: var(--wp--preset--color--texte-2);
	display: block; margin-top: 4px;
}

/* =========================================================================
   Styles de groupe : carte, carte-sauge, bloc foncé
   ========================================================================= */
.wp-block-group.is-style-carte,
.wp-block-columns.is-style-carte,
.wp-block-column.is-style-carte {
	position: relative; background: #fff; border: 1px solid var(--cdm-bord);
	border-radius: var(--cdm-r); padding: 22px; overflow: hidden;
	transition: transform var(--cdm-trans), box-shadow var(--cdm-trans), border-color .2s;
}
.wp-block-group.is-style-carte::before,
.wp-block-column.is-style-carte::before {
	content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
	background: var(--wp--preset--color--ambre);
	transform: scaleX(0); transform-origin: left; transition: transform .3s var(--cdm-ease);
}
.wp-block-group.is-style-carte:hover,
.wp-block-column.is-style-carte:hover {
	box-shadow: var(--cdm-sh); transform: translateY(-3px); border-color: var(--cdm-bord-2);
}
.wp-block-group.is-style-carte:hover::before,
.wp-block-column.is-style-carte:hover::before { transform: scaleX(1); }

.wp-block-group.is-style-carte-sauge {
	background: linear-gradient(135deg, #eef3e9, #dfe9d6);
	border: 1px solid #cdddc0; border-radius: var(--cdm-rlg); padding: 38px;
}
.wp-block-group.is-style-carte-sauge :is(h1,h2,h3) { color: #3f5733; }

.wp-block-group.is-style-bloc-fonce {
	position: relative; overflow: hidden;
	background: linear-gradient(135deg, #3B2A20, #241712);
	color: #f3e3cd; border-radius: var(--cdm-rlg); padding: 44px; border: 1px solid #4a382b;
}
.wp-block-group.is-style-bloc-fonce::after {
	content: ""; position: absolute; right: -40px; top: -40px; width: 280px; height: 280px;
	background: var(--cdm-arch) no-repeat center / contain; pointer-events: none;
}
.wp-block-group.is-style-bloc-fonce > * { position: relative; z-index: 1; }
.wp-block-group.is-style-bloc-fonce :is(h1,h2,h3) { color: #fff; }
.wp-block-group.is-style-bloc-fonce a:not(.wp-block-button__link) {
	color: #e8d4b8; text-decoration: underline;
}

/* =========================================================================
   Listes pros / cons
   ========================================================================= */
.wp-block-list.is-style-pros,
.wp-block-list.is-style-cons { list-style: none; padding-left: 0; margin: 0; }
.wp-block-list.is-style-pros li,
.wp-block-list.is-style-cons li { position: relative; padding-left: 1.6em; margin-bottom: .35em; }
.wp-block-list.is-style-pros li::before { content: "✔"; position: absolute; left: 0; color: var(--wp--preset--color--succes); font-weight: 700; }
.wp-block-list.is-style-cons li::before { content: "✘"; position: absolute; left: 0; color: var(--wp--preset--color--rouge); font-weight: 700; }

/* =========================================================================
   Carte produit
   ========================================================================= */
.cdm-produit {
	position: relative; background: #fff; border: 1px solid var(--cdm-bord-2);
	border-radius: var(--cdm-rlg); padding: 24px; box-shadow: var(--cdm-sh);
}
.cdm-produit::before {
	content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
	background: var(--wp--preset--color--ambre);
}
.cdm-produit .cdm-pimg {
	position: relative; border: 1px solid var(--cdm-bord); border-radius: var(--cdm-r);
	overflow: hidden; background: linear-gradient(135deg, #f6efe4, #e7d3b8); aspect-ratio: 1;
}
.cdm-produit .cdm-pimg img { width: 100%; height: 100%; object-fit: contain; transition: transform .5s var(--cdm-ease); }
.cdm-produit:hover .cdm-pimg img { transform: scale(1.04); }
.cdm-badge {
	position: absolute; top: 10px; left: 10px; background: var(--wp--preset--color--succes);
	color: #fff; font-size: .6875rem; font-weight: 700; padding: 5px 11px; border-radius: 999px;
	box-shadow: 0 2px 6px rgba(47,143,91,.4); z-index: 2; letter-spacing: .02em;
}
.cdm-stars { color: var(--wp--preset--color--etoile); letter-spacing: 2px; font-size: .95rem; }
.cdm-prix { font-family: var(--wp--preset--font-family--fraunces); font-size: 1.4rem; color: var(--wp--preset--color--moka); font-weight: 600; }

/* =========================================================================
   Image encadrée « galerie » (passe-partout + filet)
   ========================================================================= */
.cdm-hero-img,
.wp-block-image.cdm-frame,
.wp-block-image.is-style-cadre {
	background: #fff; padding: 12px; border: 1px solid var(--cdm-bord-2);
	border-radius: var(--cdm-rlg); box-shadow: var(--cdm-sh); overflow: hidden;
}
.wp-block-image.is-style-cadre img { border-radius: 2px; }
.cdm-hero-img img { width: 100%; border-radius: 2px; transition: transform .6s var(--cdm-ease); }
.cdm-hero-img:hover img { transform: scale(1.03); }

/* =========================================================================
   Tableau comparatif (en-tête foncé sticky, cartes en mobile)
   ========================================================================= */
.wp-block-table.is-style-comparatif table {
	border-collapse: separate; border-spacing: 0; width: 100%;
	border: 1px solid var(--cdm-bord-2); border-radius: var(--cdm-r); overflow: hidden;
}
.wp-block-table.is-style-comparatif th,
.wp-block-table.is-style-comparatif td {
	border-bottom: 1px solid var(--cdm-bord); padding: 13px 15px; text-align: left; vertical-align: middle;
}
.wp-block-table.is-style-comparatif td + td,
.wp-block-table.is-style-comparatif th + th { border-left: 1px solid var(--cdm-bord); }
.wp-block-table.is-style-comparatif thead th {
	background: var(--wp--preset--color--moka); color: #f3e3cd;
	font-family: var(--wp--preset--font-family--inter); font-weight: 600;
	font-size: .8125rem; text-transform: uppercase; letter-spacing: .04em;
}
.wp-block-table.is-style-comparatif tbody tr:nth-child(even) td { background: #faf6ef; }
.wp-block-table.is-style-comparatif tbody tr:hover td { background: var(--wp--preset--color--creme-2); }

@media (max-width: 900px) {
	.wp-block-table.is-style-comparatif table,
	.wp-block-table.is-style-comparatif thead,
	.wp-block-table.is-style-comparatif tbody,
	.wp-block-table.is-style-comparatif th,
	.wp-block-table.is-style-comparatif td,
	.wp-block-table.is-style-comparatif tr { display: block; }
	.wp-block-table.is-style-comparatif thead { position: absolute; left: -9999px; }
	.wp-block-table.is-style-comparatif tr {
		margin-bottom: 16px; border: 1px solid var(--cdm-bord); border-radius: var(--cdm-r);
		overflow: hidden; background: #fff;
	}
	.wp-block-table.is-style-comparatif td {
		border: 0; border-bottom: 1px solid var(--cdm-bord); display: flex; justify-content: space-between; gap: 12px;
	}
	.wp-block-table.is-style-comparatif td::before {
		content: attr(data-label); font-weight: 600; color: var(--wp--preset--color--texte-2);
	}
}

/* =========================================================================
   Tuiles d'usage
   ========================================================================= */
.cdm-tuile {
	position: relative; background: #fff; border: 1px solid var(--cdm-bord);
	border-radius: var(--cdm-r); padding: 22px 14px; text-align: center; display: block;
	overflow: hidden; box-shadow: 0 1px 3px rgba(60,42,24,.05);
	transition: transform var(--cdm-trans), box-shadow var(--cdm-trans), border-color .2s;
}
.cdm-tuile::before {
	content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
	background: var(--wp--preset--color--ambre);
	transform: scaleX(0); transform-origin: left; transition: transform .3s var(--cdm-ease);
}
.cdm-tuile:hover { box-shadow: var(--cdm-sh); transform: translateY(-3px); border-color: var(--cdm-bord-2); }
.cdm-tuile:hover::before { transform: scaleX(1); }
.cdm-tuile .cdm-ic { font-size: 1.6rem; line-height: 1; }
.cdm-go { margin-top: auto; font-weight: 600; font-size: .8125rem; text-transform: uppercase; letter-spacing: .06em; color: var(--wp--preset--color--ambre-texte); }

/* =========================================================================
   Encadré verdict
   ========================================================================= */
.cdm-verdict {
	border: 1px solid var(--cdm-bord-2); border-left: 4px solid var(--wp--preset--color--ambre);
	border-radius: var(--cdm-r); background: var(--wp--preset--color--creme-2); padding: 22px 26px;
}
.cdm-verdict h3, .cdm-verdict h4 { margin-top: 0; }
.cdm-maj { font-size: .8125rem; color: var(--wp--preset--color--texte-2); font-style: italic; }

/* =========================================================================
   Bloc E-E-A-T (équipe)
   ========================================================================= */
.cdm-team { display: flex; gap: 14px; flex-wrap: wrap; }
.cdm-team img, .cdm-team .cdm-av {
	width: 76px; height: 76px; border-radius: 50%; object-fit: cover;
	border: 3px solid #c9a36a; background: linear-gradient(135deg, #caa06b, #9C6B43);
	transition: transform .3s var(--cdm-ease);
}
.cdm-team img:hover { transform: translateY(-4px); }

/* Points de confiance (bloc « notre promesse », voix de marque) */
.cdm-promesse { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.cdm-promesse li { position: relative; padding-left: 28px; }
.cdm-promesse li::before {
	content: "✓"; position: absolute; left: 0; top: 1px;
	color: var(--wp--preset--color--ambre); font-weight: 700;
}
.cdm-promesse strong { display: block; color: #fff; }
.cdm-promesse span { color: #cbb89f; font-size: .875rem; line-height: 1.4; }

/* =========================================================================
   Fil d'Ariane
   ========================================================================= */
.cdm-breadcrumbs ol {
	list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0;
	font-size: .8125rem; color: var(--wp--preset--color--texte-2);
}
.cdm-breadcrumbs li + li::before { content: "›"; margin-right: 8px; color: var(--wp--preset--color--noisette); }
.cdm-breadcrumbs a { color: var(--wp--preset--color--texte-2); }
.cdm-breadcrumbs a:hover { color: var(--wp--preset--color--ambre-fonce); }
.cdm-breadcrumbs [aria-current="page"] { color: var(--wp--preset--color--moka); font-weight: 500; }

/* =========================================================================
   Méta article
   ========================================================================= */
.cdm-meta { display: flex; align-items: center; gap: 12px; color: var(--wp--preset--color--texte-2); font-size: .875rem; }
.cdm-meta img { width: 38px; height: 38px; border-radius: 50%; object-fit: cover; }
.cdm-cat-label { font-size: .6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--wp--preset--color--ambre-texte); }

/* =========================================================================
   Newsletter
   ========================================================================= */
.cdm-news {
	background: var(--wp--preset--color--creme-2); border: 1px solid var(--cdm-bord-2);
	border-top: 3px solid var(--wp--preset--color--cafe); border-radius: var(--cdm-r);
	padding: 38px; text-align: center;
}
.cdm-news input[type="email"] {
	padding: 13px 16px; border: 1px solid var(--cdm-bord-2); border-radius: var(--cdm-r);
	min-width: 280px; font-size: .95rem; font-family: var(--wp--preset--font-family--inter); background: #fff;
}

/* =========================================================================
   Pied de page
   ========================================================================= */
.cdm-footer { background: var(--wp--preset--color--espresso); color: #cbb89f; font-size: .875rem; box-shadow: inset 0 3px 0 var(--wp--preset--color--ambre); }
.cdm-footer :is(h2,h3,h4) { color: #fff; font-family: var(--wp--preset--font-family--inter); font-size: .75rem; text-transform: uppercase; letter-spacing: .1em; }
.cdm-footer a { color: #cbb89f; }
.cdm-footer a:hover { color: var(--wp--preset--color--ambre); }
/* Footer : logo plus grand et visible sur fond foncé, listes sans puces */
.cdm-footer .wp-block-site-logo { margin-bottom: 6px; }
.cdm-footer .wp-block-site-logo img { width: 150px !important; height: auto; filter: brightness(0) invert(1); opacity: .92; }
.cdm-footer h4 { margin-bottom: 14px; }
.cdm-footer-list { list-style: none; margin: 0; padding: 0; }
.cdm-footer-list li { margin: 0 0 .6em; }
.cdm-footer-list a { text-decoration: none; display: inline-block; transition: color .15s var(--cdm-ease), transform .15s var(--cdm-ease); }
.cdm-footer-list a:hover { color: var(--wp--preset--color--ambre); transform: translateX(3px); }
.cdm-footer .cdm-disclosure { border-top: 1px solid rgba(255,255,255,.12); padding-top: 18px; color: #a8957c; }
/* Sécurité responsive : images jamais en débordement */
.cdm-footer img, .entry-content img { max-width: 100%; height: auto; }
.cdm-disclosure { border-top: 1px solid #4a382b; padding-top: 18px; font-size: .75rem; color: #9c8a73; }

/* =========================================================================
   Burger mobile
   ========================================================================= */
.cdm-burger {
	display: none; background: transparent; border: 1px solid var(--cdm-bord-2);
	border-radius: var(--cdm-r); width: 42px; height: 42px; cursor: pointer;
	align-items: center; justify-content: center;
}
.cdm-burger span, .cdm-burger span::before, .cdm-burger span::after {
	content: ""; display: block; width: 20px; height: 2px; background: var(--wp--preset--color--moka); position: relative; transition: var(--cdm-trans);
}
.cdm-burger span::before { position: absolute; top: -6px; }
.cdm-burger span::after { position: absolute; top: 6px; }

/* Liens-cartes natifs (cartes cliquables : titre en haut, CTA en bas) */
.cdm-card-link { display: flex; flex-direction: column; color: inherit; }
/* Colonnes contenant une carte : on rend la colonne flex pour que la carte
   s'étire à la hauteur de la ligne SANS déborder (fix superposition du bloc suivant). */
.wp-block-column:has(> .cdm-card-link) { display: flex; }
.wp-block-column > .cdm-card-link { flex: 1; height: auto; }

/* =========================================================================
   Article : mention de transparence, bandeau CTA auto, encadré auteur
   ========================================================================= */
.cdm-disclosure-inline {
	border: 1px solid var(--cdm-bord); border-left: 3px solid var(--wp--preset--color--noisette);
	background: #fff; border-radius: var(--cdm-r); padding: 12px 16px;
	color: var(--wp--preset--color--texte-2); font-size: .8125rem; margin-bottom: 24px;
}
.cdm-cta-band :is(h1,h2,h3) { margin-top: 0; }
.cdm-auteur { border-left: 4px solid var(--wp--preset--color--ambre); }

/* =========================================================================
   RESPONSIVE - correctifs mobile / tablette
   Médias jamais en débordement + adaptations de mise en page.
   ========================================================================= */

/* Sécurité globale : aucun média ni tableau ne dépasse la largeur d'écran */
img, video, iframe { max-width: 100%; height: auto; }
.wp-block-table:not(.is-style-comparatif) { overflow-x: auto; }

/* --- Tablette et moins (≤ 900px) --- */
@media (max-width: 900px) {
	/* En-tête : la barre peut passer à la ligne plutôt que déborder */
	.cdm-header .alignwide { flex-wrap: wrap; row-gap: 12px; column-gap: 12px; }
	/* Recherche en pilule masquée sur petit écran (reste accessible via la page de recherche) */
	.cdm-header .cdm-search { display: none; }
	.cdm-logo img { height: 42px; }
	/* Burger affiché si présent dans le balisage (thème historique) */
	.cdm-burger { display: inline-flex; }
}

/* --- Mobile (≤ 600px) --- */
@media (max-width: 600px) {
	/* Réduire les paddings généreux des blocs décoratifs */
	.wp-block-group.is-style-bloc-fonce { padding: 28px 22px; }
	.wp-block-group.is-style-carte-sauge { padding: 26px 20px; }
	.wp-block-group.is-style-carte,
	.wp-block-column.is-style-carte { padding: 18px; }
	.cdm-news { padding: 26px 20px; }
	.cdm-verdict { padding: 18px 20px; }
	.cdm-produit { padding: 18px; }

	/* Bloc foncé : motif décoratif réduit pour ne pas écraser le texte */
	.wp-block-group.is-style-bloc-fonce::after { width: 160px; height: 160px; right: -30px; top: -30px; }

	/* Carte produit : empilement en une seule colonne */
	.cdm-produit {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
		text-align: center;
	}
	.cdm-produit .cdm-pimg { max-width: 200px; margin-inline: auto; }
	.cdm-produit .cdm-stars,
	.cdm-produit .eyebrow { justify-content: center; }
	.cdm-prix { font-size: 1.25rem; }

	/* Newsletter : champ pleine largeur, bouton sous le champ */
	.cdm-news input[type="email"],
	.cdm-news-form input[type="email"] { min-width: 0; width: 100%; }
	.cdm-news-form { flex-direction: column; }
	.cdm-news-form .wp-element-button { width: 100%; }
}

/* --- Petit mobile (≤ 480px) --- */
@media (max-width: 480px) {
	/* Boutons d'en-tête plus compacts pour rester sur une ligne */
	.cdm-header .wp-block-button__link { padding-left: 16px; padding-right: 16px; }
}

@media (max-width: 720px) {
	.cdm-cta-band .wp-block-buttons { justify-content: flex-start; margin-top: 12px; }
}

/* =========================================================================
   Menu mobile - overlay du bloc Navigation natif
   L'en-tête aligne le menu à droite (justifyContent:right) ; cet alignement
   « fuit » dans l'overlay et collait les liens à droite, illisibles. On
   réaligne à gauche et on en fait une vraie liste verticale, pleine largeur,
   avec de bonnes cibles tactiles.
   ========================================================================= */
@media (max-width: 900px) {
	/* Forcer le menu overlay (hamburger) jusqu'à 900px. Le bloc Navigation natif
	   ne bascule en overlay qu'à 600px ; entre 600 et 900px le menu inline (5 entrées)
	   ne tenait pas et débordait sur plusieurs lignes. On rétablit le burger et on
	   masque le menu inline tant qu'il n'est pas ouvert. */
	.cdm-header .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}
	.cdm-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}

	/* CRITIQUE : l'en-tête a un backdrop-filter (flou). Or un backdrop-filter
	   transforme l'élément en « bloc conteneur » des descendants position:fixed.
	   L'overlay du menu (position:fixed) se retrouvait donc bridé à la hauteur
	   de l'en-tête (~76px) au lieu d'occuper l'écran. On neutralise le flou
	   uniquement quand le menu est ouvert : l'overlay reprend tout le viewport. */
	.cdm-header:has(.wp-block-navigation__responsive-container.is-menu-open),
	html.has-modal-open .cdm-header {
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		width: 100%;
		padding-top: 8px;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		--navigation-layout-justification-setting: flex-start;
		align-items: stretch !important;
		justify-content: flex-start !important;
		gap: 0;
		width: 100%;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100%;
	}
	.cdm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		display: block;
		width: 100%;
		padding: 16px 4px;
		font-size: 1.2rem;
		border-bottom: 1px solid var(--cdm-bord);
	}
	/* Pas de filet animé de survol dans l'overlay */
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after {
		display: none;
	}
}

/* =========================================================================
   Relief des cartes sur mobile
   Au repos (pas de survol tactile), les cartes blanches sur fond crème
   manquaient de contraste. On ajoute une ombre douce + une bordure plus
   marquée pour qu'elles se détachent bien.
   ========================================================================= */
@media (max-width: 781px) {
	.cdm-tuile,
	.wp-block-group.is-style-carte,
	.wp-block-column.is-style-carte {
		box-shadow: 0 2px 12px rgba(36, 23, 18, .07);
		border-color: var(--cdm-bord-2);
	}
}

/* =========================================================================
   Corrections de rebords (proportions des coins arrondis)
   ========================================================================= */
/* Recherche : le bouton loupe suit la courbe de la pilule (coins concentriques)
   au lieu d'un rectangle à coins ~carrés qui laissait un liseré blanc à droite. */
.cdm-search .wp-block-search__button {
	border-radius: 4px 999px 999px 4px;
}
/* Hero : cadre « galerie » concentrique avec l'image (image 12px + 12px de
   passe-partout = cadre 24px) pour des coins harmonieux. */
.cdm-hero-img { border-radius: 24px; }
.cdm-hero-img img { border-radius: 12px; }

/* =========================================================================
   Article « magazine » : 3 colonnes (sommaire/partage · article · widgets)
   ========================================================================= */
html { scroll-behavior: smooth; }

.cdm-article-layout {
	display: grid;
	grid-template-columns: 230px minmax(0, 1fr) 300px;
	gap: 44px;
	align-items: start;
}

/* Rails latéraux : collés au scroll, sous l'en-tête sticky (~74px). */
.cdm-rail {
	position: sticky; top: 92px;
	align-self: start;
	display: flex; flex-direction: column; gap: 22px;
	max-height: calc(100vh - 108px);
	overflow-y: auto;
	overscroll-behavior: contain;
	-ms-overflow-style: none; scrollbar-width: thin;
}
.cdm-rail::-webkit-scrollbar { width: 6px; }
.cdm-rail::-webkit-scrollbar-thumb { background: var(--cdm-bord); border-radius: 999px; }

.cdm-article-main { width: 100%; }
.cdm-article-main > * { margin-left: 0; margin-right: 0; }

/* Titre de bloc (Sommaire / Partager / Derniers articles) */
.cdm-rail-title {
	margin: 0 0 12px; font-family: var(--wp--preset--font-family--fraunces);
	font-size: .8125rem; font-weight: 700; text-transform: uppercase;
	letter-spacing: .1em; color: var(--wp--preset--color--cafe);
}

/* ---- Sommaire (table des matières, repliable via <details>) ---- */
.cdm-toc-box {
	background: linear-gradient(180deg, #ffffff, #fffdf9);
	border: 1px solid var(--cdm-bord);
	border-radius: var(--cdm-rlg);
	padding: 16px 16px 14px;
	box-shadow: var(--cdm-sh-s);
}
/* En-tête du sommaire : non cliquable sur desktop (toujours déplié). */
.cdm-toc-summary {
	display: flex; align-items: center; justify-content: space-between;
	margin: 0; list-style: none; pointer-events: none; cursor: default;
}
.cdm-toc-summary::-webkit-details-marker { display: none; }
.cdm-toc-chevron {
	display: none; width: 8px; height: 8px; flex: 0 0 auto;
	border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(45deg); transition: transform var(--cdm-trans);
}
.cdm-toc-box[open] .cdm-toc { margin-top: 12px; }
.cdm-toc ul {
	list-style: none; margin: 0; padding: 0;
	counter-reset: cdm-toc; position: relative;
}
/* Fil vertical façon timeline, derrière les pastilles numérotées. */
.cdm-toc ul::before {
	content: ""; position: absolute; left: 12px; top: 8px; bottom: 8px;
	width: 2px; background: var(--cdm-bord); border-radius: 2px;
}
.cdm-toc li { counter-increment: cdm-toc; margin: 0; }
.cdm-toc a {
	display: flex; align-items: center; gap: 11px;
	position: relative; padding: 6px 6px 6px 0;
	font-size: .875rem; line-height: 1.4; color: var(--wp--preset--color--texte-2);
	text-decoration: none; border-radius: 7px;
	transition: color var(--cdm-trans), transform var(--cdm-trans);
}
/* Pastille numérotée (01, 02, …) posée sur le fil. */
.cdm-toc a::before {
	content: counter(cdm-toc, decimal-leading-zero);
	flex: 0 0 auto; z-index: 1;
	display: inline-flex; align-items: center; justify-content: center;
	width: 26px; height: 26px;
	font-family: var(--wp--preset--font-family--fraunces);
	font-size: .72rem; font-weight: 700; font-variant-numeric: tabular-nums;
	color: var(--wp--preset--color--cafe);
	background: var(--wp--preset--color--creme-2);
	border: 1px solid var(--cdm-bord); border-radius: 999px;
	transition: color var(--cdm-trans), background var(--cdm-trans), border-color var(--cdm-trans), box-shadow var(--cdm-trans);
}
.cdm-toc a:hover { color: var(--wp--preset--color--moka); transform: translateX(2px); }
.cdm-toc a:hover::before {
	color: var(--wp--preset--color--ambre-fonce);
	border-color: var(--wp--preset--color--ambre);
	background: #fff;
}
.cdm-toc a.is-active { color: var(--wp--preset--color--moka); font-weight: 600; }
.cdm-toc a.is-active::before {
	color: #fff;
	background: var(--wp--preset--color--ambre);
	border-color: var(--wp--preset--color--ambre);
	box-shadow: 0 3px 8px rgba(217,142,55,.38);
}
.cdm-toc-empty { margin: 0; font-size: .8125rem; color: var(--wp--preset--color--texte-2); }

/* Décalage d'ancre pour que les titres ne passent pas sous l'en-tête sticky. */
.cdm-article-body :is(h2, h3) { scroll-margin-top: 92px; }

/* ---- Partage réseaux ---- */
.cdm-share { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.cdm-share li { margin: 0; }
.cdm-share-btn {
	display: inline-flex; align-items: center; gap: 7px;
	width: 38px; height: 38px; justify-content: center;
	border: 1px solid var(--cdm-bord); border-radius: 999px;
	background: var(--wp--preset--color--blanc); color: var(--wp--preset--color--cafe);
	cursor: pointer; text-decoration: none;
	transition: background var(--cdm-trans), color var(--cdm-trans), border-color var(--cdm-trans), transform var(--cdm-trans);
}
.cdm-share-btn:hover {
	background: var(--wp--preset--color--ambre); color: #fff;
	border-color: var(--wp--preset--color--ambre); transform: translateY(-2px);
}
.cdm-share-copy { width: auto; padding: 0 14px; font-size: .8125rem; font-weight: 600; font-family: var(--wp--preset--font-family--inter); }
.cdm-share-copy.is-copied { background: var(--wp--preset--color--succes); color: #fff; border-color: var(--wp--preset--color--succes); }

/* ---- Résumé IA (colonne droite) ---- */
.cdm-ai-box {
	background: linear-gradient(135deg, var(--wp--preset--color--creme-2), var(--wp--preset--color--creme));
	border: 1px solid var(--cdm-bord);
	border-top: 3px solid var(--wp--preset--color--cafe);
	border-radius: var(--cdm-r); padding: 16px 18px;
}
.cdm-ai-title {
	display: flex; align-items: center; gap: 7px; margin: 0 0 8px;
	font-family: var(--wp--preset--font-family--fraunces); font-weight: 700;
	font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em;
	color: var(--wp--preset--color--cafe);
}
.cdm-ai-title svg { color: var(--wp--preset--color--ambre); flex: 0 0 auto; }
.cdm-ai-text { margin: 0 0 8px; font-size: .9rem; line-height: 1.55; color: var(--wp--preset--color--espresso); }
.cdm-ai-note { margin: 0; font-size: .6875rem; font-style: italic; color: var(--wp--preset--color--texte-2); }

/* ---- Boutons « Résumer avec une IA » (sous la méta de l'article) ---- */
.cdm-ai-actions {
	display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px;
	margin: 18px 0 4px; padding: 14px 16px;
	background: var(--wp--preset--color--creme-2);
	border: 1px solid var(--cdm-bord);
	border-radius: var(--cdm-r);
}
.cdm-ai-actions__title {
	display: inline-flex; align-items: center; gap: 6px;
	font-family: var(--wp--preset--font-family--fraunces); font-weight: 700;
	font-size: .8rem; text-transform: uppercase; letter-spacing: .06em;
	color: var(--wp--preset--color--cafe);
}
.cdm-ai-actions__title svg { color: var(--wp--preset--color--ambre); flex: 0 0 auto; }
.cdm-ai-actions__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.cdm-ai-actions__list li { margin: 0; }
.cdm-ai-btn {
	display: inline-flex; align-items: center; gap: 7px;
	padding: 7px 13px; border: 1px solid var(--cdm-bord); border-radius: 999px;
	background: var(--wp--preset--color--blanc); color: var(--wp--preset--color--espresso);
	font-size: .8rem; font-weight: 600; text-decoration: none;
	transition: border-color var(--cdm-trans), color var(--cdm-trans), transform var(--cdm-trans), box-shadow var(--cdm-trans);
}
.cdm-ai-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(36,23,18,.10); }
.cdm-ai-logo { width: 16px; height: 16px; flex: 0 0 auto; }
/* Logos de marque : couleur au repos (via currentColor) + survol du bouton */
.cdm-ai-chatgpt    .cdm-ai-logo { color: #10a37f; }
.cdm-ai-chatgpt:hover    { border-color: #10a37f; color: #0d8a6c; }
.cdm-ai-claude     .cdm-ai-logo { color: #d97757; }
.cdm-ai-claude:hover     { border-color: #d97757; color: #c4623f; }
.cdm-ai-perplexity .cdm-ai-logo { color: #20808d; }
.cdm-ai-perplexity:hover { border-color: #20808d; color: #1a6b76; }
.cdm-ai-google     .cdm-ai-logo { color: #4285f4; }
.cdm-ai-google:hover     { border-color: #4285f4; color: #3367d6; }
.cdm-ai-grok       .cdm-ai-logo { color: #1a1a1a; }
.cdm-ai-grok:hover       { border-color: #1a1a1a; color: #1a1a1a; }
.cdm-ai-mistral    .cdm-ai-logo { color: #fa520f; }
.cdm-ai-mistral:hover    { border-color: #fa520f; color: #e0490d; }

/* ---- Mini-liste « Derniers articles » (colonne droite) ---- */
.cdm-rail-recent { border-top: 1px solid var(--cdm-bord); padding-top: 18px; }
.cdm-mini-list { display: flex; flex-direction: column; gap: 14px; }
.cdm-mini { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.cdm-mini-thumb { flex: 0 0 64px; }
.cdm-mini-thumb img { width: 64px; height: 64px; object-fit: cover; border-radius: var(--cdm-r); display: block; }
.cdm-mini-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.cdm-mini-ttl {
	font-family: var(--wp--preset--font-family--inter); font-weight: 600;
	font-size: .85rem; line-height: 1.3; color: var(--wp--preset--color--moka);
	transition: color var(--cdm-trans);
}
.cdm-mini:hover .cdm-mini-ttl { color: var(--wp--preset--color--ambre-fonce); }

/* ---- Bouton « retour en haut » flottant ---- */
.cdm-totop {
	/* bottom releve pour passer AU-DESSUS de l'encoche Cookies (bas droite,
	   bottom:16px, ~40px de haut). Bords droits alignes (right:16px). */
	position: fixed; right: 16px; bottom: 80px; z-index: 9998;
	width: 46px; height: 46px; display: inline-flex; align-items: center; justify-content: center;
	border: 0; border-radius: 50%; cursor: pointer;
	background: var(--wp--preset--color--cafe); color: #fff;
	box-shadow: 0 8px 22px rgba(36,23,18,.28);
	opacity: 0; visibility: hidden; transform: translateY(12px);
	transition: opacity var(--cdm-trans), transform var(--cdm-trans), background var(--cdm-trans), visibility var(--cdm-trans);
}
.cdm-totop.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.cdm-totop:hover { background: var(--wp--preset--color--ambre); }
.cdm-totop:focus-visible { outline: 3px solid var(--wp--preset--color--ambre); outline-offset: 2px; }

/* ---- Responsive : empilement < 1024px ---- */
@media (max-width: 1024px) {
	.cdm-article-layout { grid-template-columns: 1fr; gap: 28px; }
	.cdm-rail {
		position: static; max-height: none; overflow: visible;
		flex-direction: row; flex-wrap: wrap; gap: 18px;
	}
	.cdm-rail > * { flex: 1 1 260px; }
	.cdm-rail-right { flex-direction: column; }

	/* Sommaire repliable (accordéon) : en-tête cliquable + chevron. */
	.cdm-toc-summary { pointer-events: auto; cursor: pointer; }
	.cdm-toc-chevron { display: block; }
	.cdm-toc-box[open] .cdm-toc-chevron { transform: rotate(225deg); }
}
@media (max-width: 600px) {
	.cdm-rail { flex-direction: column; }
	.cdm-rail > * { flex: 1 1 auto; }
	.cdm-ai-actions { flex-direction: column; align-items: flex-start; }
	.cdm-totop { right: 16px; bottom: 70px; width: 42px; height: 42px; }
}

/* =========================================================================
   Widgets interactifs (quiz, simulateur, caféine, tableau)
   Préfixe .cdmw-  ·  autonomes, insérables partout
   ========================================================================= */
.cdmw {
	--cdmw-amb: var(--wp--preset--color--ambre);
	--cdmw-amb2: var(--wp--preset--color--ambre-fonce);
	--cdmw-moka: var(--wp--preset--color--moka);
	--cdmw-txt2: var(--wp--preset--color--texte-2);
	--cdmw-bord: var(--wp--preset--color--bordure);
	--cdmw-succes: var(--wp--preset--color--succes);
	background: #fff; border: 1px solid var(--cdmw-bord); border-radius: 18px;
	padding: 28px 30px; box-shadow: 0 6px 24px rgba(60,42,24,.06);
	max-width: 760px; margin-inline: auto; position: relative; overflow: hidden;
	font-family: var(--wp--preset--font-family--inter);
}
.cdmw::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 4px;
	background: linear-gradient(90deg, var(--cdmw-amb), var(--wp--preset--color--sauge)); }
.cdmw-eyebrow { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	color: var(--cdmw-amb2); margin: 0 0 4px; display: flex; align-items: center; gap: 8px; }
.cdmw-title { font-family: var(--wp--preset--font-family--fraunces); font-size: 1.5rem;
	color: var(--cdmw-moka); margin: 0 0 6px; line-height: 1.2; }
.cdmw-sub { color: var(--cdmw-txt2); font-size: .95rem; margin: 0 0 20px; line-height: 1.5; }

/* boutons / options */
.cdmw-opts { display: grid; gap: 10px; }
.cdmw-opt { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left;
	border: 1.5px solid var(--cdmw-bord); background: var(--wp--preset--color--creme);
	border-radius: 12px; padding: 14px 16px; cursor: pointer; font-size: .95rem; color: var(--cdmw-moka);
	transition: border-color .15s, background .15s, transform .1s; font-family: inherit; }
.cdmw-opt:hover { border-color: var(--cdmw-amb); background: #fff; transform: translateY(-1px); }
.cdmw-opt.is-sel { border-color: var(--cdmw-amb); background: #fff; box-shadow: 0 0 0 3px rgba(217,142,55,.15); }
.cdmw-opt .cdmw-emo { font-size: 1.3rem; line-height: 1; }

/* barre de progression */
.cdmw-prog { height: 6px; background: var(--wp--preset--color--creme-2); border-radius: 999px; overflow: hidden; margin-bottom: 18px; }
.cdmw-prog > span { display: block; height: 100%; background: var(--cdmw-amb); border-radius: 999px; transition: width .35s var(--cdm-ease); width: 0; }

.cdmw-nav { display: flex; justify-content: space-between; align-items: center; margin-top: 18px; gap: 12px; }
.cdmw-step-n { font-size: .8rem; color: var(--cdmw-txt2); }
.cdmw-btn { border: none; border-radius: 10px; padding: 12px 22px; font-weight: 600; font-size: .95rem;
	cursor: pointer; font-family: inherit; background: var(--cdmw-amb); color: #fff; transition: transform .1s, box-shadow .15s, background .15s; }
.cdmw-btn:hover { background: var(--cdmw-amb2); transform: translateY(-1px); box-shadow: 0 6px 16px rgba(193,125,43,.28); }
.cdmw-btn[disabled] { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; }
.cdmw-btn.is-ghost { background: transparent; color: var(--cdmw-txt2); padding-inline: 4px; }
.cdmw-btn.is-ghost:hover { color: var(--cdmw-moka); box-shadow: none; transform: none; }

/* résultat quiz */
.cdmw-result { text-align: center; }
.cdmw-result .cdmw-badge2 { display: inline-block; background: rgba(47,143,91,.12); color: var(--cdmw-succes);
	font-weight: 700; font-size: .78rem; padding: 5px 14px; border-radius: 999px; margin-bottom: 12px; }
.cdmw-result h3 { font-family: var(--wp--preset--font-family--fraunces); font-size: 1.7rem; color: var(--cdmw-moka); margin: 0 0 8px; }
.cdmw-result p { color: var(--cdmw-txt2); line-height: 1.55; max-width: 52ch; margin: 0 auto 20px; }

/* champs numériques / sliders */
.cdmw-field { margin-bottom: 18px; }
.cdmw-field label { display: block; font-weight: 600; color: var(--cdmw-moka); font-size: .92rem; margin-bottom: 8px; }
.cdmw-field .cdmw-hint { font-weight: 400; color: var(--cdmw-txt2); font-size: .82rem; }
.cdmw-range { display: flex; align-items: center; gap: 14px; }
.cdmw-range input[type=range] { flex: 1; accent-color: var(--cdmw-amb); }
.cdmw-val { min-width: 54px; text-align: center; font-weight: 700; color: var(--cdmw-moka);
	background: var(--wp--preset--color--creme-2); border-radius: 8px; padding: 6px 8px; }
.cdmw-num { width: 90px; border: 1.5px solid var(--cdmw-bord); border-radius: 8px; padding: 8px 10px; font-size: 1rem; font-family: inherit; }
.cdmw-num:focus { outline: none; border-color: var(--cdmw-amb); }

/* stepper +/- */
.cdmw-rows { display: grid; gap: 10px; }
.cdmw-row { display: flex; align-items: center; justify-content: space-between; gap: 12px;
	border: 1px solid var(--cdmw-bord); border-radius: 12px; padding: 10px 14px; }
.cdmw-row .cdmw-rl { display: flex; align-items: center; gap: 10px; color: var(--cdmw-moka); font-size: .92rem; }
.cdmw-row .cdmw-rl small { color: var(--cdmw-txt2); }
.cdmw-step { display: flex; align-items: center; gap: 10px; }
.cdmw-step button { width: 32px; height: 32px; border-radius: 8px; border: 1.5px solid var(--cdmw-bord);
	background: #fff; font-size: 1.1rem; cursor: pointer; color: var(--cdmw-moka); line-height: 1; }
.cdmw-step button:hover { border-color: var(--cdmw-amb); color: var(--cdmw-amb2); }
.cdmw-step .cdmw-c { min-width: 26px; text-align: center; font-weight: 700; color: var(--cdmw-moka); }

/* résultats chiffrés */
.cdmw-out { margin-top: 22px; padding-top: 20px; border-top: 1px dashed var(--cdmw-bord); }
.cdmw-bars { display: grid; gap: 12px; }
.cdmw-bar { }
.cdmw-bar .cdmw-bl { display: flex; justify-content: space-between; font-size: .88rem; color: var(--cdmw-moka); margin-bottom: 5px; }
.cdmw-bar .cdmw-bl b { font-variant-numeric: tabular-nums; }
.cdmw-track { height: 22px; background: var(--wp--preset--color--creme-2); border-radius: 8px; overflow: hidden; }
.cdmw-track > span { display: block; height: 100%; border-radius: 8px; transition: width .5s var(--cdm-ease); }
.cdmw-save { margin-top: 18px; text-align: center; background: rgba(47,143,91,.08); border-radius: 12px; padding: 16px; }
.cdmw-save .cdmw-big { font-family: var(--wp--preset--font-family--fraunces); font-size: 2rem; color: var(--cdmw-succes); display: block; line-height: 1.1; }
.cdmw-save small { color: var(--cdmw-txt2); }

/* jauge caféine */
.cdmw-gauge { margin-top: 22px; }
.cdmw-gauge .cdmw-gtrack { height: 16px; border-radius: 999px; background: var(--wp--preset--color--creme-2); overflow: hidden; position: relative; }
.cdmw-gauge .cdmw-gfill { height: 100%; border-radius: 999px; transition: width .45s var(--cdm-ease), background .3s; }
.cdmw-gauge .cdmw-gnum { font-family: var(--wp--preset--font-family--fraunces); font-size: 2.1rem; color: var(--cdmw-moka); }
.cdmw-gauge .cdmw-gmsg { font-size: .9rem; margin-top: 8px; font-weight: 600; }

/* tableau interactif */
.cdmw-table-wrap { overflow-x: auto; }
.cdmw-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.cdmw-chip { border: 1.5px solid var(--cdmw-bord); background: #fff; border-radius: 999px; padding: 6px 14px;
	font-size: .84rem; cursor: pointer; color: var(--cdmw-moka); font-family: inherit; transition: all .15s; }
.cdmw-chip:hover { border-color: var(--cdmw-amb); }
.cdmw-chip.is-on { background: var(--cdmw-moka); color: #fff; border-color: var(--cdmw-moka); }
table.cdmw-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
table.cdmw-table th, table.cdmw-table td { padding: 12px 12px; text-align: left; border-bottom: 1px solid var(--cdmw-bord); }
table.cdmw-table th { font-size: .76rem; text-transform: uppercase; letter-spacing: .05em; color: var(--cdmw-txt2); cursor: pointer; user-select: none; white-space: nowrap; }
table.cdmw-table th.is-sort { color: var(--cdmw-amb2); }
table.cdmw-table th .cdmw-ar { opacity: .5; font-size: .8em; }
table.cdmw-table td b { color: var(--cdmw-moka); }
table.cdmw-table .cdmw-note { color: var(--wp--preset--color--etoile); font-weight: 700; white-space: nowrap; }
table.cdmw-table tr:hover td { background: var(--wp--preset--color--creme); }
.cdmw-tag { font-size: .72rem; background: var(--wp--preset--color--creme-2); color: var(--cdmw-txt2); padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
.cdmw-aff { display: inline-block; background: var(--cdmw-amb); color: #fff; border-radius: 9px; padding: 8px 14px; font-weight: 600; font-size: .82rem; white-space: nowrap; }
.cdmw-aff:hover { background: var(--cdmw-amb2); }

@media (max-width: 600px) {
	.cdmw { padding: 22px 18px; border-radius: 14px; }
	.cdmw-title { font-size: 1.3rem; }
	.cdmw-result h3 { font-size: 1.4rem; }
}

/* =========================================================================
   Lisibilité & styles éditoriaux (corps d'article + styles de blocs)
   ========================================================================= */
/* Confort de lecture : rythme vertical, mesure, liens visibles */
.cdm-article-body { font-size: 1.09rem; line-height: 1.72; color: var(--wp--preset--color--espresso); }
.cdm-article-body > p { margin-block: 1.15em 0; }
.cdm-article-body :is(h2,h3) { margin-block-start: 1.9em; }
.cdm-article-body h2 { position: relative; padding-top: .5em; }
.cdm-article-body h2::before {
	content: ""; position: absolute; top: 0; left: 0; width: 44px; height: 3px;
	background: var(--wp--preset--color--ambre); border-radius: 2px;
}
.cdm-article-body h3 { color: var(--wp--preset--color--cafe); }
/* Liens de contenu réellement identifiables */
.cdm-article-body p a,
.cdm-article-body li a {
	color: var(--wp--preset--color--ambre-texte); text-decoration: underline;
	text-decoration-thickness: 1px; text-underline-offset: 2px; font-weight: 500;
}
.cdm-article-body p a:hover,
.cdm-article-body li a:hover { color: var(--wp--preset--color--cafe); }
/* Listes plus aérées */
.cdm-article-body :is(ul,ol) { padding-left: 1.2em; }
.cdm-article-body :is(ul,ol) li { margin-block: .4em; padding-left: .2em; }
.cdm-article-body :is(ul,ol) li::marker { color: var(--wp--preset--color--ambre); }

/* Chapeau : paragraphe d'intro accrocheur */
p.is-style-chapeau {
	font-size: 1.28rem; line-height: 1.55; color: var(--wp--preset--color--moka);
	font-weight: 500; border-left: 3px solid var(--wp--preset--color--ambre);
	padding-left: 18px; margin-block: .2em 1.4em;
}

/* Lettrine : grande initiale façon magazine */
p.is-style-lettrine::first-letter {
	float: left; font-family: var(--wp--preset--font-family--fraunces);
	font-size: 3.6em; line-height: .78; font-weight: 600; padding: 4px 10px 0 0;
	color: var(--wp--preset--color--ambre-fonce);
}

/* Encadré « À retenir » */
.is-style-a-retenir {
	position: relative; background: var(--wp--preset--color--creme-2);
	border: 1px solid var(--cdm-bord); border-left: 4px solid var(--wp--preset--color--ambre);
	border-radius: 10px; padding: 34px 22px 20px; margin-block: 1.6em;
	color: var(--wp--preset--color--espresso); line-height: 1.6;
}
.is-style-a-retenir::before {
	content: "💡 À retenir"; position: absolute; top: 12px; left: 22px;
	font-family: var(--wp--preset--font-family--inter); font-size: .72rem; font-weight: 700;
	letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--ambre-texte);
}
.is-style-a-retenir > :last-child { margin-bottom: 0; }

/* Citation éditoriale */
.wp-block-quote.is-style-editorial {
	border: 0; margin-block: 1.8em; padding: 6px 0 6px 30px; position: relative;
}
.wp-block-quote.is-style-editorial::before {
	content: "\201C"; position: absolute; left: -6px; top: -14px;
	font-family: var(--wp--preset--font-family--fraunces); font-size: 4rem;
	color: var(--wp--preset--color--ambre); opacity: .35; line-height: 1;
}
.wp-block-quote.is-style-editorial p {
	font-family: var(--wp--preset--font-family--fraunces); font-size: 1.4rem;
	line-height: 1.4; color: var(--wp--preset--color--moka); font-weight: 500; margin: 0;
}
.wp-block-quote.is-style-editorial cite {
	display: block; margin-top: 10px; font-style: normal; font-size: .85rem;
	color: var(--wp--preset--color--texte-2); font-family: var(--wp--preset--font-family--inter);
}

@media (max-width: 600px) {
	.cdm-article-body { font-size: 1.05rem; }
	p.is-style-chapeau { font-size: 1.15rem; }
	p.is-style-lettrine::first-letter { font-size: 3em; }
}

/* Lisibilité des pages (piliers) : uniquement la prose de 1er niveau,
   pas les cartes/grilles/widgets (ciblage enfant direct). */
.wp-block-post-content > p { line-height: 1.72; }
.wp-block-post-content > :is(ul,ol) { line-height: 1.65; padding-left: 1.2em; }
.wp-block-post-content > :is(ul,ol) li { margin-block: .4em; }
.wp-block-post-content > :is(ul,ol) li::marker { color: var(--wp--preset--color--ambre); }
.wp-block-post-content > p a { color: var(--wp--preset--color--ambre-texte);
	text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; font-weight: 500; }
.wp-block-post-content > p a:hover { color: var(--wp--preset--color--cafe); }
.wp-block-post-content > h2:not(.cdmw-title) { position: relative; padding-top: .5em; margin-block-start: 1.6em; }
.wp-block-post-content > h2:not(.cdmw-title)::before {
	content: ""; position: absolute; top: 0; left: 0; width: 44px; height: 3px;
	background: var(--wp--preset--color--ambre); border-radius: 2px; }

/* =========================================================================
   Comparateur interactif : version mobile en cartes empilées
   ========================================================================= */
.cdmw-sortsel { display: none; }
@media (max-width: 600px) {
	.cdmw-sortsel {
		display: block; width: 100%; margin: 0 0 14px; padding: 11px 12px;
		font-family: inherit; font-size: .92rem; color: var(--wp--preset--color--moka);
		background: #fff; border: 1.5px solid var(--wp--preset--color--bordure); border-radius: 10px;
	}
	.cdmw-tablew .cdmw-table-wrap { overflow-x: visible; }
	table.cdmw-table thead { position: absolute; left: -9999px; }
	table.cdmw-table, table.cdmw-table tbody { display: block; width: 100%; }
	table.cdmw-table tr {
		display: block; border: 1px solid var(--wp--preset--color--bordure);
		border-radius: 12px; padding: 12px 14px; margin-bottom: 12px;
		box-shadow: 0 1px 3px rgba(60,42,24,.05);
	}
	table.cdmw-table td {
		display: flex; justify-content: space-between; align-items: center;
		gap: 12px; border: 0; padding: 5px 0;
	}
	table.cdmw-table td::before {
		content: attr(data-l); font-size: .72rem; text-transform: uppercase;
		letter-spacing: .05em; color: var(--wp--preset--color--texte-2); font-weight: 700;
	}
	table.cdmw-table td[data-l="Modèle"] {
		padding-bottom: 8px; margin-bottom: 4px;
		border-bottom: 1px dashed var(--wp--preset--color--bordure);
	}
	table.cdmw-table td[data-l="Modèle"]::before { display: none; }
	table.cdmw-table td[data-l="Modèle"] b { font-size: 1.05rem; }
	table.cdmw-table td.cdmw-cta { margin-top: 8px; }
	table.cdmw-table td.cdmw-cta::before { display: none; }
	table.cdmw-table td.cdmw-cta a.cdmw-aff { display: block; width: 100%; text-align: center; padding: 11px; }
}


/* ==========================================================================
   REFONTE HOME « ATELIER » — couche dédiée, préfixe .cdmh-
   Sections d'accueil restylées d'après la maquette Accueil - Atelier.
   ========================================================================== */
.cdmh-wrap { max-width: 1200px; margin: 0 auto; padding-left: 28px; padding-right: 28px; }
.cdmh-sec { max-width: 1200px; margin: 0 auto; padding: 52px 28px 20px; }
.cdmh-eyebrow {
	display: inline-flex; align-items: center; gap: 10px;
	font-size: 12px; font-weight: 600; letter-spacing: .15em;
	text-transform: uppercase; color: #9C6B43;
}
.cdmh-eyebrow::before { content: ""; width: 26px; height: 1.5px; background: currentColor; display: inline-block; }
.cdmh-h2 {
	font-family: "Fraunces", Georgia, serif; font-weight: 600; letter-spacing: -.01em;
	font-size: clamp(1.6rem, 2.4vw, 2.1rem); color: #2E2018; margin: 0;
}
.cdmh-head {
	display: flex; align-items: flex-end; justify-content: space-between;
	gap: 16px; flex-wrap: wrap; margin-bottom: 24px;
	padding-top: 22px; border-top: 1px solid #E7DCCB;
}
.cdmh-seelink {
	font-size: 12.5px; font-weight: 700; text-transform: uppercase;
	letter-spacing: .08em; color: #B5722A; white-space: nowrap;
}
.cdmh-seelink:hover { color: #6B4423; }
.cdmh-btn {
	display: inline-flex; align-items: center; gap: 8px; background: #D98E37; color: #fff;
	font-weight: 600; font-size: 15px; padding: 14px 24px; border-radius: 14px;
	box-shadow: 0 10px 26px rgba(193,125,43,.28); transition: background .2s;
}
.cdmh-btn:hover { background: #C27D2B; color: #fff; }
.cdmh-btn--ghost {
	background: rgba(255,255,255,.55); color: #3B2A20; border: 1.5px solid #DCCDB6;
	box-shadow: none;
}
.cdmh-btn--ghost:hover { background: #fff; color: #3B2A20; border-color: #6B4423; }

@keyframes cdmhFade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes cdmhFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
@keyframes cdmhSteam { 0% { transform: translateY(6px) scaleX(.9); opacity: 0; } 25% { opacity: .55; } 100% { transform: translateY(-70px) scaleX(1.5); opacity: 0; } }

/* ---------- HERO ---------- */
.cdmh-hero {
	max-width: 1200px; margin: 0 auto; padding: 56px 28px 40px;
	display: grid; grid-template-columns: 1.02fr .98fr; gap: 52px; align-items: center;
}
.cdmh-hero__col { animation: cdmhFade .7s ease both; }
.cdmh-hero h1 {
	font-family: "Fraunces", Georgia, serif; font-weight: 600; letter-spacing: -.015em;
	line-height: 1.06; font-size: clamp(2.5rem, 4.6vw, 3.7rem); color: #2E2018; margin: 18px 0 20px;
}
.cdmh-hero h1 em { font-style: italic; color: #6B4423; }
.cdmh-hero__lead { font-size: 19px; color: #5C4E42; max-width: 500px; margin: 0; }
.cdmh-hero__cta { display: flex; gap: 13px; margin-top: 30px; flex-wrap: wrap; }
.cdmh-stats { display: flex; gap: 26px; margin-top: 34px; flex-wrap: wrap; align-items: center; }
.cdmh-stat { display: flex; flex-direction: column; }
.cdmh-stat b { font-family: "Fraunces", Georgia, serif; font-size: 1.7rem; font-weight: 600; color: #6B4423; line-height: 1; }
.cdmh-stat span { font-size: 12.5px; color: #6B5E51; }
.cdmh-stat__sep { width: 1px; height: 34px; background: #DCCDB6; }
.cdmh-hero__media { position: relative; animation: cdmhFade .9s ease both; }
.cdmh-hero__halo {
	position: absolute; inset: -6% -4% -8% -4%; border-radius: 50% 50% 46% 46% / 60% 60% 40% 40%;
	background: radial-gradient(120% 100% at 60% 20%, #E8C79A 0%, #C89463 45%, #6B4423 100%); filter: blur(2px);
}
.cdmh-steam { position: absolute; left: 46%; top: 6%; width: 120px; height: 120px; pointer-events: none; z-index: 3; }
.cdmh-steam span { position: absolute; bottom: 0; border-radius: 999px; background: linear-gradient(#fff, rgba(255,255,255,0)); }
.cdmh-steam span:nth-child(1) { left: 20px; width: 10px; height: 60px; filter: blur(4px); animation: cdmhSteam 4.2s ease-in-out infinite; }
.cdmh-steam span:nth-child(2) { left: 46px; width: 12px; height: 70px; filter: blur(5px); animation: cdmhSteam 4.8s ease-in-out .8s infinite; }
.cdmh-steam span:nth-child(3) { left: 74px; width: 9px; height: 55px; filter: blur(4px); animation: cdmhSteam 4.5s ease-in-out 1.6s infinite; }
.cdmh-hero__card {
	position: relative; z-index: 2; background: #fff; border-radius: 20px; padding: 14px;
	box-shadow: 0 30px 60px rgba(36,23,18,.24); border: 1px solid rgba(255,255,255,.6);
	animation: cdmhFloat 7s ease-in-out infinite;
}
.cdmh-hero__card img { width: 100%; border-radius: 12px; }
.cdmh-hero__badge {
	position: absolute; left: 22px; bottom: 22px; display: flex; align-items: center; gap: 9px;
	background: rgba(255,255,255,.92); backdrop-filter: blur(6px); border-radius: 12px;
	padding: 9px 14px; box-shadow: 0 8px 20px rgba(36,23,18,.14);
}
.cdmh-hero__badge i {
	display: inline-flex; width: 34px; height: 34px; border-radius: 50%; background: #2F8F5B;
	color: #fff; align-items: center; justify-content: center; font-size: 16px; font-style: normal;
}
.cdmh-hero__badge b { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 14.5px; color: #2E2018; display: block; }
.cdmh-hero__badge small { font-size: 12px; color: #6B5E51; }

/* ---------- TUILES USAGE ---------- */
.cdmh-usages { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.cdmh-tile {
	position: relative; display: flex; flex-direction: column; align-items: center; gap: 12px;
	background: rgba(255,255,255,.6); border: 1px solid #E7DCCB; border-radius: 18px;
	padding: 26px 16px; text-align: center;
	transition: transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, border-color .2s;
}
.cdmh-tile:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(36,23,18,.1); border-color: #DCCDB6; }
.cdmh-tile__ic {
	display: inline-flex; width: 52px; height: 52px; align-items: center; justify-content: center;
	background: linear-gradient(140deg, #F3E7D3, #E8D3B4); border-radius: 16px;
}
.cdmh-tile b { font-weight: 600; font-size: 15px; color: #3B2A20; }

/* ---------- CARTES COMPARATIFS ---------- */
.cdmh-grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.cdmh-comparo {
	position: relative; display: flex; flex-direction: column; gap: 8px; background: #fff;
	border: 1px solid #EADFCE; border-radius: 18px; padding: 24px; overflow: hidden;
	transition: transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, border-color .2s;
}
.cdmh-comparo:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(36,23,18,.1); border-color: #DCCDB6; }
.cdmh-comparo__bar { position: absolute; top: 0; left: 0; right: 0; height: 4px; }
.cdmh-comparo__kick { font-family: "Fraunces", Georgia, serif; font-size: 12px; font-weight: 600; color: #9C6B43; letter-spacing: .04em; }
.cdmh-comparo h3 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 1.22rem; color: #2E2018; margin: 2px 0; line-height: 1.2; }
.cdmh-comparo p { font-size: 14px; color: #6B5E51; margin: 0; }
.cdmh-comparo__go { margin-top: 8px; font-weight: 700; font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: #B5722A; }

/* ---------- TOP 5 ---------- */
.cdmh-top { display: flex; flex-direction: column; gap: 14px; }
.cdmh-toprow {
	position: relative; display: grid; grid-template-columns: 56px 128px 1fr auto; gap: 22px;
	align-items: center; background: #fff; border: 1px solid #EADFCE; border-left: 4px solid #9C6B43;
	border-radius: 16px; padding: 18px 22px; transition: transform .2s, box-shadow .2s;
}
.cdmh-toprow:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(36,23,18,.08); }
.cdmh-toprow__rank { font-family: "Fraunces", Georgia, serif; font-size: 2.5rem; font-weight: 600; line-height: 1; text-align: center; }
.cdmh-toprow__img { aspect-ratio: 1; border-radius: 12px; overflow: hidden; background: linear-gradient(135deg, #F6EFE4, #EBD8BC); }
.cdmh-toprow__img img { width: 100%; height: 100%; object-fit: cover; }
.cdmh-toprow__kick { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #B5722A; }
.cdmh-toprow h3 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 1.2rem; color: #2E2018; margin: 3px 0 5px; }
.cdmh-note { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.cdmh-note__stars { color: #E8A53D; letter-spacing: 2px; font-size: 14px; }
.cdmh-note b { font-family: "Fraunces", Georgia, serif; font-weight: 600; color: #3B2A20; }
.cdmh-note b small { font-family: "Inter", sans-serif; font-size: .8rem; color: #6B5E51; font-weight: 500; }
.cdmh-tags { display: flex; gap: 8px; flex-wrap: wrap; font-size: 12.5px; }
.cdmh-tags .ok { color: #2F8F5B; }
.cdmh-tags .ko { color: #C0392B; }
.cdmh-toprow__buy { text-align: center; display: flex; flex-direction: column; gap: 9px; align-items: center; min-width: 130px; }
.cdmh-price { font-family: "Fraunces", Georgia, serif; font-size: 1.3rem; font-weight: 600; color: #3B2A20; }
.cdmh-price small { display: block; font-family: "Inter", sans-serif; font-size: 11px; color: #6B5E51; font-weight: 500; }
.cdmh-toprow__buy a {
	display: inline-flex; align-items: center; gap: 6px; background: #D98E37; color: #fff;
	font-weight: 600; font-size: 14px; padding: 11px 18px; border-radius: 12px; transition: background .2s;
}
.cdmh-toprow__buy a:hover { background: #C27D2B; color: #fff; }

/* ---------- ADAPTOGENE ---------- */
.cdmh-adapt {
	position: relative; overflow: hidden; background: linear-gradient(135deg, #EEF3E9, #DEE9D4);
	border: 1px solid #CDDDC0; border-radius: 24px; padding: 40px;
	display: grid; grid-template-columns: 1.3fr auto; gap: 30px; align-items: center;
}
.cdmh-adapt__badge {
	display: inline-block; background: #7E9B6E; color: #fff; font-size: 11px; font-weight: 700;
	letter-spacing: .08em; text-transform: uppercase; padding: 5px 12px; border-radius: 999px;
}
.cdmh-adapt h2 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: clamp(1.6rem, 2.4vw, 2.1rem); color: #3F5733; margin: 14px 0 8px; }
.cdmh-adapt p { color: #4F6443; margin: 0; font-size: 16px; max-width: 560px; }
.cdmh-adapt__row { display: flex; gap: 14px; margin-top: 22px; align-items: center; flex-wrap: wrap; }
.cdmh-adapt__cta { display: inline-flex; align-items: center; gap: 8px; background: #7E9B6E; color: #fff; font-weight: 600; font-size: 15px; padding: 13px 22px; border-radius: 12px; transition: background .2s; }
.cdmh-adapt__cta:hover { background: #6A8A5B; color: #fff; }
.cdmh-adapt__avatars { display: flex; }
.cdmh-adapt__avatars img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 3px solid #fff; }
.cdmh-adapt__avatars img + img { margin-left: -14px; }
.cdmh-adapt__hero { width: 180px; height: 180px; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 40px rgba(63,87,51,.2); }
.cdmh-adapt__hero img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- BUDGET ---------- */
.cdmh-budget {
	display: block; background: #fff; border: 1px solid #EADFCE; border-top: 4px solid #6B4423;
	border-radius: 18px; padding: 24px; transition: transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s;
}
.cdmh-budget:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(36,23,18,.1); }
.cdmh-budget__range { font-family: "Fraunces", Georgia, serif; font-size: 1.55rem; font-weight: 600; color: #3B2A20; }
.cdmh-budget h3 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 1.1rem; color: #2E2018; margin: 8px 0 6px; }
.cdmh-budget p { font-size: 13.5px; color: #6B5E51; margin: 0; }
.cdmh-budget__go { display: inline-block; margin-top: 12px; font-weight: 700; font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: #B5722A; }

/* ---------- BANDEAU MÉTHODO ---------- */
.cdmh-band {
	position: relative; overflow: hidden; border-radius: 24px; padding: 56px 44px; color: #F3E3CD;
	background: linear-gradient(90deg, rgba(20,12,8,.9), rgba(20,12,8,.55)), linear-gradient(135deg, #4a2f1a, #241712);
}
.cdmh-band__in { position: relative; z-index: 1; max-width: 680px; }
.cdmh-band .cdmh-eyebrow { color: #caa06b; }
.cdmh-band h2 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: clamp(1.7rem, 2.6vw, 2.2rem); color: #fff; margin: 12px 0; }
.cdmh-band p { color: #E4D2B7; margin: 0; font-size: 17px; }
.cdmh-band .cdmh-btn { margin-top: 24px; }

/* ---------- GUIDES (vraies photos d'articles) ---------- */
.cdmh-guides .wp-block-post-template,
ul.cdmh-guides { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 0; padding: 0; list-style: none; }
.cdmh-guides .wp-block-post-template > li,
ul.cdmh-guides > li {
	background: #fff; border: 1px solid #EADFCE; border-radius: 18px; overflow: hidden; margin: 0;
	transition: transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s;
}
.cdmh-guides li:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(36,23,18,.1); }
.cdmh-guides .wp-block-post-featured-image { margin: 0; }
.cdmh-guides .wp-block-post-featured-image img { aspect-ratio: 16 / 10; width: 100%; height: 100%; object-fit: cover; display: block; }
.cdmh-guides .cdmh-card-body { padding: 16px; }
.cdmh-guides .wp-block-post-terms { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #B5722A; margin: 0; }
.cdmh-guides .wp-block-post-terms a { color: #B5722A; }
.cdmh-guides .wp-block-post-title { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 15.5px; color: #2E2018; margin: 8px 0 0; line-height: 1.28; }
.cdmh-guides .wp-block-post-title a { color: #2E2018; }
.cdmh-guides .wp-block-post-title a:hover { color: #B5722A; }

/* ---------- E-E-A-T ---------- */
.cdmh-eeat {
	position: relative; overflow: hidden; background: linear-gradient(135deg, #3B2A20, #241712);
	color: #F3E3CD; border-radius: 24px; padding: 46px; display: grid;
	grid-template-columns: 1.3fr 1fr; gap: 34px; align-items: center; border: 1px solid #4a382b;
}
.cdmh-eeat .cdmh-eyebrow { color: #caa06b; }
.cdmh-eeat h2 { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: clamp(1.6rem, 2.4vw, 2.05rem); color: #fff; margin: 12px 0 10px; }
.cdmh-eeat p { color: #E4D2B7; margin: 0; font-size: 16px; }
.cdmh-eeat .cdmh-btn { margin-top: 22px; }
.cdmh-eeat__marks { display: flex; flex-direction: column; gap: 12px; }
.cdmh-eeat__mark {
	display: flex; align-items: center; gap: 13px; background: rgba(255,255,255,.05);
	border: 1px solid rgba(202,160,107,.28); border-radius: 14px; padding: 14px 16px;
}
.cdmh-eeat__mark i {
	flex: 0 0 auto; display: inline-flex; width: 38px; height: 38px; border-radius: 50%;
	border: 2px solid #c9a36a; background: linear-gradient(135deg, #6B4423, #3B2A20);
	align-items: center; justify-content: center; font-size: 17px; font-style: normal;
}
.cdmh-eeat__mark b { color: #fff; font-weight: 600; font-size: 14.5px; display: block; }
.cdmh-eeat__mark span { color: #CBB89F; font-size: 12.5px; }

/* ==========================================================================
   RESPONSIVE — refonte home
   ========================================================================== */
@media (max-width: 960px) {
	.cdmh-hero { grid-template-columns: 1fr; gap: 34px; padding-top: 40px; }
	.cdmh-hero__media { max-width: 460px; }
	.cdmh-usages { grid-template-columns: repeat(3, 1fr); }
	.cdmh-grid3 { grid-template-columns: repeat(2, 1fr); }
	.cdmh-guides .wp-block-post-template, ul.cdmh-guides { grid-template-columns: repeat(2, 1fr); }
	.cdmh-adapt { grid-template-columns: 1fr; }
	.cdmh-adapt__hero { width: 100%; height: 200px; }
	.cdmh-eeat { grid-template-columns: 1fr; }
	.cdmh-eeat__marks { flex-direction: row; flex-wrap: wrap; }
	.cdmh-eeat__mark { flex: 1 1 240px; }
}
@media (max-width: 680px) {
	.cdmh-sec, .cdmh-hero { padding-left: 18px; padding-right: 18px; }
	.cdmh-toprow { grid-template-columns: 44px 84px 1fr; gap: 14px; padding: 16px; }
	.cdmh-toprow__rank { font-size: 1.9rem; }
	.cdmh-toprow__buy { grid-column: 2 / -1; flex-direction: row; justify-content: space-between; width: 100%; min-width: 0; margin-top: 4px; }
	.cdmh-toprow__buy a { flex: 1; justify-content: center; }
	.cdmh-band { padding: 40px 24px; }
	.cdmh-eeat, .cdmh-adapt { padding: 30px 22px; }
}
@media (max-width: 520px) {
	.cdmh-usages { grid-template-columns: repeat(2, 1fr); }
	.cdmh-grid3 { grid-template-columns: 1fr; }
	.cdmh-guides .wp-block-post-template, ul.cdmh-guides { grid-template-columns: 1fr; }
	.cdmh-stats { gap: 16px; }
}
