﻿/* ============================================
   HEIMSTÃœB â€“ BASE GLOBALE
   ============================================ */

html,
body{
  color:#222;
}

/* Variables marque & UI */
:root{
  /* Palette */
  --heim-olive:#556B2F;
  --heim-olive-light:#867a4c;
  --heim-beige:#F5F5DC;
  --heim-ink:#1c1c1c;
  --heim-muted:#6d6d6d;
  --heim-line:#e9e3d4;

  /* UI gÃ©nÃ©riques */
  --radius:14px;
  --shadow:0 6px 18px rgba(0,0,0,.08);
  --shadow-sm:0 2px 8px rgba(0,0,0,.06);
  --gap:1.25rem;
}

/* Fond global */
body{
  background:radial-gradient(at center center,#FDFDFD 0%,#BEAA7C 100%);
  color:#222;
}
 
/* Ambiance audio compacte */
.audio-inline audio{
  width:clamp(120px,40%,180px);
  display:block;
  outline:none;
  border-radius:12px;
  float:right;
}

/* Micro Ã©tat AJAX */
.ajax-wrap.is-loading{
  opacity:.85;
  pointer-events:none;
  transition:opacity .15s ease;
}

/* Champ Type de compte */
#acct_type{
  background:var(--heim-beige);
  border:1px solid var(--heim-olive);
  border-radius:8px;
  padding:.5rem .75rem;
}

/* Texte gradient (pour certains titres si besoin) */
.tvgradient{
  background-image:radial-gradient(circle farthest-side,#f3edd9 0%,#e8dcb7 50%,#c4b289 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}

/* ============================================
   GRILLE PRODUITS (ARCHIVES / CARTES)
   ============================================ */

.product-inner{
  background:#fff;
  border:1px solid rgba(85,107,47,.12);
  border-radius:var(--radius);
  padding:clamp(.5rem,.5vw,1.5rem);
  box-shadow:var(--shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.product-inner:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
  border-color:rgba(85,107,47,.2);
}
.product-inner img{
  border-radius:var(--radius);
}
.product-inner span{
  margin-left:6px;
}

/* Titre carte produit */
.product-inner .product-inner-contents h2.woocommerce-loop-product__title{
  margin:.35rem 0 .15rem !important;
  color:var(--heim-olive) !important;
  font-weight:700 !important;
  font-size:1.05rem !important;
  line-height:1.25 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  word-break:break-word;
}

/* Boutons dâ€™icÃ´nes divers */
.product-inner .button-cart_button_three{ display:none; }
.woocommerce ul.products li.product .button-cart_button_four a{
  background-color:#150E0182;
}
.product-inner .button-cart_button_four i{
  font-size:12px;
  color:#fff;
}

/* Gap plus compact sur les archives */
.woocommerce ul.products{
  gap:8px!important;
  row-gap:12px!important;
  margin-bottom:0!important;
}
.woocommerce ul.products>li.product{
  margin-bottom:15px!important;
  padding-bottom:0!important;
}
.woocommerce ul.products>li.product .product-inner{
  margin:0!important;
}

/* Enlever compteur & tri Woo par dÃ©faut */
.woocommerce-result-count,
.woocommerce-ordering{
  display:none!important;
}

/* ============================================
   HEADER / FOOTER
   ============================================ */

.bottom-header{
  background-color:#e8dcb7;
  border:0;
}
/* On cache complÃ¨tement la bande grise du bas */
.site-footer .bottom-footer,
.site-footer .site-info {
  display:none !important;
}

/* On donne un fond et du padding Ã  la zone widgets (top-footer) */
.site-footer .top-footer{
  background:#fff;          /* ou ton olive / beige, comme tu veux */
  padding:40px 0;
}

/* Optionnel : contenir tes widgets au centre */
.site-footer .top-footer .container,
.site-footer .top-footer .widget-area{
  max-width:1200px;
  margin:0 auto;
}
.heimstub-footer{
  background:#a8956d;
  padding:60px 0;
  color:#fff;
  margin-top:80px;
}

.heimstub-footer .footer-widgets{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:40px;
}

.heimstub-footer .widget-title{
  font-weight:700;
  color:#F5F5DC;
  margin-bottom:10px;
}

.footer-copyright{
  text-align:center;
  margin-top:40px;
  color:#ccc;
  font-size:.9rem;
}


/* ============================================
   NOTICES WOO (ERREURS)
   ============================================ */

.woocommerce-error,
.woocommerce-info,
.woocommerce-message{
  border-radius:12px !important;
  border:1px solid var(--heim-line) !important;
  background:var(--heim-beige) !important;
  color:#2b2b2b !important;
}

/* Variante erreur â€œcommandeâ€ plus visible */
.woocommerce-error{
  background-color:#f9fafa;
  border:3px solid #f76363;
  padding:18px 20px;
  max-width:min(680px,92vw);
  margin:1rem auto;
}
.woocommerce-error p{
  font-weight:700;
  text-align:center;
  margin:0;
}

/* ============================================
   SINGLE PRODUCT â€“ STRUCTURE GLOBALE
   ============================================ */

:root{
  --heim-olive:#556B2F;
  --heim-olive-light:#6B8E23;
  --heim-beige:#F5F5DC;
  --heim-wood:#7a5b3a;
  --heim-ink:#1c1c1c;
}

/* Fond doux faÃƒÂ§on papier/beige */
.single-product body, 
.single-product .site,
.single-product #page {
  background-color: inherit;
  background-image: inherit;
}
/* Conteneur principal + respiration */
.single-product .site-main{
  max-width: 1200px;
  margin-inline: auto;
  padding: clamp(14px, 2vw, 26px) clamp(22px, 4vw, 40px) clamp(26px, 4vw, 44px);
  background:transparent;
}
.single-product .woocommerce-notices-wrapper{
  max-width: 1200px;
  margin: 0 auto clamp(12px, 2vw, 24px);
  padding: 0;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
.single-product .woocommerce-notices-wrapper:empty{
  display:none;
}
.single-product .woocommerce-product-gallery__image img{
  border-radius: 26px; /* tu peux monter Ã  32px si tu veux du plus doux */
  overflow:hidden;
  display:block;
}
/* Titre produit */
.single-product .entry-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.08;
  color: #3d331f; 
}
/* h1 produit */
.single-product  h1 {
    font-size: clamp(1.5rem, 3vw, 2rem);
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.08;
  color: #3d331f; 
}

/* Prix */
.single-product .price  {
  display:block;
  color:#6f5d35 !important;
  font-weight:700;
  font-size:1.15rem;
  text-align:center;
  margin:0;
}

/* Labels variations (Accompagnements / Sauces) */
.single-product label {
	font-size:.8rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#4f3d1f;
  margin:.4rem 0 .25rem;
}

/* Selects variations */
.single-product select{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background:#fffdf5 none !important;
  color:#1c1c1c;
  border:1px solid rgba(196,178,137,.75);
  border-radius:999px;
  padding:.5rem 1.2rem;
  width:100%;
  box-shadow:0 1px 0 rgba(0,0,0,.02) inset;
  transition:border-color .2s ease, box-shadow .2s ease;
  text-align:center;
  font-weight:600;
}
.single-product .variations select:focus{
  border-color:#556B2F;
  box-shadow:0 0 0 3px rgba(85,107,47,.12);
}

.single-product .variations select:focus{
  outline: none;
  border-color: var(--heim-olive);
  box-shadow: 0 0 0 3px rgba(85,107,47,.12);
}

/* RangÃƒÂ©e quantitÃƒÂ© + bouton */
.single-product .cart .quantity input.qty {
  border: 1px solid #d8d2c6;
  border-radius: 10px;
  padding: .55rem .75rem;
  min-width: 64px;
  text-align: center;
  margin-right: .6rem;
}

/* Bouton Add to Cart */
.single-product .single_add_to_cart_button {
  background: var(--heim-olive);
  color: #fff !important;
  border: none;
  border-radius: 999px;
  padding: .9rem 1.4rem;
  font-weight: 700;
  text-transform: none;
  letter-spacing: .2px;
  transition: transform .05s ease, background .2s ease, box-shadow .2s ease;
  box-shadow: 0 6px 16px rgba(85,107,47,.18);
}
.single-product .single_add_to_cart_button:hover{
  background: var(--heim-olive-light);
  box-shadow: 0 8px 22px rgba(85,107,47,.22);
}
.single-product .single_add_to_cart_button:active{
  transform: translateY(1px);
}

/* Bloc moyens de paiement (GPay/CB) */
.single-product .wc_payment_methods,
.single-product .summary .payment,
.single-product .summary .payment_box,
.single-product .summary .wcpay-payment-request-wrapper,
.single-product .summary .wcpay-payment-request-button-separator {
  border-radius: 12px;
  overflow: hidden;
}
.single-product .summary .wcpay-payment-request-button-separator {
  margin: .8rem 0;
}

/* Meta catÃƒÂ©gories Ã¢â‚¬â€ discret */
.single-product .product_meta,
.single-product .posted_in,
.single-product .tagged_as {
  color: #6f6b62;
  font-size: .92rem;
}
.single-product .product_meta a { color: var(--heim-olive); }

/* Responsive : rÃƒÂ©-ÃƒÂ©quilibrer le grid sur petits ÃƒÂ©crans */
@media (max-width: 768px){
  .single-product .product_title { text-align: center; }
  .single-product .summary { padding-top: .5rem; }
  .single-product .variations select { font-size: 1rem; }
}
.lazy-hidden,
.lazyloading,
.lazyloaded {
  opacity: 1 !important;
}
/* ============================================
   PAGE "PASSER COMMANDE"
   ============================================ */

section.commande{
  max-width:1100px;
  margin:clamp(1.5rem,4vw,4rem) auto;
  padding:0 clamp(1rem,3vw,2rem);
  color:var(--heim-ink);
  line-height:1.6;
  display:grid;
  grid-template-columns:1fr;
  gap:var(--gap);
}
section.commande > h1{
  font-size:clamp(1.8rem,2.8vw,2.4rem);
  color:var(--heim-olive);
  margin:0 0 1rem 0;
  letter-spacing:.2px;
}
@media (min-width:900px){
  section.commande{
    grid-template-columns:1fr 1fr;
  }
}
.commande-bloc{
  margin:10px;
  background:#fff;
  border:1px solid rgba(85,107,47,.12);
  border-radius:var(--radius);
  padding:clamp(1rem,2.5vw,1.5rem);
  box-shadow:var(--shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  position:relative;
  overflow:hidden;
}
.commande-bloc:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
  border-color:rgba(85,107,47,.2);
}
.commande-bloc h2{
  font-size:clamp(1.15rem,2.2vw,1.35rem);
  color:var(--heim-olive);
  margin:0 0 .5rem 0;
  line-height:1.3;
}
.commande-bloc h2::after{
  content:"";
  display:block;
  width:58px;
  height:6px;
  margin:.5rem 0 0 0;
  background:var(--heim-beige);
  border-radius:999px;
}
.commande-bloc p{
  margin:.85rem 0 1.1rem;
  color:var(--heim-ink);
}
.commande-bloc p strong{
  color:#38461f;
  font-weight:700;
}
.commande .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.7rem 1.1rem;
  background:var(--heim-olive);
  color:#fff;
  text-decoration:none;
  border-radius:calc(var(--radius) - 4px);
  border:1px solid transparent;
  box-shadow:0 2px 0 rgba(0,0,0,.06);
  font-weight:600;
  letter-spacing:.2px;
  transition:background .2s ease, transform .06s ease, box-shadow .2s ease, border-color .2s ease;
}
.commande .btn:hover{
  background:#38461f;
  box-shadow:0 4px 14px rgba(85,107,47,.18);
}
.commande .btn:active{
  transform:translateY(1px);
}
.commande .btn:focus{
  outline:none;
  border-color:var(--heim-beige);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--heim-beige) 60%,transparent);
}
@media (max-width:899px){
  .commande-bloc{ padding:1rem; }
}
@media (prefers-reduced-motion:reduce){
  .commande-bloc,
  .commande .btn{
    transition:none;
  }
}

/* ============================================
   CHECKOUT â€“ CLEAN
   ============================================ */

body.woocommerce-checkout .woocommerce form.checkout .col2-set,
body.woocommerce-checkout .woocommerce form.checkout .col-1,
body.woocommerce-checkout .woocommerce form.checkout .col-2,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #payment{
  background:#fff !important;
  padding:10px;
  border-radius:16px !important;
  box-shadow:0 10px 26px rgba(0,0,0,.06) !important;
}
body.woocommerce-checkout h3,
body.woocommerce-checkout h2,
.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3{
  color:var(--heim-olive) !important;
  font-weight:800 !important;
  letter-spacing:.2px;
  margin:10px 0 12px !important;
}
body.woocommerce-checkout .woocommerce form .form-row,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > *{
  margin-bottom:12px !important;
}
body.woocommerce-checkout .woocommerce form .form-row input.input-text,
body.woocommerce-checkout .woocommerce form .form-row textarea,
body.woocommerce-checkout .woocommerce form .form-row select{
  background:#fff !important;
  border:1px solid var(--heim-line) !important;
  border-radius:12px !important;
  padding:.75rem 1rem !important;
  box-shadow:0 1px 0 rgba(0,0,0,.02) inset !important;
  transition:border-color .2s ease, box-shadow .2s ease !important;
}
body.woocommerce-checkout .woocommerce form .form-row input.input-text:focus,
body.woocommerce-checkout .woocommerce form .form-row textarea:focus,
body.woocommerce-checkout .woocommerce form .form-row select:focus{
  border-color:var(--heim-olive) !important;
  box-shadow:0 0 0 3px rgba(85,107,47,.18) !important;
  outline:none !important;
}
#payment.woocommerce-checkout-payment{
  padding:14px 16px !important;
}
#payment .payment_methods > .wc_payment_method{
  border-top:1px solid var(--heim-line) !important;
  padding:14px 16px !important;
}
#payment .payment_methods > .wc_payment_method:first-child{
  border-top:none !important;
}
#payment .payment_box{
  background:#faf8f1 !important;
  border:1px dashed var(--heim-line) !important;
  border-radius:12px !important;
  padding:14px 16px !important;
  margin:12px 0 0 34px !important;
}
@media (max-width:768px){
  #payment .payment_box{ margin-left:0 !important; }
}

/* Express off si nÃ©cessaire */
.wcpay-payment-request-wrapper,
.wcpay-payment-request-button,
.wc_payment_method.payment_method_woocommerce_payments_express{
  display:none !important;
}

/* Tableau rÃ©cap */
.woocommerce-checkout-review-order-table,
.woocommerce table.shop_table{
  border:1px solid var(--heim-line) !important;
  border-radius:16px !important;
  overflow:hidden !important;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  padding:12px 14px !important;
}
.woocommerce-checkout-review-order-table tfoot th{
  color:var(--heim-muted) !important;
}
.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce-checkout-review-order-table tfoot .order-total td{
  color:var(--heim-olive) !important;
  font-weight:800 !important;
}

/* Bouton commander */
#place_order,
.woocommerce #payment #place_order,
.woocommerce a.button.checkout-button,
.woocommerce button.button.alt{
  background:var(--heim-olive) !important;
  color:#fff !important;
  border:none !important;
  border-radius:14px !important;
  padding:.95rem 1.25rem !important;
  font-weight:800 !important;
  letter-spacing:.2px !important;
  box-shadow:0 10px 22px rgba(85,107,47,.22) !important;
  transition:transform .05s ease, box-shadow .2s ease, filter .15s !important;
}
#place_order:hover{ filter:brightness(1.05) !important; }
#place_order:active{ transform:translateY(1px) !important; }

/* Bandeau info Checkout */
.heim-banner-checkout{
  display:flex;
  align-items:center;
  gap:12px;
  background:var(--heim-beige);
  border:1px solid var(--heim-line);
  color:#2b2b2b;
  border-radius:14px;
  padding:12px 14px;
  box-shadow:0 6px 18px rgba(0,0,0,.05);
  margin:0 0 16px 0;
}
.heim-banner-checkout .heim-banner-icon{
  color:var(--heim-olive);
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#eef0e6;
  flex:0 0 34px;
}
.heim-banner-checkout .heim-banner-body{
  font-size:15px;
  line-height:1.45;
}
.heim-banner-checkout .heim-banner-body strong{
  color:var(--heim-olive);
}
.heim-banner-checkout .heim-sep{
  margin:0 .5em;
  opacity:.45;
}
@media (max-width:680px){
  .heim-banner-checkout{ padding:10px 12px; }
  .heim-banner-checkout .heim-banner-body{ font-size:14px; }
}

/* ============================================
   ACCUEIL â€“ BLOC â€œPERSONNALISEZâ€
   ============================================ */

.heim-personnalisez h2{
  margin:0 0 1rem 0;
  color:var(--heim-olive);
  font-weight:800;
  letter-spacing:.2px;
}
.heim-personnalisez ul.products li.product{
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.heim-personnalisez ul.products li.product:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
}
.heim-personnalisez ul.products li.product .woocommerce-loop-product__title{
  color:#333;
  font-weight:700;
}
.heim-personnalisez ul.products li.product .price{
  color:var(--heim-olive);
  font-weight:700;
}
/* Cacher bouton pour forcer le clic vers fiche produit */
.heim-personnalisez ul.products li.product .button{
  display:none !important;
}
.heim-personnalisez ul.products li.product a img{
  border-bottom:1px solid #f0ede3;
  aspect-ratio:1 / 1;
  object-fit:cover;
}
@media (max-width:768px){
  .heim-personnalisez{ padding:1.5rem 1rem; }
}
.gap-compact ul.products{ margin-bottom:.5rem; }
.gap-compact ul.products li.product{ margin-bottom:.5rem; }
.gap-compact + h3{ margin-top:.5rem; }

/* ============================================
   ICÃ”NE PANIER & QUICK VIEW
   ============================================ */

.hs-cart{
  position:absolute;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:35px;
  height:35px;
  border-radius:999px;
  background:var(--heim-beige);
  color:var(--heim-olive);
  box-shadow:0 2px 6px rgba(0,0,0,.08);
}
.hs-cart svg{
  width:22px;
  height:22px;
  fill:currentColor;
}
.hs-cart .hs-count{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  background:var(--heim-olive);
  color:var(--heim-beige);
  border-radius:999px;
  font-size:12px;
  line-height:18px;
  text-align:center;
  font-weight:700;
}

/* Conteneur image pour quickview */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{
  position:relative;
}

/* Quick view (YITH / Flatsome / Woodmartâ€¦) */
.woocommerce ul.products li.product a.yith-wcqv-button,
.woocommerce ul.products li.product a.quick-view,
.woocommerce ul.products li.product .quick-view,
.woocommerce ul.products li.product .wd-open-quick-view,
.woocommerce ul.products li.product [class*="quick"][class*="view"]{
  position:absolute !important;
  left:5px;
  top:10px;
  z-index:9 !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:#e8dcb7 !important;
  color:var(--heim-olive) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
  font-size:14px !important;
  line-height:1 !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  pointer-events:auto !important;
}
.woocommerce ul.products li.product:hover a.yith-wcqv-button,
.woocommerce ul.products li.product:hover a.quick-view,
.woocommerce ul.products li.product:hover .wd-open-quick-view,
.woocommerce ul.products li.product:hover [class*="quick"][class*="view"]{
  opacity:1 !important;
  visibility:visible !important;
}
.woocommerce ul.products li.product a.yith-wcqv-button:hover,
.woocommerce ul.products li.product a.quick-view:hover,
.woocommerce ul.products li.product .wd-open-quick-view:hover,
.woocommerce ul.products li.product [class*="quick"][class*="view"]:hover{
  filter:brightness(.95);
  transform:scale(1.06) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.28);
}
.woocommerce ul.products li.product [class*="quick"][class*="view"]:before{
  font-size:14px !important;
}

/* ============================================
   NAVIGATION & FORMULAIRES GÃ‰NÃ‰RIQUES
   ============================================ */

@media (min-width:782px){
  .main-navigation,
  .primary-navigation,
  .site-navigation{
    width:100%;
    display:flex;
    justify-content:center;
  }
  .main-navigation ul,
  .primary-navigation ul{
    display:flex;
    gap:24px;
  }
  .main-navigation ul,
  .main-navigation li{
    float:none;
  }
}

/* Wrapper formulaire iframe (Google Sheets, etc.) */
.heimstub-form-wrap{
  max-width:720px;
  margin:0 auto;
  padding:1rem;
  background:#f3edd9;
  border:1px solid var(--heim-olive);
  border-radius:12px;
}
.heimstub-form-wrap h2{
  color:var(--heim-olive);
  margin:0 0 .5rem;
  font-weight:700;
}
.heimstub-iframe{
  width:100%;
  height:1200px;
  border:0;
}
@media (max-width:600px){
  .heimstub-iframe{ height:1400px; }
}

/* ============================================
   OFFCANVAS (HEADER SIDEBAR)
   ============================================ */

:root{
  --r:18px;
}

body .header-sidebar{
  --wp--style--block-gap:4px;
  width:100%;
  overflow:hidden !important;
}
.header-sidebar .widget,
.header-sidebar .widget_block{
  margin:10px 0 !important;
  padding:8px 12px !important;
}
.header-sidebar .hs-label{
  display:block;
  margin:6px 8px;
  font-size:.85rem;
  font-weight:700;
  text-transform:uppercase;
  color:var(--heim-olive);
}
.header-sidebar a{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between;
  color:#5f5919;
  padding:10px 12px !important;
  margin:6px 0 !important;
  border-radius:10px !important;
}
.header-sidebar a:hover{
  background:rgba(85,107,47,.10) !important;
  color:var(--heim-olive) !important;
}
.header-sidebar .hs-divider{
  height:1px;
  background:rgba(85,107,47,.22);
  margin:10px 6px;
}
.header-sidebar .hs-badge{
  margin-left:.6rem;
  min-width:24px;
  height:24px;
  border-radius:999px;
  background:var(--heim-olive);
  color:#f3edd9;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.75rem;
  font-weight:800;
  padding:0 .5rem;
}
/* ------------------------------
 * Conteneur offcanvas : on garde le fond transparent */
#offcanvas-menu{
    background-color:transparent;
	   min-width:580px;
	/* comme avant */
}

/* Carte flottante Ã  droite */
.offcanvas-menu-inner{
     position: relative;
    background-color: #fffdf8;
    border-radius:24px;
    box-shadow:0 18px 40px rgba(0,0,0,.25);

    /* largeur raisonnable, sans scroll horizontal */
    width:min(420px, 100vw - 80px);
    max-width:420px;

    /* collÃ© Ã  droite, mais avec un peu dâ€™air */
    margin:6vh 40px 6vh auto;
    padding:24px 24px 20px;
    box-sizing:border-box;
    overflow-y:auto;
    overflow-x:hidden;  /* tue la barre en bas */
}	
.offcanvas-menu-inner::before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-size: 18px 18px, 260px;
    opacity:0.28;

    background-image:
        /* carreaux Ã©lÃ©gants */
        linear-gradient(0deg, rgba(0,0,0,0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0,0,0,0.06) 1px, transparent 1px),

        /* cuir trÃ¨s fin */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4'/%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23f)'/%3E%3C/svg%3E");
}

/* Avatar du premier widget (local avatar) */
.offcanvas-menu-inner .widget:first-child img{
    display:block;
    margin:0 auto 1.2rem;
    border-radius:50%;
    max-width:96px;
    height:auto;
}

/* Si le plugin met une classe avatar, on la renforce aussi */
.offcanvas-menu-inner img.avatar,
.offcanvas-menu-inner img.hs-user-avatar-img{
    display:block;
    margin:0 auto 1.2rem;
    border-radius:50%;
    max-width:96px;
}
/* Conteneur : centrÃ©, espacÃ©, propre */
.hs-user-actions{
   display:flex;
    flex-wrap:wrap;   
	background:#fffdf8 !important;
	/* Passe Ã  la ligne si Ã§a dÃ©passe */
    justify-content:center;        /* Centre les chips */
    gap:12px;                      /* Espacement entre chaque chip */
    margin-top:20px;
    padding:0 20px;      
}

/* Style chips pour TOUS les .hs-btn.hs-btn-pill */
.hs-user-actions .hs-btn.hs-btn-pill{
    background:#fffdf8 !important;
    border:1px solid var(--heim-olive) !important;
    color:var(--heim-olive) !important;
    border-radius:999px;
    padding:10px 20px;
    font-weight:400;
    text-decoration:none;
    box-shadow:0 4px 10px rgba(0,0,0,0.07);
    transition:0.25s ease;
    display:inline-block;
    width:auto;
}

/* Hover : inversion Ã©lÃ©gante */
.hs-user-actions .hs-btn.hs-btn-pill:hover{
    background:var(--heim-olive) !important;
    color:#fff !important;
}
/* === Carte repas / wallet ===================== */

#offcanvas-menu .wp-block-details {
    background:#fffdf8;
    border:2px solid var(--heim-line);
    border-radius:12px;
    padding:12px 16px;
    margin:20px auto;
    box-shadow:0 6px 20px rgba(0,0,0,0.05);
}

/* enleve le style de liste par dÃ©faut */
#offcanvas-menu .wp-block-details summary {
    list-style:none;
    cursor:pointer;
    font-size:16px;
    font-weight:600;
    color:var(--heim-olive);
    display:flex;
    align-items:center;
    gap:10px;
}
/* petite flÃ¨che olive avant le texte */
#offcanvas-menu .wp-block-details summary::before {
    content:"â–¸";
    font-size:16px;
    color:var(--heim-olive);
    transition:transform 0.25s ease;
}

/* flÃ¨che qui tourne quand c'est ouvert */
#offcanvas-menu .wp-block-details[open] summary::before {
    transform:rotate(90deg);
}
/* contenu interne (montant, texteâ€¦) */
#offcanvas-menu .wp-block-details > div,
#offcanvas-menu .wp-block-details .wp-block-wallet-user-wallet-amount {
    padding-top:10px;
    font-size:17px;
    font-weight:600;
    color:var(--heim-ink);
}

/* montant du wallet bien mis en valeur */
#offcanvas-menu .wp-block-wallet-user-wallet-amount {
    font-size:20px;
    font-weight:700;
    color:var(--heim-olive);
}
/* Carte repas : montant wallet */
.hs-wallet-card .wp-block-wallet-user-wallet-amount{
    margin-top: 10px;
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--heim-olive);      /* vert HeimstÃ¼b */
    letter-spacing: 0.02em;
}

/* Optionnel : si tu veux que tout le contenu de la carte soit bien alignÃ© */
.hs-wallet-card details[open] .wp-block-wallet-user-wallet-amount{
    text-align: left;
}
/* Style du montant wallet dans l'offcanvas */
.offcanvas-menu-inner .wp-block-wallet-user-wallet-amount .woocommerce-Price-amount.amount {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--heim-olive); /* Ton vert HeimstÃ¼b */
    letter-spacing: .02em;
    display: block;
    margin-top: 8px;
}

/* Style du montant wallet dans l'offcanvas */

.hs-fuhrmann-note {
  margin: 10px 0 14px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px dashed rgba(58, 49, 32, 0.35);
  font-size: 0.95rem;
}
.hs-fuhrmann-note__hi {
  font-weight: 600;
  margin: 0 0 4px;
}
.hs-fuhrmann-note__msg {
  font-size: 0.85rem;
  margin: 0 0 6px;
  color: rgba(0, 0, 0, 0.6);
}

.hs-fuhrmann-note img {
	border-radius:999px;
}
/* Liens internes au message Fuhrmann */
.hs-fuhrmann-note .hs-fuhrmann-note__msg a {
    color: var(--heim-olive, #5f5919) !important;
	  font-weight:600;
    font-size: inherit !important;
    text-decoration: none;
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    display: inline !important;        /* <- force lâ€™affichage en ligne */
    white-space: normal !important;
}

.hs-fuhrmann-note .hs-fuhrmann-note__msg a:hover,
.hs-fuhrmann-note .hs-fuhrmann-note__msg a:focus {
    text-decoration: underline;
}
.hs-fuhrmann-note__text {
  display: inline-block;
  transform-origin: center;
  animation: hsPop 0.25s ease-out forwards;
}

@keyframes hsPop {
  0%   { transform: scale(0.85); }
  60%  { transform: scale(1.08); }
  100% { transform: scale(1); }
}






/*--------------------------
/* Menus conditionnels PRO / Customer */
.menu-pro-only{ display:none !important; }
.heim-pro-user .menu-pro-only{ display:flex !important; }

.header-sidebar a.menu-pro-only{ display:none !important; }
.heim-pro-user .header-sidebar a.menu-pro-only{ display:flex !important; }

.header-sidebar a.menu-customer-only{ display:none !important; }
.heim-customer-user .header-sidebar a.menu-customer-only{ display:flex !important; }

/* ============================================
   PAGE MON COMPTE
   ============================================ */

body.woocommerce-account{
  background:radial-gradient(at center center,#FDFDFD 0%,#BEAA7C 100%);
  color:#2b2b2b;
}
.woocommerce-account .woocommerce{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:2rem;
  padding:clamp(1rem,3vw,2rem);
}

/* Navigation gauche */
.woocommerce-MyAccount-navigation{
  flex:0 0 240px;
  background:#f3edd9;
  border-radius:14px;
  padding:1rem;
  box-shadow:0 4px 16px rgba(0,0,0,.05);
  align-self:flex-start;
}
.woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0;
  padding:0;
}
.woocommerce-MyAccount-navigation ul li{
  margin:.25rem 0;
  padding:5px;
  overflow:hidden;
}
.woocommerce-MyAccount-navigation ul li a{
  display:block;
  color:#f3edd9;
  font-weight:600;
  text-decoration:none;
  transition:background .2s,color .2s;
}
.woocommerce-MyAccount-navigation ul li a:hover{
  color:#f3edd9;
}
.woocommerce-MyAccount-navigation ul li.is-active a{
  background:#c4b289;
  color:#f3edd9;
  text-align:center;
  border-radius:8px;
  font-weight:700;
  margin-top:.5rem;
  border-left:none;
  padding:5px;
}

/* Contenu droite */
.woocommerce-MyAccount-content{
  flex:1 1 600px;
  background:#fff;
  border:1px solid rgba(85,107,47,.12);
  border-radius:16px;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
  padding:clamp(1rem,3vw,2rem);
  min-height:400px;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{
  color:var(--heim-olive);
  font-weight:800;
  margin-bottom:.75rem;
  letter-spacing:.3px;
}
.woocommerce-MyAccount-content p{
  line-height:1.6;
  color:#2b2b2b;
}
.woocommerce-MyAccount-content a{
  color:var(--heim-olive);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .2s;
}
.woocommerce-MyAccount-content a:hover{
  border-bottom-color:var(--heim-olive);
}
.woocommerce-MyAccount-content strong{
  color:#38461f;
}

/* Bouton DÃ©connexion */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a{
  background:#5f5919;
  color:#F5F5DC;
  text-align:center;
  border-radius:8px;
  font-weight:700;
  margin-top:.5rem;
  border-left:none;
  padding:5px;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover{
  background:#c4b289;
}

/* Responsive */
@media (max-width:900px){
  .woocommerce-account .woocommerce{
    flex-direction:column;
  }
  .woocommerce-MyAccount-navigation{
    flex:1 1 auto;
    width:100%;
  }
}
/* ============================================
   PATCH DE-SURCHARGE â€“ Fiche produit HeimstÃ¼b
   ============================================ */

/* 1. MosaÃ¯que gauche (titre + image + actions) vs descriptif */
.single-product div.product {
  display:grid;
  grid-template-columns:minmax(320px,400px) minmax(500px,1fr);
  gap:clamp(24px,3vw,48px);
  align-items:flex-start;
}
 
.single-product .entry-summary{
  background:#fff;
  border-radius:26px;
  padding:clamp(16px,2.5vw,26px);
  box-shadow:0 12px 38px rgba(20,13,6,.11);
  border:1px solid rgba(196,178,137,.24);
}
.single-product .woocommerce-product-gallery{
  background:#fff;
  border-radius:26px;
  padding:clamp(10px,2vw,18px);
  box-shadow:0 16px 40px rgba(15,10,5,.12);
  margin-top:0;
}
.single-product .woocommerce-product-gallery__image img{
  border-radius:26px !important;
}
.single-product .summary{ gap:clamp(.8rem,1vw,1rem); }
.single-product .summary .product_title{
  display:block;
  text-align:center;
  padding:.6rem 1.5rem;
  margin:0;
  border-radius:999px;
  background:var(--heim-beige);
}
.single-product .cart{
  display:flex;
  flex-direction:column;
  gap:.8rem;
}
.single-product .cart .quantity{ justify-content:center; }
.single-product .single_add_to_cart_button,
.single-product .summary .wc_payment_methods,
.single-product .summary .wcpay-payment-request-wrapper{
  width:100%;
}

.single-product .woocommerce-tabs{
  background:#fff;
  border-radius:34px;
  padding:clamp(22px,3vw,34px);
  box-shadow:0 25px 60px rgba(20,13,6,.1);
  border:1px solid rgba(196,178,137,.3);
}

@media (max-width:900px){
  .single-product div.product{
    grid-template-columns:1fr;
  }
  .single-product .woocommerce-product-gallery{
    margin:clamp(12px,4vw,24px) auto 0;
    max-width:480px;
  }
}

/* =====================================================
   HEIMSTÃœB â€“ FINITIONS PREMIUM (image + onglets + hover)
   ===================================================== */

/* 1. Lueur douce autour de l'image (au repos) */
.single-product .woocommerce-product-gallery {
  transition: box-shadow .35s ease, transform .35s ease;
  box-shadow:
      0 20px 50px rgba(0,0,0,.12),
      0 0 0 0 rgba(255,255,255,0); /* base neutre */
}

/* 2. Effet hover premium sur la carte image */
.single-product .woocommerce-product-gallery:hover {
  transform: translateY(-4px);
  box-shadow:
      0 28px 60px rgba(0,0,0,.14),
      0 0 22px rgba(255,255,255,.45); /* halo clair stylÃ© */
}

/* 3. Border-radius encore plus soignÃ© sur hover */
.single-product .woocommerce-product-gallery:hover img {
  border-radius: 22px !important;
  transition: border-radius .35s ease;
}

/* 4. Onglets description â€“ version plus chic & horizontale */
.single-product .woocommerce-tabs ul.tabs {
  display: flex;
  gap: 2.5rem;
  justify-content: flex-start;
  border: none;
  background: transparent;
  padding: 0 0 1.6rem;
  margin: 0 0 1.8rem;
  position: relative;
}

/* Ligne Ã©lÃ©gante sous onglets */
.single-product .woocommerce-tabs ul.tabs::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 1px;
  background: rgba(0,0,0,.05);
}

/* Onglets reset */
.single-product .woocommerce-tabs ul.tabs li {
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Liens dâ€™onglets */
.single-product .woocommerce-tabs ul.tabs li a {
  font-size: .85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(0,0,0,.32);
  padding-bottom: .5rem;
  border-bottom: 2px solid transparent;
  transition: color .25s ease, border-color .25s ease;
}

/* Onglet actif */
.single-product .woocommerce-tabs ul.tabs li.active a {
  color: var(--heim-olive);
  border-bottom-color: var(--heim-olive);
}

/* Onglet hover */
.single-product .woocommerce-tabs ul.tabs li a:hover {
  color: var(--heim-olive-light);
}

/* 5. Carte description plus douce */
.single-product .woocommerce-Tabs-panel {
  border-radius: 20px;
  background: #fdfbf5;
  padding: 1.9rem 2.3rem;
  box-shadow: 0 18px 48px rgba(0,0,0,.08);
  border: 1px solid rgba(255,255,255,.8);
  animation: fadeInDesc .4s ease-out;
}

/* Petite animation dâ€™apparition */
@keyframes fadeInDesc {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* 6. Titre description */
.single-product .woocommerce-Tabs-panel h2 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--heim-olive);
  margin-bottom: 1.2rem;
}
 
/* 7. Texte description */
.single-product .woocommerce-Tabs-panel p {
  color: #444;
  line-height: 1.7;
  margin-bottom: 1rem;
  font-size: 1rem;
}
 
/* ======= Override: layout fiche produit allÃ©gÃ©e (pile verticale) ======= */
.single-product div.product {
  display:block;
  max-width:900px;
  margin:0 auto 3rem;
  padding:0;
  background:transparent;
  box-shadow:none;
  border-radius:0;
}
.single-product div.product-detail-wrapper{
  display:block;
}
.single-product .woocommerce-product-gallery{
  max-width:420px;
  margin:0 auto 1.75rem;
  padding:10px;
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 16px 40px rgba(0,0,0,.10);
}
.single-product .woocommerce-product-gallery__image img{
  border-radius:18px !important;
}
.single-product .entry-summary{
  background:#f8f5e9;
  border-radius:22px;
  padding:1.8rem 2rem;
  box-shadow:0 16px 40px rgba(0,0,0,.10);
}
.single-product .woocommerce-tabs{
  max-width:900px;
  margin:2.5rem auto 0;
}
.single-product .woocommerce-tabs ul.tabs{
  justify-content:flex-start;
}
.single-product .woocommerce-Tabs-panel{
  border-radius:18px;
  background:#fdfbf5;
  box-shadow:0 16px 40px rgba(0,0,0,.06);
}
/* ============================
   HeimstÃ¼b â€“ CatÃ©gories produits
   3 cartes par ligne
   ============================ */

/* 3 colonnes sur desktop : on force la grille pour contrecarrer le grid 2 colonnes du thÃ¨me */
@media (min-width:1080px){
  /* forcer les variables de colonnes utilisÃ©es par certains thÃ¨mes (Flatsome/Woodmart/Elementor) */
  body.tax-product_cat,
  body.post-type-archive-product,
  body.woocommerce-shop,
  body.archive.woocommerce{
    --columns:4 !important;
    --grid-columns:4 !important;
    --products-columns:4 !important;
  }
  /* ciblage restreint aux pages catalogue (pas la home) : on force flex + width calculÃ©e */
  body.tax-product_cat ul.products,
  body.post-type-archive-product ul.products,
  body.woocommerce-page ul.products,
  body.woocommerce-shop ul.products,
  body.tax-product_cat ul.products[class*="columns-"],
  body.post-type-archive-product ul.products[class*="columns-"],
  body.woocommerce-page ul.products[class*="columns-"],
  body.woocommerce-shop ul.products[class*="columns-"],
  body.archive.woocommerce ul.products,
  body.archive.woocommerce ul.products[class*="columns-"],
  body.tax-product_cat ul.products.columns-3,
  body.tax-product_cat ul.products[class*="columns-3"],
  body.woocommerce-shop ul.products.columns-3,
  body.woocommerce-shop ul.products[class*="columns-3"]{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    gap:16px !important;
    justify-items:stretch !important;
    align-items:start !important;
  }
  /* neutralise les pseudos Woo qui occupent la premiÃ¨re case */
  body.tax-product_cat ul.products::before,
  body.tax-product_cat ul.products::after,
  body.post-type-archive-product ul.products::before,
  body.post-type-archive-product ul.products::after,
  body.woocommerce-page ul.products::before,
  body.woocommerce-page ul.products::after,
  body.woocommerce-shop ul.products::before,
  body.woocommerce-shop ul.products::after,
  body.archive.woocommerce ul.products::before,
  body.archive.woocommerce ul.products::after{
    content:none !important;
    display:none !important;
  }
  body.tax-product_cat ul.products li.product,
  body.post-type-archive-product ul.products li.product,
  body.woocommerce-page ul.products li.product,
  body.woocommerce-shop ul.products li.product,
  body.tax-product_cat ul.products[class*="columns-"] li.product,
  body.post-type-archive-product ul.products[class*="columns-"] li.product,
  body.woocommerce-page ul.products[class*="columns-"] li.product,
  body.woocommerce-shop ul.products[class*="columns-"] li.product,
  body.archive.woocommerce ul.products li.product,
  body.archive.woocommerce ul.products[class*="columns-"] li.product,
  body.tax-product_cat ul.products.columns-3 li.product,
  body.tax-product_cat ul.products[class*="columns-3"] li.product,
  body.woocommerce-shop ul.products.columns-3 li.product,
  body.woocommerce-shop ul.products[class*="columns-3"] li.product{
    width:100% !important;
    max-width:none !important;
    flex:0 0 auto !important;
    float:none !important;
    clear:none !important;
    display:block !important;
  }
}

/* 2 colonnes sur tablette */
@media (min-width:700px) and (max-width:1079px){
  body.tax-product_cat ul.products,
  body.post-type-archive-product ul.products,
  body.woocommerce-page ul.products,
  body.woocommerce-shop ul.products,
  body.archive.woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:16px !important;
  }
  body.tax-product_cat ul.products li.product,
  body.post-type-archive-product ul.products li.product,
  body.woocommerce-page ul.products li.product,
  body.woocommerce-shop ul.products li.product,
  body.archive.woocommerce ul.products li.product{
    width:100% !important;
    max-width:none !important;
    flex:0 0 auto !important;
    float:none !important;
    clear:none !important;
  }
}

/* 1 colonne sur mobile */
@media (max-width:640px){
  body.tax-product_cat ul.products li.product,
  body.post-type-archive-product ul.products li.product,
  body.woocommerce-page ul.products li.product,
  body.woocommerce-shop ul.products li.product,
  body.archive.woocommerce ul.products li.product{
    width:100% !important;
  }
}

/*-----------------------*/
.hs-user-avatar {
  text-align: center;
  padding: 10px 0;
}

.hs-user-avatar-img {
  border-radius: 50%;
  width: 72px;
  height: 72px;
}
.hs-user-panel {
  text-align: center;
  padding: 12px 8px 4px;
}

.hs-user-avatar-img {
  border-radius: 50%;
  width: 72px;
  height: 72px;
  object-fit: cover;
  display: block;
  margin: 0 auto 10px;
}

.hs-user-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
}

.hs-chip {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.4;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,0.2);
  background: rgba(0,0,0,0.25);
  color: #fff;
  backdrop-filter: blur(4px);
}

.hs-chip:hover {
  border-color: rgba(255,255,255,0.5);
}

.hs-chip-logout {
  background: rgba(120, 20, 20, 0.85);
}
 
.hs-chip-account {
  background: rgba(0,0,0,0.45);
}

/* ============================================
   WooCommerce pagination HeimstÃ¼b
   ============================================ */
.woocommerce nav.woocommerce-pagination {
  display:flex;
  justify-content:center;
  margin:20px 0 10px;
}
.woocommerce nav.woocommerce-pagination ul {
  display:flex;
  gap:8px;
  padding:0;
  margin:0;
  border:none;
  background:transparent;
  box-shadow:none;
}
.woocommerce nav.woocommerce-pagination ul li {
  border:none;
  background:transparent;
  margin:0;
  padding:0;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  height:36px;
  padding:12px 12px;
  border-radius:999px;
  font-weight:700;
  border:1px solid #867a4c;
  background:var(--heim-beige, #fffcf3);
  color:#867a4c;
  transition:all .2s ease;
} 
/* HOVER â€“ numÃ©ros & flÃ¨ches (sauf current qui est un span) */
.woocommerce nav.woocommerce-pagination ul li a.page-numbers:hover,
.woocommerce nav.woocommerce-pagination ul li a.prev:hover,
.woocommerce nav.woocommerce-pagination ul li a.next:hover,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background:#867a4c !important;
  color:#f3edd9 !important;
  border-color:#867a4c !important;
}

/* Optionnel : lÃ©ger â€œreliefâ€ au survol */
.woocommerce nav.woocommerce-pagination ul li a:hover {
  box-shadow:0 0 10px rgba(0,0,0,.12);
}
/* Force le style des Ã©lÃ©ments actifs/actuels */
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination .page-numbers.current,
.woocommerce nav.woocommerce-pagination .current {
    background:#867a4c !important;
    color:#f3edd9 !important;
    border-color:#867a4c !important;
}

.woocommerce nav.woocommerce-pagination ul li a.prev,
.woocommerce nav.woocommerce-pagination ul li a.next {
  padding:12px 12px;
}
/* ============================================
   PAGE CONTACT â€“ FORMULAIRE SOFT HEIMSTÃœB
   (si besoin, remplace body.page par la classe page-id-XX
   de ta page Contact pour limiter la portÃ©e)
   ============================================ */
body.page .wpcf7{
  max-width:900px;
  margin:clamp(24px,5vw,42px) auto clamp(32px,6vw,54px);
  padding:clamp(20px,4vw,28px) clamp(22px,5vw,36px);
  background:#fff;
  border-radius:22px;
  box-shadow:0 18px 42px rgba(0,0,0,.08);
  border:1px solid rgba(0,0,0,.03);
}
body.page .wpcf7 form{
  display:grid;
  gap:18px;
}
body.page .wpcf7 form p{
  margin:0;
}
body.page .wpcf7 label{
  display:block;
  margin-bottom:6px;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--heim-olive);
}
body.page .wpcf7 input[type="text"],
body.page .wpcf7 input[type="email"],
body.page .wpcf7 input[type="tel"],
body.page .wpcf7 textarea{
  width:100%;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  padding:12px 14px;
  background:#fdfbf5;
  font-size:16px;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
body.page .wpcf7 input[type="text"]:focus,
body.page .wpcf7 input[type="email"]:focus,
body.page .wpcf7 input[type="tel"]:focus,
body.page .wpcf7 textarea:focus{
  outline:none;
  border-color:var(--heim-olive);
  box-shadow:0 0 0 3px rgba(85,107,47,.12);
  background:#fff;
}
body.page .wpcf7 textarea{
  min-height:180px;
  resize:vertical;
}
body.page .wpcf7 input[type="submit"]{
  border:none;
  border-radius:16px;
  background:var(--heim-olive);
  color:#fff;
  font-weight:800;
  letter-spacing:.15px;
  padding:14px 18px;
  cursor:pointer;
  transition:transform .05s ease, box-shadow .2s ease, filter .15s ease;
  box-shadow:0 10px 22px rgba(85,107,47,.22);
  width:fit-content;
}
body.page .wpcf7 input[type="submit"]:hover{
  filter:brightness(1.05);
  box-shadow:0 12px 26px rgba(85,107,47,.26);
}
body.page .wpcf7 input[type="submit"]:active{
  transform:translateY(1px);
}
body.page .wpcf7 .wpcf7-response-output{
  margin-top:10px;
  border-radius:12px;
  border:1px solid var(--heim-line);
  padding:10px 12px;
  background:#f8f6ed;
  color:#3d331f;
}
.zaz-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
  margin-top: 2rem;
}

.zaz-item {
  background: #fdfaf5;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 1rem;
  text-align: center;
  box-shadow: 0 5px 14px rgba(0,0,0,.05);
}

.zaz-item img {
  width: 100%;
  border-radius: 12px;
  margin-bottom: .6rem;
}

.zaz-title {
  font-size: .9rem;
  color: #333;
}
/* WhatsApp dans le menu, icône intégrée */
/* Bloc tooltip */
/* Conteneur principal (déjà existant) */
.wa-tip {
    position: relative;
}

.wa-tip > a,
.wa-tip > * {
    font-weight: 700 !important;
    color: #5f5919 !important;
}

/* On agrandit un peu le tooltip existant pour laisser la place aux chips */
.wa-tip a::after {
    padding-bottom: 12px; /* laisse la place pour les chips */
}

/* Conteneur invisible pour les chips */
.wa-tip .wa-chips {
    position: absolute;
    bottom: 35px;
    left: 140%;
    transform: translateX(-50%);
    display: flex;
    gap: 4px;
    align-items: center;          /* alignement vertical propre */
    opacity: 0;
    transition: opacity .2s ease;
    z-index: 99999;
}

/* Apparition avec le tooltip */
.wa-tip:hover .wa-chips {
    opacity: 1;
}

/* Style des chips texte */
.wa-tip .wa-chip {
    background-color: #e8dcb7;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500 !important;
    border: 1px solid #e4dcc2;
    color: #556B2F;
    cursor: pointer;
    white-space: nowrap;
}

/* Chip avec icône WhatsApp */
.wa-chip-icon {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    background-color: #ffffff;
    border: 1px solid #e4dcc2;
    background-image: url("https://heimstub.fr/wp-content/themes/bosa-restaurant-cafe/assets/icons/whatsapp-heimstub.png");
    background-size: 60%;
    background-position: center;
    background-repeat: no-repeat;
}

/* Transitions et micro-mouvements pour toutes les chips */
.wa-tip .wa-chip,
.wa-chip-icon {
    transition:
        background-color .2s ease,
        transform .18s ease,
        box-shadow .18s ease;
}

/* Hover chips texte */
.wa-tip .wa-chip:hover {
    background-color: #f7efd9;
    transform: translateY(-1px);
    box-shadow: 0 3px 12px rgba(0,0,0,0.12);
}

/* Hover chip WhatsApp (mini pop + halo un peu plus fort) */
.wa-chip-icon:hover {
    background-color: #f6f2e7;
    transform: translateY(-2px) scale(1.03);
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
}

/* Animation respiration du tooltip */
@keyframes heimstub-tooltip-breath {
    0% {
        box-shadow: 0 3px 12px rgba(0,0,0,0.15);
        border-color: #e4dcc2;
    }
    50% {
        box-shadow: 0 8px 22px rgba(0,0,0,0.25);
        border-color: #d6c79f;
    }
    100% {
        box-shadow: 0 3px 12px rgba(0,0,0,0.15);
        border-color: #e4dcc2;
    }
}

/* On applique la respiration uniquement quand la bulle est visible */
.wa-tip:hover a::after {
    animation: heimstub-tooltip-breath 1.6s ease-in-out infinite;
}
/* ===== Bloc général de liens Heimstüb ===== */
.heimstub-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 24px 0;
    padding: 14px 18px;
}
/* ===== Lien individuel (chip) ===== */
.heimstub-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px 6px 12px;
    border-radius: 999px;
    background-color: #ffffff;
    border: 1px solid #e4dcc2;
    color: #322e02 !important;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    transition:
        background-color .18s ease,
        box-shadow .18s ease,
        transform .16s ease,
        border-color .18s ease;
}

/* Favicon */
.heimstub-favicon {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    flex-shrink: 0;
}

/* Hover : petit effet “respiration” Heimstüb */
.heimstub-link:hover {
    background-color: #f8f4ea;
    border-color: #d8cba5;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    transform: translateY(-1px);
}

/* Focus clavier : lisible mais discret */
.heimstub-link:focus-visible {
    outline: 2px solid #556B2F;
    outline-offset: 2px;
}

/* Variante mobile : resserrer un peu le bloc */
@media (max-width: 768px) {
    .heimstub-links {
        padding: 10px 12px;
        gap: 8px;
    }

    .heimstub-link {
      width: 100%;
        font-size: 0.85rem;
        padding: 5px 12px;
    }
}
.fuhrmann-link {
    font-weight: 600;   
    text-decoration: none !important; 
    color: #556B2F !important;             /* garde la couleur du texte courant */
    cursor: url('https://heimstub.fr/wp-content/themes/bosa-restaurant-cafe/assets/icons/Heimstub-pointer.png') 25 25 , pointer;
}

.fuhrmann-link:hover {
   font-weight: 600;  
   color: #7d9e42 !important; 
}



