/* ==========================================================================
   Solena — styles des sections sur mesure
   Couleurs, polices et tailles : theme.json (variables --wp--preset--*).
   ========================================================================== */

:root {
	--solena-gutter: max(16px, 6vw);
	--solena-header-h: 72px;
	/* Plancher des petites capitales : rien de cliquable ou d'informatif sous 11 px */
	--solena-mention: 0.75rem;   /* 12 px : sur-titres, boutons, liens, étiquettes */
	--solena-micro: 0.6875rem;   /* 11 px : pastilles et liens des cartes serrées */
	--solena-filet-fonce: #d6cdbf;
}

/* ── Éléments communs ─────────────────────────────────────────────────────── */

/* Titres équilibrés sur leurs lignes, pas de mot seul en fin de paragraphe */
h1, h2, h3, .solena-home-hero p { text-wrap: balance; }
p { text-wrap: pretty; }
::selection { background: var(--wp--preset--color--or); color: var(--wp--preset--color--encre); }

.solena-eyebrow {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wp--preset--color--encre);
}
.solena-eyebrow--or { color: var(--wp--preset--color--or-texte); }

.solena-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 2rem;
	background: var(--wp--preset--color--encre);
	color: var(--wp--preset--color--blanc);
	border: 1px solid var(--wp--preset--color--encre);
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.25s ease, color 0.25s ease;
}
.solena-btn:hover,
.solena-btn:focus-visible { background: var(--wp--preset--color--or-texte); border-color: var(--wp--preset--color--or-texte); color: var(--wp--preset--color--blanc); }
.solena-btn--secondaire { background: transparent; color: var(--wp--preset--color--encre); }

.solena-section {
	padding: var(--wp--preset--spacing--60) var(--solena-gutter);
	box-sizing: border-box;
}
.solena-section--creme { background: var(--wp--preset--color--creme); }
.solena-section--peche { background: var(--wp--preset--color--peche); }
.solena-section__head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.875rem;
	margin-bottom: var(--wp--preset--spacing--50);
	text-align: center;
}
.solena-section__head h1,
.solena-section__head h2 { margin: 0; }

/* ── Header ───────────────────────────────────────────────────────────────── */

.solena-header {
	position: sticky;
	top: 0;
	z-index: 100;
	min-height: var(--solena-header-h);
	padding-left: var(--solena-gutter) !important;
	padding-right: var(--solena-gutter) !important;
	border-bottom: 1px solid var(--wp--preset--color--filet);
}
body.admin-bar .solena-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .solena-header { top: 46px; } }
/* Le PNG du logo a un fond blanc cassé : « multiply » le rend transparent (à remplacer par un SVG) */
.solena-header .wp-block-site-logo img { height: auto; max-height: 40px; width: auto; mix-blend-mode: multiply; }
.solena-header .wp-block-navigation a { text-decoration: none; }
.solena-header .wp-block-navigation a:hover,
.solena-header .wp-block-navigation .current-menu-item a { color: var(--wp--preset--color--or-texte); }
.solena-header .wc-block-mini-cart__button { padding: 10px; min-width: 44px; min-height: 44px; }
/* Compte : même encre, même taille et même zone de clic que le panier */
.solena-header .wc-block-customer-account__link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px; color: var(--wp--preset--color--encre); }
.solena-header .wc-block-customer-account__account-icon { width: 24px; height: 24px; }
.solena-header .wc-block-customer-account__link:hover,
.solena-header .wc-block-mini-cart__button:hover { color: var(--wp--preset--color--or-texte); }
/* Téléphone et tablette : burger tout à droite, après le compte et le panier.
   WordPress ne montre le burger que sous 600 px ; entre 600 et 1023 px, les quatre rubriques passaient sur deux lignes. */
@media (min-width: 600px) and (max-width: 1023px) {
	.solena-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.solena-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
@media (max-width: 1023px) {
	.solena-header__right { gap: 0.25rem !important; }
	.solena-header__right .wp-block-navigation { order: 10; }
	.solena-header .wp-block-navigation__responsive-container-open { padding: 10px; min-width: 44px; min-height: 44px; justify-content: center; }
}

/* Menu mobile ouvert : les rubriques en grand, comme les titres du site, une par ligne */
.solena-header .wp-block-navigation__responsive-container.is-menu-open {
	padding: 0 var(--solena-gutter) var(--wp--preset--spacing--50);
}
.solena-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	top: 14px;
	right: calc(var(--solena-gutter) - 10px);
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
}
.solena-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: calc(var(--solena-header-h) + var(--wp--preset--spacing--30));
	align-items: stretch;
}
.solena-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch;
	gap: 0;
	width: 100%;
}
.solena-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--filet);
}
.solena-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 64px;
	padding: 0.5rem 0;
	font-family: var(--wp--preset--font-family--playfair);
	font-style: italic;
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.2;
}

/* ── Parfum : en-tête ─────────────────────────────────────────────────────── */

.solena-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: min(680px, calc(100vh - var(--solena-header-h)));
	padding: var(--wp--preset--spacing--50) var(--solena-gutter);
	box-sizing: border-box;
	background: var(--wp--preset--color--peche);
	overflow: hidden;
}
.solena-hero__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: right center;
}
/* Voile pêche côté texte : garantit la lisibilité quelle que soit la photo choisie */
.solena-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(252, 241, 232, 0.92) 0%, rgba(252, 241, 232, 0.75) 32%, rgba(252, 241, 232, 0) 58%);
	pointer-events: none;
}
.solena-hero__text {
	position: relative;
	z-index: 1;
	max-width: 500px;
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
}
.solena-hero__title { margin: 0; }
.solena-hero__accroche { margin: 0; font-size: 1.0625rem; line-height: 1.75; color: var(--wp--preset--color--encre); }
.solena-hero__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.solena-breadcrumb { font-size: 0.8125rem; color: var(--wp--preset--color--encre); }
.solena-breadcrumb a { color: inherit; }

@media (max-width: 760px) {
	.solena-hero {
		flex-direction: column;
		align-items: stretch;
		min-height: 0;
		padding: 0 0 2.25rem;
	}
	.solena-hero::after { content: none; }
	.solena-hero__img {
		position: static;
		height: 300px;
		object-position: 78% center;
	}
	.solena-hero__text {
		max-width: none;
		padding: 1.75rem 16px 0;
		gap: 1rem;
	}
	.solena-hero__actions .solena-btn { flex: 1 1 100%; }
	.solena-hero__actions .solena-btn--secondaire { display: none; }
}

/* ── Parfum : pyramide ────────────────────────────────────────────────────── */

.solena-pyramide__grid {
	max-width: 1040px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1.5rem;
}
.solena-pyramide__note {
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
	padding: 2.5rem 2rem;
	background: var(--wp--preset--color--blanc);
	border: 1px solid var(--wp--preset--color--filet);
	text-align: center;
}
.solena-pyramide__note h3 { margin: 0; font-family: var(--wp--preset--font-family--inter); }
.solena-pyramide__note p {
	margin: 0;
	font-family: var(--wp--preset--font-family--playfair);
	font-size: var(--wp--preset--font-size--titre-carte);
	line-height: 1.35;
}
@media (max-width: 760px) {
	.solena-pyramide__note { padding: 1.375rem 1.25rem; text-align: left; }
}

/* ── Parfum : histoire (contenu libre de l'éditeur) ───────────────────────── */

.solena-histoire {
	padding-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
}
.solena-histoire p { color: var(--wp--preset--color--texte); line-height: 1.9; }
.solena-histoire strong { color: var(--wp--preset--color--encre); font-weight: 500; }
.solena-histoire .wp-block-media-text { gap: var(--wp--preset--spacing--50); }
.solena-histoire .wp-block-media-text__content { padding: 0; }

/* ── Parfum : formats ─────────────────────────────────────────────────────── */

.solena-formats__grid {
	max-width: 1120px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 1.5rem;
}
.solena-format {
	display: flex;
	flex-direction: column;
	background: var(--wp--preset--color--blanc);
	color: var(--wp--preset--color--encre);
	text-decoration: none;
	transition: box-shadow 0.25s ease;
}
.solena-format:hover { box-shadow: 0 18px 40px rgba(26, 26, 26, 0.08); color: var(--wp--preset--color--encre); }
.solena-format__img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.solena-format__body { display: flex; flex-direction: column; gap: 0.5rem; padding: 1.25rem 1.5rem 1.5rem; }
.solena-format__title { font-family: var(--wp--preset--font-family--playfair); font-size: var(--wp--preset--font-size--titre-carte); }
.solena-format__options { font-size: 0.875rem; color: var(--wp--preset--color--texte); }
.solena-format__price { font-size: 1.0625rem; font-weight: 500; }
.solena-format__phrase { font-size: 0.875rem; line-height: 1.7; color: var(--wp--preset--color--texte); }
.solena-format__link {
	margin-top: 0.5rem;
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--or-texte);
}
.solena-formats__note { margin: var(--wp--preset--spacing--40) 0 0; text-align: center; font-size: 0.875rem; color: var(--wp--preset--color--texte); }

@media (max-width: 700px) {
	.solena-formats__grid { gap: 1rem; }
	.solena-format { flex-direction: row; align-items: stretch; }
	.solena-format__img { width: 120px; height: 150px; aspect-ratio: auto; flex-shrink: 0; }
	.solena-format__body { padding: 0.875rem; gap: 0.375rem; justify-content: center; }
	.solena-format__phrase { display: none; }
}

/* ── Réassurance ──────────────────────────────────────────────────────────── */

.solena-reassurance p { margin: 0; }
.solena-reassurance .wp-block-column { display: flex; flex-direction: column; gap: 0.375rem; }
@media (max-width: 781px) {
	.solena-reassurance__grid.wp-block-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; }
}

/* ── Pied de page ─────────────────────────────────────────────────────────── */

.solena-footer a { color: var(--wp--preset--color--filet); }
.solena-footer a:hover { color: var(--wp--preset--color--or); }
.solena-footer .solena-eyebrow { color: var(--wp--preset--color--filet); margin-bottom: 0.5rem; }
.solena-footer__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.5rem; }

/* ── Bibliothèque des parfums ─────────────────────────────────────────────── */

.solena-parfums-grid .wp-block-post-title a { color: var(--wp--preset--color--encre); text-decoration: none; }

/* ── Pages pleine largeur (home) ──────────────────────────────────────────── */

.solena-pleine-largeur .wp-block-post-content > * { margin-block: 0; }

.solena-home-hero.wp-block-cover { min-height: min(720px, calc(100vh - var(--solena-header-h))) !important; }
.solena-home-hero .wp-block-cover__inner-container { display: flex; flex-direction: column; align-items: center; gap: 1.25rem; }
.solena-home-hero h1 { margin: 0; max-width: 14ch; text-shadow: 0 2px 24px rgba(0, 0, 0, 0.25); }
/* La photo est dans un <picture> (photo en hauteur pour le téléphone) : il doit couvrir le bloc comme l'image seule */
.solena-home-hero__photo { position: absolute; inset: 0; display: block; }
.solena-home-hero__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 781px) {
	/* Téléphone : photo en hauteur (bougie, fondants, suspension). Le texte, en noir, se place sur le mur uni
	   en haut, les boutons sur la planche en bas ; pas de voile sombre, la photo garde sa lumière */
	.solena-home-hero.wp-block-cover { min-height: max(calc(100svh - var(--solena-header-h, 72px)), min(168vw, 960px)) !important; align-items: stretch; padding-top: 1.75rem; padding-bottom: 3.5rem; }
	.solena-home-hero .wp-block-cover__image-background { object-position: 50% 60% !important; }
	.solena-home-hero .wp-block-cover__background { opacity: 0 !important; }
	.solena-home-hero .wp-block-cover__inner-container { justify-content: flex-start; gap: 0.9rem; }
	.solena-home-hero .wp-block-cover__inner-container > .has-blanc-color { color: var(--wp--preset--color--encre) !important; }
	.solena-home-hero h1 { text-shadow: none; font-size: clamp(2rem, 9.6vw, 2.6rem) !important; max-width: none; }
	/* Slogan « Cire végétale · Parfums de Grasse · Sans phtalates » : détaillé plus bas dans la page, masqué ici */
	.solena-home-hero .wp-block-cover__inner-container > p.has-grand-font-size { display: none; }
	.solena-home-hero .wp-block-buttons { margin-top: auto; }
}

.solena-bandeau { gap: 0.75rem 3rem; padding: 1.1rem var(--solena-gutter); }
.solena-bandeau p { margin: 0; }

.solena-home-intro,
.solena-home-vedette,
.solena-home-engagements,
.solena-home-final { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--60); }
.solena-home-intro h2,
.solena-home-vedette h2,
.solena-home-engagements h2,
.solena-home-final h2 { margin-top: 0.75rem; }
.solena-home-vedette .wp-block-buttons { margin-top: var(--wp--preset--spacing--50); }

.solena-home-collection.wp-block-media-text { min-height: 560px; }
/* La photo occupe toute la hauteur du bloc (pas de bande blanche au-dessus/en dessous) */
.solena-home-collection .wp-block-media-text__media { align-self: stretch; height: 100%; }
.solena-home-collection .wp-block-media-text__media img { width: 100%; height: 100%; min-height: 420px; object-fit: cover; }
.solena-home-collection .wp-block-media-text__content { padding: var(--wp--preset--spacing--50) max(16px, 7vw); max-width: 560px; }
.solena-home-collection .wp-block-media-text__content > * + * { margin-top: 1.25rem; }

.solena-home-engagements .wp-block-columns { margin-top: var(--wp--preset--spacing--50); gap: var(--wp--preset--spacing--50); }
.solena-home-engagements h3 { margin: 0.25rem 0 0.75rem; }
.solena-home-numero {
	margin: 0;
	font-family: var(--wp--preset--font-family--playfair);
	font-style: italic;
	font-size: 2.25rem;
	line-height: 1;
	color: var(--wp--preset--color--or-texte);
}

.solena-home-citation { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--60); }
.solena-home-citation__texte {
	margin: 0 0 1.5rem;
	font-family: var(--wp--preset--font-family--playfair);
	font-style: italic;
	font-size: var(--wp--preset--font-size--titre-section);
	line-height: 1.25;
}

/* Boutons « contour » : même gabarit que les boutons pleins */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	border: 1px solid currentColor;
	padding: calc(0.95rem - 1px) calc(2rem - 1px);
}
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) { color: var(--wp--preset--color--encre); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--encre); border-color: var(--wp--preset--color--encre); color: var(--wp--preset--color--blanc); }
.wp-block-button__link { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }

/* ── Produits mis en avant ────────────────────────────────────────────────── */

.solena-vedette {
	margin-top: var(--wp--preset--spacing--50);
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 2rem;
}
.solena-vedette__card { display: flex; flex-direction: column; gap: 0.5rem; color: var(--wp--preset--color--encre); text-decoration: none; }
.solena-vedette__card:hover { color: var(--wp--preset--color--encre); }
.solena-vedette__card:hover .solena-vedette__img { opacity: 0.92; }
.solena-vedette__img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; display: block; margin-bottom: 0.75rem; transition: opacity 0.25s ease; }
.solena-vedette__title { font-family: var(--wp--preset--font-family--playfair); font-style: italic; font-size: var(--wp--preset--font-size--titre-carte); }
.solena-vedette__price { font-size: 0.9375rem; color: var(--wp--preset--color--texte); }

@media (max-width: 781px) {
	.solena-home-collection.wp-block-media-text { min-height: 0; }
	.solena-home-collection .wp-block-media-text__media img { min-height: 0; height: 280px; }
	.solena-home-collection .wp-block-media-text__content { padding: 2rem 16px 3rem; }
	.solena-bandeau { justify-content: flex-start !important; gap: 0.5rem 1.5rem; }
}

/* ── Mode « Bientôt disponible » ──────────────────────────────────────────── */

.solena-bientot-tag,
.solena-bientot-single {
	display: block;
	padding: 0.8rem 1.25rem;
	border: 1px solid var(--wp--preset--color--filet);
	color: var(--wp--preset--color--texte);
	font-size: 0.75rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: center;
}

/* ==========================================================================
   Typographie alignée sur la prod (solena.paris, relevé du 22/10/2026)
   Inter fin (200–300), petites capitales très espacées, Playfair en titres.
   Les couleurs restent celles du design system (contrastes).
   ========================================================================== */

/* Petites capitales */
.solena-eyebrow { font-size: var(--solena-mention); font-weight: 400; letter-spacing: 5px; line-height: 1.5; }
.solena-home-hero .solena-eyebrow { letter-spacing: 6px; }
.solena-home-collection .solena-eyebrow { font-size: var(--solena-mention); letter-spacing: 4px; }
.solena-hero .solena-eyebrow { font-size: var(--solena-mention); font-weight: 400; }
.solena-btn { font-size: var(--solena-mention); font-weight: 400; letter-spacing: 3px; padding: 0 2.5rem; }
.wp-block-button.is-style-outline > .wp-block-button__link { padding: calc(1.1rem - 1px) calc(2.5rem - 1px); font-size: var(--solena-mention); }

/* Home */
.solena-home-hero h1 { max-width: none; line-height: 1.1; }
.solena-home-hero .has-grand-font-size { font-size: 0.78rem !important; font-weight: 300; letter-spacing: 2px; }
.solena-bandeau { gap: 0 2.5rem; }
.solena-bandeau .solena-eyebrow { font-size: var(--solena-mention); font-weight: 400; letter-spacing: 3px; color: var(--wp--preset--color--encre); }
.solena-bandeau p + p { padding-left: 2.5rem; border-left: 1px solid rgba(61, 39, 16, 0.3); }
@media (max-width: 1100px) {
	/* Bandeau doré sur tablette : 2 × 2, centré, sans filets */
	.solena-bandeau { display: grid !important; grid-template-columns: 1fr 1fr; align-items: center; gap: 0.9rem 1rem; padding: 1.25rem 16px; text-align: center; }
	.solena-bandeau p + p { padding-left: 0; border-left: 0; }
	.solena-bandeau .solena-eyebrow { letter-spacing: 2px; line-height: 1.5; }
}
@media (max-width: 781px) {
	/* … et sur téléphone : masqué (il prenait 4 lignes), ses arguments sont détaillés plus bas dans la page */
	.solena-bandeau { display: none !important; }
}
.solena-home-intro p:not(.solena-eyebrow) { max-width: 62ch; margin-inline: auto; font-size: 0.95rem; font-weight: 300; line-height: 2.1; }
.solena-home-intro h2 { font-size: 2.8rem; }
.solena-home-vedette h2 { font-size: 2.6rem; }
.solena-home-collection h2 { font-size: 2.52rem; }
.solena-home-collection p:not(.solena-eyebrow) { font-size: 0.9rem; font-weight: 300; line-height: 2; }
.solena-home-engagements h2 { font-size: 2.5rem; }
.solena-home-engagements h3 { font-size: 1.15rem; letter-spacing: 3px; text-transform: uppercase; }
.solena-home-engagements p:not(.solena-home-numero):not(.solena-eyebrow) { font-size: 0.875rem; font-weight: 300; line-height: 1.9; }
.solena-home-numero { font-size: 3rem; color: var(--wp--preset--color--filet); }
.solena-home-citation__texte { font-size: 3.15rem; line-height: 1.25; }
.solena-home-citation .solena-eyebrow { font-size: var(--solena-mention); letter-spacing: 4px; color: var(--wp--preset--color--or); }
.solena-home-final h2 { font-size: 2.7rem; }
.solena-home-final p:not(.solena-eyebrow) { font-size: 0.9rem; font-weight: 300; line-height: 1.8; }

/* Playfair : jamais sous 400 (comme la prod) */
.has-playfair-font-family, .solena-vedette__title, .solena-home-numero, .solena-home-citation__texte,
.solena-pyramide__note p, .solena-format__title { font-weight: 400; }

/* Produits mis en avant */
.solena-vedette__type { font-size: var(--solena-mention); font-weight: 400; letter-spacing: 4px; text-transform: uppercase; color: var(--wp--preset--color--texte); }
.solena-vedette__title { font-size: 1.25rem; line-height: 1.5; }
.solena-vedette__price { font-size: 0.875rem; font-weight: 300; }
.solena-vedette__cta { margin-top: 0.5rem; align-self: flex-start; font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; border-bottom: 1px solid currentColor; padding-bottom: 2px; }

/* Page parfum */
.solena-breadcrumb { font-size: var(--solena-mention); letter-spacing: 1px; }
.solena-hero__title { font-size: clamp(2.8rem, 5vw, 4rem); }
.solena-hero__accroche { font-size: 1rem; font-weight: 300; line-height: 1.9; color: var(--wp--preset--color--texte); }
.solena-pyramide h2,
.solena-formats h2 { font-style: italic; font-weight: 500; font-size: clamp(2rem, 3.5vw, 2.5rem); }
.solena-pyramide__note h3 { font-size: var(--solena-mention); font-weight: 300; letter-spacing: 3px; line-height: 1.2; }
.solena-pyramide__note p { font-size: 1.3rem; line-height: 1.5; }
.solena-histoire h2 { font-style: italic; font-weight: 500; font-size: clamp(1.8rem, 3vw, 2.2rem); }
.solena-histoire p { font-size: 0.95rem; font-weight: 300; line-height: 2.2; }
.solena-histoire strong { font-weight: 400; }
.solena-format__title { font-size: 1.6rem; }
.solena-format__price { font-size: 1.1rem; font-weight: 400; color: var(--wp--preset--color--or-texte); }
.solena-format__options,
.solena-format__phrase { font-size: 0.875rem; font-weight: 300; }
.solena-format__link { font-size: var(--solena-mention); font-weight: 400; letter-spacing: 2px; }

/* Pied de page */
.solena-footer .solena-eyebrow { font-family: var(--wp--preset--font-family--playfair); font-size: 1rem; font-weight: 500; letter-spacing: 2px; }
.solena-footer .has-petit-font-size { font-size: 0.8rem !important; font-weight: 300; }

/* ==========================================================================
   Animations de la home (reprises de la prod)
   ========================================================================== */

/* Le texte part déjà visible (0.4) : il ne disparaît jamais, Google le voit tout de suite */
@keyframes solenaFadeUp {
	from { opacity: 0.4; transform: translateY(12px); }
	to   { opacity: 1; transform: translateY(0); }
}
@keyframes solenaScrollFleche {
	0%, 100% { transform: translateY(0) rotate(45deg); opacity: 0.55; }
	50%      { transform: translateY(7px) rotate(45deg); opacity: 1; }
}

/* Texte du hero : apparaît en montant */
.solena-home-hero .wp-block-cover__inner-container { animation: solenaFadeUp 0.7s cubic-bezier(0.16, 1, 0.3, 1) both; }

/* Petite flèche « faites défiler » en bas du hero : un chevron qui descend doucement */
.solena-home-hero::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 26px;
	z-index: 3;
	width: 11px;
	height: 11px;
	margin-left: -6px;
	border-right: 1.5px solid var(--wp--preset--color--blanc);
	border-bottom: 1.5px solid var(--wp--preset--color--blanc);
	transform: rotate(45deg);
	animation: solenaScrollFleche 2.2s ease-in-out infinite;
}

/* Zoom lent au survol des photos (produits, collections) */
.solena-vedette__media { display: block; overflow: hidden; margin-bottom: 0.75rem; }
.solena-vedette__media .solena-vedette__img { margin-bottom: 0; transition: transform 1.4s ease; }
.solena-vedette__card:hover .solena-vedette__img { transform: scale(1.04); opacity: 1; }
.solena-home-collection .wp-block-media-text__media { overflow: hidden; }
.solena-home-collection .wp-block-media-text__media img { transition: transform 1.6s ease; }
.solena-home-collection:hover .wp-block-media-text__media img { transform: scale(1.03); }

/* Respect du réglage « réduire les animations » du téléphone / ordinateur */
@media (prefers-reduced-motion: reduce) {
	.solena-home-hero .wp-block-cover__inner-container,
	.solena-home-hero::after { animation: none; }
	.solena-vedette__img,
	.solena-home-collection .wp-block-media-text__media img { transition: none; }
}

/* ==========================================================================
   Boutique : catalogue (boutique + catégories) — valeurs relevées sur la prod
   ========================================================================== */

.solena-archive-entete__hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.9rem;
	padding: clamp(3rem, 7vw, 5.5rem) var(--solena-gutter) 2.5rem;
	background: var(--wp--preset--color--creme);
	text-align: center;
}
.solena-archive-entete__hero .solena-eyebrow { font-size: var(--solena-mention); }
.solena-archive-entete__hero h1 { margin: 0; font-style: normal; font-size: clamp(2.2rem, 4vw, 2.8rem); line-height: 1.2; }
.solena-archive-entete__intro { margin: 0; max-width: 560px; font-size: 1.05rem; font-weight: 300; letter-spacing: 0.5px; line-height: 1.8; color: var(--wp--preset--color--texte); }

.solena-points {
	list-style: none;
	margin: 0;
	padding: 1.25rem var(--solena-gutter);
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1rem 2rem;
	background: var(--wp--preset--color--blanc);
	border-bottom: 1px solid var(--wp--preset--color--filet);
	text-align: center;
}
.solena-points li { display: flex; flex-direction: column; gap: 0.25rem; }
.solena-points__titre { font-family: var(--wp--preset--font-family--playfair); font-size: 1.1rem; font-weight: 400; }
.solena-points__detail { font-size: var(--solena-mention); letter-spacing: 2px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); }

.solena-catalogue__produits { padding: clamp(2.5rem, 5vw, 4rem) var(--solena-gutter) var(--wp--preset--spacing--60); }
.solena-catalogue__tri { margin-bottom: 0.5rem; }
.solena-catalogue__tri select { font-family: var(--wp--preset--font-family--inter); font-size: 0.75rem; border: 1px solid var(--wp--preset--color--filet); background: var(--wp--preset--color--blanc); padding: 0.5rem 0.75rem; }

.solena-filtres { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.25rem; margin-bottom: 1rem; }
.solena-filtres__btn {
	min-height: 44px;
	padding: 0.875rem 1.6rem;
	border: 0;
	border-bottom: 1px solid transparent;
	background: none;
	font-family: var(--wp--preset--font-family--inter);
	font-size: var(--solena-mention);
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--wp--preset--color--texte);
	cursor: pointer;
}
.solena-filtres__btn.is-active { color: var(--wp--preset--color--encre); border-bottom-color: var(--wp--preset--color--encre); }
.solena-grille__count { margin: 0 0 1.5rem; font-size: var(--solena-mention); letter-spacing: 2px; text-transform: uppercase; color: var(--wp--preset--color--texte); }
.solena-grille__vide { text-align: center; color: var(--wp--preset--color--texte); }

/* Cartes produits */
.solena-cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
	gap: 30px;
}
.solena-cards--4 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 24px; }
.solena-card[hidden] { display: none; }
.solena-card__link {
	height: 100%;
	display: flex;
	flex-direction: column;
	background: var(--wp--preset--color--blanc);
	border: 1px solid var(--wp--preset--color--filet);
	color: var(--wp--preset--color--encre);
	text-decoration: none;
}
.solena-card__link:hover { color: var(--wp--preset--color--encre); }
.solena-card__media { position: relative; display: block; overflow: hidden; }
.solena-card__img { width: 100%; height: auto; aspect-ratio: 26 / 25; object-fit: cover; display: block; transition: transform 1.4s ease; }
/* Suspensions : photo en hauteur avec un long ruban → dans les listes mélangées, la vignette carrée se cale sur la cire ;
   sur la page Suspensions, où toutes les cartes sont pareilles, la vignette prend le format de la photo (3:4), en entier */
.solena-card[data-cat="suspensions"] .solena-card__img { object-position: 50% 90%; }
.term-suspensions .solena-card[data-cat="suspensions"] .solena-card__img { aspect-ratio: 3 / 4; object-position: 50% 50%; }
/* … et 4 cartes par ligne (comme les petites cartes) pour voir la photo et le nom sans faire défiler */
.term-suspensions .solena-cards { grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 24px; }
/* Téléphone, boutique et catégories : 2 par ligne, « Bientôt disponible » tient sur une ligne (11 px, le minimum du site) */
@media (max-width: 599px) {
	.woocommerce-shop .solena-cards, .tax-product_cat .solena-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.woocommerce-shop .solena-card__body, .tax-product_cat .solena-card__body { padding: 0.9rem 0.6rem 0.75rem; }
	.woocommerce-shop .solena-card .solena-bientot-tag, .tax-product_cat .solena-card .solena-bientot-tag,
	.woocommerce-shop .solena-card__cta, .tax-product_cat .solena-card__cta { padding: 0.6rem 0.2rem; font-size: var(--solena-micro); letter-spacing: 0.5px; white-space: nowrap; text-align: center; }
	.woocommerce-shop .solena-card__title, .tax-product_cat .solena-card__title { font-size: 1rem; }
	.woocommerce-shop .solena-card__badge { left: 8px; bottom: 8px; padding: 4px 7px; letter-spacing: 1.5px; }
}
.solena-card__link:hover .solena-card__img { transform: scale(1.04); }
.solena-card__badge {
	position: absolute;
	left: 16px;
	bottom: 12px;
	padding: 5px 10px;
	background: rgba(26, 26, 26, 0.6);
	color: var(--wp--preset--color--blanc);
	font-size: var(--solena-micro);
	letter-spacing: 3px;
	text-transform: uppercase;
}
.solena-card__body { flex: 1; display: flex; flex-direction: column; gap: 0.5rem; padding: 1.4rem 1.5rem 1.5rem; }
.solena-card__title { font-family: var(--wp--preset--font-family--playfair); font-size: 1.1rem; font-weight: 400; line-height: 1.3; }
.solena-card__price { font-size: 0.85rem; font-weight: 300; color: var(--wp--preset--color--or-texte); }
.solena-card__price del { opacity: 0.6; }
.solena-card .solena-bientot-tag { margin-top: auto; padding: 0.7rem 1rem; font-size: var(--solena-mention); letter-spacing: 3px; }
.solena-card__cta { margin-top: auto; font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; }
.solena-cards--4 .solena-card__title { font-size: 1rem; }

/* Sections « savoir-faire » */
.solena-collection-row { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; background: var(--wp--preset--color--blanc); }
.solena-collection-row.is-reverse { background: var(--wp--preset--color--creme); }
.solena-collection-row.is-reverse .solena-collection-row__media { order: 2; }
.solena-collection-row__media { overflow: hidden; min-height: 420px; }
.solena-collection-row__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.6s ease; }
.solena-collection-row:hover .solena-collection-row__media img { transform: scale(1.03); }
.solena-collection-row__text { display: flex; flex-direction: column; justify-content: center; gap: 1.1rem; padding: var(--wp--preset--spacing--50) max(16px, 6vw); max-width: 620px; }
.solena-collection-row__text h2 { margin: 0; font-style: normal; font-size: clamp(1.8rem, 3vw, 2.2rem); }
.solena-collection-row__texte p { margin: 0 0 1rem; font-size: 0.875rem; font-weight: 300; line-height: 2; color: var(--wp--preset--color--texte); }
.solena-collection-row__texte strong { font-weight: 400; color: var(--wp--preset--color--encre); }
.solena-collection-row .wp-block-button { align-self: flex-start; }
@media (max-width: 781px) {
	.solena-collection-row { grid-template-columns: 1fr; }
	.solena-collection-row.is-reverse .solena-collection-row__media { order: 0; }
	.solena-collection-row__media { min-height: 0; height: 280px; }
	.solena-collection-row__text { padding: 2rem 16px 3rem; }
}

/* ==========================================================================
   Boutique : fiche produit
   ========================================================================== */

.solena-produit__ariane { padding-top: 1.5rem; font-size: var(--solena-mention); letter-spacing: 1px; color: var(--wp--preset--color--texte); }
.solena-produit__ariane a { color: inherit; }
.solena-produit__haut.wp-block-columns { gap: clamp(2rem, 5vw, 4.5rem); margin-top: 1.5rem; margin-bottom: var(--wp--preset--spacing--60); }
.solena-produit__resume { display: flex; flex-direction: column; gap: 1.5rem; }
.solena-produit__resume > * { margin: 0 !important; }
.solena-produit__resume .wp-block-post-title { font-style: normal; font-size: clamp(2rem, 3vw, 2.4rem); line-height: 1.2; }
.solena-produit__resume .wc-block-components-product-price,
.solena-produit__resume .wp-block-woocommerce-product-price { font-size: 1.1rem; font-weight: 300; letter-spacing: 0.5px; color: var(--wp--preset--color--or-texte); }
.solena-produit__accroche { padding-left: 1.25rem; border-left: 1px solid var(--wp--preset--color--or); }
.solena-produit__accroche p { margin: 0; font-size: 0.95rem; font-weight: 300; line-height: 1.9; color: var(--wp--preset--color--texte); }
.solena-produit .solena-bientot-single { margin: 0; padding: 1rem 1.5rem; font-size: var(--solena-mention); }

/* Prix par lot : « 3 suspensions pour 16 € », « Encore 2 suspensions… » (fiche et panier) */
.solena-lot { margin: 0; padding-left: 1.25rem; border-left: 1px solid var(--wp--preset--color--or); font-size: 0.875rem; font-weight: 300; line-height: 1.7; color: var(--wp--preset--color--or-texte); }
.solena-prix-lot { display: flex; flex-direction: column; gap: 0.35rem; }
.solena-prix-lot .solena-lot { padding-left: 0; border-left: 0; font-size: var(--solena-mention); letter-spacing: 0.5px; }
.solena-lot-panier { display: flex; flex-direction: column; gap: 0.5rem; margin: 0 auto 1.5rem; }
.solena-lot-panier[hidden] { display: none; }
.solena-lot-tiroir { margin: 0 16px 1rem; }
.solena-lot-tiroir[hidden] { display: none; }
.solena-tiroir-offre[hidden] { display: none; }
.solena-tiroir-offre .wc-block-components-totals-item { display: flex; justify-content: space-between; gap: 1rem; padding: 0.35rem 0; font-size: 0.875rem; }
.solena-tiroir-total { font-weight: 600; font-size: 1rem !important; }
/* Remise affichée : la mention « les remises sont calculées à la validation » n'a plus lieu d'être */
.wc-block-mini-cart__footer:has(.solena-tiroir-offre:not([hidden])) .wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__description { display: none; }
.solena-lot-avis { display: block; margin-top: 0.25rem; font-weight: 400; }

.solena-produit-infos { margin: 0; border-top: 1px solid var(--wp--preset--color--filet); }
.solena-produit-infos__row { display: grid; grid-template-columns: 110px 1fr; align-items: baseline; gap: 1rem; padding: 0.7rem 0; border-bottom: 1px solid var(--wp--preset--color--filet); }
.solena-produit-infos dt { font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); }
.solena-produit-infos dd { margin: 0; font-size: 0.875rem; font-weight: 300; color: var(--wp--preset--color--texte); }
.solena-produit-infos dd a { color: inherit; }

/* Galerie WooCommerce */
.solena-produit__galerie .woocommerce-product-gallery { margin: 0; }
.solena-produit__galerie .woocommerce-product-gallery__image img { width: 100%; height: auto; display: block; }
/* Miniatures : de vraies vignettes de 72 px (WooCommerce leur impose 25 % de large, d'où des carrés de 13 px) */
.solena-produit__galerie .flex-control-thumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 0; padding: 0; list-style: none; }
.solena-produit__galerie .flex-control-thumbs li { width: 72px !important; float: none !important; margin: 0 !important; }
.solena-produit__galerie .flex-control-thumbs img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; cursor: pointer; opacity: 0.55; border: 1px solid var(--wp--preset--color--filet); transition: opacity 0.2s ease, border-color 0.2s ease; }
.solena-produit__galerie .flex-control-thumbs img:hover { opacity: 0.85; }
.solena-produit__galerie .flex-control-thumbs img.flex-active { opacity: 1; border-color: var(--wp--preset--color--encre); }

/* Pyramide + durées */
.solena-durees { display: flex; justify-content: center; flex-wrap: wrap; gap: 1.5rem 3rem; margin: var(--wp--preset--spacing--40) 0 0; }
.solena-durees > div { display: flex; flex-direction: column; align-items: center; gap: 0.35rem; }
.solena-durees dt { font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--texte); }
.solena-durees dd { margin: 0; font-size: 0.9rem; font-weight: 300; }
.solena-produit-parfum__lien { margin: var(--wp--preset--spacing--40) 0 0; text-align: center; font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; }

/* Engagements */
.solena-engagements-produit { padding-top: var(--wp--preset--spacing--50); padding-bottom: var(--wp--preset--spacing--50); }
.solena-engagements-produit h3 { margin: 0 0 0.75rem; font-size: 0.9rem; letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); }
.solena-engagements-produit p { margin: 0; font-size: 0.875rem; font-weight: 300; line-height: 1.8; }

/* Produits liés */
.solena-lies { padding: var(--wp--preset--spacing--50) 0; }
.solena-lies__titre { margin: 0 0 2.5rem; text-align: center; font-style: normal; font-size: 1.8rem; }
.solena-lies__titre::after { content: ""; display: block; width: 40px; height: 1px; margin: 1rem auto 0; background: var(--wp--preset--color--or); }

/* Galerie : toute la largeur de sa colonne (WooCommerce impose 48 % par défaut) */
.solena-produit__galerie .wp-block-woocommerce-product-image-gallery,
.solena-produit__galerie .woocommerce-product-gallery,
.solena-produit__galerie .images { width: 100% !important; max-width: none !important; float: none !important; }
/* Petites cartes : « Bientôt disponible » sur une ligne */
.solena-cards--4 .solena-bientot-tag { padding: 0.65rem 0.5rem; font-size: var(--solena-micro); letter-spacing: 2px; }
/* Photo produit : tient dans l'écran sans défiler, et n'agrandit pas le fichier (600 × 720) au-delà de sa taille */
@media (min-width: 782px) {
	.solena-produit__haut > .solena-produit__galerie { flex-basis: 40% !important; max-width: 460px; }
	.solena-produit__resume { max-width: 34rem; }
}
@media (max-width: 781px) {
	.solena-produit__haut.wp-block-columns { gap: 1.5rem; }
	.solena-produit__galerie .woocommerce-product-gallery.woocommerce-product-gallery { max-width: 300px !important; margin-inline: auto; }
	/* Mobile : le nom du produit passe au-dessus de la photo, le prix et l'achat restent dessous */
	.solena-produit__haut > .solena-produit__resume { display: contents; }
	.solena-produit__haut > .solena-produit__resume > * { flex: 0 0 100%; min-width: 0; box-sizing: border-box; }
	.solena-produit__haut > .solena-produit__resume > .wp-block-post-title { order: -1; }
}

/* ==========================================================================
   En-tête parfum en blocs WordPress (photo / titre / accroche éditables sur place)
   ========================================================================== */

.solena-hero > .solena-hero__img {
	position: absolute;
	inset: 0;
	margin: 0 !important;
	height: 100%;
}
.solena-hero > .solena-hero__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: right center;
}
/* Ordinateur : la photo (presque carrée) occupe la moitié droite, au lieu de remplir toute la largeur et d'être zoomée */
@media (min-width: 761px) {
	.solena-hero > .solena-hero__img {
		left: auto;
		right: 0;
		width: 62%;
		-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%);
		mask-image: linear-gradient(90deg, transparent 0%, #000 22%);
	}
}
.solena-hero__text > * { margin-block: 0 !important; }
.solena-hero__text .solena-hero__title { margin: 0; }
.solena-hero__accroche p { margin: 0; font-size: 1rem; font-weight: 300; line-height: 1.9; color: var(--wp--preset--color--texte); }
.solena-surtitre { display: flex; flex-direction: column; gap: 1.375rem; }
@media (max-width: 760px) {
	.solena-hero > .solena-hero__img { position: static; height: 300px; }
	.solena-hero > .solena-hero__img img { object-position: 78% center; }
	.solena-surtitre { gap: 1rem; }
}

/* Header collant (desktop + mobile) : le sticky doit être posé sur le <header> parent,
   le groupe intérieur ne peut pas coller car il fait la même hauteur que son parent */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 100;
}
body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; } }
.solena-header { position: relative; top: auto !important; }

/* ==========================================================================
   Bibliothèque des parfums (/parfums/) — piste A par familles
   ========================================================================== */

.solena-parfums__hero { padding: clamp(3.5rem, 7vw, 5rem) var(--solena-gutter) 3rem; }
.solena-parfums__hero > * { margin-block: 0 !important; }
.solena-parfums__hero .solena-eyebrow { font-size: var(--solena-mention); }
.solena-parfums__hero h1 { margin-top: 0.6rem !important; margin-bottom: 1.1rem !important; font-size: clamp(2.6rem, 5vw, 3.5rem); }
.solena-parfums__intro { font-size: 0.9rem; font-weight: 300; letter-spacing: 1px; line-height: 1.8; color: var(--wp--preset--color--texte); }
.solena-parfums__liste { padding: clamp(2.5rem, 5vw, 3.75rem) var(--solena-gutter) var(--wp--preset--spacing--60); }

.solena-biblio { display: flex; flex-direction: column; gap: clamp(3rem, 6vw, 4.5rem); }
.solena-biblio__filtres { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.solena-biblio__filtre {
	min-height: 40px;
	padding: 0 18px;
	border: 1px solid var(--solena-filet-fonce);
	border-radius: 20px;
	background: var(--wp--preset--color--blanc);
	color: var(--wp--preset--color--encre);
	font-family: var(--wp--preset--font-family--inter);
	font-size: var(--solena-mention);
	letter-spacing: 2px;
	text-transform: uppercase;
	cursor: pointer;
}
.solena-biblio__filtre.is-active { background: var(--wp--preset--color--encre); border-color: var(--wp--preset--color--encre); color: var(--wp--preset--color--blanc); }

.solena-biblio__famille[hidden], .solena-biblio__parfum[hidden] { display: none; }
.solena-biblio__titre {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	margin: 0 0 2.5rem;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--wp--preset--color--filet);
	font-size: 1.3rem;
	font-style: italic;
	font-weight: 500;
}
.solena-biblio__puce { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.solena-biblio__texte { font-family: var(--wp--preset--font-family--inter); font-style: normal; font-weight: 300; font-size: 0.875rem; color: var(--wp--preset--color--texte); }
.solena-biblio__compte { margin-left: auto; font-family: var(--wp--preset--font-family--inter); font-style: normal; font-weight: 400; font-size: var(--solena-mention); letter-spacing: 2px; text-transform: uppercase; color: var(--wp--preset--color--texte); }

.solena-biblio__grille {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 40px 24px;
}
.solena-biblio__parfum a { display: flex; flex-direction: column; align-items: center; text-align: center; color: var(--wp--preset--color--encre); text-decoration: none; }
.solena-biblio__pastille { width: 100px; height: 100px; border-radius: 50%; margin-bottom: 18px; transition: transform 0.35s ease; }
.solena-biblio__parfum a:hover .solena-biblio__pastille { transform: scale(1.06); }
.solena-biblio__nom { font-family: var(--wp--preset--font-family--playfair); font-size: 1.05rem; line-height: 1.3; margin-bottom: 6px; }
.solena-biblio__famille-texte { font-size: var(--solena-mention); letter-spacing: 2px; text-transform: uppercase; color: var(--wp--preset--color--texte); margin-bottom: 12px; }
.solena-biblio__saison { font-size: var(--solena-mention); letter-spacing: 2px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); margin: -4px 0 12px; }
.solena-biblio__tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.solena-biblio__tag { padding: 3px 8px; border: 1px solid var(--solena-filet-fonce); border-radius: 20px; font-size: var(--solena-micro); letter-spacing: 1.5px; text-transform: uppercase; color: var(--wp--preset--color--texte); }
.solena-biblio__tag.is-bientot { border-style: dashed; color: var(--wp--preset--color--texte); }
.solena-biblio__cta { margin-top: 12px; padding-bottom: 2px; border-bottom: 1px solid var(--wp--preset--color--or); font-size: var(--solena-micro); font-weight: 500; letter-spacing: 1px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); }
.solena-biblio__vide { text-align: center; color: var(--wp--preset--color--texte); }

@media (max-width: 1100px) { .solena-biblio__grille { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 860px) { .solena-biblio__grille { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) {
	.solena-biblio__grille { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 12px; }
	.solena-biblio__pastille { width: 76px; height: 76px; }
	.solena-biblio__texte { flex-basis: 100%; order: 3; }
}

/* Engagements de la page Parfums, avec pictogrammes */
.solena-engagements-parfums { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--60); border-top: 1px solid var(--wp--preset--color--filet); }
.solena-engagements-parfums .wp-block-column::before {
	content: "";
	display: block;
	width: 28px;
	height: 28px;
	margin: 0 auto 10px;
	background: no-repeat center / contain;
}
.solena-engagements-parfums .is-picto-cire::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a063' stroke-width='1.2'%3E%3Cpath d='M12 3 4 20h16z'/%3E%3C/svg%3E"); }
.solena-engagements-parfums .is-picto-goutte::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a063' stroke-width='1.2'%3E%3Cpath d='M12 3c4 5 6 8 6 11a6 6 0 0 1-12 0c0-3 2-6 6-11z'/%3E%3C/svg%3E"); }
.solena-engagements-parfums .is-picto-coeur::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a063' stroke-width='1.2'%3E%3Cpath d='M12 20s-7-4.5-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.5-7 10-7 10z'/%3E%3C/svg%3E"); }
.solena-engagements-parfums h3 { margin: 0 0 0.9rem; font-size: 0.8rem; letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--or-texte); }
.solena-engagements-parfums p { margin: 0; font-size: 0.875rem; font-weight: 300; line-height: 1.8; }

/* Éditeur : l'accroche du parfum n'a pas de lien « Lire la suite », on masque son champ vide */
.editor-styles-wrapper .solena-hero__accroche .wp-block-post-excerpt__more-text,
.editor-styles-wrapper .solena-hero__accroche .wp-block-post-excerpt__more-link {
	display: none;
}

/* Pages courantes (panier, commande, compte, pages légales) : titre sobre, à l'échelle des fiches produit */
.wp-block-post-title.solena-page__titre,
[data-page="cart"] .wp-block-post-title,
[data-page="checkout"] .wp-block-post-title,
.wc-block-order-confirmation-status h1 {
	font-size: clamp(2rem, 3.2vw, 2.6rem);
	line-height: 1.2;
	margin-bottom: 1.5rem;
}

/* Panier vide : message, liens, coups de cœur */
.solena-panier-vide {
	padding: clamp(1.5rem, 4vw, 3rem) 0 clamp(2rem, 5vw, 3.5rem);
}
.solena-panier-vide .solena-panier-vide__titre {
	margin: 0.6rem 0 1rem;
	font-size: clamp(1.7rem, 3vw, 2.3rem);
	font-style: italic;
	line-height: 1.2;
}
.solena-panier-vide p:not(.solena-eyebrow) {
	color: var(--wp--preset--color--texte);
	margin-bottom: 2rem;
}
.solena-panier-vide__suggestions {
	border-top: 1px solid var(--wp--preset--color--filet);
	padding-top: clamp(2rem, 5vw, 3.5rem);
	margin-bottom: clamp(2rem, 5vw, 4rem);
}
.solena-panier-vide__suggestions .solena-eyebrow {
	margin-bottom: 2rem;
}

/* Panier et commande : champs et encadrés aux angles droits, filets Solena */
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-select-input select,
.wp-block-woocommerce-checkout .wc-blocks-components-select__select,
.wp-block-woocommerce-checkout .wc-block-components-textarea,
.wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked,
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option,
.wp-block-woocommerce-checkout .wc-block-components-address-card,
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__content,
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-totals-coupon .wc-block-components-text-input input,
.wc-block-components-quantity-selector {
	border-radius: 0 !important;
}
.wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout .wc-block-components-address-card {
	border-color: var(--wp--preset--color--filet) !important;
}
.wp-block-woocommerce-checkout-order-summary-block {
	background: var(--wp--preset--color--creme);
}
.wp-block-woocommerce-checkout .wc-block-components-text-input input:focus,
.wp-block-woocommerce-checkout .wc-blocks-components-select__select:focus {
	border-color: var(--wp--preset--color--encre);
	box-shadow: 0 0 0 1px var(--wp--preset--color--encre);
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox input[type="checkbox"]:checked,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked {
	accent-color: var(--wp--preset--color--encre);
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity {
	background: var(--wp--preset--color--encre) !important;
	color: var(--wp--preset--color--blanc) !important;
	border-color: var(--wp--preset--color--creme) !important;
}

/* WooCommerce limite le titre du panier à 1000 px : on l'aligne sur la largeur du site, comme le panier */
[data-page="cart"] > .wp-block-post-title.alignwide,
[data-page="checkout"] > .wp-block-post-title.alignwide {
	max-width: var(--wp--style--global--wide-size);
}

/* Page « Commande reçue » : message de remerciement à l'échelle du site */
.wc-block-order-confirmation-status h1 { margin-bottom: 1rem; }
.wc-block-order-confirmation-status p { font-size: 1.125rem; color: var(--wp--preset--color--texte); }

/* Parfum hors saison : mention discrète, sur la page du parfum et sur ses fiches produit */
.solena-hors-saison {
	display: inline-block;
	margin: 0.6rem 0 0;
	padding: 0.45rem 0.9rem;
	border: 1px solid var(--wp--preset--color--or);
	color: var(--wp--preset--color--or-texte);
	font-size: 0.72rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.wp-block-woocommerce-product-template .solena-hors-saison,
.solena-produit__resume .solena-hors-saison {
	margin: 1.2rem 0;
}

/* Pied de page : « Gérer les cookies » rouvre le bandeau (bouton Complianz), présenté comme les autres liens */
.solena-lien-cookies {
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	cursor: pointer;
}

/* ==========================================================================
   Parcours d'achat : formulaire de la fiche produit, panier, mini-panier, commande, compte
   (caché aux visiteurs jusqu'à l'ouverture, d'où ces réglages ajoutés en octobre 2026)
   ========================================================================== */

/* Fiche produit : choix de la taille, quantité, bouton */
.solena-produit form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.75rem; margin: 0; }
.solena-produit form.variations_form { display: block; }
.solena-produit .single_variation_wrap .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.75rem; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations { display: block; width: 100%; margin: 0 0 1.25rem; border: 0; border-collapse: collapse; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations tbody,
.solena-produit .wp-block-add-to-cart-form form.cart table.variations tr { display: block; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations th,
.solena-produit .wp-block-add-to-cart-form form.cart table.variations td { display: block; padding: 0; border: 0; text-align: left; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations th.label { margin-bottom: 0.6rem; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations label {
	font-size: var(--solena-mention);
	font-weight: 400;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--wp--preset--color--or-texte);
}
.solena-produit .wp-block-add-to-cart-form form.cart table.variations td.value { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 1rem; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations select {
	appearance: none;
	min-width: min(100%, 240px);
	max-width: 100%;
	height: 48px;
	margin: 0;
	line-height: normal;
	padding: 0 2.75rem 0 1rem;
	border: 1px solid var(--solena-filet-fonce);
	border-radius: 0;
	background: var(--wp--preset--color--blanc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231a1a1a' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 1rem center;
	font: inherit;
	font-size: 0.9375rem;
	font-weight: 300;
	color: var(--wp--preset--color--encre);
	cursor: pointer;
}
.solena-produit .wp-block-add-to-cart-form form.cart table.variations select:hover { border-color: var(--wp--preset--color--encre); }

/* Choix en boutons avec vignette (motifs des suspensions) : la liste d'origine reste, cachée, pour WooCommerce */
.solena-produit .wp-block-add-to-cart-form form.cart table.variations select.solena-choix__liste { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); opacity: 0; pointer-events: none; }
.solena-choix__cellule .reset_variations { display: none !important; }
.solena-choix__nom { letter-spacing: 1px; text-transform: none; color: var(--wp--preset--color--encre); }
.solena-choix { display: flex; flex-wrap: wrap; gap: 12px; }
.solena-choix__bouton { display: flex; flex-direction: column; align-items: center; gap: 6px; width: 84px; padding: 6px 6px 8px; border: 1px solid var(--wp--preset--color--filet); background: var(--wp--preset--color--blanc); color: var(--wp--preset--color--encre); font: inherit; font-size: 0.8rem; font-weight: 300; cursor: pointer; transition: border-color 0.2s ease; }
.solena-choix__bouton img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; }
.solena-choix__bouton:hover { border-color: var(--solena-filet-fonce); }
.solena-choix__bouton[aria-checked="true"] { border-color: var(--wp--preset--color--encre); box-shadow: inset 0 0 0 1px var(--wp--preset--color--encre); }
.solena-choix__bouton:focus-visible { outline: 2px solid var(--wp--preset--color--or); outline-offset: 2px; }
.solena-produit .wp-block-add-to-cart-form form.cart table.variations select:focus-visible { outline: 2px solid var(--wp--preset--color--encre); outline-offset: 2px; }
.solena-produit .reset_variations { font-size: var(--solena-mention); color: var(--wp--preset--color--texte); text-underline-offset: 3px; }
.solena-produit .woocommerce-variation-price { margin-bottom: 1rem; }
.solena-produit .woocommerce-variation-price .price { font-size: 1.1rem; font-weight: 300; color: var(--wp--preset--color--or-texte); }
.solena-produit .wp-block-add-to-cart-form form.cart .quantity .qty {
	width: 4.5rem;
	height: 100%;
	min-height: 48px;
	padding: 0 0.5rem;
	border: 1px solid var(--solena-filet-fonce);
	border-radius: 0;
	background: var(--wp--preset--color--blanc);
	font: inherit;
	font-size: 0.9375rem;
	text-align: center;
	color: var(--wp--preset--color--encre);
}
.solena-produit .wp-block-add-to-cart-form form.cart .quantity .qty:focus-visible { outline: 2px solid var(--wp--preset--color--encre); outline-offset: 2px; }
.solena-produit .single_add_to_cart_button { flex: 1 1 220px; }
.solena-produit .single_add_to_cart_button.disabled { opacity: 0.4; cursor: not-allowed; }

/* Messages (« ajouté au panier », erreurs) : aux couleurs de la maison, angles droits */
.wc-block-components-notice-banner { border-radius: 0 !important; font-size: 0.875rem; }
.wc-block-components-notice-banner.is-success {
	background: var(--wp--preset--color--creme) !important;
	border-color: var(--wp--preset--color--or) !important;
	color: var(--wp--preset--color--encre) !important;
}
.wc-block-components-notice-banner.is-success > svg { background: var(--wp--preset--color--or-texte) !important; fill: var(--wp--preset--color--blanc) !important; }
.wc-block-components-notice-banner .wc-forward { color: var(--wp--preset--color--encre) !important; opacity: 1 !important; text-underline-offset: 3px; }

/* Panier et mini-panier : quantité et suppression assez grandes pour un doigt */
.wc-block-cart-item__quantity .wc-block-components-quantity-selector,
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector { min-height: 40px; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { min-width: 40px; font-family: inherit; }
.wc-block-cart-item__remove-link,
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link { box-sizing: content-box; padding: 10px !important; margin: -10px 0 !important; }
.wc-block-components-product-details { font-size: 0.8125rem; }

/* Mini-panier : boutons sur une ligne, titre à l'échelle */
.wc-block-mini-cart__footer-actions .wc-block-components-button { letter-spacing: 1.5px; white-space: nowrap; padding-inline: 1rem; }
.wc-block-mini-cart__title { font-size: 1.5rem; font-weight: 400; }

/* Commande : titres de section et résumé dans la même voix (Playfair 400) */
.wp-block-woocommerce-checkout .wc-block-components-title,
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
	font-family: var(--wp--preset--font-family--playfair, 'Playfair Display', Georgia, serif);
	font-weight: 400;
}
/* Bouton « Payer ma commande » (formule sans ambiguïté exigée par l'article L221-14 du Code de la consommation) */
.wc-block-components-checkout-place-order-button { letter-spacing: 1.5px; }

/* Mon compte : formulaire de connexion aux angles droits */
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password { border: 1px solid var(--wp--preset--color--filet); border-radius: 0; }
.woocommerce form .input-text { border-radius: 0; border-color: var(--solena-filet-fonce); }
.woocommerce form .input-text:focus { border-color: var(--wp--preset--color--encre); outline: none; box-shadow: 0 0 0 1px var(--wp--preset--color--encre); }
.woocommerce form .woocommerce-form-login__rememberme input { accent-color: var(--wp--preset--color--encre); width: 16px; height: 16px; vertical-align: -3px; }

/* Commande reçue : les instructions de paiement juste sous le remerciement, l'invitation à créer un compte en fin de page */
.solena-confirmation { padding-bottom: var(--wp--preset--spacing--50); }
.solena-confirmation__paiement:not(:empty) {
	margin-block: 1.5rem 2.5rem;
	padding: 1.25rem 1.5rem;
	border: 1px solid var(--wp--preset--color--or);
	background: var(--wp--preset--color--creme);
	font-size: 1rem;
}
.solena-confirmation__paiement p { margin: 0; }
.solena-confirmation .wp-block-woocommerce-order-confirmation-create-account {
	margin-top: var(--wp--preset--spacing--50);
	background: var(--wp--preset--color--creme) !important;
	border: 1px solid var(--wp--preset--color--filet);
}
.solena-confirmation .wc-block-order-confirmation-totals__table,
.solena-confirmation .wc-block-order-confirmation-shipping-address,
.solena-confirmation .wc-block-order-confirmation-billing-address,
.solena-confirmation .wc-block-components-additional-fields-list {
	border-radius: 0;
	border-color: var(--wp--preset--color--filet);
}

/* Commande : fil d'étapes Panier › Commande › Confirmation */
.solena-etapes { margin-bottom: 1rem; }
.solena-etapes ol { display: flex; flex-wrap: wrap; gap: 0.25rem 0; margin: 0; padding: 0; list-style: none; font-size: var(--solena-mention); letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--texte); }
.solena-etapes li + li::before { content: "›"; margin: 0 0.75rem; color: var(--wp--preset--color--or); }
.solena-etapes a { color: var(--wp--preset--color--or-texte); text-underline-offset: 3px; }
.solena-etapes [aria-current] { color: var(--wp--preset--color--encre); }
@media (max-width: 480px) {
	.solena-etapes ol { letter-spacing: 1.5px; }
	.solena-etapes li + li::before { margin: 0 0.5rem; }
}
