/*
Theme Name: Atelier 316 (Blocksy enfant)
Template: blocksy
Description: Thème enfant de Blocksy pour Atelier 316. Les ajouts de code et de CSS se font ici, pour ne rien perdre lors des mises à jour de Blocksy.
Author: Atelier 316
Version: 1.10.1
Text Domain: atelier316
*/

.atelier316-livraison-fiche {
	color: var(--theme-palette-color-4);
	font-weight: 500;
}

/* ---------- Page d'accueil ---------- */
.a316-wrap { max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 40px; padding-right: 40px; box-sizing: border-box; width: 100%; }
.a316-section { padding: 88px 0; }
.a316-section--serree { padding-top: 0; }
.a316-fond-creme { background: var(--theme-palette-color-7); }
.a316-fond-jaune { background: var(--theme-palette-color-6); }
.a316-fond-rose { background: #FBE3E2; }
.a316-fond-blanc { background: #FFFFFF; }
.a316-surtitre { margin: 0 0 8px; font-size: 13px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--theme-palette-color-1); }
.a316-titre { margin: 0; font-family: 'Bodoni Moda', serif; font-weight: 500; font-size: 42px; line-height: 1.15; color: var(--theme-palette-color-4); }
.a316-titre--moyen { font-size: 32px; }
.a316-sous-titre { margin: 10px 0 44px; font-size: 17px; }
.a316-centre { text-align: center; }
.a316-entete-section { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 40px; }
.a316-lien, .a316-voir { color: var(--theme-palette-color-1); font-weight: 500; font-size: 15px; }
.a316-grille { display: grid; gap: 28px; }
.a316-grille--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.a316-grille--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.a316-grille--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }

/* Bannière */
.a316-hero { position: relative; overflow: hidden; background: var(--theme-palette-color-6); }
.a316-hero::before { content: ""; position: absolute; width: 380px; height: 380px; border-radius: 50%; background: #F5C84C; left: -120px; bottom: -190px; }
.a316-hero::after { content: ""; position: absolute; width: 90px; height: 90px; border-radius: 50%; background: var(--theme-palette-color-1); left: 47%; top: 46px; }
.a316-hero__inner { position: relative; z-index: 1; padding-top: 80px; padding-bottom: 88px; gap: 56px !important; align-items: center !important; margin-bottom: 0 !important; }
.a316-hero__titre { margin: 0 0 22px; font-family: 'Bodoni Moda', serif; font-weight: 500; font-size: 60px; line-height: 1.05; color: var(--theme-palette-color-4); }
.a316-hero__titre em { font-style: italic; color: var(--theme-palette-color-1); }
.a316-hero__intro { font-size: 19px; line-height: 1.6; max-width: 520px; }
.a316-boutons { gap: 14px; margin-top: 30px; }
.a316-btn .wp-block-button__link { border-radius: 999px; padding: 15px 30px; font-weight: 500; font-size: 16px; background: var(--theme-palette-color-1); color: #FFFFFF; }
.a316-btn .wp-block-button__link:hover { background: var(--theme-palette-color-2); }
.a316-btn--contour .wp-block-button__link { background: transparent; color: var(--theme-palette-color-4); border: 1.5px solid var(--theme-palette-color-4); }
.a316-btn--contour .wp-block-button__link:hover { background: var(--theme-palette-color-4); color: #FFFFFF; }
.a316-hero__visuel { display: flex; justify-content: center; }
.a316-arche { width: 440px; max-width: 100%; height: 520px; border-radius: 220px 220px 24px 24px; background: #FBE3E2; border: 8px solid #FFFFFF; box-shadow: 0 24px 60px rgba(42,26,46,0.12); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; font-size: 14px; font-weight: 500; box-sizing: border-box; }

/* Réassurance */
.a316-reassurance { background: #FFFFFF; border-bottom: 1px solid var(--theme-palette-color-5); }
.a316-reassurance__grille { padding-top: 28px; padding-bottom: 28px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.a316-atout { display: flex; gap: 14px; align-items: center; font-size: 15px; line-height: 1.35; }
.a316-atout strong { color: var(--theme-palette-color-4); font-weight: 600; }
.a316-atout__icone { width: 48px; height: 48px; flex: none; border-radius: 50%; background: var(--theme-palette-color-6); color: var(--theme-palette-color-1); display: flex; align-items: center; justify-content: center; }

/* Catégories */
.a316-pastilles { display: flex; gap: 10px; flex-wrap: wrap; }
.a316-pastille { display: flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 999px; font-weight: 500; font-size: 15px; color: var(--theme-palette-color-4); text-decoration: none; }
.a316-pastille span { width: 12px; height: 12px; border-radius: 50%; }
.a316-pastille--dore { background: var(--theme-palette-color-6); }
.a316-pastille--dore span, .a316-dore { background: #D9B45F; }
.a316-pastille--argent { background: #F1EEF0; }
.a316-pastille--argent span, .a316-argent { background: #B9B7BC; }
.a316-carte { display: flex; flex-direction: column; gap: 14px; color: inherit; text-decoration: none; }
.a316-photo { height: 400px; border-radius: 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; font-size: 13px; }
.a316-carte__ligne { display: flex; justify-content: space-between; align-items: baseline; margin-top: 4px; }
.a316-carte__nom { font-family: 'Bodoni Moda', serif; font-size: 28px; color: var(--theme-palette-color-4); }
.a316-carte__desc { font-size: 15px; }

/* Nouveautés */
.a316-nouveautes ul.products { margin-bottom: 0; }

/* Collections */
.a316-collection { display: flex; flex-direction: column; align-items: center; gap: 16px; color: var(--theme-palette-color-4); text-decoration: none; font-size: 17px; font-weight: 500; }
.a316-rond { width: 168px; height: 168px; max-width: 100%; aspect-ratio: 1; border-radius: 50%; border: 6px solid #FFFFFF; box-shadow: 0 0 0 1px var(--theme-palette-color-5); display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 400; color: var(--theme-palette-color-3); box-sizing: border-box; }

/* Doré ou argenté */
.a316-finitions { padding: 72px 0; }
.a316-finition { border-radius: 20px; padding: 44px; display: flex; flex-direction: column; gap: 12px; color: var(--theme-palette-color-4); text-decoration: none; }
.a316-finition__rond { width: 56px; height: 56px; border-radius: 50%; }
.a316-finition__titre { font-family: 'Bodoni Moda', serif; font-size: 32px; }
.a316-finition__texte { font-size: 16px; line-height: 1.55; color: var(--theme-palette-color-3); }

/* Pourquoi l'acier */
.a316-acier { gap: 64px !important; margin-bottom: 0 !important; }
.a316-acier p { font-size: 17px; line-height: 1.7; }
.a316-acier .a316-titre { font-size: 40px; margin-bottom: 18px; }
.a316-photo--acier { height: 360px; border-radius: 24px; position: relative; }
.a316-photo--acier::after { content: ""; position: absolute; width: 70px; height: 70px; border-radius: 50%; background: var(--theme-palette-color-1); right: 34px; top: 30px; }

/* Livraison */
.a316-livraison-bloc { background: #FFFFFF; border: 1px solid var(--theme-palette-color-5); border-radius: 24px; padding: 44px 48px; display: flex; gap: 40px; align-items: center; flex-wrap: wrap; }
.a316-livraison-bloc__texte { flex: 1 1 300px; }
.a316-livraison-bloc__texte p { margin: 8px 0 0; }
.a316-tarifs { flex: 2 1 520px; gap: 16px; }
.a316-tarif { background: var(--theme-palette-color-7); border: 1px solid var(--theme-palette-color-5); border-radius: 16px; padding: 20px; display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
.a316-tarif strong { font-size: 28px; font-weight: 600; color: var(--theme-palette-color-4); }
.a316-tarif--offert { background: #F5C84C; border-color: #F5C84C; color: var(--theme-palette-color-4); font-weight: 500; }
.a316-tarif small { font-size: 13px; font-weight: 400; }

/* Téléphone et tablette */
@media (max-width: 999px) {
	.a316-reassurance__grille { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.a316-grille--2 { grid-template-columns: minmax(0, 1fr); }
	.a316-grille--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 689px) {
	.a316-wrap { padding-left: 20px; padding-right: 20px; }
	.a316-section { padding: 56px 0; }
	.a316-section--serree { padding-top: 0; }
	.a316-titre { font-size: 32px; }
	.a316-hero__inner { padding-top: 48px; padding-bottom: 56px; gap: 32px !important; }
	.a316-hero__titre { font-size: 40px; }
	.a316-hero::after { left: auto; right: -20px; top: 20px; width: 60px; height: 60px; }
	.a316-arche { height: 340px; width: 280px; border-radius: 140px 140px 20px 20px; }
	.a316-grille--3, .a316-reassurance__grille { grid-template-columns: minmax(0, 1fr); }
	.a316-grille--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.a316-tarifs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; flex-basis: 100%; }
	.a316-tarif { padding: 14px 12px; }
	.a316-tarif strong { font-size: 20px; }
	.a316-photo { height: 280px; }
	.a316-rond { width: 130px; height: 130px; }
	.a316-finition { padding: 30px; }
	.a316-livraison-bloc { padding: 28px 22px; }
}

/* Accueil : pleine largeur, sans titre de page ni espaces entre les sections */
.home .hero-section { display: none; }
.home #main > .ct-container-full,
.home #main .ct-container-full[data-vertical-spacing] { padding-top: 0; padding-bottom: 0; }
.home .entry-content > * { margin-top: 0; margin-bottom: 0; }
.home .entry-content > .alignfull { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; width: 100vw; }
.a316-nouveautes:not(:has(ul.products)) { display: none; }
.a316-btn.is-style-outline .wp-block-button__link { background: transparent; color: var(--theme-palette-color-4); border: 1.5px solid var(--theme-palette-color-4); }
.a316-btn.is-style-outline .wp-block-button__link:hover { background: var(--theme-palette-color-4); color: #FFFFFF; }

/* Bandeau d'annonce */
.a316-annonce { margin: 0; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 6px 28px; color: var(--theme-palette-color-4); font-size: 14px; font-weight: 500; letter-spacing: 0.02em; text-align: center; }
.a316-annonce__point { width: 5px; height: 5px; border-radius: 50%; background: var(--theme-palette-color-1); }
[data-row="top"] .ct-header-text { width: 100%; }

/* Pied de page aubergine */
#footer [data-row="middle"], #footer [data-row="bottom"] { background: var(--theme-palette-color-4); color: var(--theme-palette-color-7); }
#footer [data-row="middle"] { padding-top: 24px; }
#footer [data-row="bottom"] { border-top: 1px solid rgba(255, 252, 245, 0.18); font-size: 13px; }
#footer [data-row="bottom"] .ct-footer-copyright { color: rgba(255, 252, 245, 0.75); }
.a316-pied { color: var(--theme-palette-color-7); font-size: 15px; line-height: 1.6; }
.a316-pied p { margin: 0 0 14px; }
.a316-pied__logo { display: block; height: 29px; width: auto; margin-bottom: 16px; }
.a316-pied__titre { font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.a316-pied ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.a316-pied a { color: #F5C84C; text-decoration: none; }
.a316-pied a:hover { color: #FFFFFF; }
.entry-content .a316-btn--contour .wp-block-button__link.wp-element-button { background: transparent !important; color: var(--theme-palette-color-4) !important; border: 1.5px solid var(--theme-palette-color-4) !important; }
.entry-content .a316-btn--contour .wp-block-button__link.wp-element-button:hover { background: var(--theme-palette-color-4) !important; color: #FFFFFF !important; }
@media (max-width: 689px) {
	.a316-annonce { font-size: 13px; gap: 0 10px; }
	.a316-annonce__point { display: none; }
	.a316-tarifs { grid-template-columns: minmax(0, 1fr); }
	.a316-tarif { flex-direction: row; flex-wrap: wrap; align-items: baseline; justify-content: space-between; column-gap: 12px; }
	.a316-tarif small { width: 100%; }
}
@media (max-width: 689px) {
	.a316-annonce__second { display: none; }
}

/* ===== Cartes produits (boutique, catégories, similaires) — v1.1.5 ===== */
ul.products[data-products] li.product {
	background: #fff;
	border: 1px solid #EADCD9;
	border-radius: 16px;
	padding: 10px 10px 18px;
	text-align: center;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
ul.products[data-products] li.product:hover {
	transform: translateY(-3px);
	border-color: #E8B9C1;
	box-shadow: 0 14px 30px -18px rgba(74, 58, 77, .45);
}
ul.products[data-products] li.product figure {
	margin-bottom: 14px;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}
ul.products[data-products] li.product figure img {
	aspect-ratio: 1 / 1 !important;
	object-fit: contain;
	transition: transform .5s ease;
}
ul.products[data-products] li.product:hover figure img {
	transform: scale(1.04);
}
ul.products[data-products] li.product .woocommerce-loop-product__title {
	font-family: "Bodoni Moda", Georgia, serif;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.25;
	margin: 0 6px 8px;
	text-wrap: balance;
}
ul.products[data-products] li.product .woocommerce-loop-product__title a {
	color: #2A1A2E;
}
ul.products[data-products] li.product .entry-meta {
	display: none !important;
}
ul.products[data-products] li.product .price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	margin-bottom: 14px;
}
.a316-fin-carte {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #4A3A4D;
}
.a316-dot {
	flex: 0 0 13px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	display: inline-block;
	box-shadow: inset 0 0 0 1px rgba(42, 26, 46, .12);
}
/* Pastilles doré / argenté : cartes, fiche produit et filtre Finition de la boutique */
.a316-dot--dore,
.single-product form.variations_form .ct-swatch-container[data-value^="dore"] .ct-swatch-content,
.ct-filter-widget .ct-swatch-container[data-value^="dore"] .ct-swatch-content {
	background: radial-gradient(circle at 35% 30%, #FBE7A1 0%, #E2B84D 45%, #B08A4A 100%) !important;
}
.a316-dot--argente,
.single-product form.variations_form .ct-swatch-container[data-value^="argente"] .ct-swatch-content,
.ct-filter-widget .ct-swatch-container[data-value^="argente"] .ct-swatch-content {
	background: radial-gradient(circle at 35% 30%, #FFFFFF 0%, #D7DADE 45%, #9DA3AA 100%) !important;
}
.ct-filter-widget[data-swatches-type="color"] .ct-swatch { padding: 0; border: 0; overflow: visible; }
.ct-filter-widget[data-swatches-type="color"] .ct-swatch-content { box-shadow: inset 0 0 0 1px rgba(42, 26, 46, .12); }
.a316-fin-carte__texte {
	margin-left: 3px;
}
.a316-prix {
	font-size: 16px;
	font-weight: 600;
	color: #2A1A2E;
}
.a316-des {
	font-weight: 400;
	font-size: 14px;
	color: #4A3A4D;
}
ul.products[data-products] li.product .button {
	background: transparent !important;
	color: #2A1A2E !important;
	border: 1px solid #2A1A2E !important;
	border-radius: 999px !important;
	min-height: 38px;
	padding: 0 20px !important;
	font-size: 12px !important;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}
ul.products[data-products] li.product .button:hover {
	background: #CC3450 !important;
	border-color: #CC3450 !important;
	color: #fff !important;
}
ul.products[data-products] li.product .ct-woo-card-actions {
	justify-content: center;
}
ul.products[data-products] li.product .button {
	white-space: nowrap;
}
@media (max-width: 689px) {
	.a316-fin-carte__texte {
		display: none;
	}
	ul.products[data-products] li.product {
		padding: 6px 6px 14px;
		border-radius: 12px;
	}
	ul.products[data-products] li.product .woocommerce-loop-product__title {
		font-size: 15px;
	}
	ul.products[data-products] li.product .button {
		padding: 0 10px !important;
		font-size: 10.5px !important;
		letter-spacing: .04em;
	}
}
/* v1.9.82 : sur téléphone, les photos de la carte défilent au doigt (trait fin sous la photo) */
@media (hover: none) {
	.a316-defil {
		display: block;
		width: 100%;
	}
	.a316-defil__bande {
		display: flex;
		gap: 2px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.a316-defil__bande::-webkit-scrollbar {
		display: none;
	}
	ul.products[data-products] li.product .a316-defil__bande img {
		flex: 0 0 100%;
		min-width: 0;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}
	.a316-defil__trait {
		display: block;
		height: 2px;
		margin: 8px 18% 0;
		background: #EFE6E8;
		border-radius: 2px;
		overflow: hidden;
	}
	.a316-defil__trait i {
		display: block;
		height: 100%;
		background: rgba(42, 26, 46, .45);
		transition: transform .25s;
	}
}
@media (prefers-reduced-motion: reduce) {
	ul.products[data-products] li.product,
	ul.products[data-products] li.product figure img {
		transition: none;
	}
	ul.products[data-products] li.product:hover,
	ul.products[data-products] li.product:hover figure img {
		transform: none;
	}
}

/* « Nos univers » : pastilles des 5 thèmes dans le bandeau — v1.2.5 */
.a316-univers { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 28px; margin: 28px auto 0; padding: 0; list-style: none; }
.a316-univers a { display: flex; flex-direction: column; align-items: center; gap: 10px; text-decoration: none; color: #2A1A2E; width: 112px; }
.a316-univers__rond { width: 84px; height: 84px; border-radius: 50%; background: #fff; border: 2px solid #fff; box-shadow: 0 6px 18px rgba(42, 26, 46, .10); display: flex; align-items: center; justify-content: center; overflow: hidden; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.a316-univers__rond img { width: 74%; height: 74%; object-fit: contain; }
.a316-univers__nom { font-family: Jost, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; line-height: 1.3; text-align: center; }
.a316-univers a:hover .a316-univers__rond, .a316-univers a:focus-visible .a316-univers__rond { transform: translateY(-3px); border-color: #CC3450; box-shadow: 0 10px 22px rgba(204, 52, 80, .18); }
.a316-univers a[aria-current] .a316-univers__rond { border-color: #CC3450; }
.a316-univers a[aria-current] .a316-univers__nom { color: #CC3450; }
@media (max-width: 689px) {
	.a316-univers { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; gap: 14px; margin: 20px -20px 0; padding: 4px 20px 10px; scrollbar-width: none; }
	.a316-univers::-webkit-scrollbar { display: none; }
	.a316-univers li { flex: 0 0 auto; }
	.a316-univers a { width: 76px; gap: 8px; }
	.a316-univers__rond { width: 66px; height: 66px; }
	.a316-univers__nom { font-size: 11px; letter-spacing: .05em; }
}
@media (max-width: 689px) { .page-description.ct-hidden-sm:has(.a316-univers) { display: block !important; } .page-description:has(.a316-univers) > p { font-size: 15px; } }
@media (prefers-reduced-motion: reduce) { .a316-univers__rond { transition: none; } }
/* Bandeau avec pastilles : pas plus haut que le bandeau d'origine (250 px) — v1.2.7 */
.hero-section .entry-header:has(.a316-univers) { padding-top: 26px; padding-bottom: 22px; }
.hero-section .entry-header:has(.a316-univers) .page-title { margin-bottom: 0; }
.hero-section .entry-header:has(.a316-univers) .page-description { margin-top: 0; }
.hero-section .a316-univers { margin-top: 16px; }
.hero-section .a316-univers__rond { width: 72px; height: 72px; }
.hero-section .a316-univers a { gap: 8px; }
@media (max-width: 689px) {
	.hero-section .entry-header:has(.a316-univers) { padding-top: 22px; padding-bottom: 14px; }
	.hero-section .a316-univers { margin-top: 12px; padding-bottom: 6px; }
	.hero-section .a316-univers__rond { width: 60px; height: 60px; }
	.hero-section .a316-univers a { width: 74px; gap: 6px; }
	.hero-section .a316-univers__nom { font-size: 10.5px; }
}
/* Boutons Dorées / Argentées / Toutes dans le bandeau — v1.2.8 */
.a316-univers__filtres { display: flex; flex-direction: column; justify-content: center; gap: 8px; }
.a316-univers:not(:has(.a316-univers__rond)) .a316-univers__filtres { flex-direction: row; flex-wrap: wrap; justify-content: center; }
.a316-univers a.a316-filtre { width: auto; flex-direction: row; gap: 8px; padding: 8px 16px; border-radius: 999px; background: #fff; border: 1px solid #EADCD9; font-family: Jost, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; line-height: 1; white-space: nowrap; transition: border-color .2s ease, color .2s ease; }
.a316-univers a.a316-filtre:hover, .a316-univers a.a316-filtre:focus-visible { border-color: #CC3450; color: #CC3450; }
.a316-univers a.a316-filtre[aria-current] { border-color: #CC3450; color: #CC3450; }
.a316-univers a.a316-filtre .a316-dot { width: 12px; height: 12px; flex: 0 0 12px; }
@media (max-width: 689px) {
	.a316-univers__filtres { flex: 0 0 auto; }
	.a316-univers:not(:has(.a316-univers__rond)) .a316-univers__filtres { flex: 1 1 100%; gap: 6px; }
	.a316-univers:not(:has(.a316-univers__rond)) { justify-content: center; flex-wrap: wrap; overflow: visible; margin: 12px 0 0; padding: 0; }
	.a316-univers a.a316-filtre { padding: 7px 12px; font-size: 11px; }
}
/* Titres longs « … en acier inoxydable » : plus petits sur téléphone — v1.3.3 */
@media (max-width: 689px) {
	.hero-section .entry-header:has(.a316-univers) .page-title { font-size: 25px; line-height: 1.25; }
}

/* Accueil : vraies photos (v1.3.4) */
.a316-arche, .a316-photo, .a316-rond { position: relative; overflow: hidden; }
.a316-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: var(--x, 50%) var(--y, 50%); transform: scale(var(--z, 1)); transform-origin: var(--x, 50%) var(--y, 50%); transition: transform .6s ease; }
.a316-carte:hover .a316-img { transform: scale(calc(var(--z, 1) * 1.05)); }
.a316-rond .a316-img { position: static; transform: none; }
.a316-photo--acier::after { display: none; }
.a316-collection:hover .a316-rond { box-shadow: 0 0 0 2px var(--theme-palette-color-1); }
@media (max-width: 689px) { .a316-carte .a316-img, .a316-carte:hover .a316-img { transform: scale(1.2); } }

/* Pages d'infos aux couleurs du site — v1.3.5 */
.a316-info .hero-section[data-type="type-1"] { position: relative; width: 100vw; max-width: none; margin-left: calc(50% - 50vw); background: var(--theme-palette-color-6); padding: 64px 20px 104px; text-align: center; overflow: hidden; }
.a316-info .hero-section[data-type="type-1"]::before { content: ""; position: absolute; width: 150px; height: 150px; border-radius: 50%; background: #F5C84C; left: -50px; bottom: -60px; }
.a316-info .hero-section[data-type="type-1"]::after { content: ""; position: absolute; width: 46px; height: 46px; border-radius: 50%; background: var(--theme-palette-color-1); right: 12%; top: 36px; }
.a316-info .hero-section .entry-header { position: relative; z-index: 1; max-width: 760px; margin: 0 auto; }
.a316-info__surtitre { margin: 0 0 12px; font-size: 13px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--theme-palette-color-1); }
.a316-info .hero-section .page-title { font-family: 'Bodoni Moda', serif; font-weight: 400; font-size: 52px; line-height: 1.1; color: var(--theme-palette-color-4); margin: 0; }
.a316-info__soustitre { margin: 14px auto 0; max-width: 560px; font-size: 18px; color: var(--theme-palette-color-3); }
.a316-info #main article > .entry-content { position: relative; z-index: 2; max-width: 860px; margin: -64px auto 80px; background: #FFFFFF; border-radius: 28px; padding: 52px 64px 56px; box-shadow: 0 24px 60px rgba(42,26,46,0.08); box-sizing: border-box; }
.a316-info #main article > .entry-content > * { max-width: none !important; }
.a316-info #main article > .entry-content > p:first-child { font-size: 18px; line-height: 1.7; color: var(--theme-palette-color-4); }
.a316-info #main article > .entry-content h2 { font-family: 'Bodoni Moda', serif; font-weight: 400; font-size: 30px; line-height: 1.2; color: var(--theme-palette-color-4); margin: 44px 0 16px; padding-top: 36px; border-top: 1px solid var(--theme-palette-color-5); }
.a316-info #main article > .entry-content > h2:first-child, .a316-info #main article > .entry-content > p:first-child + h2 { border-top: 0; padding-top: 0; margin-top: 28px; }
.a316-info #main article > .entry-content h3 { font-size: 15px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--theme-palette-color-1); margin: 30px 0 12px; }
.a316-info #main article > .entry-content p, .a316-info #main article > .entry-content li { font-size: 16px; line-height: 1.75; }
.a316-info #main article > .entry-content a strong { color: inherit; }
.a316-info #main article > .entry-content strong { color: var(--theme-palette-color-4); font-weight: 600; }
.a316-info #main article > .entry-content a { color: var(--theme-palette-color-1); text-decoration: underline; text-decoration-color: rgba(204,52,80,.35); text-underline-offset: 3px; }
.a316-info #main article > .entry-content a:hover { text-decoration-color: currentColor; }
.a316-info #main article > .entry-content ul.wp-block-list { list-style: none; padding-left: 0; }
.a316-info #main article > .entry-content ul.wp-block-list li { position: relative; padding-left: 26px; margin-bottom: 8px; }
.a316-info #main article > .entry-content ul.wp-block-list li::before { content: ""; position: absolute; left: 4px; top: .7em; width: 9px; height: 9px; border-radius: 50%; background: #F5C84C; box-shadow: 0 0 0 3px var(--theme-palette-color-6); }
.a316-info #main article > .entry-content ol.wp-block-list { list-style: none; padding-left: 0; counter-reset: a316etape; }
.a316-info #main article > .entry-content ol.wp-block-list li { counter-increment: a316etape; position: relative; padding: 14px 18px 14px 64px; margin-bottom: 10px; background: var(--theme-palette-color-6); border-radius: 16px; }
.a316-info #main article > .entry-content ol.wp-block-list li::before { content: counter(a316etape); position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border-radius: 50%; background: var(--theme-palette-color-1); color: #FFFFFF; font-weight: 600; font-size: 15px; display: flex; align-items: center; justify-content: center; }
.a316-info #main > .ct-container-full { padding-top: 0; }
/* Formulaire de contact */
.a316-info .fluentform .ff-el-input--label label { font-size: 14px; font-weight: 600; color: var(--theme-palette-color-4); }
.a316-info .fluentform .ff-el-form-control { border: 1.5px solid var(--theme-palette-color-5); border-radius: 14px; background: var(--theme-palette-color-7); padding: 12px 16px; font-size: 16px; transition: border-color .2s, box-shadow .2s; }
.a316-info .fluentform .ff-el-form-control:focus { border-color: var(--theme-palette-color-1); box-shadow: 0 0 0 4px rgba(204,52,80,.12); background: #FFFFFF; outline: none; }
.a316-info .fluentform .ff-el-is-required.asterisk-right label::after { color: var(--theme-palette-color-1); }
.a316-info .fluentform .ff-btn-submit { border-radius: 999px !important; padding: 14px 34px !important; font-size: 15px !important; font-weight: 600; background: var(--theme-palette-color-1) !important; transition: background .2s; }
.a316-info .fluentform .ff-btn-submit:hover { background: var(--theme-palette-color-2) !important; }
.a316-info .ff-message-success { border: 0; border-radius: 16px; background: var(--theme-palette-color-6); color: var(--theme-palette-color-4); font-size: 17px; padding: 22px 26px; box-shadow: none; }
@media (max-width: 689px) {
	.a316-info .hero-section[data-type="type-1"] { padding: 40px 16px 76px; }
	.a316-info .hero-section[data-type="type-1"]::before { width: 100px; height: 100px; left: -40px; bottom: -44px; }
	.a316-info .hero-section[data-type="type-1"]::after { width: 28px; height: 28px; right: 8%; top: 20px; }
	.a316-info .hero-section .page-title { font-size: 34px; }
	.a316-info__soustitre { font-size: 16px; }
	.a316-info #main article > .entry-content { margin: -48px 12px 48px; padding: 32px 22px 36px; border-radius: 22px; }
	.a316-info #main article > .entry-content h2 { font-size: 25px; margin-top: 34px; padding-top: 28px; }
	.a316-info #main article > .entry-content ol.wp-block-list li { padding: 12px 14px 12px 56px; }
}


/* ---------- Newsletter (accueil) ---------- */
.a316-newsletter { position: relative; overflow: hidden; }
.a316-newsletter::before { content: ""; position: absolute; width: 380px; height: 380px; border-radius: 50%; background: #F5C84C; left: -120px; bottom: -190px; }
.a316-newsletter::after { content: ""; position: absolute; width: 80px; height: 80px; border-radius: 50%; background: #F6C9C6; right: 7%; top: 40px; }
.a316-newsletter .a316-wrap { position: relative; z-index: 1; }
.a316-newsletter__carte { background: #FFFFFF; border: 1px solid var(--theme-palette-color-5); border-radius: 24px; padding: 52px 56px; display: flex; gap: 48px; align-items: center; flex-wrap: wrap; box-shadow: 0 20px 50px rgba(42, 26, 46, 0.06); box-sizing: border-box; }
.a316-newsletter__carte > * { margin: 0 !important; }
.a316-newsletter__intro { flex: 1 1 340px; }
.a316-newsletter__intro > * { margin-top: 0; }
.a316-newsletter__form { flex: 1 1 400px; }
.a316-newsletter__texte { margin: 12px 0 0; color: var(--theme-palette-color-3); font-size: 17px; line-height: 1.6; }
.a316-newsletter .ct-newsletter-subscribe-block { margin: 0; }
.a316-newsletter .ct-newsletter-subscribe-form-elements { display: flex !important; gap: 10px; }
.a316-newsletter .ct-newsletter-subscribe-form input[type="email"] { flex: 1; min-width: 0; height: 54px; border: 1px solid var(--theme-palette-color-5); border-radius: 999px; padding: 0 22px; background: var(--theme-palette-color-7); font-size: 16px; color: var(--theme-palette-color-4); }
.a316-newsletter .ct-newsletter-subscribe-form input[type="email"]:focus { border-color: var(--theme-palette-color-1); outline: none; box-shadow: 0 0 0 3px rgba(204, 52, 80, 0.15); }
.a316-newsletter .ct-newsletter-subscribe-form button { height: 54px; min-height: 54px; border-radius: 999px; padding: 0 30px; background: var(--theme-palette-color-1); color: #FFFFFF; font-weight: 600; letter-spacing: 0.04em; border: 0; }
.a316-newsletter .ct-newsletter-subscribe-form button:hover { background: var(--theme-palette-color-2); }
.a316-newsletter__mention { margin: 12px 0 0 22px; font-size: 13px; color: var(--theme-palette-color-3); opacity: 0.8; }
@media (max-width: 640px) {
	.a316-newsletter::before { width: 240px; height: 240px; left: -90px; bottom: -120px; }
	.a316-newsletter::after { width: 56px; height: 56px; top: 24px; }
	.a316-newsletter__carte { padding: 32px 18px; gap: 24px; }
	.a316-newsletter .ct-newsletter-subscribe-form-elements { flex-direction: column; }
	.a316-newsletter .ct-newsletter-subscribe-form button { width: 100%; }
	.a316-newsletter__texte { font-size: 14.5px; line-height: 1.55; }
	.a316-newsletter__mention { margin-left: 0; text-align: center; font-size: 12px; line-height: 1.5; }
}

/* ---------- Newsletter (pied de page) ---------- */
.a316-pied-newsletter { margin-top: 26px; }
.a316-pied-newsletter__texte { margin: 0 0 12px; font-size: 14px; line-height: 1.5; opacity: 0.85; }
.a316-pied-newsletter .ct-newsletter-subscribe-block { margin: 0; }
.a316-pied-newsletter .ct-newsletter-subscribe-form-elements { display: flex !important; gap: 4px; max-width: 300px; padding: 4px; border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 999px; }
.a316-pied-newsletter .ct-newsletter-subscribe-form input[type="email"] { flex: 1; min-width: 0; height: 40px; min-height: 40px; border: 0; background: transparent; color: #FFFFFF; padding: 0 14px; font-size: 14px; box-shadow: none; }
.a316-pied-newsletter .ct-newsletter-subscribe-form input[type="email"]::placeholder { color: rgba(255, 255, 255, 0.6); }
.a316-pied-newsletter .ct-newsletter-subscribe-form button { height: 40px; min-height: 40px; border-radius: 999px; padding: 0 16px; font-size: 13px; font-weight: 600; background: var(--theme-palette-color-6); color: var(--theme-palette-color-4); border: 0; }
.a316-pied-newsletter .ct-newsletter-subscribe-form button:hover { background: #FFFFFF; }
.a316-pied-newsletter .ct-newsletter-subscribe-message { font-size: 13px; margin-top: 8px; }

/* v1.4.3 : fiche produit sans UGS ni catégories */
.single-product .product_meta { display: none !important; }

/* v1.4.4 : galerie empilée (ordinateur) ; sur téléphone, photos qui défilent de côté */
@media (max-width: 689.98px) {
	.ct-stacked-gallery-container { display: flex !important; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.ct-stacked-gallery-container::-webkit-scrollbar { display: none; }
	.ct-stacked-gallery-container > .ct-media-container { flex: 0 0 86%; scroll-snap-align: start; margin: 0 !important; }
}

/* v1.4.5 : encadré d'arguments sous « Ajouter au panier » */
.a316-args { list-style: none; margin: 24px 0 0; padding: 22px 24px; background: #FFFFFF; border: 1px solid var(--theme-palette-color-5); border-radius: 20px; display: grid; gap: 16px; }
.a316-args li { display: flex; gap: 14px; align-items: flex-start; margin: 0; }
.a316-args__icone { flex: 0 0 40px; height: 40px; border-radius: 50%; background: #FBE3E2; color: var(--theme-palette-color-1); display: flex; align-items: center; justify-content: center; }
.a316-args li:nth-child(even) .a316-args__icone { background: var(--theme-palette-color-6); color: var(--theme-palette-color-4); }
.a316-args li > span:last-child { display: flex; flex-direction: column; gap: 2px; padding-top: 1px; }
.a316-args strong { font-size: 15px; font-weight: 600; color: var(--theme-palette-color-4); }
.a316-args li > span:last-child > span { font-size: 14px; line-height: 1.45; color: var(--theme-palette-color-3); }
.a316-args a { color: var(--theme-palette-color-1); text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 689.98px) { .a316-args { padding: 18px; gap: 14px; } }

/* v1.4.7 : bloc « Une question ? » à part */
.a316-question { display: flex; align-items: center; gap: 12px; margin-top: 14px; padding: 12px 16px 12px 12px; border-radius: 999px; background: var(--theme-palette-color-6); color: var(--theme-palette-color-4) !important; text-decoration: none !important; transition: background .2s; }
.a316-question .a316-args__icone { flex: 0 0 36px; height: 36px; background: #FFFFFF; color: var(--theme-palette-color-1); }
.a316-question span:not(.a316-args__icone) { flex: 0 1 auto; font-size: 15px; }
.a316-question { gap: 8px; }
.a316-question .a316-args__icone { margin-right: 4px; }
.a316-question strong { font-size: 14px; font-weight: 600; color: var(--theme-palette-color-1); white-space: nowrap; }
.a316-question strong::after { content: " →"; }
.a316-question:hover { background: #FBE3E2; }

/* v1.5.0 : onglet Entretien */
.a316-entretien { max-width: none; }
.a316-entretien ul { list-style: none; padding: 0; margin: 12px 0 16px; display: grid; gap: 10px; }
.a316-entretien li { position: relative; padding-left: 22px; }
.a316-entretien li::before { content: ""; position: absolute; left: 0; top: .55em; width: 9px; height: 9px; border-radius: 50%; background: #F5C84C; }
.single-product .reset_variations { display: none !important; }

/* Onglet « Informations complémentaires » en deux blocs (v1.5.6) */
.a316-infos { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: stretch; }
.a316-infos__carac, .a316-infos__ecrin { border-radius: 24px; padding: 30px 32px; }
.a316-infos__carac { background: #FFFFFF; border: 1px solid #F6C9C6; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); }
.a316-infos__titre { margin: 0 0 18px; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 26px; color: var(--theme-palette-color-1); }
.a316-infos dl { margin: 0; }
.a316-infos dl > div { display: flex; justify-content: space-between; gap: 18px; padding: 13px 0; border-bottom: 1px dashed #EADCD9; }
.a316-infos dl > div:last-child { border-bottom: 0; }
.a316-infos dt { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #4A3A4D; font-weight: 600; display: flex; align-items: center; gap: 10px; }
.a316-infos dt::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #F5C84C; flex: 0 0 8px; }
.a316-infos dl > div:nth-child(even) dt::before { background: #CC3450; }
.a316-infos dd { margin: 0; text-align: right; color: #2A1A2E; font-weight: 500; }
.a316-infos__note { margin: 18px 0 0; padding: 10px 16px; border-radius: 999px; background: #FBE3E2; color: #CC3450; font-size: 13px; text-align: center; }
.a316-infos__ecrin { background: linear-gradient(160deg, #FFF3D1 0%, #FBE3E2 100%); display: flex; align-items: center; gap: 26px; position: relative; overflow: hidden; }
.a316-infos__visuel { flex: 0 0 46%; aspect-ratio: 4 / 3; border-radius: 18px; background: #FFFFFF; display: flex; align-items: center; justify-content: center; overflow: hidden; box-shadow: 0 10px 30px rgba(42, 26, 46, .08); }
.a316-infos__visuel img { width: 100%; height: 100%; object-fit: cover; }
.a316-infos__visuel svg { width: 82%; height: auto; }
.a316-infos__texte p { margin: 0; color: #4A3A4D; }
.a316-infos__pastille { display: inline-block; margin-bottom: 12px; padding: 5px 14px; border-radius: 999px; background: #CC3450; color: #FFFFFF; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
@media (max-width: 999.98px) {
	.a316-infos { grid-template-columns: 1fr; }
}
@media (max-width: 689.98px) {
	.a316-infos__carac, .a316-infos__ecrin { padding: 24px 20px; }
	.a316-infos__ecrin { flex-direction: column; align-items: stretch; text-align: center; }
	.a316-infos__visuel { flex-basis: auto; }
}

/* « Paiement sécurisé » sous le bouton panier (v1.5.8) */
.a316-paiement { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; margin-top: 14px; padding: 10px 16px; border-radius: 14px; background: #FFFFFF; border: 1px dashed #F6C9C6; }
.a316-paiement__texte { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: #2A1A2E; }
.a316-paiement__texte svg { color: #1F9E8C; }
.a316-paiement__cartes { display: inline-flex; gap: 6px; }
.a316-paiement__cartes svg { width: 40px; height: 26px; display: block; }

/* Bandeau de réassurance au-dessus du pied de page (v1.5.9) */
.a316-reass { background: linear-gradient(180deg, #FFF3D1, #FBE3E2); padding: 46px 0 0; }
.a316-reass--court { padding: 0; }
.a316-reass__in { max-width: 1290px; margin: 0 auto; padding: 0 35px; }
.a316-reass__titre { margin: 0 0 28px; text-align: center; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 30px; color: var(--theme-palette-color-1); }
.a316-reass__liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.a316-reass__liste li { margin: 0; }
.a316-reass__liste a, .a316-reass__liste li > div { height: 100%; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 22px 14px; border-radius: 22px; background: #FFFFFF; box-shadow: 0 8px 24px rgba(204, 52, 80, .07); color: #2A1A2E !important; text-decoration: none !important; transition: transform .2s; }
.a316-reass__liste a:hover { transform: translateY(-3px); }
.a316-reass .a316-args__icone { flex: 0 0 48px; width: 48px; height: 48px; }
.a316-reass__liste li:nth-child(even) .a316-args__icone { background: var(--theme-palette-color-6); color: var(--theme-palette-color-4); }
.a316-reass__txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; max-width: 100%; }
.a316-reass__txt b { font-size: 15px; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.a316-reass__txt span { font-size: 13.5px; color: #4A3A4D; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.a316-reass__paiement { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 20px; margin-top: 24px; padding: 18px 0 22px; border-top: 1px dashed #E8B9C1; }
.a316-reass--court .a316-reass__paiement { margin-top: 0; border-top: 0; }
.a316-reass__secu { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: #2A1A2E; }
.a316-reass__secu svg { width: 18px; height: 18px; fill: none; stroke: #1F9E8C; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.a316-reass__cartes { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.a316-reass__cartes svg { width: 44px; height: 28px; display: block; }
.a316-reass__x4 { padding: 7px 16px; border-radius: 999px; background: #FFFFFF; font-size: 14px; color: #2A1A2E; }
.a316-reass__x4 strong { color: #003087; }
@media (max-width: 999.98px) {
	.a316-reass__liste { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 689.98px) {
	.a316-reass { padding-top: 32px; }
	.a316-reass__in { padding: 0 16px; }
	.a316-reass__titre { font-size: 24px; margin-bottom: 18px; }
	.a316-reass__liste { grid-template-columns: 1fr; gap: 8px; }
	.a316-reass__liste a, .a316-reass__liste li > div { flex-direction: row; text-align: left; gap: 14px; padding: 10px 14px; border-radius: 16px; }
	.a316-reass .a316-args__icone { flex: 0 0 38px; width: 38px; height: 38px; }
	.a316-reass__txt b { font-size: 14.5px; }
	.a316-reass__txt span { font-size: 13px; }
	.a316-reass__paiement { flex-direction: column; text-align: center; }
	.a316-reass__cartes { justify-content: center; }
}

/* Bandeau de réassurance : fond rose pleine largeur, collé au pied de page (v1.5.16) */
.a316-reass { background: #FBE3E2; padding: 48px 35px 0; }
.a316-reass__in { max-width: 1290px; padding: 0; background: transparent; }
@media (max-width: 689.98px) {
	.a316-reass { padding: 36px 16px 0; }
}

/* Bloc newsletter de l'accueil : carte mimosa sur fond crème, pour se détacher du bandeau rose (v1.5.16) */
.a316-newsletter.a316-fond-jaune { background: transparent; padding-top: 0; }
.a316-newsletter::before { width: 300px; height: 300px; left: -110px; bottom: -150px; }
.a316-newsletter__carte { background: linear-gradient(135deg, #FFF3D1 0%, #FDE9A8 100%); border: 0; box-shadow: 0 20px 50px rgba(245, 200, 76, .25); }
.a316-newsletter .ct-newsletter-subscribe-form input[type="email"] { background: #FFFFFF; border-color: #F5D98A; }
@media (max-width: 689.98px) {
	.a316-newsletter .ct-newsletter-subscribe-form input[type="email"] { flex: 0 0 auto; width: 100%; height: 54px; min-height: 54px; box-sizing: border-box; }
}

/* Bijoux épuisés : mention en pastille (v1.5.19) */
.single-product .summary .stock.out-of-stock { display: inline-block; margin: 6px 0 4px; padding: 8px 18px; border-radius: 999px; background: #2A1A2E; color: #FFF3D1; font-size: 14px; font-weight: 600; letter-spacing: .02em; }

/* Onglet Entretien en cartes (v1.5.20) */
.a316-entretien ul.a316-entretien__gestes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.a316-entretien__titre { margin: 0 0 24px; text-align: center; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 26px; color: var(--theme-palette-color-1); }
.a316-entretien ul.a316-entretien__gestes li { position: relative; margin: 0; padding: 28px 22px 24px; border-radius: 22px; background: #FFFFFF; border: 1px solid #F6C9C6; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
.a316-entretien ul.a316-entretien__gestes li::before { display: none !important; content: none !important; }
.a316-entretien__icone { width: 56px; height: 56px; border-radius: 50%; background: #FBE3E2; color: #CC3450; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.a316-entretien ul.a316-entretien__gestes li:nth-child(even) .a316-entretien__icone { background: #FFF3D1; color: #2A1A2E; }
.a316-entretien__icone svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.a316-entretien__num { position: absolute; top: 14px; left: 16px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 22px; color: #F5C84C; line-height: 1; }
.a316-entretien ul.a316-entretien__gestes li b { font-size: 16px; color: #2A1A2E; }
.a316-entretien ul.a316-entretien__gestes li > span:last-child { font-size: 14px; line-height: 1.5; color: #4A3A4D; }
.a316-entretien p.a316-entretien__fin { margin: 22px 0 0; padding: 16px 24px; border-radius: 18px; background: linear-gradient(135deg, #FFF3D1, #FBE3E2); text-align: center; color: #2A1A2E; font-size: 15px; }
@media (max-width: 999.98px) {
	.a316-entretien ul.a316-entretien__gestes { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 689.98px) {
	.a316-entretien__titre { font-size: 22px; }
	.a316-entretien ul.a316-entretien__gestes { gap: 10px; }
	.a316-entretien ul.a316-entretien__gestes li { padding: 20px 12px 16px; }
	.a316-entretien__icone { width: 46px; height: 46px; }
	.a316-entretien ul.a316-entretien__gestes li > span:last-child { font-size: 13px; }
}

/* Onglets fiche produit : contenu aligné sur la largeur des onglets (v1.5.22) */
.woocommerce-tabs .a316-entretien, .woocommerce-tabs .a316-infos { max-width: var(--theme-normal-container-max-width, 1290px); margin-left: auto; margin-right: auto; box-sizing: border-box; }

/* 1.5.24 : onglet Description en carte, texte plus étroit */
.woocommerce-tabs .woocommerce-tabs ul.tabs li a:focus:not(:focus-visible), .woocommerce-tabs ul.tabs li a:focus:not(:focus-visible) { outline: none; box-shadow: none; }
.single-product .woocommerce-Tabs-panel--description { position: relative; box-sizing: border-box; width: auto; max-width: min(var(--theme-normal-container-max-width, 1290px), 88vw); margin: 34px auto 10px !important; padding: 46px 60px 42px !important; background: #FFFFFF; border: 1px solid #F6C9C6; border-radius: 26px; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); }
.single-product .woocommerce-Tabs-panel--description::before { content: "Pourquoi vous allez les adorer"; display: block; margin: 0 0 6px; text-align: center; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 26px; color: var(--theme-palette-color-1); }
.single-product .woocommerce-Tabs-panel--description::after { content: ""; position: absolute; top: 96px; left: 50%; width: 7px; height: 7px; margin-left: -3.5px; border-radius: 50%; background: #CC3450; box-shadow: -14px 0 0 #F5C84C, 14px 0 0 #F5C84C; }
.single-product .woocommerce-Tabs-panel--description p { max-width: 860px; margin: 0 auto 18px; font-size: 16.5px; line-height: 1.8; color: #4A3A4D; }
.single-product .woocommerce-Tabs-panel--description p:first-of-type { margin-top: 34px !important; }
.single-product .woocommerce-Tabs-panel--description p:first-of-type strong { color: #CC3450; font-weight: 600; }
.single-product .woocommerce-Tabs-panel--description p:last-of-type:not(:first-of-type) { display: block; width: fit-content; max-width: 100%; box-sizing: border-box; margin: 26px auto 0; padding: 11px 24px 11px 50px; border-radius: 999px; background: #FFF3D1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CC3450' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='13' rx='2'/%3E%3Cpath d='M3 12h18M12 8v13M12 8c-1.5-3-5-4-5-1.5S10 8 12 8zm0 0c1.5-3 5-4 5-1.5S14 8 12 8z'/%3E%3C/svg%3E") no-repeat 20px 50% / 20px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CC3450' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='13' rx='2'/%3E%3Cpath d='M3 12h18M12 8v13M12 8c-1.5-3-5-4-5-1.5S10 8 12 8zm0 0c1.5-3 5-4 5-1.5S14 8 12 8z'/%3E%3C/svg%3E"), linear-gradient(135deg, #FFF3D1, #FBE3E2); background-repeat: no-repeat; background-position: 20px 50%, 0 0; background-size: 20px, 100% 100%; font-size: 15px; font-weight: 500; color: #2A1A2E; text-align: center; }
@media (max-width: 689.98px) {
	.single-product .woocommerce-Tabs-panel--description { margin-top: 24px !important; padding: 30px 20px 26px !important; border-radius: 20px; }
	.single-product .woocommerce-Tabs-panel--description::before { font-size: 22px; }
	.single-product .woocommerce-Tabs-panel--description::after { top: 74px; }
	.single-product .woocommerce-Tabs-panel--description p { font-size: 15.5px; line-height: 1.75; }
	.single-product .woocommerce-Tabs-panel--description p:first-of-type { margin-top: 30px !important; }
	.single-product .woocommerce-Tabs-panel--description p:last-of-type:not(:first-of-type) { width: auto; padding: 11px 16px 11px 44px; background-position: 14px 50%, 0 0; font-size: 14px; text-align: left; }
}

/* 1.5.29 : copyright du pied de page centré */
.ct-footer [data-row="bottom"] [data-column="copyright"], .ct-footer [data-row="bottom"] [data-column] { justify-content: center; }
.ct-footer .ct-footer-copyright { text-align: center; width: 100%; }

/* v1.5.30 : quantité et « Ajouter au panier » arrondis comme les boutons du site */
.single-product form.cart .quantity input.qty,
.single-product form.cart .quantity,
.single-product form.cart .single_add_to_cart_button { border-radius: 999px !important; }
.single-product form.cart .quantity .ct-increase { right: 6px; }
.single-product form.cart .quantity .ct-decrease { left: 6px; }

/* v1.5.32 : « Paiement sécurisé » en ligne discrète sans cadre, 6 logos comme le bandeau (choix d'Olivier) */
.single-product .a316-paiement { border: 0; background: transparent; border-radius: 0; padding: 2px 0 0; margin-top: 12px; justify-content: center; gap: 8px 12px; }
.single-product .a316-paiement__texte { font-size: 13.5px; font-weight: 500; color: #6B5A6E; }
.single-product .a316-paiement__cartes { flex-wrap: wrap; justify-content: center; }

/* ============ AVIS CLIENTES (Photo Reviews) — v1.6.0 ============ */
.single-product .woocommerce-Tabs-panel--reviews { box-sizing: border-box; width: auto; max-width: min(var(--theme-normal-container-max-width, 1290px), 88vw); margin: 34px auto 10px !important; padding: 44px 52px 40px !important; background: #FFFFFF; border: 1px solid #F6C9C6; border-radius: 26px; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); }
.single-product #reviews.woocommerce-Reviews { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.single-product #reviews #comments, .single-product #reviews #review_form_wrapper { width: auto; margin: 0; }
.single-product #reviews > .clear { display: none; }
.single-product .woocommerce-Reviews-title { margin: 0 0 18px; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 28px; line-height: 1.2; color: var(--theme-palette-color-1); }
.single-product .woocommerce-noreviews { margin: 0; padding: 22px 24px; border-radius: 18px; background: linear-gradient(135deg, #FFF3D1, #FBE3E2); color: #2A1A2E; font-size: 15.5px; }

/* Résumé de la note */
#xyno-review-header { margin: 0 0 22px; color: #4A3A4D; }
.xyno-rating-summary { display: flex; gap: 28px; align-items: center; margin: 0 0 14px; padding: 20px 24px; border: 0; border-radius: 20px; background: #FFFCF5; box-shadow: inset 0 0 0 1px #F3E3E0; }
.xyno-summary-left { min-width: 110px; text-align: center; }
.xyno-big-number { font-family: 'Bodoni Moda', Georgia, serif; font-size: 46px; font-weight: 500; line-height: 1; letter-spacing: 0; color: #2A1A2E; }
.xyno-big-number span { font-family: inherit; font-size: 18px; color: #9A8A92; margin-left: 2px; }
.xyno-summary-left .star-rating { float: none; margin: 8px auto 4px; }
.xyno-review-count { margin: 0; font-size: 13px; color: #7A6A72; }
.xyno-bars { flex: 1; min-width: 0; }
.xyno-bar-row { gap: 10px; margin: 0 0 3px; padding: 3px 8px; border-radius: 999px; }
.xyno-bar-row:hover, .xyno-bar-row:focus { background: #FBE3E2; }
.xyno-bar-label { width: 30px; font-size: 13px; color: #4A3A4D; text-align: left; }
.xyno-bar-track { height: 8px; background: #F3E3E0; border-radius: 999px; }
.xyno-bar-fill { background: linear-gradient(90deg, #F5C84C, #CC3450) !important; border-radius: 999px; }
.xyno-bar-count { width: 22px; font-size: 13px; color: #7A6A72; text-align: right; }
.xyno-filter-wrap { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; }
.xyno-filter-wrap label { font-size: 14px; font-weight: 500; color: #2A1A2E; }
.xyno-filter-select { width: auto !important; min-width: 190px; padding: 8px 38px 8px 16px !important; border: 1px solid #EADCD9 !important; border-radius: 999px !important; background-color: #FFFFFF !important; color: #2A1A2E !important; font-size: 14px !important; }
.a316-avis__charte { margin: 0; font-size: 12.5px; color: #7A6A72; }
.a316-avis__charte a, .a316-avis__mentions a { color: var(--theme-palette-color-1); text-decoration: underline; text-underline-offset: 2px; }

/* Étoiles couleur or */
.single-product .star-rating, .single-product .star-rating span::before, .single-product p.stars a, .single-product p.stars a::before, .xyno-star-pick.xyno-star-on { color: #B08A4A !important; }
.single-product .star-rating::before { color: #EADCD9 !important; opacity: 1; }
.single-product .woocommerce-product-rating .woocommerce-review-link { color: #4A3A4D; font-size: 14px; }

/* Liste des avis */
.single-product #reviews .commentlist { margin: 0; padding: 0; list-style: none; }
.single-product #reviews .commentlist > li.review { margin: 0 0 16px; padding: 20px 22px; border: 1px solid #F3E3E0; border-radius: 20px; background: #FFFFFF; transition: box-shadow .2s ease; }
.single-product #reviews .commentlist > li.review:hover { box-shadow: 0 8px 24px rgba(204, 52, 80, .08); }
.single-product #reviews .comment_container { padding: 0 !important; display: flex; gap: 16px; align-items: flex-start; }
.single-product #reviews .comment-text { flex: 1; min-width: 0; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.single-product #reviews .comment-text .star-rating { float: none; margin: 0 0 6px; font-size: 14px; }
.single-product #reviews .comment-text .description p { margin: 6px 0 0; font-size: 15.5px; line-height: 1.7; color: #4A3A4D; }
.a316-avis__initiale { flex: 0 0 auto; display: inline-flex !important; align-items: center; justify-content: center; width: 46px !important; height: 46px !important; border-radius: 50%; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px; font-weight: 500; line-height: 1; position: static !important; float: none !important; padding: 0 !important; border: 0 !important; }
.a316-avis__initiale--0 { background: #CC3450; color: #FFFFFF; }
.a316-avis__initiale--1 { background: #F5C84C; color: #2A1A2E; }
.a316-avis__initiale--2 { background: #FBE3E2; color: #B52A45; }
.a316-avis__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 !important; font-size: 13px; color: #7A6A72; }
.a316-avis__meta .woocommerce-review__author { font-size: 15.5px; font-weight: 600; color: #2A1A2E; }
.a316-avis__verifie { display: inline-flex; align-items: center; gap: 4px; padding: 2px 10px 2px 7px; border-radius: 999px; background: #FFF3D1; color: #2A1A2E; font-size: 12px; font-weight: 500; }
.a316-avis__verifie svg { width: 13px; height: 13px; fill: none; stroke: #CC3450; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.a316-avis__dates { flex-basis: 100%; }
.single-product #reviews .a316-avis__meta, .single-product #reviews .a316-avis__meta * { text-transform: none !important; letter-spacing: 0 !important; }
.single-product #reviews .a316-avis__meta > * { margin: 0 !important; }
.xyno-filter-wrap .screen-reader-text { position: absolute !important; }
.single-product #review_form .comment-form-rating label { text-transform: none !important; letter-spacing: 0 !important; }
.single-product #review_form .form-submit .submit { width: 100%; min-height: 50px; border-radius: 999px; font-size: 15px; font-weight: 600; }

/* Photos des avis */
.xyno-media-gallery { gap: 10px; margin: 14px 0 2px; }
.xyno-media-thumb { width: 104px; height: 104px; border: 0; border-radius: 14px; box-shadow: 0 0 0 1px #F3E3E0; }
.xyno-media-thumb:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(42, 26, 46, .15); }
.a316-avis__video { position: relative; display: block; width: 100%; height: 100%; }
.a316-avis__lecture { position: absolute; left: 50%; top: 50%; width: 36px; height: 36px; margin: -18px 0 0 -18px; border-radius: 50%; background: rgba(255, 255, 255, .92); }
.a316-avis__lecture::after { content: ""; position: absolute; left: 14px; top: 11px; border-style: solid; border-width: 7px 0 7px 11px; border-color: transparent transparent transparent #CC3450; }

/* Modifier son avis */
.xyno-edit-btn { margin-top: 12px; padding: 5px 14px; border: 1px solid #EADCD9; border-radius: 999px; background: #FFFFFF; color: #CC3450; font-size: 13px; }
.xyno-edit-btn:hover { background: #FBE3E2; }
.xyno-modal-inner { border-radius: 24px; }
.xyno-modal-header h3 { font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 22px; color: #CC3450; }
.xyno-form-group textarea:focus { border-color: #CC3450; }
.xyno-submit-btn, #xyno-crop-apply { border-radius: 999px; background: #CC3450; font-weight: 600; }
.xyno-submit-btn:hover, #xyno-crop-apply:hover { background: #B52A45; }
.xyno-cancel-btn, #xyno-crop-skip { border-radius: 999px; }
.a316-avis__aide { margin: 6px 0 0; font-size: 12px; color: #7A6A72; }
.xyno-crop-box { border-radius: 22px; }
.xyno-ratio-btn { border-radius: 999px; }
.xyno-ratio-btn:hover { border-color: #CC3450; color: #CC3450; }
.xyno-ratio-btn.active { background: #CC3450; border-color: #CC3450; }
.xyno-new-badge { background: #CC3450; }
.xyno-new-preview-item, .xyno-preview-thumb { border-color: #F6C9C6; border-radius: 12px; }

/* Formulaire « Donnez votre avis » */
.single-product #review_form_wrapper { position: sticky; top: 110px; }
.single-product #review_form { padding: 26px 26px 24px; border-radius: 22px; background: linear-gradient(160deg, #FFF3D1 0%, #FBE3E2 100%); }
.single-product #review_form .comment-reply-title { display: block; margin: 0 0 6px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 24px; font-weight: 500; color: #2A1A2E; }
.single-product #review_form .comment-reply-title small { display: none; }
.a316-avis__intro { margin: 0 0 16px !important; font-size: 14.5px; color: #4A3A4D; }
.single-product #review_form .comment-form-rating label, .single-product #review_form label { font-size: 14px; font-weight: 500; color: #2A1A2E; }
.single-product #review_form p.stars { margin: 4px 0 14px; font-size: 22px; }
.single-product #review_form input[type="text"], .single-product #review_form input[type="email"], .single-product #review_form textarea { border-color: #EADCD9; border-radius: 14px; background: #FFFFFF; }
.single-product #review_form input[type="text"], .single-product #review_form input[type="email"] { border-radius: 999px; }
.single-product #review_form textarea { min-height: 120px; }
.single-product #review_form .comment-form-cookies-consent label { font-size: 12.5px; font-weight: 400; color: #4A3A4D; }
.single-product #review_form .form-submit { margin: 16px 0 0; }
.single-product #review_form .form-submit input[type="submit"] { width: 100%; padding: 14px 24px; border-radius: 999px; font-size: 15px; font-weight: 600; }
.single-product #review_form p:empty, .single-product #review_form .xyno-preview-strip:empty { display: none; margin: 0; }
.a316-avis__mentions { order: 99; margin: 12px 0 0 !important; font-size: 12px; line-height: 1.5; color: #7A6A72; }

/* Zone photos du formulaire */
.xyno-upload-area > label { margin: 0 0 2px; font-weight: 500; }
.xyno-upload-area > label span { color: #9A8A92 !important; }
.xyno-upload-hint { margin: 0 0 8px; font-size: 12.5px; color: #7A6A72; }
.xyno-drop-zone { padding: 18px 14px; border: 2px dashed #EBA8B4; border-radius: 18px; background: rgba(255, 255, 255, .7); }
.xyno-drop-zone:hover, .xyno-drop-zone.xyno-drag-over { border-color: #CC3450; background: #FFFFFF; }
.xyno-drop-label { gap: 4px; color: #CC3450; font-size: 15px; font-weight: 600; }
.xyno-drop-icon { width: 46px; height: 46px; margin-bottom: 4px; font-size: 0 !important; border-radius: 50%; background: #CC3450 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l1.5-2h7L17 8h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") no-repeat 50% 50% / 24px; }
.xyno-drop-label small { font-size: 12.5px; font-weight: 400; color: #7A6A72; }

@media (max-width: 999px) {
	.single-product #reviews.woocommerce-Reviews { grid-template-columns: 1fr; gap: 30px; }
	.single-product #review_form_wrapper { position: static; }
}
@media (max-width: 689px) {
	.single-product .woocommerce-Tabs-panel--reviews { margin-top: 24px !important; padding: 26px 16px 22px !important; border-radius: 20px; }
	.single-product .woocommerce-Reviews-title { font-size: 24px; text-align: center; }
	.xyno-rating-summary { gap: 16px; padding: 16px; }
	.xyno-summary-left { min-width: 86px; }
	.xyno-big-number { font-size: 38px; }
	.xyno-filter-wrap { flex-wrap: wrap; }
	.single-product #reviews .commentlist > li.review { padding: 16px; }
	.single-product #reviews .comment_container { gap: 12px; }
	.a316-avis__initiale { width: 38px !important; height: 38px !important; font-size: 18px; }
	.xyno-media-thumb { width: 84px; height: 84px; }
	.single-product #review_form { padding: 20px 16px; }
}

/* ============================================================
 * Blog (v1.7.0)
 * ============================================================ */
.a316-blog-hero, .a316-art-hero { position: relative; overflow: hidden; background: var(--theme-palette-color-6); text-align: center; }
.a316-blog-hero::before, .a316-art-hero::before { content: ""; position: absolute; width: 170px; height: 170px; border-radius: 50%; background: #F5C84C; left: -60px; bottom: -80px; }
.a316-blog-hero::after, .a316-art-hero::after { content: ""; position: absolute; width: 46px; height: 46px; border-radius: 50%; background: var(--theme-palette-color-1); right: 12%; top: 40px; }
.a316-blog-hero__in, .a316-art-hero__in { position: relative; z-index: 1; max-width: 780px; margin: 0 auto; padding: 72px 24px 84px; }
.a316-blog-hero__sur { display: inline-block; margin: 0 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--theme-palette-color-1); text-decoration: none; }
a.a316-blog-hero__sur:hover { color: var(--theme-palette-color-2); }
.a316-blog-hero__titre, .a316-art-hero__titre { margin: 0; font-family: 'Bodoni Moda', serif; font-weight: 400; line-height: 1.1; color: var(--theme-palette-color-4); }
.a316-blog-hero__titre { font-size: 58px; }
.a316-blog-hero__titre em { font-style: italic; color: var(--theme-palette-color-1); }
.a316-blog-hero__texte { margin: 18px auto 0; max-width: 540px; font-size: 18px; line-height: 1.6; color: var(--theme-palette-color-3); }
.a316-blog-hero--court .a316-blog-hero__in { padding: 44px 24px 52px; }
.a316-blog-hero--court .a316-blog-hero__titre { font-size: 40px; }

/* Liste des articles */
.a316-blog #main > .ct-container { padding-top: 64px; padding-bottom: 88px; }
.a316-blog .entries[data-layout] { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 32px; }
.a316-blog .entries article.entry-card { position: relative; display: flex; flex-direction: column; padding: 12px 12px 26px; background: #FFFFFF; border: 1px solid var(--theme-palette-color-5); border-radius: 22px; box-shadow: none; text-align: left; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.a316-blog .entries article.entry-card:hover { transform: translateY(-4px); border-color: #E8B9C1; box-shadow: 0 18px 40px -22px rgba(74,58,77,.45); }
.a316-blog .entries article.entry-card > * { margin: 0 14px; }
.a316-blog .entries article.entry-card > .ct-media-container { order: -1; width: auto !important; margin: 0 0 22px !important; border-radius: 14px; overflow: hidden; }
.a316-blog .entries article.entry-card > .ct-media-container img { aspect-ratio: 4 / 3 !important; object-fit: cover; transition: transform .6s ease; }
.a316-blog .entries article.entry-card:hover > .ct-media-container img { transform: scale(1.05); }
.a316-blog .entries article.entry-card > .entry-meta { display: none; }
.a316-blog .entries .entry-title { order: 0; margin-bottom: 14px; font-family: 'Bodoni Moda', serif; font-size: 25px; font-weight: 500; line-height: 1.22; text-wrap: balance; }
.a316-blog .entries .entry-title a { color: var(--theme-palette-color-4); }
.a316-blog .entries .entry-title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.a316-blog .entries .entry-excerpt { order: 1; display: flex; flex-direction: column; flex: 1; font-size: 15.5px; line-height: 1.65; color: var(--theme-palette-color-3); }
.a316-blog .entries .entry-excerpt p { margin: 0 0 20px; }
.a316-blog .entries .entry-excerpt::before { position: absolute; z-index: 2; top: 26px; left: 26px; padding: 6px 13px; border-radius: 999px; background: rgba(255,252,245,.94); font-size: 12px; font-weight: 600; letter-spacing: .04em; color: var(--theme-palette-color-4); }
.a316-blog .entries .entry-excerpt::after { content: "Lire l’article  →"; white-space: pre; margin-top: auto; align-self: flex-start; padding-bottom: 3px; border-bottom: 2px solid #F5C84C; font-size: 14px; font-weight: 600; letter-spacing: .02em; color: var(--theme-palette-color-1); transition: letter-spacing .2s; }
.a316-blog .entries article.entry-card:hover .entry-excerpt::after { color: var(--theme-palette-color-2); }
.a316-blog nav.ct-pagination { margin-top: 56px; }

/* Article */
.a316-article #main article > .hero-section, .a316-article .entry-content + .ct-newsletter-subscribe-container ~ .hero-section { display: none; }
.a316-art-hero { padding-bottom: 0; background: linear-gradient(var(--theme-palette-color-6) 0, var(--theme-palette-color-6) calc(100% - 170px), transparent calc(100% - 170px)); }
.a316-art-hero::before { bottom: auto; top: 220px; }
.a316-art-hero__in { padding: 64px 24px 40px; }
.a316-art-hero__titre { font-size: 50px; text-wrap: balance; }
.a316-art-hero__meta { display: flex; justify-content: center; gap: 12px; margin: 20px 0 0; font-size: 14px; font-weight: 500; letter-spacing: .04em; color: var(--theme-palette-color-3); }
.a316-art-hero__meta span { color: var(--theme-palette-color-1); }
.a316-art-hero__img { position: relative; z-index: 1; max-width: 1000px; margin: 0 auto; padding: 0 24px; }
.a316-art-hero__img img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: center 62%; border-radius: 28px; box-shadow: 0 30px 60px -30px rgba(42,26,46,.35); }
.a316-article #main > .ct-container-full { padding-top: 56px; padding-bottom: 32px; }
.a316-article #main .entry-content { --theme-block-max-width: 720px; --theme-narrow-container-max-width: 720px; }
.a316-article #main .entry-content > p, .a316-article #main .entry-content li { font-size: 17.5px; line-height: 1.8; color: #3d2f40; }
.a316-article #main .entry-content > p:first-child { font-size: 20px; line-height: 1.7; color: var(--theme-palette-color-4); }
.a316-article #main .entry-content > p:first-child::first-letter { float: left; margin: 8px 12px 0 0; font-family: 'Bodoni Moda', serif; font-size: 78px; line-height: .8; color: var(--theme-palette-color-1); }
.a316-article #main .entry-content h2 { margin-top: 52px; margin-bottom: 14px; font-family: 'Bodoni Moda', serif; font-weight: 500; font-size: 32px; line-height: 1.2; color: var(--theme-palette-color-4); }
.a316-article #main .entry-content h2::before { content: ""; display: block; width: 36px; height: 4px; margin-bottom: 18px; border-radius: 4px; background: #F5C84C; }
.a316-article #main .entry-content h3 { margin-top: 34px; font-size: 15px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--theme-palette-color-1); }
.a316-article #main .entry-content a:not(.wp-block-button__link) { color: var(--theme-palette-color-1); text-decoration: underline; text-decoration-color: rgba(204,52,80,.35); text-underline-offset: 3px; }
.a316-article #main .entry-content a:hover { text-decoration-color: currentColor; }
.a316-article #main .entry-content ul.wp-block-list { list-style: none; padding-left: 0; }
.a316-article #main .entry-content ul.wp-block-list li { position: relative; padding-left: 26px; margin-bottom: 8px; }
.a316-article #main .entry-content ul.wp-block-list li::before { content: ""; position: absolute; left: 4px; top: .75em; width: 9px; height: 9px; border-radius: 50%; background: #F5C84C; box-shadow: 0 0 0 3px var(--theme-palette-color-6); }
.a316-article #main .entry-content .wp-block-quote { position: relative; margin: 44px auto; padding: 34px 40px 30px 92px; border: 0; border-radius: 24px; background: #FBE3E2; }
.a316-article #main .entry-content .wp-block-quote::before { content: "“"; position: absolute; left: 26px; top: 14px; font-family: 'Bodoni Moda', serif; font-size: 96px; line-height: 1; color: var(--theme-palette-color-1); }
.a316-article #main .entry-content .wp-block-quote p { margin: 0; font-family: 'Bodoni Moda', serif; font-style: italic; font-size: 21px; line-height: 1.5; color: var(--theme-palette-color-4); }
.a316-article #main .entry-content .wp-block-image img { border-radius: 20px; }
/* Encart boutique en fin d'article */
.a316-art-cta { margin: 56px auto 0; padding: 40px 36px; border-radius: 28px; background: linear-gradient(135deg, #FFF3D1 0%, #FBE3E2 100%); text-align: center; }
.a316-art-cta__titre { margin: 0 0 8px; font-family: 'Bodoni Moda', serif; font-size: 32px; line-height: 1.2; color: var(--theme-palette-color-4); }
.a316-art-cta__texte { margin: 0 auto 24px; max-width: 460px; font-size: 16px; line-height: 1.6; color: var(--theme-palette-color-3); }
.a316-art-cta__liens { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0; }
.a316-article #main .entry-content .a316-art-cta__liens a { padding: 12px 24px; border-radius: 999px; background: var(--theme-palette-color-1); color: #FFFFFF; font-size: 15px; font-weight: 600; text-decoration: none; transition: background .2s, transform .2s; }
.a316-article #main .entry-content .a316-art-cta__liens a:hover { background: var(--theme-palette-color-2); transform: translateY(-2px); }
/* Newsletter sous l'article */
.a316-article .ct-newsletter-subscribe-container { margin-top: 48px; padding: 36px 40px; border: 1px solid var(--theme-palette-color-5); border-radius: 24px; background: #FFFFFF; box-shadow: none; }
.a316-article .ct-newsletter-subscribe-container h3 { font-family: 'Bodoni Moda', serif; font-weight: 500; font-size: 26px; color: var(--theme-palette-color-4); }
.a316-article .a316-art-nl__mention { margin: 12px 0 0; font-size: 13px; line-height: 1.5; color: var(--theme-palette-color-3); opacity: 0.8; }
.a316-article .a316-art-nl__mention a { color: var(--theme-palette-color-1); text-decoration: underline; }
.a316-article .ct-newsletter-subscribe-form input[type="email"] { border-radius: 999px; padding-left: 20px; }
.a316-article .ct-newsletter-subscribe-form button { border-radius: 999px; padding-left: 26px; padding-right: 26px; }
/* À lire aussi */
.a316-alire { max-width: 1200px; margin: 0 auto; padding: 56px 24px 88px; }
.a316-alire__titre { margin: 0 0 32px; text-align: center; font-family: 'Bodoni Moda', serif; font-weight: 400; font-size: 38px; color: var(--theme-palette-color-4); }
.a316-alire__liste { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.a316-alire__liste:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 380px)); justify-content: center; }
.a316-alire__liste:has(> :only-child) { grid-template-columns: minmax(0, 380px); justify-content: center; }
.a316-alire__carte { position: relative; display: flex; flex-direction: column; padding: 10px 10px 22px; background: #FFFFFF; border: 1px solid var(--theme-palette-color-5); border-radius: 20px; color: inherit; text-decoration: none; transition: transform .25s, box-shadow .25s, border-color .25s; }
.a316-alire__carte:hover { transform: translateY(-4px); border-color: #E8B9C1; box-shadow: 0 18px 40px -22px rgba(74,58,77,.45); }
.a316-alire__img { display: block; margin-bottom: 18px; border-radius: 13px; overflow: hidden; }
.a316-alire__img img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .6s; }
.a316-alire__carte:hover .a316-alire__img img { transform: scale(1.05); }
.a316-alire__temps { position: absolute; top: 22px; left: 22px; padding: 5px 12px; border-radius: 999px; background: rgba(255,252,245,.94); font-size: 12px; font-weight: 600; color: var(--theme-palette-color-4); }
.a316-alire__nom { margin: 0 12px; font-family: 'Bodoni Moda', serif; font-size: 21px; font-weight: 500; line-height: 1.25; color: var(--theme-palette-color-4); text-wrap: balance; }
.a316-alire__tout { margin: 36px 0 0; text-align: center; }
.a316-alire__tout a { display: inline-block; padding: 12px 28px; border: 1.5px solid var(--theme-palette-color-4); border-radius: 999px; font-size: 15px; font-weight: 600; color: var(--theme-palette-color-4); text-decoration: none; transition: background .2s, color .2s; }
.a316-alire__tout a:hover { background: var(--theme-palette-color-4); color: #FFFFFF; }

@media (max-width: 999px) {
	.a316-blog .entries[data-layout] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
	.a316-alire__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.a316-alire__liste > :nth-child(3) { display: none; }
}
@media (max-width: 689px) {
	.a316-blog-hero__in { padding: 48px 20px 56px; }
	.a316-blog-hero__titre { font-size: 40px; }
	.a316-blog-hero__texte { font-size: 16px; }
	.a316-blog-hero::before, .a316-art-hero::before { width: 110px; height: 110px; left: -50px; bottom: -55px; }
	.a316-blog-hero::after, .a316-art-hero::after { width: 30px; height: 30px; right: 8%; top: 24px; }
	.a316-blog #main > .ct-container { padding-top: 36px; padding-bottom: 56px; }
	.a316-blog .entries[data-layout] { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.a316-blog .entries .entry-title { font-size: 23px; }
	.a316-art-hero { background: linear-gradient(var(--theme-palette-color-6) 0, var(--theme-palette-color-6) calc(100% - 90px), transparent calc(100% - 90px)); }
	.a316-art-hero::before { top: auto; bottom: 60px; }
	.a316-art-hero__in { padding: 44px 20px 28px; }
	.a316-art-hero__titre { font-size: 33px; }
	.a316-art-hero__meta { font-size: 13px; }
	.a316-art-hero__img { padding: 0 16px; }
	.a316-art-hero__img img { aspect-ratio: 4 / 3; border-radius: 20px; }
	.a316-article #main > .ct-container-full { padding-top: 36px; }
	.a316-article #main .entry-content > p, .a316-article #main .entry-content li { font-size: 16.5px; }
	.a316-article #main .entry-content > p:first-child { font-size: 18px; }
	.a316-article #main .entry-content > p:first-child::first-letter { font-size: 64px; }
	.a316-article #main .entry-content h2 { font-size: 26px; margin-top: 40px; }
	.a316-article #main .entry-content .wp-block-quote { padding: 54px 24px 24px; }
	.a316-article #main .entry-content .wp-block-quote::before { left: 20px; top: 6px; font-size: 76px; }
	.a316-article #main .entry-content .wp-block-quote p { font-size: 19px; }
	.a316-art-cta { padding: 32px 20px; }
	.a316-art-cta__titre { font-size: 27px; }
	.a316-article .ct-newsletter-subscribe-container { padding: 28px 20px; }
	.a316-alire { padding: 40px 16px 64px; }
	.a316-alire__titre { font-size: 30px; }
	.a316-alire__liste, .a316-alire__liste:has(> :nth-child(2):last-child) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.a316-alire__liste > :nth-child(3) { display: flex; }
	.a316-alire__carte { flex-direction: row; align-items: center; gap: 16px; padding: 10px; }
	.a316-alire__img { flex: 0 0 112px; margin: 0; }
	.a316-alire__img img { aspect-ratio: 1 / 1; }
	.a316-alire__temps { position: static; order: 2; display: none; }
	.a316-alire__nom { margin: 0 8px 0 0; font-size: 19px; }
	.a316-blog .entries .entry-title { margin-bottom: 12px; }
}
/* fin Blog */

/* Avis : réduction offerte contre une photo (v1.7.3) */
.a316-avis__cadeau { display: block; width: fit-content; margin-top: 10px; padding: 6px 14px; border-radius: 999px; background: #FFFFFF; color: #2A1A2E; font-size: 13.5px; }
.a316-avis__cadeau b { color: #CC3450; }

/* ==========================================================
   v1.7.10 : Panier, Commande et Mon compte aux couleurs du site
   ========================================================== */
.woocommerce-cart .entry-header, .woocommerce-checkout .entry-header, .woocommerce-account .entry-header { text-align: center; }
.woocommerce-cart .page-title, .woocommerce-checkout .page-title, .woocommerce-account .page-title { font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 40px; color: var(--theme-palette-color-4); }
.woocommerce-cart .entry-header::after, .woocommerce-checkout .entry-header::after, .woocommerce-account .entry-header::after { content: ""; display: block; width: 7px; height: 7px; margin: 14px auto 0; border-radius: 50%; background: #CC3450; box-shadow: -14px 0 0 #F5C84C, 14px 0 0 #F5C84C; }

/* 1.9.78 : mêmes dimensions pour tous les encadrés du panier et de la commande (demande d Olivier) */
.woocommerce-cart, .woocommerce-checkout { --a316-enc-pad: 14px 20px; --a316-enc-r: 18px; --a316-enc-fs: 15px; --a316-enc-ico: 40px; --a316-enc-gap: 14px; --a316-enc-esp: 16px; }
@media (max-width: 689.98px) { .woocommerce-cart, .woocommerce-checkout { --a316-enc-pad: 12px 15px; --a316-enc-fs: 14px; --a316-enc-ico: 32px; --a316-enc-gap: 10px; --a316-enc-esp: 12px; } }

/* Cartes blanches arrondies */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart_totals,
.woocommerce-checkout #customer_details,
.woocommerce-checkout .ct-order-review,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-account .woocommerce-ResetPassword {
	background: #FFFFFF; border: 1px solid #F6C9C6 !important; border-radius: 24px; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); padding: 32px 34px !important; box-sizing: border-box;
}
.woocommerce-cart .cart_totals { padding: 30px 32px !important; }
.woocommerce-cart .cart_totals > h2, .woocommerce-checkout #order_review_heading, .woocommerce-checkout #customer_details h3, .woocommerce-account .woocommerce h2 {
	font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 24px; color: var(--theme-palette-color-4); letter-spacing: 0; text-transform: none;
}
.woocommerce-cart table.shop_table { border: 0; }
.woocommerce-cart table.shop_table th { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #8A7A8C; font-weight: 600; border-bottom: 1px solid #F6C9C6 !important; }
.woocommerce-cart table.shop_table td { border-color: #FBE3E2 !important; }
.woocommerce-cart table.shop_table .product-thumbnail img { border-radius: 14px; background: #FFFBF3; }
.woocommerce-cart table.shop_table .product-name a { font-family: 'Bodoni Moda', Georgia, serif; font-size: 17px; color: var(--theme-palette-color-4); }
.woocommerce-cart table.shop_table .product-remove a { color: #B9A9BB !important; }
.woocommerce-cart table.shop_table .product-remove a:hover { color: #CC3450 !important; }
.woocommerce-cart .cart_totals .order-total th, .woocommerce-cart .cart_totals .order-total td, .woocommerce-checkout .order-total th, .woocommerce-checkout .order-total td { font-size: 19px; color: #CC3450; }

/* Champs et boutons en pilule, comme le reste du site */
.woocommerce-cart .quantity, .woocommerce-cart .quantity input.qty,
.woocommerce-cart #coupon_code, .woocommerce-checkout #coupon_code,
.woocommerce-cart .woocommerce .button, .woocommerce-checkout .woocommerce .button,
.woocommerce-account .woocommerce .button, .woocommerce-cart .return-to-shop .button { border-radius: 999px !important; }
.woocommerce-cart #coupon_code, .woocommerce-checkout #coupon_code { border-color: #F6C9C6; padding: 0 20px; }
.woocommerce-cart .actions .button, .woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce .button { padding-left: 26px; padding-right: 26px; }
.woocommerce-cart button[name="update_cart"] { background: transparent !important; color: var(--theme-palette-color-4) !important; border: 1px solid #E8D9DC !important; opacity: 1 !important; }
.woocommerce-cart button[name="update_cart"]:disabled { opacity: .55 !important; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button { min-height: 54px; font-size: 16px; font-weight: 600; letter-spacing: .02em; box-shadow: 0 10px 22px rgba(204, 52, 80, .22); }
.woocommerce-checkout #customer_details input.input-text, .woocommerce-checkout #customer_details select, .woocommerce-checkout #customer_details .select2-selection,
.woocommerce-account .woocommerce input.input-text, .woocommerce-account .woocommerce select {
	border-radius: 14px !important; border-color: #EBDDE0 !important;
}
.woocommerce-checkout textarea, .woocommerce-account textarea { border-radius: 14px !important; }
.woocommerce-checkout input.input-text:focus, .woocommerce-account input.input-text:focus, .woocommerce-cart #coupon_code:focus { border-color: #CC3450 !important; box-shadow: 0 0 0 3px rgba(204, 52, 80, .12) !important; }
.woocommerce-checkout #place_order { width: 100%; min-height: 56px; font-size: 16px; font-weight: 600; box-shadow: 0 10px 22px rgba(204, 52, 80, .22); }
.woocommerce-checkout #payment, .woocommerce-checkout #payment .place-order { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; background: transparent !important; }

/* Messages (panier vide, infos, erreurs) */
.woocommerce-info, .woocommerce-message, .woocommerce-cart .cart-empty {
	border: 0 !important; border-radius: var(--a316-enc-r, 18px); font-size: var(--a316-enc-fs, 15px);
}
.woocommerce-checkout #payment .woocommerce-info { margin-bottom: var(--a316-enc-esp) !important; padding-top: 12px !important; padding-bottom: 12px !important; }
.woocommerce-error { border-radius: 18px; }

/* Panier vide : carte centrée et joyeuse */
.site-main .a316-panier-vide { width: var(--theme-container-width, 88vw); max-width: var(--theme-normal-container-max-width, 1290px); margin: 10px auto 0; text-align: center; background: radial-gradient(circle at 50% 0%, #FFF3D1 0, #FFFFFF 55%); border: 1px solid #F6C9C6; border-radius: 26px; padding: 46px 34px 42px; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); }
.a316-panier-vide__icone { width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%; background: #FFF3D1; display: flex; align-items: center; justify-content: center; color: #CC3450; }
.a316-panier-vide__titre { margin: 0 0 8px; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 26px; color: var(--theme-palette-color-4); }
.a316-panier-vide__texte { margin: 0 0 22px; color: #4A3A4D; }
.a316-panier-vide__liens { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.a316-panier-vide__liens a { display: inline-flex; align-items: center; height: 44px; padding: 0 22px; border-radius: 999px; border: 1px solid #F6C9C6; background: #FFFFFF; color: var(--theme-palette-color-4); font-weight: 500; text-decoration: none; }
.a316-panier-vide__liens a:first-child { background: #CC3450; border-color: #CC3450; color: #FFFFFF; }
.a316-panier-vide__liens a:hover { border-color: #CC3450; }
.woocommerce-cart .wc-empty-cart-message, .woocommerce-cart .return-to-shop { display: none; }

/* Mon compte : connexion / inscription */
.woocommerce-account:not(.logged-in) .woocommerce { max-width: 980px; margin: 0 auto; }
.woocommerce-account #customer_login { gap: 28px; }
.woocommerce-account #customer_login h2 { text-align: center; margin-bottom: 18px; }
.woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register { margin: 0 !important; }
.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-form-login { max-width: 460px; margin: 0 auto !important; }
.woocommerce-account .woocommerce-form-login .button, .woocommerce-account .woocommerce-form-register .button { width: 100%; min-height: 50px; font-weight: 600; }
.woocommerce-account .lost_password { text-align: center; }
.woocommerce-account .lost_password a, .woocommerce-account .woocommerce-privacy-policy-text a { color: #CC3450; }
.woocommerce-account .woocommerce-privacy-policy-text { font-size: 13px; color: #8A7A8C; }

/* Mon compte : menu et contenu une fois connecté */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 14px; background: #FFFFFF; border: 1px solid #F6C9C6; border-radius: 24px; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; border: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 11px 18px; border-radius: 999px; color: var(--theme-palette-color-4); font-weight: 500; text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: #FFF3D1; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: #CC3450; color: #FFFFFF; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a { color: #8A7A8C; }
.woocommerce-account .woocommerce-MyAccount-content > p:first-child { font-size: 17px; }
.woocommerce-account .woocommerce-MyAccount-content a { color: #CC3450; }
.woocommerce-account .woocommerce-orders-table, .woocommerce-account .woocommerce-Addresses address { border-radius: 18px; }

@media (max-width: 689.98px) {
	.woocommerce-cart .woocommerce-cart-form, .woocommerce-cart .cart_totals, .woocommerce-checkout #customer_details, .woocommerce-checkout .ct-order-review,
	.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register, .woocommerce-account .woocommerce-ResetPassword { padding: 22px 18px !important; border-radius: 20px; }
	.woocommerce-cart .page-title, .woocommerce-checkout .page-title, .woocommerce-account .page-title { font-size: 32px; }
	.woocommerce-cart .actions .coupon { display: flex; gap: 8px; }
	.woocommerce-cart .actions .coupon #coupon_code { flex: 1; min-width: 0; }
	.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 20px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px; }
	.woocommerce-account .woocommerce-MyAccount-navigation li a { padding: 8px 14px; font-size: 14px; background: #FFFBF3; }
}

/* v1.7.11 : ajustements panier / compte */
.woocommerce-cart .ct-woocommerce-cart-form { align-items: start; }
.woocommerce-cart .cart_totals { border-width: 1px !important; }
.woocommerce-cart .cart_totals table th, .woocommerce-cart .cart_totals table td { border-color: #FBE3E2 !important; }
.woocommerce-account .woocommerce-form-register > p:not(.form-row):not(.woocommerce-privacy-policy-text) { font-size: 15px; line-height: 1.6; color: #4A3A4D; }

/* v1.7.12 : récap de commande en une seule carte, champ code promo sur mobile */
.woocommerce-checkout .ct-order-review #order_review { background: transparent; border: 0 !important; box-shadow: none; padding: 0 !important; border-radius: 0; }
.woocommerce-cart #coupon_code { min-height: 46px; }

/* ==========================================================
   v1.8.0 : panier et Mon compte plus travaillés (demande d'Olivier « un peu basique »)
   ========================================================== */
.woocommerce-cart .entry-header, .woocommerce-checkout .entry-header, .woocommerce-account .entry-header { margin-bottom: 6px; }

/* Étapes */
.a316-etapes { list-style: none; display: flex; justify-content: center; align-items: center; gap: 0; margin: 0 auto 30px; padding: 0; max-width: 640px; counter-reset: none; }
.a316-etapes__item { display: flex; align-items: center; gap: 10px; color: #9C8C9E; font-size: 14px; font-weight: 500; white-space: nowrap; }
.a316-etapes__item + .a316-etapes__item::before { content: ""; width: 56px; height: 2px; margin: 0 14px; border-radius: 2px; background: repeating-linear-gradient(90deg, #F6C9C6 0 6px, transparent 6px 10px); }
.a316-etapes__item.is-fait + .a316-etapes__item::before { background: #CC3450; }
.a316-etapes__num { width: 32px; height: 32px; flex: 0 0 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; background: #FFFFFF; border: 1.5px solid #F6C9C6; color: #9C8C9E; }
.a316-etapes__item.is-active { color: var(--theme-palette-color-4); }
.a316-etapes__item.is-active .a316-etapes__num { background: #CC3450; border-color: #CC3450; color: #FFFFFF; box-shadow: 0 0 0 5px rgba(204, 52, 80, .14); }
.a316-etapes__item.is-fait .a316-etapes__num { background: #F5C84C; border-color: #F5C84C; color: #2A1A2E; }
.woocommerce-cart .a316-etapes, .woocommerce-checkout .a316-etapes { grid-column: 1 / -1; }

/* Jauge livraison offerte */
.a316-jauge { display: flex; align-items: center; gap: var(--a316-enc-gap); margin: 0 0 26px; padding: var(--a316-enc-pad); border-radius: var(--a316-enc-r); background: linear-gradient(110deg, #FFF3D1 0%, #FBE3E2 100%); border: 1px solid #F6D99A; grid-column: 1 / -1; }
.a316-jauge__icone { width: var(--a316-enc-ico); height: var(--a316-enc-ico); flex: 0 0 var(--a316-enc-ico); border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #FFFFFF; color: #CC3450; box-shadow: 0 6px 14px rgba(204, 52, 80, .12); }
.a316-jauge__icone svg { width: 50%; height: 50%; }
.a316-jauge__corps { flex: 1; min-width: 0; }
.a316-jauge__texte { margin: 0 0 8px; font-size: var(--a316-enc-fs); color: var(--theme-palette-color-4); }
.a316-jauge__texte strong { color: #CC3450; font-weight: 600; }
.a316-jauge__barre { height: 8px; border-radius: 99px; background: rgba(255, 255, 255, .85); overflow: hidden; }
.a316-jauge__barre span { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, #F5C84C, #CC3450); }
.a316-jauge.is-ok { background: linear-gradient(110deg, #E7F6EC 0%, #FFF3D1 100%); border-color: #BFE3CB; }
.a316-jauge.is-ok .a316-jauge__barre span { background: linear-gradient(90deg, #3FA66A, #F5C84C); }
.woocommerce-cart .cart_totals [class*="shipping-progress"] { display: none !important; }

/* Lignes du panier plus généreuses */
.woocommerce-cart table.shop_table .product-thumbnail { width: 120px; }
.woocommerce-cart table.shop_table .product-thumbnail img { width: 96px !important; height: 96px !important; object-fit: cover; border-radius: 18px; background: #FFFBF3; border: 1px solid #FBE3E2; }
.woocommerce-cart table.shop_table .product-subtotal { font-weight: 600; color: #CC3450; }

/* Récapitulatif : bandeau dégradé en tête de carte */
.woocommerce-cart .cart_totals { position: relative; overflow: hidden; padding-top: 0 !important; }
.woocommerce-cart .cart_totals > h2 { margin: 0 -32px 22px; padding: 22px 32px 18px; background: linear-gradient(110deg, #CC3450 0%, #E4607A 100%); color: #FFFFFF !important; font-size: 24px; }
.woocommerce-cart .cart_totals > h2::after { content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 12px; vertical-align: middle; border-radius: 50%; background: #F5C84C; box-shadow: 13px 0 0 rgba(255,255,255,.7); }

/* Promesses sous le bouton */
.a316-promesses { list-style: none; margin: 18px 0 0; padding: 16px 0 0; border-top: 1px dashed #F6C9C6; display: grid; gap: 10px; }
.a316-promesses li { display: flex; align-items: center; gap: 12px; margin: 0; font-size: 14px; color: #4A3A4D; }
.a316-promesses svg { width: 30px; height: 30px; padding: 6px; box-sizing: border-box; border-radius: 50%; background: #FFF3D1; color: #CC3450; flex: 0 0 30px; }
.a316-promesses li:nth-child(2) svg { background: #FBE3E2; }

/* Panier vide avec pastilles photo */
.a316-panier-vide__icone svg { width: 28px; height: 28px; }
.a316-panier-vide__ronds { display: flex; justify-content: center; gap: 26px; margin: 8px 0 28px; flex-wrap: wrap; }
.a316-panier-vide__rond { display: flex; flex-direction: column; align-items: center; gap: 10px; color: var(--theme-palette-color-4); font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.a316-panier-vide__rond span { width: 112px; height: 112px; border-radius: 50%; overflow: hidden; background: #FFFFFF; box-shadow: 0 10px 24px rgba(204, 52, 80, .14); border: 3px solid #FFFFFF; outline: 1px solid #F6C9C6; transition: transform .25s ease; }
.a316-panier-vide__rond img { width: 100%; height: 100%; object-fit: cover; display: block; }
.a316-panier-vide__rond:hover span { transform: translateY(-4px) rotate(-3deg); }
.a316-panier-vide__cta { display: inline-flex; align-items: center; height: 50px; padding: 0 30px; border-radius: 999px; background: #CC3450; color: #FFFFFF !important; font-weight: 600; text-decoration: none; box-shadow: 0 10px 22px rgba(204, 52, 80, .22); }
.a316-panier-vide__cta:hover { background: #B32843; }

/* Mon compte : connexion en 2 colonnes (photo + formulaire) */
.woocommerce-account:not(.logged-in) .woocommerce { max-width: 1040px; }
.a316-connexion { display: grid; grid-template-columns: 1.05fr 1fr; background: #FFFFFF; border: 1px solid #F6C9C6; border-radius: 28px; overflow: hidden; box-shadow: 0 18px 44px rgba(204, 52, 80, .09); }
.a316-connexion__visuel { position: relative; min-height: 520px; margin: 0; }
.a316-connexion__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.a316-connexion__voile { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 36px; background: linear-gradient(180deg, rgba(42, 26, 46, 0) 30%, rgba(42, 26, 46, .78) 100%); color: #FFFFFF; }
.a316-connexion__surtitre { margin: 0 0 6px; font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: #F5C84C; }
.a316-connexion__titre { margin: 0 0 18px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 34px; line-height: 1.15; color: #FFFFFF; }
.a316-connexion__voile ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.a316-connexion__voile li { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 15px; }
.a316-connexion__voile li svg { width: 28px; height: 28px; padding: 5px; box-sizing: border-box; border-radius: 50%; background: rgba(255, 255, 255, .18); color: #F5C84C; }
.a316-connexion__form { padding: 46px 48px 36px; display: flex; flex-direction: column; justify-content: center; }
.a316-connexion__h { margin: 0 0 22px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 28px; color: var(--theme-palette-color-4); }
.a316-connexion__h::after { content: ""; display: block; width: 40px; height: 3px; margin-top: 10px; border-radius: 3px; background: linear-gradient(90deg, #CC3450, #F5C84C); }
.a316-connexion .woocommerce-form-login { border: 0 !important; box-shadow: none; padding: 0 !important; max-width: none !important; background: transparent; }
.a316-connexion__note { margin: 22px 0 0; padding: 14px 18px; border-radius: 16px; background: #FFF3D1; font-size: 14px; color: #4A3A4D; text-align: center; }

/* Mon compte connectée : menu avec icônes + tuiles */
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: flex; align-items: center; gap: 10px; }
.woocommerce-account .woocommerce-MyAccount-navigation li a::before { content: ""; width: 18px; height: 18px; flex: 0 0 18px; background: currentColor; -webkit-mask: var(--a316-ico) no-repeat center / contain; mask: var(--a316-ico) no-repeat center / contain; }
.woocommerce-MyAccount-navigation-link--dashboard { --a316-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7' rx='2'/%3E%3Crect x='14' y='3' width='7' height='7' rx='2'/%3E%3Crect x='3' y='14' width='7' height='7' rx='2'/%3E%3Crect x='14' y='14' width='7' height='7' rx='2'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--orders { --a316-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 7l9-4 9 4v10l-9 4-9-4z'/%3E%3Cpath d='M3 7l9 4 9-4M12 11v10'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-address { --a316-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 11l8-7 8 7v9H4z'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-account { --a316-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--customer-logout { --a316-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M15 4h4v16h-4M10 8l-4 4 4 4M6 12h10'/%3E%3C/svg%3E"); }
.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type { font-family: 'Bodoni Moda', Georgia, serif; font-size: 24px; color: var(--theme-palette-color-4); }
.woocommerce-account .woocommerce-MyAccount-content > p:nth-of-type(2) { display: none; }
.a316-tuiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 18px; }
.a316-tuile { display: grid; grid-template-columns: 48px 1fr; grid-template-rows: auto auto; column-gap: 14px; align-items: center; padding: 20px 22px; border-radius: 20px; background: #FFFBF3; border: 1px solid #FBE3E2; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.a316-tuile:hover { transform: translateY(-3px); border-color: #F6C9C6; box-shadow: 0 12px 26px rgba(204, 52, 80, .10); }
.a316-tuile__icone { grid-row: 1 / 3; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #FBE3E2; color: #CC3450; }
.a316-tuile:nth-child(even) .a316-tuile__icone { background: #FFF3D1; }
.a316-tuile__titre { font-weight: 600; color: var(--theme-palette-color-4); }
.a316-tuile__texte { font-size: 13.5px; color: #8A7A8C; }

@media (max-width: 999.98px) {
	.a316-connexion { grid-template-columns: 1fr; }
	.a316-connexion__visuel { min-height: 300px; }
	.a316-connexion__titre { font-size: 28px; }
}
@media (max-width: 689.98px) {
	.a316-etapes { margin-bottom: 22px; }
	.a316-etapes__item { flex-direction: column; gap: 6px; font-size: 11.5px; white-space: normal; text-align: center; max-width: 92px; }
	.a316-etapes__item + .a316-etapes__item::before { display: none; }
	.a316-etapes { gap: 18px; align-items: flex-start; }
	.woocommerce-cart .cart_totals > h2 { margin: 0 -18px 18px; padding: 18px; }
	.woocommerce-cart table.shop_table .product-thumbnail img { width: 80px !important; height: 80px !important; }
	.a316-panier-vide__ronds { gap: 14px; }
	.a316-panier-vide__rond span { width: 86px; height: 86px; }
	.a316-panier-vide__rond { font-size: 11px; }
	.a316-connexion { border-radius: 22px; }
	.a316-connexion__visuel { min-height: 240px; }
	.a316-connexion__voile { padding: 22px; }
	.a316-connexion__voile ul { display: none; }
	.a316-connexion__form { padding: 28px 20px 24px; }
	.a316-tuiles { grid-template-columns: 1fr; }
}

/* v1.8.1 : ajustements */
.a316-connexion .woocommerce-form-login + h2, .a316-connexion__form > h2 { display: none; }
.a316-connexion__voile { justify-content: flex-start; background: linear-gradient(180deg, rgba(42, 26, 46, .80) 0%, rgba(42, 26, 46, .35) 45%, rgba(42, 26, 46, 0) 70%); }
.woocommerce-cart .cart_totals { margin-top: 0 !important; }
.woocommerce-cart .wc-proceed-to-checkout { padding-top: 6px !important; }

/* v1.8.2 : pas de vide sous le total (la jauge Blocksy est remplacée par celle du haut) */
.woocommerce-cart .cart_totals .ct-cart-totals-modules { display: none !important; }
.woocommerce-cart .cart_totals table.shop_table { margin-bottom: 14px; }
.woocommerce-cart .wc-proceed-to-checkout { margin-top: 0 !important; }

/* ===== v1.8.3 : espace client connectée ===== */
/* Boutons lisibles (le texte framboise se perdait sur le fond framboise) */
.woocommerce-account .woocommerce-MyAccount-content a.button,
:is(.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-order-received .woocommerce-order-details) .woocommerce-button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 20px !important; border-radius: 999px !important; background: #CC3450; border: 1.5px solid #CC3450; color: #FFFFFF !important; font-size: 14px; font-weight: 600; line-height: 1; text-decoration: none; white-space: nowrap; transition: background .2s ease, color .2s ease, transform .2s ease; }
.woocommerce-account .woocommerce-MyAccount-content a.button:hover { background: #B52A45; border-color: #B52A45; transform: translateY(-1px); }
:is(.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-order-received .woocommerce-order-details) .woocommerce-button.view { background: #FFFFFF; color: #CC3450 !important; }
:is(.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-order-received .woocommerce-order-details) .woocommerce-button.view:hover { background: #FBE3E2; }
:is(.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-order-received .woocommerce-order-details) .woocommerce-button.cancel { background: transparent; border-color: transparent; color: #8A7A8C !important; font-weight: 500; padding: 0 8px !important; text-decoration: underline; text-underline-offset: 3px; }
:is(.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-order-received .woocommerce-order-details) .woocommerce-button.cancel:hover { background: transparent; color: #CC3450 !important; transform: none; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button { order: 2; margin-left: auto; }

/* Badges d'état */
.a316-statut { display: inline-flex; align-items: center; gap: 7px; padding: 6px 13px; border-radius: 999px; font-size: 13px; font-weight: 600; line-height: 1.2; white-space: nowrap; background: #FFF3D1; color: #7A5A12; }
.a316-statut::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.a316-statut--processing { background: #FBE3E2; color: #B52A45; }
.a316-statut--completed { background: #E6F2E8; color: #2F6B45; }
.a316-statut--cancelled, .a316-statut--refunded, .a316-statut--failed { background: #F1ECEF; color: #7A6A7C; }

/* Menu du compte sur téléphone : 2 colonnes bien rangées */
@media (max-width: 689.98px) {
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; }
	.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0 !important; }
	.woocommerce-account .woocommerce-MyAccount-navigation li a { justify-content: flex-start; padding: 11px 14px !important; font-size: 14px; }
	.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { grid-column: 1 / -1; }
}

/* Tableau de bord */
.a316-tableau .woocommerce-MyAccount-content > p { display: none !important; }
.a316-bonjour { position: relative; margin: -4px 0 20px; padding: 26px 28px; border-radius: 22px; background: linear-gradient(120deg, #FBE3E2 0%, #FFF3D1 100%); overflow: hidden; }
.a316-bonjour::after { content: ""; position: absolute; right: -30px; top: -30px; width: 130px; height: 130px; border-radius: 50%; border: 14px solid rgba(204, 52, 80, .10); }
.a316-bonjour__titre { margin: 0 0 6px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 30px; line-height: 1.15; color: var(--theme-palette-color-4); }
.a316-bonjour__texte { margin: 0; font-size: 15px; color: #4A3A4D; max-width: 460px; }
.a316-derniere { display: flex; align-items: center; gap: 18px; margin: 0 0 4px; padding: 16px 20px; border-radius: 20px; border: 1px solid #F6C9C6; background: #FFFFFF; text-decoration: none !important; transition: box-shadow .2s ease, transform .2s ease; }
.a316-derniere:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(204, 52, 80, .10); }
.a316-derniere__photos { display: flex; flex: 0 0 auto; }
.a316-derniere__photos img, .woocommerce-orders-table__cell-a316-photos img { width: 58px !important; height: 58px !important; object-fit: cover; border-radius: 14px; border: 2px solid #FFFFFF; box-shadow: 0 2px 8px rgba(42, 26, 46, .10); }
.a316-derniere__photos img + img, .woocommerce-orders-table__cell-a316-photos img + img { margin-left: -16px; }
.a316-derniere__corps { flex: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; }
.a316-derniere__sur { flex: 0 0 100%; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #CC3450; }
.a316-derniere__num { font-weight: 600; color: var(--theme-palette-color-4); }
.a316-derniere__voir { flex: 0 0 auto; padding: 9px 18px; border-radius: 999px; border: 1.5px solid #CC3450; color: #CC3450; font-size: 14px; font-weight: 600; }
.a316-tableau .a316-tuiles { margin-top: 16px; }

/* Liste des commandes en cartes */
.woocommerce-account table.woocommerce-orders-table { border: 0 !important; background: transparent; margin: 0; }
.woocommerce-account table.woocommerce-orders-table thead { display: none; }
.woocommerce-account table.woocommerce-orders-table tbody { display: grid; gap: 14px; }
.woocommerce-account table.woocommerce-orders-table tr.order { display: grid; grid-template-columns: auto 1fr auto auto; grid-template-areas: "photos num statut actions" "photos date total actions"; align-items: center; gap: 4px 22px; padding: 18px 22px; border-radius: 20px; border: 1px solid #F6C9C6; background: #FFFFFF; transition: box-shadow .2s ease; }
.woocommerce-account table.woocommerce-orders-table tr.order:hover { box-shadow: 0 12px 26px rgba(204, 52, 80, .09); }
.woocommerce-account table.woocommerce-orders-table tr.order > * { display: block; padding: 0 !important; border: 0 !important; background: none !important; text-align: left !important; font-size: 15px; }
.woocommerce-account table.woocommerce-orders-table tr.order > *::before { content: none !important; display: none !important; }
.woocommerce-orders-table__cell-order-number { grid-area: num; font-weight: 600; }
.woocommerce-orders-table__cell-order-number a { font-size: 17px; color: var(--theme-palette-color-4) !important; text-decoration: none; }
.woocommerce-orders-table__cell-order-number a::before { content: "Commande "; }
.woocommerce-orders-table__cell-order-date { grid-area: date; color: #8A7A8C; font-size: 14px !important; }
.woocommerce-orders-table__cell-order-status { grid-area: statut; justify-self: end; }
.woocommerce-orders-table__cell-order-total { grid-area: total; justify-self: end; color: #8A7A8C; font-size: 14px !important; }
.woocommerce-orders-table__cell-order-total .amount { font-size: 16px; font-weight: 600; color: var(--theme-palette-color-4); }
.woocommerce-orders-table__cell-a316-photos { grid-area: photos; display: flex !important; align-items: center; }
.a316-plus { margin-left: 6px; font-size: 13px; font-weight: 600; color: #CC3450; }
.woocommerce-orders-table__cell-order-actions { grid-area: actions; display: flex !important; flex-direction: column; align-items: stretch; gap: 6px; }
.woocommerce-orders-table__cell-order-actions .button { margin: 0 !important; }
.woocommerce-account .a316-commandes-vide { width: auto; margin: 0; border: 0; box-shadow: none; padding: 20px 0; max-width: none; background: none; }
.a316-commandes-vide ~ .woocommerce-info, .a316-commandes-vide ~ .woocommerce-message { display: none !important; }

/* Détail d'une commande */
.a316-voir-commande .woocommerce-MyAccount-content > p:first-of-type { display: none; }
.a316-cmd-tete { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-bottom: 22px; }
.a316-cmd-tete__num { margin: 0; font-family: 'Bodoni Moda', Georgia, serif; font-size: 28px; line-height: 1.15; color: var(--theme-palette-color-4); }
.a316-cmd-tete__date { margin: 4px 0 0; font-size: 14px; color: #8A7A8C; }
.a316-suivi { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 0 30px; padding: 18px 10px; border-radius: 20px; background: #FFFBF3; border: 1px solid #FBE3E2; counter-reset: none; }
.a316-suivi li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; font-size: 13.5px; font-weight: 500; color: #9C8C9E; text-align: center; }
.a316-suivi li span { position: relative; z-index: 1; width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #FFFFFF; border: 1.5px solid #F6C9C6; color: #C9B8C6; }
.a316-suivi li + li::before { content: ""; position: absolute; top: 23px; right: 50%; width: 100%; height: 2px; background: repeating-linear-gradient(90deg, #F6C9C6 0 6px, transparent 6px 10px); }
.a316-suivi li.is-fait + li.is-fait::before { background: #CC3450; }
.a316-suivi li.is-fait { color: var(--theme-palette-color-4); }
.a316-suivi li.is-fait span { background: #FBE3E2; border-color: #FBE3E2; color: #CC3450; }
.a316-suivi li.is-active span { background: #CC3450; border-color: #CC3450; color: #FFFFFF; box-shadow: 0 0 0 6px rgba(204, 52, 80, .13); }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-order-details__title, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-column__title { font-family: 'Bodoni Moda', Georgia, serif; font-size: 22px; margin: 0 0 14px; }
.woocommerce-order-received .woocommerce-order-overview { border-color: #FBE3E2 !important; border-radius: 20px; overflow: hidden; background: #FFFFFF; margin-bottom: 30px !important; }
.woocommerce-order-received .woocommerce-order-overview li { border-color: #FBE3E2 !important; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details { border: 1px solid #FBE3E2 !important; border-radius: 20px; overflow: hidden; border-collapse: separate !important; border-spacing: 0; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details th, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details td { padding: 14px 18px !important; border-color: #FBE3E2 !important; border-style: solid !important; border-width: 0 0 1px !important; vertical-align: middle; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details thead th { background: #FFFBF3; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: #8A7A8C; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details tfoot tr:last-child th, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details tfoot tr:last-child td { border-bottom: 0 !important; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details tfoot tr:has(.order-actions-button) { background: #FFFBF3; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details .order-actions-button { margin: 0 6px 0 0 !important; }
.woocommerce-table--order-details .product-name { display: flex; align-items: center; gap: 14px; }
.woocommerce-table--order-details .product-name a { color: var(--theme-palette-color-4) !important; text-decoration: none; font-weight: 500; }
.a316-ligne-photo img { display: block; width: 56px !important; height: 56px !important; object-fit: cover; border-radius: 14px; }
.woocommerce-table--order-details .product-quantity { margin-left: 4px; color: #CC3450; }

/* Cartes d'adresses (page Adresses + détail de commande) */
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Addresses, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-columns--addresses { display: grid !important; grid-template-columns: 1fr 1fr; gap: 18px; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Addresses::before, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Addresses::after, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-columns--addresses::before, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-columns--addresses::after { display: none !important; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Addresses > .woocommerce-Address, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-columns--addresses > .woocommerce-column { float: none !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 22px 24px !important; border: 1px solid #F6C9C6 !important; border-radius: 20px; background: #FFFBF3; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Address address, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-column address { border: 0 !important; padding: 0 !important; margin: 0; font-style: normal; line-height: 1.75; color: #4A3A4D; }
.woocommerce-account .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.woocommerce-account .woocommerce-Address-title h2, .woocommerce-account .woocommerce-Address-title h3 { display: flex; align-items: center; gap: 10px; margin: 0; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Address-title h2::before, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Address-title h3::before, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-column__title::before { content: ""; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: #FBE3E2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CC3450' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7v9H4z'/%3E%3C/svg%3E") no-repeat center / 17px; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-column__title { display: flex; align-items: center; gap: 10px; }
.woocommerce-account .woocommerce-Address-title a.edit { flex: 0 0 auto; padding: 8px 16px; border-radius: 999px; border: 1.5px solid #CC3450; background: #FFFFFF; font-size: 13.5px; font-weight: 600; text-decoration: none; }
.woocommerce-account .woocommerce-Address-title a.edit:hover { background: #FBE3E2; }
.woocommerce-edit-address .woocommerce-MyAccount-content > p:first-of-type { font-family: inherit; font-size: 15px; color: #8A7A8C; margin-bottom: 18px; }
:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-customer-details--phone, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-customer-details--email { margin: 6px 0 0 !important; }

/* Mes informations */
.woocommerce-account .woocommerce-EditAccountForm fieldset { margin: 26px 0 8px; padding: 22px 24px 8px; border: 1px solid #FBE3E2 !important; border-radius: 20px; background: #FFFBF3; }
.woocommerce-account .woocommerce-EditAccountForm legend { padding: 6px 14px; border-radius: 999px; background: #FBE3E2; color: #B52A45; font-size: 13.5px; font-weight: 600; }
.woocommerce-account .woocommerce-EditAccountForm #account_display_name_description em { font-style: normal; font-size: 13px; color: #8A7A8C; }

@media (max-width: 689.98px) {
	.a316-bonjour { padding: 22px 20px; }
	.a316-bonjour__titre { font-size: 25px; }
	.a316-derniere { flex-wrap: wrap; gap: 12px; padding: 14px 16px; }
	.a316-derniere__voir { display: none; }
	.woocommerce-account table.woocommerce-orders-table tr.order { grid-template-columns: 1fr auto; grid-template-areas: "num statut" "date date" "photos total" "actions actions"; gap: 6px 12px; padding: 16px; }
	.woocommerce-orders-table__cell-a316-photos { margin-top: 8px; }
	.woocommerce-orders-table__cell-order-actions { flex-direction: row; flex-wrap: wrap; margin-top: 10px !important; }
	.woocommerce-orders-table__cell-order-actions .button { flex: 1 1 auto; }
	.a316-cmd-tete__num { font-size: 24px; }
	.a316-suivi { padding: 16px 4px; }
	.a316-suivi li { font-size: 12px; }
	.a316-suivi li span { width: 40px; height: 40px; }
	.a316-suivi li + li::before { top: 20px; }
	:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-Addresses, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-columns--addresses { grid-template-columns: 1fr; }
	:is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details th, :is(.woocommerce-account, .woocommerce-order-received) .woocommerce-table--order-details td { padding: 12px 14px !important; }
	.woocommerce-account .woocommerce-EditAccountForm fieldset { padding: 18px 16px 6px; }
}

/* v1.8.4 : icône « compte » à la place de la photo de profil grise, une fois connectée */
.ct-header-account[data-state="in"] .ct-media-container { position: relative; display: inline-flex; align-items: center; justify-content: center; }
.ct-header-account[data-state="in"] .ct-media-container img { display: none !important; }
.ct-header-account[data-state="in"] .ct-account-item > .ct-media-container::before { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E") no-repeat center / contain; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E") no-repeat center / contain; }
.ct-header-account[data-state="in"] .ct-account-item > .ct-media-container::after { content: ""; position: absolute; right: -3px; bottom: -1px; width: 7px; height: 7px; border-radius: 50%; background: #CC3450; box-shadow: 0 0 0 2px #FFFFFF; }
.ct-header-account-user-info .ct-media-container { display: none !important; }

/* v1.8.5 : finitions téléphone (menu du compte sur une ligne, détail de commande plus lisible) */
.a316-ligne-photo { flex: 0 0 56px; }
@media (max-width: 689.98px) {
	.woocommerce-account .woocommerce-MyAccount-navigation li a { gap: 8px !important; padding: 11px 12px !important; white-space: nowrap; font-size: 13.5px; }
	.woocommerce-account .woocommerce-MyAccount-navigation li a::before { margin: 0 !important; }
	.woocommerce-table--order-details .product-name { display: table-cell; }
	.woocommerce-table--order-details .a316-ligne-photo { float: left; margin: 2px 12px 4px 0; }
	.woocommerce-table--order-details .a316-ligne-photo img { width: 48px !important; height: 48px !important; }
	.woocommerce-table--order-details td.product-total, .woocommerce-table--order-details th.product-total { width: 90px; white-space: nowrap; }
	.woocommerce-table--order-details tfoot td { font-size: 14px; }
}

/* ===== v1.8.7 : menu téléphone ===== */
#offcanvas.a316-mm .ct-panel-inner { background: #FFFCF5 !important; color: var(--theme-palette-color-4); }
#offcanvas.a316-mm .ct-panel-actions { padding: 18px 20px 0; }
#offcanvas.a316-mm .ct-toggle-close { width: 40px; height: 40px; border-radius: 50%; background: #FBE3E2 !important; color: #CC3450 !important; --theme-icon-color: #CC3450; }
#offcanvas.a316-mm .ct-toggle-close svg { fill: #CC3450; }
#offcanvas.a316-mm .ct-panel-content-inner { padding: 6px 22px 28px !important; display: flex; flex-direction: column; justify-content: flex-start !important; align-items: stretch !important; }
.a316-mm__titre { margin: 0 0 16px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 26px; line-height: 1.15; color: var(--theme-palette-color-4); }
.a316-mm__titre::after { content: ""; display: block; width: 40px; height: 3px; margin-top: 10px; border-radius: 3px; background: linear-gradient(90deg, #CC3450, #F5C84C); }
.a316-mm__ronds { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.a316-mm__rond { display: flex; flex-direction: column; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--theme-palette-color-4) !important; text-decoration: none; text-align: center; }
.a316-mm__rond span { display: block; width: 88px; height: 88px; max-width: 100%; aspect-ratio: 1; border-radius: 50%; overflow: hidden; padding: 3px; background: linear-gradient(135deg, #CC3450, #F5C84C); }
.a316-mm__rond img { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 50%; border: 3px solid #FFFCF5; }
.a316-mm__teintes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 18px 0 8px; }
.a316-mm__teinte { display: flex; align-items: center; justify-content: center; gap: 9px; padding: 12px; border-radius: 999px; background: #FFFFFF; border: 1px solid #F6C9C6; font-size: 14.5px; font-weight: 600; color: var(--theme-palette-color-4) !important; text-decoration: none; }
.a316-mm__teinte i { width: 16px; height: 16px; border-radius: 50%; }
.a316-mm__teinte.is-dore i { background: linear-gradient(135deg, #F7DE8E, #C99A3E); }
.a316-mm__teinte.is-argente i { background: linear-gradient(135deg, #F4F4F6, #A9AAB2); }
#offcanvas.a316-mm .mobile-menu { margin: 10px 0 0; width: 100%; }
#offcanvas.a316-mm .mobile-menu .menu-item-359, #offcanvas.a316-mm .mobile-menu .menu-item-360, #offcanvas.a316-mm .mobile-menu .menu-item-361, #offcanvas.a316-mm .mobile-menu .menu-item-363, #offcanvas.a316-mm .mobile-menu .menu-item-364 { display: none !important; }
#offcanvas.a316-mm .mobile-menu > ul > li { border-bottom: 1px solid #FBE3E2; margin: 0 !important; }
#offcanvas.a316-mm .mobile-menu > ul > li > a { display: flex !important; justify-content: space-between; align-items: center; padding: 15px 4px !important; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px !important; font-weight: 400 !important; color: var(--theme-palette-color-4) !important; }
#offcanvas.a316-mm .mobile-menu > ul > li > a::after { content: "›"; font-family: 'Jost', sans-serif; font-size: 24px; color: #CC3450; }
#offcanvas.a316-mm .mobile-menu > ul > li.current-menu-item > a, #offcanvas.a316-mm .mobile-menu > ul > li > a:hover { color: #CC3450 !important; }
.a316-mm__bas { margin-top: 8px; display: grid; gap: 14px; }
.a316-mm__nouv { display: flex; align-items: center; gap: 12px; padding: 15px 4px; border-bottom: 1px solid #FBE3E2; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px; color: var(--theme-palette-color-4) !important; text-decoration: none; }
.a316-mm__nouv svg { width: 30px; height: 30px; padding: 6px; box-sizing: border-box; border-radius: 50%; background: #F5C84C; color: #2A1A2E; }
.a316-mm__raccourcis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 6px; }
.a316-mm__raccourcis a { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 12px 4px; border-radius: 18px; background: #FFFFFF; border: 1px solid #FBE3E2; font-size: 12.5px; font-weight: 600; color: var(--theme-palette-color-4) !important; text-decoration: none; }
.a316-mm__raccourcis svg { color: #CC3450; }
.a316-mm__livraison { display: flex; align-items: center; gap: 10px; margin: 0; padding: 13px 16px; border-radius: 18px; background: #F5C84C; color: #2A1A2E; font-size: 14.5px; font-weight: 600; }
.a316-mm__promesse { margin: -4px 0 0; text-align: center; font-size: 12.5px; color: #8A7A8C; }
/* v1.8.8 */
#offcanvas.a316-mm .ct-toggle-close { border-radius: 50% !important; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; }
#offcanvas.a316-mm .mobile-menu { margin-top: 0; }
.a316-mm__haut .a316-mm__nouv { margin-top: 8px; border-top: 1px solid #FBE3E2; }

/* v1.8.9 : barre « Ajouter au panier » du bas, bouton arrondi comme sur la fiche */
.ct-floating-bar .ct-floating-bar-actions .button, .ct-floating-bar .ct-floating-bar-actions a, .ct-floating-bar .ct-floating-bar-actions button, .ct-floating-bar .quantity, .ct-floating-bar .quantity input { border-radius: 999px !important; }
.ct-floating-bar .ct-floating-bar-actions .button { padding-left: 24px !important; padding-right: 24px !important; }
.ct-floating-bar .ct-media-container, .ct-floating-bar .ct-media-container img { border-radius: 12px; }

/* v1.9.0 : sur téléphone, plus de trait vide ni de grand blanc entre « Une question ? » et les onglets */
@media (max-width: 999.98px) {
	.single-product .entry-summary > .ct-product-divider:last-child { display: none !important; }
	.single-product .entry-summary > .ct-product-add-to-cart:nth-last-child(2) { margin-bottom: 0 !important; }
	.single-product .product > .woocommerce-tabs { padding-top: 34px !important; }
}
@media (max-width: 999.98px) {
	.single-product .entry-summary .ct-product-add-to-cart ~ .ct-product-divider { display: none !important; }
	.single-product .entry-summary .ct-product-add-to-cart { margin-bottom: 0 !important; }
}

/* v1.9.2 : fil d'Ariane plus discret sur téléphone (petit, sur une ligne, sans répéter le nom du bijou) */
@media (max-width: 689.98px) {
	.ct-breadcrumbs { font-size: 10px !important; line-height: 1.4 !important; letter-spacing: .04em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.ct-breadcrumbs > span { display: inline !important; }
	.ct-breadcrumbs .ct-separator { width: 6px; height: 6px; margin: 0 5px !important; }
	.single-product .ct-breadcrumbs > span.last-item { display: none !important; }
	.single-product .ct-breadcrumbs > span:nth-last-child(2) .ct-separator { display: none; }
}

/* v1.9.4 : les 3 points suivent le titre « Pourquoi vous allez les adorer » (même sur 2 lignes) */
.single-product .woocommerce-Tabs-panel--description::after { display: none !important; }
.single-product .woocommerce-Tabs-panel--description::before { padding-bottom: 26px; background: radial-gradient(circle, #F5C84C 3.5px, transparent 4px) calc(50% - 14px) 100% / 8px 8px no-repeat, radial-gradient(circle, #CC3450 3.5px, transparent 4px) 50% 100% / 8px 8px no-repeat, radial-gradient(circle, #F5C84C 3.5px, transparent 4px) calc(50% + 14px) 100% / 8px 8px no-repeat; }
.single-product .woocommerce-Tabs-panel--description p:first-of-type { margin-top: 24px !important; }

/* v1.9.4 : « Total panier » en jaune pâle et rose, pour laisser les boutons framboise ressortir */
.woocommerce-cart .cart_totals > h2 { background: linear-gradient(110deg, #FFF3D1 0%, #FBE3E2 100%) !important; color: var(--theme-palette-color-4) !important; border-bottom: 1px solid #F6C9C6; }
.woocommerce-cart .cart_totals > h2::after { background: #CC3450; box-shadow: 13px 0 0 #F5C84C; }

/* ===== v1.9.5 : mini-panier du haut aux couleurs du site ===== */
.ct-header-cart .ct-cart-content { background: #FFFCF5 !important; color: var(--theme-palette-color-4) !important; border: 1px solid #F6C9C6 !important; border-radius: 24px !important; box-shadow: 0 22px 50px rgba(42, 26, 46, .16) !important; padding: 18px 20px 20px !important; --theme-text-color: #4A3A4D; --theme-link-initial-color: #2A1A2E; --theme-link-hover-color: #CC3450; }
.ct-header-cart .ct-cart-content::before { border-bottom-color: #FFFCF5 !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart-item { gap: 14px; padding: 12px 0 !important; border-bottom: 1px dashed #F6C9C6 !important; }
.ct-header-cart .ct-cart-content .ct-media-container img { width: 64px !important; height: 64px !important; object-fit: cover; border-radius: 16px; background: #FFFFFF; border: 1px solid #FBE3E2; }
.ct-header-cart .ct-cart-content .product-title { color: var(--theme-palette-color-4) !important; font-weight: 600; font-size: 14px; line-height: 1.35; text-decoration: none; }
.ct-header-cart .ct-cart-content .product-title:hover { color: #CC3450 !important; }
.ct-header-cart .ct-cart-content .quantity { color: #8A7A8C !important; font-size: 13.5px; }
.ct-header-cart .ct-cart-content .quantity .amount { color: #CC3450; font-weight: 600; }
.ct-header-cart .ct-cart-content .remove { width: 30px; height: 30px; border-radius: 50%; display: inline-flex !important; align-items: center; justify-content: center; background: #FBE3E2 !important; color: #CC3450 !important; opacity: 1 !important; }
.ct-header-cart .ct-cart-content .remove svg { fill: #CC3450 !important; width: 11px; height: 11px; }
.ct-header-cart .ct-cart-content .remove:hover { background: #CC3450 !important; }
.ct-header-cart .ct-cart-content .remove:hover svg { fill: #FFFFFF !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total { margin: 6px 0 0 !important; padding: 14px 0 6px !important; border: 0 !important; color: var(--theme-palette-color-4) !important; font-size: 14px; text-transform: none; letter-spacing: 0; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total strong { font-weight: 600; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total .amount { color: #CC3450; font-size: 17px; font-weight: 700; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart { margin: 6px 0 16px !important; padding: 12px 14px !important; border-radius: 16px; background: #FFF3D1 !important; border: 0 !important; color: #2A1A2E !important; font-size: 13.5px; line-height: 1.45; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart .amount { color: #CC3450; font-weight: 700; }
.ct-header-cart .ct-cart-content .ct-progress-bar { height: 8px !important; margin-top: 10px; border-radius: 999px !important; background: #FFFFFF !important; overflow: hidden; --theme-progress-bar-color: #CC3450; }
.ct-header-cart .ct-cart-content .ct-progress-bar span, .ct-header-cart .ct-cart-content .ct-progress-bar::before, .ct-header-cart .ct-cart-content .ct-progress-bar > * { border-radius: 999px !important; background: linear-gradient(90deg, #F5C84C, #CC3450) !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button { min-height: 46px; margin: 0 !important; border-radius: 999px !important; font-size: 14px !important; font-weight: 600; text-transform: none !important; letter-spacing: 0 !important; display: inline-flex; align-items: center; justify-content: center; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button:not(.checkout) { background: #FFFFFF !important; color: #CC3450 !important; border: 1.5px solid #CC3450 !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button:not(.checkout):hover { background: #FBE3E2 !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button.checkout { background: #CC3450 !important; color: #FFFFFF !important; border: 1.5px solid #CC3450 !important; box-shadow: 0 8px 18px rgba(204, 52, 80, .25); }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button.checkout:hover { background: #B52A45 !important; }
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__empty-message { color: #4A3A4D !important; text-align: center; }

/* v1.9.6 : panier sur ordi, « Total panier » aligné en haut avec la liste, en-têtes de colonnes de la même couleur */
.woocommerce-cart .ct-woocommerce-cart-form .cart_totals { top: 0 !important; inset: 0 auto auto auto !important; }
.woocommerce-cart table.shop_table thead th.product-subtotal { color: #8A7A8C !important; font-weight: inherit; }

/* v1.9.7 : bouton « Voir le panier » qui apparaît après un ajout */
.single-product form.cart .ct-cart-actions .added_to_cart { display: inline-flex !important; align-items: center; justify-content: center; align-self: stretch; padding: 0 26px !important; border-radius: 999px !important; background: #FFFFFF !important; border: 1.5px solid #CC3450 !important; color: #CC3450 !important; font-size: 15px; font-weight: 600; text-decoration: none; transition: background .2s ease; }
.single-product form.cart .ct-cart-actions .added_to_cart:hover { background: #FBE3E2 !important; }
.single-product form.cart .single_add_to_cart_button:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
ul.products[data-products] li.product .added_to_cart { display: inline-flex !important; align-items: center; justify-content: center; min-height: 38px; padding: 0 20px !important; border-radius: 999px !important; background: #CC3450 !important; border: 1px solid #CC3450 !important; color: #FFFFFF !important; font-size: 12px !important; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; text-decoration: none; }
ul.products[data-products] li.product .added_to_cart:hover { background: #B52A45 !important; border-color: #B52A45 !important; }
@media (max-width: 689px) {
	ul.products[data-products] li.product .added_to_cart { padding: 0 10px !important; font-size: 10.5px !important; letter-spacing: .04em; }
}

/* v1.9.8 : phrase « espace cliente créé avec la commande » au paiement */
.woocommerce-checkout .a316-compte-auto { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0 6px; padding: var(--a316-enc-pad); border-radius: var(--a316-enc-r); background: #FFF3D1; color: #4A2B4D; font-size: var(--a316-enc-fs); line-height: 1.5; }
.woocommerce-checkout .a316-compte-auto svg { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 2px; color: #CC3450; }

/* v1.9.9 : choix de finition sur la fiche produit = mêmes pastilles doré / argenté que les cartes, en pilules avec le nom */
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] { display: flex; flex-wrap: wrap; gap: 10px; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container { display: inline-flex !important; align-items: center; gap: 9px; width: auto !important; height: auto !important; min-height: 44px; margin: 0 !important; padding: 6px 18px 6px 7px !important; border-radius: 999px !important; background: #FFFFFF !important; border: 1.5px solid #F6C9C6 !important; box-shadow: none !important; color: #4A3A4D; font-size: 14px; font-weight: 500; cursor: pointer; transition: border-color .2s ease, background .2s ease; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container::after { content: attr(aria-label); line-height: 1; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container .ct-tooltip { display: none !important; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch { width: 30px !important; height: 30px !important; flex: 0 0 30px; padding: 0 !important; border: 0 !important; border-radius: 50% !important; box-shadow: none !important; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-content { width: 100% !important; height: 100% !important; border-radius: 50% !important; box-shadow: inset 0 0 0 1px rgba(42, 26, 46, .12); }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container:hover { border-color: #CC3450 !important; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container[aria-pressed="true"] { border-color: #CC3450 !important; background: #FBE3E2 !important; color: #2A1A2E; font-weight: 600; }
.single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container:focus:not(:focus-visible) { outline: none !important; }
@media (max-width: 689px) { .single-product form.variations_form .ct-variation-swatches[data-swatches-type="color"] .ct-swatch-container { flex: 1 1 0; justify-content: center; } }

/* v1.9.10 : haut de l'accueil sur tablette et téléphone, le rond framboise ne passe plus jamais sur le texte, titre adapté à la largeur */
@media (min-width: 782px) and (max-width: 1199px) {
	.a316-hero__titre { font-size: clamp(44px, 4.4vw + 8px, 60px); }
}
@media (min-width: 690px) and (max-width: 781px) {
	.a316-hero__inner { padding-top: 76px; }
	.a316-hero__titre { font-size: 50px; }
	.a316-hero::after { left: auto; right: 28px; top: 22px; width: 44px; height: 44px; }
}
@media (max-width: 689px) {
	.a316-hero__inner { padding-top: 64px; }
	.a316-hero::after { right: 14px; top: 14px; width: 36px; height: 36px; }
}

/* v1.9.14 : pages Doré / Argenté, la pastille de la finition affichée est entourée, l'autre reste visible */
/* v1.9.84 : même anneau framboise sur la finition cochée du filtre de la boutique */
.a316-dot.a316-dot--actif,
.ct-filter-widget a.active .ct-swatch { box-shadow: inset 0 0 0 1px rgba(42, 26, 46, .12), 0 0 0 2px #FFFFFF, 0 0 0 3px #CC3450; }
.a316-dot.a316-dot--actif { margin-right: 3px; }

/* v1.9.15 : « Existe aussi en doré / argenté » sous les pastilles, pages Doré / Argenté */
ul.products[data-products] li.product .a316-fin-carte__aussi { margin-top: -2px; font-size: 12.5px; font-style: italic; line-height: 1.2; color: #CC3450; }
@media (max-width: 689px) { ul.products[data-products] li.product .a316-fin-carte__aussi { font-size: 11.5px; } }

/* v1.9.16 : mentions « Épuisé » plus douces, crème + point doré, plus petites (choix 3 d Olivier) */
.single-product .summary .stock.out-of-stock{padding:5px 14px 5px 12px!important;background:#FFF3D1!important;color:#4A3A4D!important;font-size:12.5px!important;font-weight:500!important;letter-spacing:.03em!important}
.single-product .summary .stock.out-of-stock::before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#E2B84D;vertical-align:1px}
.out-of-stock-badge{background:#FFF3D1!important;color:#4A3A4D!important;border-radius:999px!important;font-size:10.5px!important;padding:4px 11px!important;letter-spacing:.08em;font-weight:600}

/* ---------- Fenêtre d'inscription newsletter (-10 %) ---------- */
.a316-nl[hidden] { display: none !important; }
.a316-nl { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
.a316-nl__voile { position: absolute; inset: 0; background: rgba(42, 26, 46, 0.45); opacity: 0; transition: opacity .3s ease; }
.a316-nl__boite { position: relative; display: grid; grid-template-columns: 300px 1fr; width: 100%; max-width: 760px; background: var(--theme-palette-color-7, #FFFCF5); border-radius: 28px; overflow: hidden; box-shadow: 0 30px 80px rgba(42, 26, 46, 0.25); opacity: 0; transform: translateY(18px) scale(.98); transition: opacity .3s ease, transform .3s ease; }
.a316-nl.is-ouverte .a316-nl__voile { opacity: 1; }
.a316-nl.is-ouverte .a316-nl__boite { opacity: 1; transform: none; }
.a316-nl__photo { position: relative; background: #FBE3E2; }
.a316-nl__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; display: block; }
.a316-nl__corps { position: relative; padding: 48px 44px 36px; text-align: center; overflow: hidden; }
.a316-nl__corps::before { content: ""; position: absolute; width: 150px; height: 150px; border-radius: 50%; background: #F5C84C; right: -60px; top: -70px; opacity: .9; }
.a316-nl__corps::after { content: ""; position: absolute; width: 46px; height: 46px; border-radius: 50%; background: #F6C9C6; left: 22px; bottom: 22px; }
.a316-nl__etape { position: relative; z-index: 1; }
.a316-nl__surtitre { margin: 0 0 10px; font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--theme-palette-color-1, #CC3450); }
.a316-nl__titre { margin: 0; font-family: 'Bodoni Moda', serif; font-weight: 500; font-size: 32px; line-height: 1.15; color: var(--theme-palette-color-4, #2A1A2E); }
.a316-nl__titre span { display: block; font-size: 64px; line-height: 1; color: var(--theme-palette-color-1, #CC3450); margin-bottom: 4px; }
.a316-nl__texte { margin: 14px 0 22px; font-size: 15px; line-height: 1.55; color: var(--theme-palette-color-3, #4A3A4D); }
.a316-nl__form { display: flex; flex-direction: column; gap: 10px; margin: 0; }
.a316-nl__form input[type="email"] { width: 100%; height: 50px; padding: 0 22px; border: 1px solid var(--theme-palette-color-5, #EADCD9); border-radius: 999px; background: #FFFFFF; font-size: 15px; color: var(--theme-palette-color-4, #2A1A2E); box-sizing: border-box; text-align: center; }
.a316-nl__form input[type="email"]:focus { outline: none; border-color: var(--theme-palette-color-1, #CC3450); box-shadow: 0 0 0 3px rgba(204, 52, 80, .12); }
.a316-nl__form button, .a316-nl__ok { height: 50px; padding: 0 26px; border: 0; border-radius: 999px; background: var(--theme-palette-color-1, #CC3450); color: #FFFFFF; font-size: 15px; font-weight: 600; cursor: pointer; transition: background .2s ease; }
.a316-nl__form button:hover, .a316-nl__ok:hover { background: var(--theme-palette-color-2, #B52A45); }
.a316-nl__form button.is-chargement { opacity: .7; cursor: wait; }
.a316-nl__erreur { margin: 8px 0 0; min-height: 0; font-size: 13px; color: var(--theme-palette-color-1, #CC3450); }
.a316-nl__erreur:empty { display: none; }
.a316-nl__mention { margin: 12px 0 0; font-size: 12px; color: var(--theme-palette-color-3, #4A3A4D); opacity: .8; }
.a316-nl__mention a { color: inherit; text-decoration: underline; }
.a316-nl__non { margin-top: 10px; padding: 4px 8px; border: 0; background: none; font-size: 13px; color: var(--theme-palette-color-3, #4A3A4D); text-decoration: underline; cursor: pointer; }
.a316-nl__x { position: absolute; top: 14px; right: 14px; z-index: 3; width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .9); color: var(--theme-palette-color-4, #2A1A2E); cursor: pointer; box-shadow: 0 2px 10px rgba(42, 26, 46, .12); }
.a316-nl__x:hover { color: var(--theme-palette-color-1, #CC3450); }
.a316-nl__code { display: inline-flex; align-items: center; gap: 14px; margin: 18px 0 0; padding: 12px 14px 12px 24px; border: 2px dashed var(--theme-palette-color-1, #CC3450); border-radius: 999px; background: #FFFFFF; cursor: pointer; }
.a316-nl__code span { font-size: 22px; font-weight: 700; letter-spacing: .12em; color: var(--theme-palette-color-4, #2A1A2E); }
.a316-nl__code small { padding: 6px 12px; border-radius: 999px; background: #FFF3D1; font-size: 12px; font-weight: 600; color: var(--theme-palette-color-4, #2A1A2E); }
.a316-nl__ok { margin-top: 2px; }

/* Téléphone : petit bandeau en bas, la page reste visible */
@media (max-width: 767px) {
	.a316-nl.a316-nl--bas { inset: auto 0 0 0; padding: 0 10px 10px; align-items: flex-end; }
	.a316-nl--bas .a316-nl__voile { display: none; }
	.a316-nl--bas .a316-nl__boite { grid-template-columns: 1fr; max-width: none; border-radius: 22px; border: 1px solid #F6C9C6; box-shadow: 0 -6px 30px rgba(42, 26, 46, .18); transform: translateY(110%); }
	.a316-nl--bas.is-ouverte .a316-nl__boite { transform: none; }
	.a316-nl--bas .a316-nl__photo { display: none; }
	.a316-nl--bas .a316-nl__corps { padding: 18px 18px 14px; text-align: left; }
	.a316-nl--bas .a316-nl__corps::before { width: 70px; height: 70px; right: -26px; top: -30px; }
	.a316-nl--bas .a316-nl__corps::after { display: none; }
	.a316-nl--bas .a316-nl__x { top: 8px; right: 8px; width: 32px; height: 32px; box-shadow: none; background: transparent; }
	.a316-nl--bas .a316-nl__surtitre { display: none; }
	.a316-nl--bas .a316-nl__titre { font-size: 19px; padding-right: 34px; }
	.a316-nl--bas .a316-nl__titre span { display: inline; font-size: 19px; margin: 0; }
	.a316-nl--bas .a316-nl__texte { margin: 4px 0 10px; font-size: 13px; line-height: 1.4; }
	.a316-nl--bas [data-etape="form"] .a316-nl__texte { display: none; }
	.a316-nl--bas .a316-nl__form { flex-direction: row; gap: 6px; margin-top: 10px; }
	.a316-nl--bas .a316-nl__form input[type="email"] { height: 44px; padding: 0 16px; text-align: left; font-size: 16px; min-width: 0; flex: 1; }
	.a316-nl--bas .a316-nl__form button { height: 44px; padding: 0 16px; font-size: 14px; white-space: nowrap; }
	.a316-nl--bas .a316-nl__form button { font-size: 0; }
	.a316-nl--bas .a316-nl__form button::after { content: "J’en profite"; font-size: 14px; }
	.a316-nl--bas .a316-nl__mention { margin-top: 8px; font-size: 11px; }
	.a316-nl--bas .a316-nl__non { display: none; }
	.a316-nl--bas .a316-nl__code { margin-top: 8px; padding: 8px 10px 8px 18px; }
	.a316-nl--bas .a316-nl__code span { font-size: 18px; }
	.a316-nl--bas .a316-nl__ok { height: 42px; width: 100%; }
}

/* v1.9.19 : haut de l'accueil sans le rond framboise décoratif (demande d'Olivier), espace du haut resserré */
.a316-hero::after { display: none; }
@media (min-width: 690px) { .a316-hero__inner { padding-top: 48px; padding-bottom: 56px; } }
@media (max-width: 689px) { .a316-hero__inner { padding-top: 36px; } }

/* ============================================================
   CARTE CADEAU — v1.9.22
   ============================================================ */
#pwgc-purchase-container { margin: 6px 0 18px; }
#pwgc-purchase-container .pwgc-field-container { margin-bottom: 16px; }
#pwgc-purchase-container .pwgc-label { display: block; font-weight: 600; color: var(--theme-palette-color-4); font-size: 15px; margin-bottom: 6px; }
#pwgc-purchase-container .pwgc-input-text,
#pwgc-purchase-container textarea { width: 100%; border: 1px solid #EADCD9; border-radius: 999px; background: #FFFFFF; padding: 12px 18px; font-size: 15px; color: var(--theme-palette-color-3); }
#pwgc-purchase-container textarea { border-radius: 20px; min-height: 96px; resize: vertical; }
#pwgc-purchase-container .pwgc-input-text:focus,
#pwgc-purchase-container textarea:focus { border-color: #CC3450; outline: none; box-shadow: 0 0 0 3px rgba(204, 52, 80, .12); }
#pwgc-purchase-container .pwgc-subtitle { font-size: 13px; color: #8A7A8C; margin-top: 6px; }
#pwgc-quantity-one-per-recipient { display: none !important; }
.product-type-pw-gift-card .single_variation_wrap .woocommerce-variation-price { display: none; }
.a316-args--carte { margin-top: 18px; }

/* Onglet « Comment ça marche » */
.a316-carte-etapes { max-width: 860px; margin: 0 auto; }
.a316-carte-etapes ol { list-style: none; margin: 0 0 24px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: etape; }
.a316-carte-etapes li { counter-increment: etape; background: #FFFFFF; border: 1px solid #F6C9C6; border-radius: 24px; padding: 22px 18px 20px; text-align: center; margin: 0; }
.a316-carte-etapes li::before { content: counter(etape); display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin: 0 auto 12px; border-radius: 50%; background: #F5C84C; color: #2A1A2E; font-weight: 600; }
.a316-carte-etapes li strong { display: block; color: #2A1A2E; font-size: 16px; margin-bottom: 6px; }
.a316-carte-etapes li span { display: block; font-size: 14px; line-height: 1.5; color: #4A3A4D; }
@media (max-width: 999px) { .a316-carte-etapes ol { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .a316-carte-etapes ol { grid-template-columns: 1fr; } .a316-carte-etapes li { text-align: left; display: grid; grid-template-columns: 38px 1fr; column-gap: 14px; padding: 16px; } .a316-carte-etapes li::before { grid-row: span 2; margin: 0; } }

.single-product .product-type-pw-gift-card .woocommerce-Tabs-panel--description::before { content: "Offrir en 4 étapes"; }
.ct-header-cart .ct-cart-content dl.variation,
.ct-header-cart .ct-cart-content dl.variation dt,
.ct-header-cart .ct-cart-content dl.variation dd,
.ct-header-cart .ct-cart-content dl.variation p,
#woo-cart-panel dl.variation, #woo-cart-panel dl.variation * { color: var(--theme-palette-color-3) !important; font-size: 12px; line-height: 1.5; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:empty, .ct-shipping-progress:empty { display: none !important; }


/* ===== Carte cadeau et écrin mis en avant — v1.9.30 ===== */
/* Pastille « Écrin offert » sous le prix */
.a316-ecrin-pastille { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 18px; padding: 7px 16px 7px 7px; border-radius: 999px; background: #FFF3D1; color: var(--theme-palette-color-4) !important; font-size: 15px; line-height: 1.35; text-decoration: none !important; transition: background .2s; }
.a316-ecrin-pastille:hover { background: #FBE9B5; }
.a316-ecrin-pastille strong { font-weight: 600; }
.a316-ecrin-pastille__icone { flex: 0 0 32px; height: 32px; border-radius: 50%; background: #F5C84C; color: #2A1A2E; display: flex; align-items: center; justify-content: center; }
.a316-ecrin-pastille__icone svg { width: 18px; height: 18px; }
.a316-ecrin-pastille__voir { margin-left: 4px; padding: 5px 12px; border-radius: 999px; background: #FFFFFF; color: var(--theme-palette-color-1); font-size: 13.5px; font-weight: 600; white-space: nowrap; transition: background .2s, color .2s; }
.a316-ecrin-pastille:hover .a316-ecrin-pastille__voir { background: var(--theme-palette-color-1); color: #FFFFFF; }
@media (max-width: 689px) {
	.a316-ecrin-pastille { display: flex; flex-wrap: wrap; border-radius: 20px; font-size: 14.5px; padding: 8px 10px 8px 8px; }
	.a316-ecrin-pastille { flex-wrap: nowrap; align-items: center; }
	.a316-ecrin-pastille__texte { flex: 1 1 0; min-width: 0; line-height: 1.3; }
	.a316-ecrin-pastille__texte strong { display: block; }
	.a316-ecrin-pastille__voir { margin: 0; }
}
/* Ligne « Offrez une carte cadeau » des fiches : rose, pour se distinguer du jaune de « Une question ? » */
.a316-offrir-carte { display: flex; align-items: center; gap: 12px; margin-top: 14px; padding: 12px 16px 12px 12px; border-radius: 18px; background: #FBE3E2; border: 1.5px solid #F4B9BF; color: var(--theme-palette-color-4) !important; font-size: 15px; line-height: 1.45; text-decoration: none !important; transition: background .2s; }
.a316-offrir-carte:hover { background: #F9D5D6; }
.a316-offrir-carte strong { color: var(--theme-palette-color-1); font-weight: 600; }
.a316-offrir-carte__icone { flex: 0 0 36px; height: 36px; border-radius: 50%; background: var(--theme-palette-color-1); color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
/* Menu : entrée « Carte cadeau » en framboise avec un petit paquet (ordi) ; sur téléphone, ligne dédiée sous Les nouveautés */
.header-menu-1 .a316-menu-carte > a { color: var(--theme-palette-color-1) !important; }
.header-menu-1 .a316-menu-carte > a::before { content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 6px; vertical-align: -2px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='4' rx='1'/%3E%3Cpath d='M5 12v8h14v-8M12 8v12M12 8c-1.5-3-5-4-5-1.5S10 8 12 8zm0 0c1.5-3 5-4 5-1.5S14 8 12 8z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='4' rx='1'/%3E%3Cpath d='M5 12v8h14v-8M12 8v12M12 8c-1.5-3-5-4-5-1.5S10 8 12 8zm0 0c1.5-3 5-4 5-1.5S14 8 12 8z'/%3E%3C/svg%3E") center / contain no-repeat; }
.header-menu-1 .a316-menu-carte > a::before { display: inline-block !important; position: static !important; opacity: 1 !important; transform: none !important; flex: 0 0 16px; width: 16px !important; height: 16px !important; }
#offcanvas .mobile-menu .a316-menu-carte { display: none !important; }
.a316-mm__haut .a316-mm__nouv.a316-mm__carte { margin-top: 0; border-top: 0; }
/* Bandeau double de l'accueil */
.a316-duo { padding: 64px 0; background: var(--theme-palette-color-7); }
.a316-duo__grille { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.a316-duo__carte { display: grid; grid-template-columns: 200px 1fr; gap: 28px; align-items: center; padding: 36px; border-radius: 28px; }
.a316-duo__carte--cadeau { background: #FBE3E2; }
.a316-duo__carte--ecrin { background: #FFF3D1; }
.a316-duo__visuel { display: flex; align-items: center; justify-content: center; width: 200px; height: 200px; border-radius: 22px; overflow: hidden; }
.a316-duo__visuel img { width: 100%; height: 100%; object-fit: cover; }
.a316-duo__visuel--ecrin { background: #FFFFFF; box-shadow: 0 10px 30px rgba(42, 26, 46, .08); }
.a316-duo__visuel--ecrin svg { width: 86%; height: auto; }
.a316-duo__texte .a316-surtitre { margin: 0 0 10px; }
.a316-duo__titre { margin: 0 0 12px; font-family: 'Bodoni Moda', Didot, Georgia, serif; font-weight: 400; font-size: 30px; line-height: 1.15; color: var(--theme-palette-color-4); }
.a316-duo__texte p:not(.a316-surtitre) { margin: 0 0 18px; font-size: 15.5px; line-height: 1.6; color: #4A3A4D; }
.a316-duo__bouton { display: inline-block; padding: 12px 24px; border-radius: 999px; background: var(--theme-palette-color-1); color: #FFFFFF !important; font-size: 15px; font-weight: 500; text-decoration: none !important; transition: background .2s; }
.a316-duo__bouton:hover { background: var(--theme-palette-color-2); }
.a316-duo__bouton--contour { background: transparent; color: var(--theme-palette-color-4) !important; border: 1.5px solid var(--theme-palette-color-4); }
.a316-duo__bouton--contour:hover { background: var(--theme-palette-color-4); color: #FFFFFF !important; }
@media (max-width: 1099px) { .a316-duo__grille { grid-template-columns: 1fr; } }
@media (max-width: 689px) {
	.a316-duo { padding: 40px 0; }
	.a316-duo__carte { grid-template-columns: 1fr; gap: 20px; padding: 28px 22px; text-align: center; }
	.a316-duo__visuel { margin: 0 auto; width: 180px; height: 180px; }
	.a316-duo__titre { font-size: 26px; }
}

/* Textes des catégories (v1.9.37-1.9.38) */
.a316-cat-intro { max-width: 720px; margin: 14px auto 4px; text-align: center; font-size: 17px; line-height: 1.6; color: #4A3A4E; }
.a316-cat-intro p { margin: 0; }
.a316-cat-lire { display: none; }
.page-description.ct-hidden-sm:has(.a316-cat-intro) { display: block !important; }
.a316-cat-texte { margin: 56px 0 40px; padding: 44px 48px; background: #fff; border: 1px solid #F6C9C6; border-radius: 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 34px 56px; }
.a316-cat-bloc > summary { list-style: none; cursor: default; }
.a316-cat-bloc > summary::-webkit-details-marker { display: none; }
.a316-cat-bloc h2 { margin: 0 0 12px; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 26px; line-height: 1.2; color: var(--theme-palette-color-1); }
.a316-cat-bloc h2::after { content: ""; display: block; width: 34px; height: 6px; margin-top: 10px; background: radial-gradient(circle, #F5C84C 2.5px, transparent 3px) 0 0 / 12px 6px repeat-x; }
.a316-cat-bloc p, .a316-cat-bloc li { font-size: 15.5px; line-height: 1.7; color: #4A3A4E; margin: 0 0 10px; }
.a316-cat-bloc ul { margin: 0 0 10px; padding-left: 18px; }
.a316-cat-bloc .a316-cat-ecrin { display: inline-block; padding: 8px 16px; border-radius: 999px; background: #FBE3E2; color: #2A1A2E; }
@media (min-width: 690px) { .a316-cat-bloc > summary { pointer-events: none; } }
@media (max-width: 689px) {
	.a316-cat-intro { font-size: 15px; margin: 10px 4px 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.a316-cat-intro.is-ouvert { display: block; }
	.a316-cat-lire { display: block; margin: 2px auto 0; padding: 0; background: none; border: 0; color: #CC3450; font-size: 13px; font-weight: 500; text-decoration: underline; cursor: pointer; }
	.a316-cat-texte { grid-template-columns: 1fr; gap: 0; padding: 8px 20px; margin: 36px 0 28px; }
	.a316-cat-bloc { border-bottom: 1px solid #F6E3E1; padding: 16px 0; }
	.a316-cat-bloc:last-child { border-bottom: 0; }
	.a316-cat-bloc > summary { position: relative; padding-right: 34px; cursor: pointer; }
	.a316-cat-bloc > summary h2 { margin: 0; font-size: 20px; }
	.a316-cat-bloc > summary h2::after { display: none; }
	.a316-cat-bloc > summary::after { content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border-radius: 50%; background: #FBE3E2; color: #CC3450; font-size: 18px; line-height: 26px; text-align: center; }
	.a316-cat-bloc[open] > summary::after { content: "–"; }
	.a316-cat-bloc[open] > summary { margin-bottom: 12px; }
	.a316-cat-bloc .a316-cat-ecrin { border-radius: 16px; }
}
/* fin Textes des catégories */

/* v1.9.40 : AccelerateWP « lazy render » (content-visibility: auto) écrasait le pied de page et le bandeau garanties à 0 px sur les longues pages (pied de page invisible sur téléphone) : on le désactive. */
[data-wpr-lazyrender] { content-visibility: visible !important; }

/* ===== REMISE MULTI-PAIRES — v1.9.43 ===== */
/* Fiche produit : encadré sous « Ajouter au panier » */
.a316-multi { margin: 18px 0 0; padding: 16px 20px 14px; border-radius: 20px; background: linear-gradient(110deg, #FDE8EC 0%, #FFF3D1 100%); border: 1px solid #F4C6CF; }
.a316-multi__titre { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #CC3450; }
.a316-multi__paliers { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.a316-multi__paliers li { margin: 0; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 12px 9px 16px; border-radius: 999px; background: #FFFFFF; box-shadow: 0 4px 12px rgba(204, 52, 80, .08); }
.a316-multi__paliers span { font-size: 15px; font-weight: 500; color: var(--theme-palette-color-4); }
.a316-multi__paliers strong { padding: 3px 10px; border-radius: 999px; background: #CC3450; color: #FFFFFF; font-size: 15px; font-weight: 700; white-space: nowrap; }
.a316-multi__paliers li:last-child strong { background: #F5C84C; color: var(--theme-palette-color-4); }
.a316-multi__note { margin: 10px 0 0; font-size: 13.5px; line-height: 1.45; color: var(--theme-palette-color-3); }
@media (max-width: 689.98px) {
	.a316-multi { padding: 14px 14px 12px; }
	.a316-multi__paliers { gap: 8px; }
	.a316-multi__paliers li { padding: 8px 8px 8px 12px; }
	.a316-multi__paliers span { font-size: 14px; }
	.a316-multi__paliers strong { font-size: 14px; padding: 3px 8px; }
}
/* Panier : ligne sous la jauge de livraison */
.a316-multi-panier { display: flex; align-items: center; gap: var(--a316-enc-gap); margin: calc(var(--a316-enc-esp) - 26px) 0 26px; padding: var(--a316-enc-pad); border-radius: var(--a316-enc-r); background: #FFFFFF; border: 1px dashed #F4C6CF; grid-column: 1 / -1; }
.a316-multi-panier.is-ok { background: #FDE8EC; border-style: solid; }
.a316-multi-panier__icone { width: var(--a316-enc-ico); height: var(--a316-enc-ico); flex: 0 0 var(--a316-enc-ico); border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #FDE8EC; color: #CC3450; }
.a316-multi-panier.is-ok .a316-multi-panier__icone { background: #FFFFFF; }
.a316-multi-panier p { margin: 0; font-size: var(--a316-enc-fs); line-height: 1.45; color: var(--theme-palette-color-4); }
.a316-multi-panier strong { color: #CC3450; font-weight: 700; }
@media (max-width: 689.98px) {
}
/* Bande jaune du haut : l'offre multi-paires (remplace « Livraison offerte dès 59 € ») */
.a316-annonce strong { font-weight: 700; }
@media (max-width: 689.98px) {
	.a316-annonce__plus { display: none; }
}
@media (max-width: 689.98px) {
	.a316-multi__paliers { grid-template-columns: minmax(0, 1fr); }
	.a316-multi__paliers li { padding: 7px 8px 7px 16px; }
}

/* v1.9.44 : note de l'encadré multi-paires sur une seule ligne */
/* v1.9.54 : phrase « Sur toute la boutique… » peut passer à la ligne (demande d'Olivier : l'offre vaut pour tous les bijoux) */
.a316-multi__note { white-space: normal; text-align: center; } /* centré ordi + téléphone, demande d'Olivier v1.9.64 */
@media (max-width: 689.98px) { .a316-multi__note { font-size: 13px; } }

/* v1.9.46 : « −15 % appliqués sur vos X paires » sur une ligne sur téléphone (sans « Joli choix ») */
@media (max-width: 689.98px) {
	.a316-multi-panier__plus { display: none; }
}

/* v1.9.48 : page « REACH et RJC » (/reach-rjc/) + liens */
.entry-content .a316-eng { max-width: 860px; margin: 0 auto; }
.entry-content .a316-eng__intro { font-size: 18px; line-height: 1.7; text-align: center; margin: 0 auto 40px; max-width: 720px; }
.entry-content .a316-eng__cartes { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 0 0 56px; }
.entry-content .a316-eng__carte { border-radius: 24px; padding: 32px 30px 26px; background: linear-gradient(160deg, #FFF6D8 0%, #FDE8EC 100%); border: 1px solid #F6C9C6; }
.entry-content .a316-eng__carte.is-rjc { background: linear-gradient(160deg, #FDE8EC 0%, #FFF6D8 100%); }
.entry-content .a316-eng__pastille { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #fff; background: #CC3450; border-radius: 999px; padding: 6px 14px; }
.entry-content .a316-eng__sigle { font-family: 'Bodoni Moda', 'Didot', Georgia, serif; font-size: 52px; line-height: 1; color: #CC3450; margin: 18px 0 8px; }
.entry-content .a316-eng__nom { font-weight: 600; margin: 0 0 16px; color: var(--theme-palette-color-4, #2a1a2e); }
.entry-content .a316-eng__carte ul { list-style: none; margin: 0; padding: 0; }
.entry-content .a316-eng__carte li { position: relative; padding: 9px 0 9px 26px; border-top: 1px dashed #F4C6CF; font-size: 15px; }
.entry-content .a316-eng__carte li::before { content: ''; position: absolute; left: 4px; top: 16px; width: 9px; height: 9px; border-radius: 50%; background: #F5C84C; }
.entry-content .a316-eng__carte.is-rjc li::before { background: #CC3450; }
.entry-content .a316-eng h2 { margin-top: 48px; }
.entry-content .a316-eng__encadre { background: #fff; border: 1px solid #F6C9C6; border-left: 5px solid #CC3450; border-radius: 18px; padding: 18px 24px; margin: 22px 0 8px; }
.entry-content .a316-eng__encadre-titre { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #CC3450; margin: 0 0 6px; }
.entry-content .a316-eng__encadre p:last-child { margin-bottom: 0; }
.entry-content .a316-eng__liens { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 48px 0 10px; }
.entry-content .a316-eng__liens a { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 18px; border-radius: 999px; background: #FDE8EC; text-decoration: none !important; color: var(--theme-palette-color-4, #2a1a2e); }
.entry-content .a316-eng__liens a span { color: #CC3450; font-size: 14px; }
@media (max-width: 689.98px) {
  .entry-content .a316-eng__intro { font-size: 16px; margin-bottom: 28px; }
  .entry-content .a316-eng__cartes, .entry-content .a316-eng__liens { grid-template-columns: 1fr; gap: 16px; margin-bottom: 36px; }
  .entry-content .a316-eng__carte { padding: 26px 22px 20px; }
  .entry-content .a316-eng__sigle { font-size: 44px; }
  .entry-content .a316-eng h2 { margin-top: 36px; }
}
.a316-infos__note a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* v1.9.51 : page Questions fréquentes + petits liens FAQ (fiche, panier) */
.entry-content .a316-faq { max-width: 820px; margin: 0 auto; }
.entry-content .a316-faq__intro { text-align: center; font-size: 17px; line-height: 1.7; margin: 0 auto 28px; max-width: 640px; }
.entry-content .a316-faq__nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0 0 40px; }
.entry-content .a316-faq__nav a { padding: 9px 18px; border-radius: 999px; background: #FDE8EC; color: #CC3450; font-weight: 600; font-size: 14px; text-decoration: none !important; }
.entry-content .a316-faq__groupe { margin: 0 0 40px; scroll-margin-top: 120px; }
.entry-content .a316-faq__groupe h2 { margin: 0 0 16px; }
.entry-content .a316-faq__q { border: 1px solid #F6C9C6; border-radius: 18px; background: #fff; margin: 0 0 12px; overflow: hidden; }
.entry-content .a316-faq__q summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 22px; font-weight: 600; color: var(--theme-palette-color-4, #2a1a2e); }
.entry-content .a316-faq__q summary::-webkit-details-marker { display: none; }
.entry-content .a316-faq__q summary::after { content: '+'; flex: 0 0 28px; height: 28px; border-radius: 50%; background: #FFF3CC; color: #CC3450; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 400; line-height: 1; }
.entry-content .a316-faq__q[open] { border-color: #CC3450; }
.entry-content .a316-faq__q[open] summary::after { content: '−'; background: #CC3450; color: #fff; }
.entry-content .a316-faq__r { padding: 0 22px 18px; }
.entry-content .a316-faq__r p { margin: 0; line-height: 1.7; }
.entry-content .a316-faq__r a, .entry-content .a316-faq__intro a { color: #CC3450; }
.entry-content .a316-faq__fin { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; padding: 28px 20px; border-radius: 24px; background: linear-gradient(160deg, #FFF6D8 0%, #FDE8EC 100%); margin-top: 8px; }
.entry-content .a316-faq__fin strong { font-family: 'Bodoni Moda', Georgia, serif; font-size: 24px; font-weight: 400; color: #CC3450; }
.entry-content .a316-faq__fin a { margin-top: 10px; padding: 12px 28px; border-radius: 999px; background: #CC3450; color: #fff !important; font-weight: 600; text-decoration: none !important; }
@media (max-width: 689.98px) {
  .entry-content .a316-faq__intro { font-size: 16px; }
  .entry-content .a316-faq__nav { gap: 8px; margin-bottom: 30px; }
  .entry-content .a316-faq__nav a { padding: 8px 14px; font-size: 13px; }
  .entry-content .a316-faq__q summary { padding: 14px 16px; font-size: 15px; }
  .entry-content .a316-faq__r { padding: 0 16px 16px; }
}
.a316-faq-lien { margin: 12px 0 0; text-align: center; font-size: 13px; color: #6B5A6E; }
.a316-faq-lien a { color: #CC3450; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 1000px) { .a316-faq-lien { font-size: 14px; } }

/* v1.9.57 : « Bon à savoir » de la carte cadeau en 3 points avec icônes (demande d'Olivier : plus lisible) */
.a316-carte-etapes .a316-carte-bon { background: #FBE3E2; border-radius: 24px; padding: 24px 28px 28px; margin: 0; text-align: center; color: #2A1A2E; }
.single-product #tab-description .a316-carte-etapes .a316-carte-bon__titre { margin: 0 0 20px; margin-block-start: 0; max-width: none; font-family: 'Bodoni Moda', Georgia, serif; font-weight: 500; font-size: 24px; line-height: 1.2; text-align: center; color: #CC3450; }
.a316-carte-etapes .a316-carte-bon ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.a316-carte-etapes .a316-carte-bon li { margin: 0; padding: 0 18px; display: flex; flex-direction: column; align-items: center; background: none; border: 0; border-radius: 0; }
.a316-carte-etapes .a316-carte-bon li::before { content: none; }
.a316-carte-etapes .a316-carte-bon li + li { border-left: 1px solid #F3C2C0; }
.a316-carte-etapes .a316-carte-bon .a316-carte-bon__ico { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: 0 0 10px; border-radius: 50%; background: #FFFFFF; color: var(--theme-palette-color-1); }
.a316-carte-etapes .a316-carte-bon li strong { display: block; margin: 0 0 4px; font-size: 15px; font-weight: 600; color: #2A1A2E; }
.a316-carte-etapes .a316-carte-bon li > span:last-child { display: block; font-size: 14px; line-height: 1.5; color: #4A3A4D; }
@media (max-width: 689px) {
	.a316-carte-etapes .a316-carte-bon { padding: 22px 20px; text-align: left; }
	.single-product #tab-description .a316-carte-etapes .a316-carte-bon__titre { margin-bottom: 14px; font-size: 22px; }
	.a316-carte-etapes .a316-carte-bon ul { grid-template-columns: 1fr; }
	.a316-carte-etapes .a316-carte-bon li { display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; align-items: start; padding: 14px 0; }
	.a316-carte-etapes .a316-carte-bon li + li { border-left: 0; border-top: 1px solid #F3C2C0; }
	.a316-carte-etapes .a316-carte-bon li:first-child { padding-top: 0; }
	.a316-carte-etapes .a316-carte-bon li:last-child { padding-bottom: 0; }
	.a316-carte-etapes .a316-carte-bon .a316-carte-bon__ico { grid-row: span 2; width: 40px; height: 40px; margin: 0; }
	.a316-carte-etapes .a316-carte-bon li strong { margin-top: 1px; }
}

/* ---------- Offre fin de commande (v1.9.59) ---------- */
.a316-offre { margin: 0 0 var(--a316-enc-esp); padding: var(--a316-enc-pad); border-radius: var(--a316-enc-r); background: linear-gradient(110deg, #FFDCE2 0%, #FFF0DC 100%); border: 1px solid #F2AEBB; }
.a316-offre__titre { display: flex; align-items: center; gap: var(--a316-enc-gap); margin: 0 0 4px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px; font-weight: 500; line-height: 1.25; color: #4A2B4D; }
.a316-offre__titre svg { flex: 0 0 var(--a316-enc-ico); width: var(--a316-enc-ico); height: var(--a316-enc-ico); padding: calc(var(--a316-enc-ico) / 4.5); box-sizing: border-box; border-radius: 50%; background: #CC3450; color: #FFFFFF; }
.a316-offre__intro { margin: 0 0 12px; font-size: var(--a316-enc-fs); line-height: 1.45; color: #4A3A4D; }
.a316-offre__item { display: grid; grid-template-columns: 92px 1fr; column-gap: 16px; align-items: center; padding: 12px; border-radius: 18px; background: #FFFFFF; box-shadow: 0 6px 18px rgba(204, 52, 80, .08); transition: opacity .2s; }
.a316-offre__item + .a316-offre__item { margin-top: 10px; }
.a316-offre__item.is-chargement { opacity: .55; pointer-events: none; }
.a316-offre__photo { position: relative; display: block; grid-row: span 2; align-self: center; }
.a316-offre__actions { grid-column: 2; }
.a316-offre__actions > :first-child { margin-top: 8px; }
.a316-offre__photo img { display: block; width: 92px; height: 92px; object-fit: cover; border-radius: 14px; margin: 0 !important; }
.a316-offre__badge { position: absolute; top: -6px; left: -6px; padding: 3px 8px; border-radius: 999px; background: #CC3450; color: #FFFFFF; font-size: 12px; font-weight: 700; line-height: 1.3; box-shadow: 0 3px 8px rgba(204, 52, 80, .3); }
.a316-offre__infos p { margin: 0; }
.a316-offre__nom { font-size: 15px; font-weight: 500; line-height: 1.3; color: #2A1A2E; }
.a316-offre__prix { margin-top: 3px !important; font-size: 14px; }
.a316-offre__prix strong { font-size: 19px; color: #CC3450; }
.a316-offre__prix del { margin-left: 4px; color: #8A7A8D; }
.a316-offre__finitions { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 0; }
.a316-offre__finitions label { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 4px 11px; border: 1px solid #EADCE0; border-radius: 999px; font-size: 13px; color: #4A3A4D; cursor: pointer; }
.a316-offre__finitions input { position: absolute; opacity: 0; pointer-events: none; }
.a316-offre__finitions label:has(input:checked) { border-color: #CC3450; background: #FFF1F2; }
.a316-offre__finition { display: flex; align-items: center; gap: 6px; margin-top: 4px !important; font-size: 13px; color: #6E5E71; }
.a316-offre__pastille { width: 11px; height: 11px; border-radius: 50%; background: #D9B45F; }
.a316-offre__pastille--arg { background: #C9CDD3; }
.a316-checkout .a316-offre .button, .woocommerce-checkout .a316-offre .a316-offre__ajouter { display: inline-flex; white-space: nowrap; align-items: center; justify-content: center; min-height: 40px; margin-top: 10px; padding: 0 22px !important; border-radius: 999px; font-size: 14px; font-weight: 600; }
.a316-offre__ok { margin-top: 8px !important; font-size: 14px; font-weight: 600; color: #2E7D4F; }
.a316-offre--ajoutee { padding: 10px 16px; text-align: center; }
.a316-offre--ajoutee .a316-offre__ok { margin: 0 !important; }
.a316-offre__retirer { min-height: 0; line-height: 1.4; margin-left: 8px; padding: 0; border: 0; background: none; color: #8A7A8D; font-size: 13px; font-weight: 400; text-decoration: underline; cursor: pointer; }
.a316-offre__retirer:hover { color: #CC3450; background: none; }
.a316-offre__note { margin: 12px 0 0; font-size: 12.5px; color: #6E5E71; text-align: center; }
.a316-offre__apercu { margin: 0 0 10px; padding: 4px 12px; width: fit-content; border-radius: 999px; background: #4A2B4D; color: #FFFFFF; font-size: 12px; }
.a316-offre__qte { display: inline-block; min-width: 24px; text-align: center; font-weight: 600; }
@media (max-width: 689px) {
	.a316-offre__titre { font-size: 17px; }
	.a316-offre__item { grid-template-columns: 64px 1fr; column-gap: 12px; padding: 10px; border-radius: 14px; }
	.a316-offre__photo { grid-row: auto; }
	.a316-offre__actions { grid-column: 1 / -1; }
	.a316-offre__finitions { justify-content: center; }
	.a316-offre__ok { text-align: center; }
	.a316-offre__apercu { font-size: 11px; }
	.a316-offre__photo img { width: 64px; height: 64px; border-radius: 12px; }
	.a316-offre__note { margin-top: 8px; font-size: 12px; }
	.woocommerce-checkout .a316-offre .a316-offre__ajouter { width: 100%; min-height: 40px; margin-top: 8px; }
}

/* ---------- Page de commande : photos dans « Votre commande » (v1.9.61) ---------- */
.woocommerce-checkout-review-order-table td.product-name { position: relative; padding-left: 76px !important; min-height: 60px; }
.a316-revue__photo { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 60px; height: 60px; border-radius: 12px; border: 1px solid #F6C9C6; background: #FFFFFF; overflow: hidden; }
.a316-revue__photo img { display: block; width: 100%; height: 100%; object-fit: cover; margin: 0 !important; border-radius: 0; }
.woocommerce-checkout-review-order-table tr.cart_item td { padding-top: 16px; padding-bottom: 16px; }
.woocommerce-checkout-review-order-table tr.cart_item td.product-name { height: 60px; }
.woocommerce-checkout-review-order-table td.product-name, .woocommerce-checkout-review-order-table td.product-name * { word-break: normal !important; overflow-wrap: break-word; hyphens: none; }
.woocommerce-checkout-review-order-table th.product-total { white-space: nowrap; }
.woocommerce-checkout-review-order-table dl.variation dt, .woocommerce-checkout-review-order-table dl.variation dd { display: inline; float: none; width: auto; margin: 0; padding: 0; }
.woocommerce-checkout-review-order-table dl.variation dd p { display: inline; margin: 0; }
.a316-revue__barre { margin-right: 4px; color: #8A7A8D; font-size: .9em; font-weight: 400; }
@media (max-width: 689px) {
	.woocommerce-checkout-review-order-table td.product-name { padding-left: 64px !important; }
	.a316-revue__photo { width: 52px; height: 52px; border-radius: 10px; }
}
.a316-offre__etiquette { display: inline-block; margin-left: 6px; padding: 2px 9px; border-radius: 999px; background: #CC3450; color: #FFFFFF; font-family: inherit; font-size: 11.5px; font-weight: 600; line-height: 1.5; vertical-align: middle; white-space: nowrap; }
.a316-offre__photo, .a316-offre__photo:hover, .a316-offre__photo:focus { outline: none; border: 0; box-shadow: none; }
.a316-offre__photo img { transition: transform .25s; }
.a316-offre__photo:hover img { transform: scale(1.04); }
.a316-offre__nom a { color: inherit; text-decoration: none; }
.a316-offre__nom a:hover { color: #CC3450; }
.a316-offre__nom a.a316-offre__voir { margin-left: 4px; font-size: 12.5px; font-weight: 400; color: #8A7A8D; text-decoration: underline; white-space: nowrap; }
.a316-offre__nom a.a316-offre__voir:hover { color: #CC3450; }
@media (max-width: 689px) { .a316-offre__nom a.a316-offre__voir { display: block; width: fit-content; margin: 2px 0 0; } }

/* Doré ou argenté : photo du bijou à la place des pastilles (1.9.66, demande d Olivier) */
.a316-finitions { padding: 56px 0; }
.a316-finition { flex-direction: row; align-items: center; gap: 30px; padding: 32px 40px; }
.a316-finition__photo { flex: 0 0 150px; width: 150px; height: 150px; border-radius: 50%; overflow: hidden; background: #FFFFFF; border: 6px solid #FFFFFF; box-shadow: 0 0 0 2px #D9B45F; box-sizing: border-box; }
.a316-finition__photo--argent { box-shadow: 0 0 0 2px #B9B7BC; }
.a316-finition__photo img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.12); }
.a316-finition__corps { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.a316-finition__titre { font-size: 30px; line-height: 1.15; }
@media (max-width: 689px) {
	.a316-finitions { padding: 40px 0; }
	.a316-finitions .a316-grille { gap: 18px; }
	.a316-finition { gap: 18px; padding: 22px 20px; align-items: flex-start; }
	.a316-finition__photo { flex-basis: 92px; width: 92px; height: 92px; border-width: 4px; }
	.a316-finition__corps { gap: 6px; }
	.a316-finition__titre { font-size: 24px; }
	.a316-finition__texte { font-size: 15px; line-height: 1.5; }
}

/* Panier et commande : avantages mis en valeur, fonds verts « offert », case CGV, carte cadeau (1.9.67, demande d Olivier) */
.woocommerce-shipping-methods input[type="hidden"] + label { cursor: default; }
.a316-offert { display: inline-flex; align-items: center; gap: 7px; padding: 5px 13px 5px 10px; border-radius: 999px; background: linear-gradient(110deg, #E7F6EC 0%, #FFF3D1 100%); border: 1px solid #BFE3CB; color: #2F7D50; font-weight: 600; font-size: 14px; line-height: 1.3; white-space: nowrap; }
.a316-offert svg { width: 17px; height: 17px; flex: 0 0 17px; }
.a316-offert__detail { display: block; margin-top: 5px; font-size: 13px; color: #8A7A8C; }
.a316-offert__detail del { margin-left: 4px; color: #A898A9; }
.woocommerce-cart .cart_totals tr.fee th, .woocommerce-checkout tr.fee th { color: #CC3450 !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 14.5px !important; }
.woocommerce-cart .cart_totals tr.fee th::before, .woocommerce-checkout tr.fee th::before { content: "♥"; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin-right: 8px; border-radius: 50%; background: #FDE8EC; color: #CC3450; font-size: 12px; vertical-align: middle; }
.woocommerce-cart .cart_totals tr.fee td, .woocommerce-checkout tr.fee td { color: #CC3450 !important; font-weight: 700 !important; }
.a316-eco td { padding-top: 4px !important; padding-bottom: 0 !important; border: 0 !important; }
.a316-eco__boite { display: flex; align-items: center; gap: var(--a316-enc-gap); padding: var(--a316-enc-pad); border-radius: var(--a316-enc-r); background: linear-gradient(110deg, #E7F6EC 0%, #FFF3D1 100%); border: 1px solid #BFE3CB; }
.a316-eco__icone { width: var(--a316-enc-ico); height: var(--a316-enc-ico); flex: 0 0 var(--a316-enc-ico); border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #FFFFFF; color: #2F7D50; box-shadow: 0 4px 10px rgba(63, 166, 106, .15); }
.a316-eco__icone svg { width: 50%; height: 50%; }
.a316-eco__boite p { margin: 0; line-height: 1.35; text-align: left; }
.a316-eco__boite strong { display: block; color: #2F7D50; font-size: var(--a316-enc-fs); font-weight: 700; }
.a316-eco__boite strong .amount { color: inherit; }
.a316-eco__detail { display: block; font-size: 13px; color: #6E5E71; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]),
.ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) { background: linear-gradient(110deg, #E7F6EC 0%, #FFF3D1 100%) !important; border: 1px solid #BFE3CB !important; }
.ct-order-review-modules:not(:has(> :not(.ct-shipping-progress-checkout-page))):has(.ct-progress-bar span[style*="100%"]), .ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) { display: none !important; } /* la ligne Expédition et « Vous économisez » le disent déjà */
.ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-progress-bar span,
.ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) .ct-progress-bar span { background: linear-gradient(90deg, #3FA66A, #F5C84C) !important; }
.ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) .ct-progress-bar { background: rgba(255, 255, 255, .85); border-radius: 99px; overflow: hidden; }
.ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-message,
.ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) .ct-message { display: flex; align-items: center; gap: 10px; color: #2F7D50; font-weight: 600; }
.ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-message::before,
.ct-shipping-progress-checkout-page:has(.ct-progress-bar span[style*="100%"]) .ct-message::before { content: ""; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CC3450' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v9H3z'/%3E%3Cpath d='M14 9h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='17' r='1.8'/%3E%3Ccircle cx='17' cy='17' r='1.8'/%3E%3C/svg%3E") center / 17px no-repeat; box-shadow: 0 4px 10px rgba(204, 52, 80, .12); }
/* 1.9.78 : « Vous avez une carte cadeau ? » identique au panier et à la commande : encadré en pointillés, bouton secondaire (contour), au-dessus des conditions sur la commande */
#pwgc-redeem-gift-card-form { margin: 0 0 var(--a316-enc-esp); padding: var(--a316-enc-pad); border: 1px dashed #E3C9CF; border-radius: var(--a316-enc-r); background: #FFFFFF; }
#pwgc-redeem-form, #pwgc-redeem-gift-card-container { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; margin: 0; }
#pwgc-redeem-gift-card-container br { display: none; }
#pwgc-redeem-form label, #pwgc-redeem-error { flex: 0 0 100%; margin: 0; font-size: var(--a316-enc-fs); font-weight: 600; color: var(--theme-palette-color-4); }
#pwgc-redeem-error { font-weight: 400; color: #C0392B !important; }
#pwgc-redeem-error:empty { display: none; }
#pwgc-redeem-form #pwgc-redeem-gift-card-number { flex: 1 1 180px; width: auto; min-width: 0; min-height: 42px; margin: 0; padding: 0 18px; border: 1px solid #EADCD9; border-radius: 999px; }
#pwgc-redeem-form #pwgc-redeem-button, .woocommerce-cart .coupon button[name="apply_coupon"] { flex: 0 0 auto; min-height: 42px; margin: 0 !important; padding: 0 22px !important; border-radius: 999px !important; background: #FFFFFF !important; color: #CC3450 !important; border: 1.5px solid #CC3450 !important; box-shadow: none !important; font-size: 14.5px; font-weight: 600; }
#pwgc-redeem-form #pwgc-redeem-button:hover, .woocommerce-cart .coupon button[name="apply_coupon"]:hover { background: #FFF1F2 !important; }
.woocommerce-checkout #payment .place-order { display: flex; flex-direction: column; }
.woocommerce-checkout #payment #pwgc-redeem-gift-card-form { order: -1; }
.woocommerce-cart .wc-proceed-to-checkout #pwgc-redeem-gift-card-form { margin: 4px 0 20px; }
.woocommerce-cart #pwgc-redeem-form #pwgc-redeem-button { flex: 1 1 100%; }
@media (max-width: 689px) {
	.a316-offert { font-size: 13.5px; }
	#pwgc-redeem-form #pwgc-redeem-button { flex: 1 1 100%; }
}
/* Mini-panier : message « livraison offerte » sur 2 lignes maximum (1.9.70, demande d Olivier) */
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) { padding: 10px 12px !important; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-message { gap: 9px; font-size: 12.5px; line-height: 1.35; font-weight: 600; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-message::before { flex-basis: 28px; width: 28px; height: 28px; background-size: 15px; }
.ct-header-cart .ct-cart-content .ct-shipping-progress-mini-cart:has(.ct-progress-bar span[style*="100%"]) .ct-progress-bar { margin-top: 8px; height: 6px !important; }

/* 1.9.71 : texte du champ « Pour » de la carte cadeau raccourci (« E-mail de la personne »), demande d Olivier ; changement dans functions.php */

/* 1.9.75 : carte message (extension Gift Wrapper), encadré sous les bijoux du panier et en haut de la commande */
.a316-carte-msg { margin: 22px 0 0; }
.woocommerce-checkout .a316-carte-msg { margin: 0 0 var(--a316-enc-esp); }
.a316-carte-msg__boite { display: flex; gap: 20px; align-items: flex-start; padding: 16px 20px; border-radius: var(--a316-enc-r); background: #FFF3D1; border: 1px dashed #F5C84C; }
.a316-carte-msg__boite--ok { background: #FFFCF5; border-style: solid; border-color: #EADCD9; align-items: center; }
.a316-carte-msg__image { flex: 0 0 104px; width: 104px !important; height: 104px !important; object-fit: cover; border-radius: 14px; box-shadow: 0 6px 16px rgba(42, 26, 46, .10); }
.a316-carte-msg__corps { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.a316-carte-msg__titre { margin: 0; font-family: 'Bodoni Moda', Georgia, serif; font-size: 21px; line-height: 1.2; color: var(--theme-palette-color-4); }
.a316-carte-msg__prix { margin-left: 6px; font-family: Jost, sans-serif; font-size: 15px; font-weight: 600; color: var(--theme-palette-color-1); white-space: nowrap; }
.a316-carte-msg__texte { margin: 0; font-size: var(--a316-enc-fs); line-height: 1.45; color: var(--theme-palette-color-3); }
.a316-carte-msg__texte a { color: var(--theme-palette-color-1); text-decoration: underline; text-underline-offset: 2px; }
.a316-carte-msg__apercu { margin: 0; font-size: 15px; font-style: italic; color: var(--theme-palette-color-4); overflow-wrap: anywhere; }
.a316-carte-msg__champ { width: 100%; min-height: 84px; margin-top: 6px; padding: 12px 14px; box-sizing: border-box; border: 1px solid #EADCD9 !important; border-radius: 14px !important; background: #FFFFFF !important; font-size: 15px; line-height: 1.45; resize: vertical; }
.a316-carte-msg__champ:focus { border-color: var(--theme-palette-color-1) !important; outline: none; box-shadow: 0 0 0 3px rgba(204, 52, 80, .12); }
.a316-carte-msg__bas { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.a316-carte-msg__compteur { font-size: 13px; color: var(--theme-palette-color-3); }
.a316-carte-msg__bouton.button { min-height: 42px; font-weight: 600; padding: 0 22px !important; border-radius: 99px !important; font-size: 14.5px; }
.a316-carte-msg__bouton.button:disabled { opacity: .45; cursor: not-allowed; }
.woocommerce-cart-form .cart_item.wcgwp-wrap-product .product-name dl.variation { margin-top: 4px; }
@media (max-width: 689px) {
	.a316-carte-msg__boite { gap: 12px; padding: var(--a316-enc-pad); flex-wrap: wrap; }
	.a316-carte-msg__image { flex-basis: 72px; width: 72px !important; height: 72px !important; border-radius: 12px; }
	.a316-carte-msg__corps { flex-basis: calc(100% - 86px); }
	.a316-carte-msg__titre { font-size: 19px; }
	.a316-carte-msg__prix { display: block; margin: 4px 0 0; }
	.a316-carte-msg__boite:not(.a316-carte-msg__boite--ok) .a316-carte-msg__champ,
	.a316-carte-msg__boite:not(.a316-carte-msg__boite--ok) .a316-carte-msg__bas { margin-left: -86px; width: calc(100% + 86px); }
	.a316-carte-msg__bouton.button { flex: 1 1 auto; }
}


/* 1.9.77 : page La carte message (recto/verso, étapes, bon à savoir) */
.a316-cm-carte { display: flex; justify-content: center; gap: 28px; margin: 34px 0 10px; }
.a316-cm-carte__face { margin: 0; flex: 0 1 320px; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.a316-cm-carte__papier { width: 100%; aspect-ratio: 85 / 55; border-radius: 6px; overflow: hidden; box-shadow: 0 14px 34px rgba(42, 26, 46, .16); }
.a316-cm-carte__papier--recto { transform: rotate(-2.5deg); }
.a316-cm-carte__papier--verso { transform: rotate(2deg); background: #FFFFFF; border: 1px solid #F1E4DA; display: flex; align-items: center; padding: 8% 9%; box-sizing: border-box; }
.a316-cm-carte__svg { display: block; width: 100%; height: 100%; }
.a316-cm .a316-cm-carte__message { margin: 0; font-family: 'Caveat', cursive; font-size: 23px; line-height: 1.25; color: #2A1A2E; text-align: left; }
.a316-cm-carte__face figcaption { font-size: 14px; color: #4A3A4D; }
.a316-cm-carte__face figcaption strong { color: #CC3450; }
.a316-cm .a316-cm-carte__note { text-align: center; font-size: 13px; color: #7A6A7D; margin: 4px 0 0; }
.a316-cm ol.a316-cm-etapes, .a316-cm ul.a316-cm-savoir { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
.a316-cm ol.a316-cm-etapes { grid-template-columns: repeat(3, 1fr); }
.a316-cm ol.a316-cm-etapes li { position: relative; margin: 0; padding: 26px 20px 22px; border-radius: 22px; background: #FFFFFF; border: 1px solid #F6C9C6; box-shadow: 0 10px 30px rgba(204, 52, 80, .06); display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
.a316-cm ol.a316-cm-etapes li::before, .a316-cm ul.a316-cm-savoir li::before { display: none !important; content: none !important; }
.a316-cm-etapes__num { position: absolute; top: 12px; left: 16px; font-family: 'Bodoni Moda', Georgia, serif; font-size: 22px; color: #F5C84C; line-height: 1; }
.a316-cm ol.a316-cm-etapes li b { font-size: 16px; color: #2A1A2E; }
.a316-cm ol.a316-cm-etapes li > span:last-child { font-size: 14px; line-height: 1.5; color: #4A3A4D; }
.a316-cm__ico { width: 46px; height: 46px; border-radius: 50%; background: #FBE3E2; color: #CC3450; display: inline-flex; align-items: center; justify-content: center; flex: none; margin-bottom: 4px; }
.a316-cm__ico svg { width: 22px; height: 22px; }
.a316-cm li:nth-child(even) .a316-cm__ico { background: #FFF3D1; color: #2A1A2E; }
.a316-cm ul.a316-cm-savoir { grid-template-columns: repeat(2, 1fr); }
.a316-cm ul.a316-cm-savoir li { margin: 0; padding: 18px 20px; border-radius: 18px; background: #FFFBF2; border: 1px solid #F6E3B4; display: flex; gap: 14px; align-items: flex-start; }
.a316-cm ul.a316-cm-savoir li .a316-cm__ico { margin: 0; width: 40px; height: 40px; }
.a316-cm ul.a316-cm-savoir li > span:last-child { font-size: 14px; line-height: 1.5; color: #4A3A4D; }
.a316-cm ul.a316-cm-savoir li b { display: block; font-size: 15px; color: #2A1A2E; margin-bottom: 2px; }
@media (max-width: 689px) {
	.a316-cm-carte { flex-direction: column; align-items: center; gap: 22px; }
	.a316-cm-carte__face { flex: none; width: 88%; }
	.a316-cm .a316-cm-carte__message { font-size: 21px; }
	.a316-cm ol.a316-cm-etapes, .a316-cm ul.a316-cm-savoir { grid-template-columns: 1fr; gap: 12px; }
	.a316-cm ol.a316-cm-etapes li { padding: 22px 16px 18px; }
}
