:root {
	--wd-text-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: #767676;
	--wd-text-font-size: 14px;
	--wd-title-font: var(--wd-text-font);
	--wd-title-font-weight: 600;
	--wd-title-color: #242424;
	--wd-entities-title-font: var(--wd-title-font);
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: var(--wd-text-font);
	--wd-widget-title-font: var(--wd-title-font);
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: var(--wd-text-font);
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(232,105,15);
	--wd-alternative-color: rgb(36,64,30);
	--btn-default-bgcolor: rgb(232,105,15);
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(232,105,15);
	--btn-accented-bgcolor-hover: #74a32f;
	--wd-form-brd-width: 2px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(43,24,16);
	background-image: none;
}
.whb-general-header .wd-nav.wd-nav-secondary > li > a, html .wd-dropdown-my-account .wd-sub-menu li a {
	color: rgb(255,255,255);
}
.wd-header-my-account wd-tools-element wd-event-hover .wd-design-1-text wd-style-text-only .whb-vssfpylqqax9pvkfnxoz {
	color: rgb(255,255,255);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 0px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 0px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-default-box-shadow-active: none;
--btn-default-bottom: 0px;
--btn-accented-bottom-active: -1px;
--btn-accented-brd-radius: 0px;
--btn-accented-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .15);
--btn-accented-box-shadow-hover: inset 0 -2px 0 rgba(0, 0, 0, .15);
--wd-brd-radius: 0px;
}

@media (min-width: 1222px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: #0a0a0a;
}

@import url('https://fonts.googleapis.com/css2?family=Staatliches&family=Oswald:wght@500;600;700&family=Montserrat:wght@400;500;600;700&display=swap');

/* ================================================================
   HOLZARO — Feuille de style maître (Woodmart + Elementor)
   Fichier unique du site. Charte v1.0 : rouge braise #C23B22 ·
   noir charbon #231F20 · crème cendre #F4F1EB · toile #D8D1C1.
   Staatliches (titres, chiffres clés) · Oswald (labels, boutons,
   signatures) · Montserrat (texte courant). Boutons et champs 4px,
   cartes 10px, blocs 12px.

   Sommaire (numéros fixes, jamais renumérotés)
     BASE  Tokens · éléments globaux · composants partagés
     01 Hero accueil                 10 (libre)
     03 Produits accueil : conteneur 11 Cartes produit
     04 Accueil : Unsere Geschichte  12 Cartes produit : finitions
     05 Catégories / carrousel       13 Bloc infos footer
     07 Carte contact accueil        14 Confirmation de commande
     08 Header : Mon compte          15 Barre de réassurance accueil
     09 Page Contact                 16 Accueil : Qualität · Ablauf · Lieferung
                                     17 Page Über uns (patch temporaire)
   Widgets HTML : classes .bh-* (inchangées, voir note de livraison),
   aucun <style> ni style inline.
   Points de rupture : 1024px · 767px · 480px.
   ================================================================ */


/* ================================================================
   BASE — Tokens
   ================================================================ */

:root{
  /* Couleurs de la charte (§2) */
  --hz-cream:#F4F1EB;            /* crème cendre — fond de page */
  --hz-cream-2:#EAE5DB;          /* crème soutenue — fonds secondaires */
  --hz-canvas:#D8D1C1;           /* toile */
  --hz-charcoal:#231F20;         /* noir charbon — header, footer, avis */
  --hz-charcoal-2:#3A3435;       /* charbon clair — hover sombre */
  --hz-red:#C23B22;              /* rouge braise — signature, CTA */
  --hz-red-dark:#9E2E19;         /* rouge brûlé — hover, actif */
  --hz-ink:#1B1718;              /* texte principal */
  --hz-grey:#77706B;             /* texte secondaire */
  --hz-line:#DDD6CA;             /* bordures sur fond clair */
  --hz-white:#FFFFFF;
  --hz-on-dark:#CFC7BC;          /* texte secondaire sur fond charbon */

  /* Typographies (§3) */
  --hz-font-title:'Staatliches', 'Oswald', 'Arial Narrow', sans-serif;
  --hz-font-label:'Oswald', 'Arial Narrow', Arial, sans-serif;
  --hz-font-text:'Montserrat', 'Helvetica Neue', Arial, sans-serif;

  /* Formes (§11) */
  --hz-radius-btn:4px;
  --hz-radius-card:10px;
  --hz-radius-block:12px;
  --hz-shadow:0 1px 3px rgba(35,31,32,0.06);
  --hz-shadow-hover:0 18px 32px rgba(35,31,32,0.16);
  --hz-focus:0 0 0 3px rgba(194,59,34,0.30);

  /* Texture usée (§11 : logo, H1 et tampons uniquement) */
  --hz-grunge:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='2' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 0 0 0 3.7'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");

  /* Textes injectés par le CSS (langue du site : à changer ici seulement) */
  --hz-txt-products-eyebrow:"Unser Sortiment";
  --hz-txt-delivery-badge:"Kostenlose Lieferung";
  --hz-txt-vat:"inkl. MwSt.";
}

/* Variables natives Woodmart : alignent menus, panier, boutique…
   (à reporter aussi dans Theme Settings > Styles & Typography si le
   thème les réinjecte ailleurs). */
html:root{
  --wd-primary-color:var(--hz-red);
  --wd-alternative-color:var(--hz-charcoal);
  --wd-link-color:var(--hz-ink);
  --wd-link-color-hover:var(--hz-red);
  --wd-text-font:var(--hz-font-text);
  --wd-title-font:var(--hz-font-title);
  --wd-title-font-weight:400;
  --wd-entities-title-font:var(--hz-font-title);
  --wd-entities-title-font-weight:400;
  --wd-alternative-font:var(--hz-font-label);
  --btn-accented-bgcolor:var(--hz-red);
  --btn-accented-bgcolor-hover:var(--hz-red-dark);
  --btn-accented-brd-radius:var(--hz-radius-btn);
  --btn-default-brd-radius:var(--hz-radius-btn);
  --wd-form-brd-radius:var(--hz-radius-btn);
}


/* ================================================================
   BASE — Éléments globaux
   Spécificité renforcée (html body, body hX) pour primer sur les
   réglages de police du thème Woodmart.
   Staatliches n'existe qu'en graisse 400 : jamais de 700 sur les
   titres (sinon faux gras généré par le navigateur).
   ================================================================ */

*{ box-sizing:border-box; }

html body{
  background:var(--hz-cream);
  color:var(--hz-ink);
  font-family:var(--hz-font-text) !important;
  line-height:1.55;
}

body h1, body h2, body h3{
  font-family:var(--hz-font-title) !important;
  font-weight:400 !important;
  text-transform:uppercase;
  letter-spacing:.03em !important;
  margin:0;
}
body h4{
  font-family:var(--hz-font-label) !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:.08em !important;
  margin:0;
}

a{ text-decoration:none; }

/* Correction du vide sous le header (Woodmart) */
#main-content.wd-content-layout{
  padding-top:0 !important;
  margin-top:0 !important;
}


/* ================================================================
   BASE — Composants partagés
   ================================================================ */

/* --- Titres de section (H2 charte : Staatliches 400, 30–36px) --- */
.elementor-element-4e8e1fe1 .woodmart-title-container.title,
.elementor-element-10093a39 .woodmart-title-container.title,
.elementor-element-4840dc53 .woodmart-title-container.title{
  font-family:var(--hz-font-title) !important;  /* widgets en <h4> */
  font-size:clamp(28px, 3.2vw, 36px) !important;
  font-weight:400 !important;
  line-height:1.1 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase;
  color:var(--hz-ink) !important;
}

/* --- Bouton principal : rouge braise, angles 4px, Oswald espacé --- */
.elementor-element-6b13e009 .btn.btn-color-primary,
.elementor-element-e7a72fb .btn.btn-color-primary,
.wpcf7-form-control.wpcf7-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background-color:var(--hz-red) !important;
  border:2px solid var(--hz-red) !important;
  color:var(--hz-white) !important;
  font-family:var(--hz-font-label) !important;
  font-weight:600 !important;
  font-size:14px !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  padding:14px 30px !important;
  border-radius:var(--hz-radius-btn) !important;
  box-shadow:none;
  cursor:pointer;
  transition:background-color .15s ease, border-color .15s ease;
}
.elementor-element-6b13e009 .btn.btn-color-primary:hover,
.elementor-element-e7a72fb .btn.btn-color-primary:hover,
.wpcf7-form-control.wpcf7-submit:hover{
  background-color:var(--hz-red-dark) !important;
  border-color:var(--hz-red-dark) !important;
}
.elementor-element-6b13e009 .btn.btn-color-primary:focus-visible,
.elementor-element-e7a72fb .btn.btn-color-primary:focus-visible,
.wpcf7-form-control.wpcf7-submit:focus-visible{
  outline:none;
  box-shadow:var(--hz-focus) !important;
}

/* --- Accent de titre : mot souligné Woodmart → mot en rouge braise --- */
.wd-underline-colored u{
  text-decoration:none !important;
  background:none !important;
  color:var(--hz-red) !important;
  padding:0;
}


/* ================================================================
   01 — HERO (elementor-element-7cece0e9)
   Photo de bois sous voile charbon + halo braise (charte §10).
   H1 Staatliches avec texture usée (seul titre texturé du site).
   ================================================================ */

.elementor-element-7cece0e9{
  position:relative;
  overflow:hidden;
  padding:96px 48px !important;
}
.elementor-element-7cece0e9::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(circle at 85% 100%, rgba(194,59,34,0.34) 0%, rgba(194,59,34,0) 55%),
    linear-gradient(rgba(35,31,32,0.84), rgba(35,31,32,0.84));
  z-index:0;
}
.elementor-element-2e159367{
  position:relative; z-index:1;
  max-width:660px;
}

.elementor-element-1d4e5dbb .woodmart-title-container.title{
  font-size:clamp(40px, 5.4vw, 64px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.03em !important;
  color:var(--hz-white) !important;
  -webkit-mask-image:var(--hz-grunge);
          mask-image:var(--hz-grunge);
  -webkit-mask-size:240px 240px;
          mask-size:240px 240px;
}

.elementor-element-60a77b2d .wd-text-block{ margin-top:20px !important; }
.elementor-element-60a77b2d .wd-text-block p{
  font-size:16px !important;
  line-height:1.6 !important;
  color:var(--hz-on-dark) !important;
  max-width:540px;
}

.elementor-element-6b13e009{ margin-top:30px !important; position:relative; z-index:1; }

@media(max-width:1024px){
  .elementor-element-7cece0e9{ padding:80px 40px !important; }
}
@media(max-width:767px){
  .elementor-element-7cece0e9{ padding:56px 24px !important; }
}
@media(max-width:480px){
  .elementor-element-7cece0e9{ padding:48px 18px !important; }
  .elementor-element-60a77b2d .wd-text-block p{ font-size:15px !important; }
}


/* ================================================================
   03 — PRODUITS ACCUEIL : conteneur (elementor-element-223b89e9)
   En-tête (widget titre 4e8e1fe1) + grille produits (48b9de85).
   Bande crème encadrée de deux filets, en-tête aligné à gauche :
   eyebrow rouge injecté → titre Staatliches → trait braise.
   Carte produit → section 11 ; finitions → section 12.
   ================================================================ */

.elementor-element-223b89e9{
  position:relative;
  padding:96px 0 104px;
  background:var(--hz-cream);
  border-top:1px solid var(--hz-line);
  border-bottom:1px solid var(--hz-line);
}

/* --- En-tête --- */
.elementor-element-223b89e9 .e-con-inner > .elementor-element-4e8e1fe1{
  margin-bottom:44px !important;
}
.elementor-element-4e8e1fe1::before{
  content:var(--hz-txt-products-eyebrow);
  display:block;
  margin-bottom:12px;
  font-family:var(--hz-font-label) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase;
  color:var(--hz-red) !important;
}
.elementor-element-4e8e1fe1 .liner-continer{ max-width:760px; }
.elementor-element-4e8e1fe1 .liner-continer::after{
  content:"";
  display:block;
  width:64px;
  height:3px;
  margin-top:20px;
  background:var(--hz-red);
}

/* --- Grille (widget 48b9de85) : la largeur d'écart inline de
   Woodmart (20px / 10px) est remplacée ici --- */
.elementor-element-48b9de85 .products{
  --wd-gap-lg:28px !important;
  --wd-gap-sm:14px !important;
}

@media(max-width:1024px){
  .elementor-element-223b89e9{ padding:72px 0 80px; }
  .elementor-element-48b9de85 .products{ --wd-gap-lg:20px !important; }
}
@media(max-width:767px){
  .elementor-element-223b89e9{ padding:52px 0 56px; }
  .elementor-element-223b89e9 .e-con-inner > .elementor-element-4e8e1fe1{ margin-bottom:28px !important; }
  .elementor-element-4e8e1fe1 .liner-continer::after{ width:48px; margin-top:14px; }
}
@media(max-width:480px){
  .elementor-element-223b89e9{ padding:44px 0 48px; }
  .elementor-element-4e8e1fe1::before{ font-size:12px !important; letter-spacing:.18em !important; }
}


/* ================================================================
   04 — BLOC "UNSERE GESCHICHTE" (accueil)
   Widget Custom HTML elementor-element-d727e39, dans 795b34e.
   Tout est scopé sous .bh-story : aucun :root, body ni hX global.
   Disposition : en-tête 2 colonnes → image panoramique + tampon
   rond incliné (1 seul par page, charte §5) → 3 piliers qui
   chevauchent le bas de l'image → CTA rouge.
   ================================================================ */

.bh-story{
  background:var(--hz-cream);
  padding:88px 0;
  color:var(--hz-ink);
  font-family:var(--hz-font-text);
}

.bh-story__inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 32px;
}

/* --- En-tête : titre à gauche, texte à droite --- */
.bh-story__head{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:end;
  margin-bottom:64px;
}
.bh-story .bh-story__eyebrow{
  margin:0 0 14px;
  font-family:var(--hz-font-label);
  font-size:13px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--hz-red);
}
.bh-story .bh-story__title{
  margin:0;
  font-family:var(--hz-font-title);
  font-size:clamp(30px, 3.6vw, 44px);
  font-weight:400;
  line-height:1.05;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-story__accent{ color:var(--hz-red); }

.bh-story__text p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.65;
  color:var(--hz-grey);
}
.bh-story__text p:last-child{ margin-bottom:0; }
.bh-story__text strong{ color:var(--hz-ink); font-weight:600; }

/* --- Image panoramique + tampon --- */
.bh-story__media{
  position:relative;
  margin:0;
}
.bh-story__frame{
  aspect-ratio:21/9;
  border-radius:var(--hz-radius-block);
  overflow:hidden;
  background:var(--hz-charcoal-2);
}
.bh-story__img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Tampon rond charte §5 : double cercle charbon, incliné, texturé */
.bh-story__sticker{
  position:absolute;
  top:-48px;
  right:48px;
  width:140px;
  height:140px;
  border-radius:50%;
  background:var(--hz-cream);
  border:3px solid var(--hz-charcoal);
  outline:2px solid var(--hz-charcoal);
  outline-offset:-10px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:18px;
  transform:rotate(-7deg);
  -webkit-mask-image:var(--hz-grunge);
          mask-image:var(--hz-grunge);
  -webkit-mask-size:240px 240px;
          mask-size:240px 240px;
}
.bh-story__sticker span{
  font-family:var(--hz-font-title);
  font-size:19px;
  font-weight:400;
  line-height:1.05;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-charcoal);
}

/* --- 3 piliers qui chevauchent le bas de l'image --- */
.bh-story__pillars{
  list-style:none;
  margin:-72px 0 0;
  padding:0 32px;
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
.bh-story__pillar{
  margin:0;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-card);
  padding:28px;
  box-shadow:0 10px 24px rgba(35,31,32,0.08);
}
.bh-story__pillar-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:18px;
}
.bh-story__icon{
  width:48px;
  height:48px;
  border-radius:50%;
  background:var(--hz-red);
  display:flex;
  align-items:center;
  justify-content:center;
}
.bh-story__icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:var(--hz-white);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bh-story__num{
  font-family:var(--hz-font-title);
  font-size:32px;
  font-weight:400;
  line-height:1;
  color:var(--hz-canvas);
}
.bh-story .bh-story__pillar-title{
  margin:0 0 8px;
  font-family:var(--hz-font-title);
  font-size:22px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-story__pillar p{
  margin:0;
  font-size:14px;
  line-height:1.6;
  color:var(--hz-grey);
}

/* --- CTA --- */
.bh-story__cta{
  margin-top:48px;
  text-align:center;
}
.bh-story a.bh-story__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 30px;
  border-radius:var(--hz-radius-btn);
  background:var(--hz-red);
  border:2px solid var(--hz-red);
  color:var(--hz-white);
  font-family:var(--hz-font-label);
  font-size:14px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background-color .15s ease, border-color .15s ease;
}
.bh-story a.bh-story__btn:hover,
.bh-story a.bh-story__btn:focus-visible{
  background:var(--hz-red-dark);
  border-color:var(--hz-red-dark);
  color:var(--hz-white);
}
.bh-story a.bh-story__btn:focus-visible{
  outline:3px solid rgba(194,59,34,0.35);
  outline-offset:3px;
}

/* --- Responsive --- */
@media(max-width:1024px){
  .bh-story__head{ grid-template-columns:1fr; gap:20px; margin-bottom:56px; }
  .bh-story__frame{ aspect-ratio:16/9; }
  .bh-story__sticker{ width:116px; height:116px; top:-36px; right:24px; padding:14px; }
  .bh-story__sticker span{ font-size:16px; }
  .bh-story__pillars{ grid-template-columns:1fr; margin-top:-40px; padding:0 20px; gap:16px; }
}
@media(max-width:767px){
  .bh-story{ padding:48px 0; }
  .bh-story__inner{ padding:0 20px; }
  .bh-story__frame{ aspect-ratio:4/3; }
  .bh-story__sticker{ width:100px; height:100px; top:-28px; right:12px; padding:12px; outline-offset:-8px; }
  .bh-story__sticker span{ font-size:14px; }
  .bh-story__pillars{ margin-top:16px; padding:0; }
  .bh-story__pillar{ padding:22px; }
}
@media(max-width:480px){
  .bh-story__inner{ padding:0 16px; }
  .bh-story__text p{ font-size:14.5px; }
  .bh-story a.bh-story__btn{ width:100%; }
}
@media(prefers-reduced-motion:reduce){
  .bh-story a.bh-story__btn{ transition:none; }
}


/* ================================================================
   05 — CATÉGORIES / CARROUSEL (elementor-element-69e71f33)
   Vignettes rondes, double liseré charbon + rouge, libellé
   Staatliches dessous (charte §6).
   ================================================================ */

.elementor-element-69e71f33{
  padding:88px 0;
  background:var(--hz-cream);
  text-align:center;
}

.elementor-element-1824e666 .title-subtitle{
  font-family:var(--hz-font-label) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase;
  color:var(--hz-red) !important;
}
.elementor-element-1824e666 .woodmart-title-container.title{
  margin-top:8px;
  font-size:clamp(28px, 3.2vw, 36px) !important;
  font-weight:400 !important;
  line-height:1.1 !important;
  color:var(--hz-ink) !important;
}
.elementor-element-1824e666 .title-after_title p{
  color:var(--hz-grey) !important;
  font-size:15px !important;
  max-width:480px; margin:12px auto 0;
}

.elementor-element-22060079 .wd-cat-inner{
  background:transparent !important;
  border:none;
  border-radius:0;
  overflow:visible;
}
.elementor-element-22060079 .wd-cat-thumb{
  width:min(200px, 72%);
  aspect-ratio:1/1;
  margin:6px auto 18px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid var(--hz-charcoal);
  box-shadow:0 0 0 3px var(--hz-cream), 0 0 0 5px var(--hz-red);
  background:var(--hz-charcoal-2);
}
.elementor-element-22060079 .wd-cat-image,
.elementor-element-22060079 .wd-cat-image img{
  display:block; width:100%; height:100%;
}
.elementor-element-22060079 .wd-cat-image img{
  object-fit:cover;
  transition:transform .35s ease;
}
.elementor-element-22060079 .wd-cat-inner:hover .wd-cat-image img{ transform:scale(1.05); }

.elementor-element-22060079 .wd-cat-content{
  position:static !important;
  background:none !important;
  transform:none !important;
  opacity:1 !important;
  padding:0 !important;
}
.elementor-element-22060079 .wd-cat-content .wd-entities-title{
  font-family:var(--hz-font-title) !important;
  font-size:20px !important;
  font-weight:400 !important;
  letter-spacing:.04em !important;
  color:var(--hz-ink) !important;
  margin-bottom:4px;
}
.elementor-element-22060079 .wd-cat-count a{
  font-family:var(--hz-font-label) !important;
  font-size:12px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase;
  color:var(--hz-grey) !important;
  border-bottom:1px solid rgba(194,59,34,0.6);
}
.elementor-element-22060079 .wd-cat-inner:hover .wd-cat-count a{
  color:var(--hz-ink) !important;
  border-color:var(--hz-red);
}

/* Flèches de carrousel (tous carrousels) */
.wd-btn-arrow{
  background:var(--hz-white) !important;
  border:1.5px solid var(--hz-charcoal) !important;
  border-radius:50%;
}
.wd-btn-arrow .wd-arrow-inner{ border-color:var(--hz-charcoal) !important; }
.wd-btn-arrow:hover{ background:var(--hz-charcoal) !important; }
.wd-btn-arrow:hover .wd-arrow-inner{ border-color:var(--hz-white) !important; }
.wd-btn-arrow.wd-disabled{ border-color:var(--hz-line) !important; opacity:.5; }
.wd-btn-arrow.wd-disabled .wd-arrow-inner{ border-color:var(--hz-line) !important; }

@media(max-width:767px){
  .elementor-element-69e71f33{ padding:48px 0; }
  .elementor-element-22060079 .wd-cat-content .wd-entities-title{ font-size:18px !important; }
}


/* ================================================================
   07 — CONTACT / FAQ CARTE (elementor-element-451304d8)
   ================================================================ */

.elementor-element-451304d8{
  max-width:680px;
  margin:0 auto 88px;
  padding:56px 48px;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-block);
  position:relative; overflow:hidden; text-align:center;
}
.elementor-element-451304d8::before{
  content:"";
  position:absolute; top:-90px; right:-90px; width:220px; height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(194,59,34,0.16) 0%, rgba(194,59,34,0) 70%);
}
.elementor-element-451304d8::after{
  content:"";
  position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:64px; height:3px; background:var(--hz-red);
}

.elementor-element-10093a39,
.elementor-element-293ca0c9{ position:relative; z-index:1; }

.elementor-element-293ca0c9 .wd-text-block p{
  font-size:15px !important; color:var(--hz-grey) !important; margin-top:14px;
}
.elementor-element-293ca0c9 .wd-text-block p strong,
.elementor-element-293ca0c9 .wd-text-block p span{
  color:var(--hz-ink) !important; font-weight:700 !important;
}
.elementor-element-e7a72fb{ position:relative; z-index:1; margin-top:30px; }

@media(max-width:767px){
  .elementor-element-451304d8{ padding:40px 24px; margin:0 16px 48px; }
}
@media(max-width:480px){
  .elementor-element-451304d8{ padding:32px 18px; margin:0 12px 48px; }
}


/* ================================================================
   08 — WIDGET "MON COMPTE" (header)
   Charte : header sur fond noir charbon → lien en blanc,
   survol rouge braise, menu déroulant clair.
   ================================================================ */

.wd-header-my-account > a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--hz-white) !important;
  transition:color .15s ease;
}
.wd-header-my-account .wd-tools-text{
  font-family:var(--hz-font-label) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:var(--hz-white) !important;
}
.wd-header-my-account > a:hover,
.wd-header-my-account > a:hover .wd-tools-text{
  color:var(--hz-red) !important;
}

.wd-header-my-account > a::before{
  content:"";
  width:17px; height:17px;
  flex-shrink:0;
  background-color:var(--hz-white);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 3.5-7 8-7s8 3 8 7' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 3.5-7 8-7s8 3 8 7' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-size:contain; mask-size:contain;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  transition:background-color .15s ease;
}
.wd-header-my-account > a:hover::before{ background-color:var(--hz-red); }

/* Menu déroulant */
.wd-header-my-account .wd-dropdown-my-account,
.wd-header-my-account .wd-dropdown-my-account.color-scheme-dark{
  background:var(--hz-white) !important;
  color:var(--hz-ink) !important;
  border:1px solid var(--hz-line) !important;
  border-top:3px solid var(--hz-red) !important;
  border-radius:var(--hz-radius-btn) !important;
  box-shadow:0 12px 28px rgba(35,31,32,0.16) !important;
  padding:8px !important;
  min-width:220px;
}
.wd-header-my-account .wd-sub-menu{ list-style:none; margin:0 !important; padding:0 !important; }
.wd-header-my-account .wd-sub-menu li{ border-bottom:1px solid var(--hz-line); }
.wd-header-my-account .wd-sub-menu li:last-child{ border-bottom:none; }
.wd-header-my-account .wd-sub-menu a{
  display:block;
  padding:11px 14px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  color:var(--hz-ink) !important;
  border-radius:var(--hz-radius-btn);
  transition:background-color .15s ease, color .15s ease;
}
.wd-header-my-account .wd-sub-menu a:hover{
  background:var(--hz-cream) !important;
  color:var(--hz-red-dark) !important;
}
.wd-header-my-account .woocommerce-MyAccount-navigation-link--customer-logout a{
  color:var(--hz-grey) !important;
}
.wd-header-my-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover{
  color:var(--hz-red) !important;
}


/* ================================================================
   09 — PAGE CONTACT (elementor-421)
   ================================================================ */

.elementor-421{
  background:var(--hz-cream);
  color:var(--hz-ink);
}
.elementor-421 h1,
.elementor-421 h2,
.elementor-421 h3,
.elementor-421 h4,
.elementor-421 .woodmart-title-container.title{
  color:var(--hz-ink) !important;
}

/* --- Bloc adresse --- */
.elementor-element-1766b36{ border-bottom:1px solid var(--hz-line); }
.elementor-element-183ef740 img{
  border-radius:var(--hz-radius-block);
  border:1px solid var(--hz-line);
}
.elementor-element-10bd660c .wd-text-block p{
  font-size:15px !important;
  color:var(--hz-grey) !important;
  margin:0 0 6px !important;
  line-height:1.7;
}
.elementor-element-10bd660c .wd-text-block p strong{
  color:var(--hz-ink) !important;
  font-weight:700 !important;
}

/* --- Formulaire de contact (Contact Form 7) --- */
.elementor-element-704f020d .woodmart-title-container.title{
  margin-bottom:24px !important;
  font-size:clamp(28px, 3.2vw, 36px) !important;
  font-weight:400 !important;
  line-height:1.1 !important;
  color:var(--hz-ink) !important;
}

.wpcf7-form label{
  display:block;
  font-family:var(--hz-font-label);
  font-size:12px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--hz-ink);
  margin-bottom:6px;
}
.wpcf7-form-control.wpcf7-text,
.wpcf7-form-control.wpcf7-email,
.wpcf7-form-control.wpcf7-tel,
.wpcf7-form-control.wpcf7-textarea{
  width:100% !important;
  font-family:var(--hz-font-text) !important;
  font-size:14.5px !important;
  color:var(--hz-ink) !important;
  background:var(--hz-white) !important;
  border:1px solid var(--hz-line) !important;
  border-radius:var(--hz-radius-btn) !important;
  padding:12px 14px !important;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.wpcf7-form-control:focus{
  outline:none !important;
  border-color:var(--hz-red) !important;
  box-shadow:0 0 0 3px rgba(194,59,34,0.18) !important;
}
.wpcf7-form-control.wpcf7-textarea{ min-height:140px; resize:vertical; }
/* bouton d'envoi : voir "Composants partagés" */
.wpcf7-not-valid-tip{
  color:var(--hz-red-dark) !important;
  font-size:12.5px !important;
  margin-top:4px;
}
.wpcf7-response-output{
  border-radius:var(--hz-radius-btn) !important;
  border-color:var(--hz-line) !important;
  color:var(--hz-ink) !important;
  font-size:14px !important;
}

/* --- FAQ (widget HTML) --- */
.elementor-element-a823536 .faq-section{ background:transparent; padding:0 0 64px; }
.elementor-element-a823536 .faq-wrap{ max-width:100%; padding:0; }
.elementor-element-a823536 .faq-eyebrow{
  display:inline-block;
  margin-bottom:14px;
  font-family:var(--hz-font-label) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase;
  color:var(--hz-red) !important;
}
.elementor-element-a823536 .faq-title{
  margin:0 0 10px;
  font-size:clamp(28px, 3.2vw, 36px) !important;
  font-weight:400 !important;
  line-height:1.1 !important;
  color:var(--hz-ink) !important;
}
.elementor-element-a823536 .faq-lead{
  font-size:15px; color:var(--hz-grey); margin:0 0 32px; max-width:520px;
}
.elementor-element-a823536 .faq-list{ display:flex; flex-direction:column; gap:12px; }
.elementor-element-a823536 .faq-item{
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-card);
  background:var(--hz-white);
  overflow:hidden;
  transition:border-color .2s ease;
}
.elementor-element-a823536 .faq-item[open]{ border-color:var(--hz-red); }
.elementor-element-a823536 .faq-item summary{
  list-style:none; cursor:pointer;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:18px 20px;
  font-weight:700; font-size:15px;
  color:var(--hz-ink);
  transition:color .15s ease;
}
.elementor-element-a823536 .faq-item summary::-webkit-details-marker{ display:none; }
.elementor-element-a823536 .faq-item summary:hover,
.elementor-element-a823536 .faq-item[open] summary{ color:var(--hz-red-dark); }
.elementor-element-a823536 .faq-item summary svg{
  width:19px; height:19px; stroke:var(--hz-charcoal); fill:none; stroke-width:2; flex-shrink:0;
  transition:transform .25s ease, stroke .15s ease;
}
.elementor-element-a823536 .faq-item[open] summary svg{ transform:rotate(180deg); stroke:var(--hz-red); }
.elementor-element-a823536 .faq-answer{ padding:0 20px 20px; }
.elementor-element-a823536 .faq-answer p{
  font-size:14px; color:var(--hz-grey); line-height:1.65; margin:0; max-width:560px;
}
@media (prefers-reduced-motion: no-preference){
  .elementor-element-a823536 .faq-answer{ animation:hz-faq-fade .25s ease; }
}
@keyframes hz-faq-fade{
  from{ opacity:0; transform:translateY(-4px); }
  to{ opacity:1; transform:translateY(0); }
}

/* --- Accordéon Woodmart, même langage visuel --- */
.elementor-element-548c9a41 .wd-accordion{ display:flex; flex-direction:column; gap:12px; }
.elementor-element-548c9a41 .wd-accordion-item{
  border:1px solid var(--hz-line) !important;
  border-radius:var(--hz-radius-card) !important;
  background:var(--hz-white);
  overflow:hidden;
  transition:border-color .2s ease;
}
.elementor-element-548c9a41 .wd-accordion-item.active{ border-color:var(--hz-red) !important; }
.elementor-element-548c9a41 .wd-accordion-title{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:18px 20px !important; cursor:pointer;
}
.elementor-element-548c9a41 .wd-accordion-title-text span{
  font-family:var(--hz-font-text) !important;
  font-weight:700 !important; font-size:15px !important;
  text-transform:none !important;
  color:var(--hz-ink) !important;
}
.elementor-element-548c9a41 .wd-accordion-opener{ position:relative; width:19px; height:19px; flex-shrink:0; }
.elementor-element-548c9a41 .wd-accordion-opener::before,
.elementor-element-548c9a41 .wd-accordion-opener::after{
  content:""; position:absolute; background:var(--hz-charcoal);
  transition:transform .2s ease, background-color .15s ease;
}
.elementor-element-548c9a41 .wd-accordion-opener::before{ left:0; top:50%; width:100%; height:2px; transform:translateY(-50%); }
.elementor-element-548c9a41 .wd-accordion-opener::after{ top:0; left:50%; width:2px; height:100%; transform:translateX(-50%); }
.elementor-element-548c9a41 .wd-accordion-title[aria-expanded="true"] .wd-accordion-opener::after,
.elementor-element-548c9a41 .wd-accordion-item.active .wd-accordion-opener::after{ transform:translateX(-50%) scaleY(0); }
.elementor-element-548c9a41 .wd-accordion-item.active .wd-accordion-opener::before,
.elementor-element-548c9a41 .wd-accordion-item.active .wd-accordion-opener::after{ background:var(--hz-red); }
.elementor-element-548c9a41 .wd-accordion-content{ padding:0 20px 20px !important; }
.elementor-element-548c9a41 .wd-accordion-content p{
  font-size:14px !important; color:var(--hz-grey) !important;
  line-height:1.65; margin:0; max-width:560px;
}

@media(max-width:1024px){
  .elementor-421 > .e-con-boxed{ padding-top:40px !important; padding-bottom:40px !important; }
}
@media(max-width:767px){
  .elementor-element-4840dc53 .woodmart-title-container.title,
  .elementor-element-704f020d .woodmart-title-container.title{ font-size:26px !important; }
}
@media(max-width:480px){
  .elementor-element-a823536 .faq-item summary,
  .elementor-element-548c9a41 .wd-accordion-title{ padding:16px !important; }
  .elementor-element-a823536 .faq-answer,
  .elementor-element-548c9a41 .wd-accordion-content{ padding:0 16px 16px !important; }
}


/* 10 — (libre) */


/* ================================================================
   11 — CARTES PRODUIT (générique : accueil, boutique, catégories)
   Charte §7 : carte blanche, visuel en tête avec ruban rouge, nom
   en Staatliches, prix rouge mis en avant, CTA pleine largeur 4px.
   Tout est scopé sous .wd-product (classe native de la boucle
   Woodmart) pour ne pas toucher les vignettes catégories ni le
   panier.
   Survol "fw-button" de Woodmart : la description se déplie sous
   la carte. Pas d'overflow:hidden sur la carte (il coupait ce
   panneau) ; au survol, c'est le fond natif .wd-product-card-bg
   qui devient la coque et s'allonge jusqu'en bas du panneau.
   ================================================================ */

/* --- Carte : coque --- */
.wd-product{ min-width:0; }       /* évite le débordement des titres longs en grille */
.wd-product .wd-product-wrapper{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  background:var(--hz-white) !important;
  border:1px solid var(--hz-line) !important;
  border-radius:var(--hz-radius-card) !important;
  box-shadow:var(--hz-shadow);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background-color .25s ease;
}
.wd-product .wd-product-wrapper:hover{
  transform:translateY(-6px);
  box-shadow:var(--hz-shadow-hover);
  border-color:var(--hz-red) !important;
}

/* Survol avec panneau dépliant : la coque passe au fond natif */
.wd-product.wd-hover-with-fade:hover{ z-index:5; }
.wd-product.wd-hover-with-fade .wd-product-card-bg{
  top:0 !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  background:var(--hz-white) !important;
  border:1px solid var(--hz-red);
  border-radius:var(--hz-radius-card) !important;
  box-shadow:var(--hz-shadow-hover) !important;
}
.wd-product.wd-hover-with-fade:hover .wd-product-card-bg{
  bottom:calc(var(--wd-prod-card-b-sp, 0px) * -1) !important;
  opacity:1 !important;
  visibility:visible !important;
}
.wd-product.wd-hover-with-fade:hover .wd-product-wrapper{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none;
}

/* --- Visuel : carré plein cadre --- */
.wd-product .wd-product-thumb{
  position:relative;
  padding:0 !important;
  background:var(--hz-cream-2) !important;
  border-radius:calc(var(--hz-radius-card) - 1px) calc(var(--hz-radius-card) - 1px) 0 0;
}
.wd-product .wd-product-img-link,
.wd-product .wd-product-img-hover{
  overflow:hidden;
  border-radius:inherit;
}
.wd-product .wd-product-thumb img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  object-fit:cover;
  transition:transform .45s ease;
}
.wd-product .wd-product-wrapper:hover .wd-product-thumb img{ transform:scale(1.05); }

/* Léger dégradé charbon en pied de photo (charte §7) */
.wd-product .wd-product-thumb::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:42%;
  background:linear-gradient(0deg, rgba(35,31,32,0.16), rgba(35,31,32,0));
  pointer-events:none;
  z-index:1;
}

/* --- Actions rapides : colonne à droite, révélée au survol --- */
.wd-product .wd-buttons.wd-pos-r-t{
  top:12px !important;
  right:12px !important;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:8px;
  opacity:0;
  transform:translateX(8px);
  transition:opacity .2s ease, transform .2s ease;
}
.wd-product .wd-product-wrapper:hover .wd-buttons.wd-pos-r-t{ opacity:1; transform:translateX(0); }
.wd-product .wd-action-btn .wd-action-icon{
  width:36px !important;
  height:36px !important;
  border-radius:50% !important;
  background:var(--hz-white) !important;
  border:1px solid var(--hz-line) !important;
  box-shadow:0 2px 8px rgba(35,31,32,0.12);
  transition:background-color .15s ease, border-color .15s ease;
}
.wd-product .wd-action-btn:hover .wd-action-icon{
  border-color:var(--hz-red) !important;
  background:var(--hz-red) !important;
}
.wd-product .wd-action-btn:hover .wd-action-icon::before,
.wd-product .wd-action-btn:hover .wd-action-icon::after{ color:var(--hz-white) !important; }

/* --- Fiche : étiquette → nom → prix → bouton (calés en bas) --- */
.wd-product .product-element-bottom{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:18px 18px 20px !important;
}

.wd-product .wd-product-cats{
  order:-1;
  margin:0 0 10px !important;
}

.wd-product .wd-entities-title{ margin:0 0 14px !important; }
.wd-product .wd-entities-title a{
  display:-webkit-box !important;
  -webkit-line-clamp:2;          /* 2 lignes max */
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:2.2em;
  font-family:var(--hz-font-title) !important;
  font-size:20px !important;
  font-weight:400 !important;
  line-height:1.1 !important;
  letter-spacing:.03em;
  color:var(--hz-ink) !important;
  transition:color .15s ease;
}
.wd-product .wd-entities-title a:hover{ color:var(--hz-red-dark) !important; }

/* --- Étiquette catégorie : contour 4px, Oswald espacé --- */
.wd-product .wd-product-cats a{
  display:inline-block !important;
  padding:3px 10px !important;
  border:1px solid var(--hz-red) !important;
  border-radius:var(--hz-radius-btn) !important;
  font-family:var(--hz-font-label) !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:var(--hz-red) !important;
  transition:background-color .15s ease, color .15s ease;
}
.wd-product .wd-product-cats a:hover{
  background:var(--hz-red) !important;
  color:var(--hz-white) !important;
}

/* --- Prix : Staatliches rouge grand format (charte §7 et §12),
   séparé par un pointillé, poussé en bas pour aligner les cartes --- */
.wd-product .wrap-price{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:2px 10px;
  margin:auto 0 14px !important;
  padding-top:14px;
  border-top:1px dashed var(--hz-line);
}
.wd-product .price .woocommerce-Price-amount{
  font-family:var(--hz-font-title) !important;
  font-size:30px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.02em;
  color:var(--hz-red) !important;
}
.wd-product .price .woocommerce-Price-currencySymbol{
  font-size:.7em;
  margin-left:1px;
}

/* --- Bouton panier : pleine largeur, charbon → rouge au survol
   de la carte (charte §7 : "Ajouter au panier" = bouton sombre) --- */
.wd-product .wd-add-btn.wd-add-btn-replace{ width:100%; }
.wd-product .wd-add-btn .add-to-cart-loop{
  width:100% !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:13px 12px !important;
  background:var(--hz-charcoal) !important;
  border:none !important;
  border-radius:var(--hz-radius-btn) !important;
  color:var(--hz-white) !important;
  font-family:var(--hz-font-label) !important;
  font-weight:600 !important;
  font-size:12px !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  transition:background-color .2s ease;
}
.wd-product .wd-product-wrapper:hover .wd-add-btn .add-to-cart-loop{ background:var(--hz-red) !important; }
.wd-product .wd-product-wrapper .wd-add-btn .add-to-cart-loop:hover{ background:var(--hz-red-dark) !important; }
.wd-product .wd-product-wrapper .wd-add-btn .add-to-cart-loop:focus-visible{
  outline:none;
  box-shadow:var(--hz-focus) !important;
}
.wd-product .wd-add-btn .add-to-cart-loop .wd-action-text,
.wd-product .wd-add-btn .add-to-cart-loop .wd-action-icon{ color:var(--hz-white) !important; }

/* --- Panneau description (déplié au survol) --- */
.wd-product .wd-product-card-hover{
  background:transparent !important;
  border-top:none !important;
}
.wd-product .hover-content-wrap{
  margin-top:14px;
  padding-top:14px;
  background:transparent !important;
  border-top:1px dashed var(--hz-line) !important;
}
.wd-product .hover-content-inner p{
  margin:0 0 8px;
  font-size:12.5px !important;
  line-height:1.55 !important;
  color:var(--hz-grey) !important;
}
.wd-product .hover-content-inner p:last-child{ margin-bottom:0; }
.wd-product .hover-content-inner p strong{ color:var(--hz-ink) !important; font-weight:700 !important; }
.wd-product .wd-more-desc-btn{
  border:1px solid var(--hz-line) !important;
  border-radius:50% !important;
  background:var(--hz-white) !important;
  transition:border-color .15s ease;
}
.wd-product .wd-more-desc-btn:hover{ border-color:var(--hz-red) !important; }

/* --- Responsive --- */
@media(max-width:1024px){
  .wd-product .wd-entities-title a{ font-size:19px !important; }
  .wd-product .price .woocommerce-Price-amount{ font-size:27px !important; }
}
@media(max-width:767px){
  .wd-product .product-element-bottom{ padding:14px 14px 16px !important; }
  .wd-product .wd-entities-title{ margin-bottom:10px !important; }
  .wd-product .wd-entities-title a{ font-size:17px !important; }
  .wd-product .price .woocommerce-Price-amount{ font-size:24px !important; }
  .wd-product .wrap-price{ padding-top:10px; margin-bottom:12px !important; }
  .wd-product .wd-action-btn .wd-action-icon{ width:32px !important; height:32px !important; }
  .wd-product .wd-buttons.wd-pos-r-t{ top:8px !important; right:8px !important; gap:6px; }
}
@media(max-width:480px){
  .wd-product .product-element-bottom{ padding:12px 10px 12px !important; }
  .wd-product .wd-product-cats a{ font-size:9.5px !important; letter-spacing:.1em !important; padding:2px 7px !important; }
  .wd-product .wd-entities-title a{ font-size:15.5px !important; }
  .wd-product .price .woocommerce-Price-amount{ font-size:21px !important; }
  .wd-product .wd-add-btn .add-to-cart-loop{ padding:11px 6px !important; font-size:10.5px !important; letter-spacing:.08em !important; }
  .wd-product .wd-compare-btn{ display:none !important; }
}

/* Écrans tactiles : pas de survol → actions visibles, pas de saut */
@media(hover:none){
  .wd-product .wd-buttons.wd-pos-r-t{ opacity:1; transform:none; }
  .wd-product .wd-product-wrapper:hover{ transform:none; }
  .wd-product .wd-product-wrapper:hover .wd-product-thumb img{ transform:none; }
}
@media(prefers-reduced-motion:reduce){
  .wd-product .wd-product-wrapper,
  .wd-product .wd-product-thumb img,
  .wd-product .wd-buttons.wd-pos-r-t{ transition:none; }
  .wd-product .wd-product-wrapper:hover{ transform:none; }
}


/* ================================================================
   12 — FINITIONS CARTES PRODUIT (complète la section 11)
   ================================================================ */

/* --- Ruban livraison (charte §7 : ruban rouge collé à gauche,
   encoche en pointe) — s'affiche sur TOUS les produits. --- */
.wd-product .wd-product-thumb::before{
  content:var(--hz-txt-delivery-badge);
  position:absolute;
  top:14px; left:0;
  z-index:2;
  background:var(--hz-red);
  color:var(--hz-white);
  font-family:var(--hz-font-label);
  font-size:11px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.16em;
  text-transform:uppercase;
  padding:4px 18px 4px 14px;
  clip-path:polygon(0 0, 100% 0, calc(100% - 8px) 50%, 100% 100%, 0 100%);
  pointer-events:none;
}

/* --- Étiquette catégorie : une teinte par essence --- */
.wd-product.product_cat-buche .wd-product-cats a{
  border-color:var(--hz-red) !important;
  color:var(--hz-red) !important;
}
.wd-product.product_cat-buche .wd-product-cats a:hover{ background:var(--hz-red) !important; color:var(--hz-white) !important; }

.wd-product.product_cat-eiche .wd-product-cats a{
  border-color:var(--hz-red-dark) !important;
  color:var(--hz-red-dark) !important;
}
.wd-product.product_cat-eiche .wd-product-cats a:hover{ background:var(--hz-red-dark) !important; color:var(--hz-white) !important; }

.wd-product.product_cat-birke .wd-product-cats a{
  border-color:var(--hz-charcoal-2) !important;
  color:var(--hz-charcoal-2) !important;
}
.wd-product.product_cat-birke .wd-product-cats a:hover{ background:var(--hz-charcoal-2) !important; color:var(--hz-white) !important; }

.wd-product.product_cat-mischholz .wd-product-cats a{
  border-color:var(--hz-charcoal) !important;
  color:var(--hz-charcoal) !important;
}
.wd-product.product_cat-mischholz .wd-product-cats a:hover{ background:var(--hz-charcoal) !important; color:var(--hz-white) !important; }

/* --- Mention TVA, alignée sur la ligne du prix --- */
.wd-product .wrap-price::after{
  content:var(--hz-txt-vat);
  font-family:var(--hz-font-label);
  font-size:11px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--hz-grey);
}

@media(max-width:767px){
  .wd-product .wd-product-thumb::before{ top:10px; font-size:9.5px; letter-spacing:.12em; padding:3px 14px 3px 10px; }
}
@media(max-width:480px){
  .wd-product .wd-product-thumb::before{ font-size:8.5px; letter-spacing:.08em; padding:3px 12px 3px 8px; clip-path:polygon(0 0, 100% 0, calc(100% - 6px) 50%, 100% 100%, 0 100%); }
  .wd-product .wrap-price::after{ font-size:9.5px; }
}


/* ================================================================
   13 — BLOC INFOS FOOTER (elementor-element-662b0188)
   Fond noir charbon (footer = fond sombre autorisé par la charte),
   icônes blanches dans des pastilles rouges.
   Icônes dessinées en SVG intégré : plus aucune dépendance à un
   domaine externe.
   ================================================================ */

.elementor-element-662b0188{
  background:var(--hz-charcoal);
  padding:44px 32px;
  display:flex;
  flex-wrap:wrap;
  gap:32px;
}
.elementor-element-45807d76,
.elementor-element-63f8f96b{
  display:flex;
  flex-direction:column;
  gap:24px;
  flex:1;
  min-width:260px;
}

.elementor-element-662b0188 .info-svg-wrapper{
  width:46px !important; height:46px !important;
  border-radius:50%;
  background:var(--hz-red) !important;
  flex-shrink:0;
  position:relative;
}
.elementor-element-662b0188 .info-svg-wrapper img{ opacity:0; }
.elementor-element-662b0188 .info-svg-wrapper::before{
  content:"";
  position:absolute; inset:12px;
  background-color:var(--hz-white);
  -webkit-mask-size:contain; mask-size:contain;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center; mask-position:center;
}
/* Téléphone */
.elementor-element-70d6bd8e .info-svg-wrapper::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='2' width='12' height='20' rx='2'/%3E%3Cpath d='M11 18h2'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='2' width='12' height='20' rx='2'/%3E%3Cpath d='M11 18h2'/%3E%3C/svg%3E");
}
/* Livraison */
.elementor-element-58e9d57e .info-svg-wrapper::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h13v11H1zM14 9h4l3 3v4h-7'/%3E%3Ccircle cx='5.5' cy='18' r='2'/%3E%3Ccircle cx='17.5' cy='18' r='2'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h13v11H1zM14 9h4l3 3v4h-7'/%3E%3Ccircle cx='5.5' cy='18' r='2'/%3E%3Ccircle cx='17.5' cy='18' r='2'/%3E%3C/svg%3E");
}
/* Conseil / chat */
.elementor-element-34a00c64 .info-svg-wrapper::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20.5l1.4-4.8A8 8 0 1 1 21 12z'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20.5l1.4-4.8A8 8 0 1 1 21 12z'/%3E%3C/svg%3E");
}
/* Adresse */
.elementor-element-f904d3b .info-svg-wrapper::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

.elementor-element-662b0188 .info-box-inner p{
  font-size:13.5px !important;
  color:var(--hz-on-dark) !important;
  line-height:1.6;
  margin:0 !important;
}
/* Libellés à couleur inline figée (#333333) : forcés en blanc */
.elementor-element-662b0188 .info-box-inner p span,
.elementor-element-662b0188 .info-box-inner p strong{
  color:var(--hz-white) !important;
  font-weight:700 !important;
}

@media(max-width:1024px){
  .elementor-element-662b0188{ padding:40px 28px; gap:28px; }
}
@media(max-width:767px){
  .elementor-element-662b0188{
    flex-direction:column;
    gap:28px;
    padding:36px 24px;
  }
}
@media(max-width:480px){
  .elementor-element-662b0188{ padding:32px 18px; }
  .elementor-element-45807d76,
  .elementor-element-63f8f96b{ min-width:0; }
}


/* ================================================================
   14 — PAGE DE CONFIRMATION DE COMMANDE (WooCommerce natif)
   ================================================================ */

.woocommerce-order{
  max-width:820px;
  margin:0 auto;
  padding:56px 24px 80px;
  color:var(--hz-ink);
}

/* --- Bandeau de succès --- */
.woocommerce-notice.woocommerce-notice--success{
  display:flex;
  align-items:center;
  gap:14px;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-left:4px solid var(--hz-red);
  border-radius:var(--hz-radius-btn);
  padding:18px 22px;
  font-weight:700;
  font-size:15.5px;
  color:var(--hz-ink);
  margin:0 0 32px;
}
.woocommerce-notice.woocommerce-notice--success::before{
  content:"";
  width:22px; height:22px;
  flex-shrink:0;
  background-color:var(--hz-red);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5'%3E%3Cpath d='M20 6L9 17l-5-5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5'%3E%3Cpath d='M20 6L9 17l-5-5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-size:contain; mask-size:contain;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
}

/* --- Récapitulatif (numéro, date, e-mail, total, paiement) --- */
.woocommerce-order-overview{
  list-style:none;
  margin:0 0 32px;
  padding:24px 28px;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(170px, 1fr));
  gap:20px;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-card);
}
.woocommerce-order-overview li{ display:flex; flex-direction:column; gap:4px; }
.woocommerce-order-overview li span{
  font-family:var(--hz-font-label);
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--hz-grey);
}
.woocommerce-order-overview li strong{
  font-family:var(--hz-font-title);
  font-size:20px;
  font-weight:400;
  letter-spacing:.02em;
  color:var(--hz-ink);
  word-break:break-word;
}

/* --- Note d'instructions --- */
.woocommerce-order > p{
  background:var(--hz-cream-2);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-btn);
  padding:16px 20px;
  font-size:14px;
  color:var(--hz-ink);
  line-height:1.65;
  margin:0 0 24px;
}

/* --- Coordonnées bancaires (action requise) --- */
.woocommerce-bacs-bank-details{
  background:var(--hz-white);
  border:1.5px solid var(--hz-red);
  border-radius:var(--hz-radius-card);
  padding:26px 28px;
  margin:0 0 40px;
}
.wc-bacs-bank-details-heading{ font-size:22px; color:var(--hz-ink); margin:0 0 14px; }
.wc-bacs-bank-details-account-name{
  font-size:13px; font-weight:600; color:var(--hz-grey); margin:0 0 10px;
}
ul.bacs_details{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
ul.bacs_details li{ font-size:14px; color:var(--hz-ink); }
ul.bacs_details li strong{ font-weight:700; color:var(--hz-ink); margin-left:4px; letter-spacing:.02em; }

/* --- Détails de la commande (tableau produits) --- */
.woocommerce-order-details{ margin:0 0 40px; }
.woocommerce-order-details__title{ font-size:26px; color:var(--hz-ink); margin:0 0 16px; }
table.woocommerce-table--order-details{
  width:100%;
  border-collapse:collapse;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-card);
  overflow:hidden;
}
table.woocommerce-table--order-details thead tr{ background:var(--hz-cream-2); }
table.woocommerce-table--order-details th{
  text-align:left;
  font-family:var(--hz-font-label);
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--hz-grey);
  padding:12px 16px;
  border-bottom:1px solid var(--hz-line);
}
table.woocommerce-table--order-details td{
  padding:14px 16px;
  font-size:14px;
  color:var(--hz-ink);
  border-bottom:1px solid var(--hz-line);
}
table.woocommerce-table--order-details tbody tr:last-child td{ border-bottom:none; }
table.woocommerce-table--order-details tfoot th,
table.woocommerce-table--order-details tfoot td{
  padding:12px 16px;
  font-size:14px;
  color:var(--hz-grey);
}
table.woocommerce-table--order-details tfoot tr:last-of-type th,
table.woocommerce-table--order-details tfoot tr:last-of-type td{
  font-weight:700;
  font-size:15px;
  color:var(--hz-ink);
  border-top:1.5px solid var(--hz-charcoal);
}
.woocommerce-table__product-name a{ color:var(--hz-ink); font-weight:600; }
.woocommerce-table__product-name a:hover{ color:var(--hz-red); }
.product-quantity{ color:var(--hz-grey); font-weight:500; margin-left:6px; }

/* --- Adresse de facturation --- */
.woocommerce-customer-details{
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-card);
  padding:24px 28px;
}
.woocommerce-column__title{ font-size:22px; color:var(--hz-ink); margin:0 0 12px; }
.woocommerce-customer-details address{
  font-style:normal;
  font-size:14px;
  color:var(--hz-grey);
  line-height:1.75;
}
.woocommerce-customer-details--phone,
.woocommerce-customer-details--email{ margin:4px 0 0; }

@media(max-width:767px){
  .woocommerce-order{ padding:40px 20px 56px; }
  .woocommerce-order-overview{ padding:20px; }
  .woocommerce-bacs-bank-details,
  .woocommerce-customer-details{ padding:22px 20px; }
}
@media(max-width:480px){
  .woocommerce-order{ padding:32px 14px 48px; }
  table.woocommerce-table--order-details th,
  table.woocommerce-table--order-details td{ padding:10px 12px; font-size:13px; }
}


/* ================================================================
   15 — BARRE DE RÉASSURANCE ACCUEIL (sous le hero)
   Widget Custom HTML .bh-bar (remplace l'ancien conteneur 570ceba).
   Bandeau blanc, filet rouge braise en haut, 4 atouts séparés par
   des filets verticaux. 2×2 sous 1024px, empilé et centré sous 480px.
   ================================================================ */

.bh-bar{
  background:var(--hz-white);
  border-top:4px solid var(--hz-red);
  border-bottom:1px solid var(--hz-line);
  padding:26px 32px;
  font-family:var(--hz-font-text);
}
.bh-bar__list{
  list-style:none;
  max-width:1200px;
  margin:0 auto;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
}
.bh-bar__item{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0;
  padding:4px 24px;
  border-left:1px solid var(--hz-line);
}
.bh-bar__item:first-child{ border-left:none; padding-left:0; }
.bh-bar__item:last-child{ padding-right:0; }

.bh-bar__icon{
  flex-shrink:0;
  width:46px;
  height:46px;
  border-radius:50%;
  background:var(--hz-cream-2);
  display:flex;
  align-items:center;
  justify-content:center;
}
.bh-bar__icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:var(--hz-red);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bh-bar p{ margin:0; }
.bh-bar .bh-bar__title{
  font-family:var(--hz-font-title);
  font-size:18px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-bar .bh-bar__sub{
  margin-top:2px;
  font-size:13px;
  line-height:1.4;
  color:var(--hz-grey);
}

@media(max-width:1024px){
  .bh-bar__list{ grid-template-columns:repeat(2, 1fr); row-gap:20px; }
  .bh-bar__item:nth-child(odd){ border-left:none; padding-left:0; }
  .bh-bar__item:nth-child(2){ padding-right:0; }
}
@media(max-width:767px){
  .bh-bar{ padding:22px 20px; }
  .bh-bar__item{ padding:4px 14px; }
}
@media(max-width:480px){
  .bh-bar{ padding:22px 16px; }
  .bh-bar__list{ column-gap:12px; }
  .bh-bar__item,
  .bh-bar__item:first-child,
  .bh-bar__item:last-child{
    flex-direction:column;
    text-align:center;
    gap:10px;
    padding:0;
    border-left:none;
  }
  .bh-bar .bh-bar__title{ font-size:16px; }
  .bh-bar .bh-bar__sub{ font-size:12px; }
}


/* ================================================================
   16 — BLOCS "QUALITÄT · ABLAUF · LIEFERUNG" (accueil)
   Widget Custom HTML elementor-element-a2d862d.
   Tout est scopé sous .bh-ablauf : aucun :root, body ni hX global.
   Disposition :
     1. Qualität  — intro + chiffre clé Staatliches rouge à gauche,
                    3 atouts en liste à droite (lignes séparées).
     2. Ablauf    — panneau crème, frise horizontale de 4 étapes
                    reliées par un pointillé (verticale sur mobile).
     3. Lieferung — bandeau blanc : icône camion, texte + pastilles,
                    bouton contour charbon.
   ================================================================ */

.bh-ablauf{
  background:var(--hz-white);
  padding:88px 0;
  color:var(--hz-ink);
  font-family:var(--hz-font-text);
}

.bh-ablauf__inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 32px;
  display:flex;
  flex-direction:column;
  gap:88px;
}

/* --- Typo commune --- */
.bh-ablauf .bh-ablauf__eyebrow{
  margin:0 0 14px;
  font-family:var(--hz-font-label);
  font-size:13px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--hz-red);
}
.bh-ablauf .bh-ablauf__title{
  margin:0;
  font-family:var(--hz-font-title);
  font-size:clamp(30px, 3.4vw, 40px);
  font-weight:400;
  line-height:1.05;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-ablauf .bh-ablauf__title--sm{ font-size:clamp(26px, 2.8vw, 32px); }
.bh-ablauf__accent{ color:var(--hz-red); }

.bh-ablauf p{ margin:0; }


/* ================= 1. QUALITÄT ================= */

.bh-ablauf__quality{
  display:grid;
  grid-template-columns:5fr 7fr;
  gap:72px;
  align-items:start;
}

.bh-ablauf__lead{
  margin-top:18px !important;
  font-size:15px;
  line-height:1.65;
  color:var(--hz-grey);
  max-width:440px;
}

/* Chiffre clé en Staatliches rouge grand format (charte §12) */
.bh-ablauf__stat{
  margin-top:32px;
  padding:28px 30px;
  background:var(--hz-cream-2);
  border-radius:var(--hz-radius-block);
  border-left:5px solid var(--hz-red);
}
.bh-ablauf .bh-ablauf__stat-num{
  font-family:var(--hz-font-title);
  font-size:clamp(60px, 7.4vw, 88px);
  font-weight:400;
  line-height:.95;
  color:var(--hz-red);
}
.bh-ablauf__stat-label{
  margin-top:10px !important;
  font-size:14px;
  line-height:1.55;
  color:var(--hz-ink);
  max-width:340px;
}

/* Atouts : lignes séparées par un filet */
.bh-ablauf__features{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--hz-line);
}
.bh-ablauf__feature{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:22px;
  align-items:start;
  margin:0;
  padding:28px 0;
  border-bottom:1px solid var(--hz-line);
}
.bh-ablauf__feature-icon{
  width:56px;
  height:56px;
  border-radius:50%;
  background:var(--hz-red);
  display:flex;
  align-items:center;
  justify-content:center;
}
.bh-ablauf__feature-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:var(--hz-white);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bh-ablauf .bh-ablauf__feature-title{
  margin:4px 0 8px;
  font-family:var(--hz-font-title);
  font-size:24px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-ablauf__feature p{
  font-size:15px;
  line-height:1.6;
  color:var(--hz-grey);
}


/* ================= 2. ABLAUF ================= */

.bh-ablauf__steps-panel{
  background:var(--hz-cream);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-block);
  padding:56px 48px 60px;
}
.bh-ablauf__steps-head{
  text-align:center;
  margin-bottom:48px;
}

.bh-ablauf__steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:28px;
}
.bh-ablauf__step{
  position:relative;
  margin:0;
}
/* Pointillé entre deux étapes */
.bh-ablauf__step::after{
  content:"";
  position:absolute;
  top:28px;
  left:72px;
  right:-14px;
  border-top:2px dashed var(--hz-canvas);
}
.bh-ablauf__step:last-child::after{ display:none; }

.bh-ablauf__step-num{
  position:relative;
  z-index:1;
  width:56px;
  height:56px;
  border-radius:50%;
  background:var(--hz-white);
  border:2px solid var(--hz-red);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  font-family:var(--hz-font-title);
  font-size:26px;
  font-weight:400;
  line-height:1;
  color:var(--hz-red);
}
.bh-ablauf__step:last-child .bh-ablauf__step-num{
  background:var(--hz-red);
  color:var(--hz-white);
}
.bh-ablauf .bh-ablauf__step-title{
  margin:0 0 8px;
  font-family:var(--hz-font-title);
  font-size:21px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--hz-ink);
}
.bh-ablauf__step p{
  font-size:14px;
  line-height:1.6;
  color:var(--hz-grey);
}


/* ================= 3. LIEFERUNG ================= */

.bh-ablauf__delivery{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:36px;
  align-items:center;
  padding:40px 44px;
  background:var(--hz-white);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-block);
  box-shadow:0 10px 28px rgba(35,31,32,0.07);
}
.bh-ablauf__delivery-icon{
  width:88px;
  height:88px;
  border-radius:50%;
  background:var(--hz-cream-2);
  border:2px solid var(--hz-red);
  display:flex;
  align-items:center;
  justify-content:center;
}
.bh-ablauf__delivery-icon svg{
  width:40px;
  height:40px;
  fill:none;
  stroke:var(--hz-red);
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bh-ablauf__delivery-body .bh-ablauf__eyebrow{ margin-bottom:8px; }
.bh-ablauf__delivery-text{
  margin-top:10px !important;
  font-size:15px;
  line-height:1.6;
  color:var(--hz-grey);
  max-width:560px;
}

/* Pastilles de réassurance */
.bh-ablauf__chips{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.bh-ablauf__chips li{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  padding:7px 14px 7px 10px;
  background:var(--hz-cream);
  border:1px solid var(--hz-line);
  border-radius:var(--hz-radius-btn);
  font-size:13px;
  font-weight:600;
  color:var(--hz-ink);
}
.bh-ablauf__chips li::before{
  content:"";
  width:16px;
  height:16px;
  flex-shrink:0;
  background-color:var(--hz-red);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Bouton contour (charte §4 : .btn-outline, 4px, Oswald espacé) */
.bh-ablauf a.bh-ablauf__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  padding:14px 30px;
  border-radius:var(--hz-radius-btn);
  background:transparent;
  border:2px solid var(--hz-charcoal);
  color:var(--hz-charcoal);
  font-family:var(--hz-font-label);
  font-size:14px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background-color .15s ease, color .15s ease;
}
.bh-ablauf a.bh-ablauf__btn:hover,
.bh-ablauf a.bh-ablauf__btn:focus-visible{
  background:var(--hz-charcoal);
  color:var(--hz-white);
}
.bh-ablauf a.bh-ablauf__btn:focus-visible{
  outline:3px solid rgba(194,59,34,0.35);
  outline-offset:3px;
}


/* ================= RESPONSIVE ================= */

@media(max-width:1024px){
  .bh-ablauf__inner{ gap:64px; }
  .bh-ablauf__quality{ grid-template-columns:1fr; gap:40px; }
  .bh-ablauf__lead{ max-width:none; }

  .bh-ablauf__steps-panel{ padding:44px 28px; }
  .bh-ablauf__steps-head{ text-align:left; margin-bottom:32px; }
  .bh-ablauf__steps{ grid-template-columns:1fr; gap:0; }
  .bh-ablauf__step{
    display:grid;
    grid-template-columns:56px 1fr;
    column-gap:20px;
    padding-bottom:28px;
  }
  .bh-ablauf__step:last-child{ padding-bottom:0; }
  .bh-ablauf__step-num{ grid-row:1 / span 2; margin-bottom:0; }
  .bh-ablauf .bh-ablauf__step-title{ margin-top:14px; }
  .bh-ablauf__step::after{
    top:60px;
    bottom:4px;
    left:27px;
    right:auto;
    border-top:none;
    border-left:2px dashed var(--hz-canvas);
  }

  .bh-ablauf__delivery{ grid-template-columns:auto 1fr; }
  .bh-ablauf__delivery .bh-ablauf__btn{ grid-column:2; justify-self:start; }
}

@media(max-width:767px){
  .bh-ablauf{ padding:48px 0; }
  .bh-ablauf__inner{ padding:0 20px; gap:48px; }
  .bh-ablauf__feature{ grid-template-columns:44px 1fr; gap:16px; padding:22px 0; }
  .bh-ablauf__feature-icon{ width:44px; height:44px; }
  .bh-ablauf__feature-icon svg{ width:20px; height:20px; }
  .bh-ablauf .bh-ablauf__feature-title{ font-size:21px; margin-top:2px; }
  .bh-ablauf__feature p{ font-size:14px; }
  .bh-ablauf__stat{ padding:22px 24px; }

  .bh-ablauf__steps-panel{ padding:36px 20px; }

  .bh-ablauf__delivery{ grid-template-columns:1fr; gap:20px; padding:28px 22px; }
  .bh-ablauf__delivery-icon{ width:64px; height:64px; }
  .bh-ablauf__delivery-icon svg{ width:30px; height:30px; }
  .bh-ablauf__delivery .bh-ablauf__btn{ grid-column:1; justify-self:stretch; }
}

@media(max-width:480px){
  .bh-ablauf__inner{ padding:0 16px; }
  .bh-ablauf__steps-panel{ padding:30px 16px; }
  .bh-ablauf__delivery{ padding:24px 16px; }
  .bh-ablauf__chips li{ font-size:12px; }
  .bh-ablauf a.bh-ablauf__btn{ white-space:normal; text-align:center; }
}

@media(prefers-reduced-motion:reduce){
  .bh-ablauf a.bh-ablauf__btn{ transition:none; }
}


/* ================================================================
   17 — PAGE ÜBER UNS (elementor-419, widget d4f4ba2)
   ⚠ PATCH TEMPORAIRE. Ce widget est entièrement en styles inline.
   Les sélecteurs [style*="…"] ciblent les valeurs écrites dans le
   HTML du widget (ancienne palette) pour les remplacer par celles
   de la charte. Le CSS ne peut PAS reprendre les couleurs de texte
   inline déclarées avec !important (titres verts, textes gris-vert).
   Solution définitive : réécrire le HTML de ce widget avec des
   classes .bh-*.
   ================================================================ */

/* Polices */
.elementor-element-d4f4ba2 [style*="Work Sans"]{ font-family:var(--hz-font-text) !important; }
.elementor-element-d4f4ba2 [style*="Bitter"]{
  font-family:var(--hz-font-title) !important;
  font-weight:400 !important;
  text-transform:uppercase;
  letter-spacing:.03em;
}

/* Fonds de section */
.elementor-element-d4f4ba2 section[style*="background:#24401E"]{ background:var(--hz-charcoal) !important; }
.elementor-element-d4f4ba2 section[style*="background:#FBF9F4"]{ background:var(--hz-cream) !important; }
.elementor-element-d4f4ba2 div[style*="rgba(36,64,30"]{ background:rgba(35,31,32,0.92) !important; }

/* Bordures */
.elementor-element-d4f4ba2 [style*="#E6E2D5"]{ border-color:var(--hz-line) !important; }
.elementor-element-d4f4ba2 [style*="solid #24401E"]{ border-color:var(--hz-red) !important; }

/* Icônes */
.elementor-element-d4f4ba2 svg[style*="stroke:#24401E"],
.elementor-element-d4f4ba2 svg[style*="stroke:#5C7A46"],
.elementor-element-d4f4ba2 svg[style*="stroke:#E8690F"]{ stroke:var(--hz-red) !important; }

/* Bouton final → bouton principal charte */
.elementor-element-d4f4ba2 a[style*="background:#E8690F"]{
  background:var(--hz-red) !important;
  border-radius:var(--hz-radius-btn) !important;
  font-family:var(--hz-font-label) !important;
  font-weight:600 !important;
  font-size:14px !important;
  letter-spacing:.14em !important;
  text-transform:uppercase;
  box-shadow:none !important;
}
.elementor-element-d4f4ba2 a[style*="background:#E8690F"]:hover{ background:var(--hz-red-dark) !important; }