/*
 * Identité Untibebe sur ColorMag.
 * Charte reprise d'untibebe.com (thème Soledad) :
 *   violet  #8e44ad : menu, étiquettes de rubrique, titres de barre latérale, barre de pied de page
 *   rose    #db137e : liens d'articles, pagination, titres de sections de l'accueil
 *   rose clair #f06292 : survols secondaires
 *   gris    #313131 : texte des menus ; #212121 : zone de widgets du pied de page
 *   Open Sans partout (titres en gras), Lora gras pour le slogan.
 */

:root:root {
	--cm-color-1: #8e44ad;
	--untibebe-violet: #8e44ad;
	--untibebe-rose: #db137e;
	--untibebe-rose-clair: #f06292;
	--untibebe-texte: #313131;
	--untibebe-pied: #212121;
	--untibebe-pied-survol: #dbcbd4;
}

/* Typographie ------------------------------------------------------------ */

body,
button,
input,
select,
textarea {
	font-family: "Open Sans", sans-serif;
}

body {
	font-size: 15px;
	line-height: 1.8;
}

h1, h2, h3, h4, h5, h6,
.cm-entry-title,
.cm-page-title,
.cm-widget-title,
.cm-primary-nav a {
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
}

.cm-entry-title {
	text-transform: none;
	letter-spacing: 0;
}

/* En-tête : logo et slogan -------------------------------------------------- */

.cm-site-branding .custom-logo {
	max-width: 100%;
	height: auto;
}

/* Le titre texte reste lisible par les moteurs et lecteurs d'écran quand le logo est affiché. */
.cm-header:has(.custom-logo-link) .cm-site-title {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.cm-site-description {
	font-family: "Lora", serif;
	font-weight: 700;
	color: var(--untibebe-texte);
}

/* Menu principal : fond blanc, texte gris, survol violet -------------------- */

#cm-primary-nav,
.cm-header-builder.cm-full-width .cm-header-bottom-row,
.cm-header-builder.cm-contained .cm-header-bottom-row .cm-bottom-row,
.cm-header-builder .cm-mobile-row .cm-header-bottom-row {
	background-color: #fff;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	box-shadow: none;
}

.cm-primary-nav a,
.cm-primary-nav a:hover,
.cm-primary-nav .cm-submenu-toggle .cm-icon {
	color: var(--untibebe-texte);
	fill: var(--untibebe-texte);
}

.cm-primary-nav ul li.current-menu-item,
.cm-primary-nav ul li.current-menu-ancestor,
.cm-primary-nav ul li.current_page_item,
.cm-primary-nav ul li:hover,
.cm-primary-nav ul li.focus,
.cm-primary-nav .cm-home-icon a:hover {
	background-color: transparent;
}

.cm-primary-nav ul li.current-menu-item > a,
.cm-primary-nav ul li.current-menu-ancestor > a,
.cm-primary-nav ul li:hover > a,
.cm-primary-nav ul li.focus > a {
	color: var(--untibebe-violet);
}

/* Les entrées du menu sont des images (maison, Family, AxE Voyages, PS). */
.cm-primary-nav li > a img {
	display: block;
	max-height: 32px;
	width: auto;
}

.cm-primary-nav .sub-menu,
.cm-primary-nav .children {
	background-color: #fff;
	border: 1px solid #ececec;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.cm-primary-nav ul li ul li a {
	color: var(--untibebe-texte);
}

.cm-primary-nav ul li ul li:hover,
.cm-primary-nav ul li.current-menu-item ul li a:hover {
	background-color: var(--untibebe-violet);
}

.cm-primary-nav ul li ul li:hover > a {
	color: #fff;
}

/* Contenus ------------------------------------------------------------------ */

.cm-entry-summary a,
.cm-entry-content a,
.entry-content a,
.comment-content a {
	color: var(--untibebe-rose);
}

.cm-entry-summary a:hover,
.cm-entry-content a:hover,
.entry-content a:hover,
.comment-content a:hover {
	color: var(--untibebe-violet);
}

.cm-entry-title a:hover {
	color: var(--untibebe-violet);
}

/* Étiquettes de rubrique : violet en liste, rose sur un article. */
.single .cm-post-categories a {
	background-color: var(--untibebe-rose);
}

/* Bouton « Lire la suite ». */
.cm-entry-button span:hover {
	background-color: var(--untibebe-rose);
}

/* Pagination. */
.page-numbers .current,
span.page-numbers.current,
.wp-block-query-pagination-numbers .page-numbers.current,
.link-pagination .post-page-numbers.current {
	background-color: var(--untibebe-rose);
	border-color: var(--untibebe-rose);
	color: #fff;
}

.page-numbers a:hover,
a.page-numbers:hover {
	color: var(--untibebe-rose);
}

/* Titres de sections de l'accueil en rose, comme sur untibebe.com. */
.cm-featured-posts .cm-widget-title {
	border-bottom-color: var(--untibebe-rose);
}

.cm-featured-posts .cm-widget-title span {
	background-color: var(--untibebe-rose);
}

/* Pied de page -------------------------------------------------------------- */

.cm-footer-cols {
	background-color: var(--untibebe-pied);
}

.cm-footer-cols a:hover {
	color: var(--untibebe-pied-survol);
}

.cm-footer-bar {
	background-color: var(--untibebe-violet);
	color: #fff;
}

/* Même précision que les règles générées par ColorMag (.cm-footer-bar-area .cm-footer-bar__2 a), qui imposaient le bleu #207daf. */
.cm-footer-bar a,
.cm-footer-bar-area .cm-footer-bar__1 a,
.cm-footer-bar-area .cm-footer-bar__2 a {
	color: #fff;
}

.cm-footer-bar a:hover,
.cm-footer-bar-area .cm-footer-bar__1 a:hover,
.cm-footer-bar-area .cm-footer-bar__2 a:hover {
	color: var(--untibebe-pied-survol);
}

/* Bouton de l'en-tête (bleu #207daf par défaut dans ColorMag). */
.cm-header-builder .cm-header-buttons .cm-header-button .cm-button {
	background-color: var(--untibebe-violet);
}

.cm-header-builder .cm-header-buttons .cm-header-button .cm-button:hover {
	background-color: var(--untibebe-rose);
}

/* Barre latérale : présentation et réseaux sociaux ------------------------- */

.untibebe-presentation p {
	margin-bottom: 0.8em;
}

.untibebe-en-savoir a {
	color: var(--untibebe-rose);
	font-weight: 700;
	letter-spacing: 0.03em;
}

.untibebe-en-savoir a:hover {
	color: var(--untibebe-violet);
}

.untibebe-social {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.untibebe-social li {
	margin: 0;
	padding: 0;
	border: 0;
}

.untibebe-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background-color: var(--untibebe-violet);
	color: #fff;
	font-size: 16px;
	transition: background-color 0.2s ease;
}

.untibebe-social a:hover,
.untibebe-social a:focus-visible {
	background-color: var(--untibebe-rose);
	color: #fff;
}

/* Accueil : flux Passionnément Sexualité ------------------------------------ */

.cm-primary .wp-block-rss {
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}

.cm-primary .wp-block-rss__item-title a {
	color: var(--untibebe-texte);
	font-weight: 700;
}

.cm-primary .wp-block-rss__item-title a:hover {
	color: var(--untibebe-rose);
}

.cm-primary .wp-block-rss__item-publish-date {
	color: #71717a;
	font-size: 13px;
}

/* Pied de page : liens légaux ---------------------------------------------- */

.untibebe-liens-legaux {
	margin-top: 6px;
	font-size: 13px;
}

.untibebe-liens-legaux a,
.cm-footer .cm-copyright .untibebe-liens-legaux a {
	color: var(--untibebe-violet);
	text-decoration: none;
}

.untibebe-liens-legaux a:hover,
.cm-footer .cm-copyright .untibebe-liens-legaux a:hover {
	color: var(--untibebe-rose);
	text-decoration: underline;
}

.untibebe-liens-legaux .untibebe-sep {
	margin: 0 6px;
	color: #a1a1aa;
}

/* Menus déroulants -----------------------------------------------------------
 * ColorMag ajoute dans son CSS généré un fond #232323 aux sous-menus
 * (.cm-header-builder .cm-primary-nav .sub-menu), plus fort que la règle
 * ci-dessus : texte foncé sur fond foncé. On reprend la main avec la même précision.
 */
.cm-header-builder .cm-primary-nav .sub-menu,
.cm-header-builder .cm-primary-nav .children {
	background-color: #fff;
	border: 1px solid #ececec;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.cm-header-builder .cm-primary-nav ul li ul li {
	background-color: transparent;
	border-bottom: 1px solid #f3f0f5;
}

.cm-header-builder .cm-primary-nav ul li ul li:last-child {
	border-bottom: 0;
}

.cm-header-builder .cm-primary-nav ul li ul li a,
.cm-header-builder .cm-primary-nav ul li.current-menu-item ul li a,
.cm-header-builder .cm-primary-nav ul li.current-menu-ancestor ul li a,
.cm-header-builder .cm-primary-nav ul li.current_page_ancestor ul li a {
	color: var(--untibebe-texte);
	font-weight: 600;
}

.cm-header-builder .cm-primary-nav ul li ul li .cm-submenu-toggle .cm-icon {
	fill: var(--untibebe-texte);
}

.cm-header-builder .cm-primary-nav ul li ul li:hover,
.cm-header-builder .cm-primary-nav ul li ul li.focus,
.cm-header-builder .cm-primary-nav ul li ul li.current-menu-item,
.cm-header-builder .cm-primary-nav ul li ul li.current-menu-ancestor {
	background-color: var(--untibebe-violet);
}

.cm-header-builder .cm-primary-nav ul li ul li:hover > a,
.cm-header-builder .cm-primary-nav ul li ul li.focus > a,
.cm-header-builder .cm-primary-nav ul li ul li.current-menu-item > a,
.cm-header-builder .cm-primary-nav ul li ul li.current-menu-ancestor > a {
	color: #fff;
}

.cm-header-builder .cm-primary-nav ul li ul li:hover > .cm-submenu-toggle .cm-icon,
.cm-header-builder .cm-primary-nav ul li ul li.focus > .cm-submenu-toggle .cm-icon {
	fill: #fff;
}

/* Accueil : carrousel des derniers articles ----------------------------------- */

.cm-featured-category-slider .cm-single-slide img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.cm-featured-category-slider .cm-slide-content {
	padding: 20px 24px;
}

.cm-featured-category-slider .cm-entry-title {
	font-size: 26px;
	line-height: 1.3;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

@media (max-width: 600px) {
	.cm-featured-category-slider .cm-entry-title {
		font-size: 17px;
	}
	.cm-featured-category-slider .cm-slide-content {
		padding: 12px 14px;
	}
}

/* En-tête : titre texte masqué quand le logo est affiché ----------------------
 * La règle plus haut visait .cm-header, une classe que ColorMag n'utilise plus
 * (l'en-tête est #cm-masthead.cm-header-builder) : le titre restait visible à côté du logo.
 * Le titre reste dans le code pour les moteurs et les lecteurs d'écran.
 */
#cm-masthead:has(.custom-logo-link) .cm-site-title {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* ==========================================================================
 * Version 1.1.0 : nouvelle présentation (en-tête, accueil, pied de page)
 * ========================================================================== */

:root {
	--ub-violet-clair: #f4ecf9;
	--ub-trait: #ece6f0;
	--ub-gris: #6b6b76;
	--ub-ombre: 0 2px 10px rgba(60, 20, 80, 0.07);
}

/* En-tête : logo, menu et réseaux sur une seule ligne ------------------------ */

.cm-header-builder .cm-header-main-row {
	background-color: #fff;
	border-bottom: 1px solid var(--ub-trait);
}

.cm-header-builder .cm-desktop-row .cm-main-row {
	display: flex;
	align-items: center;
	gap: 28px;
	min-height: 84px;
}

.cm-header-builder .cm-desktop-row .cm-header-left-col {
	flex: 0 0 auto;
}

.cm-header-builder .cm-desktop-row .cm-header-center-col {
	flex: 1 1 auto;
	justify-content: flex-start;
}

.cm-header-builder .cm-desktop-row .cm-header-right-col {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 14px;
}

.cm-header-builder .cm-site-branding .custom-logo {
	max-height: 56px;
	width: auto;
}

/* Le slogan est déjà écrit sous le logo : il reste dans le code, sans s'afficher. */
#cm-masthead:has(.custom-logo-link) .cm-site-description {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* Menu principal en texte. */
.cm-header-builder .cm-desktop-row .cm-primary-nav,
.cm-header-builder .cm-desktop-row #cm-primary-nav {
	border: 0;
	background: transparent;
}

.cm-header-builder .cm-primary-nav > ul > li > a {
	padding: 10px 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--untibebe-texte);
}

.cm-header-builder .cm-primary-nav > ul > li:hover > a,
.cm-header-builder .cm-primary-nav > ul > li.current-menu-item > a,
.cm-header-builder .cm-primary-nav > ul > li.current-menu-ancestor > a {
	color: var(--untibebe-violet);
}

/* Réseaux sociaux et recherche. */
.ub-reseaux {
	display: flex;
	align-items: center;
	gap: 4px;
}

.ub-reseaux a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: var(--untibebe-texte);
	font-size: 16px;
	transition: color 0.2s ease, background-color 0.2s ease;
}

.ub-reseaux a:hover,
.ub-reseaux a:focus-visible {
	color: var(--untibebe-violet);
	background-color: var(--ub-violet-clair);
}

.cm-header-builder .cm-top-search .search-top {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background-color: var(--ub-violet-clair);
	color: var(--untibebe-violet);
	cursor: pointer;
}

/* Accueil ------------------------------------------------------------------ */

.untibebe-accueil {
	padding: 24px 0 10px;
}

.untibebe-accueil .ub-carrousel {
	margin-bottom: 36px;
}

.untibebe-accueil .ub-carrousel .widget {
	margin: 0;
}

.untibebe-accueil .ub-carrousel .cm-featured-category-slider,
.untibebe-accueil .ub-carrousel .cm-single-slide {
	border-radius: 10px;
	overflow: hidden;
}

.ub-section {
	margin-bottom: 40px;
}

/* Titres de section : violet, souligné d'un trait fin. */
.ub-titre {
	display: flex;
	align-items: baseline;
	gap: 16px;
	margin-bottom: 18px;
}

.ub-titre h2,
.ub-ps h4,
.ub-ps h2 {
	margin: 0;
	font-size: 24px;
	line-height: 1.2;
	color: var(--untibebe-violet);
	white-space: nowrap;
}

.ub-titre::after {
	content: "";
	order: 1;
	flex: 1 1 auto;
	height: 1px;
	background-color: #c9a8dc;
	align-self: center;
}

.ub-titre a {
	order: 2;
	font-size: 13px;
	font-weight: 600;
	color: var(--untibebe-violet);
	white-space: nowrap;
}

.ub-titre a:hover {
	color: var(--untibebe-rose);
}

/* Étiquettes de rubrique. */
.ub-etiquette {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 3px;
	background-color: var(--untibebe-rose);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.ub-etiquette:hover {
	color: #fff;
	opacity: 0.9;
}

.ub-etiquette--voyages { background-color: #2563eb; }
.ub-etiquette--couple { background-color: #c0265a; }
.ub-etiquette--famille { background-color: var(--untibebe-rose); }

.ub-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	color: var(--ub-gris);
	font-size: 12px;
}

.ub-date {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.ub-sans-image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 80px;
	background: linear-gradient(135deg, #f6f0f9, #fdecf5);
}

.untibebe-accueil h3 a {
	color: var(--untibebe-texte);
}

.untibebe-accueil h3 a:hover {
	color: var(--untibebe-violet);
}

/* « À la une » : grand article à gauche, liste à droite. */
.ub-une-grille {
	display: grid;
	grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr);
	gap: 24px;
}

.ub-une-principal {
	position: relative;
	min-height: 360px;
	border-radius: 10px;
	overflow: hidden;
	background-color: #eee;
}

.ub-une-image,
.ub-une-image img,
.ub-une-image .ub-sans-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ub-une-carte {
	position: absolute;
	left: 36%;
	right: 10%;
	bottom: 10%;
	padding: 20px 22px;
	border-radius: 8px;
	background-color: rgba(255, 255, 255, 0.96);
	box-shadow: var(--ub-ombre);
}

.ub-une-carte h3 {
	margin: 10px 0 8px;
	font-size: 22px;
	line-height: 1.3;
}

.ub-une-carte p {
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.6;
	color: #4b4b55;
}

.ub-une-liste {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ub-une-liste li {
	display: grid;
	grid-template-columns: 112px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	margin: 0;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--ub-trait);
}

.ub-une-liste li + li {
	padding-top: 12px;
}

.ub-une-liste li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.ub-vignette {
	display: block;
	height: 72px;
	border-radius: 6px;
	overflow: hidden;
}

.ub-vignette img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ub-une-liste h3 {
	margin: 0 0 6px;
	font-size: 14px;
	line-height: 1.35;
}

/* Bandeau newsletter. */
.ub-newsletter {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) minmax(0, 1.25fr);
	gap: 24px;
	align-items: center;
	margin-bottom: 40px;
	padding: 22px 28px;
	border-radius: 12px;
	background-color: var(--ub-violet-clair);
}

.ub-nl-icone {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background-color: #f9c9e2;
	color: var(--untibebe-rose);
}

.ub-nl-texte h2 {
	margin: 0 0 4px;
	font-size: 20px;
	color: var(--untibebe-violet);
}

.ub-nl-texte p {
	margin: 0;
	font-size: 14px;
}

.ub-newsletter form {
	margin: 0;
}

.ub-nl-champs {
	display: flex;
	gap: 8px;
}

.ub-nl-champs input[type="text"],
.ub-nl-champs input[type="email"] {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 9px 12px;
	border: 1px solid #dccbe6;
	border-radius: 6px;
	background-color: #fff;
	font-size: 13px;
}

.ub-nl-champs input[type="text"] {
	flex-grow: 0.6;
}

.ub-nl-champs button {
	flex: 0 0 auto;
	padding: 9px 18px;
	border: 0;
	border-radius: 20px;
	background-color: var(--untibebe-violet);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	cursor: pointer;
}

.ub-nl-champs button:hover,
.ub-nl-champs button:focus-visible {
	background-color: var(--untibebe-rose);
}

.ub-nl-accord {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 8px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	color: #4b4b55;
}

.ub-nl-accord input {
	margin: 2px 0 0;
}

.ub-newsletter .mc4wp-response {
	margin-top: 8px;
	font-size: 13px;
}

/* « Derniers articles » : 4 cartes. */
.ub-cartes {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.ub-carte {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--ub-trait);
	border-radius: 8px;
	overflow: hidden;
	background-color: #fff;
	box-shadow: var(--ub-ombre);
}

.ub-carte-image {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.ub-carte-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.ub-carte:hover .ub-carte-image img {
	transform: scale(1.03);
}

.ub-carte-texte {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 12px 14px 14px;
}

.ub-carte-texte .ub-etiquette {
	align-self: flex-start;
	margin-top: -24px;
	position: relative;
}

.ub-carte h3 {
	margin: 10px 0 12px;
	font-size: 15px;
	line-height: 1.35;
}

.ub-carte .ub-meta {
	margin-top: auto;
}

/* Flux Passionnément Sexualité. */
.ub-ps {
	padding-top: 6px;
}

.ub-ps .wp-block-heading,
.ub-ps h4 {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 18px;
}

.ub-ps h4::after {
	content: "";
	flex: 1 1 auto;
	height: 1px;
	background-color: #c9a8dc;
}

.ub-ps .wp-block-rss.is-grid {
	gap: 20px;
}

.ub-ps .wp-block-rss__item {
	padding: 14px 16px;
	border: 1px solid var(--ub-trait);
	border-radius: 8px;
	background-color: #fff;
	box-shadow: var(--ub-ombre);
}

/* Pied de page : présentation et « Bonnes adresses » ----------------------- */

.ub-pied {
	padding: 40px 0 30px;
	background-color: #fff;
	border-top: 1px solid var(--ub-trait);
}

.ub-pied-grille {
	display: grid;
	grid-template-columns: minmax(0, 2.4fr) minmax(0, 1fr);
	gap: 40px;
	align-items: start;
}

.ub-pied-texte {
	text-align: center;
	color: var(--untibebe-violet);
	font-size: 13px;
	line-height: 1.7;
}

.ub-pied-texte h2 {
	margin: 0 0 12px;
	font-size: 17px;
	color: var(--untibebe-violet);
}

.ub-pied-texte p {
	margin: 0 0 10px;
}

.ub-pied-adresses {
	font-size: 14px;
	text-align: center;
}

.ub-pied-adresses h2 {
	margin: 0 0 14px;
	border-bottom: 2px solid var(--untibebe-violet);
	text-align: left;
	font-size: 13px;
	line-height: 1;
}

.ub-pied-adresses h2 span {
	display: inline-block;
	padding: 7px 10px;
	background-color: var(--untibebe-violet);
	color: #fff;
	text-transform: uppercase;
}

.ub-pied-adresses p {
	margin: 0 0 10px;
}

.ub-pied-adresses span[style] {
	font-size: 14px !important;
}

.ub-pied-adresses img {
	display: block;
	margin: 6px auto 0;
	max-width: 100%;
	height: auto;
}

/* Petits écrans --------------------------------------------------------------- */

@media (max-width: 1100px) {
	.ub-cartes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ub-newsletter {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.ub-nl-formulaire {
		grid-column: 1 / -1;
	}
}

@media (max-width: 900px) {
	.ub-une-grille,
	.ub-pied-grille {
		grid-template-columns: minmax(0, 1fr);
	}

	.ub-une-carte {
		left: 6%;
		right: 6%;
		bottom: 6%;
	}
}

@media (max-width: 600px) {
	.untibebe-accueil {
		padding-top: 14px;
	}

	.ub-titre h2,
	.ub-ps h4 {
		font-size: 20px;
	}

	.ub-titre a {
		display: none;
	}

	.ub-une-principal {
		min-height: 0;
		display: flex;
		flex-direction: column;
		background: #fff;
		border: 1px solid var(--ub-trait);
	}

	.ub-une-image {
		position: relative;
		display: block;
		aspect-ratio: 16 / 10;
	}

	.ub-une-carte {
		position: static;
		box-shadow: none;
		padding: 14px 16px 16px;
	}

	.ub-une-carte h3 {
		font-size: 18px;
	}

	.ub-une-liste li {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.ub-cartes {
		grid-template-columns: minmax(0, 1fr);
	}

	.ub-newsletter {
		grid-template-columns: minmax(0, 1fr);
		padding: 20px;
		text-align: center;
	}

	.ub-nl-icone {
		margin: 0 auto;
	}

	.ub-nl-champs {
		flex-direction: column;
	}

	.ub-nl-accord {
		text-align: left;
	}
}

/* 1.1.0 : ajustements après contrôle du rendu ------------------------------ */

.cm-header-builder .cm-desktop-row #cm-primary-menu {
	flex-wrap: nowrap;
}

.cm-header-builder .cm-desktop-row #cm-primary-menu > li {
	padding: 0;
}

.cm-header-builder .cm-desktop-row .cm-main-row {
	gap: 20px;
}

.home #cm-content {
	padding-top: 16px;
}

.untibebe-accueil .ub-carrousel .cm-single-slide img {
	aspect-ratio: 5 / 2;
}

.ub-newsletter .ub-nl-champs button[type="submit"] {
	background-color: var(--untibebe-violet);
	color: #fff;
}

.ub-newsletter .ub-nl-champs button[type="submit"]:hover,
.ub-newsletter .ub-nl-champs button[type="submit"]:focus-visible {
	background-color: var(--untibebe-rose);
}

.ub-ps .widget {
	margin: 0;
}

.ub-ps .block-title {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
}

.ub-ps .block-title h4 {
	padding: 0;
	background: none;
	color: var(--untibebe-violet);
	font-size: 24px;
	text-transform: none;
}

.ub-ps .wp-block-rss {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
}

.ub-ps .wp-block-rss .wp-block-rss__item {
	width: auto;
	margin: 0;
	list-style: none;
}

.ub-ps .wp-block-rss__item-title a {
	color: var(--untibebe-texte);
	font-weight: 700;
}

.ub-ps .wp-block-rss__item-title a:hover {
	color: var(--untibebe-violet);
}

/* Barre du bas : fond blanc, texte centré. */
.cm-footer-builder .cm-footer-bottom-row {
	padding: 16px 0;
	background-color: #fff;
	border-top: 1px solid var(--ub-trait);
}

.cm-footer-builder .cm-footer-bottom-row .cm-bottom-row {
	justify-content: center;
}

.cm-footer-builder .cm-footer-bottom-1-col {
	flex: 1 1 100%;
	text-align: center;
}

.cm-footer-builder .cm-footer-bottom-2-col:empty {
	display: none;
}

.cm-footer-builder .cm-copyright {
	width: 100%;
	color: #3f3f46;
	font-size: 12px;
}

.cm-footer-builder .cm-copyright > a {
	color: #3f3f46;
}

@media (max-width: 600px) {
	.untibebe-accueil .ub-carrousel .cm-single-slide img {
		aspect-ratio: 16 / 10;
	}

	.ub-ps .wp-block-rss {
		grid-template-columns: minmax(0, 1fr);
	}

	.ub-ps .block-title h4 {
		font-size: 20px;
	}
}

/* 1.1.0 : seconde passe (règles de Mailchimp, du bloc RSS et du pied de ColorMag plus fortes) */

.ub-newsletter .ub-nl-champs button[type="submit"] {
	background: var(--untibebe-violet) !important;
}

.ub-newsletter .ub-nl-champs button[type="submit"]:hover,
.ub-newsletter .ub-nl-champs button[type="submit"]:focus-visible {
	background: var(--untibebe-rose) !important;
}

.ub-ps ul.wp-block-rss.is-grid {
	display: grid;
}

#cm-footer .cm-footer-bottom-row .cm-bottom-row {
	grid-template-columns: minmax(0, 1fr);
}

/* ==========================================================================
 * Version 1.1.2 : charte appliquée partout
 * ========================================================================== */

/* « À la une » : encadré blanc légèrement transparent, l'image reste visible. */
.ub-une-carte {
	background-color: rgba(255, 255, 255, 0.8);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

@media (max-width: 600px) {
	.ub-une-carte {
		background-color: #fff;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
}

/* Menu : les intitulés ne passent jamais sur deux lignes. */
.cm-header-builder .cm-desktop-row #cm-primary-menu > li > a {
	white-space: nowrap;
}

/* Boutons des formulaires Mailchimp (barre latérale, bandeau) : violet au lieu de gris foncé. */
.mc4wp-form-theme-dark button,
.mc4wp-form-theme-dark input[type="submit"],
.mc4wp-form-theme-dark input[type="button"] {
	background: var(--untibebe-violet) !important;
	border-color: var(--untibebe-violet) !important;
	color: #fff !important;
}

.mc4wp-form-theme-dark button:hover,
.mc4wp-form-theme-dark input[type="submit"]:hover,
.mc4wp-form-theme-dark button:focus-visible,
.mc4wp-form-theme-dark input[type="submit"]:focus-visible {
	background: var(--untibebe-rose) !important;
	border-color: var(--untibebe-rose) !important;
}

/* Citations et encadrés « À lire aussi » : fond violet clair, liens lisibles. */
.cm-entry-summary blockquote,
.cm-entry-content blockquote,
.entry-content blockquote,
.wp-block-quote {
	padding: 18px 22px;
	border: 0;
	border-left: 4px solid var(--untibebe-violet);
	border-radius: 0 8px 8px 0;
	background-color: var(--ub-violet-clair);
	color: var(--untibebe-texte);
}

.cm-entry-summary blockquote h2,
.cm-entry-summary blockquote h3,
.cm-entry-summary blockquote h4,
.wp-block-quote h3 {
	margin-top: 0;
	color: var(--untibebe-violet);
}

.cm-entry-summary blockquote p,
.wp-block-quote p {
	color: var(--untibebe-texte);
}

.cm-entry-summary blockquote a,
.wp-block-quote a {
	color: var(--untibebe-rose);
	font-weight: 600;
}

.cm-entry-summary blockquote a:hover,
.wp-block-quote a:hover {
	color: var(--untibebe-violet);
}

/* Formulaire de contact (WPForms). */
.wpforms-container button[type="submit"],
.wpforms-container .wpforms-submit {
	background-color: var(--untibebe-violet) !important;
	border-color: var(--untibebe-violet) !important;
	border-radius: 20px !important;
	color: #fff !important;
}

.wpforms-container button[type="submit"]:hover,
.wpforms-container .wpforms-submit:hover,
.wpforms-container .wpforms-submit:focus-visible {
	background-color: var(--untibebe-rose) !important;
	border-color: var(--untibebe-rose) !important;
}

.wpforms-container .wpforms-required-label {
	color: var(--untibebe-rose);
}

.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
	border-color: var(--untibebe-violet) !important;
	box-shadow: 0 0 0 1px var(--untibebe-violet) !important;
}

/* Page 404. */
.cm-error-404 .cm-page-header p {
	color: var(--untibebe-violet);
	font-weight: 700;
}

body .cm-error-404 .cm-page-header .cm-page-title {
	color: var(--untibebe-violet);
}

.cm-error-404 .cm-btn:hover {
	background-color: var(--untibebe-rose);
}

/* Bandeau cookies (Complianz) : couleurs et police du site. */
:root:root {
	--cmplz_hyperlink_color: #8e44ad;
	--cmplz_text_color: #313131;
	--cmplz_button_accept_background_color: #8e44ad;
	--cmplz_button_accept_border_color: #8e44ad;
	--cmplz_button_accept_text_color: #ffffff;
	--cmplz_button_deny_background_color: #ffffff;
	--cmplz_button_deny_border_color: #c9a8dc;
	--cmplz_button_deny_text_color: #8e44ad;
	--cmplz_button_settings_background_color: #ffffff;
	--cmplz_button_settings_border_color: #c9a8dc;
	--cmplz_button_settings_text_color: #8e44ad;
	--cmplz_slider_active_color: #8e44ad;
	--cmplz_slider_inactive_color: #b5b5bd;
	--cmplz_text_font_size: 13px;
	--cmplz_link_font_size: 12px;
	--cmplz_category_body_font_size: 12px;
}

.cmplz-cookiebanner,
.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-btn {
	font-family: "Open Sans", sans-serif;
}

.cmplz-cookiebanner .cmplz-title {
	color: var(--untibebe-violet);
	font-weight: 700;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
	background-color: var(--untibebe-rose);
	border-color: var(--untibebe-rose);
}

#cmplz-manage-consent .cmplz-manage-consent {
	background-color: var(--untibebe-violet);
	color: #fff;
}

/* 1.1.3 : en-tête sur écrans moyens, titre du bandeau cookies */

.cm-header-builder .cm-desktop-row #cm-primary-menu > li {
	flex-wrap: nowrap;
	align-items: center;
}

@media (max-width: 1200px) {
	.cm-header-builder .cm-desktop-row .cm-main-row {
		gap: 12px;
	}

	.cm-header-builder .cm-desktop-row #cm-primary-menu > li > a {
		padding: 10px 7px;
		font-size: 12px;
	}

	.ub-reseaux a {
		width: 28px;
		height: 28px;
		font-size: 14px;
	}

	.cm-header-builder .cm-site-branding .custom-logo {
		max-height: 46px;
	}
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
	color: var(--untibebe-violet);
	font-weight: 700;
}


/* 1.1.4 : archives et détails visuels cohérents avec l'accueil. */

/* Titre « Bonnes adresses » : onglet violet avec angles arrondis. */
.ub-pied-adresses h2 {
	border-bottom: 0;
}
.ub-pied-adresses h2 span {
	padding: 8px 12px;
	border-radius: 8px;
}

/* Catégories : pleine largeur, sans colonne latérale. */
body.category .cm-secondary {
	display: none !important;
}
body.category #cm-primary.cm-primary {
	float: none !important;
	flex: 0 0 100%;
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Badges de catégories et bouton « Lire la suite » en forme de pastille. */
body.category .cm-post-categories a,
body.category .cm-entry-button span {
	border-radius: 999px;
}
body.category .cm-post-categories a {
	padding: 5px 11px;
}
body.category .cm-entry-button span {
	padding: 9px 16px;
}

/* Page « Tous les articles » : cartes respirantes, sans colonne latérale. */
.ub-archive {
	margin-top: 32px;
	margin-bottom: 48px;
}
.ub-archive-entete {
	margin: 0 0 24px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--untibebe-violet);
}
.ub-archive-entete .cm-page-title {
	margin: 0;
	color: var(--untibebe-violet);
	font-size: 28px;
	text-transform: none;
}
.ub-archive-grille {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}
.ub-archive-carte {
	overflow: hidden;
	margin: 0;
	border: 1px solid #ece8ef;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(40, 20, 48, 0.06);
}
.ub-archive-image {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #f5f1f7;
}
.ub-archive-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ub-archive-carte .ub-archive-contenu {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 16px;
}
.ub-archive-carte .ub-etiquette {
	border-radius: 999px;
}
.ub-archive-carte h2 {
	margin: 12px 0 8px;
	font-size: 18px;
	line-height: 1.4;
}
.ub-archive-carte h2 a {
	color: var(--untibebe-texte);
}
.ub-archive-carte h2 a:hover {
	color: var(--untibebe-violet);
}
.ub-archive-carte p {
	margin: 12px 0;
}
.ub-archive-suite {
	display: inline-block;
	margin-top: auto;
	padding: 8px 14px;
	border-radius: 999px;
	background: var(--untibebe-violet);
	color: #fff !important;
	font-weight: 700;
}
.ub-archive-suite:hover,
.ub-archive-suite:focus-visible {
	background: var(--untibebe-rose);
	color: #fff !important;
}
.ub-archive-pagination {
	margin-top: 32px;
}
.ub-archive-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ub-archive-pagination .page-numbers {
	display: inline-block;
	padding: 7px 12px;
	border: 1px solid #e7d8ed;
	border-radius: 999px;
}
.ub-archive-pagination .page-numbers.current {
	background: var(--untibebe-violet);
	border-color: var(--untibebe-violet);
	color: #fff;
}
@media (max-width: 900px) {
	.ub-archive-grille {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 600px) {
	.ub-archive {
		margin-top: 20px;
	}
	.ub-archive-grille {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}
	.ub-archive-entete .cm-page-title {
		font-size: 24px;
	}
}


/* 1.1.5 : le bouton d'archive est porté par le lien du thème. */
body.category .cm-entry-button,
body.category .cm-entry-button a,
body.category .cm-entry-button span,
body.category a.cm-entry-button {
	border-radius: 999px !important;
}


/* 1.1.6 : coins arrondis des onglets de titre de toutes les catégories. */
body.category .cm-page-header .cm-page-title > span {
	border-radius: 8px;
}

/* Images mises en avant : articles individuels uniquement. Ne pas recadrer. */
body.single-post .cm-post-content .cm-featured-image img,
body.single-post .cm-entry-header .cm-featured-image img,
body.single-post .featured-image img,
body.single-post .post-thumbnail img,
body.single-post .cm-post-thumbnail img {
 width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important;display:block;
}
body.single-post .cm-post-content .cm-featured-image,
body.single-post .cm-entry-header .cm-featured-image,
body.single-post .featured-image,
body.single-post .post-thumbnail,
body.single-post .cm-post-thumbnail {height:auto!important;max-height:none!important;aspect-ratio:auto!important;overflow:visible!important;}

/* 1.1.8 : badges arrondis et couleurs par univers éditorial. */
.ub-etiquette,
.cm-post-categories a {
  display: inline-block;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: #fff;
  background-color: #8e44ad;
}
.ub-etiquette--famille { background-color: #8e44ad; }
.ub-etiquette--couple { background-color: #c0265a; }
.ub-etiquette--voyages { background-color: #2563eb; }
.cm-post-categories a[href*="/category/sexualite/"],
.cm-post-categories a[href*="/sexualite/"] { background-color: #c0265a; }
.cm-post-categories a[href*="/category/voyages/"],
.cm-post-categories a[href*="/voyages/"],
.cm-post-categories a[href*="/parcs-dattractions/"],
.cm-post-categories a[href*="/sortir-a-paris/"],
.cm-post-categories a[href*="/restaurants/"] { background-color: #2563eb; }
.ub-etiquette:hover, .cm-post-categories a:hover { color: #fff; filter: brightness(.94); }

/* 1.1.9 : titres des archives sans cartouche, couleurs éditoriales. */
body.category { --ub-category-color: #8e44ad; }
body.category.category-sexualite { --ub-category-color: #c0265a; }
body.category.category-voyages,
body.category.category-parcs-dattractions,
body.category.category-sortir-a-paris,
body.category.category-restaurants { --ub-category-color: #2563eb; }
body.category .cm-page-header .cm-page-title,
body.category .cm-page-header .cm-page-title > span,
body.category .ub-archive-entete .cm-page-title,
body.category .ub-archive-entete .cm-page-title > span {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--ub-category-color) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-size: 32px;
  line-height: 1.3;
  text-transform: none;
}
body.category .cm-page-header,
body.category .ub-archive-entete {
  border-bottom-color: var(--ub-category-color) !important;
}
body.category .cm-page-header .cm-page-title::before,
body.category .cm-page-header .cm-page-title::after { background-color: var(--ub-category-color); }
@media(max-width:600px) {
 body.category .cm-page-header .cm-page-title,
 body.category .cm-page-header .cm-page-title > span,
 body.category .ub-archive-entete .cm-page-title,
 body.category .ub-archive-entete .cm-page-title > span { font-size: 26px; }
}

/* 1.1.10 : couleur uniforme des traits de titre et des pastilles. */
body.category { --ub-category-color:#8e44ad; }
body.category.category-sexualite,body.category.term-sexualite,body.category.category-63 { --ub-category-color:#c0265a; }
body.category.category-voyages,body.category.category-18,
body.category.category-parcs-dattractions,body.category.category-sortir-a-paris,
body.category.category-restaurants { --ub-category-color:#2563eb; }
/* Le trait du titre ColorMag peut être porté par le conteneur, le titre ou son pseudo-élément. */
body.category .cm-page-header,
body.category .cm-page-header .cm-page-title,
body.category .cm-page-header .cm-page-title > span,
body.category .ub-archive-entete {
 border-bottom-color:var(--ub-category-color)!important;
}
body.category .cm-page-header,
body.category .ub-archive-entete {
 background-image:linear-gradient(var(--ub-category-color),var(--ub-category-color));
 background-size:100% 2px;
 background-position:left bottom;
 background-repeat:no-repeat;
}
body.category .cm-page-header .cm-page-title::after,
body.category .cm-page-header .cm-page-title::before,
body.category .ub-archive-entete .cm-page-title::after {background-color:var(--ub-category-color)!important;}
/* Étiquettes ColorMag et thème enfant, toutes violettes par défaut. */
body .cm-post-categories a,
body .ub-etiquette {background:#8e44ad!important;color:#fff!important;border-radius:999px;}
body .cm-post-categories a[href*="/sexualite/"],
body .ub-etiquette--couple {background:#c0265a!important;}
body .cm-post-categories a[href*="/voyages/"],
body .cm-post-categories a[href*="/parcs-dattractions/"],
body .cm-post-categories a[href*="/sortir-a-paris/"],
body .cm-post-categories a[href*="/restaurants/"],
body .ub-etiquette--voyages {background:#2563eb!important;}
body.category-sexualite .cm-post-categories a[href*="/sexualite/"] {background:#c0265a!important;}

/* 1.1.11 : un seul trait, immédiatement sous le titre de catégorie. */
body.category .cm-page-header,
body.category .ub-archive-entete {
  background-image:none!important;
  border-bottom:0!important;
}
body.category .cm-page-header .cm-page-title,
body.category .ub-archive-entete .cm-page-title {
  border-bottom:2px solid var(--ub-category-color)!important;
}
body.category .cm-page-header .cm-page-title::after,
body.category .cm-page-header .cm-page-title::before,
body.category .ub-archive-entete .cm-page-title::after,
body.category .ub-archive-entete .cm-page-title::before {
  background-image:none!important;
}

/* 1.1.12 : archives catégorie, cartes harmonisées et boutons affinés. */
body.category .cm-posts.cm-layout-2 {
  column-gap:24px;
  row-gap:28px;
}
body.category .cm-posts.cm-layout-2 > article,
body.category .cm-posts.cm-layout-2 > .cm-post {
  border:1px solid #eee8f1;
  border-radius:15px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 5px 18px rgba(45,25,55,.055);
  transition:transform .2s ease,box-shadow .2s ease;
}
@media(hover:hover) {
 body.category .cm-posts.cm-layout-2 > article:hover,
 body.category .cm-posts.cm-layout-2 > .cm-post:hover {
  transform:translateY(-3px);
  box-shadow:0 10px 25px rgba(45,25,55,.1);
 }
}
body.category .cm-posts.cm-layout-2 .cm-featured-image,
body.category .cm-posts.cm-layout-2 .cm-post-thumbnail,
body.category .cm-posts.cm-layout-2 .post-thumbnail,
body.category .cm-posts.cm-layout-2 .cm-entry-img {
 display:block;
 width:100%;
 aspect-ratio:16/10;
 overflow:hidden;
 background:#f5f1f7;
}
body.category .cm-posts.cm-layout-2 .cm-featured-image img,
body.category .cm-posts.cm-layout-2 .cm-post-thumbnail img,
body.category .cm-posts.cm-layout-2 .post-thumbnail img,
body.category .cm-posts.cm-layout-2 .cm-entry-img img {
 display:block;
 width:100%!important;
 height:100%!important;
 aspect-ratio:16/10;
 object-fit:cover!important;
 object-position:center;
 transition:transform .35s ease;
}
@media(hover:hover) {
 body.category .cm-posts.cm-layout-2 article:hover .cm-featured-image img,
 body.category .cm-posts.cm-layout-2 article:hover .cm-post-thumbnail img {transform:scale(1.025);}
}
body.category .cm-entry-button,
body.category .cm-entry-button a,
body.category .cm-entry-button span,
body.category a.cm-entry-button {
 padding:0!important;
 min-height:0!important;
 line-height:1.25!important;
 border-radius:999px!important;
}
body.category .cm-entry-button a,
body.category .cm-entry-button span,
body.category a.cm-entry-button {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 padding:7px 14px!important;
 font-size:12px!important;
 font-weight:600;
}
@media(max-width:600px) {
 body.category .cm-posts.cm-layout-2 {row-gap:18px;}
}

/* 1.1.13 : archives façon magazine, sans modifier le HTML des articles. */
@media (min-width: 901px) {
 body.category .cm-posts.cm-layout-2 {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
  align-items:stretch;
 }
 body.category .cm-posts.cm-layout-2 > article:first-child {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  align-items:center;
 }
 body.category .cm-posts.cm-layout-2 > article:first-child .cm-featured-image,
 body.category .cm-posts.cm-layout-2 > article:first-child .cm-post-thumbnail,
 body.category .cm-posts.cm-layout-2 > article:first-child .post-thumbnail {
  height:100%;
  min-height:320px;
  aspect-ratio:auto;
 }
 body.category .cm-posts.cm-layout-2 > article:first-child .cm-featured-image img,
 body.category .cm-posts.cm-layout-2 > article:first-child .cm-post-thumbnail img,
 body.category .cm-posts.cm-layout-2 > article:first-child .post-thumbnail img {
  height:100%!important;
  aspect-ratio:auto;
 }
}
body.category .cm-posts.cm-layout-2 .cm-entry-title {
 line-height:1.32;
 letter-spacing:-.015em;
}
body.category .cm-posts.cm-layout-2 > article:first-child .cm-entry-title {
 font-size:clamp(23px,2.3vw,32px);
}
body.category .cm-posts.cm-layout-2 .cm-entry-summary {line-height:1.65;}
/* Couleur rose réservée à l'entrée Couple & Intimité du menu. */
body .menu-item-52051:hover > a,
body .menu-item-52051:focus-within > a,
body .menu-item-52051.current-menu-item > a {
 background-color:#c0265a!important;
 color:#fff!important;
}
body .menu-item-52051:hover,
body .menu-item-52051:focus-within,
body .menu-item-52051.current-menu-item {
 background-color:#c0265a!important;
}
