/* COVER BANNER — toutes pages sauf home hero */
.wp-block-cover { min-height: 350px !important; }
.wp-block-cover.alignfull:not(.home-hero-video) { max-height: 350px !important; overflow: hidden !important; }

/* HOME HERO VIDEO — plein ecran */
.home-hero-video.wp-block-cover.alignfull {
  min-height: 100vh !important; max-height: 100vh !important;
  overflow: hidden !important; margin-top: 0 !important; padding-top: 0 !important;
}
.home-hero-video .wp-block-cover__video-background {
  object-fit: cover !important; width: 100% !important; height: 100% !important;
}
.home .ct-container-full { padding-top: 0 !important; }

/* HOMEPAGE — header fixe et transparent */
.home header#header {
  position: fixed !important;
  top: 0 !important; left: 0 !important; width: 100% !important;
  z-index: 1000 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background 0.4s ease, box-shadow 0.4s ease !important;
}
.admin-bar.home header#header { top: 32px !important; }

/* Rows Blocksy transparentes quand pas scrolled */
.home header#header:not(.scrolled) [data-ct-component],
.home header#header:not(.scrolled) > div,
.home header#header:not(.scrolled) > div > div {
  background: transparent !important;
  background-color: transparent !important;
}

/* Au scroll : header blanc */
.home header#header.scrolled {
  background: #ffffff !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
}
.home header#header.scrolled [data-ct-component] {
  background: #ffffff !important;
}

/* Textes et logo blancs quand transparent */
.home header#header:not(.scrolled) .menu-item a,
.home header#header:not(.scrolled) nav a {
  color: #ffffff !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.6) !important;
}


.wp-block-cover__inner-container {
  position: absolute !important; top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  transform: none !important; display: flex !important;
  flex-direction: column !important; align-items: center !important;
  justify-content: center !important; z-index: 3 !important;
  box-sizing: border-box !important; padding: 0 32px !important; gap: 0 !important;
}
.wp-block-cover .wp-block-heading, .wp-block-cover h1 { font-size: 36px !important; letter-spacing: 0.18em !important; }
.wp-block-cover__inner-container > p,
.wp-block-cover__inner-container > .wp-block-paragraph { display: none !important; }
.wp-block-cover__image-background { filter: brightness(0.92) saturate(0.88) contrast(1.04) !important; }
.entry-content > .wp-block-cover.alignfull:not(.home-hero-video):first-child { margin-top: -60px !important; }
h1, h2, h3, h4, h5, h6, .wp-block-heading { font-family: Helvena, Helvetica, Arial, sans-serif !important; }
body, p, .entry-content, .wp-block-paragraph { font-family: Helvena, Helvetica, Arial, sans-serif !important; }

/* PAGE BOUTIQUE */
.woocommerce-shop .hero-section { background: transparent !important; overflow: hidden !important; height: 380px !important; max-height: 350px !important; }
.woocommerce-shop .entry-header {
  max-width: 100vw !important; width: 100vw !important; padding: 0 !important; margin: 0 !important;
  position: relative !important; left: 50% !important; transform: translateX(-50%) !important; box-sizing: border-box !important;
}
.woocommerce-shop h1.page-title { display: none !important; }
.woocommerce-shop .wp-block-cover.alignfull { margin-top: 0 !important; width: 100vw !important; max-width: 100vw !important; min-height: 350px !important; height: 380px !important; max-height: none !important; }

/* PAGE QUALITE — logos */
.label-row {
  display: flex !important; flex-wrap: wrap !important;
  gap: 32px 0 !important; margin: 32px auto 48px !important;
  align-items: flex-start !important;
  max-width: 1290px !important; padding: 0 !important; box-sizing: border-box !important;
}
.label-item {
  display: flex !important; flex-direction: row !important;
  align-items: center !important; gap: 32px !important;
  flex: 1 1 100% !important; width: 100% !important;
}
.label-item img {
  width: 200px !important; height: 200px !important;
  max-width: unset !important; min-width: 200px !important;
  object-fit: contain !important; flex-shrink: 0 !important;
}
.label-text { flex: 1 1 auto !important; }
.label-text h4 { font-size: 0.88rem !important; font-weight: 400 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; margin: 0 0 6px !important; color: #2a1f0e !important; }
.label-text p { font-size: 0.84rem !important; color: #6b5a48 !important; line-height: 1.65 !important; margin: 0 !important; }

/* FOOTER */

.ct-footer .ct-container { padding: 18px 0 !important; align-items: start !important; }
.ct-footer .ct-widget { margin-top: 0 !important; padding-top: 0 !important; }
.ct-footer .ct-container > div:nth-child(2) > .ct-widget:first-child { display: none !important; }
.ct-footer > div:last-child .ct-container { padding: 0px 0px !important; }
.footer-news-center > p { font-size: 0.85rem !important; font-weight: 600 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; text-align: center !important; margin: 0 0 8px 0 !important; padding: 0 !important; }
.footer-news-center { text-align: center !important; }
.footer-news-center .wpforms-field { padding-top: 6px !important; padding-bottom: 6px !important; }
.footer-news-center .wpforms-submit-container { margin-top: 6px !important; padding: 0 !important; }
.ct-footer .wpforms-field-large, .ct-footer input[type='email'] {
  max-width: 260px !important; width: 100% !important; margin: 0 auto !important; display: block !important;
}
/* Logos — tailles harmonisees */
img[src*='Global_Organic_Textile'] { transform: scale(0.78) !important; transform-origin: left center !important; }
img[src*='Oeko_tex'] { transform: scale(0.70) !important; transform-origin: left center !important; }
img[src*='FairWear'] { transform: scale(0.70) !important; transform-origin: left center !important; }
img[src*='PETAapproved'] { width: 200px !important; height: 200px !important; }
/* GRS container - accommodate scale(1.45) visual = 290px, container must be >= 290px centered */
.label-item:nth-child(2) { min-height: 295px !important; align-items: center !important; }
.label-item:nth-child(2) > *:last-child { align-self: center !important; }


/* PAGE QUALITE - espacements compacts par bloc */
body.page-id-253 .entry-content h2 {
  margin-top: 18px !important;
  margin-bottom: 8px !important;
}
body.page-id-253 .entry-content p {
  margin-bottom: 10px !important;
}
body.page-id-253 .label-row {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  row-gap: 8px !important;
  gap: 8px 0px !important;
}
body.page-id-253 .label-item {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
body.page-id-253 .wp-block-stackable-divider {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

/* GRS fix v2 - taille alignée avec GOTS, pas de min-height forcé */
img[src*='Global-Recycled-Standard'] {
  width: 160px !important;
  height: 160px !important;
  transform: none !important;
}
.label-item:nth-child(2) {
  min-height: 0 !important;
  align-items: flex-start !important;
}
.label-item:nth-child(2) > *:last-child {
  align-self: flex-start !important;
}

/* QUALITE v3 - espacements ultra-compacts par bloc */
body.page-id-253 .entry-content h2 {
  margin-top: 6px !important;
  margin-bottom: 4px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-id-253 .entry-content p {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}
body.page-id-253 .label-row {
  margin-top: 6px !important;
  margin-bottom: 6px !important;
  row-gap: 6px !important;
  gap: 6px 0px !important;
}
body.page-id-253 .label-item {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  gap: 20px !important;
}
body.page-id-253 .wp-block-stackable-divider {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
body.page-id-253 .entry-content > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.page-id-253 .wp-block-stackable-column {
  gap: 0 !important;
  row-gap: 0 !important;
}

/* QUALITE v4 - images proportionnelles, fin des boîtes vides */
body.page-id-253 .label-item img {
  width: auto !important;
  height: 110px !important;
  min-width: 0 !important;
  max-width: 200px !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
}

/* ===== GLOBAL: H1 bandeaux - non bold + hiérarchie taille ===== */
.wp-block-cover h1.wp-block-heading,
.wp-block-cover h1 {
  font-weight: 300 !important;
  font-size: clamp(2.8rem, 5vw, 4.5rem) !important;
  letter-spacing: 0.18em !important;
}

/* ===== PAGE QUALITE: espacement entre blocs (plus aéré) ===== */
body.page-id-253 .entry-content h2 {
  margin-top: 32px !important;
  margin-bottom: 6px !important;
}
body.page-id-253 .wp-block-stackable-divider {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

/* ===== PAGE CONTACT / FAQ (page-id-37): mise en forme ===== */
/* Intro citation */
body.page-id-37 .banner-subtitle {
  text-align: center !important;
  font-style: italic !important;
  font-size: 1.05rem !important;
  color: #6b5a48 !important;
  max-width: 720px !important;
  margin: 0 auto 32px !important;
  font-weight: 300 !important;
}
/* Formulaire centré et contraint */
body.page-id-37 .wpforms-container {
  max-width: 640px !important;
  margin: 0 auto 48px !important;
}
/* Champs input */
body.page-id-37 .wpforms-field input[type="text"],
body.page-id-37 .wpforms-field input[type="email"],
body.page-id-37 .wpforms-field textarea,
body.page-id-37 .wpforms-field select {
  border: 1px solid #d4c4b0 !important;
  border-radius: 2px !important;
  padding: 10px 14px !important;
  font-size: 0.9rem !important;
  color: #2a1f0e !important;
  background: #faf9f7 !important;
  transition: border-color 0.2s !important;
}
body.page-id-37 .wpforms-field input:focus,
body.page-id-37 .wpforms-field textarea:focus,
body.page-id-37 .wpforms-field select:focus {
  border-color: #8a6e4b !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(138,110,75,0.12) !important;
}
/* Labels */
body.page-id-37 .wpforms-field-label {
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #2a1f0e !important;
  margin-bottom: 6px !important;
}
/* Bouton Envoyer */
body.page-id-37 .wpforms-submit {
  background: #AEB978 !important;
  color: #1D221E !important;
  border: none !important;
  padding: 12px 40px !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  border-radius: 2px !important;
  transition: background 0.3s !important;
}
body.page-id-37 .wpforms-submit:hover {
  background: #8a6e4b !important;
}
/* Titre FAQ */
body.page-id-37 .stk-block-heading__text {
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
  text-align: center !important;
  margin-bottom: 28px !important;
}
/* Accordéons FAQ */
body.page-id-37 .wp-block-stackable-accordion {
  border: 1px solid #e8ddd0 !important;
  border-radius: 2px !important;
  margin-bottom: 6px !important;
  overflow: hidden !important;
}
body.page-id-37 .stk-block-accordion__heading {
  padding: 14px 20px !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  color: #2a1f0e !important;
  letter-spacing: 0.02em !important;
}
/* Grid 2 colonnes pour les accordéons */
body.page-id-37 .stk-block-columns {
  gap: 8px !important;
}

/* FAQ accordéons - H3 questions plus compacts */
body.page-id-37 .wp-block-stackable-accordion .stk-block-heading__text {
  font-size: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
  text-align: center !important;
  line-height: 1.4 !important;
}
body.page-id-37 .wp-block-stackable-accordion .stk-block-text__text {
  font-size: 0.88rem !important;
  line-height: 1.65 !important;
  color: #6b5a48 !important;
  padding: 0 8px 12px !important;
}

/* ===== ÉCHELLE TYPOGRAPHIQUE HARMONISÉE (site-wide) ===== */

/* H1 bandeaux cover - réduit et élégant */
.wp-block-cover h1.wp-block-heading,
.wp-block-cover h1 {
  font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
  font-weight: 300 !important;
  letter-spacing: 0.18em !important;
}

/* H2 titres de section - réduits, semi-bold */
.entry-content h2.wp-block-heading,
.entry-content h2,
h2.wp-block-heading:not(.banner-subtitle) {
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

/* H3 - sous-titres */
.entry-content h3.wp-block-heading,
.entry-content h3 {
  font-size: 1.15rem !important;
  font-weight: 600 !important;
}

/* Banner subtitle (sous-titre bandeau) */
.banner-subtitle {
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.12em !important;
}

/* Paragraphes de contenu */
.entry-content p {
  font-size: 0.94rem !important;
  line-height: 1.78 !important;
}

/* Titre FAQ (stk heading global) */
body.page-id-37 .stk-block-heading__text:not(.wp-block-stackable-accordion .stk-block-heading__text) {
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
}

/* Label h4 sur page qualité */
body.page-id-253 .label-text h4 {
  font-size: 0.75rem !important;
}
body.page-id-253 .label-text p {
  font-size: 0.84rem !important;
}

/* Fix banner-subtitle - pas affecté par les règles H2 */
.wp-block-cover + * .banner-subtitle,
.entry-content .banner-subtitle,
h2.banner-subtitle,
.banner-subtitle {
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.1em !important;
}

/* Fix banner-subtitle spécificité haute (0,3,1) */
.entry-content h2.wp-block-heading.banner-subtitle,
.entry-content h2.banner-subtitle {
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.1em !important;
  text-transform: none !important;
}

/* ===== CATÉGORIES WOOCOMMERCE - Bandeaux images ===== */
body.tax-product_cat .hero-section {
  min-height: 420px !important;
}
/* Image plein format */
body.tax-product_cat .hero-section figure {
  height: 100% !important;
  inset: 0 !important;
}
body.tax-product_cat .hero-section .ct-media-container {
  position: relative !important;
  height: 100% !important;
}
body.tax-product_cat .hero-section .ct-media-container img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
/* Voile sombre pour lisibilité du texte */
body.tax-product_cat .hero-section .ct-media-container::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(10, 12, 10, 0.38) !important;
  pointer-events: none !important;
}
/* Titre catégorie - blanc, fin, espacé */
body.tax-product_cat .hero-section h1.page-title {
  color: #ffffff !important;
  font-weight: 300 !important;
  font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important;
  letter-spacing: 0.22em !important;
  text-shadow: 0 1px 8px rgba(0,0,0,0.3) !important;
}
/* Centrage vertical dans le hero */
body.tax-product_cat .hero-section .entry-header {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  text-align: center !important;
  position: relative !important;
  z-index: 2 !important;
}

/* Fix centrage vertical header dans hero catégories */
body.tax-product_cat .hero-section .entry-header {
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  z-index: 2 !important;
}

/* Description catégorie dans hero - discrète et blanche */
body.tax-product_cat .hero-section .entry-header .page-description {
  color: rgba(255,255,255,0.7) !important;
  font-size: 0.8rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.12em !important;
  margin-top: 8px !important;
  font-style: italic !important;
}

/* Réduction hauteur bandeaux catégories WooCommerce */
body.tax-product_cat .hero-section {
  min-height: 280px !important;
}

/* === BANDEAUX CATÉGORIES — traitement visuel harmonisé === */
body.tax-product_cat .hero-section .ct-media-container img {
  filter: brightness(0.88) contrast(0.90) saturate(0.70) sepia(0.12) !important;
}
body.tax-product_cat .hero-section .ct-media-container::after {
  background: rgba(20, 14, 6, 0.44) !important;
}
/* Réduction hauteur bandeaux catégories WooCommerce */
body.tax-product_cat .hero-section {
  min-height: 280px !important;
}

/* === BOUTIQUE — barre de filtres par type === */
.shop-filter-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  justify-content: center !important;
  padding: 20px 0 28px !important;
  margin-bottom: 8px !important;
}
.shop-filter-bar .filter-btn {
  display: inline-block !important;
  padding: 7px 20px !important;
  border: 1px solid #2a1f0e !important;
  color: #2a1f0e !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 2px !important;
  transition: background 0.2s, color 0.2s !important;
  background: transparent !important;
}
.shop-filter-bar .filter-btn:hover, .shop-filter-bar .filter-btn.active {
  background: #AE9566 !important;
  color: #1D221E !important;
}

/* Filtre actif boutique (état JS) */
.shop-filter-bar .filter-btn--active {
  background: #2a1f0e !important;
  color: #fff !important;
}

/* === H1 BANDEAUX — Helvetica, majuscules === */
.hero-section h1.page-title,
.wp-block-cover h1,
.wp-block-cover .wp-block-heading {
  font-family: Helvetica, Arial, sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

/* === H1 BANDEAUX — centrage vertical et horizontal === */
.wp-block-cover {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.wp-block-cover__inner-container {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  z-index: 1 !important;
}

/* ============================================
   FICHE PRODUIT — ADN ESTEY
   ============================================ */

/* --- Titre produit --- */
.single-product .product_title {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #2a1f0e !important;
  line-height: 1.3 !important;
  margin-bottom: 16px !important;
}

/* --- Prix --- */
.single-product p.price,
.single-product span.price {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
  color: #2a1f0e !important;
  border-top: 1px solid rgba(42,31,14,0.18) !important;
  border-bottom: 1px solid rgba(42,31,14,0.18) !important;
  padding: 14px 0 !important;
  margin: 18px 0 24px !important;
  display: block !important;
}

/* --- Bouton Ajouter au panier --- */
.single-product .single_add_to_cart_button,
.single-product button.button.alt,
.woocommerce .single-product .cart button[type=submit] {
  background: #2a1f0e !important;
  color: #fff !important;
  border: none !important;
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  padding: 16px 32px !important;
  transition: background 0.25s ease, opacity 0.25s !important;
}
.single-product .single_add_to_cart_button:hover,
.single-product button.button.alt:hover {
  background: #AE9566 !important;
  color: #FEFCF3 !important;
}


/* --- Sélecteur de quantité --- */
.single-product .quantity .qty {
  border: 1px solid rgba(42,31,14,0.4) !important;
  border-radius: 2px !important;
  font-family: Helvetica, Arial, sans-serif !important;
  color: #2a1f0e !important;
}
.single-product .ct-woo-quantity-plus-minus button,
.single-product .quantity button {
  border: 1px solid rgba(42,31,14,0.4) !important;
  color: #2a1f0e !important;
  background: transparent !important;
  border-radius: 2px !important;
  transition: all 0.2s !important;
}
.single-product .ct-woo-quantity-plus-minus button:hover,
.single-product .quantity button:hover {
  background: #2a1f0e !important;
  color: #fff !important;
}

/* --- Meta (UGS, Catégorie) --- */
.single-product .product_meta {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: rgba(42,31,14,0.5) !important;
  margin-top: 28px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(42,31,14,0.1) !important;
}
.single-product .product_meta a {
  color: #2a1f0e !important;
  text-decoration: none !important;
}
.single-product .product_meta a:hover {
  text-decoration: underline !important;
}

/* --- Onglets Description / Infos --- */
.single-product .woocommerce-tabs ul.tabs li a {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: rgba(42,31,14,0.45) !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover {
  color: #2a1f0e !important;
}
.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.88rem !important;
  color: rgba(42,31,14,0.8) !important;
  line-height: 1.8 !important;
}

/* --- Galerie thumbnails --- */
.single-product .flex-control-thumbs li img {
  border-radius: 2px !important;
  opacity: 0.55 !important;
  transition: opacity 0.25s !important;
}
.single-product .flex-control-thumbs li img.flex-active,
.single-product .flex-control-thumbs li img:hover {
  opacity: 1 !important;
  outline: 1px solid #2a1f0e !important;
  outline-offset: 2px !important;
}

/* --- Fil d'ariane (breadcrumb) --- */
.single-product .woocommerce-breadcrumb {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.64rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(42,31,14,0.45) !important;
}
.single-product .woocommerce-breadcrumb a {
  color: rgba(42,31,14,0.45) !important;
  text-decoration: none !important;
}
.single-product .woocommerce-breadcrumb a:hover {
  color: #2a1f0e !important;
}

/* --- Bouton ATC renforcé (Blocksy override) --- */
.single-product .ct-cart-actions .single_add_to_cart_button,
.single-product .ct-cart-actions button.button,
body.single-product button.single_add_to_cart_button,
body.single-product .woocommerce-variation-add-to-cart button {
  background-color: #2a1f0e !important;
  background: #2a1f0e !important;
  border-color: #2a1f0e !important;
  color: #fff !important;
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
body.single-product .ct-cart-actions button:hover {
  background-color: #3e2e18 !important;
  background: #3e2e18 !important;
  border-color: #3e2e18 !important;
  color: #fff !important;
}

/* ============================================
   LABELS & CERTIFICATIONS — bloc produit
   ============================================ */
.estey-labels-section {
  background: #fefcf3;
  padding: 56px 40px;
  margin: 40px 0 0;
  width: 100%;
}
.estey-labels-inner {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
}
.estey-label-item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 160px;
}
.estey-label-item img {
  height: 130px !important;
  width: auto !important;
  max-width: 180px !important;
  object-fit: contain !important;
  filter: grayscale(100%);
  opacity: 0.85;
  transition: opacity 0.3s;
  display: block;
}
/* Logo GRS agrandi — spécificité plus haute pour surpasser la règle générale */
.estey-label-item img[src*="Global-Recycled"] { height: 170px !important; width: auto !important; max-width: none !important; }
.estey-label-item:hover img {
  opacity: 1;
  filter: grayscale(0%);
}
/* VARIANT SELECTORS — Couleur / Taille / Type */
.woocommerce-variation-add-to-cart,
.variations_form .variations { border: none !important; }

.variations_form .variations tr {
  display: block !important;
  margin-bottom: 20px !important;
}

.variations_form .variations td.label {
  display: block !important;
  padding: 0 0 6px 0 !important;
}

.variations_form .variations td.label label {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #1D221E !important;
}

.variations_form .variations td.value {
  display: block !important;
  padding: 0 !important;
}

.variations_form .variations select {
  width: 100% !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-color: #fff !important;
  border: 1.5px solid #1D221E !important;
  border-radius: 2px !important;
  height: auto !important;
  min-height: 46px !important;
  line-height: 1.4 !important;
  padding: 11px 44px 11px 14px !important;
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.88rem !important;
  color: #1D221E !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath fill='%231D221E' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 20px !important;
  cursor: pointer !important;
  transition: border-color 0.2s ease !important;
}

.variations_form .variations select:focus {
  outline: none !important;
  border-color: #AEB978 !important;
  box-shadow: 0 0 0 3px rgba(174,185,120,0.15) !important;
}

.reset_variations {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.7rem !important;
  color: #AE9566 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  margin-top: 4px !important;
  display: inline-block !important;
}

/* BOUTON AJOUTER AU PANIER — charte Estey */
.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce-page .single_add_to_cart_button {
  background-color: #1D221E !important;
  color: #fff !important;
  border: none !important;
  border-radius: 2px !important;
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 16px 32px !important;
  transition: background-color 0.25s ease !important;
  width: 100% !important;
}

.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce-page .single_add_to_cart_button:hover {
  background-color: #AEB978 !important;
  color: #1D221E !important;
}

/* QUANTITÉ */
.quantity input.qty {
  border: 1.5px solid #1D221E !important;
  border-radius: 2px !important;
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.9rem !important;
  color: #1D221E !important;
  text-align: center !important;
}

/* ── 4. TYPOGRAPHIE page produit ─────────────────────────────────────── */

/* Titre produit */
.product_title.entry-title {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #1D221E !important;
  line-height: 1.35 !important;
}

/* Prix */
.woocommerce-Price-amount.amount {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  color: #1D221E !important;
}

/* Short description */
.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description p {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.92rem !important;
  line-height: 1.75 !important;
  color: #303A31 !important;
  opacity: 1 !important;
}

/* Onglets — labels */
.woocommerce-tabs .tabs li a {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #1D221E !important;
  font-weight: 600 !important;
}

.woocommerce-tabs .tabs li.active a {
  color: #AEB978 !important;
  border-bottom: 2px solid #AEB978 !important;
}

/* Contenu onglets — description longue */
.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li,
.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel h3,
.woocommerce-Tabs-panel h4 {
  font-family: Helvetica, Arial, sans-serif !important;
  color: #1D221E !important;
}

.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li {
  font-size: 0.9rem !important;
  line-height: 1.8 !important;
  color: #303A31 !important;
}

.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel h3,
.woocommerce-Tabs-panel h4 {
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-top: 2em !important;
}

/* Méta-données (SKU, catégories) */
.product_meta {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #AE9566 !important;
}

/* Fil d'Ariane */
.woocommerce-breadcrumb {
  font-family: Helvetica, Arial, sans-serif !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #AE9566 !important;
}

.woocommerce-breadcrumb a {
  color: #AE9566 !important;
}

/* BOUTON — override Blocksy CSS vars charte Estey */
:root {
  --theme-button-background-initial-color: #1D221E !important;
  --theme-button-background-hover-color: #AEB978 !important;
  --theme-button-text-initial-color: #ffffff !important;
  --theme-button-text-hover-color: #1D221E !important;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button.button {
  background: #1D221E !important;
  color: #fff !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .single_add_to_cart_button.button:hover {
  background: #AEB978 !important;
  color: #1D221E !important;
}


/* === BOUTON CTA — couleurs charte graphique === */
.single-product button.single_add_to_cart_button:not(.disabled) {
  background: #AEB978 !important;
  color: #1D221E !important;
  border: none !important;
}
.single-product button.single_add_to_cart_button:not(.disabled):hover {
  background: #AE9566 !important;
  color: #1D221E !important;
}
.single-product button.single_add_to_cart_button.disabled,
.single-product button.single_add_to_cart_button.wc-variation-selection-needed {
  background: transparent !important;
  color: #1D221E !important;
  border: 1.5px solid #1D221E !important;
  opacity: 1 !important;
}

/* === 

/* === HOVER Golden Hour #AE9566 — tous CTAs === */
a.ct-button:hover,
.ct-button:hover,
.wp-block-button__link:hover,
.footer-widgets a.ct-button:hover,
.footer-sidebar a.ct-button:hover,
.woocommerce a.button:not(.disabled):hover,
.woocommerce button.button:not(.disabled):hover,
.woocommerce-cart .checkout-button:hover,
.shop-filter-bar .filter-btn:hover {
  background: #AE9566 !important;
  color: #1D221E !important;
  border-color: #AE9566 !important;
}

/* WPForms footer submit hover */
footer .wpforms-submit,
footer button.wpforms-submit {
  background: #AE9566 !important;
  color: #1D221E !important;
  border: none !important;
  transition: background 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease !important;
}
footer .wpforms-submit:hover,
footer button.wpforms-submit:hover {
  background: #1D221E !important;
  color: #FEFCF3 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 14px rgba(29,34,30,0.25) !important;
}
/* Header logo aligné en bas de la rangée — menu collé sous logo */
.ct-header [data-row="middle"] > .ct-container,
.ct-header [data-row="middle"] > .ct-container-fluid {
  align-items: flex-end !important;
  padding-bottom: 4px !important;
}
.ct-header [data-row="bottom"] > .ct-container,
.ct-header [data-row="bottom"] > .ct-container-fluid {
  padding-top: 0 !important;
}
/* Logo header — margin haut/bas pour respiration */
.ct-header .site-logo-container,
.ct-header [data-id="logo"] .site-logo-container {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}
/* Bouton INSCRIRE — Jeune Vigne */
footer .wpforms-submit, footer button.wpforms-submit { background: #AEB978 !important; color: #1D221E !important; }
footer .wpforms-submit:hover, footer button.wpforms-submit:hover { background: #FEFCF3 !important; color: #1D221E !important; transform: translateY(-2px) !important; box-shadow: 0 4px 14px rgba(29,34,30,0.25) !important; }



/* Logo transition scroll */
.ct-logo img {
  transition: opacity 0.35s ease !important;
}
header#header.scrolled .ct-logo img,
header#header.scrolled [class*="logo"] img {
  content: url("https://vignes-et-ocean.fr/wp-content/uploads/2026/04/LOGOTYPE-Couleurs.svg") !important;
  filter: none !important;
}

/* Fix sous-menus Boutique cliquables */
#header .sub-menu,
#header .sub-menu a,
#header .sub-menu .ct-menu-link {
  pointer-events: auto !important;
}



/* H2 harmonisation site-wide */
body .entry-content h2.ep-title,
body .entry-content h2.em-h,
body .entry-content h2.ec-head-band,
body .entry-content h2.elab-title,
body .entry-content .ep-title,
body .entry-content .em-h,
body h2.ep-title,
body h2.em-h,
body h2.ec-head-band,
body h2.elab-title,
body .stk-block-heading__text {
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Fix logo : pas de débordement sur la nav */
#header .ct-logo a,
#header a.site-logo-container {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 1 !important;
}
#header .ct-logo img,
#header .site-logo-container img {
  pointer-events: none !important;
}
#header nav.header-menu-1,
#header .menu-container {
  position: relative !important;
  z-index: 20 !important;
  pointer-events: auto !important;
}

/* Fix dropdown Boutique au-dessus du hero cover */
#header .sub-menu {
  position: absolute !important;
  z-index: 9999 !important;
  pointer-events: auto !important;
}
#header .sub-menu a,
#header .sub-menu .ct-menu-link {
  pointer-events: auto !important;
  z-index: 9999 !important;
}


/* Collections : surtitle + main title */
.ec-surtitle {
  display: block !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  opacity: 0.6 !important;
  margin-bottom: 8px !important;
}
body .ec-head-band h2.ec-main-title,
body .entry-content h2.ec-main-title,
body h2.ec-main-title {
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin-top: 0 !important;
}


/* Logo pages intérieures (non-accueil) : logo couleur par défaut */
body:not(.home) img.default-logo,
body:not(.home) .site-logo-container img {
  content: url("https://vignes-et-ocean.fr/wp-content/uploads/2026/04/LOGOTYPE-Couleurs.svg") !important;
  filter: none !important;
  opacity: 1 !important;
}



/* Fix bandeau Boutique : réafficher .page-description pour le cover, masquer seulement le texte */
body.woocommerce-shop .page-description {
  display: block !important;
}
body.woocommerce-shop .page-description > *:not(.wp-block-cover):not(.wp-block-group) {
  display: none !important;
}


/* === LOGO : compacter le header + clipper whitespace SVG === */
#header .header-row-inner,
#header [class*="header-row"] {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: unset !important;
}
#header .site-logo-container {
  overflow: hidden !important;
  height: 140px !important;
  padding: 0 !important;
  margin-bottom: 50px !important;
  margin: 0 !important;
  line-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
img.default-logo {
  display: block !important;
  height: 202px !important;
  width: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}

/* === BOUTIQUE : centrer BOUTIQUE verticalement et horizontalement === */
.woocommerce-shop .wp-block-cover {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}
.woocommerce-shop .wp-block-cover__inner-container {
  top: 0 !important;
  transform: none !important;
  margin: 0 auto !important;
  text-align: center !important;
  width: 100% !important;
}
.woocommerce-shop .wp-block-cover__inner-container p,
.woocommerce-shop .wp-block-cover__inner-container h1,
.woocommerce-shop .wp-block-cover__inner-container h2 {
  text-align: center !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.woocommerce-shop .wp-block-cover__inner-container {
  top: 0 !important;
  transform: none !important;
  margin: 0 !important;
}


/* === FIX BOUTIQUE centrage : compense margin-top:-60px du cover === */
.woocommerce-shop .wp-block-cover__inner-container {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  height: 100% !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  transform: none !important;
  margin: 0 !important;
  padding-top: 8px !important;
  box-sizing: border-box !important;
}

/* === PAGE CONTACT : supprimer bullet point RGPD + agrandir checkbox === */
/* Supprimer le bullet — flex sur le LI pour aligner checkbox + texte */
.wpforms-field-checkbox ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.wpforms-field-checkbox li {
  list-style: none !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
/* Checkbox plus grande et visible */
.wpforms-field-checkbox input[type="checkbox"] {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  flex-shrink: 0 !important;
  accent-color: #6b7c4e !important;
  cursor: pointer !important;
  margin-top: 3px !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
}
.wpforms-field-checkbox .wpforms-field-label-inline {
  flex: 1 !important;
}

/* === BOUTIQUE centrage mobile === */
@media (max-width: 768px) {
  .woocommerce-shop .wp-block-cover__inner-container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    height: 100% !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    transform: none !important;
    margin: 0 !important;
    padding-top: 8px !important;
    box-sizing: border-box !important;
  }
  .woocommerce-shop .wp-block-cover__inner-container p,
  .woocommerce-shop .wp-block-cover__inner-container h1,
  .woocommerce-shop .wp-block-cover__inner-container h2 {
    text-align: center !important;
    width: 100% !important;
  }


  /* ── Q&E certifications : colonnes logo+texte sur mobile ── */
  .wp-block-columns.is-not-stacked-on-mobile {
    gap: 12px !important;
  }
  .wp-block-columns.is-not-stacked-on-mobile .wp-block-column:first-child {
    flex: 0 0 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
  }
  .wp-block-columns.is-not-stacked-on-mobile .wp-block-column:first-child img {
    max-width: 68px !important;
    max-height: 68px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }
  .wp-block-columns.is-not-stacked-on-mobile .wp-block-column:last-child {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  /* ── Bandeau hero-section (pages catégories) : centrer le titre ── */
  .hero-section .page-title,
  .hero-section h1,
  .hero-section h2 {
    text-align: center !important;
    width: 100% !important;
  }
  .hero-section {
    text-align: center !important;
  }
}


/* === H1 homepage : centrer + mise en evidence + espace bas === */
h1.estey-seo-h1,
.estey-seo-h1 {
  font-size: 1.65rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  color: rgba(30, 30, 30, 0.9) !important;
  text-align: center !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 16px auto 56px auto !important;
  text-transform: none !important;
}

/* === Footer newsletter : checkbox style + espacement copyright === */

/* Checkbox footer newsletter */
.ct-footer .wpforms-field-checkbox ul,
.ct-footer .mc4wp-form-fields ul,
footer .wpforms-field-checkbox ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ct-footer .wpforms-field-checkbox li,
.ct-footer .mc4wp-form-fields li,
footer .wpforms-field-checkbox li {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  list-style: none !important;
}
.ct-footer input[type="checkbox"],
footer input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  border: 2px solid rgba(255,255,255,0.5) !important;
  border-radius: 4px !important;
  background: transparent !important;
  cursor: pointer !important;
  position: relative !important;
  transition: border-color 0.2s, background 0.2s !important;
  flex-shrink: 0 !important;
}
.ct-footer input[type="checkbox"]:checked,
footer input[type="checkbox"]:checked {
  background: #8fa568 !important;
  border-color: #8fa568 !important;
}
.ct-footer input[type="checkbox"]:checked::after,
footer input[type="checkbox"]:checked::after {
  content: '' !important;
  position: absolute !important;
  left: 5px !important;
  top: 2px !important;
  width: 7px !important;
  height: 11px !important;
  border: 2px solid #fff !important;
  border-top: none !important;
  border-left: none !important;
  transform: rotate(45deg) !important;
  display: block !important;
}
.ct-footer input[type="checkbox"]:hover,
footer input[type="checkbox"]:hover {
  border-color: #8fa568 !important;
}

/* Réduire espace entre bouton S'INSCRIRE et copyright */
.ct-footer .wpforms-submit-container,
footer .wpforms-submit-container {
  margin-bottom: 0 !important;
}
.ct-footer-bottom-bar,
.ct-footer .ct-footer-bottom,
footer .site-footer-bottom,
.site-footer .copyright-bar {
  margin-top: 8px !important;
  padding-top: 8px !important;
}

/* Footer : réduire espace entre formulaire newsletter et copyright */
.ct-footer .wpforms-container,
.ct-footer .wpforms-container.wpforms-inline-fields {
  margin-bottom: 4px !important;
}
.ct-footer .ct-container {
  padding-top: 0px;
  padding-bottom: 0px;
}

/* Footer newsletter : marge au dessus du titre L'univers ESTEY */
.ct-footer .footer-news-center p:first-child,
.ct-footer .footer-news-center > p:first-of-type {
  margin-top: 20px !important;
}

/* Footer : marges top colonnes gauche et droite */
.ct-footer .estey-footer-service,
.ct-footer .estey-footer-contact {
  margin-top: 20px !important;
}

/* H2/H3 fiches produits */
.single-product .woocommerce-Tabs-panel h2 { font-size: 1.2rem !important; font-weight: 500 !important; margin-bottom: 0.6em !important; color: rgba(42,31,14,0.9) !important; }
.single-product .woocommerce-Tabs-panel h3 { font-size: 1.0rem !important; font-weight: 500 !important; margin-bottom: 0.5em !important; color: rgba(42,31,14,0.9) !important; }
/* Footer newsletter — checkbox aligné avec le texte */
.woocommerce-checkout .woocommerce-privacy-policy-text, footer .mc4wp-checkbox, footer [type="checkbox"] { vertical-align: middle !important; margin-right: 8px !important; }
/* ── Checkbox newsletter WPForms footer ── */
footer .wpforms-field-required li {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  justify-content: center !important;
  width: fit-content !important;
  margin: 0 auto !important;
}
footer .wpforms-field-required input[type="checkbox"] {
  flex-shrink: 0 !important;
  margin: 0 !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
}
footer .wpforms-field-required label.wpforms-field-label-inline {
  width: auto !important;
  display: inline !important;
}

/* ── H2 fiches produits – couleur dorée ── */
.single-product .woocommerce-product-details__short-description h2,
.single-product .entry-content h2,
.single-product .product .woocommerce-tabs h2 {
  color: #AE9566 !important;
}

/* ═══════════════════════════════════════════════════════
   MOBILE FIXES – header, certifications, menu
   ═══════════════════════════════════════════════════════ */

/* ── Admin bar masquée + header collé sur mobile ── */
@media (max-width: 782px) {
  #wpadminbar {
    display: none !important;
  }
  html.admin-bar,
  html.admin-bar body {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  #header.ct-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
  }
}

@media (max-width: 768px) {
  /* ── Header mobile – hauteur réduite, collé en haut ── */
  #header.ct-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
  }
  body.home #header.ct-header {
    background: transparent !important;
  }
  #header .header-row-1,
  #header .ct-row {
    min-height: 80px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }
  #header .ct-image-container img {
    max-height: 38px !important;
    width: auto !important;
  }

  /* ── Certifications mobile – défilement horizontal une ligne ── */
  .elab-outer {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 4px !important;
  }
  .elab-outer::-webkit-scrollbar {
    display: none !important;
  }
  .elab-track {
    flex-wrap: nowrap !important;
    width: max-content !important;
    gap: 20px !important;
  }
  .elab-item {
    flex-shrink: 0 !important;
  }

  /* ── Menu mobile (offcanvas) – style Estey élégant ── */
  #offcanvas.ct-panel {
    background: #1D221E !important;
    box-shadow: 4px 0 40px rgba(0, 0, 0, 0.5) !important;
  }
  #offcanvas .ct-panel-inner {
    background: #1D221E !important;
    padding: 0 !important;
  }
  #offcanvas .ct-panel-actions {
    padding: 20px 24px 16px !important;
    border-bottom: 1px solid rgba(174, 149, 102, 0.25) !important;
    display: flex !important;
    justify-content: flex-end !important;
  }
  #offcanvas .ct-toggle-close path {
    fill: #AE9566 !important;
  }
  #offcanvas .ct-toggle-close {
    width: 32px !important;
    height: 32px !important;
    opacity: 1 !important;
    cursor: pointer !important;
    background: rgba(174,149,102,0.12) !important;
    border-radius: 50% !important;
    padding: 6px !important;
    box-sizing: border-box !important;
  }
  #offcanvas .ct-panel-content {
    padding: 12px 0 32px !important;
  }
  /* Items de navigation principaux */
  #offcanvas nav ul > .menu-item > a,
  #offcanvas nav ul > .menu-item > .ct-menu-link {
    color: rgba(254, 252, 243, 0.88) !important;
    font-family: 'Helvena', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    padding: 15px 28px !important;
    border-bottom: 1px solid rgba(174, 149, 102, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    transition: color 0.25s ease !important;
  }
  #offcanvas nav ul > .menu-item > a:hover,
  #offcanvas nav ul > .menu-item > .ct-menu-link:hover {
    color: #AE9566 !important;
  }
  /* Sous-menus */
  #offcanvas .sub-menu {
    background: rgba(0, 0, 0, 0.18) !important;
    border-left: 2px solid rgba(174, 149, 102, 0.3) !important;
    margin-left: 28px !important;
  }
  #offcanvas .sub-menu .menu-item a {
    color: rgba(174, 149, 102, 0.82) !important;
    font-family: 'Helvena', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    padding: 11px 20px !important;
    border-bottom: 1px solid rgba(174, 149, 102, 0.08) !important;
    display: block !important;
    transition: color 0.25s ease !important;
  }
  #offcanvas .sub-menu .menu-item a:hover {
    color: #AE9566 !important;
  }
  /* Flèche sous-menu */
  #offcanvas .ct-menu-item-has-children > a::after,
  #offcanvas .menu-item-has-children > a::after {
    content: '' !important;
    border-color: rgba(174, 149, 102, 0.6) !important;
  }
}

/* ══ Bouton Ajouter au Panier – Golden Hour fixe / Vert Vigne hover ══ */
/* Fixe : Golden Hour #AEB978 sur tous les produits */
.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce-page .single_add_to_cart_button,
.single-product .single_add_to_cart_button,
.single-product button.button.alt,
.single-product .ct-cart-actions .single_add_to_cart_button,
.single-product .ct-cart-actions button.button,
body.single-product button.single_add_to_cart_button,
body.single-product .woocommerce-variation-add-to-cart button,
body.single-product .woocommerce-variation-add-to-cart .button {
  background: #AEB978 !important;
  background-color: #AEB978 !important;
  border-color: #AEB978 !important;
  color: #1D221E !important;
}

/* Hover : Vert Vigne #AE9566 sur tous */
.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover,
.single-product .single_add_to_cart_button:hover,
.single-product button.button.alt:hover,
.single-product .ct-cart-actions .single_add_to_cart_button:hover,
.single-product .ct-cart-actions button.button:hover,
body.single-product button.single_add_to_cart_button:hover,
body.single-product .woocommerce-variation-add-to-cart button:hover,
body.single-product .woocommerce-variation-add-to-cart .button:hover,
body.single-product .ct-cart-actions button:hover {
  background: #AE9566 !important;
  background-color: #AE9566 !important;
  border-color: #AE9566 !important;
  color: #FEFCF3 !important;
}

/* ============================================================
   PAGE QUALITÉ & ÉTHIQUE (ID 253) — Mise en forme corps
   ============================================================ */

/* H2 section — accent doré */
body.page-id-253 .entry-content h2.wp-block-heading {
  margin-top: 52px !important;
  margin-bottom: 28px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #E8E4DC !important;
  position: relative !important;
}
body.page-id-253 .entry-content h2.wp-block-heading::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  bottom: -1px !important;
  left: 0 !important;
  width: 40px !important;
  height: 2px !important;
  background: #AEB978 !important;
}

/* H3 gold sous-thèmes — label uppercase élégant */
body.page-id-253 .entry-content h3.wp-block-heading {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  margin-top: 40px !important;
  margin-bottom: 14px !important;
}

/* Blocs colonnes certification — carte subtile */
body.page-id-253 .entry-content .wp-block-columns {
  background: #FAFAF7 !important;
  border: 1px solid #EAE6DF !important;
  border-left: 2px solid #AEB978 !important;
  border-radius: 3px !important;
  padding: 18px 22px !important;
  margin-bottom: 10px !important;
  align-items: center !important;
}

/* Colonne logo — centrage vertical */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 80px !important;
}

/* Taille des logos — cohérente */
body.page-id-253 .entry-content .wp-block-columns .wp-block-image img {
  max-height: 180px !important;
  width: 180px !important;
  max-width: 180px !important;
  object-fit: contain !important;
}

/* H4 nom certification dans colonne — label compact */
body.page-id-253 .entry-content .wp-block-columns h4.wp-block-heading {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #1D221E !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

/* Description dans colonne */
body.page-id-253 .entry-content .wp-block-columns p {
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #1D221E !important;
  margin: 0 !important;
}

/* H4 standalone (OCS 100, REACH — sans logo) */
body.page-id-253 .entry-content h4.wp-block-heading {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #1D221E !important;
  border-left: 2px solid #AEB978 !important;
  padding-left: 10px !important;
  margin-top: 8px !important;
  margin-bottom: 6px !important;
}

/* Paragraphe standalone (OCS 100, REACH) */
body.page-id-253 .entry-content > .wp-block-group p,
body.page-id-253 .entry-content > p {
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #1D221E !important;
  margin-bottom: 10px !important;
}

/* Espace avant le H2 "1." en début de page */
body.page-id-253 .entry-content h2.wp-block-heading:first-of-type {
  margin-top: 36px !important;
}

/* Séparateur HR — plus discret */
body.page-id-253 .wp-block-separator {
  border-color: #AEB978 !important;
  opacity: 0.4 !important;
  margin: 40px auto !important;
}

/* === Fix WRAP SVG logo (figure display:table collapse) === */



/* ====================================================
   TYPOGRAPHIE GLOBALE — Harmonisation H2–H5 (Helvetica)
   ==================================================== */

.entry-content h2.wp-block-heading {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  color: #1D221E !important;
  letter-spacing: 0.04em !important;
  line-height: 1.3 !important;
}
.entry-content h3.wp-block-heading {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-size: 19px !important;
  font-weight: 500 !important;
  color: #303A31 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.4 !important;
}
.entry-content h4.wp-block-heading {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #1D221E !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}
.entry-content h5.wp-block-heading {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #AE9566 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* ====================================================
   PAGE Q&E — Tagline hero centré
   ==================================================== */

body.page-id-253 .entry-content h2.page-tagline {
  font-size: 26px !important; font-weight: 400 !important;
  font-style: normal !important; color: #303A31 !important;
  text-align: center !important; letter-spacing: 0.02em !important;
  line-height: 1.55 !important; margin-top: 52px !important;
  margin-bottom: 48px !important; padding: 0 30px !important; border-bottom: none !important;
}
body.page-id-253 .entry-content h2.page-tagline::after {
  display: none !important;
}

/* Espace entre bandeau et contenu */
body.page-id-253 .wp-block-cover {
  margin-bottom: 0 !important;
}

/* Texte colonne — alignement centré */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column:last-child {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 14px 18px !important;
}
body.page-id-253 .entry-content .wp-block-columns h4.wp-block-heading {
  margin-top: 0 !important;
  margin-bottom: 5px !important;
}
body.page-id-253 .entry-content .wp-block-columns p {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  color: #1D221E !important;
}

/* === Page-253 H3 override — after global rules to ensure priority === */
body.page-id-253 .entry-content h3.wp-block-heading,
body.page-id-253 .wp-block-post-content h3.wp-block-heading {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  margin-top: 40px !important;
  margin-bottom: 14px !important;
  color: #1D221E !important;
  line-height: 1.4 !important;
}

/* Logo figure — bounding box uniforme */
body.page-id-253 .entry-content .wp-block-columns .wp-block-image {
  width: 180px !important;
  height: auto !important;
  min-height: 80px !important;
  max-height: 180px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto !important;
  overflow: visible !important;
}

/* CTA Boutique button */
body.page-id-253 .wp-block-button.cta-boutique .wp-block-button__link {
  transition: background-color 0.25s ease !important;
}
body.page-id-253 .wp-block-button.cta-boutique .wp-block-button__link:hover {
  background-color: #AEB978 !important;
  border-color: #AEB978 !important;
}
/* ── Palette définitive — corps de texte et liens ── */
body, .entry-content p, .entry-content li {
  color: #1D221E !important;
}
.entry-content p, .entry-content li {
  font-size: 15px !important;
  line-height: 1.75 !important;
}
.entry-content a:not(.wp-block-button__link) { color: #4373a3 !important; }
.entry-content a:not(.wp-block-button__link):hover { color: #303A31 !important; }

/* ── Callout info — blockquote uniquement ── */
.entry-content .wp-block-quote {
  border-left: 3px solid #4373a3 !important;
  padding: 14px 20px !important;
  border-radius: 2px !important;
}

/* ================================================================
   SYSTÈME DE DESIGN DÉFINITIF — Mai 2026
   Palette : #1D221E body | #303A31 headings | #AE9566 accent
             #AEB978 hover | #4373a3 links | #CBE5FE callout
   ================================================================ */

/* ── Corps de texte ── */
body { color: #1D221E !important; }
.entry-content p,
.entry-content li {
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: #1D221E !important;
}
.entry-content a         { color: #4373a3 !important; }
.entry-content a:hover   { color: #303A31 !important; }

/* ── Titres site-wide (hors bandeaux) ── */
.entry-content h2.wp-block-heading {
  font-size: 26px !important;
  font-weight: 500 !important;
  color: #303A31 !important;
  letter-spacing: 0.02em !important;
}
.entry-content h3.wp-block-heading {
  font-size: 21px !important;
  font-weight: 500 !important;
  color: #303A31 !important;
}
.entry-content h4.wp-block-heading {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #303A31 !important;
}
.entry-content h5.wp-block-heading {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #AEB978 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}

/* ── Callout info ── */
.entry-content .wp-block-quote {
  background: #CBE5FE !important;
  border-left: 3px solid #4373a3 !important;
  padding: 14px 20px !important;
  border-radius: 2px !important;
  color: #1D221E !important;
}

/* ── Overrides page-id-253 Q&E (précision maximale) ── */
body.page-id-253 .entry-content h2.page-tagline {
  font-size: 26px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #303A31 !important;
  text-align: center !important;
  letter-spacing: 0.02em !important;
  line-height: 1.55 !important;
  margin-top: 52px !important;
  margin-bottom: 48px !important;
  padding: 0 30px !important;
  border-bottom: none !important;
}
body.page-id-253 .entry-content h3.wp-block-heading,
body.page-id-253 .wp-block-post-content h3.wp-block-heading {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #AE9566 !important;
  margin-top: 48px !important;
  margin-bottom: 16px !important;
}
body.page-id-253 .entry-content .wp-block-columns h4.wp-block-heading {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #303A31 !important;
  margin: 0 0 5px 0 !important;
}
body.page-id-253 .entry-content .wp-block-columns p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #1D221E !important;
  background: none !important;
  margin: 0 !important;
}
/* ── Boutique — hover carte produit ── */
.woocommerce ul.products li.product {
  transition: box-shadow 0.25s ease, transform 0.2s ease !important;
}
.woocommerce ul.products li.product:hover {
  box-shadow: 0 4px 20px rgba(174,149,102,0.2) !important;
  transform: translateY(-2px) !important;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
  color: #AE9566 !important;
}
/* ── Home CTA "Voir toute la boutique" ── */
/* ── "Voir toute la boutique" CTA — spécificité renforcée ── */
.entry-content a.e-btn-g,
a.e-btn-g {
  color: #1D221E !important;
}
.entry-content a.e-btn-g:hover,
a.e-btn-g:hover {
  color: #AE9566 !important;
}
/* ── Q&E CTA bouton texte blanc ── */
body.page-id-253 .wp-block-button.cta-boutique .wp-block-button__link,
body.page-id-253 .wp-block-button.cta-boutique .wp-block-button__link:visited {
  color: #ffffff !important;
}
/* ── Home : liens dans blocs sombres — contraste ── */
.wp-block-cover a:not(.wp-block-button__link),
.wp-block-group[style*="background"] a:not(.wp-block-button__link),
[style*="background-color:#1D221E"] a,
[style*="background-color: #1D221E"] a,
[style*="background-color:#1C1A17"] a,
[style*="background-color: #1C1A17"] a {
  color: #AEB978 !important;
}

/* ── Boutique : boutons dark bg (Choix des options) ── */
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .add_to_cart_button {
  color: #FAFAF7 !important;
}
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover {
  color: #FAFAF7 !important;
  background-color: #AE9566 !important;
}
/* ── Bloc manifeste sombre — hover lien visible ── */
.em-wrap .em-link,
.em-wrap a.em-link {
  color: #FEFCF3 !important;
}
.em-wrap .em-link:hover,
.em-wrap a.em-link:hover {
  color: #FEFCF3 !important;
}

/* ── Carousel labels — hauteurs harmonisées ── */
.elab-item img {
  80px !important;
  min-height: 80px !important;
  width: auto !important;
  max-width: 200px !important;
  object-fit: contain !important;
  box-sizing: content-box !important;
}
/* ── Bloc manifeste sombre — textes forcés en clair ── */
.em-wrap p,
.em-wrap .em-body,
.em-wrap .em-pre,
.em-wrap .em-h,
.em-wrap h1,
.em-wrap h2,
.em-wrap h3 {
  color: #FEFCF3 !important;
}
/* ── e-btn-g hover → texte blanc sur fond doré ── */
.entry-content a.e-btn-g:hover,
a.e-btn-g:hover {
  color: #FEFCF3 !important;
}

/* ── Carousel : logos circulaires/compacts agrandis ── */
.elab-item img[src*="logo_word_100"] {
  80px !important;
  min-height: 80px !important;
}
.elab-item img[src*="Global_Organic"] {
  80px !important;
  min-height: 80px !important;
}
.elab-item img[src*="Global-Recycled"] {
  80px !important;
  min-height: 80px !important;
  max-width: 120px !important/* ── Mobile Q&E : logos certifications centrés ── */
@media (max-width: 767px) {
  body.page-id-253 .entry-content .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
  body.page-id-253 .entry-content .wp-block-column .wp-block-image {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  body.page-id-253 .entry-content .wp-block-column .wp-block-image img {
    margin: 0 auto !important;
    display: block !important;
  }
}
/* ── Carousel labels — cellule + logos harmonisés ── */
.elab-item {
  height: 108px !important;
  padding: 12px 16px !important;
}
.elab-item img {
  80px !important;
  min-height: 50px !important;
  width: auto !important;
  max-width: 140px !important;
  object-fit: contain !important;
  box-sizing: content-box !important;
}
/* logos circulaires : légèrement plus grands */
.elab-item img[src*="logo_word_100"],
.elab-item img[src*="Global_Organic"] {
  80px !important;
  min-height: 56px !important;
}
.elab-item img[src*="Global-Recycled"] {
  80px !important;
  min-height: 50px !important;
  max-width: 110px !important;
}
/* ════ CAROUSEL LABELS — OVERRIDES FINAUX ════ */
/* Cellule plus haute pour logo + texte visible */
.elab-item {
  height: 108px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
/* Hauteur de base harmonisée */
.elab-item img {
  80px !important;
  min-height: 80px !important;
  max-width: 140px !important;
}
/* OCS 100 et GOTS : logos circulaires — légèrement plus grands */
.elab-item img[src*="logo_word_100"],
.elab-item img[src*="Global_Organic"] {
  80px !important;
  min-height: 54px !important;
}
/* GRS */
.elab-item img[src*="Global-Recycled"] {
  80px !important;
  min-height: 80px !important;
  max-width: 110px !important;
}
/* ════ CAROUSEL — OVERRIDE HAUTE SPÉCIFICITÉ ════ */
.elab-wrap .elab-item {
  height: 108px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
.elab-wrap .elab-item img {
  80px !important;
  min-height: 50px !important;
  max-height: 50px !important;
  width: auto !important;
  max-width: 145px !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
}
.elab-wrap .elab-item img[src*="logo_word_100"],
.elab-wrap .elab-item img[src*="Global_Organic"] {
  80px !important;
  min-height: 56px !important;
  max-height: 56px !important;
}
.elab-wrap .elab-item img[src*="Global-Recycled"] {
  80px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  max-width: 130px !important;
}
.elab-wrap .elab-item img[src*="Oeko_tex"],
.elab-wrap .elab-item img[src*="FairWear"] {
  80px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  max-width: 180px !important;
}

/* L'Esprit Estey (page-id-39) — dark block text visibility fix */
body.page-id-39 .entry-content [style*="1D221E"] h1,
body.page-id-39 .entry-content [style*="1D221E"] h2,
body.page-id-39 .entry-content [style*="1D221E"] h3,
body.page-id-39 .entry-content [style*="1D221E"] h4,
body.page-id-39 .entry-content [style*="1D221E"] h5,
body.page-id-39 .entry-content [style*="1D221E"] p,
body.page-id-39 .entry-content [style*="1D221E"] span,
body.page-id-39 .entry-content [style*="1D221E"] blockquote,
body.page-id-39 .entry-content [style*="1D221E"] cite,
body.page-id-39 .entry-content [style*="1D221E"] em { color: #FEFCF3 !important; }
/* Q&E — colonne logo plus large pour éviter le rognage */
body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column:first-child {
  flex-basis: 30% !important;
  max-width: 30% !important;
  min-width: 30% !important;
}
body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column:last-child {
  flex-basis: 68% !important;
  max-width: 68% !important;
}

/* Logos larges Q&E — largeur augmentée */
body.page-id-253 .wp-block-image img[alt="AWARE"],
body.page-id-253 .wp-block-image img[alt="Fair Wear"] {
  max-width: 220px !important;
  width: 220px !important;
}


/* Header compact — taille réduite */
#header {
  --header-height: 125px !important;
}
.ct-header [data-row="middle"] > .ct-container {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/* ── Mobile header fixe : compensation + menu harmonisé ── */
@media (max-width: 768px) {
  /* Compensation contenu sous header fixe */
  body:not(.home) {
    padding-top: 110px !important;
  }

  /* Bouton fermer le menu — label visible */
  #offcanvas .ct-panel-actions::after {
    content: "FERMER";
    color: #AE9566;
    font-family: 'Helvena', sans-serif;
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-right: auto;
    align-self: center;
  }

  /* Harmonisation menu — typographie charte Estey */
  #offcanvas nav ul > .menu-item > a,
  #offcanvas nav ul > .menu-item > .ct-menu-link {
    font-family: 'Helvena', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #FEFCF3 !important;
    padding: 14px 28px !important;
  }

  /* Sous-menu (Boutique dropdown) */
  #offcanvas nav ul .sub-menu .menu-item a {
    font-family: 'Helvena', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.15em !important;
    color: rgba(254,252,243,0.65) !important;
    text-transform: uppercase !important;
    padding: 10px 28px 10px 40px !important;
  }

  /* Séparateur golden entre items */
  #offcanvas nav ul > .menu-item {
    border-bottom: 1px solid rgba(174,149,102,0.15) !important;
  }
  #offcanvas nav ul > .menu-item:last-child {
    border-bottom: none !important;
  }

  /* Icône dropdown — couleur golden */
  #offcanvas .ct-menu-item-button svg path,
  #offcanvas .ct-toggle svg path {
    fill: #AE9566 !important;
  }
}

/* ── Mobile : corrections logos Q&E + bandeaux centrés ── */
@media (max-width: 768px) {
  /* Logos Q&E : taille réduite sur mobile */
  body.page-id-253 .entry-content .wp-block-columns .wp-block-image img {
    max-height: 80px !important;
    max-width: 120px !important;
    width: auto !important;
  }
  body.page-id-253 .wp-block-image img[alt="AWARE"],
  body.page-id-253 .wp-block-image img[alt="Fair Wear"] {
    max-width: 140px !important;
    width: auto !important;
  }

  /* Bandeaux pages : titre centré */
  .wp-block-cover__inner-container,
  .hero-section .wp-block-cover__inner-container {
    text-align: center !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .wp-block-cover__inner-container h1,
  .wp-block-cover__inner-container h2,
  .wp-block-cover__inner-container p {
    text-align: center !important;
    width: 100% !important;
  }
}

/* ── Offcanvas menu — typographie uniforme (sans media query) ── */
#offcanvas .ct-menu-link {
  font-family: 'Helvena', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #FEFCF3 !important;
  padding: 14px 28px !important;
  display: block !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
}
/* Parent avec sous-menu (Boutique) — même style, row aligné */
#offcanvas .ct-sub-menu-parent {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  padding: 0 !important;
  margin: 0 !important;
}
#offcanvas .ct-sub-menu-parent .ct-menu-link {
  flex: 1 !important;
  padding: 14px 0 14px 28px !important;
  font-family: 'Helvena', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #FEFCF3 !important;
}
/* Bouton toggle (flèche) */
#offcanvas .ct-toggle,
#offcanvas .ct-sub-menu-parent button {
  background: transparent !important;
  border: none !important;
  padding: 0 20px !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
}
#offcanvas .ct-toggle path,
#offcanvas .ct-sub-menu-parent button path {
  fill: #AE9566 !important;
}
/* Sous-menu atténué */
#offcanvas .sub-menu .ct-menu-link {
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  color: rgba(254,252,243,0.65) !important;
  padding: 10px 28px 10px 44px !important;
}
/* Séparateurs */
#offcanvas nav > ul > li {
  border-bottom: 1px solid rgba(174,149,102,0.15) !important;
}
#offcanvas nav > ul > li:last-child {
  border-bottom: none !important;
}

/* ══ MENU MOBILE : spécificité max pour écraser Blocksy ══ */
#offcanvas.ct-panel .ct-panel-inner .ct-panel-content nav ul li a.ct-menu-link,
#offcanvas.ct-panel .ct-panel-inner .ct-panel-content nav ul li .ct-sub-menu-parent a.ct-menu-link,
#offcanvas.ct-panel .ct-panel-inner .ct-panel-content nav ul li .ct-sub-menu-parent a,
#offcanvas .ct-sub-menu-parent a,
#offcanvas .menu-item-has-children > .ct-sub-menu-parent > a {
  font-family: 'Helvena', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #FEFCF3 !important;
  padding: 14px 28px !important;
  display: block !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
}
/* Alignment: ct-sub-menu-parent en flex, même comportement que li>a */
#offcanvas .menu-item-has-children {
  padding: 0 !important;
}
#offcanvas .ct-sub-menu-parent {
  display: flex !important;
  align-items: stretch !important;
  padding: 0 !important;
  width: 100% !important;
}
#offcanvas .ct-sub-menu-parent a.ct-menu-link {
  flex: 1 !important;
  padding: 14px 0 14px 28px !important;
}
#offcanvas .ct-sub-menu-parent .ct-toggle,
#offcanvas .ct-toggle {
  flex-shrink: 0 !important;
  padding: 0 20px !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
}
#offcanvas .ct-toggle path { fill: #AE9566 !important; }
#offcanvas nav > ul > li {
  border-bottom: 1px solid rgba(174,149,102,0.15) !important;
}
#offcanvas nav > ul > li:last-child { border-bottom: none !important; }
#offcanvas .sub-menu .ct-menu-link {
  font-size: 11px !important;
  color: rgba(254,252,243,0.65) !important;
  padding: 10px 28px 10px 44px !important;
  letter-spacing: 0.14em !important;
}

/* ══ BANDEAUX MOBILE : centrage forcé ══ */
@media (max-width: 768px) {
  body:not(.home) .wp-block-cover {
    min-height: 180px !important;
    max-height: 220px !important;
    height: 200px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  body:not(.home) .wp-block-cover__inner-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    padding: 16px 20px !important;
  }
  body:not(.home) .wp-block-cover__inner-container h1,
  body:not(.home) .wp-block-cover__inner-container h2,
  body:not(.home) .wp-block-cover__inner-container h3,
  body:not(.home) .wp-block-cover__inner-container p,
  body:not(.home) .wp-block-cover__inner-container span {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
  }
  body:not(.home) .hero-section {
    height: 200px !important;
    max-height: 200px !important;
    min-height: 120px !important;
  }

/* Fix alignement menu burger BOUTIQUE */
#offcanvas .ct-sub-menu-parent > .ct-menu-link {
  padding-left: 28px !important;
}

/* Fix logos Q&E - images dans colonnes */
.wp-block-columns.is-not-stacked-on-mobile .wp-block-column:first-child img {
  max-width: 68px !important;
  width: 68px !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}

/* Q&E mobile: logos empiles au-dessus du texte */
body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile {
  flex-direction: column !important;
  align-items: center !important;
}
body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile .wp-block-column {
  width: 100% !important;
  flex-basis: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin-left: 0 !important;
}
body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile .wp-block-column:first-child img {
  width: 100px !important;
  max-width: 100px !important;
}

}
	
	/* ============================================
	 *    ESTEY  Corrections visuelles  Mai 2026
	 *    ============================================ */
	
	/* --- Titres produits en noir (liste + fiche) --- */
	.woocommerce-loop-product__title,
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.product_title.entry-title,
	.woocommerce div.product .product_title {
		  color: #111111 !important;
	}
	
	/* --- Mini-cart (hover panier)  fond blanc, texte lisible --- */
	.woocommerce-cart-form,
	.blocksy-cart-sidebar-wrap,
	.ct-cart-content,
	.woo-cart-dropdown,
	.ct-header-cart [data-id="cart"] .ct-cart-content,
	.ct-mini-cart {
		  background: #ffffff !important;
		  color: #111111 !important;
	}
	
	/* Textes internes du mini-cart */
	.ct-cart-content .cart_list li a,
	.ct-cart-content .woocommerce-mini-cart__total,
	.ct-cart-content .total,
	.ct-cart-content span.amount,
	.ct-cart-content .woocommerce-Price-amount,
	.woo-cart-dropdown a,
	.woo-cart-dropdown .amount {
		  color: #111111 !important;
	}
	
	/* Fond sombre du mini-cart  blanc */
	.ct-cart-content,
	[data-id="cart"] .ct-cart-content,
	.header-cart-minimal .ct-cart-content {
		  background-color: #ffffff !important;
		  box-shadow: 0 4px 20px rgba(0,0,0,0.12) !important;
		  border: 1px solid #e0e0e0 !important;
	}
	
	/* Prix dans le mini-cart */
	.ct-cart-content .woocommerce-mini-cart__total .amount,
	.ct-cart-content .woocommerce-mini-cart__total strong {
		  color: #1B2A3B !important;
		  font-weight: 700 !important;
	}
	
	/* Boutons du mini-cart */
	.ct-cart-content .woocommerce-mini-cart__buttons .button,
	.ct-cart-content .checkout.wc-forward {
		  background: #AEB978 !important;
		  color: #ffffff !important;
		  border: none !important;
	}
	.ct-cart-content .woocommerce-mini-cart__buttons .button:hover,
	.ct-cart-content .checkout.wc-forward:hover {
		  background: #2E7D70 !important;
		  color: #ffffff !important;
	}
	}
	}
	}
	}
	}
	}
	}

/* Cart fond blanc — spécificité ID #header */
#header .ct-cart-content,
#header .ct-header-cart:hover .ct-cart-content {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #111111 !important;
}
#header .ct-cart-content .woocommerce-mini-cart__total,
#header .ct-cart-content .woocommerce-mini-cart__total strong,
#header .ct-cart-content .total,
#header .ct-cart-content span {
  color: #111111 !important;
}

/* === Page confirmation commande ESTEY === */
.woocommerce-notice--success.woocommerce-thankyou-order-received {
  background: #303A31 !important; color: #fff !important;
  padding: 18px 28px !important; border-radius: 8px !important;
  margin-bottom: 32px !important; border: none !important;
}
ul.woocommerce-order-overview {
  background: #FAFBFC !important; border: 1px solid #e1e8ed !important;
  border-radius: 8px !important; padding: 20px 28px !important;
  margin-bottom: 32px !important; display: flex !important; flex-wrap: wrap !important;
}
ul.woocommerce-order-overview li {
  border-right: 1px solid #e1e8ed !important; padding: 8px 28px 8px 0 !important;
  margin-right: 28px !important; font-size: 0.88em !important; color: #3A4F66 !important; list-style: none !important;
}
ul.woocommerce-order-overview li:last-child { border-right: none !important; }
ul.woocommerce-order-overview li strong { color: #1D221E !important; display: block !important; }
section.woocommerce-order-details {
  background: #fff !important; border: 1px solid #e1e8ed !important;
  border-radius: 8px !important; padding: 24px 28px !important; margin-bottom: 32px !important;
}
h2.woocommerce-order-details__title {
  font-size: 0.78em !important; text-transform: uppercase !important;
  letter-spacing: 0.12em !important; color: #303A31 !important;
  padding-bottom: 12px !important; border-bottom: 2px solid #AE9566 !important; margin-bottom: 20px !important;
}
section.woocommerce-customer-details {
  background: #fff !important; border: 1px solid #e1e8ed !important;
  border-radius: 8px !important; padding: 24px 28px !important; margin-bottom: 32px !important;
}
h2.woocommerce-column__title {
  font-size: 0.78em !important; text-transform: uppercase !important;
  letter-spacing: 0.12em !important; color: #303A31 !important;
  padding-bottom: 12px !important; border-bottom: 2px solid #AE9566 !important;
}
section.woocommerce-customer-details address { font-style: normal !important; line-height: 1.8 !important; color: #3A4F66 !important; }


/* Footer mobile - refonte aeration et ergonomie (empilement des colonnes + espacements + zones tactiles) */
@media (max-width: 689.98px) {
  [data-footer*="type-1"] .ct-footer [data-row*="middle"] > div {
    grid-template-columns: 1fr !important;
    row-gap: 0 !important;
  }
  [data-footer*="type-1"] .ct-footer [data-row*="middle"] > div > div {
    padding: 36px 24px !important;
  }
  [data-footer*="type-1"] .ct-footer [data-row*="middle"] > div > div:not(:first-child) {
    border-top: 1px solid rgba(254,252,243,0.12);
  }
  .estey-footer-service ul { display: flex !important; flex-direction: column; gap: 2px; }
  .estey-footer-service li { margin-bottom: 0 !important; }
  .estey-footer-service a { display: block !important; padding: 10px 0 !important; font-size: 14px !important; }
  .footer-news-center { max-width: 340px; margin: 0 auto; }
  .footer-news-center p { font-size: 15px !important; margin-bottom: 18px !important; }
  .footer-news-center input[type="email"] { height: 46px !important; width: 100% !important; font-size: 14px !important; box-sizing: border-box !important; }
  .footer-news-center .wpforms-field-checkbox.estey-newsletter ul li { display: flex !important; align-items: flex-start !important; gap: 10px !important; text-align: left !important; }
  .footer-news-center .wpforms-field-checkbox.estey-newsletter input[type="checkbox"] { width: 20px !important; height: 20px !important; min-width: 20px !important; margin-top: 2px !important; flex-shrink: 0 !important; }
  .footer-news-center .wpforms-field-checkbox.estey-newsletter label { font-size: 13px !important; line-height: 1.5 !important; }
  .footer-news-center button { width: 100% !important; height: 46px !important; font-size: 12px !important; margin-top: 18px !important; }
  .estey-footer-contact a.mail-link { word-break: break-word; }
  .estey-footer-contact .secure-payments { margin-top: 20px; padding-top: 20px; }
  .estey-footer-contact .payment-logos { gap: 20px !important; }
}


/* Fix flash carousel Oyat — masque overflow avant init JS */
.ep-carousel-wrap {
  overflow: hidden;
}

/* Cover block headings (H2 sur L'Esprit Estey et Q&E) - taille égale au H1 cover */
.wp-block-cover h2.wp-block-heading {
  font-size: 41.6px !important;
}

/* Cover block headings — couleur blanche et pas de soulignement */
.wp-block-cover h2.wp-block-heading {
  color: #FEFCF3 !important;
}
.wp-block-cover h2.wp-block-heading::after,
.wp-block-cover h2.wp-block-heading::before {
  display: none !important;
  height: 0 !important;
}

/* Cover block headings — supprimer le décorateur ::after du thème */
.wp-block-cover h2.wp-block-heading::after {
  content: none !important;
  display: none !important;
  background: none !important;
  height: 0 !important;
  width: 0 !important;
}

/* Cover headings — supprimer décorateur ::after (surcharge page-id-253) */
body.page-id-253 .entry-content .wp-block-cover h2.wp-block-heading::after,
body.page-id-39 .entry-content .wp-block-cover h2.wp-block-heading::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  height: 0 !important;
  width: 0 !important;
}

/* Cover headings — supprimer border-bottom et padding-bottom */
body.page-id-253 .entry-content .wp-block-cover h2.wp-block-heading,
body.page-id-39 .entry-content .wp-block-cover h2.wp-block-heading {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Boutique (page-7) et Contact (page-37) — aligner font-weight et letter-spacing du cover heading */
body.page-id-7 .wp-block-cover h1.wp-block-heading,
body.page-id-37 .wp-block-cover h1.wp-block-heading {
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  color: #FEFCF3 !important;
}

/* Boutique (woocommerce-shop) et Contact (page-id-37) — cover heading cohérent avec Esprit/QE */
body.woocommerce-shop .wp-block-cover h1.wp-block-heading,
body.page-id-37 .wp-block-cover h1.wp-block-heading {
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  color: #FEFCF3 !important;
}

/* === CORRECTIONS JUILLET 2026 === */

/* Boutique + Contact cover H1 — font-weight aligné sur L'Esprit (500) */
body.woocommerce-shop .wp-block-cover h1.wp-block-heading,
body.page-id-37 .wp-block-cover h1.wp-block-heading {
  font-weight: 500 !important;
}

/* Homepage H1 descriptif — aligner sur L'Esprit (30px, 600, #1D221E) */
h1.estey-seo-h1 {
  font-weight: 600 !important;
  font-size: 30px !important;
  color: #1D221E !important;
  text-align: center !important;
  letter-spacing: normal !important;
}

/* Q&E H1 descriptif — taille alignée sur L'Esprit (30px) */
body.page-id-253 .entry-content h1.wp-block-heading {
  font-size: 30px !important;
}

/* Homepage + Q&E — separator width et marges H1 alignés sur L'Esprit */
h1.estey-seo-h1 {
  margin-bottom: 0 !important;
}
body.home h1.estey-seo-h1 + hr.wp-block-separator {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
}

body.page-id-253 .entry-content h1.wp-block-heading {
  margin-bottom: 0 !important;
}
body.page-id-253 .entry-content h1.wp-block-heading + hr.wp-block-separator {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
}

/* Homepage — espace sous le séparateur doré */
body.home h1.estey-seo-h1 + hr.wp-block-separator {
  margin-bottom: 60px !important;
}

/* Q&E — espace entre bandeau et H1 (identique à L'Esprit : 84px) */
body.page-id-253 .entry-content h1.wp-block-heading {
  margin-top: 84px !important;
}

/* Q&E H1 — espace entre texte et séparateur (comme L'Esprit) */
body.page-id-253 .entry-content h1.wp-block-heading {
  margin-bottom: 24px !important;
}

/* Q&E — Logos certifications taille uniforme (180px) */
body.page-id-253 img.wp-image-262,
body.page-id-253 img.wp-image-264,
body.page-id-253 img[src*="logo_word_100"] {
  width: 180px !important;
  height: 180px !important;
  max-width: 180px !important;
  max-height: 180px !important;
}

/* Q&E — AWARE logo taille proportionnelle */
body.page-id-253 img.wp-image-3236 {
  width: 180px !important;
  height: auto !important;
  max-width: 180px !important;
  max-height: none !important;
}

/* Q&E — Centrage vertical logo dans colonne */
body.page-id-253 .wp-block-columns .wp-block-column figure.wp-block-image {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

/* === FIX HERO VIDEO — position absolute + overflow Jul 2026 === */
html { overflow-x: hidden !important; }
.home-hero-video.wp-block-cover {
  position: relative !important;
  overflow: hidden !important;
  width: 100vw !important;
}
.home-hero-video .wp-block-cover__video-background {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(-50%) !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
}

/* === FIX .ec-wrap full width — Jul 2026 === */
.ec-wrap {
  width: 100% !important;
  max-width: 100% !important;
}

/* === FIX footer newsletter — pointillés + espacement Jul 2026 === */
.wpforms-field-checkbox.estey-newsletter fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.wpforms-field-checkbox.estey-newsletter {
  padding: 4px 0 !important;
  margin-top: 4px !important;
}

/* === FIX Qualité & Éthique — logos/certifs alignés à gauche desktop — Jul 2026 === */
@media (min-width: 769px) {
  body.page-id-253 .wp-block-image.aligncenter {
    display: flex !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  body.page-id-253 .wp-block-image.aligncenter img {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* === FIX slider NOTRE ENGAGEMENT — fond sombre anti-flash — Jul 2026 === */
.em-img {
  background-color: var(--eg, #1d221e) !important;
}

/* === Bandeaux hero 400px — Esprit Estey (39), Boutique (7), Qualité & Éthique (253), Contact (37) — Jul 2026 === */
body.page-id-39 .wp-block-cover,
body.page-id-7 .wp-block-cover,
body.page-id-253 .wp-block-cover,
body.page-id-37 .wp-block-cover {
  min-height: 350px !important;
  height: 350px !important;
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.page-id-39 .wp-block-cover .wp-block-cover__image-background,
body.page-id-7 .wp-block-cover .wp-block-cover__image-background,
body.page-id-253 .wp-block-cover .wp-block-cover__image-background,
body.page-id-37 .wp-block-cover .wp-block-cover__image-background {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

body.page-id-39 .wp-block-cover .wp-block-cover__inner-container,
body.page-id-7 .wp-block-cover .wp-block-cover__inner-container,
body.page-id-253 .wp-block-cover .wp-block-cover__inner-container,
body.page-id-37 .wp-block-cover .wp-block-cover__inner-container {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 24px !important;
}

body.page-id-39 .wp-block-cover .wp-block-cover__inner-container .wp-block-heading,
body.page-id-7 .wp-block-cover .wp-block-cover__inner-container .wp-block-heading,
body.page-id-253 .wp-block-cover .wp-block-cover__inner-container .wp-block-heading,
body.page-id-37 .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
  text-align: center !important;
  width: 100% !important;
  margin: 0 !important;
}

/* === Fix Boutique WooCommerce archive — body class is post-type-archive-product (pas page-id-7) — Jul 2026 === */
body.post-type-archive-product .wp-block-cover.alignfull {
  min-height: 350px !important; height: 350px !important; width: 100% !important;
  position: relative !important; overflow: hidden !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
body.post-type-archive-product .wp-block-cover .wp-block-cover__image-background {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
}
body.post-type-archive-product .wp-block-cover .wp-block-cover__inner-container {
  position: relative !important; z-index: 2 !important;
  display: flex !important; flex-direction: column !important;
  align-items: center !important; justify-content: center !important;
  text-align: center !important; width: 100% !important;
  max-width: 100% !important; padding: 0 24px !important;
  min-height: unset !important; height: auto !important;
}
body.post-type-archive-product .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
  text-align: center !important; width: 100% !important; margin: 0 !important;
}
/* Masquer le <p> vide généré par le commentaire wp:heading orphelin */
body.post-type-archive-product .wp-block-cover > p {
  display: none !important; margin: 0 !important; padding: 0 !important;
}

/* === Fix bandeau gris Boutique — margin-top .page-description + hauteur .hero-section — Jul 2026 === */
body.post-type-archive-product .page-description {
  margin-top: 0 !important;
}
body.post-type-archive-product .hero-section {
  min-height: 350px !important;
  height: 350px !important;
}
body.post-type-archive-product .entry-header.ct-container-narrow {
  padding: 0 !important;
  margin: 0 !important;
}

/* === Fix centrage titres hero — Qualité & Éthique (253) + Boutique p-dans-h1 — Jul 2026 === */
/* Qualité & Éthique : neutralise margin-top:36px de Blocksy sur h2:first-of-type dans cover */
body.page-id-253 .wp-block-cover h2.wp-block-heading,
body.page-id-253 .wp-block-cover h2.wp-block-heading:first-of-type {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/* Boutique : masque le <p> vide généré à l'intérieur du h1 par le bloc orphelin */
body.post-type-archive-product .wp-block-cover .wp-block-heading > p,
body.post-type-archive-product .wp-block-cover h1 > p {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  line-height: 0 !important;
}

/* === L'Esprit Estey — séparateur à la largeur du titre + centrage paragraphe — Jul 2026 === */
/* Séparateur HR : réduit à la largeur du texte H1 (745px mesurés) et centré */
body.page-id-39 .wp-block-group > hr.wp-block-separator {
  width: 745px !important;
  max-width: 90% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Paragraphe intro : centré horizontalement */
body.page-id-39 .wp-block-group > p.has-text-align-center {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
}

/* === Fix wp-block-columns flex layout (styles inline WordPress manquants) — Jul 2026 === */
.wp-block-columns.is-layout-flex {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
@media (min-width: 782px) {
  .wp-block-columns.is-layout-flex {
    flex-wrap: nowrap !important;
  }
}
.wp-block-columns.is-layout-flex > .wp-block-column {
  min-width: 0;
}

/* === Fix wp-block-columns : colonnes image sans flex-basis — Jul 2026 === */
body.page-id-39 .wp-block-columns.is-layout-flex > .wp-block-column {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  min-height: 400px;
}
body.page-id-39 .wp-block-columns.is-layout-flex > .wp-block-column > .wp-block-html {
  height: 100%;
}

/* === Fix section "Rejoindre l'aventure" — full width + bouton centré — Jul 2026 === */
body.page-id-39 .wp-block-group.has-background.is-layout-constrained {
  width: 100% !important;
  max-width: 100% !important;
}

/* Fix wp-block-buttons flex layout (styles inline WordPress manquants) — global */
.wp-block-buttons.is-layout-flex {
  display: flex !important;
  flex-wrap: wrap !important;
}
.wp-block-buttons.is-content-justification-center.is-layout-flex {
  justify-content: center !important;
}
.wp-block-buttons.is-content-justification-left.is-layout-flex {
  justify-content: flex-start !important;
}

/* === Séparateur citation L'Esprit Estey — centrage, 17px, marges égales — Jul 2026 === */
/* Fix global : wp-block-group flex layout (styles inline WP manquants) */
.wp-block-group.is-layout-flex {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}
/* Séparateur : full-width + h3 centré 17px */
body.page-id-39 .wp-block-group.has-background.is-layout-flex {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: 60px !important;
  padding-bottom: 60px !important;
  align-items: center !important;
}
body.page-id-39 .wp-block-group.has-background.is-layout-flex > h3.wp-block-heading,
body.page-id-39 .wp-block-group.has-background.is-layout-flex > h2.wp-block-heading,
body.page-id-39 .wp-block-group.has-background.is-layout-flex > p,
body.page-id-39 .wp-block-group.has-background.is-layout-flex h3 > p {
  text-align: center !important;
  font-size: 17px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* === Fix centrage enfants is-layout-constrained "Rejoindre" (margin auto manquant Blocksy) — Jul 2026 === */
body.page-id-39 .wp-block-group.has-background.is-layout-constrained > * {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* === Fix global margin auto is-layout-constrained (Blocksy manque margin:auto) — Jul 2026 === */
.entry-content.is-layout-constrained > * {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Colonnes page-id-39 restent full-width */
body.page-id-39 .entry-content.is-layout-constrained > .wp-block-columns {
  width: 100% !important;
  max-width: 100% !important;
}

/* === Séparateur page Qualité & Éthique — largeur texte H1 — Jul 2026 === */
body.page-id-253 hr.wp-block-separator.is-style-wide {
  width: 557px !important;
  max-width: 557px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* === H3 page Qualité & Éthique — 17px (spécificité correcte) — Jul 2026 === */
body.page-id-253 .entry-content h3.wp-block-heading,
body.page-id-253 .wp-block-post-content h3.wp-block-heading {
  font-size: 17px !important;
}

/* === Logos certification page 253 — taille uniforme 80px + centrage — Jul 2026 === */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center:first-child {
  text-align: center;
}
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center:last-child {
  text-align: left !important;
}
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img {
  width: auto !important;
  height: 80px !important;
  max-width: 150px !important;
  max-height: 80px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}


/* === Logos certification page 253 — taille uniforme 80px, alignement gauche — Jul 2026 === */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img {
  width: auto !important;
  height: 140px !important;
  max-width: 260px !important;
  max-height: 140px !important;
  object-fit: contain !important;
}


/* === Texte colonne certifications page 253 — alignement gauche — Jul 2026 === */
body.page-id-253 .entry-content .wp-block-columns h4.wp-block-heading,
body.page-id-253 .entry-content .wp-block-columns .wp-block-column > p {
  text-align: left !important;
}


/* === Logos WRAP, Fair Wear, REACH — taille réduite (spécificité haute) — Jul 2026 === */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-1599,
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-261,
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img[alt="REACH Compliant"] {
  height: 65px !important;
  max-height: 65px !important;
  max-width: 200px !important;
}
/* === Bandeaux images — hauteur 400px (réduit de 450px) — Jul 2026 === */
body.page-id-39 .wp-block-cover.alignfull,
body.page-id-7 .wp-block-cover.alignfull,
body.page-id-253 .wp-block-cover.alignfull,
body.page-id-37 .wp-block-cover.alignfull {
  min-height: 350px !important;
}
/* === Logos certification page 253 — harmonisation proportions + axe central — Jul 2026 === */
/* Base harmonisée: 95px (réduit depuis 140px) */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img {
  width: auto !important;
  height: 95px !important;
  max-width: 220px !important;
  max-height: 95px !important;
  object-fit: contain !important;
  display: block !important;
}
/* AWARE — ratio 3.86, très large horizontal */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-3236 {
  height: 50px !important;
  max-height: 50px !important;
  max-width: 200px !important;
}
/* REACH — ratio 2.52, large horizontal */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img[alt="REACH Compliant"] {
  height: 60px !important;
  max-height: 60px !important;
  max-width: 200px !important;
}
/* Fair Wear — ratio 2.22, légèrement agrandi */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-261 {
  height: 72px !important;
  max-height: 72px !important;
  max-width: 200px !important;
}
/* WRAP — ratio ~1, carré, agrandi vers proportion normale */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-1599 {
  height: 90px !important;
  max-height: 90px !important;
  max-width: 200px !important;
}
/* Colonne logo: flex centré verticalement, aligné à gauche */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
}
/* === Correctifs SVG logos page 253 — dimensions explicites (spécificité 0,5,2) — Jul 2026 === */
/* GOTS — SVG carré ratio 1.01 */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-262 {
  height: 95px !important;
  width: 95px !important;
  max-height: 95px !important;
  max-width: 95px !important;
}
/* OEKO-TEX — SVG carré ratio 1.00 */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-260 {
  height: 95px !important;
  width: 95px !important;
  max-height: 95px !important;
  max-width: 95px !important;
}
/* Fair Wear — SVG ratio 2.22, légèrement agrandi */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-261 {
  height: 72px !important;
  width: 160px !important;
  max-height: 72px !important;
  max-width: 200px !important;
}
/* === GRS — agrandi (logo visuellement petit) — Jul 2026 === */
body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center img.wp-image-264 {
  height: 130px !important;
  width: 130px !important;
  max-height: 130px !important;
  max-width: 130px !important;
}

/* === BUG FIXES MOBILE HOMEPAGE — 30/07/2026 === */

/* Fix 1 — Header sticky au scroll sur mobile */
@media (max-width: 768px) {
  header.ct-header {
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
  }
  .admin-bar header.ct-header {
    top: 46px !important;
  }
}

/* Fix 2 — BOUTIQUE meme taille que les autres items du menu mobile */
@media (max-width: 768px) {
  .ct-drawer-canvas .ct-sub-menu-parent > a {
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 4px !important;
    line-height: 1.3 !important;
  }
}

/* Fix 3 — Images bloc Notre Engagement pleine largeur sur mobile */
@media (max-width: 768px) {
  body.home .entry-content .wp-block-columns.is-not-stacked-on-mobile {
    flex-wrap: wrap !important;
  }
  body.home .entry-content .wp-block-columns.is-not-stacked-on-mobile .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
  }
  body.home .entry-content .wp-block-image img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* Fix 3 — CORRIGÉ — Notre Engagement slider (.em-wrap grid fixe) */
@media (max-width: 768px) {
  .em-wrap {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  .em-text, .em-img {
    width: 100% !important;
    max-width: 100% !important;
  }
  .em-slide, .em-slide img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* Fix 1 — CORRECTION — header sticky scope body.home uniquement */
@media (max-width: 768px) {
  body:not(.home) header.ct-header {
    position: relative !important;
    top: auto !important;
    width: auto !important;
  }
  body.home header.ct-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background-color: rgba(255,255,255,0.95) !important;
    backdrop-filter: blur(8px) !important;
  }
  body.home.admin-bar header.ct-header {
    top: 46px !important;
  }
}

/* Fix 1 — annulation background-color forcé (laisse Blocksy transparent→blanc gérer) */
@media (max-width: 768px) {
  body.home header.ct-header {
    background-color: unset !important;
    backdrop-filter: unset !important;
  }
}

/* === CORRECTIONS MOBILES — 30/07/2026 v2 === */

/* Fix BOUTIQUE — spécificité augmentée via nav.mobile-menu */
@media (max-width: 768px) {
  .ct-drawer-canvas nav.mobile-menu .ct-sub-menu-parent > a,
  .ct-drawer-canvas .ct-panel nav .ct-sub-menu-parent > a {
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 4px !important;
    line-height: 1.3 !important;
    color: inherit !important;
  }
}

/* Fix header homepage — sticky sur mobile */
@media (max-width: 768px) {
  body.home .ct-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
  }
  body.home.admin-bar .ct-header {
    top: 46px !important;
  }
}

/* Fix Qualite-Ethique — logos ne chevauchent pas le texte sur mobile */
@media (max-width: 768px) {
  body.page-id-253 .entry-content .wp-block-columns {
    flex-wrap: wrap !important;
    flex-direction: column !important;
  }
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center {
    align-items: center !important;
  }
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column img {
    margin: 0 auto 12px !important;
  }
}



/* === CORRECTIONS MOBILES — 30/07/2026 === */

/* Fix header sticky homepage mobile */
@media (max-width: 768px) {
  body.home .ct-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    z-index: 99999 !important;
    transform: translateZ(0) !important;
  }
  body.home.admin-bar .ct-header { top: 46px !important; }
  body.home .ct-main-content { padding-top: 78px !important; }
}

/* Fix BOUTIQUE menu mobile */
@media (max-width: 768px) {
  .ct-drawer-canvas .ct-sub-menu-parent > a,
  #offcanvas .ct-sub-menu-parent > a {
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 4px !important;
    line-height: 1.3 !important;
  }
}

/* Fix L'Esprit Estey (page-id-39) — colonnes stackees, images visibles */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-cover.alignfull {
    margin-top: 0 !important;
  }
  body.page-id-39 .wp-block-columns {
    display: block !important;
  }
  body.page-id-39 .wp-block-column {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }
  body.page-id-39 .wp-block-column > div {
    height: 280px !important;
    min-height: 280px !important;
  }
  body.page-id-39 .wp-block-column[style] {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  body.page-id-39 .wp-block-group.has-background {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}

/* Fix Qualite Ethique (page-id-253) — titres gauche + logos GOTS/GRS */
@media (max-width: 768px) {
  body.page-id-253 .wp-block-column h4,
  body.page-id-253 .wp-block-column h3 {
    text-align: left !important;
  }
}
body.page-id-253 img[alt="GOTS"] {
  width: 130px !important;
  height: auto !important;
}
body.page-id-253 img[alt="GRS"] {
  width: 160px !important;
  height: auto !important;
}

/* Bloc 4 page-id-39 : image en haut, texte en bas */
@media (max-width: 768px) {
  body.page-id-39 .entry-content > .wp-block-columns:nth-child(5) {
    display: flex !important;
    flex-direction: column-reverse !important;
    flex-wrap: nowrap !important;
  }
}

/* Fix carousel produits homepage — mobile */
@media (max-width: 768px) {
  .ep-carousel-wrap .products.columns-4 li.product {
    width: 50vw !important;
    min-width: 50vw !important;
    max-width: 50vw !important;
  }
  .ep-carousel-wrap .ct-media-container {
    height: 200px !important;
  }
  .ep-carousel-wrap .ct-media-container img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    object-fit: cover !important;
  }
}

/* Homepage — réduire espace carousel → CTA boutique (mobile + desktop) */
body.home .ep-carousel-wrap { margin-bottom: 8px !important; }
body.home .ep-grid { margin-bottom: 8px !important; }

/* Fix Qualité & Éthique (page-id-253) — colonnes is-not-stacked-on-mobile */
@media (max-width: 768px) {
  body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile {
    display: block !important;
  }
  body.page-id-253 .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
  }
}

/* Fix L'Esprit Estey (page-id-39) — override Gutenberg is-layout-flex v2 */
@media (max-width: 768px) {
  html body.page-id-39 .wp-block-columns,
  html body.page-id-39 .wp-block-columns.is-layout-flex {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  html body.page-id-39 .wp-block-columns > .wp-block-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    min-width: 0 !important;
  }
}

/* Bloc 4 page-id-39 v2 : image en haut, texte en bas */
@media (max-width: 768px) {
  html body.page-id-39 .entry-content > .wp-block-columns:nth-child(5),
  html body.page-id-39 .entry-content > .wp-block-columns.is-layout-flex:nth-child(5) {
    flex-direction: column-reverse !important;
  }
}

/* Fix L'Esprit Estey (page-id-39) — v3: hauteur correcte colonnes texte vs image */
@media (max-width: 768px) {
  /* Colonnes IMAGE (pas de has-background) : hauteur fixe */
  body.page-id-39 .wp-block-column:not(.has-background) {
    height: 300px !important;
    min-height: 300px !important;
    overflow: hidden !important;
    flex: none !important;
  }
  /* Colonnes TEXTE (has-background) : hauteur libre, texte entier visible */
  body.page-id-39 .wp-block-column.has-background {
    height: auto !important;
    min-height: unset !important;
    overflow: visible !important;
    flex: none !important;
  }
  body.page-id-39 .wp-block-column.has-background > * {
    height: auto !important;
    overflow: visible !important;
  }
}

/* Fix carousel homepage mobile — images portrait visibles sans rognage */
@media (max-width: 768px) {
  .ep-carousel-wrap .ct-media-container {
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
  }
  .ep-carousel-wrap .ct-media-container img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    aspect-ratio: unset !important;
  }
}

/* L'Esprit Estey mobile — supprimer l'espace entre texte et image (padding colonnes) */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-column.has-background {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

/* L'Esprit Estey mobile — supprimer espace texte/image */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-column.has-background {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

/* L'Esprit Estey mobile v4 — texte entier + images collées */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-column.has-background > *,
  body.page-id-39 .wp-block-column.has-background > div,
  body.page-id-39 .wp-block-column.has-background > div > * {
    height: auto !important;
    min-height: unset !important;
    max-height: none !important;
    overflow: visible !important;
  }
  body.page-id-39 .wp-block-columns {
    margin-bottom: 0 !important;
  }
}

/* L'Esprit Estey mobile v5 — coller images aux textes, zéro gap */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-columns {
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
  }
  body.page-id-39 .wp-block-column.has-background {
    padding-bottom: 0 !important;
  }
  body.page-id-39 .wp-block-column:not(.has-background) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* L'Esprit Estey mobile v5 — coller images aux textes, zero gap */
@media (max-width: 768px) {
  body.page-id-39 .wp-block-columns {
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
  }
  body.page-id-39 .wp-block-column.has-background {
    padding-bottom: 0 !important;
  }
  body.page-id-39 .wp-block-column:not(.has-background) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* L'Esprit Estey mobile v6 — fix padding colonnes image */
@media (max-width: 781px) {
  body.page-id-39 .wp-block-column[style]:not(.has-background) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  body.page-id-39 .wp-block-column.has-background {
    padding-bottom: 0 !important;
  }
  body.page-id-39 .wp-block-columns {
    gap: 0 !important;
    row-gap: 0 !important;
  }
}

/* Homepage mobile — image em-wrap non croppée (aspect-ratio 4/5) */
@media (max-width: 781px) {
  #emcEng {
    height: auto !important;
    width: 100% !important;
  }
  #emcEng img {
    position: relative !important;
    height: auto !important;
    width: 100% !important;
    object-fit: cover !important;
  }
}

/* Homepage — espace entre carrousel produit et CTA boutique */
.ep-cta-wrap {
  margin-top: 48px !important;
}

/* Boutique — réduire espace entre bandeau et filtres */
.post-type-archive-product .site-main .ct-container {
  padding-top: 32px !important;
}
@media (max-width: 781px) {
  .post-type-archive-product .site-main .ct-container {
    padding-top: 8px !important;
  }
}
/* Qualité — colonne texte alignée gauche sur mobile (override align-items: center) */
@media (max-width: 768px) {
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column.is-vertically-aligned-center:last-child {
    align-items: flex-start !important;
    text-align: left !important;
  }
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column:last-child h2,
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column:last-child h3,
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column:last-child h4,
  body.page-id-253 .entry-content .wp-block-columns .wp-block-column:last-child p {
    text-align: left !important;
  }
}

/* =========================================================
   ESTEY — Panier & tunnel de commande  (ajouté le 20/08/2026)
   Restaure la mise en page des blocs WooCommerce (feuille
   wc-blocks-style absente) et hiérarchise les boutons d'achat.
   ========================================================= */

/* --- Mise en page 2 colonnes --- */
.wc-block-components-sidebar-layout{display:flex;flex-wrap:wrap;gap:32px 48px;align-items:flex-start}
.wc-block-components-sidebar-layout > .wc-block-components-main{flex:1 1 480px;min-width:0;padding:0}
.wc-block-components-sidebar-layout > .wc-block-components-sidebar{flex:0 1 372px;min-width:300px;padding:0}
@media(max-width:880px){
  .wc-block-components-sidebar-layout{display:block}
  .wc-block-components-sidebar-layout > .wc-block-components-sidebar{margin-top:32px}
}

/* --- Lignes du panier --- */
.wc-block-cart-items{width:100%;border-collapse:collapse}
.wc-block-cart-items__header th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.55;font-weight:600;padding-bottom:10px;border-bottom:1px solid rgba(29,34,30,.12)}
.wc-block-cart-items__header-total{text-align:right}
.wc-block-cart-items__row td{padding:20px 0;border-bottom:1px solid rgba(29,34,30,.09);vertical-align:top}
td.wc-block-cart-item__image{width:104px;padding-right:20px}
td.wc-block-cart-item__image img{width:104px;height:auto;border-radius:10px;display:block}
td.wc-block-cart-item__total{text-align:right;white-space:nowrap;font-weight:600;padding-left:16px}
.wc-block-components-product-name{font-weight:600;text-decoration:none;line-height:1.35;display:block}
.wc-block-cart-item__prices{margin:4px 0 2px;opacity:.6;font-size:13px}
.wc-block-components-product-details{margin:0 0 12px;padding:0;list-style:none;font-size:13px;opacity:.7}
.wc-block-cart-item__quantity{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wc-block-components-quantity-selector{display:inline-flex;align-items:center;width:auto;max-width:118px;border:1px solid rgba(29,34,30,.18);border-radius:8px;overflow:hidden;background:#fff}
.wc-block-components-quantity-selector__input{width:40px;min-height:36px;padding:0;text-align:center;border:0;background:transparent;font-size:14px}
.wc-block-components-quantity-selector__button{width:34px;min-width:34px;height:36px;background:transparent;border:0;cursor:pointer;font-size:16px;line-height:1;opacity:.7}
.wc-block-components-quantity-selector__button:hover{opacity:1;background:rgba(29,34,30,.05)}
.wc-block-cart-item__remove-link{background:none;border:0;padding:0;font-size:12.5px;text-decoration:underline;opacity:.55;cursor:pointer}
.wc-block-cart-item__remove-link:hover{opacity:1}

/* --- Encadré récapitulatif --- */
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block{background:#FEFCF3;border:1px solid rgba(29,34,30,.14);border-radius:14px;padding:22px 24px}
.wc-block-cart__totals-title{font-size:11px!important;letter-spacing:.09em;text-transform:uppercase;opacity:.55;font-weight:600;margin:0 0 6px!important}
.wc-block-components-totals-wrapper{padding:10px 0;border-top:1px solid rgba(29,34,30,.1)}
.wc-block-components-totals-wrapper:first-of-type{border-top:0}
.wc-block-components-totals-item{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;padding:3px 0}
.wc-block-components-totals-item__label{flex:1 1 auto}
.wc-block-components-totals-item__value{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
.wc-block-components-totals-item__description{flex-basis:100%;margin-top:2px;font-size:12px;opacity:.6}
.wc-block-components-totals-footer-item{font-size:16px}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-size:24px;letter-spacing:-.02em}
.wc-block-components-totals-coupon .wc-block-components-panel__button{padding:0;font-size:13px;opacity:.7}
.wc-block-components-totals-coupon .wc-block-components-panel__button:hover{opacity:1}

/* --- Bouton principal --- */
.wc-block-cart__submit-container{margin:0}
.wc-block-cart__submit-button{display:flex!important;width:100%!important;height:auto!important;min-height:54px!important;padding:16px 24px!important;align-items:center;justify-content:center;font-size:16px!important;line-height:1.2!important;font-weight:600;letter-spacing:.01em;border-radius:10px!important}

/* --- Paiement express : compact, sans puces --- */
.wc-block-components-express-payment{margin:0 0 14px;padding:0;border:0}
.wc-block-components-express-payment__title-container{display:none}
.wc-block-components-express-payment__event-buttons{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:8px}
.wc-block-components-express-payment__event-buttons > li{list-style:none!important;margin:0!important;padding:0!important;display:block;max-width:100%}
.wc-block-components-express-payment__event-buttons > li::marker{content:""}
.wc-block-components-express-payment__event-buttons > li > *{width:100%!important;max-width:100%!important}


/* --- Séparateur « Ou » --- */
.wc-block-components-express-payment-continue-rule{display:flex;align-items:center;gap:12px;margin:16px 0;font-size:12px;text-transform:uppercase;letter-spacing:.1em;opacity:.45}
.wc-block-components-express-payment-continue-rule::before,
.wc-block-components-express-payment-continue-rule::after{content:"";flex:1;height:1px;background:rgba(29,34,30,.16)}

/* --- Réassurance sous le bouton --- */
.wc-block-cart__submit-container::after{content:"Paiement sécurisé · Fabriqué et expédié à la commande";display:block;margin-top:12px;text-align:center;font-size:12px;line-height:1.5;opacity:.6}

/* --- ESTEY panier : correctifs de spécificité --- */
.wc-block-cart__sidebar h2.wc-block-cart__totals-title,
.wp-block-woocommerce-cart-order-summary-block > h2.wc-block-cart__totals-title{
  font-size:11px!important;line-height:1.3!important;letter-spacing:.09em!important;
  text-transform:uppercase!important;font-weight:600!important;opacity:.55;margin:0 0 10px!important}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{
  width:40px!important;min-width:40px!important;height:36px!important;min-height:36px!important;
  padding:0!important;font-size:14px!important;text-align:center!important;
  border:0!important;background:transparent!important;box-shadow:none!important}
.wc-block-components-quantity-selector{height:38px}

/* ===== ESTEY — Page Commande (checkout) ===== */
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block{
  background:#FEFCF3;border:1px solid rgba(29,34,30,.14);border-radius:14px;padding:22px 24px}
.wc-block-components-checkout-order-summary__title{font-size:11px!important;letter-spacing:.09em!important;
  text-transform:uppercase!important;font-weight:600!important;opacity:.55}
.wc-block-components-order-summary-item{display:grid!important;grid-template-columns:64px 1fr auto;
  gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid rgba(29,34,30,.09);list-style:none}
.wc-block-components-order-summary-item__image{position:relative!important;width:64px;padding:0}
.wc-block-components-order-summary-item__image img{width:64px;height:auto;border-radius:8px;display:block}
.wc-block-components-order-summary-item__quantity{position:absolute!important;top:-8px;right:-8px;
  width:auto!important;min-width:22px;height:22px;padding:0 6px;display:flex;align-items:center;justify-content:center;
  border-radius:11px;background:#1D221E;color:#fff;font-size:12px;line-height:1;font-weight:600}
.wc-block-components-order-summary-item__description{min-width:0}
.wc-block-components-order-summary-item__description h3.wc-block-components-product-name{
  font-size:14px!important;font-weight:600;line-height:1.35;margin:0}
.wc-block-components-order-summary-item__total-price{text-align:right;white-space:nowrap;font-weight:600}
.wc-block-components-order-summary-item .screen-reader-text,
.wc-block-components-order-summary-item__quantity .screen-reader-text{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.wc-block-checkout__main .wc-block-components-express-payment{max-width:420px;margin:0 auto 8px}
.wc-block-components-checkout-place-order-button{
  display:flex!important;width:100%!important;height:auto!important;min-height:54px!important;
  padding:16px 24px!important;align-items:center;justify-content:center;
  font-size:16px!important;line-height:1.2!important;font-weight:600;border-radius:10px!important}

/* --- Cases à cocher WooCommerce : le SVG du coche n'était pas dimensionné
       et s'étalait sur 750 px de haut. Sans ce correctif la page Commande
       fait 4 163 px au lieu de 1 744 px. --- */
.wc-block-components-checkbox{position:relative}
.wc-block-components-checkbox label{display:flex!important;align-items:flex-start;gap:10px;position:relative;line-height:1.45}
.wc-block-components-checkbox input[type=checkbox]{position:static!important;flex:0 0 18px;
  width:18px!important;height:18px!important;min-width:18px!important;margin:1px 0 0!important;opacity:1!important}
.wc-block-components-checkbox svg,
.wc-block-components-checkbox .wc-block-components-checkbox__mark{
  position:absolute!important;left:3px;top:4px;width:13px!important;height:13px!important;
  max-width:13px!important;max-height:13px!important;pointer-events:none}


/* ===== ESTEY - Commande : champs de formulaire ===== */
.wc-block-components-address-form,.wc-block-components-form{display:block}
.wc-block-components-text-input,.wc-block-components-select,.wc-block-components-combobox{position:relative!important;margin:0 0 14px!important;display:block}
.wc-block-components-text-input input,
.wc-block-components-combobox input,
.wc-block-components-select select,
.wc-block-components-address-form input[type=text],
.wc-block-components-address-form input[type=tel],
.wc-block-components-address-form input[type=email]{width:100%!important;height:54px!important;padding:22px 14px 6px!important;border:1px solid rgba(29,34,30,.22)!important;border-radius:8px!important;background:#fff!important;font-size:15px!important;line-height:1.2!important;box-shadow:none!important;margin:0!important}
.wc-block-components-text-input label,
.wc-block-components-combobox label,
.wc-block-components-select label{position:absolute!important;left:15px!important;top:9px!important;font-size:11.5px!important;opacity:.6;pointer-events:none;margin:0!important;padding:0!important;line-height:1!important;transform:none!important}

/* ===== ESTEY - Commande : pays, options livraison/paiement ===== */
.wc-blocks-components-select{margin:0 0 14px!important}
body .wc-block-checkout .wc-blocks-components-select__container,
body .wc-block-components-address-form .wc-blocks-components-select__container{position:relative!important;display:block!important;border-width:1px!important;border-style:solid!important;border-color:rgba(29,34,30,.22)!important;border-radius:8px!important;background-color:#fff!important;height:54px!important;padding:0!important;overflow:hidden!important;box-shadow:none!important}
body .wc-block-checkout .wc-blocks-components-select__label{position:absolute!important;left:15px!important;top:9px!important;font-size:11.5px!important;line-height:1!important;opacity:.6;margin:0!important;padding:0!important;pointer-events:none;width:auto!important;transform:none!important}
body .wc-block-checkout .wc-blocks-components-select__select{width:100%!important;height:52px!important;padding:22px 40px 6px 14px!important;border:0!important;background:transparent!important;font-size:15px!important;line-height:1.2!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:none!important;margin:0!important;color:inherit!important}
body .wc-block-checkout .wc-blocks-components-select__expand{position:absolute!important;right:12px!important;top:50%!important;margin-top:-10px!important;width:20px!important;height:20px!important;pointer-events:none}
body .wc-block-components-address-form input.wc-block-components-address-form__address_2-hidden-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;border:0!important;opacity:0!important}
.wc-block-components-address-form__address_2-toggle{display:inline-block;margin:0 0 14px;font-size:13.5px;opacity:.75;cursor:pointer;text-decoration:underline}
.wc-block-components-radio-control{display:block!important}
.wc-block-components-radio-control__option{position:relative!important;display:block!important;padding:14px 16px 14px 46px!important;border:1px solid rgba(29,34,30,.18)!important;border-radius:10px!important;background:#fff!important;margin:0 0 10px!important;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}
.wc-block-components-radio-control__option:hover{border-color:rgba(29,34,30,.4)!important}
.wc-block-components-radio-control__option:has(input:checked){border-color:#6B7A45!important;box-shadow:inset 0 0 0 1px #6B7A45!important;background:#FEFCF3!important}
.wc-block-components-radio-control__input{position:absolute!important;left:17px!important;top:50%!important;margin:-8px 0 0!important;width:16px!important;height:16px!important;min-width:16px!important;flex:none!important;accent-color:#6B7A45}
.wc-block-components-radio-control__option-layout{display:block!important;width:100%!important}
.wc-block-components-radio-control__label-group{display:flex!important;flex-wrap:wrap;justify-content:space-between!important;align-items:baseline!important;gap:4px 12px!important;width:100%!important}
.wc-block-components-radio-control__label{font-weight:500}
.wc-block-components-radio-control__secondary-label{font-weight:600;margin-left:auto!important}
.wc-block-components-radio-control__description-group{display:block;width:100%;font-size:13px;opacity:.7;margin-top:4px}


/* ===== ESTEY - Commande : entete resume (desktop) ===== */
@media (min-width:782px){
.wc-block-components-checkout-order-summary__title>.wc-block-formatted-money-amount,
.wc-block-components-checkout-order-summary__title-icon{display:none!important}
.wc-block-components-checkout-order-summary__title{display:block!important;height:auto!important;margin:0 0 4px!important}
}

/* === Bandeau CERTIFICATIONS ÉTHIQUES : alignement et harmonisation des logos (06/09/2026) === */
/* Annule les anciens scale() par logo et normalise le poids visuel par forme */
.estey-labels-inner .estey-label-item{height:120px !important;min-width:190px !important;padding:0 14px !important}
.estey-labels-inner .estey-label-item img{transform:none !important;width:auto !important;height:auto !important;max-width:140px !important;max-height:76px !important;object-fit:contain !important}
/* Badges ronds / carrés */
.estey-labels-inner .estey-label-item img[src*="Global_Organic"],.estey-labels-inner .estey-label-item img[src*="logo_word_100"],.estey-labels-inner .estey-label-item img[src*="logo-wrap"],.estey-labels-inner .estey-label-item img[src*="1-percent"],.estey-labels-inner .estey-label-item img[src*="ocs-blended"]{width:90px !important;height:90px !important;max-width:90px !important;max-height:90px !important}
.estey-labels-inner .estey-label-item img[src*="umbrella"]{width:86px !important;height:86px !important;max-width:86px !important;max-height:86px !important}
.estey-labels-inner .estey-label-item img[src*="grs-logo"]{max-height:72px !important;max-width:150px !important}
/* Portrait */
.estey-labels-inner .estey-label-item img[src*="eco-passport"]{max-height:112px !important;max-width:90px !important}
/* Très larges */
.estey-labels-inner .estey-label-item img[src*="sedex"],.estey-labels-inner .estey-label-item img[src*="trust-protocol"]{max-width:150px !important}
.estey-labels-inner .estey-label-item img[src*="sedex"]{width:140px !important;height:auto !important}
@media (max-width:782px){
.estey-labels-inner .estey-label-item{min-width:140px !important;height:96px !important;padding:0 8px !important}
.estey-labels-inner .estey-label-item img{max-width:110px !important;max-height:60px !important}
.estey-labels-inner .estey-label-item img[src*="Global_Organic"],.estey-labels-inner .estey-label-item img[src*="logo_word_100"],.estey-labels-inner .estey-label-item img[src*="logo-wrap"],.estey-labels-inner .estey-label-item img[src*="1-percent"],.estey-labels-inner .estey-label-item img[src*="ocs-blended"]{width:70px !important;height:70px !important;max-width:70px !important;max-height:70px !important}
.estey-labels-inner .estey-label-item img[src*="umbrella"]{width:68px !important;height:68px !important;max-width:68px !important;max-height:68px !important}
.estey-labels-inner .estey-label-item img[src*="grs-logo"]{max-height:56px !important;max-width:118px !important}
.estey-labels-inner .estey-label-item img[src*="eco-passport"]{max-height:88px !important;max-width:70px !important}
.estey-labels-inner .estey-label-item img[src*="sedex"],.estey-labels-inner .estey-label-item img[src*="trust-protocol"]{max-width:120px !important}
}

/* === Page Qualité & éthique : logos harmonisés (06/09/2026) === */
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image{display:flex !important;justify-content:center !important;align-items:center !important;margin:0 auto !important;width:180px !important;height:150px !important;min-height:150px !important;max-height:150px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img{transform:none !important;width:auto !important;height:auto !important;min-width:0 !important;max-width:160px !important;max-height:84px !important;object-fit:contain !important}
/* Badges ronds / carrés */
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="Global_Organic"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="logo_word_100"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="logo-wrap"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="1-percent"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="ocs-blended"]{width:112px !important;height:112px !important;max-width:112px !important;max-height:112px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="umbrella"]{width:108px !important;height:108px !important;max-width:108px !important;max-height:108px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="grs-logo"]{width:auto !important;height:auto !important;max-width:160px !important;max-height:80px !important}
/* Portrait */
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="eco-passport"]{max-height:136px !important;max-width:110px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="fla-fair"]{max-width:150px !important;max-height:104px !important}
/* Très larges */
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="sedex"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="trust-protocol"]{max-width:170px !important;max-height:60px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="sedex"]{width:160px !important;height:auto !important}
@media (max-width:782px){
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image{width:120px !important;height:110px !important;min-height:110px !important;max-height:110px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img{max-width:110px !important;max-height:64px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="Global_Organic"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="logo_word_100"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="logo-wrap"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="1-percent"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="ocs-blended"]{width:84px !important;height:84px !important;max-width:84px !important;max-height:84px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="umbrella"]{width:80px !important;height:80px !important;max-width:80px !important;max-height:80px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="grs-logo"]{max-width:110px !important;max-height:56px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="eco-passport"]{max-height:100px !important;max-width:80px !important}
html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="sedex"],html body.page-id-253 .entry-content .wp-block-columns .wp-block-column .wp-block-image img[src*="trust-protocol"]{max-width:115px !important;max-height:44px !important}
}