/* Custom CSS — Bois Pétrifié (Astra Child) */

/* ==========================================================================
   Pages légales (CGV 206, Mentions 207, Livraison 208, Cookies 209)
   Typographie éditorial pour le contenu texte riche.
   ========================================================================== */

.page-id-206 .elementor-widget-text-editor h2,
.page-id-207 .elementor-widget-text-editor h2,
.page-id-208 .elementor-widget-text-editor h2,
.page-id-209 .elementor-widget-text-editor h2 {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 26px;
	font-weight: 500;
	color: #171615;
	margin: 48px 0 16px;
	letter-spacing: -0.3px;
	line-height: 1.25;
}

.page-id-206 .elementor-widget-text-editor h2:first-child,
.page-id-207 .elementor-widget-text-editor h2:first-child,
.page-id-208 .elementor-widget-text-editor h2:first-child,
.page-id-209 .elementor-widget-text-editor h2:first-child {
	margin-top: 0;
}

.page-id-206 .elementor-widget-text-editor h3,
.page-id-207 .elementor-widget-text-editor h3,
.page-id-208 .elementor-widget-text-editor h3,
.page-id-209 .elementor-widget-text-editor h3 {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #171615;
	margin: 32px 0 12px;
}

.page-id-206 .elementor-widget-text-editor a,
.page-id-207 .elementor-widget-text-editor a,
.page-id-208 .elementor-widget-text-editor a,
.page-id-209 .elementor-widget-text-editor a {
	color: #171615;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

.page-id-206 .elementor-widget-text-editor a:hover,
.page-id-207 .elementor-widget-text-editor a:hover,
.page-id-208 .elementor-widget-text-editor a:hover,
.page-id-209 .elementor-widget-text-editor a:hover {
	text-decoration-thickness: 2px;
}

.page-id-206 .elementor-widget-text-editor ul,
.page-id-207 .elementor-widget-text-editor ul,
.page-id-208 .elementor-widget-text-editor ul,
.page-id-209 .elementor-widget-text-editor ul {
	padding-left: 20px;
	margin: 0 0 24px;
}

.page-id-206 .elementor-widget-text-editor li,
.page-id-207 .elementor-widget-text-editor li,
.page-id-208 .elementor-widget-text-editor li,
.page-id-209 .elementor-widget-text-editor li {
	margin-bottom: 8px;
}

.page-id-206 .elementor-widget-text-editor strong,
.page-id-207 .elementor-widget-text-editor strong,
.page-id-208 .elementor-widget-text-editor strong,
.page-id-209 .elementor-widget-text-editor strong {
	font-weight: 600;
	color: #171615;
}

.page-id-206 .elementor-widget-text-editor em,
.page-id-207 .elementor-widget-text-editor em,
.page-id-208 .elementor-widget-text-editor em,
.page-id-209 .elementor-widget-text-editor em {
	color: #8A857E;
	font-style: italic;
}

/* ==========================================================================
   Page Blog (210) — design des cartes d'articles
   Cards blanches sur fond crème #F5F1E9, hover subtil, lien "Lire l'article"
   avec flèche → animée.
   ========================================================================== */

.page-id-210 .elementor-posts-container .elementor-post {
	background: #FFFFFF;
	border: 1px solid #E9E4D8;
	padding: 28px 28px 32px;
	display: flex;
	flex-direction: column;
	transition: border-color .25s ease, transform .25s ease;
}

.page-id-210 .elementor-posts-container .elementor-post:hover {
	border-color: #0A0A0A;
}

/* Miniature (visible quand l'article a une image à la une) */
.page-id-210 .elementor-post__thumbnail {
	margin: -28px -28px 28px;
	overflow: hidden;
}

.page-id-210 .elementor-post__thumbnail__link {
	display: block;
	aspect-ratio: 4 / 3;
}

.page-id-210 .elementor-post__thumbnail__link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Date en eyebrow au-dessus du titre */
.page-id-210 .elementor-post__meta-data {
	order: -1;
	margin-bottom: 12px;
}

/* Titre */
.page-id-210 .elementor-post__title {
	margin: 0 0 14px;
}

.page-id-210 .elementor-post__title a {
	text-decoration: none;
	color: inherit;
}

/* Extrait */
.page-id-210 .elementor-post__excerpt p {
	margin: 0 0 24px;
}

/* Lien "Lire l'article" avec flèche animée */
.page-id-210 .elementor-post__read-more {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	margin-top: auto;
	padding-bottom: 4px;
	border-bottom: 1px solid transparent;
	transition: border-color .25s ease;
	align-self: flex-start;
}

.page-id-210 .elementor-post__read-more::after {
	content: "\2192";
	margin-left: 10px;
	display: inline-block;
	transition: transform .25s ease;
}

.page-id-210 .elementor-post__read-more:hover {
	border-bottom-color: currentColor;
}

.page-id-210 .elementor-post__read-more:hover::after {
	transform: translateX(4px);
}

/* ==========================================================================
   Single Post — Journal (template 356)
   Typographie éditoriale du corps de l'article.
   ========================================================================== */

/* Image mise en avant — full-width plein cadre */
.single-post .elementor-widget-theme-post-featured-image img {
	width: 100%;
	height: auto;
	display: block;
	max-height: 70vh;
	object-fit: cover;
}

/* Lien Retour au journal — flèche subtile au hover */
.single-post .elementor-element-854654e a:hover {
	letter-spacing: 3px;
	transition: letter-spacing .25s ease;
}

/* Corps de l'article — typographie éditoriale lisible */
.single-post .elementor-widget-theme-post-content {
	font-family: 'Inter Tight', sans-serif;
	font-size: 17px;
	line-height: 1.8;
	color: #2A2A2A;
}

.single-post .elementor-widget-theme-post-content > .elementor-widget-container > h1 {
	display: none;
}

.single-post .elementor-widget-theme-post-content h2,
.single-post .elementor-widget-theme-post-content h3,
.single-post .elementor-widget-theme-post-content h4 {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-weight: 500;
	color: #0A0A0A;
	letter-spacing: -0.3px;
	margin: 56px 0 16px;
}

.single-post .elementor-widget-theme-post-content h2 {
	font-size: 36px;
	line-height: 1.2;
}

.single-post .elementor-widget-theme-post-content h3 {
	font-size: 28px;
	line-height: 1.25;
}

.single-post .elementor-widget-theme-post-content h4 {
	font-size: 22px;
	line-height: 1.3;
}

.single-post .elementor-widget-theme-post-content p {
	margin: 0 0 24px;
}

.single-post .elementor-widget-theme-post-content strong {
	font-weight: 600;
	color: #0A0A0A;
}

.single-post .elementor-widget-theme-post-content a {
	color: #0A0A0A;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

.single-post .elementor-widget-theme-post-content a:hover {
	text-decoration-thickness: 2px;
}

.single-post .elementor-widget-theme-post-content blockquote {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 26px;
	font-style: italic;
	line-height: 1.4;
	color: #0A0A0A;
	border-left: 1px solid #0A0A0A;
	padding: 8px 0 8px 28px;
	margin: 40px 0;
}

.single-post .elementor-widget-theme-post-content ul,
.single-post .elementor-widget-theme-post-content ol {
	padding-left: 20px;
	margin: 0 0 28px;
}

.single-post .elementor-widget-theme-post-content li {
	margin-bottom: 8px;
}

.single-post .elementor-widget-theme-post-content img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 32px auto;
}

/* Navigation prev/next — espacement et alignement */
.single-post .elementor-widget-post-navigation .elementor-post-navigation {
	border-top: 1px solid #E9E4D8;
	padding-top: 40px;
}

/* ==========================================================================
   Pagination — style unique site-wide
   Couvre Elementor, WooCommerce (y compris widget Elementor WC Products),
   et WordPress natif. Spécificité élevée pour overrider Astra.
   ========================================================================== */

.elementor-pagination,
nav.woocommerce-pagination,
.nav-links {
	margin-top: 60px !important;
	text-align: center !important;
}

nav.woocommerce-pagination ul.page-numbers {
	border: none !important;
}

nav.woocommerce-pagination ul.page-numbers li {
	border: none !important;
	overflow: visible !important;
}

.elementor-pagination .page-numbers,
nav.woocommerce-pagination ul.page-numbers li a,
nav.woocommerce-pagination ul.page-numbers li span,
.elementor-widget-woocommerce-products nav.woocommerce-pagination ul.page-numbers li a,
.elementor-widget-woocommerce-products nav.woocommerce-pagination ul.page-numbers li span,
.nav-links .page-numbers {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	padding: 8px 14px !important;
	border: 1px solid transparent !important;
	border-radius: 0 !important;
	color: #0A0A0A !important;
	background: transparent !important;
	margin: 0 2px !important;
	text-decoration: none !important;
	transition: border-color .25s ease !important;
}

.elementor-pagination .page-numbers.current,
.elementor-pagination .page-numbers:hover,
nav.woocommerce-pagination ul.page-numbers li span.current,
nav.woocommerce-pagination ul.page-numbers li a:hover,
nav.woocommerce-pagination ul.page-numbers li a:focus,
.elementor-widget-woocommerce-products nav.woocommerce-pagination ul.page-numbers li span.current,
.elementor-widget-woocommerce-products nav.woocommerce-pagination ul.page-numbers li a:hover,
.nav-links .page-numbers.current,
.nav-links .page-numbers:hover {
	border-color: #0A0A0A !important;
	background: transparent !important;
	color: #0A0A0A !important;
}

/* ==========================================================================
   WooCommerce — style global produits (boutique + collections)
   ========================================================================== */

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.added_to_cart {
	background: #171615;
	color: #FFFFFF;
	border: 1px solid #171615;
	border-radius: 0;
	padding: 12px 28px;
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 2.2px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background .25s ease, color .25s ease;
}

.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product a.added_to_cart:hover {
	background: transparent;
	color: #171615;
}

/* Titres produits */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 18px;
	font-weight: 500;
	color: #171615;
}

/* Catégorie au-dessus du titre */
.woocommerce ul.products li.product .ast-woo-product-category {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #8A857E;
}

/* Prix */
.woocommerce ul.products li.product .price {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #171615;
}

/* Barre de résultats + tri */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select {
	font-family: 'Inter Tight', sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	color: #8A857E;
}

.woocommerce .woocommerce-ordering select {
	border: 1px solid #E9E4D8;
	border-radius: 0;
	padding: 8px 12px;
	background: #FFFFFF;
	color: #171615;
}

/* Breadcrumb WooCommerce */
.woocommerce .woocommerce-breadcrumb {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #8A857E;
}

.woocommerce .woocommerce-breadcrumb a {
	color: #8A857E;
	text-decoration: none;
	transition: color .25s ease;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: #171615;
}

/* Masque le fil d'Ariane sur les fiches produit (single product) */
body.single-product .woocommerce-breadcrumb,
body.single-product .woocommerce > .woocommerce-breadcrumb {
	display: none !important;
}

/* Titre archive boutique */
.post-type-archive-product .woocommerce-products-header__title,
.post-type-archive-product .page-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 48px;
	font-weight: 400;
	letter-spacing: -0.5px;
	color: #171615;
	text-align: center;
	margin-bottom: 40px;
}

/* ==========================================================================
   Fiche produit single — design Bois Pétrifié
   ========================================================================== */

/* Catégorie au-dessus du titre */
.single-product .single-product-category {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 2.5px !important;
	text-transform: uppercase !important;
	color: #8A857E !important;
}

.single-product .single-product-category a {
	color: #8A857E !important;
	text-decoration: none !important;
	transition: color .25s ease !important;
}

.single-product .single-product-category a:hover {
	color: #171615 !important;
}

/* Titre produit */
.single-product .product_title.entry-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 38px !important;
	font-weight: 400 !important;
	letter-spacing: -0.5px !important;
	line-height: 1.15 !important;
	color: #171615 !important;
	margin-bottom: 20px !important;
}

/* Prix */
.single-product .summary .price {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	color: #171615 !important;
	letter-spacing: 0.5px !important;
}

.single-product .summary .price del {
	color: #8A857E !important;
	opacity: 0.6 !important;
}

.single-product .summary .price ins {
	text-decoration: none !important;
}

/* Description courte */
.single-product .summary .woocommerce-product-details__short-description {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #444 !important;
	margin-bottom: 28px !important;
}

/* Bouton Ajouter au panier */
.single-product .summary button.single_add_to_cart_button,
.single-product .summary .cart .button {
	background: #171615 !important;
	color: #FFFFFF !important;
	border: 1px solid #171615 !important;
	border-radius: 0 !important;
	padding: 16px 40px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 2.5px !important;
	text-transform: uppercase !important;
	transition: background .25s ease, color .25s ease !important;
}

.single-product .summary button.single_add_to_cart_button:hover,
.single-product .summary .cart .button:hover {
	background: transparent !important;
	color: #171615 !important;
}

/* Quantité */
.single-product .summary .quantity input.qty {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	border: 1px solid #E9E4D8 !important;
	border-radius: 0 !important;
	color: #171615 !important;
}

/* Meta produit (UGS, catégories, étiquettes) */
.single-product .product_meta {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	letter-spacing: 1px !important;
	color: #8A857E !important;
	margin-top: 28px !important;
	padding-top: 28px !important;
	border-top: 1px solid #E9E4D8 !important;
}

.single-product .product_meta a {
	color: #171615 !important;
	text-decoration: none !important;
	transition: color .25s ease !important;
}

.single-product .product_meta a:hover {
	color: #8A857E !important;
}

/* ==========================================================================
   Onglets produit (Informations complémentaires, Avis)
   ========================================================================== */

.single-product .woocommerce-tabs ul.wc-tabs {
	padding: 0 !important;
	margin: 0 0 32px !important;
	border-bottom: 1px solid #E9E4D8 !important;
}

.single-product .woocommerce-tabs ul.wc-tabs::before {
	border-bottom: none !important;
}

.single-product .woocommerce-tabs ul.wc-tabs li {
	background: transparent !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	margin: 0 24px 0 0 !important;
	padding: 0 0 12px !important;
	border-radius: 0 !important;
	transition: border-color .25s ease !important;
}

.single-product .woocommerce-tabs ul.wc-tabs li::before,
.single-product .woocommerce-tabs ul.wc-tabs li::after {
	display: none !important;
}

.single-product .woocommerce-tabs ul.wc-tabs li a {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 2.5px !important;
	text-transform: uppercase !important;
	color: #8A857E !important;
	padding: 0 !important;
	text-decoration: none !important;
	transition: color .25s ease !important;
}

.single-product .woocommerce-tabs ul.wc-tabs li.active {
	border-bottom-color: #171615 !important;
}

.single-product .woocommerce-tabs ul.wc-tabs li.active a,
.single-product .woocommerce-tabs ul.wc-tabs li:hover a {
	color: #171615 !important;
}

/* Contenu des onglets */
.single-product .woocommerce-tabs .wc-tab {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #444 !important;
}

/* Titre d'onglet (h2 dans le panneau) */
.single-product .woocommerce-tabs .wc-tab h2 {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	color: #171615 !important;
	margin-bottom: 20px !important;
}

/* Tableau des attributs */
.single-product .woocommerce-product-attributes {
	border: none !important;
}

.single-product .woocommerce-product-attributes tr {
	border-bottom: 1px solid #E9E4D8 !important;
}

.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	padding: 14px 0 !important;
	border: none !important;
	background: transparent !important;
}

.single-product .woocommerce-product-attributes th {
	font-weight: 600 !important;
	color: #171615 !important;
	text-transform: uppercase !important;
	font-size: 11px !important;
	letter-spacing: 1.5px !important;
}

.single-product .woocommerce-product-attributes td {
	color: #444 !important;
}

.single-product .woocommerce-product-attributes td p {
	margin: 0 !important;
}

/* ==========================================================================
   Section Produits liés
   ========================================================================== */

.single-product .related.products > h2 {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 32px !important;
	font-weight: 400 !important;
	letter-spacing: -0.5px !important;
	color: #171615 !important;
	margin-bottom: 32px !important;
}

/* ==========================================================================
   Avis produit
   ========================================================================== */

.single-product .woocommerce-Reviews-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	color: #171615 !important;
}

.single-product .woocommerce-noreviews {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	color: #8A857E !important;
}

/* Galerie produit — bordure supprimée, coins carrés */
.single-product .woocommerce-product-gallery {
	border: none !important;
}

.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery img {
	border-radius: 0 !important;
}

/* Image placeholder */
.single-product .woocommerce-product-gallery__image--placeholder img {
	border-radius: 0 !important;
	border: 1px solid #E9E4D8 !important;
}

/* ==========================================================================
   Panier + Checkout (blocs WooCommerce)
   Couvre page Panier (18) et Validation de la commande (19).
   ========================================================================== */

/* --- Typographie globale blocs WC --- */

.wc-block-cart,
.wc-block-checkout,
.wc-block-cart__empty-cart__title {
	font-family: 'Inter Tight', sans-serif !important;
}

/* Titres des pages (Panier vide, titres de section) */
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block .wp-block-heading {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-weight: 400 !important;
	color: #171615 !important;
}

/* === Panier vide : retire l'emoji (😢) et stylise le bloc === */

/* Container du bloc empty-cart : pleine largeur, padding latéral minimal.
   Seul le titre + séparateur + sous-titre restent centrés/étroits.
   La grille produits prend tout l'espace. */
.wp-block-woocommerce-empty-cart-block {
	max-width: none !important;
	width: 100% !important;
	margin: 60px 0 80px !important;
	padding: 0 24px !important;
	text-align: center;
	box-sizing: border-box;
}

/* Titre + séparateur + sous-titre eyebrow : centrés, max 720px */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block > .wp-block-separator,
.wp-block-woocommerce-empty-cart-block > hr,
.wp-block-woocommerce-empty-cart-block > h2.wp-block-heading:not(.wc-block-cart__empty-cart__title) {
	max-width: 720px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Supprime l'emoji "panier qui pleure" ajouté via ::before par WC */
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before,
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::after,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::after {
	display: none !important;
	content: none !important;
	background: none !important;
}

/* Neutralise toute image SVG / icon décorative dans le bloc empty-cart */
.wp-block-woocommerce-empty-cart-block svg.with-empty-cart-icon,
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon > svg,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__icon,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__image {
	display: none !important;
}

/* Titre "Votre panier est actuellement vide !" — Cormorant centré */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-weight: 300 !important;
	font-size: clamp(28px, 4vw, 42px) !important;
	line-height: 1.2 !important;
	color: #0A0A0A !important;
	letter-spacing: -0.3px !important;
	margin: 0 0 32px !important;
	padding: 0 !important;
}

/* Le titre WC met `with-empty-cart-icon` qui ajoute un display: flex
   column avec gap. On reset pour repartir d'un display inline propre. */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title.with-empty-cart-icon {
	display: block !important;
	gap: 0 !important;
}

/* Séparateur dots → fine ligne hairline noire centrée */
.wp-block-woocommerce-empty-cart-block .wp-block-separator,
.wp-block-woocommerce-empty-cart-block hr {
	border: none !important;
	border-top: 1px solid #E5E5E5 !important;
	width: 60px !important;
	max-width: 60px !important;
	height: 0 !important;
	margin: 24px auto 40px !important;
	background: transparent !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-separator::before,
.wp-block-woocommerce-empty-cart-block .wp-block-separator::after {
	display: none !important;
	content: none !important;
}

/* Sous-titre "Nouveau dans la boutique" → eyebrow Inter Tight uppercase */
.wp-block-woocommerce-empty-cart-block h2.wp-block-heading:not(.wc-block-cart__empty-cart__title) {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.28em !important;
	text-transform: uppercase !important;
	color: #6B6B6B !important;
	text-align: center !important;
	margin: 0 0 32px !important;
	padding: 0 !important;
}

/* === Grille "Nouveau dans la boutique" sous le panier vide ===
   La grille s'étend sur toute la largeur disponible. */

/* Container de la grille */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 32px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

@media (max-width: 900px) {
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px !important;
	}
}

@media (max-width: 480px) {
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
}

/* Carte produit individuelle — sans bordure, full width de sa colonne */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
	text-align: center !important;
	width: 100% !important;
	max-width: none !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

/* Lien parent (wrappe image + titre) : noir, no underline, block full width */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:focus {
	display: block !important;
	width: 100% !important;
	color: #0A0A0A !important;
	text-decoration: none !important;
}

/* Image produit — full width carré */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
	width: 100% !important;
	margin: 0 0 16px !important;
	display: block;
	overflow: hidden;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 1px solid #F0EDE5;
	border-radius: 0 !important;
	display: block;
	transition: opacity 0.3s ease;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link:hover .wc-block-grid__product-image img {
	opacity: 0.85;
}

/* Titre produit — Cormorant Garamond noir, sur une ligne logique */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: #0A0A0A !important;
	margin: 0 0 8px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-align: center !important;
	white-space: normal !important;
	word-spacing: normal !important;
	display: block !important;
	width: 100% !important;
}

/* Prix */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #0A0A0A !important;
	margin: 0 0 12px !important;
	letter-spacing: 0.02em !important;
	text-align: center !important;
	display: block !important;
	width: 100% !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .amount,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-amount {
	color: inherit !important;
	font-family: inherit !important;
}

/* Bouton "Découvrir" — width auto, white-space nowrap pour empêcher le wrap caractère par caractère */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart {
	margin: 12px 0 0 !important;
	padding: 0 !important;
	width: auto !important;
	text-align: center !important;
	display: block !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart .wp-block-button__link,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a.wp-block-button__link {
	display: inline-block !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	background: transparent !important;
	color: #0A0A0A !important;
	border: 1px solid #0A0A0A !important;
	border-radius: 0 !important;
	padding: 10px 22px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	box-shadow: none !important;
	transition: background 0.2s ease, color 0.2s ease;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button:hover {
	background: #0A0A0A !important;
	color: #FFFFFF !important;
}

/* Titre de page "Panier" en haut (entry-title Astra) — Cormorant centré */
body.woocommerce-cart .entry-title,
body.woocommerce-cart .ast-archive-title,
body.woocommerce-cart header.entry-header,
body.woocommerce-cart .entry-header .entry-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-weight: 300 !important;
	font-size: clamp(32px, 4vw, 48px) !important;
	color: #0A0A0A !important;
	text-align: center !important;
	margin: 60px auto 24px !important;
	letter-spacing: -0.3px !important;
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

/* Le header parent du entry-title — centré aussi pour bypasser
   un éventuel float left ou un margin-left hérité d'Astra */
body.woocommerce-cart .entry-header,
body.woocommerce-cart .ast-archive-header {
	text-align: center !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
}

/* Centrer fortement les 3 titres dans le bloc empty-cart */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2.wp-block-heading {
	text-align: center !important;
	display: block !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* === Mobile : centrage GLOBAL du contenu page panier === */
@media (max-width: 900px) {
	/* Body + tous les wrappers parents centrés en mobile */
	body.woocommerce-cart,
	body.woocommerce-cart #page,
	body.woocommerce-cart #content,
	body.woocommerce-cart .site-content,
	body.woocommerce-cart .ast-container,
	body.woocommerce-cart #primary,
	body.woocommerce-cart article.post,
	body.woocommerce-cart .entry-content {
		text-align: center !important;
	}

	/* Wrapper principal du bloc panier WC : centré, avec padding latéral */
	body.woocommerce-cart .wp-block-woocommerce-cart,
	body.woocommerce-cart .wp-block-woocommerce-cart.alignwide,
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
	body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		text-align: center !important;
		box-sizing: border-box;
	}

	/* Inner content du bloc filled-cart (quand le panier a des items) :
	   flex/grid en column centré */
	body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		gap: 24px;
	}

	/* Container Astra : pas de max-width contraint, mais respiration retrouvée */
	body.woocommerce-cart .ast-container,
	body.woocommerce-cart #primary,
	body.woocommerce-cart #content {
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	body.woocommerce-cart .entry-title,
	body.woocommerce-cart .ast-archive-title,
	body.woocommerce-cart .entry-header .entry-title,
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2.wp-block-heading {
		text-align: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
		display: block !important;
		float: none !important;
	}

	body.woocommerce-cart .entry-header,
	body.woocommerce-cart .ast-archive-header {
		text-align: center !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important;
		padding: 0 !important;
		float: none !important;
	}

	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
		text-align: center !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Réduit la taille du titre principal en mobile */
	body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
		font-size: clamp(24px, 6vw, 32px) !important;
		line-height: 1.25 !important;
	}

	body.woocommerce-cart .entry-title {
		font-size: clamp(28px, 6vw, 38px) !important;
		margin: 32px auto 16px !important;
	}
}

/* Bypass tout container Astra parent qui contraindrait la largeur */
body.woocommerce-cart .ast-container,
body.woocommerce-cart #primary,
body.woocommerce-cart #content,
body.woocommerce-cart .entry-content {
	max-width: none !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media (max-width: 900px) {
	.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 24px !important;
	}
}

@media (max-width: 480px) {
	.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
}

/* Carte produit individuelle */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
	text-align: center !important;
}

/* Image produit */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
	margin: 0 0 16px !important;
	overflow: hidden;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
	width: 100%;
	height: auto;
	border-radius: 0 !important;
	border: 1px solid #F0EDE5;
	display: block;
	transition: opacity 0.3s ease;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image a:hover img {
	opacity: 0.85;
}

/* Lien wrapper */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link {
	text-decoration: none !important;
	color: inherit !important;
}

/* Titre produit : Cormorant Garamond */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: #0A0A0A !important;
	margin: 0 0 8px !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
}

/* Prix : Inter Tight */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #0A0A0A !important;
	margin: 0 0 16px !important;
	letter-spacing: 0.02em !important;
	display: block !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .amount,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-amount {
	color: inherit !important;
	font-family: inherit !important;
}

/* Bouton "Ajouter au panier" ou "Découvrir" sous chaque produit */
.wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart {
	margin: 0 !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart .wp-block-button__link,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .button {
	display: inline-block !important;
	background: transparent !important;
	color: #0A0A0A !important;
	border: 1px solid #0A0A0A !important;
	border-radius: 0 !important;
	padding: 10px 22px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: background 0.2s ease, color 0.2s ease;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button:hover,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .button:hover {
	background: #0A0A0A !important;
	color: #FFFFFF !important;
}

/* --- Panier : tableau des articles --- */

.wc-block-cart-items .wc-block-cart-items__row {
	border-bottom: 1px solid #E9E4D8 !important;
}

.wc-block-cart-items .wc-block-components-product-name {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	color: #171615 !important;
	text-decoration: none !important;
}

.wc-block-cart-items .wc-block-components-product-name:hover {
	color: #8A857E !important;
}

.wc-block-cart-items .wc-block-components-product-metadata {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	color: #8A857E !important;
}

/* Prix dans le panier */
.wc-block-cart .wc-block-components-product-price,
.wc-block-cart .wc-block-components-totals-item__value,
.wc-block-checkout .wc-block-components-product-price,
.wc-block-checkout .wc-block-components-totals-item__value {
	font-family: 'Inter Tight', sans-serif !important;
	font-weight: 500 !important;
	color: #171615 !important;
}

/* Quantité */
.wc-block-components-quantity-selector {
	border: 1px solid #E9E4D8 !important;
	border-radius: 0 !important;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	color: #171615 !important;
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	color: #171615 !important;
	background: transparent !important;
}

/* Lien supprimer */
.wc-block-cart-item__remove-link {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	color: #8A857E !important;
	text-decoration: none !important;
}

.wc-block-cart-item__remove-link:hover {
	color: #171615 !important;
}

/* --- Résumé de commande (sidebar panier + checkout) --- */

.wc-block-components-totals-wrapper {
	border-color: #E9E4D8 !important;
}

.wc-block-components-totals-item__label {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	color: #444 !important;
}

.wc-block-cart__totals-title,
.wc-block-components-order-summary .wc-block-components-panel__button {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	color: #171615 !important;
}

/* Total final */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #171615 !important;
}

/* Coupon */
.wc-block-components-totals-coupon .wc-block-components-panel__button {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 13px !important;
	color: #171615 !important;
	text-decoration: none !important;
}

.wc-block-components-totals-coupon__input .wc-block-components-text-input input {
	border: 1px solid #E9E4D8 !important;
	border-radius: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
}

/* --- Boutons principaux (Passer commande / Commander) --- */

.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button {
	background: #171615 !important;
	color: #FFFFFF !important;
	border: 1px solid #171615 !important;
	border-radius: 0 !important;
	padding: 16px 40px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 2.5px !important;
	text-transform: uppercase !important;
	transition: background .25s ease, color .25s ease !important;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background: transparent !important;
	color: #171615 !important;
}

/* --- Checkout : formulaire --- */

/* Titres des étapes */
.wc-block-components-checkout-step__title {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 2.5px !important;
	text-transform: uppercase !important;
	color: #171615 !important;
}

/* Numéro d'étape */
.wc-block-components-checkout-step__heading-counter::before {
	color: #8A857E !important;
}

/* Champs de saisie */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-combobox .components-combobox-control input,
.wc-block-checkout .select2-container .select2-selection {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	border: 1px solid #E9E4D8 !important;
	border-radius: 0 !important;
	color: #171615 !important;
	background: #FFFFFF !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-text-input textarea:focus {
	border-color: #171615 !important;
	box-shadow: none !important;
}

/* Labels flottants */
.wc-block-components-text-input label,
.wc-block-components-combobox .components-base-control__label {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	color: #8A857E !important;
}

/* Séparateurs d'étapes */
.wc-block-components-checkout-step {
	border-color: #E9E4D8 !important;
}

/* Radio buttons (méthode de livraison, paiement) */
.wc-block-components-radio-control__option {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	color: #171615 !important;
}

.wc-block-components-radio-control__input {
	border-color: #E9E4D8 !important;
}

.wc-block-components-radio-control__input:checked {
	border-color: #171615 !important;
	background: #171615 !important;
}

/* Checkbox */
.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked {
	background: #171615 !important;
	border-color: #171615 !important;
}

/* Notices / messages */
.wc-block-components-notice-banner {
	font-family: 'Inter Tight', sans-serif !important;
	border-radius: 0 !important;
}

/* Lien retour au panier */
.wc-block-components-checkout-return-to-cart-button {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	letter-spacing: 1px !important;
	color: #8A857E !important;
	text-decoration: none !important;
}

.wc-block-components-checkout-return-to-cart-button:hover {
	color: #171615 !important;
}

/* --- Panier vide : produits suggérés --- */

.wc-block-grid .wc-block-grid__product-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #171615 !important;
}

.wc-block-grid .wc-block-grid__product-price {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	color: #171615 !important;
}

.wc-block-grid .wp-block-button__link {
	background: #171615 !important;
	color: #FFFFFF !important;
	border: 1px solid #171615 !important;
	border-radius: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	transition: background .25s ease, color .25s ease !important;
}

.wc-block-grid .wp-block-button__link:hover {
	background: transparent !important;
	color: #171615 !important;
}

/* --- Images produits dans le panier/checkout (coins carrés) --- */

.wc-block-cart-items .wc-block-components-product-image img,
.wc-block-components-order-summary .wc-block-components-product-image img {
	border-radius: 0 !important;
	border: 1px solid #E9E4D8 !important;
}

/* --- Méthodes de paiement acceptées (icônes) --- */

.wc-block-components-payment-method-icons {
	opacity: 0.6;
}

/* ============================================================
   Footer Kaloes (#colophon) — adaptation mobile
   Sections row → column, typo géante réduite, centrage
   ============================================================ */

@media (max-width: 767px) {
	/* Empêche tout overflow horizontal venant du footer */
	#colophon,
	#colophon .elementor-element,
	#colophon .e-con {
		max-width: 100vw !important;
		overflow-x: hidden !important;
		box-sizing: border-box;
	}

	/* Tout texte centré par défaut dans le footer mobile */
	#colophon,
	#colophon .e-con,
	#colophon .elementor-widget,
	#colophon .elementor-widget-container,
	#colophon .elementor-heading-title,
	#colophon .elementor-widget-text-editor,
	#colophon .elementor-widget-text-editor p {
		text-align: center !important;
	}

	/* Les 2 sections "row" deviennent column et centrent leur contenu */
	#colophon .elementor-element-d40478d,
	#colophon .elementor-element-06ad8c3 {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 36px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	/* Centrage de toutes les colonnes empilées */
	#colophon .elementor-element-d40478d > .e-con,
	#colophon .elementor-element-06ad8c3 > .e-con {
		width: 100% !important;
		max-width: 360px !important;
		text-align: center !important;
		align-items: center !important;
	}

	/* Eyebrows discrets : LIVRAISON SOIGNÉE, PIÈCES AUTHENTIFIÉES */
	#colophon .elementor-element-c195066 .elementor-heading-title,
	#colophon .elementor-element-4e8947a .elementor-heading-title {
		font-size: 12px !important;
		letter-spacing: 0.28em !important;
	}

	/* "MADE in MADAGASCAR" — eyebrow au-dessus du grand titre */
	#colophon .elementor-element-b7a0f42 .elementor-heading-title {
		font-size: 13px !important;
		letter-spacing: 0.24em !important;
		line-height: 1.4 !important;
	}

	/* TITRE GÉANT "BOIS PÉTRIFIÉ" — réduit pour rester dans le viewport mobile */
	#colophon .elementor-element-157370d .elementor-heading-title {
		font-size: clamp(28px, 8.5vw, 42px) !important;
		line-height: 1.1 !important;
		letter-spacing: 0.04em !important;
		word-spacing: 0 !important;
		white-space: normal !important;
		overflow-wrap: break-word !important;
		text-align: center !important;
		padding: 0 8px;
		box-sizing: border-box;
		max-width: 100%;
	}

	/* "FOSSILE DE 200 MILLIONS D'ANNÉES" — eyebrow sous le grand titre */
	#colophon .elementor-element-005a77d .elementor-heading-title {
		font-size: 10px !important;
		letter-spacing: 0.22em !important;
		line-height: 1.6 !important;
	}

	/* Section liens footer (LES NOUVEAUTÉS / À PROPOS / COLLECTIONS / LEGAL / social) */
	#colophon .elementor-element-06ad8c3 .elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 0.26em !important;
		margin-bottom: 12px !important;
	}

	/* Nav menus footer : centrés, items aérés */
	#colophon .elementor-element-06ad8c3 .elementor-nav-menu,
	#colophon .elementor-element-06ad8c3 .elementor-nav-menu--main {
		text-align: center !important;
	}

	#colophon .elementor-element-06ad8c3 .elementor-nav-menu li,
	#colophon .elementor-element-06ad8c3 .elementor-nav-menu li a {
		justify-content: center !important;
		text-align: center !important;
	}

	/* Newsletter placeholder centrée */
	#colophon .bp-newsletter-placeholder {
		margin: 0 auto !important;
		max-width: 280px !important;
	}

	/* Social icons : centrées */
	#colophon .elementor-element-58f7be1,
	#colophon .elementor-element-7e7af8f,
	#colophon .elementor-widget-social-icons {
		text-align: center !important;
		justify-content: center !important;
	}

	#colophon .elementor-social-icons-wrapper {
		justify-content: center !important;
	}

	/* Section bottom "B · P" */
	#colophon .elementor-element-e6cd6ee {
		padding: 32px 24px !important;
		text-align: center !important;
		justify-content: center !important;
	}

	#colophon .elementor-element-3b7874f .elementor-heading-title {
		font-size: 22px !important;
		letter-spacing: 0.3em !important;
	}

	/* Dividers du hero band : pleine largeur mobile */
	#colophon .elementor-element-a73db54,
	#colophon .elementor-element-3659ddc {
		width: 100% !important;
	}

	/* Padding global du footer en mobile (réduit pour respiration) */
	#colophon .elementor-element-4ead14d {
		padding: 48px 0 !important;
		gap: 32px !important;
	}

	#colophon .elementor-element-06ad8c3 {
		padding-top: 24px !important;
		padding-bottom: 48px !important;
	}
}

/* Tablette : sections en 2 colonnes pour économiser l'espace vertical */
@media (min-width: 768px) and (max-width: 1024px) {
	#colophon .elementor-element-06ad8c3 {
		flex-wrap: wrap !important;
		gap: 40px 32px !important;
	}

	#colophon .elementor-element-06ad8c3 > .e-con {
		flex: 1 1 calc(50% - 16px) !important;
		max-width: calc(50% - 16px) !important;
	}
}

/* ============================================================
   Header mobile (≤ 1024px) — épuré : logo + user + burger
   La recherche et le panier passent dans le burger dropdown via JS
   ============================================================ */

/* Widget search dans le header masqué sur TOUS les écrans (désactivé pour l'instant) */
#site-header .elementor-element-c329c05 {
	display: none !important;
}

@media (max-width: 1024px) {
	/* En mobile, masque aussi le widget cart (68cfaf4) — le panier va dans le burger */
	#site-header .elementor-element-68cfaf4 {
		display: none !important;
	}

	/* Container droite : juste l'icône user, plus besoin de largeur fixe */
	#site-header .elementor-element-56fae34 {
		width: auto !important;
		gap: 12px !important;
	}

	/* L'icône user reste visible */
	#site-header .elementor-element-f53b487 {
		display: block !important;
	}

	/* Ordre des éléments dans le header : Logo | User | Burger */
	#site-header {
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
	}

	#site-header .elementor-element-c11f412 {
		order: 1;
		flex: 0 0 auto;
	}

	#site-header .elementor-element-56fae34 {
		order: 2;
		flex: 0 0 auto;
		margin-left: auto !important;
		margin-right: 10px !important;
	}

	#site-header .elementor-element-1867dae {
		order: 3;
		flex: 0 0 auto !important;
		width: auto !important;
	}

	/* Toggle burger collé à droite du widget nav-menu */
	#site-header .elementor-element-1867dae .elementor-menu-toggle {
		margin-left: auto !important;
		margin-right: 0 !important;
	}

	/* Dropdown : positionné en fixed sous le header, pleine largeur.
	   Reste collé sous le header même au scroll grâce à position: fixed
	   + JS qui met à jour --bp-header-height au scroll.
	   Pas d'override de display — Elementor gère natifvement ouvert/fermé. */
	#site-header .elementor-nav-menu--dropdown {
		position: fixed !important;
		top: var(--bp-header-height, 64px) !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
		max-height: calc(100vh - var(--bp-header-height, 64px));
		overflow-y: auto;
		margin: 0 !important;
		padding: 0 !important;
		background: #FFFFFF !important;
		box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
		z-index: 9998;
	}

	/* S'assure que le header sticky reste au-dessus du dropdown pour que
	   le toggle (et le bouton X) restent cliquables. */
	#site-header {
		z-index: 9999 !important;
	}
}

/* ============================================================
   Burger dropdown — extras injectés par JS (search + cart) + items
   ============================================================ */

/* Items du menu burger : style site (Inter Tight uppercase, séparateurs) */
#site-header .elementor-nav-menu--dropdown {
	background: #FFFFFF !important;
	padding: 0 !important;
	text-align: left !important;
}

#site-header .elementor-nav-menu--dropdown ul,
#site-header .elementor-nav-menu--dropdown > ul {
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: left !important;
}

#site-header .elementor-nav-menu--dropdown li {
	border-bottom: 1px solid #F0EDE5;
	list-style: none;
	margin: 0;
	text-align: left !important;
}

#site-header .elementor-nav-menu--dropdown li:last-child {
	border-bottom: none;
}

#site-header .elementor-nav-menu--dropdown li a,
#site-header .elementor-nav-menu--dropdown li a.elementor-item {
	display: block !important;
	padding: 18px 24px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	color: #0A0A0A !important;
	text-decoration: none !important;
	text-align: left !important;
	transition: background 0.2s ease, padding-left 0.2s ease;
}

#site-header .elementor-nav-menu--dropdown li a:hover,
#site-header .elementor-nav-menu--dropdown li a.elementor-item:hover,
#site-header .elementor-nav-menu--dropdown li.current-menu-item a,
#site-header .elementor-nav-menu--dropdown li a.elementor-item-active {
	background: #FAFAF7 !important;
	padding-left: 30px !important;
}

/* Cart widget cloné en bas du dropdown */
#site-header .bp-burger-cart {
	padding: 18px 24px;
	border-top: 1px solid #F0EDE5;
	background: #FAFAF7;
	display: flex;
	justify-content: center;
}

#site-header .bp-burger-cart .elementor-widget-container {
	width: 100%;
}

#site-header .bp-burger-cart .elementor-menu-cart__toggle {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	background: transparent;
	border: 1px solid #0A0A0A;
	padding: 14px 20px;
	font-family: 'Inter Tight', sans-serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #0A0A0A;
	transition: background 0.2s ease, color 0.2s ease;
}

#site-header .bp-burger-cart .elementor-menu-cart__toggle:hover {
	background: #0A0A0A;
	color: #FFFFFF;
}

#site-header .bp-burger-cart .elementor-menu-cart__toggle .elementor-button-icon {
	margin-right: 4px;
}

#site-header .bp-burger-cart .elementor-menu-cart__toggle .elementor-menu-cart__subtotal {
	font-family: 'Inter Tight', sans-serif;
	font-weight: 500;
	letter-spacing: 0.1em;
}

/* --- Fix FOUC menu mobile : empêche le flash burger/X au centre de l'écran pendant la navigation entre pages --- */

/* Sur desktop, le toggle burger n'a aucune raison d'être visible.
   On le masque inconditionnellement pour qu'il ne puisse jamais flasher. */
@media (min-width: 1025px) {
	.elementor-menu-toggle,
	.hfe-nav-menu__toggle,
	.uael-flyout-trigger,
	.elementor-nav-menu--dropdown {
		display: none !important;
	}
}

/* Borner la taille du toggle sur tablette/mobile : sans cette borne,
   l'icône eicon s'affiche en pleine taille (centrée par Elementor)
   le temps que les CSS responsives soient parsés. */
.elementor-menu-toggle {
	width: 40px !important;
	height: 40px !important;
	font-size: 22px !important;
	line-height: 1 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

/* Toggle = burger fermé ou X ouvert, jamais les deux à la fois. */
.elementor-menu-toggle .eicon-close {
	display: none;
}

.elementor-menu-toggle.elementor-active .eicon-menu-bar {
	display: none;
}

.elementor-menu-toggle.elementor-active .eicon-close {
	display: inline-block;
}

/* Le show/hide du dropdown est entièrement géré par Elementor JS — on ne
   force pas de display ici pour éviter de bloquer le toggle. */

/* --- Page Accueil — harmonisation typo (Jost → Inter Tight) --- */

/* L'Accueil (page 180) a beaucoup de styles inline `font-family:Jost,sans-serif`
   directement dans le contenu des widgets. On force la conversion vers Inter Tight
   sans toucher au Cormorant Garamond (déjà cohérent avec le reste du site). */
.page-id-180 [style*="font-family: Jost"],
.page-id-180 [style*="font-family:Jost"],
.page-id-180 [style*="font-family:'Jost'"],
.page-id-180 [style*='font-family:"Jost"'] {
	font-family: 'Inter Tight', sans-serif !important;
}

/* Astra applique Jost en variable globale sur les éléments H/p — neutraliser
   sur la zone de contenu Elementor de l'Accueil. */
.page-id-180 .elementor-widget-text-editor,
.page-id-180 .elementor-widget-heading {
	font-family: 'Inter Tight', sans-serif;
}

.page-id-180 .elementor-widget-heading h1,
.page-id-180 .elementor-widget-heading h2,
.page-id-180 .elementor-widget-heading h3,
.page-id-180 .elementor-widget-heading h4,
.page-id-180 .elementor-widget-heading h5,
.page-id-180 .elementor-widget-heading h6 {
	font-family: 'Cormorant Garamond', Georgia, serif;
}

/* Eyebrows (h5/h6 uppercase tracking large) gardent Inter Tight comme le reste du site */
.page-id-180 .elementor-widget-heading h5,
.page-id-180 .elementor-widget-heading h6 {
	font-family: 'Inter Tight', sans-serif;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}

/* --- Pages catégories WooCommerce — harmonisation site-wide --- */

/* S'applique à TOUTES les pages de catégorie produit (tax-product_cat) et à
   l'archive boutique. Les styles sont scopés à .woocommerce-page pour ne pas
   déborder sur la fiche produit. */

/* Titre de catégorie : Cormorant Garamond comme le reste du site */
.woocommerce-page.archive .woocommerce-products-header__title.page-title,
.woocommerce-page.tax-product_cat .woocommerce-products-header__title.page-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-weight: 300;
	font-size: clamp(40px, 5vw, 60px);
	line-height: 1.1;
	color: #0A0A0A;
	text-align: center;
	letter-spacing: -0.5px;
	margin: 80px 0 24px;
}

/* Description de la catégorie (term-description) — italic discret */
.woocommerce-page .term-description,
.woocommerce-page .woocommerce-products-header > .term-description {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: 18px;
	line-height: 1.7;
	color: #555;
	text-align: center;
	max-width: 640px;
	margin: 0 auto 50px;
}

/* Fil d'ariane WC : Inter Tight uppercase tracking large */
.woocommerce-page .woocommerce-breadcrumb {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #6B6B6B;
	text-align: center;
	margin: 32px 0 8px;
}

.woocommerce-page .woocommerce-breadcrumb a {
	color: #0A0A0A;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s ease;
}

.woocommerce-page .woocommerce-breadcrumb a:hover {
	border-bottom-color: #0A0A0A;
}

/* Tri du catalogue (orderby) — neutraliser le look Astra par défaut */
.woocommerce-page .woocommerce-ordering select {
	font-family: 'Inter Tight', sans-serif;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #0A0A0A;
	background: transparent;
	border: 1px solid #E5E5E5;
	border-radius: 0;
	padding: 12px 36px 12px 16px;
}

/* Compteur de résultats */
.woocommerce-page .woocommerce-result-count {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #6B6B6B;
}

/* --- Messages WooCommerce (info / no-products-found / message) --- */

/* Aplatir le look "alerte" par défaut, le remplacer par une bannière minimaliste
   alignée avec la palette noir/blanc/crème du site. */
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-message,
.woocommerce-page .woocommerce-error {
	background: #F8F6F1;
	border: none;
	border-left: 2px solid #0A0A0A;
	border-radius: 0;
	padding: 24px 32px;
	color: #0A0A0A;
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	letter-spacing: 0.02em;
	line-height: 1.6;
	max-width: 720px;
	margin: 40px auto;
	box-shadow: none;
	text-align: left;
	list-style: none;
}

.woocommerce-page .woocommerce-info::before,
.woocommerce-page .woocommerce-message::before,
.woocommerce-page .woocommerce-error::before {
	color: #0A0A0A;
	font-size: 1em;
	top: 1.3em;
	left: 1em;
}

/* Liens à l'intérieur d'un message WC */
.woocommerce-page .woocommerce-info a,
.woocommerce-page .woocommerce-message a,
.woocommerce-page .woocommerce-error a {
	color: #0A0A0A;
	text-decoration: none;
	border-bottom: 1px solid #0A0A0A;
	font-weight: 500;
	padding-bottom: 1px;
	transition: opacity 0.2s ease;
}

.woocommerce-page .woocommerce-info a:hover,
.woocommerce-page .woocommerce-message a:hover,
.woocommerce-page .woocommerce-error a:hover {
	opacity: 0.6;
}

/* Variante centrée pour "Aucun produit ne correspond à votre sélection" */
.woocommerce-page .woocommerce-no-products-found {
	margin: 80px auto;
	text-align: center;
}

.woocommerce-page .woocommerce-no-products-found .woocommerce-info {
	display: inline-block;
	border-left: none;
	border-top: 1px solid #0A0A0A;
	border-bottom: 1px solid #0A0A0A;
	padding: 28px 64px;
	text-align: center;
	background: transparent;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	color: #0A0A0A;
}

/* L'icône info par défaut n'a plus de sens dans le contexte épuré */
.woocommerce-page .woocommerce-no-products-found .woocommerce-info::before {
	display: none;
}

/* Le bouton "Boutique" optionnellement affiché sous le message */
.woocommerce-page .woocommerce-no-products-found .wc-backward,
.woocommerce-page .return-to-shop .wc-backward {
	display: inline-block;
	margin-top: 28px;
	padding: 14px 32px;
	background: #0A0A0A;
	color: #FFFFFF;
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	border: 1px solid #0A0A0A;
	border-radius: 0;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce-page .woocommerce-no-products-found .wc-backward:hover,
.woocommerce-page .return-to-shop .wc-backward:hover {
	background: #FFFFFF;
	color: #0A0A0A;
}

/* ============================================================
   Page Mon Compte (WooCommerce) — login, register, dashboard
   ============================================================ */

/* Titre de page (entry-title Astra) */
body.woocommerce-account .entry-title,
body.woocommerce-account .ast-archive-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-weight: 300;
	font-size: clamp(40px, 5vw, 60px);
	line-height: 1.1;
	color: #0A0A0A;
	text-align: center;
	margin: 60px 0 32px;
	letter-spacing: -0.5px;
}

/* Wrapper WC — état NON connecté (centré, étroit) */
body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .woocommerce {
	max-width: 480px;
	margin: 0 auto;
	padding: 20px 24px 80px;
}

/* Si login + register en 2 colonnes côte à côte */
@media (min-width: 800px) {
	body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .u-columns.col2-set {
		max-width: 960px;
		margin: 0 auto;
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 80px;
	}

	body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .u-columns.col2-set .col-1,
	body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .u-columns.col2-set .col-2 {
		width: 100% !important;
		max-width: none !important;
		padding: 0 !important;
		float: none !important;
	}
}

/* Sous-titre "Connexion" / "Inscription" (h2 dans le form) */
body.woocommerce-account .woocommerce > h2,
body.woocommerce-account .col-1 > h2,
body.woocommerce-account .col-2 > h2 {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #6B6B6B;
	text-align: center;
	margin: 0 0 32px;
}

/* Form base — pas de bordure ni de fond */
body.woocommerce-account .woocommerce-form {
	background: transparent;
	border: none;
	padding: 0;
	box-shadow: none;
}

body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row {
	margin: 0 0 24px;
	padding: 0;
}

/* Labels — eyebrows Inter Tight uppercase */
body.woocommerce-account .woocommerce-form label:not(.woocommerce-form__label-for-checkbox),
body.woocommerce-account .form-row label:not(.woocommerce-form__label-for-checkbox) {
	display: block;
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #6B6B6B;
	margin: 0 0 8px;
}

/* Asterisque required */
body.woocommerce-account .required {
	color: #0A0A0A;
	text-decoration: none;
}

/* Inputs hairline */
body.woocommerce-account .woocommerce-Input--text,
body.woocommerce-account .input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account input[type="number"] {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	width: 100%;
	background: transparent;
	border: none;
	border-bottom: 1px solid #E5E5E5;
	border-radius: 0;
	padding: 12px 0;
	color: #0A0A0A;
	box-shadow: none;
	transition: border-color 0.2s ease;
}

body.woocommerce-account .woocommerce-Input--text:focus,
body.woocommerce-account .input-text:focus,
body.woocommerce-account input[type="text"]:focus,
body.woocommerce-account input[type="email"]:focus,
body.woocommerce-account input[type="password"]:focus,
body.woocommerce-account input[type="tel"]:focus,
body.woocommerce-account input[type="number"]:focus {
	outline: none;
	border-bottom-color: #0A0A0A;
	box-shadow: none;
}

/* Checkbox "Se souvenir de moi" */
body.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'Inter Tight', sans-serif;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.02em;
	text-transform: none;
	color: #444;
	margin: 20px 0 8px;
	cursor: pointer;
}

body.woocommerce-account .woocommerce-form__input-checkbox {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: #0A0A0A;
	flex-shrink: 0;
}

/* Bouton submit — noir, full width, hover inversé */
body.woocommerce-account .woocommerce-button,
body.woocommerce-account .woocommerce-form button[type="submit"],
body.woocommerce-account button.woocommerce-Button {
	display: inline-block;
	width: 100%;
	background: #0A0A0A;
	color: #FFFFFF;
	border: 1px solid #0A0A0A;
	border-radius: 0;
	padding: 16px 32px;
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
	margin-top: 16px;
	text-shadow: none;
	box-shadow: none;
}

body.woocommerce-account .woocommerce-button:hover,
body.woocommerce-account .woocommerce-form button[type="submit"]:hover,
body.woocommerce-account button.woocommerce-Button:hover {
	background: #FFFFFF;
	color: #0A0A0A;
}

/* Lien "mot de passe oublié" */
body.woocommerce-account .woocommerce-LostPassword,
body.woocommerce-account .lost_password {
	text-align: center;
	margin: 24px 0 0;
}

body.woocommerce-account .woocommerce-LostPassword a,
body.woocommerce-account .lost_password a {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #0A0A0A;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	padding-bottom: 1px;
	transition: border-color 0.2s ease;
}

body.woocommerce-account .woocommerce-LostPassword a:hover,
body.woocommerce-account .lost_password a:hover {
	border-bottom-color: #0A0A0A;
}

/* ============================================================
   Dashboard (utilisateur connecté) — layout PLEINE LARGEUR app web
   Sidebar collée au bord gauche du viewport + contenu sur le reste
   ============================================================ */

/* Bypass les max-width Astra pour étendre à TOUTE la fenêtre,
   uniquement quand la sidebar est présente (= dashboard mode) */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) #content,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .ast-container,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) #primary,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) #primary > article,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .entry-content,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .ast-article-post {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Header titre — bandeau pleine largeur centré, avec hairline en bas */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .entry-header {
	width: 100%;
	max-width: none;
	text-align: center;
	padding: 24px 24px 20px;
	margin: 0;
	border-bottom: 1px solid #F0EDE5;
}

body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .entry-title {
	margin: 0 !important;
	padding: 0 !important;
	font-size: clamp(28px, 3.5vw, 38px);
}

/* Réduit aussi l'espace que Astra met au-dessus du content sur cette page */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .ast-article-post,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) #primary,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) #content {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* Wrapper WC = flex pleine largeur viewport */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 0;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	min-height: calc(100vh - 240px);
	box-sizing: border-box;
}

/* Sidebar — flex item fixe 280px collé au bord gauche, fond crème, sticky */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation {
	flex: 0 0 280px;
	width: 280px;
	max-width: 280px;
	background: #FAFAF7;
	padding: 48px 32px 80px;
	border-right: 1px solid #E5E5E5;
	float: none;
	margin: 0;
	position: sticky;
	top: 80px;
	align-self: flex-start;
	min-height: calc(100vh - 80px);
	box-sizing: border-box;
}

/* Contenu — flex item qui prend TOUT le reste du viewport */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
	flex: 1 1 0;
	min-width: 0;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 56px 64px 100px;
	box-sizing: border-box;
}

/* ============================================================
   Mobile / tablette : sidebar devient une bottom nav avec icônes
   ============================================================ */
@media (max-width: 900px) {
	/* Wrapper : column simple, contenu prend tout, nav en overlay fixed */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce {
		flex-direction: column;
		min-height: auto;
		padding-bottom: 80px;
	}

	/* Sidebar = bottom nav fixée au bas du viewport */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation {
		position: fixed !important;
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		top: auto !important;
		width: 100% !important;
		max-width: none !important;
		height: 64px;
		min-height: 64px !important;
		flex: 0 0 64px !important;
		padding: 0 !important;
		margin: 0 !important;
		background: #FFFFFF !important;
		border: none !important;
		border-top: 1px solid #E5E5E5 !important;
		box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
		z-index: 999;
	}

	/* ul horizontal sur toute la largeur */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		flex-direction: row;
		height: 100%;
		margin: 0;
		padding: 0;
		list-style: none;
		align-items: stretch;
		justify-content: space-around;
	}

	/* items : flex-1, pas de séparateur */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li {
		flex: 1 1 0;
		border: none !important;
		margin: 0;
		padding: 0;
		display: flex;
	}

	/* Liens : flex center, texte caché, position relative pour l'icône */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li a {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100%;
		height: 100%;
		padding: 0 !important;
		margin: 0 !important;
		font-size: 0 !important;
		line-height: 0 !important;
		color: transparent !important;
		position: relative;
		border-left: none !important;
	}

	/* Reset l'active state desktop (border-left + margin) */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li.is-active a {
		border-left: none !important;
		margin-left: 0 !important;
		padding-left: 0 !important;
	}

	/* Icône via mask-image SVG, couleur via background-color */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li a::before {
		content: '';
		display: block;
		width: 24px;
		height: 24px;
		background-color: #6B6B6B;
		mask-size: 24px 24px;
		mask-repeat: no-repeat;
		mask-position: center;
		-webkit-mask-size: 24px 24px;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
		transition: background-color 0.2s ease;
	}

	/* Active : icône noire + petite barre noire en haut */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li.is-active a::before {
		background-color: #0A0A0A;
	}

	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-navigation ul li.is-active a::after {
		content: '';
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 28px;
		height: 2px;
		background: #0A0A0A;
		border-radius: 0 0 2px 2px;
	}

	/* Mapping endpoint → SVG icon (mask-image via data URI) */
	.woocommerce-MyAccount-navigation-link--dashboard a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='7' height='7' rx='1'/><rect x='14' y='3' width='7' height='7' rx='1'/><rect x='3' y='14' width='7' height='7' rx='1'/><rect x='14' y='14' width='7' height='7' rx='1'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='7' height='7' rx='1'/><rect x='14' y='3' width='7' height='7' rx='1'/><rect x='3' y='14' width='7' height='7' rx='1'/><rect x='14' y='14' width='7' height='7' rx='1'/></svg>");
	}

	.woocommerce-MyAccount-navigation-link--orders a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M16.5 9.4L7.5 4.21'/><path d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/><path d='M3.27 6.96L12 12.01l8.73-5.05'/><path d='M12 22.08V12'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M16.5 9.4L7.5 4.21'/><path d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/><path d='M3.27 6.96L12 12.01l8.73-5.05'/><path d='M12 22.08V12'/></svg>");
	}

	.woocommerce-MyAccount-navigation-link--downloads a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/><polyline points='7 10 12 15 17 10'/><line x1='12' y1='15' x2='12' y2='3'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/><polyline points='7 10 12 15 17 10'/><line x1='12' y1='15' x2='12' y2='3'/></svg>");
	}

	.woocommerce-MyAccount-navigation-link--edit-address a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 7-8 12-8 12s-8-5-8-12a8 8 0 0 1 16 0Z'/><circle cx='12' cy='10' r='3'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 7-8 12-8 12s-8-5-8-12a8 8 0 0 1 16 0Z'/><circle cx='12' cy='10' r='3'/></svg>");
	}

	.woocommerce-MyAccount-navigation-link--edit-account a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>");
	}

	.woocommerce-MyAccount-navigation-link--customer-logout a::before {
		-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>");
		mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>");
	}

	/* Contenu : padding-bottom pour ne pas être caché derrière la bottom nav */
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-MyAccount-content {
		flex: 1 1 auto;
		width: 100%;
		padding: 32px 24px 96px;
	}
}

/* ============================================================
   Login / Register form (pas de sidebar)
   ============================================================ */

body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .woocommerce {
	display: flex !important;
	flex-direction: column;
	max-width: 480px;
	margin: 24px auto 100px;
	padding: 0 24px;
	gap: 0;
}

body.woocommerce-account:not(:has(.woocommerce-MyAccount-navigation)) .woocommerce > * {
	width: 100%;
	flex: 0 0 auto;
}

/* Login + register 2 colonnes */
body.woocommerce-account:has(.col2-set):not(:has(.woocommerce-MyAccount-navigation)) .woocommerce {
	max-width: 960px;
}

/* Dans le dashboard, les boutons submit (Enregistrer les modifications, etc.)
   ne doivent PAS prendre toute la largeur de la zone contenu : largeur auto
   avec un min-width raisonnable pour rester cliquables. */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-button,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-form button[type="submit"],
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) button.woocommerce-Button {
	width: auto !important;
	min-width: 220px;
	max-width: 360px;
	display: inline-block !important;
	margin-top: 24px !important;
}

/* Sur mobile, on permet au bouton de prendre toute la largeur si nécessaire */
@media (max-width: 600px) {
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-button,
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) .woocommerce-form button[type="submit"],
	body.woocommerce-account:has(.woocommerce-MyAccount-navigation) button.woocommerce-Button {
		width: 100% !important;
		max-width: none;
	}
}

/* ============================================================
   Empty states du dashboard Mon Compte
   (commandes vides, téléchargements vides, etc.)
   ============================================================ */

/* Override le style "alerte/info" par défaut WC à l'intérieur du dashboard.
   Le résultat : bloc aéré, message Cormorant italic centré, bouton CTA noir. */
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-Message,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content > .woocommerce-notice {
	display: flex !important;
	flex-direction: column-reverse !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 28px;
	text-align: center !important;

	background: #FAFAF7 !important;
	border: 1px solid #F0EDE5 !important;
	border-left: 1px solid #F0EDE5 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 64px 40px 60px !important;
	margin: 24px auto 32px !important;
	max-width: 640px !important;
	list-style: none !important;

	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-style: italic !important;
	font-weight: 300 !important;
	font-size: 20px !important;
	line-height: 1.5 !important;
	letter-spacing: 0 !important;
	color: #0A0A0A !important;
}

/* Si l'item WC est un <ul> avec un <li> dedans, on aplatit */
.woocommerce-MyAccount-content .woocommerce-message > li,
.woocommerce-MyAccount-content .woocommerce-info > li {
	display: contents;
}

/* Cache l'icône info/check par défaut Woo (::before) */
.woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce-MyAccount-content .woocommerce-Message::before,
.woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-MyAccount-content .woocommerce-message::after,
.woocommerce-MyAccount-content .woocommerce-info::after {
	display: none !important;
	content: none !important;
}

/* Bouton CTA dans l'empty state ("Parcourir les produits", "Voir la boutique"…) */
.woocommerce-MyAccount-content .woocommerce-message .button,
.woocommerce-MyAccount-content .woocommerce-message a.button,
.woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-MyAccount-content .woocommerce-info a.button,
.woocommerce-MyAccount-content .woocommerce-message .woocommerce-Button,
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button {
	display: inline-block !important;
	background: #0A0A0A !important;
	color: #FFFFFF !important;
	border: 1px solid #0A0A0A !important;
	border-radius: 0 !important;
	padding: 14px 32px !important;
	margin: 0 !important;

	font-family: 'Inter Tight', sans-serif !important;
	font-style: normal !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.28em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;

	transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce-MyAccount-content .woocommerce-message .button:hover,
.woocommerce-MyAccount-content .woocommerce-message a.button:hover,
.woocommerce-MyAccount-content .woocommerce-Message .button:hover,
.woocommerce-MyAccount-content .woocommerce-info .button:hover,
.woocommerce-MyAccount-content .woocommerce-info a.button:hover,
.woocommerce-MyAccount-content .woocommerce-message .woocommerce-Button:hover,
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button:hover {
	background: #FFFFFF !important;
	color: #0A0A0A !important;
}

/* Items de la sidebar */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-MyAccount-navigation ul li {
	margin: 0;
	border-bottom: 1px solid rgba(10, 10, 10, 0.08);
}

.woocommerce-MyAccount-navigation ul li:last-child {
	border-bottom: none;
}

.woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 14px 0;
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #6B6B6B;
	text-decoration: none;
	transition: color 0.2s ease, padding-left 0.2s ease;
}

.woocommerce-MyAccount-navigation ul li a:hover {
	color: #0A0A0A;
	padding-left: 6px;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
	color: #0A0A0A;
	font-weight: 600;
	border-left: 2px solid #0A0A0A;
	margin-left: -16px;
	padding-left: 14px;
}

.woocommerce-MyAccount-content p,
.woocommerce-MyAccount-content address {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: #444;
	margin: 0 0 16px;
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3,
.woocommerce-MyAccount-content header.title h2,
.woocommerce-MyAccount-content header.title h3 {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-weight: 300;
	color: #0A0A0A;
	margin: 0 0 16px;
	letter-spacing: -0.3px;
}

.woocommerce-MyAccount-content h2 {
	font-size: 28px;
}

.woocommerce-MyAccount-content h3 {
	font-size: 22px;
}

/* Tables — commandes / téléchargements */
.woocommerce-MyAccount-content .woocommerce-orders-table,
.woocommerce-MyAccount-content .shop_table {
	width: 100%;
	border-collapse: collapse;
	border: none;
	margin: 0 0 32px;
	background: transparent;
}

.woocommerce-MyAccount-content .shop_table thead {
	border-bottom: 1px solid #0A0A0A;
}

.woocommerce-MyAccount-content .shop_table th {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #6B6B6B;
	text-align: left;
	padding: 14px 12px;
	background: transparent;
	border: none;
}

.woocommerce-MyAccount-content .shop_table td {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	color: #0A0A0A;
	padding: 18px 12px;
	border-top: 1px solid #F0EDE5;
	background: transparent;
}

/* Boutons d'action dans les tables ("Voir", "Pay", etc.) */
.woocommerce-MyAccount-content .shop_table .button,
.woocommerce-MyAccount-content .woocommerce-button.view {
	background: #0A0A0A;
	color: #FFFFFF;
	border: 1px solid #0A0A0A;
	border-radius: 0;
	padding: 8px 16px;
	font-family: 'Inter Tight', sans-serif;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	text-decoration: none;
	box-shadow: none;
	transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce-MyAccount-content .shop_table .button:hover,
.woocommerce-MyAccount-content .woocommerce-button.view:hover {
	background: #FFFFFF;
	color: #0A0A0A;
}

/* Cartes adresses (page "Adresses") — grid 2 colonnes au lieu des floats WC */

/* Wrapper parent : grid propre, reset des floats WC.
   Spécificité maximisée pour battre toute règle WC/Astra sans risque. */
body.woocommerce-account .woocommerce-MyAccount-content .u-columns,
body.woocommerce-account .woocommerce-MyAccount-content .col2-set,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .addresses {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 24px !important;
	margin: 24px 0 32px !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	clear: both !important;
}

@media (max-width: 700px) {
	body.woocommerce-account .woocommerce-MyAccount-content .u-columns,
	body.woocommerce-account .woocommerce-MyAccount-content .col2-set,
	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
	body.woocommerce-account .woocommerce-MyAccount-content .addresses {
		grid-template-columns: 1fr !important;
	}
}

/* Neutraliser les pseudo-éléments clearfix WC qui créent des "cellules fantômes"
   dans le grid (typiquement .col2-set::before et ::after avec content: "") */
body.woocommerce-account .woocommerce-MyAccount-content .u-columns::before,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns::after,
body.woocommerce-account .woocommerce-MyAccount-content .col2-set::before,
body.woocommerce-account .woocommerce-MyAccount-content .col2-set::after,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after,
body.woocommerce-account .woocommerce-MyAccount-content .addresses::before,
body.woocommerce-account .woocommerce-MyAccount-content .addresses::after {
	display: none !important;
	content: none !important;
}

/* Reset complet des cellules — float, width, marges */
body.woocommerce-account .woocommerce-MyAccount-content .col-1,
body.woocommerce-account .woocommerce-MyAccount-content .col-2,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	float: none !important;
	clear: none !important;
	margin: 0 !important;
}

/* Carte adresse */
.woocommerce-MyAccount-content .woocommerce-Address {
	background: #FAFAF7;
	border: 1px solid #F0EDE5;
	padding: 28px 32px !important;
	box-sizing: border-box;
}

/* Header carte : titre à gauche, lien edit à droite */
.woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce-MyAccount-content .woocommerce-Address .title,
.woocommerce-MyAccount-content header.woocommerce-Address-title {
	display: flex !important;
	justify-content: space-between !important;
	align-items: baseline !important;
	gap: 16px;
	margin: 0 0 20px !important;
	padding: 0 0 16px !important;
	border-bottom: 1px solid #F0EDE5;
}

.woocommerce-MyAccount-content .woocommerce-Address-title h2,
.woocommerce-MyAccount-content .woocommerce-Address-title h3,
.woocommerce-MyAccount-content .woocommerce-Address .title h2,
.woocommerce-MyAccount-content .woocommerce-Address .title h3 {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: 22px !important;
	font-weight: 300 !important;
	line-height: 1.2 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #0A0A0A !important;
	letter-spacing: -0.2px;
}

.woocommerce-MyAccount-content .woocommerce-Address-title .edit,
.woocommerce-MyAccount-content .woocommerce-Address .title .edit {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	color: #0A0A0A !important;
	text-decoration: none !important;
	border-bottom: 1px solid #0A0A0A !important;
	padding-bottom: 1px !important;
	flex-shrink: 0;
	transition: opacity 0.2s ease;
}

.woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
	opacity: 0.6;
}

/* Corps de la carte (l'adresse ou le placeholder "Vous n'avez pas encore défini…") */
.woocommerce-MyAccount-content .woocommerce-Address address,
.woocommerce-MyAccount-content .woocommerce-Address p {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: #444 !important;
	font-style: normal !important;
	margin: 0 !important;
	border: none !important;
	padding: 0 !important;
	background: transparent !important;
}

/* Nettoie toute bordure parasite qu'Astra/WC pourrait poser sur les enfants
   de la carte (créait un "rectangle interne" visible sur mobile) */
.woocommerce-MyAccount-content .woocommerce-Address > * {
	background: transparent !important;
	box-shadow: none !important;
}

.woocommerce-MyAccount-content .woocommerce-Address-title {
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* ---- Mobile : titre/bouton en colonne pour ne plus déborder ---- */
@media (max-width: 700px) {
	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address {
		padding: 22px 22px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .title,
	body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 12px !important;
		padding: 0 0 16px !important;
		margin: 0 0 16px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
		font-size: 20px !important;
		line-height: 1.2 !important;
		width: 100%;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
		font-size: 10px !important;
		letter-spacing: 0.12em !important;
		white-space: normal !important;
		overflow-wrap: break-word !important;
		max-width: 100%;
		line-height: 1.4 !important;
		display: inline-block;
	}
}

/* Intro "Les adresses suivantes seront utilisées…" */
.woocommerce-MyAccount-content > p:first-of-type {
	font-family: 'Inter Tight', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: #6B6B6B;
	margin: 0 0 32px;
}

/* Formulaire "Détails du compte" (edit-account) */
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) fieldset {
	border: none;
	border-top: 1px solid #E5E5E5;
	padding: 32px 0 0;
	margin: 32px 0 24px;
}

body.woocommerce-account:has(.woocommerce-MyAccount-navigation) fieldset legend {
	font-family: 'Inter Tight', sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: #6B6B6B;
	padding: 0;
	margin: 0 0 24px;
}

body.woocommerce-account:has(.woocommerce-MyAccount-navigation) fieldset legend + p,
body.woocommerce-account:has(.woocommerce-MyAccount-navigation) fieldset p:first-of-type {
	font-family: 'Inter Tight', sans-serif;
	font-size: 13px;
	color: #6B6B6B;
}

/* Message "Bonjour USERNAME" en haut du dashboard */
.woocommerce-MyAccount-content > p:first-child {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-style: italic;
	font-size: 20px;
	color: #0A0A0A;
	margin: 0 0 24px;
}

/* Liens dans le contenu Mon Compte */
.woocommerce-MyAccount-content a:not(.button) {
	color: #0A0A0A;
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 1px;
	transition: opacity 0.2s ease;
}

.woocommerce-MyAccount-content a:not(.button):hover {
	opacity: 0.6;
}

/* ============================================================
   Scroll to top — bouton "remonter en haut" (Astra)
   ============================================================ */

#ast-scroll-top,
.ast-scroll-to-top-right,
.ast-scroll-to-top-left,
.ast-scroll-top-icon {
	background: #0A0A0A !important;
	color: #FFFFFF !important;
	border: 1px solid #0A0A0A !important;
	border-radius: 0 !important;
	width: 44px !important;
	height: 44px !important;
	min-width: 44px;
	min-height: 44px;
	padding: 0 !important;
	font-size: 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
	z-index: 9997;
}

#ast-scroll-top:hover,
.ast-scroll-to-top-right:hover,
.ast-scroll-to-top-left:hover {
	background: #FFFFFF !important;
	color: #0A0A0A !important;
	transform: translateY(-2px);
}

#ast-scroll-top svg,
.ast-scroll-top-icon svg,
.ast-scroll-to-top-right svg,
.ast-scroll-to-top-left svg {
	width: 14px !important;
	height: 14px !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}

#ast-scroll-top i,
.ast-scroll-top-icon i {
	font-size: 14px !important;
	color: currentColor !important;
}

/* Position : on garde 24px du bord (au lieu des 30px par défaut Astra) */
@media (max-width: 768px) {
	#ast-scroll-top,
	.ast-scroll-to-top-right {
		right: 16px !important;
		bottom: 16px !important;
		width: 40px !important;
		height: 40px !important;
		min-width: 40px;
		min-height: 40px;
	}

	.ast-scroll-to-top-left {
		left: 16px !important;
		bottom: 16px !important;
		width: 40px !important;
		height: 40px !important;
	}
}

/* ============================================================
   Burger + X de fermeture — raffinements (le custom est dans header.css)
   ============================================================ */

/* Burger toggle : couleur noire forcée dans tous les états (Astra applique
   un bleu sur :hover/:focus des <button> qu'il faut neutraliser) */
.bp-site-header .bp-site-header__burger,
.bp-site-header .bp-site-header__burger:hover,
.bp-site-header .bp-site-header__burger:focus,
.bp-site-header .bp-site-header__burger:active,
.bp-site-header .bp-site-header__burger:visited {
	color: #0A0A0A !important;
	background: transparent !important;
	box-shadow: none !important;
}

.bp-site-header .bp-site-header__burger .bp-site-header__burger-bar,
.bp-site-header .bp-site-header__burger:hover .bp-site-header__burger-bar,
.bp-site-header .bp-site-header__burger:focus .bp-site-header__burger-bar,
.bp-site-header .bp-site-header__burger:active .bp-site-header__burger-bar {
	background: #0A0A0A !important;
	color: #0A0A0A !important;
}

/* Focus ring accessible pour le burger */
.bp-site-header__burger:focus-visible {
	outline: 2px solid #0A0A0A;
	outline-offset: 2px;
}

/* X de fermeture du drawer : couleur noire forcée dans tous les états,
   y compris au hover (le user voyait du blanc sur blanc qui rendait le X invisible) */
.bp-mobile-drawer .bp-mobile-drawer__close,
.bp-mobile-drawer .bp-mobile-drawer__close:hover,
.bp-mobile-drawer .bp-mobile-drawer__close:focus,
.bp-mobile-drawer .bp-mobile-drawer__close:active,
.bp-mobile-drawer .bp-mobile-drawer__close:visited {
	color: #0A0A0A !important;
	box-shadow: none !important;
}

.bp-mobile-drawer .bp-mobile-drawer__close svg,
.bp-mobile-drawer .bp-mobile-drawer__close:hover svg,
.bp-mobile-drawer .bp-mobile-drawer__close:focus svg,
.bp-mobile-drawer .bp-mobile-drawer__close:active svg {
	stroke: #0A0A0A !important;
	color: #0A0A0A !important;
	fill: none !important;
}

/* Hover : fond crème discret pour signaler la zone cliquable */
.bp-mobile-drawer .bp-mobile-drawer__close:hover {
	background: #F8F6F1 !important;
}

.bp-mobile-drawer__close:focus-visible {
	outline: 2px solid #0A0A0A;
	outline-offset: 2px;
}

/* Active state (tap mobile) — léger feedback visuel */
.bp-site-header__burger:active,
.bp-mobile-drawer__close:active {
	opacity: 0.7;
}

/* ============================================================
   Badges WooCommerce — nombre de produits + rupture de stock
   ============================================================ */

/* Badge "X produit(s)" affiché sur les cartes catégorie (<mark class="count">)
   - Placé EN DESSOUS du titre (display: block + fit-content centré)
   - Style pill discret crème, Inter Tight uppercase tracking */
.woocommerce mark.count,
.woocommerce ul.products mark.count,
.woocommerce-loop-category__title mark.count,
.woocommerce-loop-category__title .count {
	display: block !important;
	width: fit-content !important;
	max-width: fit-content !important;
	margin: 4px auto 0 !important;
	padding: 4px 10px !important;
	background: #FAFAF7 !important;
	color: #6B6B6B !important;
	border: 1px solid #E5E5E5 !important;
	border-radius: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	text-decoration: none !important;
}

/* Le titre catégorie est en block pour que le badge tombe à la ligne suivante */
.woocommerce-loop-category__title {
	display: block !important;
	text-align: center !important;
	margin-bottom: 0 !important;
}

/* === Badge "En rupture de stock" — même style que mark.count mais
   couleurs inversées (fond noir, texte blanc) pour signaler l'indispo === */

.woocommerce .out-of-stock-label,
.woocommerce .stock.out-of-stock,
.woocommerce span.out-of-stock,
.woocommerce p.stock.out-of-stock,
.woocommerce-product-details__short-description .out-of-stock,
ul.products li.product .outofstock-label,
.product .stock.out-of-stock,
.single-product .stock.out-of-stock,
.woocommerce div.product .stock.out-of-stock {
	display: block !important;
	width: fit-content !important;
	max-width: fit-content !important;
	margin: 4px auto 0 !important;
	padding: 4px 10px !important;
	background: #1A1A1A !important;
	color: #FFFFFF !important;
	border: 1px solid #1A1A1A !important;
	border-radius: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	text-decoration: none !important;
}

/* Masque le badge "En rupture de stock" par défaut d'Astra
   (span.ast-shop-product-out-of-stock superposé sur l'image).
   On garde uniquement notre badge custom posé via ::before. */
.ast-shop-product-out-of-stock,
span.ast-shop-product-out-of-stock,
.woocommerce ul.products li.product .ast-shop-product-out-of-stock {
	display: none !important;
}

/* Badge "rupture" superposé sur la vignette produit (overlay corner) */
.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link,
.woocommerce ul.products li.product.outofstock > a {
	position: relative;
}

.woocommerce ul.products li.product.outofstock::before {
	content: "Rupture";
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 2;
	padding: 4px 10px;
	background: #1A1A1A;
	color: #FFFFFF;
	font-family: 'Inter Tight', sans-serif;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	line-height: 1.4;
	pointer-events: none;
}

/* Effet "désaturation" discret sur le produit rupture pour communiquer
   visuellement l'état indisponible */
.woocommerce ul.products li.product.outofstock img {
	opacity: 0.6;
	filter: grayscale(0.2);
	transition: opacity 0.2s ease;
}

/* ============================================================
   Newsletter — Fluent Forms ID 2 dans le footer Kaloes
   Layout vertical épuré, hairline noir, bouton noir > inversé au hover.
   ============================================================ */

#colophon .fluentform_wrapper_2 {
	width: 100%;
	max-width: 280px;
	margin: 8px auto 0;
}

#colophon .fluentform_wrapper_2 form,
#colophon .fluent_form_2 {
	margin: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
}

#colophon .fluentform_wrapper_2 fieldset {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
}

/* Le form natif est en 2 colonnes 50/50 — on force en column pour le footer */
#colophon .fluentform_wrapper_2 .ff-t-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	margin: 0 !important;
}

#colophon .fluentform_wrapper_2 .ff-t-cell,
#colophon .fluentform_wrapper_2 .ff-t-cell.ff-t-column-1,
#colophon .fluentform_wrapper_2 .ff-t-cell.ff-t-column-2 {
	flex: 1 1 auto !important;
	width: 100% !important;
	flex-basis: 100% !important;
	max-width: 100% !important;
	padding: 0 !important;
}

#colophon .fluentform_wrapper_2 .ff-el-group {
	margin: 0 !important;
}

/* Input email : hairline minimaliste */
#colophon .fluentform_wrapper_2 input.ff-el-form-control,
#colophon .fluentform_wrapper_2 input[type="email"] {
	width: 100% !important;
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid #C9C2B3 !important;
	border-radius: 0 !important;
	padding: 10px 0 !important;
	margin: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 13px !important;
	color: #0A0A0A !important;
	box-shadow: none !important;
	outline: none !important;
	-webkit-appearance: none;
	transition: border-color 0.2s ease;
}

#colophon .fluentform_wrapper_2 input.ff-el-form-control::placeholder,
#colophon .fluentform_wrapper_2 input[type="email"]::placeholder {
	color: #6B6B6B;
	opacity: 1;
	font-style: italic;
}

#colophon .fluentform_wrapper_2 input.ff-el-form-control:focus,
#colophon .fluentform_wrapper_2 input[type="email"]:focus {
	border-bottom-color: #0A0A0A !important;
	box-shadow: none !important;
	outline: none !important;
}

/* Bouton submit : full width noir, hover inversé blanc.
   Override !important obligatoire pour battre le <style> inline généré
   par Fluent Forms (background:#1a7efb bleu par défaut). */
#colophon .fluentform_wrapper_2 button.ff-btn-submit,
#colophon .fluentform_wrapper_2 .ff-btn-submit,
#colophon form.fluent_form_2 .wpf_has_custom_css.ff-btn-submit,
#colophon form.fluent_form_2 .ff-btn.ff-btn-submit,
#colophon .fluent_form_2 button[type="submit"] {
	width: 100% !important;
	min-width: 100% !important;
	background: #0A0A0A !important;
	background-color: #0A0A0A !important;
	color: #FFFFFF !important;
	border: 1px solid #0A0A0A !important;
	border-color: #0A0A0A !important;
	border-radius: 0 !important;
	padding: 14px 24px !important;
	margin: 0 !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
	-webkit-appearance: none;
}

#colophon .fluentform_wrapper_2 button.ff-btn-submit:hover,
#colophon form.fluent_form_2 .wpf_has_custom_css.ff-btn-submit:hover,
#colophon form.fluent_form_2 .ff-btn.ff-btn-submit:hover {
	background: #FFFFFF !important;
	background-color: #FFFFFF !important;
	color: #0A0A0A !important;
	border-color: #0A0A0A !important;
}

/* Messages d'erreur/succès */
#colophon .fluentform_wrapper_2 .ff_msg_inline,
#colophon .fluentform_wrapper_2 .error,
#colophon .fluentform_wrapper_2 .ff-el-is-error {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 11px !important;
	color: #C0392B !important;
	margin-top: 4px !important;
	letter-spacing: 0.02em;
}

#colophon .fluentform_wrapper_2 .ff-message-success {
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 12px !important;
	color: #0A0A0A !important;
	padding: 12px 0 !important;
	border-top: 1px solid #C9C2B3 !important;
	background: transparent !important;
	border-left: none !important;
	border-right: none !important;
	border-bottom: none !important;
	border-radius: 0 !important;
}

/* === Bonus : badge "Promotion" (vente) si présent sur le site === */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
	background: #0A0A0A !important;
	color: #FFFFFF !important;
	border: 1px solid #0A0A0A !important;
	border-radius: 0 !important;
	padding: 4px 10px !important;
	font-family: 'Inter Tight', sans-serif !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	min-height: auto !important;
	min-width: auto !important;
	top: 12px !important;
	left: 12px !important;
	right: auto !important;
	margin: 0 !important;
}
