/*
Theme Name: Ariège-Masala V6.1.9 — Masala Simple
Theme URI: https://ariege-masala.fr
Author: Ariege-Masala
Description: Thème WooCommerce complet Ariege-Masala : boutique, catégories, fiches produits, panier, commande, compte, retrait à Pamiers, livraison, FAQ et pages juridiques.
Version: 6.1.9
Text Domain: indian-massala
*/
:root{--cream:#fffaf2;--cream2:#f5ecdf;--wood:#2b180f;--wood2:#1c100a;--ink:#392318;--gold:#c98a20;--gold2:#e4b450;--rust:#b65b24;--line:#e7d7be;--green:#56704b;--main:1120px;--grid:980px}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:#fffdf9;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55} a{color:inherit;text-decoration:none} img{max-width:100%;height:auto}.container{width:min(var(--main),calc(100% - 40px));margin-inline:auto}.site-top{background:#f7f0e5;border-bottom:1px solid var(--line);font-size:12px}.im-service-strip{width:min(760px,calc(100% - 32px));margin:auto;display:flex;justify-content:center;gap:38px;align-items:center;min-height:30px;white-space:nowrap}.site-header{position:sticky;top:0;z-index:60;background:var(--cream);box-shadow:0 1px 0 rgba(78,50,34,.08)}body.admin-bar .site-header{top:32px}.header-main{min-height:92px;display:grid;grid-template-columns:330px minmax(300px,500px) 250px;gap:40px;align-items:center;justify-content:center}.im-brand{display:flex;align-items:center;gap:14px;min-width:330px}.im-mandala{width:74px;height:74px;object-fit:contain;flex:0 0 74px}.im-brand-copy{display:flex;flex-direction:column;align-items:center}.im-brand-copy strong{font:700 32px/1.05 Georgia,serif;color:#3b2116;white-space:nowrap}.im-tagline{display:flex;align-items:center;gap:8px;margin-top:7px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.65px;white-space:nowrap}.im-tagline:before,.im-tagline:after{content:"";width:24px;height:1px;background:var(--gold)}.header-search{display:flex;align-items:center;max-width:500px;width:100%;height:42px;border:1px solid #d6b46f;border-radius:999px;background:#fff}.header-search input{flex:1;border:0;background:transparent;padding:0 16px;outline:none;font-size:14px}.header-search button{border:0;background:transparent;padding:0 16px;color:var(--ink);font-size:21px}.header-actions{display:flex;justify-content:flex-end;gap:28px;align-items:center}.header-actions a{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700}.header-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}.cart-count{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--gold);color:white;font-size:11px;display:inline-grid;place-items:center}.main-nav{background:linear-gradient(90deg,var(--wood2),var(--wood),var(--wood2));border:0}.im-main-menu{list-style:none;margin:0 auto;padding:0 20px;display:flex;justify-content:center;gap:66px;align-items:center}.im-main-menu a{display:block;color:#fff9ef;font-weight:800;font-size:13px;padding:15px 8px}.im-main-menu a:hover{color:#f2c668}
.hero{min-height:500px;background:linear-gradient(90deg,rgba(26,13,7,.84),rgba(26,13,7,.5) 49%,rgba(26,13,7,.06)),url('assets/images/hero-background.jpg') center/cover no-repeat;display:flex;align-items:center;color:#fff}.hero-content{width:min(var(--main),calc(100% - 40px));margin:auto}.hero-copy{max-width:600px}.hero h1{font:700 clamp(54px,6vw,82px)/.98 Georgia,serif;margin:0 0 18px}.hero-sub{font:700 22px Georgia,serif;color:#f0ad2c;margin:0 0 8px}.hero p{max-width:520px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;padding:12px 19px;font-size:12px;font-weight:800;letter-spacing:.2px;border:1px solid transparent;cursor:pointer}.btn-gold{background:var(--gold);color:#fff}.btn-outline{border-color:#fff;color:#fff;background:rgba(0,0,0,.08)}.hero-actions{display:flex;gap:10px;margin-top:24px}.section{padding:52px 0}.section-title{text-align:center;font:700 34px Georgia,serif;margin:0 0 8px}.section-intro{text-align:center;color:#73665d;margin:0 auto 26px;max-width:720px}.im-cat-grid{width:min(var(--grid),calc(100% - 36px));margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.im-cat{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 7px 20px rgba(58,34,21,.05)}.im-cat img{width:100%;height:245px;object-fit:cover}.im-cat-name{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;padding:14px 16px 16px}.im-cat-name:before,.im-cat-name:after{content:"";height:1px;background:linear-gradient(90deg,transparent,#d5a14a)}.im-cat-name:after{background:linear-gradient(90deg,#d5a14a,transparent)}.im-cat h3{margin:0;font:700 18px Georgia,serif;text-align:center}.im-click{width:min(var(--grid),calc(100% - 36px));margin:auto;background:#fbf5e9;border:1px solid var(--line);border-radius:12px;padding:18px 20px;display:grid;grid-template-columns:1.1fr 2.2fr auto;gap:18px;align-items:center}.im-click h2{font:700 23px Georgia,serif;margin:0 0 4px}.im-click p{font-size:12px;margin:0}.im-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.im-step{text-align:center;font-size:10px}.im-step b.num{display:grid;place-items:center;width:28px;height:28px;margin:0 auto 5px;border-radius:50%;background:var(--gold);color:#fff}.im-info-grid{width:min(var(--grid),calc(100% - 36px));margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.im-card{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;display:flex;flex-direction:column}.im-card img{width:100%;height:190px;object-fit:cover}.im-card.about img{object-fit:contain;background:#28180f}.im-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.im-card h3{font:700 21px Georgia,serif;margin:0 0 9px}.im-card p{font-size:13px;color:#66584e}.text-link{margin-top:auto;color:#9d571a;font-size:11px;font-weight:800}.newsletter-band{background:#382016;color:#fff}.newsletter{width:min(var(--grid),calc(100% - 36px));margin:auto;padding:15px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:center}.newsletter h2{font:700 20px Georgia,serif;margin:0}.newsletter p{font-size:11px;color:#eadfd8;margin:2px 0 0}.newsletter-form{display:flex;gap:8px}.newsletter-form input{flex:1;min-height:38px;border:0;border-radius:5px;padding:0 12px}.site-footer{background:#24140e;color:#e9ddd5}.site-footer>.container{width:min(var(--main),calc(100% - 40px))}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:38px;padding:40px 0 28px}.site-footer h3{font:700 17px Georgia,serif;color:#fff}.site-footer p,.site-footer a{font-size:12px;color:#d9cbc3}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:14px 0;font-size:11px;color:#bcaea6;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* Common interior pages */.page-hero{background:linear-gradient(90deg,#f8efe2,#fffaf3);border-bottom:1px solid var(--line);padding:46px 0}.page-hero h1{font:700 44px Georgia,serif;margin:0 0 6px}.breadcrumbs{font-size:11px;color:#806f64;margin-bottom:14px}.content-wrap{width:min(var(--grid),calc(100% - 36px));margin:auto}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}.legal-layout{display:grid;grid-template-columns:240px 1fr;gap:34px}.legal-nav{position:sticky;top:150px;align-self:start;border:1px solid var(--line);border-radius:10px;background:#fff;padding:18px}.legal-nav a{display:block;padding:6px 0;font-size:12px;color:#765b49}.legal-copy h2{font:700 25px Georgia,serif;margin:28px 0 10px}.legal-copy h3{font:700 18px Georgia,serif}.legal-note{padding:14px 16px;background:#fff3d8;border:1px solid #efd18a;border-radius:8px;font-size:12px}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:22px;text-align:center}.service-card .ico{font-size:32px}.pickup-map{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.pickup-map img{display:block;width:100%;height:auto}.faq-grid{display:grid;grid-template-columns:230px 1fr;gap:30px}.faq-tabs{border:1px solid var(--line);border-radius:10px;background:#fff;padding:16px;align-self:start}.faq-tabs a{display:block;padding:7px 8px;font-size:12px}.faq-list details{border-bottom:1px solid var(--line);padding:13px 0}.faq-list summary{cursor:pointer;font-weight:700}.faq-list p{font-size:13px;color:#695a50}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.contact-card,.contact-form{border:1px solid var(--line);border-radius:10px;background:#fff;padding:22px}.contact-form label{display:block;font-size:12px;font-weight:700;margin:0 0 5px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #dbc8a9;border-radius:6px;padding:10px 12px;margin-bottom:14px;background:#fff}.contact-form textarea{min-height:150px}.im-success{padding:12px 14px;background:#edf7e9;border:1px solid #bdd8b2;border-radius:8px;margin-bottom:16px}
/* WooCommerce */.woocommerce .woocommerce-breadcrumb{font-size:11px;color:#7a695e;margin:20px 0}.woocommerce-products-header{background:#f7efe2;border:1px solid var(--line);border-radius:12px;padding:26px;margin:22px 0}.woocommerce-products-header__title.page-title{font:700 38px Georgia,serif}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:20px!important;margin:24px 0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden;padding-bottom:16px;box-shadow:0 6px 18px rgba(57,34,22,.05)}.woocommerce ul.products li.product a img{height:260px;object-fit:cover;margin:0 0 14px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font:700 17px Georgia,serif;padding:0 15px!important}.woocommerce ul.products li.product .price{color:var(--rust)!important;font-weight:800;padding:0 15px}.woocommerce ul.products li.product .button{margin:8px 15px 0!important;background:var(--gold)!important;color:#fff!important;border-radius:5px}.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:28px}.single-product div.product .woocommerce-product-gallery{width:auto!important;float:none!important}.single-product div.product .summary{width:auto!important;float:none!important}.single-product .product_title{font:700 40px Georgia,serif}.single-product .price{font-size:24px!important;color:var(--rust)!important;font-weight:800}.variations select{min-height:42px;border:1px solid #d6bd8a;border-radius:6px;padding:0 10px}.im-variation-pills{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.im-variation-pill{border:1px solid #cfb77f;background:#fff;border-radius:6px;padding:9px 14px;cursor:pointer;font-weight:800}.im-variation-pill.active{background:var(--wood);color:#fff;border-color:var(--wood)}.single_add_to_cart_button,.woocommerce .button.alt{background:var(--gold)!important;color:#fff!important}.im-product-service{margin:20px 0;padding:14px;background:#fbf5e9;border:1px solid var(--line);border-radius:8px;font-size:12px}.woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order,.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-account .woocommerce-MyAccount-content,.woocommerce-account .woocommerce-MyAccount-navigation{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}.woocommerce-account .woocommerce-MyAccount-navigation{width:24%}.woocommerce-account .woocommerce-MyAccount-content{width:73%}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:9px;border-bottom:1px solid var(--line)}
@media(max-width:980px){.header-main{grid-template-columns:1fr;gap:12px;padding:12px 0}.im-brand{justify-self:center}.header-search{justify-self:center}.header-actions{justify-content:center}.im-main-menu{gap:26px;overflow:auto;justify-content:flex-start}.im-cat-grid{grid-template-columns:repeat(2,1fr)}.im-click{grid-template-columns:1fr}.im-info-grid{grid-template-columns:1fr}.newsletter{grid-template-columns:1fr}.service-cards{grid-template-columns:1fr}.two-col,.contact-grid,.legal-layout,.faq-grid{grid-template-columns:1fr}.legal-nav{position:static}.single-product div.product{grid-template-columns:1fr}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){body.admin-bar .site-header{top:46px}.im-service-strip{gap:6px;flex-direction:column;padding:6px 0}.im-brand{min-width:0}.im-brand-copy strong{font-size:25px}.im-tagline{font-size:8px}.hero{min-height:430px}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:flex-start}.im-cat-grid{grid-template-columns:1fr;max-width:280px}.woocommerce ul.products{grid-template-columns:1fr!important}.footer-grid{grid-template-columns:1fr}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none}.newsletter-form{flex-direction:column}}

/* =========================================================
   Ariege-Masala V5.1 — corrections logo + catégories
   ========================================================= */

/* Logo header : mandala validé, net et proportionné */
.im-mandala{
  width:76px !important;
  height:76px !important;
  object-fit:contain !important;
}

/* Catégories : une seule ligne de nom, image sans texte embarqué */
.im-cat img{
  width:100% !important;
  height:245px !important;
  object-fit:cover !important;
  object-position:center !important;
}
.im-cat-name{
  min-height:58px !important;
  padding:14px 16px 16px !important;
}
.im-cat h3{
  margin:0 !important;
  white-space:nowrap !important;
}

/* Footer : même identité que le header */
.footer-brand-lockup{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-bottom:14px !important;
}
.footer-brand-lockup img{
  width:58px !important;
  height:58px !important;
  object-fit:contain !important;
  flex:0 0 58px !important;
}
.footer-brand-lockup h3{
  margin:0 !important;
  font:700 21px/1.05 Georgia,serif !important;
  color:#fff !important;
}
.footer-tagline{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  margin-top:5px !important;
  color:#d99a27 !important;
  font-size:8px !important;
  font-weight:800 !important;
  letter-spacing:.45px !important;
  white-space:nowrap !important;
}
.footer-tagline:before,
.footer-tagline:after{
  content:"" !important;
  width:18px !important;
  height:1px !important;
  background:#d99a27 !important;
}

/* V5.5 HD - proportions conservées */
.im-cat img{width:100%!important;height:245px!important;object-fit:cover!important;object-position:center!important}
.im-card.about img{width:100%!important;height:190px!important;object-fit:cover!important;object-position:center!important;background:#28180f!important}
.two-col img[alt="Mandala Ariege-Masala"]{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;object-fit:cover!important;object-position:center!important}


/* ==========================================================
   Ariege-Masala V5.6 — décors des pages internes
   Inspirés des maquettes validées.
   Aucun de ces sélecteurs ne touche au hero de la page d'accueil.
   ========================================================== */

.im-inner-page{
  position:relative;
  overflow:hidden;
  background:#fffaf3;
}

/* Hero intérieur avec décor latéral + filigrane mandala */
.im-inner-page .im-decor-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:260px;
  padding:38px 0 44px;
  background:
    radial-gradient(circle at 50% 45%, rgba(255,255,255,.96), rgba(255,250,243,.96) 58%, rgba(249,239,224,.96));
  border-bottom:1px solid var(--line);
}
.im-inner-page .im-decor-hero .content-wrap{
  position:relative;
  z-index:3;
  text-align:center;
}
.im-inner-page .im-decor-hero .breadcrumbs{
  text-align:left;
}
.im-inner-page .im-decor-hero h1{
  font-size:clamp(38px,4.2vw,58px);
  margin-top:12px;
}
.im-inner-page .im-decor-hero h1:after{
  content:"";
  display:block;
  width:150px;
  height:13px;
  margin:14px auto 14px;
  background:
    linear-gradient(90deg,transparent 0 15%,#cf8227 15% 40%,transparent 40% 47%,#cf8227 47% 53%,transparent 53% 60%,#cf8227 60% 85%,transparent 85%);
  opacity:.8;
}
.im-inner-page .im-decor-hero p{
  max-width:720px;
  margin:0 auto;
  color:#4d3b30;
}

/* Filigrane mandala sur la droite, comme sur les maquettes */
.im-inner-page .im-decor-hero:after{
  content:"";
  position:absolute;
  z-index:1;
  right:-70px;
  top:-60px;
  width:390px;
  height:390px;
  background:url('assets/images/mandala-brand-v5.png') center/contain no-repeat;
  opacity:.085;
  filter:sepia(1) saturate(1.8);
  pointer-events:none;
}

/* Décor alimentaire à gauche du hero */
.im-inner-page .im-decor-hero:before{
  content:"";
  position:absolute;
  z-index:1;
  left:-120px;
  top:-40px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:url('assets/images/cat-massalas-v55.jpg') center/cover no-repeat;
  opacity:.95;
  box-shadow:0 0 55px 35px #fffaf3 inset;
  pointer-events:none;
}

/* Variantes page par page */
.im-page-delivery .im-decor-hero:before{
  background-image:url('assets/images/cat-epices-v55.jpg');
}
.im-page-contact .im-decor-hero:before{
  background-image:url('assets/images/cat-massalas-v55.jpg');
}
.im-page-contact .im-decor-hero:after{
  background-image:url('assets/images/mandala-brand-v5.png');
}
.im-page-faq .im-decor-hero:before{
  background-image:url('assets/images/cat-massalas-v55.jpg');
}
.im-page-about .im-decor-hero:before{
  background-image:url('assets/images/cat-epices-v55.jpg');
}
.im-page-legal .im-decor-hero:before{
  background-image:url('assets/images/cat-massalas-v55.jpg');
}

/* Petites touches décoratives dans le corps des pages */
.im-inner-page .section{
  position:relative;
  z-index:2;
}
.im-inner-page .section:nth-of-type(even):after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-80px;
  width:260px;
  height:260px;
  background:url('assets/images/mandala-brand-v5.png') center/contain no-repeat;
  opacity:.035;
  pointer-events:none;
}
.im-inner-page .service-card,
.im-inner-page .contact-card,
.im-inner-page .contact-form,
.im-inner-page .legal-nav,
.im-inner-page .faq-tabs,
.im-inner-page .pickup-map{
  box-shadow:0 10px 28px rgba(58,34,21,.045);
}

/* À propos : grand mandala bien entier, sans recadrage */
.im-page-about .two-col > div:last-child{
  display:flex;
  align-items:center;
}
.im-page-about .two-col img[alt="Mandala Ariege-Masala"]{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  border-radius:14px !important;
  box-shadow:0 12px 30px rgba(58,34,21,.12);
}

/* Accueil : le même fichier, mais contenu entièrement visible dans la carte */
.im-card.about img{
  object-fit:cover !important;
  object-position:center !important;
  background:#28180f !important;
}

/* FAQ plus proche de la maquette */
.im-page-faq .faq-tabs{
  background:#fff9f0;
}
.im-page-faq .faq-list details{
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  padding:16px 18px;
  margin-bottom:10px;
}
.im-page-faq .faq-list details:last-child{
  border-bottom:1px solid var(--line);
}

/* Contact : cartes légèrement crème */
.im-page-contact .contact-card,
.im-page-contact .contact-form{
  background:linear-gradient(180deg,#fffdfa,#fff8ee);
}

/* Légal : lecture plus élégante */
.im-page-legal .legal-copy{
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:24px 28px;
  box-shadow:0 10px 28px rgba(58,34,21,.045);
}

/* Responsive : décor volontairement plus discret */
@media(max-width:980px){
  .im-inner-page .im-decor-hero:before{
    width:240px;
    height:240px;
    left:-110px;
    top:0;
    opacity:.55;
  }
  .im-inner-page .im-decor-hero:after{
    width:250px;
    height:250px;
    right:-100px;
    top:10px;
  }
}
@media(max-width:600px){
  .im-inner-page .im-decor-hero{
    min-height:220px;
    padding:30px 0 34px;
  }
  .im-inner-page .im-decor-hero:before{
    opacity:.24;
  }
  .im-inner-page .im-decor-hero:after{
    opacity:.05;
  }
}


/* ==========================================================
   V5.7 — PAGE À PROPOS fidèle à la maquette validée
   Styles strictement limités à .im-page-about-v57
   ========================================================== */

.im-page-about-v57{
  --a57-ink:#2f190f;
  --a57-gold:#d58a22;
  --a57-pale:#fff9f0;
  --a57-line:#ecd7b8;
  color:var(--a57-ink);
  background:#fffaf3;
  overflow:hidden;
}

.im-page-about-v57 h1,
.im-page-about-v57 h2,
.im-page-about-v57 h3{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--a57-ink);
}
.im-page-about-v57 p{ line-height:1.65; }
.im-page-about-v57 .breadcrumbs{
  font-size:12px;
  color:#5d5048;
  margin-bottom:34px;
}

/* HERO */
.about57-hero{
  position:relative;
  min-height:420px;
  background:linear-gradient(90deg,#fff8ee 0%,#fffdf9 48%,#fff8ed 100%);
  border-bottom:1px solid #eadbc7;
  overflow:hidden;
}
.about57-hero-grid{
  min-height:420px;
  display:grid;
  grid-template-columns:1fr .92fr;
  align-items:center;
  gap:50px;
  position:relative;
  z-index:3;
}
.about57-hero-copy{
  padding:28px 0 40px 170px;
}
.about57-hero-copy h1{
  font-size:clamp(42px,5vw,66px);
  line-height:.98;
  margin:0 0 14px;
}
.about57-rule{
  display:flex;
  align-items:center;
  gap:12px;
  width:150px;
  margin:15px 0 22px;
}
.about57-rule span{
  height:1px;
  flex:1;
  background:var(--a57-gold);
}
.about57-rule i{
  width:9px;height:9px;
  background:var(--a57-gold);
  transform:rotate(45deg);
}
.about57-hero-copy h3{
  font-size:21px;
  line-height:1.45;
  margin:0 0 14px;
}
.about57-hero-copy h3 strong{ font-weight:400; }
.about57-hero-copy p{
  max-width:520px;
  margin:0;
}
.about57-hero-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
}
.about57-hero-mark img{
  width:min(390px,75%);
  height:auto;
  object-fit:contain;
  opacity:.98;
  filter:sepia(.4) saturate(1.05) brightness(1.06);
}
.about57-spices{
  position:absolute;
  left:-80px;
  top:0;
  width:270px;
  height:100%;
  background:url('assets/images/cat-massalas-v55.jpg') center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,#000 45%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 45%,transparent 100%);
}
.about57-ghost{
  position:absolute;
  right:-100px;
  top:-90px;
  width:480px;height:480px;
  background:url('assets/images/mandala-brand-v5.png') center/contain no-repeat;
  opacity:.06;
}

/* HISTOIRE */
.about57-story{
  padding:48px 0 22px;
}
.about57-story-grid{
  display:grid;
  grid-template-columns:.72fr 1.35fr;
  gap:56px;
  align-items:start;
}
.about57-story-copy h2,
.about57-selection-copy h2{
  font-size:34px;
  margin:0;
}
.about57-small-rule{
  width:52px;
  height:2px;
  background:var(--a57-gold);
  margin:13px 0 24px;
}
.about57-pamiers{
  position:relative;
  overflow:hidden;
  border-radius:12px;
  min-height:330px;
}
.about57-pamiers>img{
  display:block;
  width:100%;
  height:330px;
  object-fit:cover;
}
.about57-local-card{
  position:absolute;
  right:24px;
  top:24px;
  width:260px;
  background:rgba(255,252,247,.96);
  border:1px solid var(--a57-line);
  border-radius:10px;
  padding:25px 24px;
  text-align:center;
  box-shadow:0 10px 28px rgba(45,25,15,.13);
}
.about57-local-card h3{
  font-size:21px;
  margin:8px 0 12px;
}
.about57-pin{
  width:42px;height:42px;
  display:grid;place-items:center;
  margin:0 auto;
  border-radius:50%;
  background:#f7e4c8;
  color:var(--a57-gold);
}

/* VALEURS */
.about57-values{
  padding:12px 0 34px;
}
.about57-title-center{
  text-align:center;
}
.about57-title-center h2{
  font-size:34px;
  margin:0;
}
.about57-title-center .about57-rule{
  margin:12px auto 24px;
}
.about57-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--a57-line);
  border-bottom:1px solid var(--a57-line);
}
.about57-value{
  padding:28px 28px 24px;
  text-align:center;
  position:relative;
}
.about57-value:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:22%;
  height:58%;
  border-right:1px dotted #dbb985;
}
.about57-icon{
  width:52px;height:52px;
  display:grid;place-items:center;
  margin:0 auto 10px;
  border-radius:50%;
  background:#f8ead5;
  font-size:23px;
}
.about57-value h3{
  font-size:18px;
  margin:0 0 8px;
}
.about57-value p{
  margin:0;
  font-size:13px;
}

/* SÉLECTION */
.about57-selection{
  padding:18px 0 32px;
}
.about57-selection-grid{
  display:grid;
  grid-template-columns:1.05fr 1fr .55fr;
  gap:44px;
  align-items:center;
}
.about57-selection-photo{
  border-radius:12px;
  overflow:hidden;
}
.about57-selection-photo img{
  width:100%;
  height:310px;
  object-fit:cover;
  display:block;
}
.about57-selection-copy p{ margin-bottom:15px; }
.about57-selection-copy ul{
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
.about57-selection-copy li{
  position:relative;
  padding:5px 0 5px 26px;
}
.about57-selection-copy li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#d88920;
  font-weight:800;
}
.about57-selection-decor{
  align-self:stretch;
  display:flex;
  align-items:center;
}
.about57-selection-decor img{
  width:100%;
  height:250px;
  object-fit:cover;
  border-radius:50% 0 0 50%;
  opacity:.92;
  box-shadow:0 0 30px 20px #fffaf3 inset;
}

/* CTA */
.about57-cta{
  padding:0 0 34px;
}
.about57-cta-grid{
  border:1px solid var(--a57-line);
  border-radius:10px;
  background:
    linear-gradient(90deg,rgba(255,247,235,.98),rgba(255,252,247,.98)),
    url('assets/images/mandala-brand-v5.png');
  padding:24px 28px;
  display:grid;
  grid-template-columns:70px 1.1fr 1.5fr auto;
  gap:22px;
  align-items:center;
}
.about57-bag{
  width:55px;height:55px;
  border:2px solid var(--a57-gold);
  color:var(--a57-gold);
  border-radius:14px;
  display:grid;place-items:center;
  font-size:27px;
}
.about57-cta h2{
  font-size:24px;
  margin:0;
}
.about57-cta p{
  margin:0;
  font-size:13px;
}
.about57-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--a57-gold);
  border-radius:6px;
  padding:13px 23px;
  color:#a95d10;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}

/* Responsive */
@media(max-width:1050px){
  .about57-hero-copy{padding-left:70px}
  .about57-story-grid{grid-template-columns:1fr}
  .about57-values-grid{grid-template-columns:repeat(2,1fr)}
  .about57-selection-grid{grid-template-columns:1fr 1fr}
  .about57-selection-decor{display:none}
  .about57-cta-grid{grid-template-columns:60px 1fr auto}
  .about57-cta-grid p{grid-column:2/4}
}
@media(max-width:720px){
  .about57-hero-grid{grid-template-columns:1fr}
  .about57-hero{min-height:auto}
  .about57-hero-copy{padding:34px 20px 15px}
  .about57-hero-mark{padding:0 20px 32px}
  .about57-hero-mark img{width:240px}
  .about57-spices{opacity:.25}
  .about57-story{padding-top:32px}
  .about57-pamiers>img{height:400px}
  .about57-local-card{position:absolute;left:18px;right:18px;bottom:18px;top:auto;width:auto}
  .about57-values-grid{grid-template-columns:1fr}
  .about57-value:not(:last-child):after{display:none}
  .about57-value:not(:last-child){border-bottom:1px dotted #dbb985}
  .about57-selection-grid{grid-template-columns:1fr}
  .about57-cta-grid{grid-template-columns:1fr;text-align:center}
  .about57-bag{margin:auto}
  .about57-cta-grid p{grid-column:auto}
}


/* ==============================================================
   V5.8 — À PROPOS : REPRODUCTION FIDÈLE DE LA MAQUETTE VALIDÉE
   ============================================================== */

.about58{
  --c:#342014;
  --gold:#d58a21;
  --cream:#fffaf2;
  --line:#ead6b7;
  background:#fffaf2;
  color:var(--c);
  overflow:hidden;
}
.about58 h1,.about58 h2,.about58 h3{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--c);
}
.about58 p{line-height:1.68}

/* HERO — même architecture que le screen */
.about58-hero{
  position:relative;
  height:340px;
  background:#fffaf2;
  overflow:hidden;
  border-bottom:1px solid #ecddc8;
}
.about58-hero-inner{
  height:100%;
  display:flex;
  align-items:center;
  position:relative;
  z-index:2;
}
.about58-hero-copy{
  width:49%;
  margin-left:145px;
  margin-top:0;
}
.about58 .breadcrumbs{
  font-size:12px;
  margin-bottom:28px;
  color:#54463d;
}
.about58-hero h1{
  font-size:58px;
  line-height:.96;
  margin:0 0 12px;
  letter-spacing:-.8px;
}
.about58-divider{
  width:145px;
  display:flex;
  align-items:center;
  gap:11px;
  margin:13px 0 19px;
}
.about58-divider span{
  height:1px;
  background:var(--gold);
  flex:1;
}
.about58-divider b{
  width:8px;height:8px;
  background:var(--gold);
  transform:rotate(45deg);
}
.about58-hero h3{
  font-size:18px;
  line-height:1.5;
  margin:0 0 12px;
}
.about58-hero h3 strong{font-weight:400}
.about58-hero p{
  margin:0;
  max-width:480px;
  font-size:14px;
}
.about58-hero-left-decor{
  position:absolute;
  left:0;top:0;
  width:215px;height:340px;
  background:url('assets/images/about-v517-spices.jpg') center/cover no-repeat;
}
.about58-hero-right-decor{
  position:absolute;
  right:0;top:0;
  width:46%;height:340px;
  background:url('assets/images/about-v519-selection-right.jpg') center/cover no-repeat;
}

/* HISTOIRE */
.about58-story{padding:32px 0 12px}
.about58-story-grid{
  display:grid;
  grid-template-columns:33% 1fr;
  gap:42px;
  align-items:start;
}
.about58-story-copy{padding-top:6px}
.about58-story h2,.about58-selection h2{
  font-size:30px;
  margin:0;
}
.about58-mini-line{
  width:56px;height:2px;
  background:var(--gold);
  margin:11px 0 20px;
}
.about58-story-copy p{
  font-size:13px;
  margin:0 0 16px;
}
.about58-pamiers{
  height:230px;
  border-radius:10px;
  overflow:hidden;
  position:relative;
}
.about58-pamiers>img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.about58-pamiers-card{
  position:absolute;
  top:18px;right:20px;
  width:220px;
  min-height:194px;
  background:rgba(255,252,247,.97);
  border:1px solid var(--line);
  border-radius:8px;
  padding:18px 18px 14px;
  text-align:center;
  box-shadow:0 8px 22px rgba(45,25,15,.14);
}
.about58-pamiers-card h3{
  font-size:18px;
  line-height:1.25;
  margin:7px 0 10px;
}
.about58-pamiers-card p{
  margin:0;
  font-size:11.5px;
}
.about58-pin{
  width:34px;height:34px;
  border-radius:50%;
  display:grid;place-items:center;
  color:#d38a22;
  background:#f7e6ce;
  margin:0 auto;
}

/* VALEURS */
.about58-values{padding:8px 0 20px}
.about58-title-center{text-align:center}
.about58-title-center h2{font-size:28px;margin:0}
.about58-divider-center{margin:10px auto 16px}
.about58-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.about58-values-grid article{
  text-align:center;
  padding:17px 26px 16px;
  position:relative;
}
.about58-values-grid article:not(:last-child):after{
  content:"";
  position:absolute;right:0;top:20%;
  height:60%;
  border-right:1px dotted #d8b680;
}
.about58-value-icon{
  width:42px;height:42px;
  border-radius:50%;
  margin:0 auto 8px;
  display:grid;place-items:center;
  background:#f8e9d4;
  font-size:18px;
}
.about58-values-grid h3{
  font-size:15px;
  margin:0 0 6px;
}
.about58-values-grid p{
  font-size:11.5px;
  margin:0;
}

/* SÉLECTION */
.about58-selection{padding:14px 0 22px}
.about58-selection-grid{
  display:grid;
  grid-template-columns:37% 39% 1fr;
  gap:30px;
  align-items:center;
}
.about58-selection-photo{
  border-radius:8px;
  overflow:hidden;
  height:235px;
}
.about58-selection-photo img{
  width:100%;height:100%;
  object-fit:cover;
}
.about58-selection-copy p{
  font-size:12px;
  margin:0 0 10px;
}
.about58-selection-copy ul{
  margin:0 0 16px;
  padding:0;
  list-style:none;
}
.about58-selection-copy li{
  font-size:11.5px;
  position:relative;
  padding:3px 0 3px 22px;
}
.about58-selection-copy li:before{
  content:"✓";
  position:absolute;left:0;
  color:#d8891f;
  font-weight:800;
}
.about58-selection-copy .btn{
  min-width:220px;
}
.about58-selection-decor{
  height:245px;
  background:url('assets/images/about-v521-selection-right.png') center/cover no-repeat;
  border-radius:55% 0 0 55%;
  box-shadow:0 0 28px 15px #fffaf2 inset;
}

/* CTA bas */
.about58-bottom{padding:0 0 20px}
.about58-bottom-inner{
  display:grid;
  grid-template-columns:60px 1.1fr 1.6fr auto;
  gap:18px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff8ee;
  padding:16px 22px;
}
.about58-bag{
  width:48px;height:48px;
  display:grid;place-items:center;
  border:2px solid #d58a21;
  border-radius:12px;
  color:#d58a21;
  font-size:24px;
}
.about58-bottom h2{
  margin:0;
  font-size:20px;
  line-height:1.15;
}
.about58-bottom p{
  margin:0;
  font-size:11.5px;
}
.about58-outline{
  border:1px solid #d58a21;
  color:#a65c10;
  border-radius:5px;
  text-decoration:none;
  padding:10px 19px;
  font-weight:700;
  font-size:12px;
  white-space:nowrap;
}

/* proportions desktop proches de la maquette */
.about58 .content-wrap{
  width:min(860px,calc(100% - 36px));
}

/* responsive */
@media(max-width:900px){
  .about58-hero{height:auto;min-height:360px}
  .about58-hero-copy{margin-left:70px;width:60%;padding:32px 0}
  .about58-hero h1{font-size:48px}
  .about58-hero-right-decor{opacity:.6}
  .about58-story-grid{grid-template-columns:1fr}
  .about58-values-grid{grid-template-columns:repeat(2,1fr)}
  .about58-selection-grid{grid-template-columns:1fr 1fr}
  .about58-selection-decor{display:none}
  .about58-bottom-inner{grid-template-columns:55px 1fr auto}
  .about58-bottom p{grid-column:2/4}
}
@media(max-width:620px){
  .about58-hero-copy{margin-left:20px;width:82%;position:relative;z-index:3}
  .about58-hero-left-decor{opacity:.18}
  .about58-hero-right-decor{opacity:.18;width:100%}
  .about58-hero h1{font-size:40px}
  .about58-values-grid{grid-template-columns:1fr}
  .about58-values-grid article:not(:last-child):after{display:none}
  .about58-values-grid article:not(:last-child){border-bottom:1px dotted #d8b680}
  .about58-selection-grid{grid-template-columns:1fr}
  .about58-pamiers{height:360px}
  .about58-pamiers-card{left:16px;right:16px;bottom:16px;top:auto;width:auto}
  .about58-bottom-inner{grid-template-columns:1fr;text-align:center}
  .about58-bag{margin:auto}
  .about58-bottom p{grid-column:auto}
}


/* ==============================================================
   V5.9 — PAGE À PROPOS PLEINE LARGEUR / COMPOSITION CONTINUE
   ============================================================== */

.about59{
  --ink:#2f1a10;
  --gold:#d58a21;
  --cream:#fffaf3;
  --line:#ead8bc;
  background:var(--cream);
  color:var(--ink);
  overflow:hidden;
}
.about59 *{box-sizing:border-box}
.about59 h1,.about59 h2,.about59 h3{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--ink);
}
.about59 p{line-height:1.65}

/* Une seule largeur de composition pour toute la page */
.about59-shell{
  width:min(1180px, calc(100% - 56px));
  margin:0 auto;
}

/* HERO pleine largeur */
.about59-hero{
  position:relative;
  width:100%;
  min-height:420px;
  background:#fffaf3;
  overflow:hidden;
}
.about59-hero-grid{
  min-height:420px;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  position:relative;
  z-index:2;
}
.about59-hero-copy{
  padding:58px 0 54px;
  max-width:540px;
}
.about59-hero h1{
  margin:0;
  font-size:clamp(48px,5.4vw,72px);
  line-height:.95;
  letter-spacing:-1px;
}
.about59-divider{
  width:150px;
  display:flex;
  align-items:center;
  gap:11px;
  margin:17px 0 22px;
}
.about59-divider span{
  height:1px;
  flex:1;
  background:var(--gold);
}
.about59-divider b{
  width:8px;height:8px;
  background:var(--gold);
  transform:rotate(45deg);
}
.about59-hero h3{
  margin:0 0 13px;
  font-size:21px;
  line-height:1.45;
}
.about59-hero h3 strong{font-weight:400}
.about59-hero p{
  margin:0;
  max-width:530px;
  font-size:15px;
}

/* Décor gauche et mandala droit intégrés au hero, sans effet de bloc */
.about59-hero-spices{
  position:absolute;
  inset:0 auto 0 0;
  width:30%;
  max-width:380px;
  background:url('assets/images/about-v517-spices.jpg') center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,#000 0 62%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0 62%,transparent 100%);
}
.about59-hero-mandala{
  position:absolute;
  inset:0 0 0 auto;
  width:52%;
  background:url('assets/images/about-v519-selection-right.jpg') center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%);
  mask-image:linear-gradient(90deg,transparent 0,#000 18%);
}

/* NOTRE HISTOIRE */
.about59-story{
  width:100%;
  padding:48px 0 18px;
}
.about59-story-grid{
  display:grid;
  grid-template-columns:.82fr 1.45fr;
  gap:56px;
  align-items:start;
}
.about59-copy h2,
.about59-selection-copy h2{
  margin:0;
  font-size:34px;
}
.about59-mini-line{
  width:56px;
  height:2px;
  background:var(--gold);
  margin:13px 0 24px;
}
.about59-copy p{
  margin:0 0 18px;
  font-size:14px;
}
.about59-pamiers{
  position:relative;
  height:310px;
  overflow:hidden;
  border-radius:10px;
}
.about59-pamiers img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.about59-local-card{
  position:absolute;
  top:24px;right:24px;
  width:270px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,252,247,.97);
  text-align:center;
  box-shadow:0 12px 30px rgba(47,26,16,.13);
}
.about59-local-card h3{
  font-size:21px;
  margin:8px 0 12px;
}
.about59-local-card p{
  margin:0;
  font-size:13px;
}
.about59-pin{
  width:40px;height:40px;
  display:grid;place-items:center;
  margin:0 auto;
  border-radius:50%;
  background:#f7e7cf;
  color:var(--gold);
}

/* VALEURS */
.about59-values{
  width:100%;
  padding:14px 0 30px;
}
.about59-title-center{text-align:center}
.about59-title-center h2{
  margin:0;
  font-size:34px;
}
.about59-divider-center{margin:12px auto 22px}
.about59-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.about59-values-grid article{
  position:relative;
  padding:26px 30px;
  text-align:center;
}
.about59-values-grid article:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;top:22%;
  height:56%;
  border-right:1px dotted #d9b77f;
}
.about59-icon{
  width:50px;height:50px;
  display:grid;place-items:center;
  margin:0 auto 9px;
  border-radius:50%;
  background:#f7e8d2;
  font-size:22px;
}
.about59-values-grid h3{
  margin:0 0 7px;
  font-size:17px;
}
.about59-values-grid p{
  margin:0;
  font-size:13px;
}

/* SÉLECTION */
.about59-selection{
  width:100%;
  padding:18px 0 34px;
}
.about59-selection-grid{
  display:grid;
  grid-template-columns:1fr 1fr .55fr;
  gap:42px;
  align-items:center;
}
.about59-selection-photo{
  overflow:hidden;
  border-radius:10px;
}
.about59-selection-photo img{
  width:100%;
  height:300px;
  object-fit:cover;
  display:block;
}
.about59-selection-copy p{
  margin:0 0 15px;
  font-size:14px;
}
.about59-selection-copy ul{
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
.about59-selection-copy li{
  position:relative;
  padding:5px 0 5px 25px;
  font-size:13px;
}
.about59-selection-copy li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#d5891f;
  font-weight:800;
}
.about59-selection-decor{
  height:270px;
  background:url('assets/images/about-v521-selection-right.png') center/cover no-repeat;
  border-radius:55% 0 0 55%;
  box-shadow:0 0 34px 18px var(--cream) inset;
}

/* CTA final */
.about59-cta{
  width:100%;
  padding:0 0 34px;
}
.about59-cta-inner{
  display:grid;
  grid-template-columns:66px 1.1fr 1.5fr auto;
  gap:22px;
  align-items:center;
  padding:22px 28px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff7ec;
}
.about59-bag{
  width:54px;height:54px;
  display:grid;place-items:center;
  border:2px solid var(--gold);
  border-radius:13px;
  color:var(--gold);
  font-size:26px;
}
.about59-cta h2{
  margin:0;
  font-size:24px;
  line-height:1.15;
}
.about59-cta p{
  margin:0;
  font-size:13px;
}
.about59-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  border:1px solid var(--gold);
  border-radius:6px;
  color:#a85d10;
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}

/* Desktop large : composition plus proche de la maquette */
@media(min-width:1400px){
  .about59-shell{width:min(1280px,calc(100% - 80px))}
  .about59-hero{min-height:460px}
  .about59-hero-grid{min-height:460px}
}

/* Tablette */
@media(max-width:980px){
  .about59-shell{width:min(100% - 36px,1180px)}
  .about59-hero-grid{grid-template-columns:1fr}
  .about59-hero-copy{max-width:620px}
  .about59-hero-spices{opacity:.25;width:45%}
  .about59-hero-mandala{opacity:.4;width:65%}
  .about59-story-grid{grid-template-columns:1fr}
  .about59-values-grid{grid-template-columns:repeat(2,1fr)}
  .about59-selection-grid{grid-template-columns:1fr 1fr}
  .about59-selection-decor{display:none}
  .about59-cta-inner{grid-template-columns:60px 1fr auto}
  .about59-cta p{grid-column:2/4}
}

/* Mobile */
@media(max-width:620px){
  .about59-shell{width:calc(100% - 24px)}
  .about59-hero{min-height:390px}
  .about59-hero-copy{padding:40px 0}
  .about59-hero h1{font-size:42px}
  .about59-hero-spices,.about59-hero-mandala{opacity:.18}
  .about59-pamiers{height:420px}
  .about59-local-card{
    left:16px;right:16px;bottom:16px;top:auto;width:auto;
  }
  .about59-values-grid{grid-template-columns:1fr}
  .about59-values-grid article:not(:last-child):after{display:none}
  .about59-values-grid article:not(:last-child){border-bottom:1px dotted #d9b77f}
  .about59-selection-grid{grid-template-columns:1fr}
  .about59-cta-inner{grid-template-columns:1fr;text-align:center}
  .about59-bag{margin:auto}
  .about59-cta p{grid-column:auto}
}


/* ==========================================================
   V5.10 — À PROPOS : PAGE ENTIÈRE, LARGEUR LIMITÉE ET ALIGNÉE
   ========================================================== */

.about510{
  background:#fffaf3;
  color:#2f1b11;
  padding:26px 0 36px;
}
.about510 *{box-sizing:border-box}
.about510 h1,.about510 h2,.about510 h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#2f1b11;
}
.about510 p{line-height:1.65}
.about510-shell{
  width:min(1180px, calc(100% - 48px));
  margin:0 auto;
}

/* HERO */
.about510-hero{
  display:grid;
  grid-template-columns:1fr 1.08fr;
  gap:34px;
  align-items:stretch;
  background:#fff7ec;
  border:1px solid #ead8bc;
  border-radius:18px;
  overflow:hidden;
  min-height:360px;
}
.about510-hero-copy{
  padding:46px 0 44px 48px;
  align-self:center;
}
.about510-hero h1{
  margin:0;
  font-size:clamp(48px,4.5vw,68px);
  line-height:.96;
}
.about510-divider{
  width:150px;
  display:flex;
  gap:11px;
  align-items:center;
  margin:17px 0 21px;
}
.about510-divider span{height:1px;flex:1;background:#d58a21}
.about510-divider b{
  width:8px;height:8px;background:#d58a21;transform:rotate(45deg)
}
.about510-hero h3{
  font-size:21px;
  line-height:1.45;
  margin:0 0 14px;
}
.about510-hero h3 strong{font-weight:400}
.about510-hero p{
  max-width:500px;
  margin:0;
  font-size:15px;
}
.about510-hero-image{
  min-height:360px;
  background:#2a170e;
}
.about510-hero-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  background:#2a170e;
}

/* STORY */
.about510-story{
  display:grid;
  grid-template-columns:.8fr 1.45fr;
  gap:44px;
  align-items:start;
  padding:42px 0 18px;
}
.about510-story h2,
.about510-selection h2{
  margin:0;
  font-size:32px;
}
.about510-mini-line{
  width:56px;
  height:2px;
  background:#d58a21;
  margin:12px 0 22px;
}
.about510-story article p{
  font-size:14px;
  margin:0 0 16px;
}
.about510-pamiers{
  position:relative;
  height:300px;
  border-radius:14px;
  overflow:hidden;
}
.about510-pamiers>img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.about510-pamiers aside{
  position:absolute;
  right:22px;
  top:22px;
  width:255px;
  padding:20px;
  background:rgba(255,252,247,.96);
  border:1px solid #ead8bc;
  border-radius:10px;
  text-align:center;
  box-shadow:0 10px 28px rgba(47,27,17,.12);
}
.about510-pamiers aside h3{
  margin:8px 0 11px;
  font-size:20px;
}
.about510-pamiers aside p{
  margin:0;
  font-size:12.5px;
}
.about510-pin{
  width:40px;height:40px;
  display:grid;place-items:center;
  margin:0 auto;
  border-radius:50%;
  background:#f7e7cf;
  color:#d58a21;
}

/* VALUES */
.about510-values{
  padding:8px 0 28px;
}
.about510-heading-center{text-align:center}
.about510-heading-center h2{margin:0;font-size:32px}
.about510-divider-center{margin:11px auto 20px}
.about510-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #ead8bc;
  border-bottom:1px solid #ead8bc;
}
.about510-values-grid article{
  position:relative;
  text-align:center;
  padding:25px 28px;
}
.about510-values-grid article:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:22%;
  height:56%;
  border-right:1px dotted #d6b47d;
}
.about510-icon{
  width:50px;height:50px;
  display:grid;place-items:center;
  margin:0 auto 9px;
  border-radius:50%;
  background:#f7e8d2;
  font-size:22px;
}
.about510-values-grid h3{
  margin:0 0 7px;
  font-size:17px;
}
.about510-values-grid p{
  margin:0;
  font-size:13px;
}

/* SELECTION */
.about510-selection{
  display:grid;
  grid-template-columns:1.05fr 1fr .55fr;
  gap:38px;
  align-items:center;
  padding:18px 0 30px;
}
.about510-selection-photo{
  overflow:hidden;
  border-radius:12px;
}
.about510-selection-photo img{
  width:100%;
  height:295px;
  object-fit:cover;
  display:block;
}
.about510-selection-copy p{
  margin:0 0 14px;
  font-size:14px;
}
.about510-selection-copy ul{
  list-style:none;
  padding:0;
  margin:0 0 20px;
}
.about510-selection-copy li{
  position:relative;
  padding:5px 0 5px 24px;
  font-size:13px;
}
.about510-selection-copy li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#d58a21;
  font-weight:800;
}
.about510-selection-decor img{
  width:100%;
  height:250px;
  object-fit:cover;
  border-radius:50% 0 0 50%;
  box-shadow:0 0 28px 14px #fffaf3 inset;
}

/* CTA */
.about510-cta{
  display:grid;
  grid-template-columns:62px 1.1fr 1.5fr auto;
  gap:20px;
  align-items:center;
  padding:22px 26px;
  border:1px solid #ead8bc;
  border-radius:10px;
  background:#fff7ec;
}
.about510-bag{
  width:52px;height:52px;
  display:grid;place-items:center;
  border:2px solid #d58a21;
  color:#d58a21;
  border-radius:13px;
  font-size:24px;
}
.about510-cta h2{
  margin:0;
  font-size:22px;
  line-height:1.15;
}
.about510-cta p{
  margin:0;
  font-size:13px;
}
.about510-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border:1px solid #d58a21;
  border-radius:6px;
  color:#a85e10;
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}

/* TABLETTE */
@media(max-width:980px){
  .about510-shell{width:min(100% - 32px,1180px)}
  .about510-hero{grid-template-columns:1fr}
  .about510-hero-copy{padding:36px 28px 16px}
  .about510-hero-image{min-height:300px}
  .about510-story{grid-template-columns:1fr}
  .about510-values-grid{grid-template-columns:repeat(2,1fr)}
  .about510-selection{grid-template-columns:1fr 1fr}
  .about510-selection-decor{display:none}
  .about510-cta{grid-template-columns:58px 1fr auto}
  .about510-cta p{grid-column:2/4}
}

/* MOBILE */
@media(max-width:620px){
  .about510{padding-top:16px}
  .about510-shell{width:calc(100% - 20px)}
  .about510-hero h1{font-size:42px}
  .about510-pamiers{height:400px}
  .about510-pamiers aside{
    left:14px;right:14px;bottom:14px;top:auto;width:auto;
  }
  .about510-values-grid{grid-template-columns:1fr}
  .about510-values-grid article:not(:last-child):after{display:none}
  .about510-values-grid article:not(:last-child){border-bottom:1px dotted #d6b47d}
  .about510-selection{grid-template-columns:1fr}
  .about510-cta{grid-template-columns:1fr;text-align:center}
  .about510-bag{margin:auto}
  .about510-cta p{grid-column:auto}
}


/* ==========================================================
   V5.16 — PAGE À PROPOS PROPRE / SANS HÉRITAGE V5.11–V5.15
   ========================================================== */

.about516{
  background:#fffaf3;
  color:#2f1b11;
}
.about516 *{box-sizing:border-box}
.about516 h1,
.about516 h2,
.about516 h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#2f1b11;
}
.about516 p{line-height:1.65}
.about516-page{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
}
.about516-inner{
  width:min(1040px,calc(100% - 64px));
  margin-left:auto;
  margin-right:auto;
}

/* HERO */
.about516-hero{
  position:relative;
  height:330px;
  overflow:hidden;
  background:#fffaf3;
  margin:0;
  isolation:isolate;
}
.about516-spices{
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  bottom:0;
  width:230px;
  background:url('assets/images/about-v517-spices.jpg') left center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,#000 0 72%,rgba(0,0,0,.65) 83%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0 72%,rgba(0,0,0,.65) 83%,transparent 100%);
}
.about516-hero-copy{
  position:absolute;
  z-index:3;
  left:245px;
  top:48px;
  width:400px;
}
.about516-hero h1{
  margin:0;
  font-size:43px;
  line-height:1.03;
  letter-spacing:-.4px;
}
.about516-divider{
  width:128px;
  display:flex;
  align-items:center;
  gap:10px;
  margin:15px 0 19px;
}
.about516-divider span{
  height:1px;
  flex:1;
  background:#d58a21;
}
.about516-divider b{
  width:8px;
  height:8px;
  background:#d58a21;
  transform:rotate(45deg);
}
.about516-hero h3{
  margin:0;
  font-size:18px;
  line-height:1.45;
}
.about516-hero h3 strong{font-weight:400}
.about516-mandala{
  position:absolute;
  z-index:2;
  right:8px;
  top:18px;
  width:385px;
  height:294px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:visible;
}
.about516-mandala img{
  display:block;
  width:auto;
  height:285px;
  max-width:100%;
  object-fit:contain;
}

/* HISTOIRE / PAMIERS */
.about516-story{
  display:grid;
  grid-template-columns:.78fr 1.45fr;
  gap:44px;
  padding:34px 0 18px;
  align-items:start;
}
.about516-story h2,
.about516-selection h2{
  margin:0;
  font-size:30px;
}
.about516-mini-line{
  width:54px;
  height:2px;
  background:#d58a21;
  margin:12px 0 20px;
}
.about516-story-copy p{
  margin:0 0 15px;
  font-size:13px;
}
.about516-pamiers{
  position:relative;
  width:100%;
  aspect-ratio:1000/562;
  overflow:hidden;
  border-radius:8px;
  background:#eadbc5;
}
.about516-pamiers>img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
}
.about516-pamiers aside{
  position:absolute;
  right:14px;
  bottom:14px;
  width:174px;
  padding:13px 12px 12px;
  text-align:center;
  background:rgba(255,252,247,.96);
  border:1px solid #ead8bc;
  border-radius:8px;
  box-shadow:0 8px 20px rgba(47,27,17,.13);
}
.about516-pin{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  margin:0 auto 5px;
  color:#d67f0e;
}
.about516-pamiers aside h3{
  margin:0;
  font-size:15px;
  line-height:1.25;
}

/* VALEURS */
.about516-values{
  padding:8px 0 24px;
}
.about516-title-center{text-align:center}
.about516-title-center h2{
  margin:0;
  font-size:29px;
}
.about516-divider-center{margin:10px auto 16px}
.about516-values-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #ead8bc;
  border-bottom:1px solid #ead8bc;
}
.about516-values-grid article{
  position:relative;
  text-align:center;
  padding:21px 22px 18px;
}
.about516-values-grid article:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:22%;
  height:55%;
  border-right:1px dotted #d5b47d;
}
.about516-icon{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  margin:0 auto 8px;
  border-radius:50%;
  background:#f7e8d2;
  font-size:18px;
}
.about516-values-grid h3{
  margin:0 0 6px;
  font-size:15px;
}
.about516-values-grid p{
  margin:0;
  font-size:11.5px;
}

/* SÉLECTION */
.about516-selection{
  display:grid;
  grid-template-columns:1.05fr 1.18fr .48fr;
  gap:28px;
  align-items:center;
  padding:18px 0 24px;
}
.about516-selection-photo{
  height:235px;
  overflow:hidden;
  border-radius:8px;
}
.about516-selection-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.about516-selection-copy{
  min-width:0;
}
.about516-selection-copy h2{
  white-space:nowrap;
  font-size:28px;
}
.about516-selection-copy p{
  margin:0 0 10px;
  font-size:12px;
}
.about516-selection-copy ul{
  margin:0 0 16px;
  padding:0;
  list-style:none;
}
.about516-selection-copy li{
  position:relative;
  padding:3px 0 3px 21px;
  font-size:11.5px;
}
.about516-selection-copy li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#d58a21;
  font-weight:800;
}
.about516-selection-right img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:50% 0 0 50%;
  box-shadow:0 0 26px 14px #fffaf3 inset;
}

/* CTA PANIER */
.about516-cta{
  display:grid;
  grid-template-columns:58px 1.1fr 1.6fr auto;
  gap:17px;
  align-items:center;
  margin-bottom:24px;
  padding:16px 20px;
  border:1px solid #ead8bc;
  border-radius:8px;
  background:#fff7ec;
}
.about516-basket{
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  color:#e47911;
}
.about516-cta h2{
  margin:0;
  font-size:19px;
  line-height:1.15;
}
.about516-cta p{
  margin:0;
  font-size:11.5px;
}
.about516-outline{
  border:1px solid #d58a21;
  border-radius:5px;
  padding:10px 17px;
  color:#a85e10;
  font-size:11.5px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}

/* Bandeau supérieur légèrement mieux équilibré */
.im-topbar-inner{
  padding-left:34px;
}

@media(max-width:980px){
  .about516-page{width:min(100% - 28px,1180px)}
  .about516-inner{width:min(100% - 30px,1040px)}
  .about516-spices{opacity:.35}
  .about516-hero-copy{left:70px;width:500px}
  .about516-mandala{right:0;width:330px;opacity:.5}
  .about516-story{grid-template-columns:1fr}
  .about516-values-grid{grid-template-columns:repeat(2,1fr)}
  .about516-selection{grid-template-columns:1fr 1fr}
  .about516-selection-right{display:none}
  .about516-cta{grid-template-columns:52px 1fr auto}
  .about516-cta p{grid-column:2/4}
}
@media(max-width:620px){
  .about516-page{width:100%}
  .about516-inner{width:calc(100% - 24px)}
  .about516-hero{height:360px}
  .about516-spices{opacity:.18;width:48%}
  .about516-hero-copy{left:20px;top:38px;width:calc(100% - 40px)}
  .about516-hero h1{font-size:38px}
  .about516-mandala{right:-70px;top:85px;width:280px;opacity:.15}
  .about516-pamiers aside{right:10px;bottom:10px;width:160px}
  .about516-values-grid{grid-template-columns:1fr}
  .about516-values-grid article:not(:last-child):after{display:none}
  .about516-values-grid article:not(:last-child){border-bottom:1px dotted #d5b47d}
  .about516-selection{grid-template-columns:1fr}
  .about516-selection-copy h2{white-space:normal}
  .about516-cta{grid-template-columns:1fr;text-align:center}
  .about516-basket{margin:auto}
  .about516-cta p{grid-column:auto}
}


/* ==========================================================
   V5.17 — Ajustements ciblés page À propos
   ========================================================== */

/* Epices : nouvelle image propre, sans artefact noir */
.about516-spices{
  background-image:url('assets/images/about-v517-spices.jpg') !important;
  top:0 !important;
}

/* Mandala : un peu plus à gauche, sans changer sa taille */
.about516-mandala{
  right:58px !important;
}
.about516-mandala img{
  content:url('assets/images/about-v517-mandala.png') !important;
}

/* Photo Pamiers : moins haute, crop pris sur le bas */
.about516-pamiers{
  aspect-ratio:auto !important;
  height:215px !important;
}
.about516-pamiers>img{
  content:url('assets/images/about-v517-pamiers.jpg') !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
}

/* Titre hero sur une seule ligne */
.about516-hero-copy{
  width:520px !important;
}
.about516-hero h1{
  white-space:nowrap !important;
  font-size:40px !important;
  line-height:1.08 !important;
}

/* Garder suffisamment d'espace entre texte et mandala */
.about516-hero-copy{
  left:245px !important;
}
.about516-mandala{
  width:360px !important;
}

/* Responsive */
@media(max-width:980px){
  .about516-hero h1{
    white-space:normal !important;
  }
  .about516-mandala{
    right:10px !important;
  }
}


/* ==========================================================
   V5.18 — Ajustements demandés après test V5.17
   ========================================================== */
@media(min-width:981px){
  /* Hero : titre + sous-titre sur une ligne, séparation centrée et plus ample */
  .about516-hero-copy{
    left:245px !important;
    top:48px !important;
    width:570px !important;
  }
  .about516-hero h1{
    white-space:nowrap !important;
    font-size:40px !important;
  }
  .about516-hero-copy .about516-divider{
    width:205px !important;
    margin:16px auto 18px !important;
  }
  .about516-hero h3{
    white-space:nowrap !important;
    font-size:17px !important;
    line-height:1.35 !important;
  }

  /* Pamiers : zoom-out, davantage de bas visible, espace conservé à droite */
  .about516-pamiers{
    height:235px !important;
    background:#eadbc5 !important;
  }
  .about516-pamiers>img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    background:#eadbc5 !important;
  }
}


/* ==========================================================
   V5.19 — corrections ciblées finales
   ========================================================== */

/* Mandala : entièrement visible, un peu plus à gauche, sans découpe */
.about516-mandala,
.about511-hero-right{
  overflow:visible !important;
}
.about516-mandala{
  right:28px !important;
  width:380px !important;
  height:300px !important;
}
.about516-mandala img{
  content:url('assets/images/about-v519-mandala.png') !important;
  width:auto !important;
  height:280px !important;
  max-width:100% !important;
  object-fit:contain !important;
}

/* Pamiers : zoom out visuel, garder la tour de droite et plus de bas */
.about516-pamiers{
  height:235px !important;
  background:#f1dfc7 !important;
}
.about516-pamiers>img{
  content:url('assets/images/about-v519-pamiers.jpg') !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* Épices bas droite : plus petites, sans cercle / demi-lune / démarcation */
.about516-selection-right{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  overflow:visible !important;
}
.about516-selection-right img{
  content:url('assets/images/about-v519-selection-right.jpg') !important;
  width:82% !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
  background:transparent !important;
}

/* Compatibilité si ancienne classe encore active */
.about511-selection-right{
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
  background:none !important;
}

/* Titre et ligne du hero */
.about516-hero h1{
  white-space:nowrap !important;
}
.about516-divider{
  width:190px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.about516-hero h3{
  white-space:nowrap !important;
}

/* Responsive */
@media(max-width:980px){
  .about516-hero h1,
  .about516-hero h3{
    white-space:normal !important;
  }
  .about516-mandala{
    right:0 !important;
    width:320px !important;
  }
  .about516-selection-right img{
    width:70% !important;
  }
}


/* ==========================================================
   V5.20 — corrections ciblées :
   Pamiers sans bords + épices bas droite mieux intégrées
   ========================================================== */

/* Pamiers : aucune bordure latérale, image entière à sa largeur naturelle */
.about516-pamiers{
  height:auto !important;
  aspect-ratio:auto !important;
  background:transparent !important;
  border-radius:8px !important;
  overflow:hidden !important;
}
.about516-pamiers>img{
  content:url('assets/images/about-v519-pamiers.jpg') !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:unset !important;
  object-position:unset !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

/* Replacer l'encart sans modifier l'image */
.about516-pamiers aside{
  right:14px !important;
  bottom:14px !important;
}

/* Épices bas droite : plus grandes et fondues naturellement dans le fond */
.about516-selection-right{
  min-width:170px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
  background:transparent !important;
}
.about516-selection-right img{
  content:url('assets/images/about-v519-selection-right.jpg') !important;
  width:145% !important;
  max-width:230px !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  background:transparent !important;
  -webkit-mask-image:radial-gradient(ellipse at center,
    #000 0%,
    #000 62%,
    rgba(0,0,0,.92) 72%,
    rgba(0,0,0,.58) 84%,
    transparent 100%) !important;
  mask-image:radial-gradient(ellipse at center,
    #000 0%,
    #000 62%,
    rgba(0,0,0,.92) 72%,
    rgba(0,0,0,.58) 84%,
    transparent 100%) !important;
}

/* Neutraliser les anciens traitements éventuels */
.about511-selection-right,
.about511-selection-right img{
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  background:transparent !important;
}

/* Desktop : réserver un peu plus de place au décor de droite */
@media(min-width:981px){
  .about516-selection{
    grid-template-columns:1.05fr 1.12fr .58fr !important;
  }
}

@media(max-width:980px){
  .about516-selection-right img{
    width:120% !important;
    max-width:190px !important;
  }
}


/* ==========================================================
   V5.21 — alignement hero / valeurs + nettoyage décor épices
   ========================================================== */

.about516-hero{
  width:min(1040px,calc(100% - 64px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.about516-hero-copy{
  left:50% !important;
  transform:translateX(-50%) !important;
  width:520px !important;
  text-align:center !important;
}
.about516-hero h1,
.about516-hero h3{
  text-align:center !important;
}
.about516-divider{
  width:180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.about516-spices{
  left:0 !important;
}
.about516-mandala{
  right:0 !important;
}

.about516-values-grid{
  border-top:0 !important;
  border-bottom:0 !important;
}

.about516-values-grid article:not(:last-child):after{
  border-right:1px dotted #d5b47d !important;
}

.about516-selection-right{
  background:transparent !important;
  overflow:visible !important;
}
.about516-selection-right img{
  content:url('assets/images/about-v521-selection-right.png') !important;
  width:150% !important;
  max-width:235px !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
  background:transparent !important;
}

.about511-selection-right,
.about511-selection-right img{
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
}

@media(max-width:980px){
  .about516-hero{
    width:min(100% - 30px,1040px) !important;
  }
  .about516-hero-copy{
    width:min(540px,calc(100% - 120px)) !important;
  }
}
@media(max-width:620px){
  .about516-hero{
    width:100% !important;
  }
  .about516-hero-copy{
    width:calc(100% - 40px) !important;
  }
}


/* ==========================================================
   V5.22 — centrage du bloc texte du hero entre les 2 visuels
   ========================================================== */

/* L'image d'épices garde sa largeur à gauche */
.about516-spices{
  width:230px !important;
}

/* Mandala légèrement contenu à droite pour dégager le texte */
.about516-mandala{
  right:0 !important;
  width:365px !important;
  height:300px !important;
}

/* Bloc texte réellement centré dans l'espace entre épices et mandala */
.about516-hero-copy{
  left:43.5% !important;
  transform:translateX(-50%) !important;
  width:430px !important;
  text-align:center !important;
}

/* Titre et sous-titre centrés sur le même axe */
.about516-hero h1{
  white-space:nowrap !important;
  text-align:center !important;
  font-size:40px !important;
}
.about516-hero h3{
  white-space:nowrap !important;
  text-align:center !important;
  font-size:17px !important;
}

/* Trait décoratif centré sous le titre */
.about516-divider{
  width:180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Responsive */
@media(max-width:980px){
  .about516-hero-copy{
    left:50% !important;
    width:min(500px,calc(100% - 130px)) !important;
  }
  .about516-hero h1,
  .about516-hero h3{
    white-space:normal !important;
  }
}
@media(max-width:620px){
  .about516-hero-copy{
    left:50% !important;
    width:calc(100% - 40px) !important;
  }
}


/* ==========================================================
   V5.23 — correction finale du hero À propos
   ========================================================== */

/* Plus d'espace réel entre le texte et le mandala */
.about516-mandala{
  right:-8px !important;
  width:345px !important;
}

/* Bloc texte déplacé légèrement vers la gauche */
.about516-hero-copy{
  left:41.5% !important;
  transform:translateX(-50%) !important;
  width:430px !important;
  text-align:center !important;
}

/* Titre et sous-titre parfaitement centrés sur le même axe */
.about516-hero h1,
.about516-hero h3{
  width:100% !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Le séparateur est centré exactement sur le même axe */
.about516-divider{
  width:190px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Espacement supplémentaire avant le mandala */
@media(min-width:981px){
  .about516-hero h1{
    font-size:39px !important;
  }
  .about516-hero h3{
    font-size:16px !important;
  }
}

@media(max-width:980px){
  .about516-hero-copy{
    left:50% !important;
    width:min(500px,calc(100% - 140px)) !important;
  }
  .about516-mandala{
    right:0 !important;
    width:320px !important;
  }
}

/* ==========================================================
   V5.24 — Livraison & Retrait : page continue, sans fil d'Ariane,
   sans newsletter et sans cartes encadrées.
   ========================================================== */
.delivery524{background:#fffaf2;color:#29150c;padding-bottom:24px}.delivery524-inner{width:min(1080px,calc(100% - 40px));margin:0 auto}.delivery524-hero{padding:62px 0 42px;background:#fffaf2}.delivery524 h1,.delivery524 h2,.delivery524 h3{font-family:Georgia,'Times New Roman',serif;color:#2c180f}.delivery524 h1{font-size:48px;line-height:1.05;text-align:center;margin:0}.delivery524-hero>div>p{text-align:center;font-size:15px;line-height:1.65;margin:17px 0 30px}.delivery524-rule{display:flex;align-items:center;justify-content:center;gap:9px;margin:15px auto}.delivery524-rule i{display:block;width:38px;height:1px;background:#d98414}.delivery524-rule b{display:block;width:8px;height:8px;background:#d98414;transform:rotate(45deg)}.delivery524-modes{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;margin-top:22px}.delivery524-modes>div{padding:0 30px;position:relative}.delivery524-modes>div+div:before{content:"";position:absolute;left:0;top:25px;height:125px;width:1px;background:#ead8c0}.d524-icon{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#faead3;color:#bd6d0b;font-size:30px}.delivery524-modes h3{font-size:20px;margin:10px 0}.delivery524-modes p{font-size:13px;line-height:1.55}.delivery524-modes em{display:inline-block;color:#c06b0b;font-style:normal;font-size:12px;margin-top:5px}.delivery524-pickup{display:grid;grid-template-columns:43% 57%;gap:46px;padding:30px 0 42px;align-items:center}.delivery524 h2{font-size:27px;margin:0 0 8px}.d524-shortline{display:block;width:38px;height:2px;background:#dc8514;margin:10px 0 23px}.delivery524-copy>p{font-size:13px;line-height:1.75;margin-bottom:18px}.d524-info{display:flex;gap:16px;background:#fff2df;padding:16px 18px;margin:15px 0 17px;border-radius:7px}.d524-info>span,.d524-row>span{color:#d57b0e;font-size:23px;min-width:30px}.d524-info strong,.d524-row strong{font-size:14px}.d524-info p,.d524-row p{font-size:12px;line-height:1.55;margin:4px 0 0}.d524-row{display:flex;gap:16px;margin:15px 12px}.d524-btn{display:inline-block;background:#d78210;color:white!important;text-decoration:none;font-weight:700;font-size:12px;padding:13px 24px;border-radius:4px;margin-top:8px}.delivery524-map{height:405px;position:relative;overflow:hidden;border-radius:8px}.delivery524-map>img{width:100%;height:100%;object-fit:cover;display:block}.delivery524-mapnote{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);width:245px;background:rgba(255,250,244,.96);padding:18px 22px;text-align:center;border-radius:8px;box-shadow:0 8px 24px rgba(58,30,10,.12)}.delivery524-mapnote span{font-size:24px}.delivery524-mapnote strong{display:block;font-family:Georgia,serif;font-size:18px;line-height:1.35;margin:5px}.delivery524-mapnote p{font-size:12px;line-height:1.6}.delivery524-mapnote b{font-size:12px;color:#35613d}.delivery524-options{padding:4px 0 0}.delivery524-options>h2{text-align:center}.delivery524-columns{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:25px}.delivery524-columns article{padding:0 42px 12px}.delivery524-columns article+article{border-left:1px solid #e7d4ba}.delivery524-columns header{display:flex;gap:15px;align-items:center}.delivery524-columns h3{font-size:21px;margin:0 0 4px}.delivery524-columns small{font-size:12px}.delivery524-columns article>p{font-size:13px;line-height:1.65}.delivery524 dl{font-size:12px}.delivery524 dt{font-weight:700;margin-top:12px;color:#2c180f}.delivery524 dd{margin:3px 0 0 25px}.delivery524-faq{margin:12px 0 10px;padding:13px 20px;border-top:1px solid #ead8c0;border-bottom:1px solid #ead8c0;display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center}.delivery524-faq>span{width:38px;height:38px;border:2px solid #d57b0e;border-radius:50%;display:grid;place-items:center;color:#d57b0e;font:700 22px Georgia}.delivery524-faq strong{font-size:14px}.delivery524-faq p{font-size:12px;margin:3px 0}.delivery524-faq a{border:1px solid #d57b0e;color:#b45f00!important;text-decoration:none;padding:10px 20px;border-radius:4px;font-size:12px;font-weight:700}.delivery524-last{text-align:center;font-size:11px;margin:13px 0 0;color:#6c4d37}.delivery524 + .im-newsletter,.delivery524~.im-newsletter{display:none!important}
@media(max-width:800px){.delivery524 h1{font-size:38px}.delivery524-modes,.delivery524-pickup,.delivery524-columns{grid-template-columns:1fr}.delivery524-modes>div{padding:15px}.delivery524-modes>div+div:before{display:none}.delivery524-pickup{gap:25px}.delivery524-map{height:330px}.delivery524-columns article{padding:20px 10px}.delivery524-columns article+article{border-left:0;border-top:1px solid #e7d4ba}.delivery524-faq{grid-template-columns:42px 1fr}.delivery524-faq a{grid-column:1/-1;text-align:center}}


/* ==========================================================
   V5.25 — Livraison & Retrait, page continue
   ========================================================== */
.delivery525{
  background:#fffaf3;
  color:#2f1b11;
}
.delivery525 *{box-sizing:border-box}
.delivery525 h1,.delivery525 h2,.delivery525 h3{font-family:Georgia,"Times New Roman",serif;color:#2f1b11}
.delivery525-page{width:min(1040px,calc(100% - 48px));margin:0 auto;padding:34px 0 24px}

.delivery525-hero{text-align:center;padding:8px 0 34px}
.delivery525-hero h1{font-size:50px;margin:0}
.delivery525-hero>p{font-size:14px;line-height:1.55}
.delivery525-divider{width:150px;display:flex;align-items:center;gap:10px;margin:14px auto 18px}
.delivery525-divider span{height:1px;flex:1;background:#d58a21}
.delivery525-divider b{width:8px;height:8px;background:#d58a21;transform:rotate(45deg)}
.delivery525-methods{display:grid;grid-template-columns:repeat(3,1fr);margin-top:28px}
.delivery525-methods article{padding:0 28px;position:relative}
.delivery525-methods article:not(:last-child):after{content:"";position:absolute;right:0;top:15%;height:70%;border-right:1px solid #e7d8c1}
.delivery525-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#f7e8d2;color:#d9800e;font-size:24px}
.delivery525-methods h3{font-size:18px;margin:0 0 8px}
.delivery525-methods p{font-size:12px;line-height:1.5;margin:0 0 8px}
.delivery525-methods small{color:#c8730b}

.delivery525-pickup{display:grid;grid-template-columns:.82fr 1.4fr;gap:42px;align-items:start;padding:24px 0 28px}
.delivery525-pickup-copy h2{font-size:31px;margin:0}
.delivery525-mini-line{width:54px;height:2px;background:#d58a21;margin:12px 0 20px}
.delivery525-pickup-copy>p{font-size:13px;line-height:1.65}
.delivery525-info{margin:22px 0 20px}
.delivery525-info>div{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;margin:14px 0}
.delivery525-info span{color:#d9800e;font-size:22px}
.delivery525-info p{font-size:12px;line-height:1.55;margin:0}

.delivery525-map{
  position:relative;
  height:330px;
  overflow:hidden;
  border-radius:8px;
  background:#f2e4d1;
}
.delivery525-map img{
  width:100%;height:100%;display:block;
  object-fit:cover;
  object-position:center;
  transform:scale(.88);
  transform-origin:center center;
}
.delivery525-map-placeholder{width:100%;height:100%;display:grid;place-items:center;background:#f5eadb;color:#6b5645}
.delivery525-private{
  position:absolute;
  right:16px;
  bottom:16px;
  width:168px;
  padding:12px 12px 11px;
  text-align:center;
  background:rgba(255,252,247,.96);
  border:1px solid #ead8bc;
  border-radius:8px;
  box-shadow:0 8px 20px rgba(47,27,17,.12);
}
.delivery525-private span{display:block;font-size:20px;margin-bottom:5px}
.delivery525-private strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:15px;line-height:1.2}
.delivery525-private small{display:block;margin-top:8px;color:#35633c;font-size:10.5px}

.delivery525-options{padding:16px 0 22px}
.delivery525-title-center{text-align:center}
.delivery525-title-center h2{font-size:31px;margin:0}
.delivery525-divider-center{margin:10px auto 16px}
.delivery525-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;position:relative}
.delivery525-options-grid:after{content:"";position:absolute;left:50%;top:4%;height:88%;border-left:1px solid #ead8bc}
.delivery525-options-grid article{padding:0 24px}
.delivery525-options-grid h3{font-size:20px;margin:0 0 3px}
.delivery525-options-grid small{font-size:11px}
.delivery525-options-grid p{font-size:12px;line-height:1.55}

.delivery525-faq{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin-top:8px;padding:14px 18px;border:1px solid #ead8bc;border-radius:8px;background:#fff7ec;
}
.delivery525-faq strong{font-size:13px}
.delivery525-faq small{font-size:11px}
.delivery525-faq a{border:1px solid #d58a21;border-radius:5px;padding:10px 16px;color:#a85e10;text-decoration:none;font-size:11px;font-weight:700}
.delivery525-trust{text-align:center;font-size:10.5px;padding:13px 0 0;color:#6c5d50}

/* Pas de newsletter sur cette page */
.delivery525 + .newsletter,
.delivery525 ~ .newsletter,
body.page-template-template-livraison-retrait .newsletter,
body.page-template-template-livraison-retrait .im-newsletter,
body.page-template-template-livraison-retrait .newsletter-bar{
  display:none !important;
}

@media(max-width:900px){
  .delivery525-methods{grid-template-columns:1fr}
  .delivery525-methods article{padding:16px 0}
  .delivery525-methods article:not(:last-child):after{display:none}
  .delivery525-pickup{grid-template-columns:1fr}
  .delivery525-options-grid{grid-template-columns:1fr}
  .delivery525-options-grid:after{display:none}
}


/* ==========================================================
   V5.27 — Livraison & Retrait : alignement général final
   ========================================================== */

.delivery525-page,
.delivery525-hero,
.delivery525-pickup,
.delivery525-options,
.delivery525-faq,
.delivery525-trust{
  width:min(1040px,calc(100% - 48px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.delivery525-pickup{
  grid-template-columns:34% 66% !important;
  gap:0 !important;
  align-items:stretch !important;
  padding:24px 0 28px !important;
}

.delivery525-pickup-copy{
  padding-right:36px !important;
}

.delivery525-map{
  width:100% !important;
  height:355px !important;
  margin:0 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:transparent !important;
}

.delivery525-map img{
  width:112% !important;
  height:112% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:scale(.90) !important;
  transform-origin:center center !important;
  margin:-6% !important;
}

.delivery525-private{
  right:14px !important;
  bottom:14px !important;
  left:auto !important;
  top:auto !important;
  width:160px !important;
  padding:10px 11px !important;
  text-align:center !important;
}
.delivery525-private strong{font-size:14px !important}
.delivery525-private small{font-size:10px !important}

.delivery525-methods,
.delivery525-options-grid{
  width:100% !important;
}

body.page-template-template-livraison-retrait .newsletter,
body.page-template-template-livraison-retrait .im-newsletter,
body.page-template-template-livraison-retrait .newsletter-bar,
body.page-template-template-livraison-retrait .site-newsletter,
body.page-template-template-livraison-retrait .footer-newsletter{
  display:none !important;
}

@media(max-width:900px){
  .delivery525-pickup{grid-template-columns:1fr !important}
  .delivery525-pickup-copy{padding-right:0 !important;margin-bottom:24px !important}
  .delivery525-map{height:320px !important}
}




/* ==========================================================
   V5.31 — LIVRAISON & RETRAIT : GRILLE PROPRE
   Repart de V5.29, sans empilement des correctifs V5.30.
   ========================================================== */

/* Largeur commune à la page et aux options de livraison */
body.page-template-template-click-collect .delivery524-inner{
  width:min(1040px, calc(100% - 48px)) !important;
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}

/* IMPORTANT :
   ce sélecteur combine les deux classes présentes sur la section,
   afin que width:100% d'anciennes règles ne puisse plus la sortir du cadre. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner{
  width:min(1040px, calc(100% - 48px)) !important;
  max-width:1040px !important;
  margin:28px auto 34px !important;
  padding:0 !important;
  display:grid !important;

  /* Carte volontairement moins large pour un rendu plus vertical */
  grid-template-columns:minmax(0, 44fr) minmax(0, 56fr) !important;
  column-gap:30px !important;

  /* Les deux colonnes ont exactement la même hauteur */
  align-items:stretch !important;
  box-sizing:border-box !important;
}

/* Bloc texte */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-copy{
  min-width:0 !important;
  width:auto !important;
  padding:4px 8px 2px 0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* Carte : sa hauteur est dictée par la hauteur du bloc texte à gauche */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-map{
  position:relative !important;
  align-self:stretch !important;
  min-width:0 !important;
  width:auto !important;
  max-width:none !important;

  height:auto !important;
  min-height:0 !important;

  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#f4eadc !important;
  box-sizing:border-box !important;
}

/* La carte remplit exactement son cadre, sans zoom CSS parasite */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-map > img,
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-map > .im-pamiers-map-img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;

  width:100% !important;
  height:100% !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;

  object-fit:cover !important;
  object-position:center center !important;

  transform:none !important;
  border-radius:8px !important;
}

/* Petit encart discret en bas à droite */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner .delivery524-mapnote{
  position:absolute !important;
  right:12px !important;
  bottom:12px !important;
  left:auto !important;
  top:auto !important;

  width:152px !important;
  padding:9px 10px !important;
  margin:0 !important;

  text-align:center !important;
  border-radius:8px !important;
  background:rgba(255,252,247,.96) !important;
  box-shadow:0 7px 18px rgba(47,27,17,.11) !important;
  box-sizing:border-box !important;
}

/* Pas de texte redondant dans l'encart */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner .delivery524-mapnote p{
  display:none !important;
}

/* Même référence de largeur pour la section du dessous */
body.page-template-template-click-collect .delivery524-options.delivery524-inner{
  width:min(1040px, calc(100% - 48px)) !important;
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Fil d'Ariane et newsletter toujours masqués */
body.page-template-template-click-collect .woocommerce-breadcrumb,
body.page-template-template-click-collect .breadcrumb,
body.page-template-template-click-collect .breadcrumbs,
body.page-template-template-click-collect .newsletter,
body.page-template-template-click-collect .im-newsletter,
body.page-template-template-click-collect .newsletter-bar,
body.page-template-template-click-collect .site-newsletter,
body.page-template-template-click-collect .footer-newsletter{
  display:none !important;
}

/* Responsive */
@media(max-width:800px){
  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner{
    grid-template-columns:1fr !important;
    row-gap:22px !important;
  }

  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner > .delivery524-map{
    height:320px !important;
    min-height:320px !important;
  }
}


/* ==========================================================
   V5.32 — LIVRAISON & RETRAIT : FINITIONS
   Base : V5.31 validée
   ========================================================== */

/* Carte légèrement plus étroite pour mieux s'intégrer au bloc gauche */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner{
  grid-template-columns:minmax(0, 47fr) minmax(0, 53fr) !important;
  column-gap:30px !important;
}

/* Titre "Livraison en France" sur une seule ligne */
body.page-template-template-click-collect .delivery524-methods h3,
body.page-template-template-click-collect .delivery524-options h3,
body.page-template-template-click-collect .delivery525-methods h3,
body.page-template-template-click-collect .delivery525-options h3{
  white-space:nowrap !important;
}

/* Aucun texte descriptif sous le titre principal */
body.page-template-template-click-collect .delivery524-hero > p,
body.page-template-template-click-collect .delivery525-hero > p{
  display:none !important;
}

/* Conserver l'équilibre mobile */
@media(max-width:800px){
  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner{
    grid-template-columns:1fr !important;
  }

  body.page-template-template-click-collect .delivery524-methods h3,
  body.page-template-template-click-collect .delivery524-options h3,
  body.page-template-template-click-collect .delivery525-methods h3,
  body.page-template-template-click-collect .delivery525-options h3{
    white-space:normal !important;
  }
}


/* ==========================================================
   V5.34 — BLOC RETRAIT RÉTABLI / CARTE PAMIERS
   Base propre : V5.32
   ========================================================== */

/* L'ensemble texte + carte reste strictement dans la largeur
   de la section "Nos options de livraison". */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner{
  width:min(1040px, calc(100% - 48px)) !important;
  max-width:1040px !important;
  margin:28px auto 34px !important;
  padding:0 !important;
  display:grid !important;

  /* Plus de place au texte, carte plus étroite. */
  grid-template-columns:minmax(0, 54fr) minmax(0, 46fr) !important;
  column-gap:36px !important;
  align-items:stretch !important;
}

/* Bloc gauche intact. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-copy{
  min-width:0 !important;
  width:auto !important;
  padding:4px 0 2px 0 !important;
  margin:0 !important;
}

/* Carte compacte et verticale, hauteur calée sur le bloc texte. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-map{
  position:relative !important;
  align-self:stretch !important;
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#f4eadc !important;
}

/* La carte est cliquable vers Google Maps sans afficher l'adresse en clair. */
body.page-template-template-click-collect
.delivery524-map .im-pamiers-map-link{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
}

body.page-template-template-click-collect
.delivery524-map .im-pamiers-map-img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

/* L'ancien encart "Adresse de retrait non publique" ne doit jamais réapparaître. */
body.page-template-template-click-collect .delivery524-mapnote{
  display:none !important;
}

/* Pas d'adresse rédigée sous ou sur la carte. */
body.page-template-template-click-collect
.delivery524-map::after{
  content:none !important;
  display:none !important;
}

@media(max-width:800px){
  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner{
    grid-template-columns:1fr !important;
    row-gap:22px !important;
  }

  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner > .delivery524-map{
    height:300px !important;
    min-height:300px !important;
  }
}


/* ==========================================================
   V5.37 — CARTE PAMIERS PORTRAIT
   Base stricte : V5.34
   Seul le bloc Retrait gratuit à Pamiers + carte est modifié.
   ========================================================== */

/* Ensemble centré dans la même largeur générale que
   "Nos options de livraison", mais sans étirer artificiellement
   les deux éléments sur toute la largeur. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner{
  width:min(1040px, calc(100% - 48px)) !important;
  max-width:1040px !important;
  margin:28px auto 34px !important;
  padding:0 !important;

  display:grid !important;
  grid-template-columns:minmax(0, 450px) 300px !important;
  column-gap:24px !important;
  justify-content:center !important;
  align-items:start !important;
}

/* Bloc texte compact, sans espace parasite. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-copy{
  min-width:0 !important;
  width:450px !important;
  max-width:450px !important;
  margin:0 !important;
  padding:4px 0 0 !important;
}

/* Carte réellement portrait : largeur < hauteur. */
body.page-template-template-click-collect
.delivery524-pickup.delivery524-inner > .delivery524-map{
  position:relative !important;

  width:300px !important;
  min-width:300px !important;
  max-width:300px !important;

  height:450px !important;
  min-height:450px !important;
  max-height:450px !important;

  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;

  border:0 !important;
  border-radius:8px !important;
  box-shadow:none !important;
  background:transparent !important;

  justify-self:start !important;
  align-self:start !important;
}

/* Le lien Google Maps occupe exactement le cadre de la carte. */
body.page-template-template-click-collect
.delivery524-map .im-pamiers-map-link{
  position:absolute !important;
  inset:0 !important;
  display:block !important;

  width:300px !important;
  height:450px !important;

  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

/* La ressource map-pamiers-v537.png est déjà recadrée en 2:3.
   Aucun zoom ou crop CSS supplémentaire : tout le cadrage utile
   (Route de Toulouse / Pamiers / échangeur E9-D119) reste visible. */
body.page-template-template-click-collect
.delivery524-map .im-pamiers-map-img{
  position:static !important;
  display:block !important;

  width:300px !important;
  height:450px !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;

  object-fit:fill !important;
  object-position:center center !important;

  border:0 !important;
  border-radius:8px !important;
  box-shadow:none !important;
  transform:none !important;
}

/* Aucun encart / pseudo-élément / texte parasite sur la carte. */
body.page-template-template-click-collect .delivery524-mapnote,
body.page-template-template-click-collect .delivery524-map::before,
body.page-template-template-click-collect .delivery524-map::after,
body.page-template-template-click-collect .im-pamiers-map-link::before,
body.page-template-template-click-collect .im-pamiers-map-link::after{
  content:none !important;
  display:none !important;
}

/* Mobile : retour à une colonne propre. */
@media(max-width:800px){
  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner{
    grid-template-columns:1fr !important;
    row-gap:22px !important;
    justify-items:center !important;
  }

  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner > .delivery524-copy{
    width:100% !important;
    max-width:450px !important;
  }

  body.page-template-template-click-collect
  .delivery524-pickup.delivery524-inner > .delivery524-map,
  body.page-template-template-click-collect
  .delivery524-map .im-pamiers-map-link,
  body.page-template-template-click-collect
  .delivery524-map .im-pamiers-map-img{
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
    height:420px !important;
    min-height:420px !important;
    max-height:420px !important;
  }
}


/* V5.38 - ajustements Livraison & Retrait */
.page-template-page-livraison-retrait .pickup-map,
.page-livraison-retrait .pickup-map,
.livraison-retrait-map,
.pickup-map-wrapper img,
.pickup-map img{
    width: 270px !important;
    max-width: 270px !important;
    height: 360px !important;
    max-height: 360px !important;
    object-fit: contain !important; /* sans crop */
}

.page-template-page-livraison-retrait .pickup-map-wrapper,
.page-livraison-retrait .pickup-map-wrapper,
.livraison-retrait-map-wrapper{
    width: 270px !important;
    max-width: 270px !important;
    height: 360px !important;
    max-height: 360px !important;
}

.page-template-page-livraison-retrait .pickup-section .button,
.page-template-page-livraison-retrait .pickup-section .btn,
.page-livraison-retrait .pickup-section .button,
.page-livraison-retrait .pickup-section .btn{
    display:none !important;
}


/* ==========================================================
   V5.39 — FAQ PREMIUM
   Refonte ciblée de template-faq.php uniquement.
   ========================================================== */

.faq539{
  --faq-bg:#fffaf3;
  --faq-card:#fffdf9;
  --faq-cream:#fff4e3;
  --faq-line:#efd6b3;
  --faq-orange:#dc7b08;
  --faq-orange-dark:#bb6100;
  --faq-green:#39764f;
  --faq-ink:#2d1a11;
  position:relative;
  overflow:hidden;
  background:var(--faq-bg);
  color:var(--faq-ink);
}

/* ---------------- Hero ---------------- */
.faq539-hero{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-bottom:1px solid #f1dfc6;
  background:
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.98),rgba(255,251,245,.98) 55%,rgba(255,247,236,.98));
}

.faq539-hero::before{
  content:"";
  position:absolute;
  z-index:1;
  left:-34px;
  top:-16px;
  width:300px;
  height:355px;
  background:url('assets/images/cat-massalas-v55.jpg') 58% 48% / cover no-repeat;
  border-radius:0 48% 48% 0;
  box-shadow:
    inset -75px 0 62px 8px #fffaf3,
    inset 0 -45px 50px 6px #fffaf3;
  opacity:.98;
  pointer-events:none;
}

.faq539-hero::after{
  content:"";
  position:absolute;
  z-index:1;
  right:-36px;
  top:15px;
  width:300px;
  height:300px;
  background:url('assets/images/brand-mandala-v25.png') center/contain no-repeat;
  opacity:.13;
  filter:sepia(.2) saturate(1.25);
  pointer-events:none;
}

.faq539-hero-inner{
  position:relative;
  z-index:2;
  width:min(1080px,calc(100% - 48px));
  margin:0 auto;
  padding:24px 0 50px;
}

.faq539-breadcrumb{
  display:flex;
  gap:9px;
  align-items:center;
  min-height:24px;
  font-size:11px;
  color:#6f6259;
}

.faq539-breadcrumb a:hover{color:var(--faq-orange)}

.faq539-hero-copy{
  width:min(700px,100%);
  margin:20px auto 0;
  text-align:center;
}

.faq539-hero h1{
  margin:0;
  font:700 clamp(42px,5vw,60px)/1.05 Georgia,'Times New Roman',serif;
  letter-spacing:-.7px;
  color:#2c180f;
}

.faq539-rule{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  margin:20px auto 18px;
}

.faq539-rule i{
  display:block;
  width:39px;
  height:1px;
  background:#d98414;
}
.faq539-rule b{
  display:block;
  width:8px;
  height:8px;
  background:#d98414;
  transform:rotate(45deg);
}

.faq539-hero-copy p{
  margin:0;
  font-size:16px;
  color:#33241c;
}

/* ---------------- Corps ---------------- */
.faq539-body{
  padding:28px 0 18px;
}

.faq539-layout{
  width:min(1080px,calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

/* Sidebar */
.faq539-sidebar{
  display:grid;
  gap:18px;
  position:sticky;
  top:145px;
}

.faq539-nav-card,
.faq539-help-card{
  border:1px solid var(--faq-line);
  border-radius:9px;
  background:linear-gradient(180deg,#fffdfa,#fff8ee);
  overflow:hidden;
  box-shadow:0 8px 24px rgba(58,34,21,.035);
}

.faq539-nav-card h2{
  margin:18px 19px 4px;
  font:700 25px/1.1 Georgia,'Times New Roman',serif;
}

.faq539-mini-rule{
  display:flex;
  align-items:center;
  gap:5px;
  width:84px;
  margin:12px 19px 14px;
}
.faq539-mini-rule i{height:1px;flex:1;background:#d98414}
.faq539-mini-rule b{width:7px;height:7px;background:#d98414;transform:rotate(45deg)}

.faq539-nav{
  display:block;
}

.faq539-nav a{
  display:grid;
  grid-template-columns:31px 1fr;
  gap:8px;
  align-items:center;
  min-height:54px;
  padding:10px 16px;
  border-top:1px solid #f0dfc7;
  color:#2e2119;
  font-size:13px;
  transition:.16s ease;
}
.faq539-nav a:first-child{border-top:0}

.faq539-nav a:hover{
  background:#fff2dd;
  color:#a85a07;
}

.faq539-nav a.is-active{
  position:relative;
  background:linear-gradient(90deg,#fff0da,#ffe2b9);
  color:#2e2119;
  box-shadow:inset 0 0 0 1px #e9a34c;
}
.faq539-nav a.is-active::after{
  content:"";
  position:absolute;
  right:-7px;
  top:50%;
  transform:translateY(-50%);
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:8px solid #e99a36;
}

.faq539-nav-ico,
.faq539-group-icon,
.faq539-help-ico{
  display:grid;
  place-items:center;
  color:var(--faq-orange);
}
.faq539-nav-ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.faq539-help-card{
  padding:20px 20px 18px;
}
.faq539-help-ico{
  width:48px;
  height:48px;
  margin-bottom:10px;
}
.faq539-help-ico svg{
  width:42px;
  height:42px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.faq539-help-card h3{
  margin:0 0 8px;
  font:700 17px/1.35 Georgia,'Times New Roman',serif;
}

.faq539-help-card p{
  margin:0 0 15px;
  font-size:13px;
  line-height:1.55;
}

.faq539-outline-btn{
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid #d47b12;
  border-radius:5px;
  padding:9px 12px;
  color:#b75f00;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2px;
}
.faq539-outline-btn:hover{background:#fff0db}
.faq539-outline-btn span{font-size:17px;line-height:1}

/* Accordéons */
.faq539-groups{
  display:grid;
  gap:9px;
}

.faq539-group{
  border:1px solid var(--faq-line);
  border-radius:9px;
  background:linear-gradient(180deg,#fffefb,#fffaf5);
  overflow:hidden;
  box-shadow:0 5px 18px rgba(74,42,21,.025);
}

.faq539-group > summary{
  list-style:none;
  display:grid;
  grid-template-columns:38px 1fr 24px;
  gap:12px;
  align-items:center;
  min-height:61px;
  padding:10px 18px;
  cursor:pointer;
  user-select:none;
}
.faq539-group > summary::-webkit-details-marker{display:none}

.faq539-group-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.faq539-group-title{
  font:700 23px/1.15 Georgia,'Times New Roman',serif;
  color:#2c1a11;
}

.faq539-chevron{
  width:10px;
  height:10px;
  justify-self:end;
  border-right:2px solid #d97706;
  border-bottom:2px solid #d97706;
  transform:rotate(45deg) translateY(-3px);
  transition:transform .18s ease;
}
.faq539-group[open] .faq539-chevron{
  transform:rotate(225deg) translate(-2px,-2px);
}

.faq539-panel{
  margin:0 14px 12px;
  border:1px solid #efc99a;
  border-radius:7px;
  background:#fffdf9;
  padding:0 15px;
}

.faq539-qa{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  column-gap:10px;
  row-gap:2px;
  padding:15px 0 16px;
  border-top:1px dashed #edcfa8;
}
.faq539-qa:first-child{border-top:0}

.faq539-qa-letter{
  font:700 22px/1 Georgia,Arial,sans-serif;
  text-align:center;
  padding-top:2px;
}
.faq539-q{color:#db7808}
.faq539-a{color:#2d7b4f;margin-top:8px}

.faq539-qa-text h3{
  margin:0;
  font:700 14px/1.45 Arial,Helvetica,sans-serif;
  color:#241913;
}
.faq539-answer{
  margin-top:8px;
}
.faq539-answer p{
  margin:0;
  font-size:13px;
  line-height:1.55;
  color:#3a302a;
}

/* Bandeau bas */
.faq539-more{
  position:relative;
  overflow:hidden;
  width:min(1080px,calc(100% - 48px));
  min-height:88px;
  margin:16px auto 0;
  display:grid;
  grid-template-columns:220px 1fr 190px;
  align-items:center;
  gap:22px;
  padding:14px 18px 14px 210px;
  border:1px solid var(--faq-line);
  border-radius:9px;
  background:linear-gradient(90deg,#fff2df,#fffaf3 53%,#fff2df);
}

.faq539-more-mandala{
  position:absolute;
  left:24px;
  bottom:-60px;
  width:170px;
  height:170px;
  background:url('assets/images/brand-mandala-v25.png') center/contain no-repeat;
  opacity:.20;
}

.faq539-more-title h2{
  margin:0;
  font:700 26px/1.15 Georgia,'Times New Roman',serif;
}

.faq539-more-copy p{
  margin:0;
  font-size:12px;
  line-height:1.55;
}

.faq539-gold-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:42px;
  padding:10px 18px;
  border-radius:5px;
  background:linear-gradient(90deg,#d87906,#e48c0b);
  color:white !important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow:0 6px 15px rgba(170,91,2,.13);
}
.faq539-gold-btn:hover{filter:brightness(1.04)}
.faq539-gold-btn span{font-size:18px}

/* Évite les anciens décors génériques sur cette page */
body.page-template-template-faq .im-inner-page,
body.page-template-template-faq .page-hero{
  display:none;
}

/* Responsive */
@media(max-width:980px){
  .faq539-hero::before{
    left:-90px;
    width:260px;
    opacity:.72;
  }
  .faq539-hero::after{
    right:-90px;
    width:260px;
    height:260px;
  }
  .faq539-layout{
    grid-template-columns:220px minmax(0,1fr);
  }
  .faq539-sidebar{position:static}
  .faq539-more{
    grid-template-columns:1fr auto;
    padding-left:170px;
  }
  .faq539-more-copy{grid-column:1/2}
}

@media(max-width:760px){
  .faq539-hero{
    min-height:280px;
  }
  .faq539-hero::before{
    left:-130px;
    width:245px;
    height:300px;
    opacity:.55;
  }
  .faq539-hero::after{
    right:-120px;
    top:25px;
    width:230px;
    height:230px;
    opacity:.09;
  }
  .faq539-hero-inner{
    width:min(100% - 28px,1080px);
    padding-bottom:38px;
  }
  .faq539-hero h1{
    font-size:38px;
  }
  .faq539-hero-copy p{
    font-size:14px;
  }

  .faq539-layout{
    width:min(100% - 28px,1080px);
    grid-template-columns:1fr;
  }
  .faq539-nav-card h2{
    font-size:22px;
  }
  .faq539-nav{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .faq539-nav a{
    border:1px solid #f0dfc7;
    min-height:50px;
  }
  .faq539-nav a.is-active::after{display:none}
  .faq539-help-card{
    display:grid;
    grid-template-columns:50px 1fr auto;
    gap:10px;
    align-items:center;
  }
  .faq539-help-card h3,
  .faq539-help-card p{margin:0}
  .faq539-help-card p{grid-column:2/3}
  .faq539-outline-btn{
    grid-column:3/4;
    grid-row:1/3;
  }

  .faq539-group-title{
    font-size:20px;
  }

  .faq539-more{
    width:min(100% - 28px,1080px);
    grid-template-columns:1fr;
    padding:18px 18px 18px 116px;
  }
  .faq539-more-mandala{
    left:-4px;
    bottom:-30px;
    width:120px;
    height:120px;
  }
  .faq539-gold-btn{
    justify-self:start;
  }
}

@media(max-width:520px){
  .faq539-breadcrumb{font-size:10px}
  .faq539-nav{
    grid-template-columns:1fr;
  }
  .faq539-help-card{
    display:block;
  }
  .faq539-help-card .faq539-help-ico{margin-bottom:8px}
  .faq539-help-card p{margin:8px 0 14px}
  .faq539-group > summary{
    grid-template-columns:32px 1fr 18px;
    padding:10px 12px;
  }
  .faq539-group-title{
    font-size:18px;
  }
  .faq539-panel{
    margin:0 8px 8px;
    padding:0 10px;
  }
  .faq539-more{
    padding:18px;
  }
  .faq539-more-mandala{
    right:-35px;
    left:auto;
    opacity:.10;
  }
}


/* ==========================================================
   V5.39.1 — Ajustements FAQ
   ========================================================== */
.faq539{
  margin-top:-2px;
}

.faq539-hero{
  min-height:360px;
  border-bottom:0 !important;
  background:linear-gradient(180deg,#fffaf3 0%,#fffaf3 100%);
}

.faq539-hero::before{
  left:-8px !important;
  top:2px !important;
  width:285px !important;
  height:350px !important;
  border-radius:0 !important;
  box-shadow:
    inset -56px 0 46px 4px #fffaf3,
    inset 0 -24px 28px 0 #fffaf3 !important;
  background:url('assets/images/cat-massalas-v55.jpg') 50% 50% / cover no-repeat !important;
  opacity:1 !important;
  filter:none !important;
}

.faq539-hero::after{
  right:-30px !important;
  top:10px !important;
  width:290px !important;
  height:290px !important;
  opacity:.11 !important;
}

.faq539-hero-inner{
  padding-top:42px !important;
  padding-bottom:62px !important;
}

.faq539-breadcrumb{
  margin-bottom:6px;
}

.faq539-hero-copy{
  margin-top:28px !important;
}

.faq539-body{
  padding-top:18px !important;
}

.faq539-layout{
  margin-top:0 !important;
}

.faq539-nav-card,
.faq539-help-card,
.faq539-group,
.faq539-more{
  scroll-margin-top:110px;
}

@media(max-width:980px){
  .faq539-hero{
    min-height:330px;
  }
  .faq539-hero::before{
    left:-34px !important;
    width:250px !important;
    height:320px !important;
    box-shadow:
      inset -52px 0 42px 4px #fffaf3,
      inset 0 -18px 24px 0 #fffaf3 !important;
  }
}

@media(max-width:760px){
  .faq539-hero{
    min-height:300px;
  }
  .faq539-hero-inner{
    padding-top:28px !important;
    padding-bottom:42px !important;
  }
  .faq539-hero::before{
    left:-58px !important;
    top:8px !important;
    width:210px !important;
    height:260px !important;
    border-radius:0 !important;
    opacity:.95 !important;
  }
}


/* ==========================================================
   V5.39.2 — FAQ hero compact + navigation fix
   ========================================================== */
.faq539{
  margin-top:-1px;
}

.faq539-hero{
  min-height:250px !important;
  border-bottom:0 !important;
  padding-bottom:0 !important;
  background:linear-gradient(180deg,#fffaf3 0%,#fffaf3 100%) !important;
}

.faq539-hero-inner{
  padding-top:26px !important;
  padding-bottom:26px !important;
  display:flex;
  align-items:flex-start;
}

.faq539-breadcrumb{
  display:none !important;
}

.faq539-hero-copy{
  margin-top:8px !important;
}

.faq539-hero-copy h1{
  margin-bottom:10px !important;
}

.faq539-hero-copy p{
  margin-top:8px !important;
  margin-bottom:0 !important;
}

.faq539-hero::before{
  left:0 !important;
  top:100px !important;
  width:250px !important;
  height:250px !important;
  border-radius:0 !important;
  opacity:1 !important;
  filter:none !important;
  background:url('assets/images/cat-massalas-v55.jpg') center center / cover no-repeat !important;
  box-shadow:none !important;
}

.faq539-hero::after{
  right:-10px !important;
  top:6px !important;
  width:255px !important;
  height:255px !important;
  opacity:.10 !important;
}

.faq539-body{
  padding-top:16px !important;
}

.faq539-layout{
  margin-top:0 !important;
}

.faq539-nav-card,
.faq539-help-card,
.faq539-group,
.faq539-more{
  scroll-margin-top:72px !important;
}

@media(max-width:980px){
  .faq539-hero{
    min-height:220px !important;
  }
  .faq539-hero::before{
    width:200px !important;
    height:200px !important;
    top:112px !important;
    left:-10px !important;
  }
  .faq539-hero::after{
    width:210px !important;
    height:210px !important;
  }
}

@media(max-width:760px){
  .faq539-hero{
    min-height:200px !important;
  }
  .faq539-hero-inner{
    padding-top:18px !important;
    padding-bottom:18px !important;
  }
  .faq539-hero::before{
    width:160px !important;
    height:160px !important;
    top:125px !important;
    left:-18px !important;
  }
  .faq539-hero-copy{
    margin-top:0 !important;
  }
}


/* ==========================================================
   V5.39.3 — FAQ hero avec image épices fondue au menu latéral
   ========================================================== */

.faq539-hero{
  position:relative;
  overflow:visible !important;
  min-height:240px !important;
  background:linear-gradient(180deg,#fffaf3 0%,#fffaf3 100%) !important;
}

.faq539-hero-inner{
  position:relative;
  z-index:2;
  padding-top:20px !important;
  padding-bottom:18px !important;
}

.faq539-hero-copy{
  position:relative;
  z-index:3;
}

.faq539-hero::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:260px;
  height:100%;
  background:
    linear-gradient(90deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,0.04) 58%,
      rgba(255,250,243,0.48) 76%,
      rgba(255,250,243,0.88) 90%,
      rgba(255,250,243,1) 100%),
    url('assets/images/cat-massalas-v55.jpg') left center / cover no-repeat !important;
  border-radius:0 !important;
  filter:none !important;
  box-shadow:none !important;
  opacity:1 !important;
  z-index:1;
}

.faq539-hero::after{
  content:"";
  position:absolute;
  right:10px;
  top:8px;
  width:250px;
  height:250px;
  background:url('assets/images/mandala-brand-v5.png') center/contain no-repeat;
  opacity:.10;
  z-index:1;
}

.faq539-body{
  position:relative;
  z-index:3;
  margin-top:-4px !important;
  padding-top:8px !important;
}

.faq539-layout{
  align-items:start !important;
}

.faq539-sidebar{
  margin-top:-6px !important;
  position:relative;
}

.faq539-nav-card{
  position:relative;
  z-index:5;
  margin-top:8px !important;
  border-top-left-radius:18px !important;
  overflow:hidden;
}

.faq539-nav-card::before{
  content:"";
  position:absolute;
  left:-182px;
  top:-34px;
  width:235px;
  height:235px;
  background:
    linear-gradient(90deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,0.06) 55%,
      rgba(255,250,243,0.62) 76%,
      rgba(255,250,243,0.95) 92%,
      rgba(255,250,243,1) 100%),
    url('assets/images/cat-massalas-v55.jpg') center center / cover no-repeat;
  pointer-events:none;
  opacity:1;
  z-index:0;
}

.faq539-nav-card > *{
  position:relative;
  z-index:2;
}

.faq539-nav-title{
  padding-top:28px !important;
}

@media(max-width:980px){
  .faq539-hero::before{
    width:210px;
  }
  .faq539-nav-card::before{
    display:none;
  }
  .faq539-sidebar{
    margin-top:0 !important;
  }
}

@media(max-width:760px){
  .faq539-hero{
    min-height:210px !important;
  }
  .faq539-hero::before{
    width:150px;
    opacity:.9;
  }
  .faq539-hero::after{
    width:170px;
    height:170px;
    right:0;
    top:20px;
  }
}


/* ==========================================================
   V5.39.4 — FAQ SIMPLE / STABLE
   - suppression épices et mandala
   - hero sobre
   - menu latéral sans scroll automatique
   ========================================================== */

.faq539{
  margin-top:0 !important;
}

/* Hero simple et compact */
.faq539-hero{
  min-height:205px !important;
  height:auto !important;
  overflow:hidden !important;
  border:0 !important;
  border-bottom:0 !important;
  background:#fffaf3 !important;
}

.faq539-hero::before,
.faq539-hero::after{
  content:none !important;
  display:none !important;
  background:none !important;
}

.faq539-hero-inner{
  width:min(1080px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:26px 0 28px !important;
  display:block !important;
}

.faq539-breadcrumb{
  display:none !important;
}

.faq539-hero-copy{
  width:min(720px,100%) !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
}

.faq539-hero h1{
  margin:0 !important;
}

.faq539-rule{
  margin:16px auto 15px !important;
}

.faq539-hero-copy p{
  margin:0 !important;
}

/* Le contenu remonte naturellement sous le hero */
.faq539-body{
  margin:0 !important;
  padding:18px 0 18px !important;
}

.faq539-layout{
  margin-top:0 !important;
}

/* Plus aucun décor image autour du menu */
.faq539-nav-card::before,
.faq539-nav-card::after,
.faq539-sidebar::before,
.faq539-sidebar::after{
  content:none !important;
  display:none !important;
  background:none !important;
}

/* Supprime tout comportement CSS pouvant influencer le scroll */
.faq539-nav-card,
.faq539-help-card,
.faq539-group,
.faq539-more{
  scroll-margin-top:0 !important;
  scroll-snap-margin-top:0 !important;
}

/* Le menu reste visuellement simple et stable */
.faq539-sidebar{
  margin-top:0 !important;
}

.faq539-nav-card{
  margin-top:0 !important;
  border-radius:9px !important;
}

/* Mobile */
@media(max-width:760px){
  .faq539-hero{
    min-height:175px !important;
  }

  .faq539-hero-inner{
    width:min(100% - 28px,1080px) !important;
    padding:22px 0 24px !important;
  }

  .faq539-hero h1{
    font-size:36px !important;
  }

  .faq539-body{
    padding-top:14px !important;
  }
}


/* ==========================================================
   V5.39.5 — FAQ alignée, titre affiné, navigation dynamique
   ========================================================== */

/* Hero plus fin et mieux proportionné */
.faq539-hero{
  min-height:170px !important;
  height:auto !important;
  background:#fffaf3 !important;
}

.faq539-hero-inner{
  padding:19px 0 22px !important;
}

.faq539-hero-copy{
  width:min(650px,100%) !important;
}

.faq539-kicker{
  display:block;
  margin:0 auto 5px;
  color:#c96c08;
  font:700 10px/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:2.2px;
  text-transform:uppercase;
}

.faq539-hero h1{
  margin:0 !important;
  font-size:44px !important;
  line-height:1.05 !important;
  letter-spacing:-.45px !important;
  font-weight:700 !important;
}

.faq539-rule{
  margin:12px auto 12px !important;
  transform:scale(.86);
}

.faq539-hero-copy p{
  font-size:13px !important;
  line-height:1.45 !important;
  color:#5a493f !important;
}

/* Le contenu FAQ remonte légèrement */
.faq539-body{
  padding-top:10px !important;
}

/* Alignement strict du menu de gauche avec le premier bloc à droite */
.faq539-layout{
  align-items:start !important;
}

.faq539-sidebar,
.faq539-groups{
  align-self:start !important;
  margin-top:0 !important;
  padding-top:0 !important;
}

.faq539-sidebar{
  position:static !important;
  top:auto !important;
  transform:none !important;
}

.faq539-nav-card{
  margin-top:0 !important;
  transform:none !important;
}

/* Animation discrète lors du changement de thème */
.faq539-groups{
  opacity:1;
  transform:translateY(0);
  transition:opacity .15s ease, transform .15s ease;
}

.faq539-groups.is-switching{
  opacity:.42;
  transform:translateY(3px);
}

.faq539-group[open] .faq539-panel{
  animation:faq539PanelReveal .23s ease both;
}

.faq539-group.is-just-opened{
  box-shadow:0 7px 22px rgba(186,102,12,.08);
}

@keyframes faq539PanelReveal{
  from{
    opacity:0;
    transform:translateY(-5px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* L'élément actif du menu reste un peu plus vivant */
.faq539-nav a{
  transition:background-color .16s ease,
             color .16s ease,
             box-shadow .16s ease,
             transform .16s ease;
}

.faq539-nav a.is-active{
  transform:translateX(2px);
}

/* Aucun ancrage CSS ne doit provoquer de repositionnement involontaire */
.faq539-group,
.faq539-nav-card,
.faq539-help-card,
.faq539-more{
  scroll-margin-top:0 !important;
  scroll-snap-margin-top:0 !important;
}

@media(max-width:760px){
  .faq539-hero{
    min-height:150px !important;
  }

  .faq539-hero-inner{
    padding:16px 0 19px !important;
  }

  .faq539-hero h1{
    font-size:34px !important;
    letter-spacing:-.25px !important;
  }

  .faq539-kicker{
    margin-bottom:4px;
  }

  .faq539-body{
    padding-top:8px !important;
  }
}


/* ==========================================================
   V5.39.7 — FAQ BANDEAU COMPACT
   Base : V5.39.6
   Modification unique : réduction des espaces du hero FAQ.
   ========================================================== */

.faq539-hero{
  min-height:132px !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:#fffaf3 !important;
}

.faq539-hero-inner{
  width:min(1080px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:13px 0 14px !important;
}

.faq539-hero-copy{
  width:min(640px,100%) !important;
  margin:0 auto !important;
  padding:0 !important;
}

.faq539-hero h1{
  margin:0 !important;
  font-size:41px !important;
  line-height:1.02 !important;
}

.faq539-rule{
  margin:8px auto 8px !important;
  transform:scale(.82);
}

.faq539-hero-copy p{
  margin:0 !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
}

.faq539-body{
  padding-top:7px !important;
}

@media(max-width:760px){
  .faq539-hero{
    min-height:116px !important;
  }

  .faq539-hero-inner{
    width:min(100% - 28px,1080px) !important;
    padding:11px 0 12px !important;
  }

  .faq539-hero h1{
    font-size:33px !important;
  }

  .faq539-rule{
    margin:7px auto !important;
  }

  .faq539-body{
    padding-top:6px !important;
  }
}


/* ==========================================================
   V5.40 — CONTACT / HERO UNIFIÉ
   Base : V5.39.7
   ========================================================== */

.contact540{
  --c540-bg:#fffaf3;
  --c540-card:#fffdf9;
  --c540-line:#edd4b0;
  --c540-orange:#db7b08;
  --c540-ink:#2b1a11;
  background:var(--c540-bg);
  color:var(--c540-ink);
}

/* ---------------- HERO ---------------- */
.contact540-hero{
  position:relative;
  overflow:hidden;
  min-height:435px;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.98),rgba(255,250,243,.98) 60%,rgba(250,240,225,.98));
}

.contact540-hero::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:330px;
  background:
    linear-gradient(90deg,rgba(255,250,243,0) 0%,rgba(255,250,243,.05) 58%,rgba(255,250,243,.78) 88%,#fffaf3 100%),
    url('assets/images/cat-massalas-v55.jpg') left center/cover no-repeat;
  pointer-events:none;
}

.contact540-hero::after{
  content:"";
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  width:330px;
  background:
    linear-gradient(270deg,rgba(255,250,243,0) 0%,rgba(255,250,243,.06) 58%,rgba(255,250,243,.82) 89%,#fffaf3 100%),
    url('assets/images/cat-riz-v55.jpg') right center/cover no-repeat;
  pointer-events:none;
}

.contact540-hero-inner{
  position:relative;
  z-index:2;
  width:min(1080px,calc(100% - 48px));
  margin:0 auto;
  padding:38px 0 28px;
}

.contact540-title{
  width:min(720px,100%);
  margin:0 auto;
  text-align:center;
}

.contact540-title h1{
  margin:0;
  font:700 clamp(42px,4.6vw,58px)/1.04 Georgia,'Times New Roman',serif;
  letter-spacing:-.6px;
}

.contact540-rule{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin:17px auto 15px;
}

.contact540-rule i{
  display:block;
  width:36px;
  height:1px;
  background:#d77c0c;
}

.contact540-rule b{
  display:block;
  width:8px;
  height:8px;
  background:#d77c0c;
  transform:rotate(45deg);
}

.contact540-title p{
  margin:0;
  font-size:15px;
  line-height:1.55;
  color:#3e3028;
}

.contact540-services{
  margin:34px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.contact540-service{
  position:relative;
  min-height:170px;
  padding:34px 24px 20px;
  text-align:center;
  border:1px solid var(--c540-line);
  border-radius:9px;
  background:rgba(255,253,249,.94);
  box-shadow:0 8px 22px rgba(65,37,20,.035);
}

.contact540-service-icon{
  position:absolute;
  left:50%;
  top:-25px;
  transform:translateX(-50%);
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff0dc;
  color:#b76403;
  box-shadow:0 5px 14px rgba(133,72,13,.08);
}

.contact540-service-icon svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.contact540-service h2{
  margin:0 0 9px;
  font:700 20px/1.2 Georgia,'Times New Roman',serif;
}

.contact540-service p{
  margin:0 auto 13px;
  max-width:250px;
  font-size:12px;
  line-height:1.55;
  color:#4a3c34;
}

.contact540-service a{
  display:inline-block;
  padding:6px 13px;
  border-radius:18px;
  background:#fff0dc;
  color:#b55e02;
  font-size:11px;
  font-weight:700;
}

.contact540-service a:hover{
  background:#ffe5bf;
}

/* ---------------- CORPS CONTACT ---------------- */
.contact540-main{
  padding:24px 0 34px;
}

.contact540-layout{
  width:min(1080px,calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:20px;
  align-items:start;
}

.contact540-details,
.contact540-formbox{
  border:1px solid var(--c540-line);
  border-radius:10px;
  background:linear-gradient(180deg,#fffdf9,#fffaf4);
  box-shadow:0 8px 24px rgba(58,34,21,.035);
}

.contact540-details{
  padding:22px 22px 20px;
}

.contact540-formbox{
  padding:22px 24px 24px;
}

.contact540-details h2,
.contact540-formbox h2{
  margin:0;
  font:700 23px/1.2 Georgia,'Times New Roman',serif;
}

.contact540-small-rule{
  width:34px;
  height:2px;
  margin:10px 0 18px;
  background:#d67807;
}

.contact540-detail{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:10px;
  align-items:start;
  margin:0 0 18px;
}

.contact540-detail > span{
  color:#d77704;
  font-size:24px;
  line-height:1;
}

.contact540-detail strong{
  display:block;
  margin-bottom:3px;
  font-size:12px;
}

.contact540-detail p{
  margin:0;
  font-size:12px;
  line-height:1.5;
  color:#493b33;
}

.contact540-faq-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:2px;
  padding:8px 12px;
  border:1px solid #d87a08;
  border-radius:5px;
  color:#b75e01;
  font-size:11px;
  font-weight:800;
}

.contact540-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 18px;
}

.contact540-fields label{
  display:block;
  margin:0;
}

.contact540-fields label > span{
  display:block;
  margin-bottom:5px;
  font-size:12px;
  font-weight:700;
}

.contact540-fields input,
.contact540-fields select,
.contact540-fields textarea{
  width:100%;
  min-height:42px;
  margin:0;
  padding:10px 12px;
  border:1px solid #dec8a8;
  border-radius:6px;
  background:#fffdf9;
  color:#2c1e17;
  box-sizing:border-box;
}

.contact540-fields textarea{
  min-height:126px;
  resize:vertical;
}

.contact540-full{
  grid-column:1/-1;
}

.contact540-honeypot{
  position:absolute !important;
  left:-99999px !important;
  width:1px;
  height:1px;
  overflow:hidden;
}

.contact540-submit{
  width:100%;
  min-height:43px;
  margin-top:15px;
  border:0;
  border-radius:5px;
  background:linear-gradient(90deg,#d77806,#e58a08);
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.contact540-submit:hover{
  filter:brightness(1.035);
}

/* Neutralise l'ancien décor générique Contact uniquement */
body.page-template-template-contact .im-page-contact,
body.page-template-template-contact .im-decor-hero{
  display:none;
}

/* ---------------- RESPONSIVE ---------------- */
@media(max-width:900px){
  .contact540-hero::before,
  .contact540-hero::after{
    width:220px;
    opacity:.72;
  }

  .contact540-services{
    gap:16px;
  }

  .contact540-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .contact540-hero{
    min-height:auto;
  }

  .contact540-hero::before,
  .contact540-hero::after{
    opacity:.22;
    width:160px;
  }

  .contact540-hero-inner{
    width:min(100% - 28px,1080px);
    padding:28px 0 28px;
  }

  .contact540-title h1{
    font-size:38px;
  }

  .contact540-services{
    grid-template-columns:1fr;
    gap:38px;
    margin-top:42px;
  }

  .contact540-layout{
    width:min(100% - 28px,1080px);
  }

  .contact540-fields{
    grid-template-columns:1fr;
  }

  .contact540-full{
    grid-column:auto;
  }
}


/* ==========================================================
   V5.41 — CONTACT HERO CONTENEUR
   Base : V5.40
   Objectif : bloc central plus contenu, moins étiré,
   tout en restant responsive.
   ========================================================== */

.contact540-hero-inner{
  width:min(1160px, calc(100% - 64px)) !important;
  max-width:1160px !important;
  margin:0 auto !important;
}

.contact540-title{
  width:min(800px, 100%) !important;
  max-width:800px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.contact540-services{
  width:min(1080px, 100%) !important;
  max-width:1080px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:22px !important;
}

.contact540-service{
  min-width:0 !important;
}

@media (min-width:1400px){
  .contact540-hero-inner{
    width:1160px !important;
  }
  .contact540-title{
    width:800px !important;
  }
  .contact540-services{
    width:1080px !important;
  }
}

@media (max-width:1100px){
  .contact540-hero-inner{
    width:min(100% - 40px, 1160px) !important;
  }
  .contact540-services{
    width:100% !important;
    gap:18px !important;
  }
}

@media (max-width:820px){
  .contact540-hero-inner{
    width:min(100% - 28px, 1160px) !important;
  }

  .contact540-title{
    width:min(680px, 100%) !important;
  }

  .contact540-services{
    grid-template-columns:1fr !important;
    width:min(560px, 100%) !important;
    gap:36px !important;
  }
}


/* ==========================================================
   V5.42 — CONTACT : HERO ENTIER DANS UN BLOC CENTRÉ
   Correction réelle de la V5.41 :
   les images latérales ne sont plus liées à la pleine largeur.
   ========================================================== */

/* Le HERO entier devient un vrai bloc centré */
.contact540-hero{
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:18px auto 0 !important;
  min-height:0 !important;
  border-radius:12px !important;
  overflow:hidden !important;
  position:relative !important;
  background:
    radial-gradient(circle at 50% 38%,
      rgba(255,255,255,.99),
      rgba(255,250,243,.99) 60%,
      rgba(250,240,225,.99)) !important;
}

/* Les images latérales sont maintenant limitées au bloc hero */
.contact540-hero::before{
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:27% !important;
  max-width:315px !important;
  background:
    linear-gradient(90deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,.02) 55%,
      rgba(255,250,243,.48) 76%,
      rgba(255,250,243,.88) 92%,
      #fffaf3 100%),
    url('assets/images/cat-massalas-v55.jpg') left center / cover no-repeat !important;
  opacity:1 !important;
}

.contact540-hero::after{
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:27% !important;
  max-width:315px !important;
  background:
    linear-gradient(270deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,.02) 55%,
      rgba(255,250,243,.48) 76%,
      rgba(255,250,243,.88) 92%,
      #fffaf3 100%),
    url('assets/images/cat-riz-v55.jpg') right center / cover no-repeat !important;
  opacity:1 !important;
}

/* Contenu encore plus contenu au centre du hero */
.contact540-hero-inner{
  width:min(1040px, calc(100% - 52px)) !important;
  max-width:1040px !important;
  margin:0 auto !important;
  padding:30px 0 30px !important;
}

.contact540-title{
  width:min(700px, 100%) !important;
  max-width:700px !important;
  margin:0 auto !important;
}

.contact540-title h1{
  font-size:clamp(40px, 4.2vw, 54px) !important;
  line-height:1.04 !important;
}

/* Les 3 cartes restent dans un bloc central maîtrisé */
.contact540-services{
  width:min(960px, 100%) !important;
  max-width:960px !important;
  margin:34px auto 0 !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:18px !important;
}

.contact540-service{
  min-height:164px !important;
  padding-left:20px !important;
  padding-right:20px !important;
}

/* Le corps de la page reste aligné avec le hero */
.contact540-main{
  padding-top:22px !important;
}

.contact540-layout{
  width:min(1040px, calc(100% - 40px)) !important;
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Grand écran : on ne dépasse jamais les largeurs cibles */
@media (min-width:1400px){
  .contact540-hero{
    width:1180px !important;
  }

  .contact540-hero-inner{
    width:1040px !important;
  }

  .contact540-services{
    width:960px !important;
  }

  .contact540-layout{
    width:1040px !important;
  }
}

/* Écrans intermédiaires */
@media (max-width:1100px){
  .contact540-hero{
    width:calc(100% - 28px) !important;
  }

  .contact540-hero::before,
  .contact540-hero::after{
    width:23% !important;
  }

  .contact540-hero-inner{
    width:calc(100% - 36px) !important;
  }

  .contact540-services{
    width:min(900px, 100%) !important;
  }
}

/* Tablette/mobile */
@media (max-width:820px){
  .contact540-hero{
    width:calc(100% - 20px) !important;
    margin-top:10px !important;
  }

  .contact540-hero::before,
  .contact540-hero::after{
    width:150px !important;
    opacity:.18 !important;
  }

  .contact540-hero-inner{
    width:calc(100% - 24px) !important;
    padding:26px 0 28px !important;
  }

  .contact540-title{
    width:min(620px, 100%) !important;
  }

  .contact540-services{
    grid-template-columns:1fr !important;
    width:min(540px, 100%) !important;
    gap:36px !important;
  }

  .contact540-layout{
    width:calc(100% - 20px) !important;
  }
}


/* ==========================================================
   V5.43 — CONTACT COMPACT
   Base : V5.42
   - hero collé au menu
   - largeur encore plus contenue
   - aucun arrondi sur le hero
   - e-mail retiré du bloc coordonnées
   ========================================================== */

/* Hero immédiatement sous le menu */
.contact540-hero{
  width:min(1080px, calc(100% - 34px)) !important;
  max-width:1080px !important;

  margin-top:0 !important;
  margin-bottom:0 !important;
  margin-left:auto !important;
  margin-right:auto !important;

  border-radius:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}

/* Images latérales intégrées à un bloc plus compact */
.contact540-hero::before,
.contact540-hero::after{
  width:25% !important;
  max-width:265px !important;
}

/* Contenu interne resserré */
.contact540-hero-inner{
  width:min(940px, calc(100% - 40px)) !important;
  max-width:940px !important;
  margin:0 auto !important;
  padding:25px 0 25px !important;
}

/* Titre moins étiré */
.contact540-title{
  width:min(620px, 100%) !important;
  max-width:620px !important;
  margin:0 auto !important;
}

.contact540-title h1{
  font-size:clamp(39px, 4vw, 51px) !important;
}

/* Cartes plus proches et plus compactes */
.contact540-services{
  width:min(860px, 100%) !important;
  max-width:860px !important;
  margin:31px auto 0 !important;

  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:14px !important;
}

.contact540-service{
  min-height:154px !important;
  padding:32px 17px 17px !important;
  border-radius:6px !important;
}

.contact540-service h2{
  font-size:18px !important;
}

.contact540-service p{
  font-size:11.5px !important;
  line-height:1.48 !important;
}

/* Corps aligné sur le même esprit de largeur */
.contact540-main{
  padding-top:18px !important;
}

.contact540-layout{
  width:min(940px, calc(100% - 34px)) !important;
  max-width:940px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  gap:18px !important;
}

/* Les blocs sous le hero restent légèrement arrondis :
   seule la demande de suppression d'arrondi sur le hero est appliquée. */

/* Grand écran */
@media(min-width:1400px){
  .contact540-hero{
    width:1080px !important;
  }

  .contact540-hero-inner{
    width:940px !important;
  }

  .contact540-title{
    width:620px !important;
  }

  .contact540-services{
    width:860px !important;
  }

  .contact540-layout{
    width:940px !important;
  }
}

/* Écrans intermédiaires */
@media(max-width:1050px){
  .contact540-hero{
    width:calc(100% - 22px) !important;
  }

  .contact540-hero-inner{
    width:calc(100% - 30px) !important;
  }

  .contact540-services{
    width:min(820px,100%) !important;
  }

  .contact540-layout{
    width:calc(100% - 22px) !important;
  }
}

/* Mobile / tablette */
@media(max-width:820px){
  .contact540-hero{
    width:100% !important;
    margin-top:0 !important;
    border-radius:0 !important;
  }

  .contact540-hero::before,
  .contact540-hero::after{
    width:140px !important;
    opacity:.18 !important;
  }

  .contact540-hero-inner{
    width:calc(100% - 24px) !important;
    padding:23px 0 27px !important;
  }

  .contact540-title{
    width:min(560px,100%) !important;
  }

  .contact540-services{
    grid-template-columns:1fr !important;
    width:min(500px,100%) !important;
    gap:34px !important;
  }

  .contact540-layout{
    width:calc(100% - 20px) !important;
  }
}


/* ==========================================================
   V5.43.1 — CORRECTION UNIQUE : HERO SANS AUCUN ARRONDI
   ========================================================== */
.contact540-hero{
  border-radius:0 !important;
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
  border-bottom-left-radius:0 !important;
  border-bottom-right-radius:0 !important;
}

/* Sécurité : aucun wrapper direct du hero ne doit recréer
   un arrondi visuel dans les coins supérieurs. */
.contact540-hero-inner{
  border-radius:0 !important;
}

.contact540-hero::before,
.contact540-hero::after{
  border-radius:0 !important;
}


/* ==========================================================
   V5.43.2 — CORRECTION DEFINITIVE COINS HERO CONTACT
   Neutralisation de tous les arrondis hérités / globaux.
   ========================================================== */

body.page-template-template-contact .contact540-hero,
body.page-template-template-contact .contact540-hero-inner,
body.page-template-template-contact .contact540-hero::before,
body.page-template-template-contact .contact540-hero::after,
body.page-template-template-contact .contact540-hero > *,
body.page-template-template-contact .contact540-hero img,
body.page-template-template-contact main.contact540 .contact540-hero{
  border-radius:0 !important;
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
  border-bottom-left-radius:0 !important;
  border-bottom-right-radius:0 !important;
}

/* Empêche un masque/clip arrondi éventuel venant d'une règle générique. */
body.page-template-template-contact .contact540-hero{
  clip-path:none !important;
  -webkit-clip-path:none !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
  overflow:hidden !important;
}

/* Les deux décors latéraux doivent commencer par des angles droits. */
body.page-template-template-contact .contact540-hero::before,
body.page-template-template-contact .contact540-hero::after{
  clip-path:none !important;
  -webkit-clip-path:none !important;
}

/* Sécurité contre les règles génériques WordPress / thème sur les
   premiers ou derniers éléments d'un hero. */
body.page-template-template-contact .contact540-hero :first-child,
body.page-template-template-contact .contact540-hero :last-child{
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
}


/* ==========================================================
   V5.43.3 — HERO CONTACT : IMAGES SANS COINS ARRONDIS
   Cause identifiée : l'arrondi était intégré aux JPG source.
   ========================================================== */

body.page-template-template-contact .contact540-hero{
  border-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
}

/* Image massalas nettoyée : coins supprimés directement dans l'asset */
body.page-template-template-contact .contact540-hero::before{
  border-radius:0 !important;
  background:
    linear-gradient(90deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,.02) 55%,
      rgba(255,250,243,.48) 76%,
      rgba(255,250,243,.88) 92%,
      #fffaf3 100%),
    url('assets/images/contact-v5438-left-spices.jpg') left center / cover no-repeat !important;
}

/* Image riz nettoyée : coins supprimés directement dans l'asset */
body.page-template-template-contact .contact540-hero::after{
  border-radius:0 !important;
  background:
    linear-gradient(270deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,.02) 55%,
      rgba(255,250,243,.48) 76%,
      rgba(255,250,243,.88) 92%,
      #fffaf3 100%),
    url('assets/images/contact-v5438-right-bowl.jpg') right center / cover no-repeat !important;
}


/* ==========================================================
   V5.43.4 — CONTACT : FONDU LATERAL VERS LE FOND CREME
   Base : V5.43.3
   Objectif : retrouver l'intégration du visuel de référence.
   ========================================================== */

body.page-template-template-contact .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
}

/* Visuel gauche : épices, fondu doux vers le centre */
body.page-template-template-contact .contact540-hero::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;

  width:34% !important;
  max-width:none !important;

  border-radius:0 !important;
  opacity:1 !important;

  background:
    linear-gradient(
      90deg,
      rgba(255,250,243,0.00) 0%,
      rgba(255,250,243,0.00) 42%,
      rgba(255,250,243,0.12) 54%,
      rgba(255,250,243,0.35) 66%,
      rgba(255,250,243,0.68) 80%,
      rgba(255,250,243,0.92) 92%,
      rgba(255,250,243,1.00) 100%
    ),
    url('assets/images/contact-v5438-left-spices.jpg') left center / cover no-repeat !important;

  z-index:0 !important;
  pointer-events:none !important;
}

/* Visuel droit : riz, fondu doux vers le centre */
body.page-template-template-contact .contact540-hero::after{
  content:"" !important;
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;

  width:34% !important;
  max-width:none !important;

  border-radius:0 !important;
  opacity:1 !important;

  background:
    linear-gradient(
      270deg,
      rgba(255,250,243,0.00) 0%,
      rgba(255,250,243,0.00) 42%,
      rgba(255,250,243,0.12) 54%,
      rgba(255,250,243,0.35) 66%,
      rgba(255,250,243,0.68) 80%,
      rgba(255,250,243,0.92) 92%,
      rgba(255,250,243,1.00) 100%
    ),
    url('assets/images/contact-v5438-right-bowl.jpg') right center / cover no-repeat !important;

  z-index:0 !important;
  pointer-events:none !important;
}

/* Contenu au-dessus des images */
body.page-template-template-contact .contact540-hero-inner{
  position:relative !important;
  z-index:2 !important;
}

/* Zone centrale plus calme pour le titre */
body.page-template-template-contact .contact540-title{
  position:relative !important;
  z-index:3 !important;
}

/* Les cartes restent lisibles tout en laissant respirer les visuels */
body.page-template-template-contact .contact540-service{
  position:relative !important;
  z-index:3 !important;
  background:rgba(255,253,249,.94) !important;
  backdrop-filter:blur(1.5px) !important;
}

/* Aucun arrondi parasite n'est réintroduit */
body.page-template-template-contact .contact540-hero,
body.page-template-template-contact .contact540-hero::before,
body.page-template-template-contact .contact540-hero::after{
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
  border-bottom-left-radius:0 !important;
  border-bottom-right-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
}

/* Responsive : conserver le fondu sans envahir le texte */
@media(max-width:1050px){
  body.page-template-template-contact .contact540-hero::before,
  body.page-template-template-contact .contact540-hero::after{
    width:31% !important;
  }
}

@media(max-width:820px){
  body.page-template-template-contact .contact540-hero::before,
  body.page-template-template-contact .contact540-hero::after{
    width:42% !important;
    opacity:.24 !important;
  }

  body.page-template-template-contact .contact540-service{
    background:rgba(255,253,249,.97) !important;
  }
}


/* ==========================================================
   V5.43.5 — CONTACT HERO REFERENCE
   Reproduction proche de la capture fournie par l'utilisateur
   - suppression du fil d'ariane
   - nouvelles images hero intégrées au ZIP
   - rendu plus illustré, plus naturel, fondu vers fond crème
   ========================================================== */

body.page-template-template-contact .contact540-breadcrumbs,
body.page-template-template-contact .woocommerce-breadcrumb,
body.page-template-template-contact nav.woocommerce-breadcrumb,
body.page-template-template-contact .breadcrumbs{
  display:none !important;
}

body.page-template-template-contact .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
  padding-top:28px !important;
  padding-bottom:32px !important;
  min-height:390px !important;
}

/* Images hero en fondu vers le centre, dans l'esprit de la capture */
body.page-template-template-contact .contact540-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:34% !important;
  background:
    linear-gradient(
      90deg,
      rgba(255,250,243,0.00) 0%,
      rgba(255,250,243,0.00) 48%,
      rgba(255,250,243,0.16) 58%,
      rgba(255,250,243,0.48) 72%,
      rgba(255,250,243,0.82) 88%,
      rgba(255,250,243,1) 100%
    ),
    url('assets/images/contact-v5438-left-spices.jpg') left center / cover no-repeat !important;
  z-index:0 !important;
  pointer-events:none !important;
}

body.page-template-template-contact .contact540-hero::after{
  content:"" !important;
  position:absolute !important;
  inset:0 0 0 auto !important;
  width:34% !important;
  background:
    linear-gradient(
      270deg,
      rgba(255,250,243,0.00) 0%,
      rgba(255,250,243,0.00) 48%,
      rgba(255,250,243,0.16) 58%,
      rgba(255,250,243,0.48) 72%,
      rgba(255,250,243,0.82) 88%,
      rgba(255,250,243,1) 100%
    ),
    url('assets/images/contact-v5438-right-bowl.jpg') right center / cover no-repeat !important;
  z-index:0 !important;
  pointer-events:none !important;
}

/* léger décor type mandala extrêmement discret, sans bloc parasite */
body.page-template-template-contact .contact540-hero-inner{
  position:relative !important;
  z-index:2 !important;
}

body.page-template-template-contact .contact540-title{
  position:relative !important;
  z-index:3 !important;
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

body.page-template-template-contact .contact540-title h1,
body.page-template-template-contact .contact540-title .entry-title{
  font-size: clamp(48px, 4.4vw, 72px) !important;
  line-height:1.05 !important;
  margin-bottom:18px !important;
}

body.page-template-template-contact .contact540-title p{
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* cartes hero inspirées de la référence */
body.page-template-template-contact .contact540-services{
  position:relative !important;
  z-index:3 !important;
  margin-top:32px !important;
}

body.page-template-template-contact .contact540-service{
  background:rgba(255,252,248,.94) !important;
  border:1px solid #ecd7bc !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

body.page-template-template-contact .contact540-service .button,
body.page-template-template-contact .contact540-service a.button{
  background:#f4dfc7 !important;
  color:#a86716 !important;
  border:none !important;
}

/* hero collé au menu, sans bord arrondi */
body.page-template-template-contact .site-main > .contact540-hero:first-child,
body.page-template-template-contact .contact540-hero{
  margin-top:0 !important;
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
}

/* contenu principal un peu plus proche de la référence */
body.page-template-template-contact .contact540-main{
  margin-top:18px !important;
}

@media (max-width: 1024px){
  body.page-template-template-contact .contact540-hero::before,
  body.page-template-template-contact .contact540-hero::after{
    width:31% !important;
  }
}

@media (max-width: 820px){
  body.page-template-template-contact .contact540-hero{
    min-height:auto !important;
    padding-top:24px !important;
    padding-bottom:24px !important;
  }
  body.page-template-template-contact .contact540-hero::before,
  body.page-template-template-contact .contact540-hero::after{
    width:42% !important;
    opacity:.22 !important;
  }
  body.page-template-template-contact .contact540-title h1,
  body.page-template-template-contact .contact540-title .entry-title{
    font-size: clamp(34px, 9vw, 48px) !important;
  }
}


/* ==========================================================
   V5.43.6 — CONTACT CLEAN
   Correction affichage des assets hero + nettoyage du thème.
   ========================================================== */

/* Hero contact : règles finales universelles */
.contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
}

/* ÉPICES GAUCHE */
.contact540-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  right:auto !important;

  width:36% !important;
  max-width:none !important;
  height:auto !important;

  opacity:1 !important;
  border-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;

  background-image:
    linear-gradient(
      90deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,0) 46%,
      rgba(255,250,243,.10) 55%,
      rgba(255,250,243,.32) 66%,
      rgba(255,250,243,.64) 79%,
      rgba(255,250,243,.88) 90%,
      #fffaf3 100%
    ),
    url("assets/images/contact-v5438-left-spices.jpg") !important;
  background-position:left center, left center !important;
  background-size:100% 100%, cover !important;
  background-repeat:no-repeat !important;

  z-index:0 !important;
  pointer-events:none !important;
}

/* RIZ DROITE */
.contact540-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  left:auto !important;

  width:36% !important;
  max-width:none !important;
  height:auto !important;

  opacity:1 !important;
  border-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;

  background-image:
    linear-gradient(
      270deg,
      rgba(255,250,243,0) 0%,
      rgba(255,250,243,0) 46%,
      rgba(255,250,243,.10) 55%,
      rgba(255,250,243,.32) 66%,
      rgba(255,250,243,.64) 79%,
      rgba(255,250,243,.88) 90%,
      #fffaf3 100%
    ),
    url("assets/images/contact-v5438-right-bowl.jpg") !important;
  background-position:right center, right center !important;
  background-size:100% 100%, cover !important;
  background-repeat:no-repeat !important;

  z-index:0 !important;
  pointer-events:none !important;
}

.contact540-hero-inner,
.contact540-title,
.contact540-services{
  position:relative !important;
  z-index:2 !important;
}

/* Fil d'Ariane définitivement masqué sur Contact */
.contact540-breadcrumbs,
.contact540-hero .breadcrumbs,
.contact540-hero .woocommerce-breadcrumb{
  display:none !important;
}

@media(max-width:1050px){
  .contact540-hero::before,
  .contact540-hero::after{
    width:33% !important;
  }
}

@media(max-width:820px){
  .contact540-hero::before,
  .contact540-hero::after{
    width:43% !important;
    opacity:.22 !important;
  }
}


/* ==========================================================
   V5.43.8 — CONTACT : DEUX IMAGES DIRECTES, SANS FONDU
   Fichiers réellement présents dans le ZIP :
   - contact-v5438-left-spices.jpg
   - contact-v5438-right-bowl.jpg
   ========================================================== */

body[class] .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
}

body[class] .contact540-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  right:auto !important;
  top:0 !important;
  bottom:0 !important;
  width:31% !important;
  max-width:310px !important;
  opacity:1 !important;
  border-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
  background:url('assets/images/contact-v5438-left-spices.jpg') left center / cover no-repeat !important;
  z-index:0 !important;
  pointer-events:none !important;
}

body[class] .contact540-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  right:0 !important;
  left:auto !important;
  top:0 !important;
  bottom:0 !important;
  width:31% !important;
  max-width:310px !important;
  opacity:1 !important;
  border-radius:0 !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
  background:url('assets/images/contact-v5438-right-bowl.jpg') right center / cover no-repeat !important;
  z-index:0 !important;
  pointer-events:none !important;
}

body[class] .contact540-hero-inner,
body[class] .contact540-title,
body[class] .contact540-services{
  position:relative !important;
  z-index:2 !important;
}

/* Aucun fil d'Ariane sur Contact. */
body[class] .contact540-breadcrumbs,
body[class] .contact540-hero .breadcrumbs,
body[class] .contact540-hero .woocommerce-breadcrumb{
  display:none !important;
}

@media(max-width:820px){
  body[class] .contact540-hero::before,
  body[class] .contact540-hero::after{
    width:26% !important;
    max-width:180px !important;
  }
}


/* ==========================================================
   V5.43.11 — CATÉGORIES + PETIT VISUEL CONTACT VALIDÉ
   ========================================================== */

/* Le petit visuel Contact validé reste présent, en haut à droite,
   sans remplacer les deux images latérales déjà en place. */
body[class] .contact540-hero-inner{
  background-image:url('assets/images/contact-corner-v54311.jpg') !important;
  background-repeat:no-repeat !important;
  background-position:right 8px top 4px !important;
  background-size:210px auto !important;
}

@media(max-width:900px){
  body[class] .contact540-hero-inner{
    background-size:145px auto !important;
    background-position:right -10px top 0 !important;
  }
}

@media(max-width:650px){
  body[class] .contact540-hero-inner{
    background-image:none !important;
  }
}


/* ==========================================================
   V5.43.14 — CONTACT : HERO CRÈME + UN SEUL VISUEL À DROITE
   ========================================================== */

/* Le visuel validé devient le fond du hero, uniquement côté droit. */
body[class] main.contact540 .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background-color:#fffaf3 !important;
  background-image:url('assets/images/contact-corner-v54311.jpg') !important;
  background-repeat:no-repeat !important;
  background-position:right top !important;
  background-size:auto 100% !important;
}

/* Suppression définitive des anciens visuels latéraux gauche/droite. */
body[class] main.contact540 .contact540-hero::before,
body[class] main.contact540 .contact540-hero::after{
  content:none !important;
  display:none !important;
  background:none !important;
  opacity:0 !important;
}

/* Le visuel n'est plus injecté dans le contenu interne. */
body[class] main.contact540 .contact540-hero-inner{
  background:none !important;
  position:relative !important;
  z-index:2 !important;
}

body[class] main.contact540 .contact540-title,
body[class] main.contact540 .contact540-services{
  position:relative !important;
  z-index:2 !important;
}

/* Aucun fil d'Ariane sur la page Contact. */
body[class] main.contact540 .contact540-breadcrumbs,
body[class] main.contact540 .breadcrumbs,
body[class] main.contact540 .woocommerce-breadcrumb{
  display:none !important;
}

/* Tablette : garder le décor discret dans le coin supérieur droit. */
@media(max-width:900px){
  body[class] main.contact540 .contact540-hero{
    background-size:auto 82% !important;
    background-position:right top !important;
  }
}

/* Mobile : décor plus petit pour préserver la lisibilité. */
@media(max-width:650px){
  body[class] main.contact540 .contact540-hero{
    background-size:170px auto !important;
    background-position:right top !important;
  }
}


/* ==========================================================
   V5.43.15 — CONTACT : VISUEL FONDU JUSQU'AU BORD DROIT
   ========================================================== */

/* Hero crème : aucune image rectangulaire directement en background. */
body[class] main.contact540 .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
  background-image:none !important;
}

/* Aucun visuel à gauche. */
body[class] main.contact540 .contact540-hero::before{
  content:none !important;
  display:none !important;
  background:none !important;
}

/*
 * Visuel unique à droite :
 * - collé exactement au bord droit du hero
 * - hauteur complète
 * - pas de bord visible
 * - fondu par transparence vers la gauche
 */
body[class] main.contact540 .contact540-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;

  width:42% !important;
  height:100% !important;

  background-image:url('assets/images/contact-corner-v54315.jpg') !important;
  background-repeat:no-repeat !important;
  background-position:right top !important;
  background-size:cover !important;

  opacity:1 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;

  /* Le bord gauche disparaît progressivement dans le crème du hero. */
  -webkit-mask-image:linear-gradient(
    to right,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.10) 12%,
    rgba(0,0,0,.35) 27%,
    rgba(0,0,0,.70) 43%,
    rgba(0,0,0,.93) 58%,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,1) 100%
  ) !important;
  mask-image:linear-gradient(
    to right,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.10) 12%,
    rgba(0,0,0,.35) 27%,
    rgba(0,0,0,.70) 43%,
    rgba(0,0,0,.93) 58%,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,1) 100%
  ) !important;

  pointer-events:none !important;
  z-index:0 !important;
}

/* Contenu toujours devant le décor. */
body[class] main.contact540 .contact540-hero-inner,
body[class] main.contact540 .contact540-title,
body[class] main.contact540 .contact540-services{
  position:relative !important;
  z-index:2 !important;
  background:transparent !important;
}

/* Toujours aucun fil d'Ariane. */
body[class] main.contact540 .contact540-breadcrumbs,
body[class] main.contact540 .breadcrumbs,
body[class] main.contact540 .woocommerce-breadcrumb{
  display:none !important;
}

@media(max-width:1000px){
  body[class] main.contact540 .contact540-hero::after{
    width:39% !important;
  }
}

@media(max-width:760px){
  body[class] main.contact540 .contact540-hero::after{
    width:46% !important;
    opacity:.42 !important;
  }
}

@media(max-width:560px){
  body[class] main.contact540 .contact540-hero::after{
    width:52% !important;
    opacity:.25 !important;
  }
}


/* ==========================================================
   V5.43.16 — CONTACT : MANDALA GAUCHE + ÉPICES DROITE
   ========================================================== */

body[class] main.contact540 .contact540-hero{
  position:relative !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#fffaf3 !important;
  background-image:none !important;
}

/* Mandala de marque à gauche du hero */
body[class] main.contact540 .contact540-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:26% !important;
  height:100% !important;

  background:
    radial-gradient(
      circle at 38% 44%,
      rgba(221,139,24,.10) 0%,
      rgba(221,139,24,.055) 38%,
      rgba(255,250,243,0) 72%
    ),
    url('assets/images/brand-mandala-v25.png') center center / min(72%, 250px) auto no-repeat !important;

  opacity:.56 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
  pointer-events:none !important;
  z-index:0 !important;
}

/* Visuel épices à droite conservé depuis V5.43.15 */
body[class] main.contact540 .contact540-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;

  width:42% !important;
  height:100% !important;

  background-image:url('assets/images/contact-corner-v54315.jpg') !important;
  background-repeat:no-repeat !important;
  background-position:right top !important;
  background-size:cover !important;

  opacity:1 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;

  -webkit-mask-image:linear-gradient(
    to right,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.10) 12%,
    rgba(0,0,0,.35) 27%,
    rgba(0,0,0,.70) 43%,
    rgba(0,0,0,.93) 58%,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,1) 100%
  ) !important;
  mask-image:linear-gradient(
    to right,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,.10) 12%,
    rgba(0,0,0,.35) 27%,
    rgba(0,0,0,.70) 43%,
    rgba(0,0,0,.93) 58%,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,1) 100%
  ) !important;

  pointer-events:none !important;
  z-index:0 !important;
}

/* Le contenu central reste devant les deux décors */
body[class] main.contact540 .contact540-hero-inner,
body[class] main.contact540 .contact540-title,
body[class] main.contact540 .contact540-services{
  position:relative !important;
  z-index:2 !important;
  background:transparent !important;
}

/* Aucun fil d'Ariane */
body[class] main.contact540 .contact540-breadcrumbs,
body[class] main.contact540 .breadcrumbs,
body[class] main.contact540 .woocommerce-breadcrumb{
  display:none !important;
}

@media(max-width:1000px){
  body[class] main.contact540 .contact540-hero::before{
    width:23% !important;
    background-size:min(76%, 205px) auto !important;
    opacity:.48 !important;
  }
  body[class] main.contact540 .contact540-hero::after{
    width:39% !important;
  }
}

@media(max-width:760px){
  body[class] main.contact540 .contact540-hero::before{
    width:30% !important;
    opacity:.20 !important;
    background-size:150px auto !important;
  }
  body[class] main.contact540 .contact540-hero::after{
    width:46% !important;
    opacity:.38 !important;
  }
}

@media(max-width:560px){
  body[class] main.contact540 .contact540-hero::before{
    width:36% !important;
    opacity:.14 !important;
    background-size:120px auto !important;
  }
  body[class] main.contact540 .contact540-hero::after{
    width:52% !important;
    opacity:.22 !important;
  }
}


/* ==========================================================
   V5.43.17 — CONTACT : HERO PLUS COMPACT + MANDALA À PROPOS
   ========================================================== */

/* Hero global plus compact */
body[class] main.contact540 .contact540-hero{
  min-height:0 !important;
  padding:0 !important;
  background:#fffaf3 !important;
  overflow:hidden !important;
}

/* Même mandala EXACT que sur la page À propos, plus grand et plus présent */
body[class] main.contact540 .contact540-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:-18px !important;
  top:8px !important;
  bottom:auto !important;
  width:34% !important;
  height:300px !important;

  background-image:url('assets/images/about-v519-mandala.png') !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:320px auto !important;

  opacity:.82 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  clip-path:none !important;
  -webkit-clip-path:none !important;
  pointer-events:none !important;
  z-index:0 !important;
}

/* Visuel épices à droite inchangé */
body[class] main.contact540 .contact540-hero::after{
  z-index:0 !important;
}

/* Réduction réelle de la hauteur du contenu du hero */
body[class] main.contact540 .contact540-hero-inner{
  width:min(940px, calc(100% - 40px)) !important;
  max-width:940px !important;
  margin:0 auto !important;
  padding:18px 0 20px !important;
  position:relative !important;
  z-index:2 !important;
}

/* Titre plus petit */
body[class] main.contact540 .contact540-title{
  max-width:650px !important;
  margin:0 auto !important;
}

body[class] main.contact540 .contact540-title h1,
body[class] main.contact540 .contact540-title .entry-title{
  font-size:clamp(38px, 3.5vw, 52px) !important;
  line-height:1.02 !important;
  margin-top:0 !important;
  margin-bottom:10px !important;
}

/* Resserrement du séparateur / sous-texte */
body[class] main.contact540 .contact540-title p{
  margin-top:8px !important;
  margin-bottom:0 !important;
  line-height:1.45 !important;
}

/* Cartes remontées pour réduire la hauteur générale */
body[class] main.contact540 .contact540-services{
  width:min(860px, 100%) !important;
  max-width:860px !important;
  margin:20px auto 0 !important;
  gap:14px !important;
}

/* Un peu moins hautes sans modifier leur contenu */
body[class] main.contact540 .contact540-service{
  min-height:142px !important;
  padding-top:22px !important;
  padding-bottom:16px !important;
}

/* Aucun fil d'Ariane */
body[class] main.contact540 .contact540-breadcrumbs,
body[class] main.contact540 .breadcrumbs,
body[class] main.contact540 .woocommerce-breadcrumb{
  display:none !important;
}

@media(max-width:1000px){
  body[class] main.contact540 .contact540-hero::before{
    left:-35px !important;
    width:31% !important;
    height:270px !important;
    background-size:275px auto !important;
    opacity:.68 !important;
  }
  body[class] main.contact540 .contact540-title h1,
  body[class] main.contact540 .contact540-title .entry-title{
    font-size:clamp(36px, 4vw, 48px) !important;
  }
}

@media(max-width:760px){
  body[class] main.contact540 .contact540-hero::before{
    width:33% !important;
    height:220px !important;
    background-size:205px auto !important;
    opacity:.22 !important;
  }
  body[class] main.contact540 .contact540-hero-inner{
    padding:16px 0 18px !important;
  }
}

@media(max-width:560px){
  body[class] main.contact540 .contact540-hero::before{
    left:-45px !important;
    width:42% !important;
    height:180px !important;
    background-size:165px auto !important;
    opacity:.15 !important;
  }
  body[class] main.contact540 .contact540-title h1,
  body[class] main.contact540 .contact540-title .entry-title{
    font-size:34px !important;
  }
}


/* ==========================================================
   V5.43.18 — CONTACT : PICTOGRAMMES DES 3 CARTES REMONTÉS
   ========================================================== */

/* Un peu plus d'air au-dessus des cartes pour les pictogrammes */
body[class] main.contact540 .contact540-services{
  margin-top:26px !important;
}

/* Les pictogrammes sont remontés et légèrement réduits */
body[class] main.contact540 .contact540-service-icon{
  top:-31px !important;
  width:50px !important;
  height:50px !important;
  z-index:4 !important;
}

/* Icône intérieure légèrement plus petite */
body[class] main.contact540 .contact540-service-icon svg{
  width:27px !important;
  height:27px !important;
}

/* Le texte commence nettement sous le pictogramme */
body[class] main.contact540 .contact540-service{
  padding-top:34px !important;
  padding-bottom:16px !important;
  min-height:142px !important;
}

body[class] main.contact540 .contact540-service h2{
  margin-top:0 !important;
  margin-bottom:8px !important;
}

@media(max-width:760px){
  body[class] main.contact540 .contact540-services{
    margin-top:28px !important;
  }
  body[class] main.contact540 .contact540-service-icon{
    top:-28px !important;
    width:46px !important;
    height:46px !important;
  }
  body[class] main.contact540 .contact540-service{
    padding-top:31px !important;
  }
}


/* ==========================================================
   V5.43.19 — CGV : MÊME LOGIQUE VISUELLE QUE LA FAQ
   ========================================================== */

.cgv54319{
  margin-top:0 !important;
}

/* Hero FAQ conservé, mais titre adapté à sa longueur */
.cgv54319 .faq539-hero{
  background:#fffaf3 !important;
}

.cgv54319 .faq539-hero-copy{
  width:min(820px,100%) !important;
}

.cgv54319 .faq539-hero h1{
  font-size:38px !important;
  letter-spacing:-.35px !important;
  white-space:normal !important;
}

.cgv54319 .faq539-kicker{
  color:#c96c08 !important;
}

/* Même grille que FAQ */
.cgv54319 .faq539-layout{
  align-items:start !important;
}

/* Sommaire légèrement plus dense pour 13 rubriques */
.cgv54319 .faq539-nav a{
  min-height:43px !important;
  padding-top:8px !important;
  padding-bottom:8px !important;
}

.cgv54319 .faq539-nav-ico{
  flex:0 0 27px !important;
}

/* Contenu juridique dans les panneaux */
.cgv54319-copy{
  padding:2px 2px 4px !important;
}

.cgv54319-copy p{
  margin:0 0 13px !important;
  color:#57473d !important;
  font-size:14px !important;
  line-height:1.68 !important;
}

.cgv54319-copy p:last-child{
  margin-bottom:0 !important;
}

/* Le titre d'article doit rester confortable sur une ligne ou deux */
.cgv54319 .faq539-group-title{
  line-height:1.25 !important;
}

/* Encadré de brouillon : même style que l'aide FAQ */
.cgv54319-draft p{
  margin-bottom:0 !important;
}

.cgv54319-more .faq539-more-title{
  max-width:420px !important;
}

@media(max-width:980px){
  .cgv54319 .faq539-hero h1{
    font-size:35px !important;
  }
}

@media(max-width:760px){
  .cgv54319 .faq539-hero h1{
    font-size:31px !important;
    line-height:1.08 !important;
  }

  .cgv54319 .faq539-nav a{
    min-height:41px !important;
  }

  .cgv54319-copy p{
    font-size:13.5px !important;
    line-height:1.62 !important;
  }
}


/* ==========================================================
   V5.43.20 — MENTIONS LÉGALES + CONFIDENTIALITÉ STYLE FAQ
   ========================================================== */

.legal54320,
.privacy54320{
  margin-top:0 !important;
}

.legal54320 .faq539-hero,
.privacy54320 .faq539-hero{
  background:#fffaf3 !important;
}

.legal54320 .faq539-hero-copy,
.privacy54320 .faq539-hero-copy{
  width:min(820px,100%) !important;
}

.legal54320 .faq539-hero h1{
  font-size:40px !important;
  letter-spacing:-.35px !important;
}

.privacy54320 .faq539-hero h1{
  font-size:38px !important;
  letter-spacing:-.35px !important;
  white-space:normal !important;
}

.legal54320 .faq539-kicker,
.privacy54320 .faq539-kicker{
  color:#c96c08 !important;
}

/* Sommaires denses mais confortables */
.legal54320 .faq539-nav a,
.privacy54320 .faq539-nav a{
  min-height:43px !important;
  padding-top:8px !important;
  padding-bottom:8px !important;
}

.legal54320 .faq539-nav-ico,
.privacy54320 .faq539-nav-ico{
  flex:0 0 27px !important;
}

/* Texte des panneaux */
.legal54320-copy,
.privacy54320-copy{
  padding:2px 2px 4px !important;
}

.legal54320-copy p,
.privacy54320-copy p{
  margin:0 0 13px !important;
  color:#57473d !important;
  font-size:14px !important;
  line-height:1.68 !important;
}

.legal54320-copy p:last-child,
.privacy54320-copy p:last-child{
  margin-bottom:0 !important;
}

.legal54320 .faq539-group-title,
.privacy54320 .faq539-group-title{
  line-height:1.25 !important;
}

/* Cartes d'information de travail */
.legal54320-draft p,
.privacy54320-draft p{
  margin-bottom:0 !important;
}

.legal54320-more .faq539-more-title,
.privacy54320-more .faq539-more-title{
  max-width:430px !important;
}

/* Pas de breadcrumb, même si un plugin tente d'en injecter un */
.legal54320 .woocommerce-breadcrumb,
.privacy54320 .woocommerce-breadcrumb,
.legal54320 .breadcrumbs,
.privacy54320 .breadcrumbs{
  display:none !important;
}

@media(max-width:980px){
  .legal54320 .faq539-hero h1,
  .privacy54320 .faq539-hero h1{
    font-size:35px !important;
  }
}

@media(max-width:760px){
  .legal54320 .faq539-hero h1,
  .privacy54320 .faq539-hero h1{
    font-size:31px !important;
    line-height:1.08 !important;
  }

  .legal54320 .faq539-nav a,
  .privacy54320 .faq539-nav a{
    min-height:41px !important;
  }

  .legal54320-copy p,
  .privacy54320-copy p{
    font-size:13.5px !important;
    line-height:1.62 !important;
  }
}


/* ==========================================================
   V5.43.21 — MENUS LATÉRAUX FAQ / CGV / MENTIONS / CONFIDENTIALITÉ
   Séparateur centré sous le titre
   ========================================================== */

/* Le titre du bloc latéral reste centré */
.faq539-nav-card > h2{
  text-align:center !important;
}

/* Petite séparation parfaitement centrée */
.faq539-mini-rule{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

/* Les éléments internes restent symétriques autour du losange */
.faq539-mini-rule i,
.faq539-mini-rule b{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
}

/* Longueur homogène sur toutes les pages concernées */
.faq539-mini-rule i{
  flex:0 0 34px !important;
}

.faq539-mini-rule b{
  flex:0 0 auto !important;
  margin:0 7px !important;
}


/* ==========================================================
   V5.43.22 — CONFIDENTIALITÉ : ANCRAGES DU MENU CORRIGÉS
   ========================================================== */

/* Sécurité supplémentaire si une ancre est utilisée nativement. */
.privacy54320 .faq539-group{
  scroll-margin-top:54px !important;
}

/* L'élément sélectionné conserve un retour visuel immédiat. */
.privacy54320 .faq539-nav a.is-active{
  position:relative !important;
}


/* ==========================================================
   V5.43.23 — CONFIDENTIALITÉ : TITRE D'ANCRAGE PLUS BAS
   ========================================================== */

/*
 * Laisse la hauteur du menu sombre + une marge au-dessus du titre.
 * Ainsi le titre de "Paiement", "Sécurité", "Vos droits", etc.
 * ne passe plus derrière la navigation fixe.
 */
.privacy54320 .faq539-group{
  scroll-margin-top:108px !important;
}

body.admin-bar .privacy54320 .faq539-group{
  scroll-margin-top:140px !important;
}


/* ==========================================================
   V5.43.24 — CONFIDENTIALITÉ : ANCRAGE STABLE SUR LE TITRE
   ========================================================== */

/*
 * Empêche Chrome/Edge de compenser automatiquement le scroll lorsque
 * les accordéons situés au-dessus sont fermés ou ouverts.
 */
.privacy54320,
.privacy54320 .faq539-layout,
.privacy54320 .faq539-groups,
.privacy54320 .faq539-group,
.privacy54320 .faq539-panel{
  overflow-anchor:none !important;
}

/*
 * Secours pour les ancres natives. Le script V5.43.24 utilise quant à lui
 * la position réelle du summary et du header sticky.
 */
.privacy54320 .faq539-group > summary{
  scroll-margin-top:180px !important;
}


/* ==========================================================
   V5.43.25 — ANCRAGES STABLES FAQ / CGV / MENTIONS LÉGALES
   Même mécanisme validé sur Confidentialité en V5.43.24
   ========================================================== */

/* Empêche le navigateur de déplacer automatiquement le scroll
   pendant l'ouverture / fermeture des accordéons. */
.faq539:not(.privacy54320),
.faq539:not(.privacy54320) .faq539-layout,
.faq539:not(.privacy54320) .faq539-groups,
.faq539:not(.privacy54320) .faq539-group,
.faq539:not(.privacy54320) .faq539-panel{
  overflow-anchor:none !important;
}

/* Marge de secours pour une navigation native par hash. */
.faq539:not(.privacy54320) .faq539-group > summary{
  scroll-margin-top:180px !important;
}


/* ==========================================================
   V5.43.26 — PAGE MON COMPTE
   ========================================================== */

.woocommerce-account .woocommerce-breadcrumb{
  display:none !important;
}

.im-account-page{
  background:#fbf6ed;
  color:#4f3b30;
}

.im-account-hero{
  background:#fffaf3;
  border-bottom:1px solid rgba(188,151,98,.22);
}

.im-account-hero-inner{
  width:min(1080px,calc(100% - 40px));
  margin:0 auto;
  padding:27px 0 30px;
  text-align:center;
}

.im-account-kicker{
  display:block;
  margin-bottom:7px;
  color:#c96c08;
  font-size:10px;
  line-height:1;
  font-weight:800;
  letter-spacing:.19em;
}

.im-account-hero h1{
  margin:0;
  color:#4a291d;
  font:700 clamp(38px,4vw,54px)/1.02 Georgia,"Times New Roman",serif;
  letter-spacing:-.45px;
}

.im-account-rule{
  display:flex;
  align-items:center;
  justify-content:center;
  width:142px;
  margin:14px auto 12px;
}

.im-account-rule i{
  display:block;
  width:52px;
  height:1px;
  background:#d99a38;
}

.im-account-rule b{
  display:block;
  width:7px;
  height:7px;
  margin:0 8px;
  border:1px solid #d58418;
  transform:rotate(45deg);
  background:#fffaf3;
}

.im-account-hero p{
  max-width:650px;
  margin:0 auto;
  color:#765f51;
  font-size:14px;
  line-height:1.55;
}

.im-account-body{
  padding:38px 0 58px;
}

.im-account-shell{
  width:min(1080px,calc(100% - 40px));
  margin:0 auto;
}

/* ------------------------------
   CLIENT CONNECTÉ
   ------------------------------ */

body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
  display:grid;
  grid-template-columns:255px minmax(0,1fr);
  gap:26px;
  align-items:start;
}

body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-navigation,
body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-content{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-navigation{
  padding:0 !important;
  border:1px solid #eadbc4 !important;
  border-radius:10px !important;
  overflow:hidden;
  background:#fffdf9 !important;
  box-shadow:0 8px 22px rgba(73,43,28,.045);
}

.im-account-nav-head{
  padding:20px 18px 14px;
  text-align:center;
}

.im-account-nav-head > span{
  color:#4a291d;
  font:700 19px/1.2 Georgia,"Times New Roman",serif;
}

.im-account-nav-rule{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:10px auto 0;
  width:96px;
}

.im-account-nav-rule i{
  width:32px;
  height:1px;
  background:#d7942d;
}

.im-account-nav-rule b{
  width:6px;
  height:6px;
  margin:0 6px;
  border:1px solid #cc7410;
  transform:rotate(45deg);
}

.im-account-nav ul{
  margin:0 !important;
  padding:0 12px 13px !important;
  list-style:none !important;
}

.im-account-nav li{
  margin:0 !important;
  padding:0 !important;
}

.im-account-nav li a{
  display:grid !important;
  grid-template-columns:30px 1fr 15px;
  gap:9px;
  align-items:center;
  min-height:46px;
  padding:8px 10px !important;
  border:0 !important;
  border-top:1px solid #f0e4d2 !important;
  color:#5f493b !important;
  text-decoration:none !important;
  font-size:13px;
  font-weight:700;
  transition:background .16s ease,color .16s ease;
}

.im-account-nav li:first-child a{
  border-top:0 !important;
}

.im-account-nav li a:hover{
  background:#fff6e8;
  color:#b95f07 !important;
}

.im-account-nav li.is-active a{
  margin:2px 0;
  border-top-color:transparent !important;
  border-radius:7px;
  background:#fff0d9;
  color:#b65c05 !important;
}

.im-account-nav-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  color:#ce7a16;
}

.im-account-nav-icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.im-account-nav-arrow{
  justify-self:end;
  color:#cba26c;
  font-size:20px;
  font-weight:400;
}

.im-account-nav li.is-active .im-account-nav-arrow{
  color:#b65c05;
}

/* Contenu principal du compte */
body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-content{
  min-height:370px;
  padding:28px 30px !important;
  border:1px solid #eadbc4 !important;
  border-radius:10px !important;
  background:#fffdf9 !important;
  box-shadow:0 8px 22px rgba(73,43,28,.045);
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{
  color:#4a291d;
  font-family:Georgia,"Times New Roman",serif;
}

.woocommerce-MyAccount-content p{
  color:#655044;
  line-height:1.65;
}

/* Dashboard */
.im-account-dashboard{
  margin:0;
}

.im-account-welcome{
  position:relative;
  padding:2px 0 21px;
  border-bottom:1px solid #ecdfce;
}

.im-account-welcome-kicker{
  display:block;
  margin-bottom:5px;
  color:#c96c08;
  font-size:9px;
  font-weight:800;
  letter-spacing:.17em;
}

.im-account-welcome h2{
  margin:0 0 7px;
  font:700 30px/1.1 Georgia,"Times New Roman",serif;
  color:#4a291d;
}

.im-account-welcome p{
  max-width:640px;
  margin:0;
  color:#755f52;
  font-size:13.5px;
}

.im-account-quick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:22px;
}

.im-account-quick-card{
  display:flex;
  min-height:166px;
  flex-direction:column;
  align-items:flex-start;
  padding:19px;
  border:1px solid #eadbc4;
  border-radius:9px;
  background:#fffaf2;
  color:#514035 !important;
  text-decoration:none !important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}

.im-account-quick-card:hover{
  transform:translateY(-2px);
  border-color:#ddb46e;
  box-shadow:0 7px 18px rgba(77,45,28,.07);
}

.im-account-quick-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  margin-bottom:14px;
  border:1px solid #e1bd82;
  border-radius:50%;
  color:#c86f0c;
  background:#fff;
}

.im-account-quick-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.im-account-quick-card strong{
  margin-bottom:6px;
  color:#4a291d;
  font:700 17px/1.2 Georgia,"Times New Roman",serif;
}

.im-account-quick-card > span:last-child{
  color:#746054;
  font-size:12.2px;
  line-height:1.48;
}

.im-account-dashboard-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:13px 15px;
  border-radius:7px;
  background:#f8f0e5;
  color:#6e584b;
  font-size:12.5px;
}

.im-account-dashboard-note > span{
  color:#ce7511;
}

.im-account-dashboard-note p{
  margin:0 !important;
  font-size:inherit !important;
}

.im-account-dashboard-note a{
  color:#b85a04;
  font-weight:800;
}

/* WooCommerce : tableaux, adresses et formulaires */
.woocommerce-account .woocommerce-MyAccount-content table.shop_table{
  overflow:hidden;
  border:1px solid #e8d7bf !important;
  border-radius:8px !important;
  background:#fff;
  font-size:13px;
}

.woocommerce-account .woocommerce-MyAccount-content table.shop_table th{
  padding:12px 13px !important;
  background:#f8f0e4;
  color:#4d3528;
  font-size:11.5px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.woocommerce-account .woocommerce-MyAccount-content table.shop_table td{
  padding:13px !important;
  border-color:#eee1cf !important;
  color:#654f42;
}

.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button.button{
  border:0 !important;
  border-radius:5px !important;
  background:#d97b0c !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  padding:10px 15px !important;
}

.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button.button:hover{
  background:#b95f07 !important;
}

.woocommerce-account .woocommerce-Address{
  margin-bottom:16px;
  padding:20px;
  border:1px solid #e9dac5;
  border-radius:8px;
  background:#fffaf3;
}

.woocommerce-account .woocommerce-Address-title{
  margin-bottom:10px;
}

.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3{
  margin:0;
  font-size:20px;
}

.woocommerce-account address{
  color:#6c574a;
  font-size:13px;
  line-height:1.65;
}

.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row{
  margin-bottom:15px;
}

.woocommerce-account label{
  margin-bottom:6px;
  color:#5b4437;
  font-size:12px;
  font-weight:800;
}

.woocommerce-account input.input-text,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account select,
.woocommerce-account textarea{
  min-height:43px;
  width:100%;
  border:1px solid #dbc7aa !important;
  border-radius:6px !important;
  background:#fff !important;
  color:#4f3b30;
  box-shadow:none !important;
  padding:9px 11px !important;
}

.woocommerce-account textarea{
  min-height:105px;
}

.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus{
  border-color:#cf831e !important;
  outline:none !important;
  box-shadow:0 0 0 2px rgba(207,131,30,.08) !important;
}

.woocommerce-account fieldset{
  margin-top:24px;
  padding:18px;
  border:1px solid #eadbc5;
  border-radius:8px;
}

.woocommerce-account fieldset legend{
  padding:0 8px;
  color:#4a291d;
  font:700 17px/1.2 Georgia,"Times New Roman",serif;
}

/* ------------------------------
   CONNEXION / INSCRIPTION
   ------------------------------ */

body:not(.logged-in).woocommerce-account .im-account-shell > .woocommerce{
  max-width:900px;
  margin:0 auto;
}

body:not(.logged-in).woocommerce-account #customer_login{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  margin:0 !important;
}

body:not(.logged-in).woocommerce-account #customer_login::before,
body:not(.logged-in).woocommerce-account #customer_login::after{
  display:none !important;
}

body:not(.logged-in).woocommerce-account #customer_login .u-column1,
body:not(.logged-in).woocommerce-account #customer_login .u-column2{
  width:100% !important;
  float:none !important;
  padding:0 !important;
}

body:not(.logged-in).woocommerce-account #customer_login h2{
  margin:0;
  padding:20px 24px 0;
  color:#4a291d;
  font:700 27px/1.15 Georgia,"Times New Roman",serif;
}

body:not(.logged-in).woocommerce-account form.login,
body:not(.logged-in).woocommerce-account form.register{
  margin:12px 0 0 !important;
  padding:22px 24px 24px !important;
  border:1px solid #e7d5ba !important;
  border-radius:10px !important;
  background:#fffdf9 !important;
  box-shadow:0 8px 22px rgba(73,43,28,.045);
}

body:not(.logged-in).woocommerce-account .woocommerce-form-row{
  margin-bottom:15px !important;
}

body:not(.logged-in).woocommerce-account .woocommerce-form-login__rememberme{
  display:flex !important;
  align-items:center;
  gap:7px;
  margin:4px 0 14px;
  color:#695348;
  font-size:12px;
}

body:not(.logged-in).woocommerce-account .woocommerce-form-login__rememberme input{
  width:auto !important;
  min-height:0 !important;
}

body:not(.logged-in).woocommerce-account .woocommerce-form-login__submit,
body:not(.logged-in).woocommerce-account .woocommerce-form-register__submit{
  min-width:150px;
  border:0 !important;
  border-radius:5px !important;
  background:#d97b0c !important;
  color:#fff !important;
  font-weight:800 !important;
  padding:11px 18px !important;
}

body:not(.logged-in).woocommerce-account .lost_password{
  margin:15px 0 0 !important;
}

body:not(.logged-in).woocommerce-account .lost_password a{
  color:#b45a06;
  font-size:12px;
  font-weight:800;
}

body:not(.logged-in).woocommerce-account .woocommerce-privacy-policy-text{
  color:#735e50;
  font-size:11.5px;
  line-height:1.55;
}

body:not(.logged-in).woocommerce-account .woocommerce-privacy-policy-text a{
  color:#b65c05;
  font-weight:700;
}

/* Notices */
.im-account-shell .woocommerce-message,
.im-account-shell .woocommerce-info,
.im-account-shell .woocommerce-error{
  margin:0 0 18px !important;
  border:1px solid #e3c999 !important;
  border-top:0 !important;
  border-radius:7px !important;
  background:#fff8e9 !important;
  color:#5e493c !important;
  box-shadow:none !important;
  font-size:12.5px;
}

.im-account-shell .woocommerce-message::before,
.im-account-shell .woocommerce-info::before{
  color:#cb750e !important;
}

/* Mobile */
@media(max-width:900px){
  body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
    grid-template-columns:220px minmax(0,1fr);
    gap:18px;
  }

  .im-account-quick-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .im-account-hero-inner{
    width:min(100% - 28px,1080px);
    padding:23px 0 25px;
  }

  .im-account-hero h1{
    font-size:38px;
  }

  .im-account-body{
    padding:26px 0 42px;
  }

  .im-account-shell{
    width:min(100% - 28px,1080px);
  }

  body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
    display:block;
  }

  body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-navigation{
    margin-bottom:18px !important;
  }

  body.logged-in.woocommerce-account .im-account-shell .woocommerce-MyAccount-content{
    padding:22px 18px !important;
  }

  .im-account-nav ul{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
    padding:0 9px 10px !important;
  }

  .im-account-nav li a{
    grid-template-columns:27px 1fr;
    min-height:43px;
    border:1px solid #efe2d0 !important;
    border-radius:6px;
  }

  .im-account-nav-arrow{
    display:none;
  }

  body:not(.logged-in).woocommerce-account #customer_login{
    grid-template-columns:1fr;
  }
}

@media(max-width:480px){
  .im-account-nav ul{
    grid-template-columns:1fr;
  }

  .im-account-welcome h2{
    font-size:26px;
  }

  body:not(.logged-in).woocommerce-account #customer_login h2{
    padding-left:18px;
    padding-right:18px;
    font-size:24px;
  }

  body:not(.logged-in).woocommerce-account form.login,
  body:not(.logged-in).woocommerce-account form.register{
    padding:20px 18px !important;
  }
}


/* ==========================================================
   V5.43.27 — CORRECTIF MISE EN PAGE MON COMPTE
   ========================================================== */

body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:28px !important;
  width:100% !important;
}

body.logged-in.woocommerce-account .im-account-shell > .woocommerce::before,
body.logged-in.woocommerce-account .im-account-shell > .woocommerce::after{
  display:none !important;
  content:none !important;
}

body.logged-in.woocommerce-account .woocommerce-MyAccount-navigation.im-account-nav{
  flex:0 0 280px !important;
  width:280px !important;
  max-width:280px !important;
}

body.logged-in.woocommerce-account .woocommerce-MyAccount-content{
  flex:1 1 auto !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  display:block !important;
}

.im-account-dashboard{
  width:100% !important;
  max-width:none !important;
}

.im-account-welcome{
  margin-bottom:22px !important;
}

.im-account-quick-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
  width:100% !important;
}

.im-account-quick-card{
  min-width:0 !important;
  min-height:172px !important;
  height:auto !important;
}

.im-account-quick-card strong{
  font-size:20px !important;
  line-height:1.15 !important;
}

.im-account-quick-card > span:last-child{
  font-size:13px !important;
  line-height:1.55 !important;
}

.im-account-dashboard-note{
  width:100% !important;
}

@media(max-width:980px){
  body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
    gap:18px !important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-navigation.im-account-nav{
    flex:0 0 240px !important;
    width:240px !important;
    max-width:240px !important;
  }

  .im-account-quick-grid{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:720px){
  body.logged-in.woocommerce-account .im-account-shell > .woocommerce{
    display:block !important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-navigation.im-account-nav{
    width:100% !important;
    max-width:none !important;
    margin:0 0 18px 0 !important;
  }

  body.logged-in.woocommerce-account .woocommerce-MyAccount-content{
    width:100% !important;
  }
}


/* ==========================================================
   V5.43.29 — HERO MON COMPTE + CTA CONTACT HARMONISÉS
   FAQ / CGV / MENTIONS / CONFIDENTIALITÉ / COMPTE / LIVRAISON
   ========================================================== */

/* ----------------------------------------------------------
   MON COMPTE : même bandeau compact que FAQ / CGV
   ---------------------------------------------------------- */
.im-account-page .im-account-hero.faq539-hero{
  min-height:132px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#fffaf3 !important;
}

.im-account-page .im-account-hero.faq539-hero::before,
.im-account-page .im-account-hero.faq539-hero::after{
  content:none !important;
  display:none !important;
}

.im-account-page .im-account-hero .im-account-hero-inner{
  width:min(1080px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:13px 0 14px !important;
  text-align:center !important;
}

.im-account-page .im-account-hero .faq539-hero-copy{
  width:min(640px,100%) !important;
  margin:0 auto !important;
  padding:0 !important;
}

.im-account-page .im-account-hero .faq539-kicker{
  margin:0 auto 5px !important;
  color:#c96c08 !important;
  font:700 10px/1.2 Arial,Helvetica,sans-serif !important;
  letter-spacing:2.2px !important;
}

.im-account-page .im-account-hero h1{
  margin:0 !important;
  color:#2c180f !important;
  font:700 41px/1.02 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.45px !important;
}

.im-account-page .im-account-hero .faq539-rule{
  margin:8px auto !important;
  transform:scale(.86) !important;
}

.im-account-page .im-account-hero .faq539-hero-copy p{
  margin:0 !important;
  color:#5a493f !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

/* ----------------------------------------------------------
   CTA UNIQUE EN BAS DES PAGES D'INFORMATION
   ---------------------------------------------------------- */
.im-info-contact-cta{
  position:relative !important;
  overflow:hidden !important;
  box-sizing:border-box !important;

  width:min(1080px,calc(100% - 48px)) !important;
  height:104px !important;
  min-height:104px !important;
  margin:16px auto 18px !important;

  display:grid !important;
  grid-template-columns:250px minmax(0,1fr) 190px !important;
  gap:24px !important;
  align-items:center !important;

  padding:12px 18px 12px 205px !important;
  border:1px solid #ead7ba !important;
  border-radius:9px !important;
  background:linear-gradient(90deg,#fff2df 0%,#fffaf3 48%,#fff2df 100%) !important;
  box-shadow:none !important;
}

/* Mandala : toujours centré verticalement, quelle que soit la page. */
.im-info-contact-cta-mandala{
  position:absolute !important;
  z-index:0 !important;
  left:16px !important;
  top:50% !important;
  bottom:auto !important;

  width:170px !important;
  height:170px !important;

  transform:translateY(-50%) !important;
  background:url('assets/images/about-v519-mandala.png') center/contain no-repeat !important;
  opacity:.13 !important;
  pointer-events:none !important;
}

.im-info-contact-cta-title,
.im-info-contact-cta-copy,
.im-info-contact-cta-btn{
  position:relative !important;
  z-index:1 !important;
}

.im-info-contact-cta-title h2{
  margin:0 !important;
  color:#2c180f !important;
  font:700 26px/1.08 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.2px !important;
}

.im-info-contact-cta-copy p{
  margin:0 !important;
  color:#4f3d32 !important;
  font-size:12px !important;
  line-height:1.55 !important;
}

.im-info-contact-cta-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;

  min-height:44px !important;
  padding:10px 18px !important;

  border:0 !important;
  border-radius:5px !important;
  background:linear-gradient(90deg,#d87906,#e48c0b) !important;

  color:#fff !important;
  text-decoration:none !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.2px !important;
  white-space:nowrap !important;

  box-shadow:0 6px 15px rgba(170,91,2,.13) !important;
}

.im-info-contact-cta-btn:hover{
  filter:brightness(1.04) !important;
}

.im-info-contact-cta-btn span{
  font-size:18px !important;
  line-height:1 !important;
}

/* Retrait & Livraison : neutraliser l'ancien style éventuel. */
.delivery525 .im-info-contact-cta{
  margin-top:18px !important;
  margin-bottom:18px !important;
}

/* Ancre du formulaire : ne pas la masquer sous le header en navigation directe. */
#formulaire-contact{
  scroll-margin-top:120px !important;
}

body.admin-bar #formulaire-contact{
  scroll-margin-top:150px !important;
}

@media(max-width:980px){
  .im-info-contact-cta{
    grid-template-columns:210px minmax(0,1fr) 170px !important;
    gap:16px !important;
    padding-left:165px !important;
  }

  .im-info-contact-cta-mandala{
    left:4px !important;
    width:150px !important;
    height:150px !important;
  }

  .im-info-contact-cta-title h2{
    font-size:22px !important;
  }
}

@media(max-width:760px){
  .im-account-page .im-account-hero.faq539-hero{
    min-height:116px !important;
  }

  .im-account-page .im-account-hero .im-account-hero-inner{
    width:min(100% - 28px,1080px) !important;
    padding:11px 0 12px !important;
  }

  .im-account-page .im-account-hero h1{
    font-size:33px !important;
  }

  .im-info-contact-cta{
    width:min(100% - 28px,1080px) !important;
    height:auto !important;
    min-height:0 !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding:20px 18px 18px 120px !important;
  }

  .im-info-contact-cta-mandala{
    left:-18px !important;
    top:50% !important;
    width:125px !important;
    height:125px !important;
  }

  .im-info-contact-cta-title h2{
    font-size:21px !important;
  }

  .im-info-contact-cta-btn{
    justify-self:start !important;
    min-width:170px !important;
  }
}

@media(max-width:500px){
  .im-info-contact-cta{
    padding:18px !important;
  }

  .im-info-contact-cta-mandala{
    left:auto !important;
    right:-28px !important;
    width:120px !important;
    height:120px !important;
    opacity:.08 !important;
  }

  .im-info-contact-cta-copy{
    max-width:82% !important;
  }
}


/* ==========================================================
   V5.43.30 — BOUTIQUE + PRODUITS + MENU
   ========================================================== */

/* ---------------- MENU PRINCIPAL ---------------- */
.im-main-menu{
  width:min(1080px,calc(100% - 36px)) !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:0 !important;
}
.im-main-menu li{flex:0 0 auto}
.im-main-menu a{
  padding:15px 10px !important;
  white-space:nowrap;
}

/* ---------------- HERO BOUTIQUE / RECETTES ---------------- */
.im-shop-page,
.im-product-page,
.im-recipes-page{
  background:#fffaf3;
  color:#39261c;
}

.im-shop-hero{
  min-height:148px;
  border-bottom:1px solid #f0dfc8;
  background:
    radial-gradient(circle at 50% 25%,#fff,#fffaf3 62%,#fff5e7);
}

.im-shop-hero-inner{
  width:min(1080px,calc(100% - 48px));
  margin:0 auto;
  padding:21px 0 24px;
  text-align:center;
}

.im-shop-kicker{
  display:block;
  margin-bottom:5px;
  color:#c96c08;
  font-size:10px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:.19em;
}

.im-shop-hero h1{
  margin:0;
  color:#2c180f;
  font:700 clamp(37px,4vw,48px)/1.04 Georgia,"Times New Roman",serif;
}

.im-shop-rule{
  display:flex;
  justify-content:center;
  align-items:center;
  margin:10px auto 9px;
}
.im-shop-rule i{width:42px;height:1px;background:#d98414}
.im-shop-rule b{width:7px;height:7px;margin:0 8px;background:#d98414;transform:rotate(45deg)}
.im-shop-hero p{
  max-width:720px;
  margin:0 auto;
  color:#665348;
  font-size:13px;
  line-height:1.55;
}

/* ---------------- PAGE BOUTIQUE ---------------- */
.im-shop-body{padding:28px 0 10px}

.im-shop-layout{
  width:min(1160px,calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:22px;
  align-items:start;
}

.im-shop-sidebar{
  display:grid;
  gap:16px;
  position:sticky;
  top:145px;
}

.im-shop-side-card,
.im-shop-services-card{
  overflow:hidden;
  border:1px solid #ead6b8;
  border-radius:9px;
  background:#fffdf9;
  box-shadow:0 7px 22px rgba(61,35,20,.035);
}

.im-shop-side-card h2{
  margin:17px 17px 4px;
  color:#3a241a;
  font:700 19px/1.15 Georgia,"Times New Roman",serif;
}

.im-shop-side-rule{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  margin:10px auto 12px;
}
.im-shop-side-rule i{width:28px;height:1px;background:#d98414}
.im-shop-side-rule b{width:6px;height:6px;margin:0 6px;background:#d98414;transform:rotate(45deg)}

.im-shop-cat-nav a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:44px;
  padding:9px 14px;
  border-top:1px solid #efe1cf;
  color:#513c30;
  font-size:12.5px;
  font-weight:700;
  text-decoration:none;
}
.im-shop-cat-nav a:hover{background:#fff5e7;color:#b95c06}
.im-shop-cat-nav a.is-active{
  background:linear-gradient(90deg,#fff0da,#ffe4bd);
  color:#b65d07;
}
.im-shop-cat-nav a span{font-size:18px;color:#d47b14}

.im-shop-services-card{padding:10px 14px}
.im-shop-services-card>div{
  display:grid;
  grid-template-columns:32px 1fr;
  gap:9px;
  align-items:center;
  padding:11px 0;
  border-bottom:1px solid #f1e4d2;
}
.im-shop-services-card>div:last-child{border-bottom:0}
.im-shop-services-card>div>span{
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border:1px solid #edc98e;
  border-radius:7px;
  color:#cc750d;
  background:#fff9ef;
}
.im-shop-services-card p{margin:0}
.im-shop-services-card strong{display:block;color:#493328;font-size:12px}
.im-shop-services-card small{display:block;margin-top:2px;color:#806b5c;font-size:10.5px}

.im-shop-price-card form{padding:4px 14px 16px}
.im-price-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.im-price-fields label{font-size:10.5px;font-weight:700;color:#675145}
.im-price-fields input{
  width:100%;
  min-height:36px;
  margin-top:4px;
  border:1px solid #dec9aa;
  border-radius:5px;
  background:#fff;
  padding:6px 8px;
}
.im-shop-price-card button{
  margin-top:10px;
  min-height:35px;
  border:0;
  border-radius:5px;
  background:#d97b0c;
  color:#fff;
  padding:0 15px;
  font-size:11px;
  font-weight:800;
}

/* Retirer les éléments WooCommerce automatiques dupliqués avant toolbar. */
.im-shop-main > .woocommerce-notices-wrapper:empty{display:none}
.im-shop-main > .woocommerce-result-count,
.im-shop-main > .woocommerce-ordering{display:none!important}

.im-shop-toolbar{
  min-height:44px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin:0 0 15px;
}
.im-shop-count .woocommerce-result-count{float:none!important;margin:0!important;color:#6c594e;font-size:11.5px}
.im-shop-order .woocommerce-ordering{float:none!important;margin:0!important}
.im-shop-order select{
  min-width:180px;
  min-height:37px;
  border:1px solid #dfc9aa;
  border-radius:6px;
  background:#fff;
  color:#5e493e;
  padding:0 32px 0 10px;
  font-size:11.5px;
}

.im-shop-products .products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:0!important;
}
.im-shop-products .products::before,
.im-shop-products .products::after{display:none!important}

/* ---------------- CARTE PRODUIT ---------------- */
.woocommerce ul.products li.product.im-product-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  width:auto!important;
  height:100%;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid #ead7bd!important;
  border-radius:8px!important;
  background:#fffdf9!important;
  box-shadow:0 7px 18px rgba(61,35,20,.04)!important;
}

.im-product-card-image{
  position:relative;
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#f6eee4;
}
.woocommerce ul.products li.product.im-product-card .im-product-card-image img{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:cover!important;
  transition:transform .25s ease;
}
.im-product-card:hover .im-product-card-image img{transform:scale(1.025)}

.im-product-badge{
  position:absolute;
  z-index:2;
  top:9px;
  padding:5px 7px;
  border-radius:4px;
  color:#fff;
  font-size:9px;
  font-weight:800;
  line-height:1;
}
.im-product-badge-stock{left:9px;background:#3b8a42}
.im-product-badge-sale{right:9px;background:#d77909}

.im-product-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:12px 12px 13px;
}
.im-product-brand{
  color:#c96c08;
  font-size:9px;
  line-height:1;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.woocommerce ul.products li.product.im-product-card .woocommerce-loop-product__title{
  padding:0!important;
  margin:6px 0 5px!important;
  font:700 15px/1.2 Georgia,"Times New Roman",serif!important;
}
.im-product-card .woocommerce-loop-product__title a{color:#3a2419;text-decoration:none}
.im-product-card-cat{min-height:28px;color:#7a675b;font-size:10.5px;line-height:1.35}
.im-product-card-cat a{color:inherit}
.im-product-card-bottom{margin-top:auto;padding-top:10px}
.im-product-card-price{margin-bottom:9px;color:#c25e04;font-size:14px;font-weight:800}
.im-product-card-price del{font-size:10px;color:#9a8a80}
.im-product-card-price ins{text-decoration:none}
.woocommerce ul.products li.product.im-product-card .im-product-card-button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:36px;
  margin:0!important;
  border:0!important;
  border-radius:4px!important;
  background:linear-gradient(90deg,#d67806,#e58d0b)!important;
  color:#fff!important;
  padding:8px 10px!important;
  font-size:10px!important;
  font-weight:800!important;
  text-align:center;
}

/* Pagination */
.im-shop-pagination{margin:20px 0 4px}
.im-shop-pagination .woocommerce-pagination ul{
  border:0!important;
  display:flex!important;
  justify-content:center;
  gap:5px;
}
.im-shop-pagination .woocommerce-pagination ul li{border:0!important}
.im-shop-pagination .page-numbers{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-width:31px;
  height:31px;
  border:1px solid #e5d1b3!important;
  border-radius:5px;
  background:#fff;
  color:#5b4335;
}
.im-shop-pagination .page-numbers.current{
  background:#d97b0c!important;
  color:#fff!important;
}

/* ---------------- FICHE PRODUIT ---------------- */
.im-product-shell{
  width:min(1160px,calc(100% - 48px));
  margin:0 auto;
  padding:0 0 24px;
}
.im-product-page .woocommerce-breadcrumb{
  margin:16px 0 18px!important;
  color:#7a695e;
  font-size:10.5px;
}
.im-product-page .woocommerce-breadcrumb a{color:#665145}

.single-product .im-product-shell div.product{
  display:grid!important;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)!important;
  gap:34px!important;
  align-items:start;
  margin:0!important;
}

/* Galerie */
.single-product div.product .woocommerce-product-gallery{
  width:100%!important;
  float:none!important;
  margin:0!important;
}
.single-product .woocommerce-product-gallery__wrapper{
  overflow:hidden;
  border:1px solid #ead8bd;
  border-radius:10px;
  background:#f7efe4;
}
.single-product .woocommerce-product-gallery__image a{
  display:block;
  background:#f7efe4;
}
.single-product .woocommerce-product-gallery__image img{
  width:100%!important;
  height:auto!important;
  max-height:620px;
  object-fit:contain;
  margin:0!important;
}
.single-product .flex-control-thumbs{
  display:grid!important;
  grid-template-columns:repeat(5,1fr)!important;
  gap:8px!important;
  margin:10px 0 0!important;
}
.single-product .flex-control-thumbs li{
  width:auto!important;
  float:none!important;
  overflow:hidden;
  border:1px solid #e7d3b4;
  border-radius:7px;
  background:#fff;
}
.single-product .flex-control-thumbs img{
  aspect-ratio:1/1;
  width:100%;
  object-fit:cover;
}

/* Summary */
.single-product div.product .summary{
  width:100%!important;
  float:none!important;
  margin:0!important;
}
.im-product-eyebrow{
  margin:1px 0 6px;
  color:#c56a08;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.single-product .product_title{
  margin:0 0 8px!important;
  color:#2f1b12;
  font:700 clamp(31px,3.5vw,42px)/1.06 Georgia,"Times New Roman",serif!important;
}
.single-product .woocommerce-product-rating{
  margin:0 0 15px!important;
}
.single-product .star-rating{color:#d9810e}
.single-product div.product p.price,
.single-product div.product span.price{
  margin:11px 0 16px!important;
  color:#2e1b13!important;
  font-size:28px!important;
  line-height:1.15;
  font-weight:800!important;
}
.single-product .woocommerce-product-details__short-description{
  color:#59463b;
  font-size:13px;
  line-height:1.65;
}

.im-product-feature-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:17px 0;
  padding:15px 0;
  border-top:1px solid #ead7bc;
  border-bottom:1px solid #ead7bc;
}
.im-product-feature{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-width:0;
  text-align:center;
}
.im-product-feature>span{
  min-height:25px;
  color:#a76d25;
  font-size:22px;
}
.im-product-feature small{
  display:block;
  margin-top:5px;
  color:#5e4b40;
  font-size:10px;
  line-height:1.35;
}

/* Variations / panier */
.single-product form.cart{
  margin:17px 0 0!important;
  padding:17px!important;
  border:1px solid #ead6b9;
  border-radius:9px;
  background:#fff9f0;
}
.single-product table.variations{
  margin:0 0 10px!important;
  border:0!important;
}
.single-product table.variations th,
.single-product table.variations td{
  display:block!important;
  width:100%!important;
  padding:0!important;
  border:0!important;
}
.single-product table.variations th label{
  display:block;
  margin:0 0 8px;
  color:#4b362a;
  font-size:12px;
}
.single-product .im-variation-select-enhanced{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.im-variation-pills{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px!important;
  margin:0 0 10px!important;
}
.im-variation-pill{
  min-height:43px;
  border:1px solid #e1c8a2!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#4b372b!important;
  padding:8px 10px!important;
  font-size:11px;
  font-weight:700!important;
}
.im-variation-pill.active{
  border-color:#dd8b19!important;
  background:#e19a27!important;
  color:#fff!important;
}

.single-product .quantity{
  margin-right:8px!important;
}
.single-product .quantity .qty{
  min-height:43px;
  border:1px solid #dec8a7;
  border-radius:5px;
  background:#fff;
}
.single-product .single_add_to_cart_button{
  min-height:43px!important;
  border-radius:5px!important;
  background:linear-gradient(90deg,#d67806,#e58d0b)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:800!important;
  padding:10px 24px!important;
}
.single-product .reset_variations{
  color:#a95a08!important;
  font-size:10px!important;
}

/* Services produit */
.im-product-services{
  display:grid;
  gap:0;
  margin-top:15px;
  overflow:hidden;
  border:1px solid #ead7bd;
  border-radius:9px;
  background:#fffaf3;
}
.im-product-services>div{
  display:grid;
  grid-template-columns:32px 1fr;
  gap:9px;
  align-items:start;
  padding:11px 14px;
  border-bottom:1px solid #efe1cd;
}
.im-product-services>div:last-child{border-bottom:0}
.im-product-services>div>span{
  display:flex;
  justify-content:center;
  color:#8d5b2d;
  font-size:18px;
}
.im-product-services p{margin:0}
.im-product-services strong{display:block;color:#4c3529;font-size:11px}
.im-product-services small{display:block;margin-top:2px;color:#786459;font-size:9.8px;line-height:1.4}

/* Meta */
.single-product .product_meta{
  margin-top:14px!important;
  padding-top:12px;
  border-top:1px solid #eee0ce;
  color:#79665b;
  font-size:10.5px;
}
.single-product .product_meta a{color:#bd6008}

/* Tabs, upsells et liés : pleine largeur */
.single-product div.product > .woocommerce-tabs,
.single-product div.product > .related,
.single-product div.product > .up-sells,
.single-product div.product > .im-info-contact-cta--product{
  grid-column:1/-1!important;
}

.single-product .woocommerce-tabs{
  margin-top:10px;
}
.single-product .woocommerce-tabs ul.tabs{
  margin:0!important;
  padding:0!important;
  border-bottom:1px solid #ead5b6;
}
.single-product .woocommerce-tabs ul.tabs::before{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{
  margin:0 20px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{
  padding:12px 0!important;
  color:#49352a!important;
  font-size:11px!important;
  font-weight:700!important;
}
.single-product .woocommerce-tabs ul.tabs li.active a{
  color:#c76506!important;
  box-shadow:inset 0 -2px #d77e11;
}
.single-product .woocommerce-tabs .panel{
  padding:17px 0!important;
  color:#5d4b40;
  font-size:12px;
  line-height:1.7;
}

.single-product .related.products,
.single-product .up-sells{
  margin-top:22px;
  padding-top:6px;
}
.single-product .related.products>h2,
.single-product .up-sells>h2{
  margin:0 0 14px;
  color:#3a2419;
  font:700 20px/1.2 Georgia,"Times New Roman",serif;
}
.single-product .related.products ul.products,
.single-product .up-sells ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}

/* CTA produit / boutique */
.im-info-contact-cta--shop,
.im-info-contact-cta--product{
  margin-top:24px!important;
  margin-bottom:16px!important;
}

/* ---------------- RECETTES PROVISOIRE ---------------- */
.im-recipes-coming{
  width:min(1080px,calc(100% - 48px));
  min-height:360px;
  margin:0 auto;
  padding:50px 0;
}
.im-recipes-card{
  position:relative;
  overflow:hidden;
  max-width:760px;
  margin:0 auto;
  padding:45px;
  border:1px solid #ead7ba;
  border-radius:10px;
  background:#fffdf9;
  text-align:center;
}
.im-recipes-mandala{
  position:absolute;
  right:-50px;
  bottom:-60px;
  width:220px;
  height:220px;
  background:url('assets/images/about-v519-mandala.png') center/contain no-repeat;
  opacity:.08;
}
.im-recipes-card h2{margin:0 0 10px;font:700 28px Georgia,serif;color:#3a2419}
.im-recipes-card p{color:#6d594e}
.im-recipes-card a{
  display:inline-flex;
  margin-top:12px;
  padding:12px 18px;
  border-radius:5px;
  background:#d97b0c;
  color:#fff;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

/* ---------------- RESPONSIVE ---------------- */
@media(max-width:1080px){
  .im-shop-products .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .single-product .related.products ul.products,
  .single-product .up-sells ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:900px){
  .im-main-menu{width:max-content!important;min-width:100%;justify-content:flex-start!important;gap:22px!important;padding:0 18px!important}
  .im-shop-layout{grid-template-columns:1fr}
  .im-shop-sidebar{
    position:static;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .im-shop-services-card{grid-column:1/-1}
  .im-shop-products .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .single-product .im-product-shell div.product{grid-template-columns:1fr!important}
  .single-product div.product > .woocommerce-tabs,
  .single-product div.product > .related,
  .single-product div.product > .up-sells,
  .single-product div.product > .im-info-contact-cta--product{grid-column:1!important}
}

@media(max-width:720px){
  .im-shop-products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .im-shop-sidebar{grid-template-columns:1fr}
  .im-shop-services-card{grid-column:auto}
  .im-shop-toolbar{align-items:flex-start;flex-direction:column}
  .im-product-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-product .related.products ul.products,
  .single-product .up-sells ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:500px){
  .im-shop-products .products{grid-template-columns:1fr!important}
  .im-shop-layout,.im-product-shell,.im-shop-hero-inner,.im-recipes-coming{width:min(100% - 28px,1160px)}
  .im-variation-pills{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-product .related.products ul.products,
  .single-product .up-sells ul.products{grid-template-columns:1fr!important}
}


/* ==========================================================
   V5.43.31 — BOUTIQUE SIMPLE + FICHE PRODUIT
   ========================================================== */

/* --------- BOUTIQUE : continuité claire sans hero --------- */
.im-shop31-page{
  min-height:520px;
  background:#fffaf3;
  color:#322219;
}

.im-shop31-shell{
  width:min(1180px,calc(100% - 52px));
  margin:0 auto;
  padding:24px 0 42px;
}

.im-shop31-heading{
  margin:0 0 22px;
}

.im-shop31-heading .woocommerce-breadcrumb{
  margin:0 0 12px !important;
  color:#7a685c !important;
  font-size:11px !important;
}

.im-shop31-heading .woocommerce-breadcrumb a{
  color:#6b5548 !important;
}

.im-shop31-heading h1{
  margin:0;
  color:#2f1c13;
  font:700 38px/1.08 Georgia,"Times New Roman",serif;
}

.im-shop31-category-desc{
  max-width:720px;
  margin-top:7px;
  color:#6d594e;
  font-size:12.5px;
  line-height:1.55;
}

.im-shop31-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:44px;
  margin-bottom:15px;
}

.im-shop31-count .woocommerce-result-count{
  float:none !important;
  margin:0 !important;
  color:#3d2b22;
  font-size:12px;
  font-weight:700;
}

.im-shop31-order .woocommerce-ordering{
  float:none !important;
  margin:0 !important;
}

.im-shop31-order select{
  min-width:195px;
  height:39px;
  border:1px solid #decaae;
  border-radius:5px;
  background:#fff;
  color:#5d4b40;
  padding:0 34px 0 11px;
  font-size:11px;
}

/* On neutralise la grille héritée des versions précédentes. */
.im-shop31-products ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  margin:0 !important;
  padding:0 !important;
}

.im-shop31-products ul.products::before,
.im-shop31-products ul.products::after{
  display:none !important;
}

.woocommerce ul.products li.product.im-shop31-card{
  display:flex !important;
  flex-direction:column !important;
  width:auto !important;
  min-width:0 !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden;
  border:1px solid #ead9c0 !important;
  border-radius:7px !important;
  background:#fff !important;
  box-shadow:0 6px 17px rgba(62,38,23,.045) !important;
}

.im-shop31-card-image{
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#f8f3ec;
}

.woocommerce ul.products li.product.im-shop31-card .im-shop31-card-image img{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  object-fit:contain !important;
  background:#f8f3ec;
  transition:transform .2s ease;
}

.im-shop31-card:hover .im-shop31-card-image img{
  transform:scale(1.02);
}

.im-shop31-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:13px 13px 14px;
}

.im-shop31-brand{
  margin-bottom:4px;
  color:#c86b08;
  font-size:9px;
  line-height:1;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.woocommerce ul.products li.product.im-shop31-card .woocommerce-loop-product__title{
  margin:0 !important;
  padding:0 !important;
  color:#342117 !important;
  font:700 16px/1.22 Georgia,"Times New Roman",serif !important;
}

.im-shop31-card .woocommerce-loop-product__title a{
  color:inherit !important;
  text-decoration:none !important;
}

.im-shop31-card-desc{
  min-height:34px;
  margin:7px 0 12px;
  color:#6d5a4f;
  font-size:10.8px;
  line-height:1.45;
}

.im-shop31-card-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
}

.im-shop31-price{
  color:#2e1c13;
  font-size:15px;
  line-height:1.2;
  font-weight:800;
  white-space:nowrap;
}

.im-shop31-price del{
  display:block;
  margin-bottom:2px;
  color:#95887f;
  font-size:9px;
  font-weight:500;
}

.im-shop31-price ins{
  color:#c36107;
  text-decoration:none;
}

.woocommerce ul.products li.product.im-shop31-card .im-shop31-buy{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:36px;
  margin:0 !important;
  border:0 !important;
  border-radius:5px !important;
  background:#dc8b16 !important;
  color:#fff !important;
  padding:8px 11px !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:800 !important;
  white-space:nowrap;
}

.im-shop31-pagination{
  margin-top:24px;
}

.im-shop31-pagination .woocommerce-pagination ul{
  display:flex !important;
  justify-content:center;
  gap:5px;
  border:0 !important;
}

.im-shop31-pagination .woocommerce-pagination li{
  border:0 !important;
}

.im-shop31-pagination .page-numbers{
  display:flex !important;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  border:1px solid #e3cfb1 !important;
  border-radius:5px;
  background:#fff;
  color:#5b4437;
}

.im-shop31-pagination .page-numbers.current{
  border-color:#d87e10 !important;
  background:#d87e10 !important;
  color:#fff !important;
}

.im-shop31-empty{
  max-width:680px;
  margin:34px auto 100px;
  padding:28px;
  border:1px solid #ead6ba;
  border-radius:8px;
  background:#fff;
  text-align:center;
}

.im-shop31-empty h2{
  margin:0 0 8px;
  color:#3b271c;
  font:700 23px Georgia,"Times New Roman",serif;
}

.im-shop31-empty p{
  margin:0;
  color:#765f52;
  font-size:12px;
  line-height:1.6;
}

/* --------- FICHE PRODUIT : proche du visuel validé --------- */
.im-product31-page{
  background:#fffaf3;
}

.im-product31-shell{
  width:min(1180px,calc(100% - 52px));
  margin:0 auto;
  padding:0 0 32px;
}

.im-product31-shell > .woocommerce-breadcrumb{
  margin:17px 0 18px !important;
  color:#746256 !important;
  font-size:10.5px !important;
}

.im-product31-shell > .woocommerce-breadcrumb a{
  color:#574338 !important;
}

.single-product .im-product31-shell div.product{
  display:grid !important;
  grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr) !important;
  column-gap:34px !important;
  row-gap:20px !important;
  align-items:start !important;
  margin:0 !important;
}

/* image principale proche du visuel : grande, propre, sans recadrage agressif */
.single-product .im-product31-shell .woocommerce-product-gallery{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

.single-product .im-product31-shell .woocommerce-product-gallery__wrapper{
  overflow:hidden;
  border:1px solid #e7d5ba;
  border-radius:8px;
  background:#f5ede2;
}

.single-product .im-product31-shell .woocommerce-product-gallery__image img{
  width:100% !important;
  height:auto !important;
  max-height:650px !important;
  object-fit:contain !important;
  background:#f5ede2;
}

.single-product .im-product31-shell .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:9px 0 0 !important;
}

.single-product .im-product31-shell .flex-control-thumbs li{
  float:none !important;
  width:auto !important;
  overflow:hidden;
  border:1px solid #e6d0ae;
  border-radius:6px;
  background:#fff;
}

.single-product .im-product31-shell .flex-control-thumbs li img{
  aspect-ratio:1/1;
  object-fit:cover;
}

.single-product .im-product31-shell .summary{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

.single-product .im-product31-shell .im-product-eyebrow{
  margin:0 0 7px;
  color:#d2760b;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.single-product .im-product31-shell .product_title{
  margin:0 0 8px !important;
  color:#2e1c13 !important;
  font:700 clamp(31px,3.7vw,43px)/1.05 Georgia,"Times New Roman",serif !important;
}

.single-product .im-product31-shell div.product p.price,
.single-product .im-product31-shell div.product span.price{
  margin:15px 0 17px !important;
  color:#2b1a12 !important;
  font-size:28px !important;
  font-weight:800 !important;
}

.single-product .im-product31-shell .woocommerce-product-details__short-description{
  margin-bottom:13px;
  color:#59463b;
  font-size:12.5px;
  line-height:1.65;
}

.single-product .im-product31-shell .im-product-feature-grid{
  margin:15px 0 !important;
  padding:14px 0 !important;
}

/* boîte conditionnement/panier comme dans le visuel */
.single-product .im-product31-shell form.cart{
  margin:15px 0 0 !important;
  padding:16px !important;
  border:1px solid #e8d2b2 !important;
  border-radius:8px !important;
  background:#fff9ef !important;
}

.single-product .im-product31-shell .im-variation-pills{
  gap:8px !important;
}

.single-product .im-product31-shell .im-variation-pill{
  min-height:42px !important;
  background:#fff !important;
}

.single-product .im-product31-shell .im-variation-pill.active{
  background:#df961f !important;
}

.single-product .im-product31-shell .single_add_to_cart_button{
  background:#db8a15 !important;
}

.single-product .im-product31-shell .im-product-services{
  margin-top:14px !important;
  background:#fff9ef !important;
}

/* onglets et produits associés sous les deux colonnes */
.single-product .im-product31-shell div.product > .woocommerce-tabs,
.single-product .im-product31-shell div.product > .related,
.single-product .im-product31-shell div.product > .up-sells,
.single-product .im-product31-shell div.product > .im-info-contact-cta--product{
  grid-column:1/-1 !important;
}

.single-product .im-product31-shell .woocommerce-tabs{
  margin-top:5px !important;
}

.single-product .im-product31-shell .related.products ul.products,
.single-product .im-product31-shell .up-sells ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}

/* Responsive */
@media(max-width:980px){
  .im-shop31-products ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .single-product .im-product31-shell div.product{
    grid-template-columns:1fr !important;
  }

  .single-product .im-product31-shell div.product > *{
    grid-column:1 !important;
  }

  .single-product .im-product31-shell .related.products ul.products,
  .single-product .im-product31-shell .up-sells ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:700px){
  .im-shop31-products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .im-shop31-toolbar{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:480px){
  .im-shop31-shell,
  .im-product31-shell{
    width:min(100% - 28px,1180px);
  }

  .im-shop31-products ul.products{
    grid-template-columns:1fr !important;
  }

  .single-product .im-product31-shell .related.products ul.products,
  .single-product .im-product31-shell .up-sells ul.products{
    grid-template-columns:1fr !important;
  }
}

/* ==========================================================
   V5.43.33 — PANIER COMPACT / FRANÇAIS
   ========================================================== */
body.woocommerce-cart .site-main{display:none!important}

.im-cart32-page{
  background:#fffaf3;
  color:#332119;
}
.im-cart32-shell{
  width:min(1080px,calc(100% - 44px));
  margin:0 auto;
  padding:24px 0 34px;
}
.im-cart32-shell>h1{
  margin:0 0 18px;
  color:#352117;
  font:700 30px/1.08 Georgia,"Times New Roman",serif;
}
.im-cart32-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 315px;
  gap:32px;
  align-items:start;
}
.im-cart32-products{
  min-width:0;
}
.im-cart32-products-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 105px;
  gap:16px;
  padding:0 0 9px;
  border-bottom:1px solid #d9c9b7;
  color:#503b30;
  font-size:10px;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.im-cart32-products-head span:last-child{text-align:right}
.im-cart32-form{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.im-cart32-item{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 105px;
  gap:14px;
  align-items:start;
  padding:14px 0;
  border-bottom:1px solid #e2d5c5;
}
.im-cart32-thumb{
  width:58px;
  height:58px;
  overflow:hidden;
  border:1px solid #eadbc7;
  background:#fff;
}
.im-cart32-thumb img{
  display:block;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:contain!important;
}
.im-cart32-info h2{
  margin:0 0 3px;
  color:#37251c;
  font:500 12.5px/1.3 Arial,Helvetica,sans-serif;
}
.im-cart32-unit-price{
  margin:0 0 2px;
  color:#482e20;
  font-size:11.5px;
  font-weight:700;
}
.im-cart32-meta,
.im-cart32-meta dl,
.im-cart32-meta p{
  margin:0!important;
  color:#68574c;
  font-size:10.5px!important;
  line-height:1.35!important;
}
.im-cart32-meta dl{display:flex;gap:4px;flex-wrap:wrap}
.im-cart32-meta dt,.im-cart32-meta dd{margin:0!important}
.im-cart32-controls{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:7px;
}
.im-cart32-controls .quantity{
  display:flex;
  width:88px;
  height:30px;
  margin:0!important;
}
.im-cart32-controls .quantity .qty{
  width:100%!important;
  height:30px!important;
  border:1px solid #d9c7af!important;
  border-radius:4px!important;
  background:#fff!important;
  text-align:center!important;
  font-size:11px!important;
}
.im-cart32-remove{
  display:grid;
  width:26px;
  height:26px;
  place-items:center;
  color:#6e594c;
  font-size:20px;
  line-height:1;
}
.im-cart32-remove:hover{color:#b65320}
.im-cart32-line-total{
  padding-top:2px;
  color:#332119;
  text-align:right;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.im-cart32-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:12px;
}
.im-cart32-coupon{
  display:flex;
  gap:6px;
}
.im-cart32-coupon input{
  width:135px;
  height:34px;
  border:1px solid #dcc9ac;
  border-radius:4px;
  background:#fff;
  padding:0 9px;
  font-size:10.5px;
}
.im-cart32-coupon button,
.im-cart32-update{
  min-height:34px;
  border:1px solid #d8bf96;
  border-radius:4px;
  background:#fff;
  color:#4f382b;
  padding:0 11px;
  font-size:9.5px;
  font-weight:800;
  cursor:pointer;
}
.im-cart32-update{margin-left:auto}

.im-cart32-summary{
  position:sticky;
  top:178px;
  padding:0;
}
.im-cart32-summary h2{
  margin:0 0 8px;
  color:#50372a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.im-cart32-summary table{
  width:100%;
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
  background:transparent!important;
}
.im-cart32-summary table th,
.im-cart32-summary table td{
  padding:11px 0!important;
  border:0!important;
  border-bottom:1px solid #ddcfbe!important;
  background:transparent!important;
  color:#4d382d!important;
  font-size:11px!important;
  font-weight:500!important;
  vertical-align:top!important;
}
.im-cart32-summary table th{
  width:57%;
  padding-right:10px!important;
  text-align:left!important;
}
.im-cart32-summary table td{
  text-align:right!important;
}
.im-cart32-summary .woocommerce-shipping-methods{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.im-cart32-summary .woocommerce-shipping-methods li{
  margin:0 0 5px!important;
  font-size:10.5px!important;
}
.im-cart32-summary .woocommerce-shipping-destination,
.im-cart32-summary .woocommerce-shipping-calculator{
  font-size:9.5px!important;
}
.im-cart32-summary .order-total th,
.im-cart32-summary .order-total td{
  padding-top:14px!important;
  color:#2f1e16!important;
  font-size:17px!important;
  font-weight:700!important;
}
.im-cart32-checkout{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:44px;
  margin-top:14px;
  border-radius:3px;
  background:#342019;
  color:#fff!important;
  font-size:11px;
  font-weight:800;
}
.im-cart32-checkout:hover{background:#c7770b}
.im-cart32-continue{
  display:block;
  margin-top:10px;
  color:#765c4d;
  text-align:center;
  font-size:10.5px;
}
.im-cart32-empty{
  max-width:620px;
  padding:26px;
  border:1px solid #ead8bd;
  background:#fff;
}
.im-cart32-empty h2{
  margin:0 0 7px;
  font:700 21px Georgia,serif;
}
.im-cart32-empty p{margin:0 0 16px;color:#6e5a4e;font-size:12px}
.im-cart32-primary{
  display:inline-flex;
  padding:10px 15px;
  border-radius:4px;
  background:#d58511;
  color:#fff!important;
  font-size:10px;
  font-weight:800;
}

/* Le badge du panier garde exactement sa taille lors du remplacement AJAX. */
.header-actions .cart-count{
  flex:0 0 auto;
}

@media(max-width:900px){
  .im-cart32-grid{grid-template-columns:1fr}
  .im-cart32-summary{position:static;max-width:none}
}
@media(max-width:600px){
  .im-cart32-shell{width:min(100% - 26px,1080px);padding-top:18px}
  .im-cart32-item{grid-template-columns:50px minmax(0,1fr) auto;gap:10px}
  .im-cart32-thumb{width:50px;height:50px}
  .im-cart32-line-total{font-size:11px}
  .im-cart32-products-head{grid-template-columns:1fr auto}
  .im-cart32-actions{align-items:stretch}
  .im-cart32-coupon{width:100%}
  .im-cart32-coupon input{flex:1;width:auto}
  .im-cart32-update{width:100%;margin-left:0}
}


/* ==========================================================
   V5.43.33 — CONFIRMATION PANIER PREMIUM
   ========================================================== */
.im-cart33-notices{
  min-height:0;
  margin:-2px 0 15px;
}
.im-cart33-notices:empty{display:none}

/* Neutralise complètement l'aspect WooCommerce par défaut. */
.im-cart33-notices .woocommerce-message,
.im-cart33-notices .woocommerce-info,
.im-cart33-notices .woocommerce-error{
  box-sizing:border-box!important;
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  min-height:34px!important;
  align-items:center!important;
  margin:0!important;
  border:1px solid #e2cfb0!important;
  border-top:1px solid #e2cfb0!important;
  border-left:3px solid #d18a18!important;
  border-radius:6px!important;
  background:#fffdf8!important;
  box-shadow:0 3px 12px rgba(65,41,25,.04)!important;
  color:#563d2f!important;
  padding:8px 13px 8px 36px!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:600!important;
}

.im-cart33-notices .woocommerce-message::before,
.im-cart33-notices .woocommerce-info::before,
.im-cart33-notices .woocommerce-error::before{
  top:50%!important;
  left:12px!important;
  margin:0!important;
  color:#c77b0c!important;
  font-size:14px!important;
  line-height:1!important;
  transform:translateY(-50%)!important;
}

/* Le petit lien éventuel ajouté par Woo reste dans la même pastille. */
.im-cart33-notices .woocommerce-message .button,
.im-cart33-notices .woocommerce-info .button,
.im-cart33-notices .woocommerce-error .button{
  float:none!important;
  min-height:0!important;
  margin:0 0 0 10px!important;
  border:0!important;
  background:transparent!important;
  color:#9c5a0b!important;
  padding:0!important;
  font-size:10px!important;
  font-weight:800!important;
  text-decoration:underline!important;
}

@media(max-width:600px){
  .im-cart33-notices .woocommerce-message,
  .im-cart33-notices .woocommerce-info,
  .im-cart33-notices .woocommerce-error{
    width:100%!important;
  }
}


/* ==========================================================
   V5.43.34 — PANIER / NOTICES GLOBALES
   ========================================================== */

/* Badge panier : légère animation lorsque WooCommerce remplace le fragment. */
.header-actions .cart-count{
  transition:transform .16s ease, background-color .16s ease;
}
.header-actions .cart-count:not(.is-empty){
  transform:translateZ(0);
}

/*
 * Confirmation WooCommerce homogène sur toutes les pages :
 * boutique, catégories, produit, panier, compte...
 */
.woocommerce-notices-wrapper{
  width:min(1180px,calc(100% - 52px));
  margin:10px auto 0;
}
.woocommerce-notices-wrapper:empty{
  display:none;
}
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error{
  position:relative;
  width:max-content;
  max-width:100%;
  min-height:0;
  margin:0 0 10px !important;
  padding:9px 14px 9px 38px !important;
  border:1px solid #e3cfad !important;
  border-left:1px solid #e3cfad !important;
  border-radius:999px !important;
  background:#fffaf2 !important;
  box-shadow:0 4px 12px rgba(62,38,23,.045);
  color:#4b3428 !important;
  font-size:12px !important;
  line-height:1.35 !important;
}
.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-error::before{
  position:absolute !important;
  top:50% !important;
  left:13px !important;
  width:16px !important;
  height:16px !important;
  margin:0 !important;
  transform:translateY(-50%);
  border-radius:50%;
  background:#c98a20;
  color:#fff !important;
  font-size:10px !important;
  line-height:16px !important;
  text-align:center;
}
.woocommerce-notices-wrapper .woocommerce-message::before{
  content:"✓" !important;
}
.woocommerce-notices-wrapper .woocommerce-info::before{
  content:"i" !important;
  font-family:Georgia,serif !important;
  font-weight:700;
}
.woocommerce-notices-wrapper .woocommerce-error::before{
  content:"!" !important;
  background:#a9543d;
}
.woocommerce-notices-wrapper .button{
  float:none !important;
  margin:0 0 0 10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#9b5c18 !important;
  font-size:11px !important;
  line-height:inherit !important;
  text-decoration:underline;
}

/* Sur le panier, la notice reste immédiatement sous le titre et très compacte. */
body.woocommerce-cart .woocommerce-notices-wrapper{
  width:min(1180px,calc(100% - 52px));
  margin-top:4px;
}

@media(max-width:700px){
  .woocommerce-notices-wrapper{
    width:min(100% - 28px,1180px);
  }
  .woocommerce-notices-wrapper .woocommerce-message,
  .woocommerce-notices-wrapper .woocommerce-info,
  .woocommerce-notices-wrapper .woocommerce-error{
    width:100%;
    border-radius:7px !important;
  }
}


/* ==========================================================
   V5.43.35 — FILTRE MULTI-CATÉGORIES BOUTIQUE
   ========================================================== */

.im-shop35-layout{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  align-items:start;
}

.im-shop35-layout--no-sidebar{
  grid-template-columns:minmax(0,1fr);
}

.im-shop35-sidebar{
  position:relative;
}

.im-shop35-filter-card{
  position:sticky;
  top:166px;
  overflow:hidden;
  border:1px solid #e5d2b5;
  border-radius:8px;
  background:#fffdf9;
  box-shadow:0 5px 16px rgba(65,40,23,.035);
}

.im-shop35-filter-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
  padding:16px 15px 13px;
  border-bottom:1px solid #ecdcc6;
}

.im-shop35-kicker{
  display:block;
  margin-bottom:4px;
  color:#ce750b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}

.im-shop35-filter-head h2{
  margin:0;
  color:#39251a;
  font:700 20px/1 Georgia,"Times New Roman",serif;
}

.im-shop35-clear{
  margin-top:14px;
  color:#9d5c10;
  font-size:9px;
  font-weight:700;
  text-decoration:none;
}

.im-shop35-filter-form{
  margin:0;
  padding:5px 0;
}

.im-shop35-check{
  position:relative;
  display:grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  min-height:46px;
  margin:0;
  padding:0 14px;
  border-bottom:1px solid #f0e3d2;
  cursor:pointer;
  transition:background .15s ease;
}

.im-shop35-check:last-of-type{
  border-bottom:0;
}

.im-shop35-check:hover,
.im-shop35-check.is-checked{
  background:#fff3df;
}

.im-shop35-check input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.im-shop35-box{
  position:relative;
  width:16px;
  height:16px;
  border:1.5px solid #c9a777;
  border-radius:3px;
  background:#fff;
}

.im-shop35-check.is-checked .im-shop35-box{
  border-color:#d7860e;
  background:#d7860e;
}

.im-shop35-check.is-checked .im-shop35-box::after{
  content:"✓";
  position:absolute;
  inset:0;
  color:#fff;
  font-size:11px;
  line-height:15px;
  font-weight:900;
  text-align:center;
}

.im-shop35-check-label{
  color:#4e382c;
  font-size:11px;
  line-height:1.25;
  font-weight:700;
}

.im-shop35-count{
  display:flex;
  min-width:22px;
  height:22px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#f5eadb;
  color:#8d715f;
  padding:0 6px;
  font-size:9px;
  font-weight:800;
}

.im-shop35-check.is-checked .im-shop35-count{
  background:#fff;
  color:#b0650a;
}

.im-shop35-apply{
  display:block;
  width:calc(100% - 28px);
  min-height:34px;
  margin:10px 14px;
  border:0;
  border-radius:4px;
  background:#d8860e;
  color:#fff;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}

.im-shop35-filter-form.has-js .im-shop35-apply{
  display:none;
}

.im-shop35-filter-note{
  display:flex;
  gap:7px;
  align-items:flex-start;
  margin:0 13px 13px;
  padding:10px;
  border-radius:5px;
  background:#faf4eb;
  color:#7a6455;
}

.im-shop35-note-icon{
  display:grid;
  flex:0 0 17px;
  width:17px;
  height:17px;
  place-items:center;
  border-radius:50%;
  background:#d98a14;
  color:#fff;
  font-size:9px;
  font-weight:900;
}

.im-shop35-filter-note p{
  margin:0;
  font-size:9px;
  line-height:1.45;
}

.im-shop35-main{
  min-width:0;
}

.im-shop35-main .im-shop31-toolbar{
  margin-top:0;
}

.im-shop35-active{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  margin:-4px 0 12px;
  color:#7d695b;
  font-size:9px;
}

.im-shop35-chip{
  display:inline-flex;
  min-height:23px;
  align-items:center;
  border:1px solid #e4cfad;
  border-radius:999px;
  background:#fff9ef;
  color:#704d32;
  padding:0 9px;
  font-size:9px;
  font-weight:800;
}

/* 4 produits par ligne même avec la colonne filtre */
.im-shop35-main .im-shop31-products ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:13px !important;
}

.im-shop35-main .im-shop31-card-body{
  padding:11px 11px 12px;
}

.im-shop35-main .im-shop31-card-desc{
  font-size:9.6px;
}

.im-shop35-main .im-shop31-card-footer{
  gap:6px;
}

.im-shop35-main .im-shop31-price{
  font-size:13px;
}

.woocommerce ul.products li.product.im-shop31-card .im-shop31-buy{
  padding:7px 8px !important;
  font-size:7.7px !important;
}

/* On élargit uniquement la Boutique de quelques pixels pour préserver les 4 colonnes. */
body.post-type-archive-product .im-shop31-shell{
  width:min(1240px,calc(100% - 44px));
}

@media(max-width:1050px){
  .im-shop35-layout{
    grid-template-columns:180px minmax(0,1fr);
    gap:17px;
  }

  .im-shop35-main .im-shop31-products ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:790px){
  .im-shop35-layout{
    grid-template-columns:1fr;
  }

  .im-shop35-filter-card{
    position:static;
  }

  .im-shop35-filter-form{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:7px;
  }

  .im-shop35-check{
    border:0;
    border-radius:5px;
  }

  .im-shop35-filter-note{
    display:none;
  }

  .im-shop35-apply{
    grid-column:1/-1;
  }

  .im-shop35-main .im-shop31-products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:480px){
  body.post-type-archive-product .im-shop31-shell{
    width:min(100% - 26px,1240px);
  }

  .im-shop35-main .im-shop31-products ul.products{
    grid-template-columns:1fr !important;
  }

  .im-shop35-filter-form{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   V5.43.37 — STOCK + CHECKOUT CLASSIQUE FR
   ========================================================== */

/* ---------- Stock catalogue ---------- */
.im-shop37-stock{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:18px;
  margin:0 0 9px;
  font-size:9.5px;
  line-height:1.2;
  font-weight:800;
}

.im-shop37-stock > span{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
}

.im-shop37-stock--in{
  color:#34773a;
}
.im-shop37-stock--in > span{
  background:#4c974f;
}

.im-shop37-stock--out{
  color:#a44632;
}
.im-shop37-stock--out > span{
  background:#b94f39;
}

.im-shop37-stock--backorder{
  color:#9b650d;
}
.im-shop37-stock--backorder > span{
  background:#d6921c;
}

.woocommerce ul.products li.product.im-shop31-card .im-shop37-unavailable{
  cursor:not-allowed !important;
  border:1px solid #ddc9c0 !important;
  background:#f2ebe7 !important;
  color:#9b6457 !important;
  pointer-events:none;
}

/* ---------- Stock fiche produit ---------- */
.single-product .stock{
  display:flex !important;
  align-items:center;
  gap:7px;
  margin:12px 0 10px !important;
  font-size:12px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}

.single-product .stock::before{
  content:"";
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:#4c974f;
}

.single-product .stock.out-of-stock{
  color:#a44632 !important;
}

.single-product .stock.out-of-stock::before{
  background:#b94f39;
}

.single-product .stock.available-on-backorder{
  color:#9b650d !important;
}

.single-product .stock.available-on-backorder::before{
  background:#d6921c;
}

/* ---------- Checkout classique ---------- */
body.woocommerce-checkout:not(.woocommerce-order-received){
  background:#fffaf3;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .site-main,
body.woocommerce-checkout:not(.woocommerce-order-received) main{
  background:#fffaf3;
}

body.woocommerce-checkout .woocommerce{
  width:min(1180px,calc(100% - 52px));
  margin:0 auto;
  padding:30px 0 46px;
}

body.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper{
  width:100%;
  margin:0 0 12px;
}

body.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  gap:28px;
  align-items:start;
}

body.woocommerce-checkout form.checkout > #customer_details{
  display:block;
  min-width:0;
}

body.woocommerce-checkout form.checkout > #order_review_heading,
body.woocommerce-checkout form.checkout > #order_review{
  grid-column:2;
}

body.woocommerce-checkout form.checkout > #order_review_heading{
  grid-row:1;
  margin:0 0 -20px;
  padding:0 18px;
  color:#3b261b;
  font:700 23px/1.15 Georgia,"Times New Roman",serif;
}

body.woocommerce-checkout form.checkout > #order_review{
  grid-row:1 / span 2;
  margin-top:42px;
}

body.woocommerce-checkout .col2-set{
  display:block !important;
  width:100% !important;
}

body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2{
  float:none !important;
  width:100% !important;
  margin:0 0 17px;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .woocommerce-checkout-review-order{
  box-sizing:border-box;
  border:1px solid #e5d2b5 !important;
  border-radius:9px !important;
  background:#fff !important;
  box-shadow:0 5px 18px rgba(65,40,23,.035);
  padding:20px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  margin:0 0 16px;
  color:#3a251a;
  font:700 22px/1.15 Georgia,"Times New Roman",serif;
}

body.woocommerce-checkout .form-row{
  box-sizing:border-box;
  margin:0 0 13px !important;
}

body.woocommerce-checkout .form-row label{
  display:block;
  margin:0 0 5px;
  color:#5a4437;
  font-size:10px;
  font-weight:800;
}

body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-container .select2-selection--single{
  box-sizing:border-box;
  width:100%;
  min-height:42px;
  border:1px solid #ddc9aa !important;
  border-radius:5px !important;
  background:#fffdf9 !important;
  color:#3e2d24;
  padding:9px 11px;
  font-size:11px;
  box-shadow:none !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:22px;
  padding-left:0;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{
  height:40px;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  width:100%;
  margin:0 0 15px !important;
  border:0 !important;
  border-collapse:collapse;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  padding:11px 0 !important;
  border:0 !important;
  border-bottom:1px solid #e8dccd !important;
  background:transparent !important;
  color:#4e3a2e;
  font-size:10.5px;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th{
  text-align:left;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  text-align:right;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
  padding-top:14px !important;
  color:#2f1e16;
  font-size:18px;
  font-weight:800;
}

body.woocommerce-checkout #payment{
  border:0 !important;
  border-radius:7px !important;
  background:#fbf5eb !important;
}

body.woocommerce-checkout #payment ul.payment_methods{
  border-bottom:1px solid #e2d2bd !important;
  padding:14px !important;
}

body.woocommerce-checkout #payment div.form-row{
  padding:14px !important;
}

body.woocommerce-checkout #place_order{
  width:100%;
  min-height:46px;
  border:0 !important;
  border-radius:5px !important;
  background:#3b241a !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase;
}

body.woocommerce-checkout #place_order:hover{
  background:#d2830e !important;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  color:#786355;
  font-size:9.5px;
  line-height:1.5;
}

@media(max-width:850px){
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr;
  }

  body.woocommerce-checkout form.checkout > #order_review_heading,
  body.woocommerce-checkout form.checkout > #order_review{
    grid-column:1;
    grid-row:auto;
  }

  body.woocommerce-checkout form.checkout > #order_review_heading{
    margin:5px 0 -8px;
    padding:0;
  }

  body.woocommerce-checkout form.checkout > #order_review{
    margin-top:0;
  }
}

@media(max-width:600px){
  body.woocommerce-checkout .woocommerce{
    width:min(100% - 26px,1180px);
    padding-top:20px;
  }
}


/* ==========================================================
   V5.43.38 — COMMANDE FR / PANIER PLUS COMPACT
   ========================================================== */

/* ---------- Page Commande dédiée ---------- */
.im-checkout38-page{
  background:#fffaf3;
  color:#3a281e;
}

.im-checkout38-shell{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:26px 0 44px;
}

.im-checkout38-head{
  margin:0 0 16px;
}

.im-checkout38-kicker{
  display:block;
  margin:0 0 4px;
  color:#ce750b;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.14em;
}

.im-checkout38-head h1{
  margin:0;
  color:#382218;
  font:700 31px/1.08 Georgia,"Times New Roman",serif;
}

.im-checkout38-services{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0 0 22px;
  overflow:hidden;
  border:1px solid #e4d1b2;
  border-radius:8px;
  background:#fffdf8;
}

.im-checkout38-services > div{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:8px;
  align-items:center;
  min-height:66px;
  padding:11px 16px;
  border-right:1px solid #eadbc5;
}

.im-checkout38-services > div:last-child{
  border-right:0;
}

.im-checkout38-services > div > span{
  font-size:17px;
  text-align:center;
}

.im-checkout38-services p{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0;
  color:#4a3327;
  font-size:10.5px;
  line-height:1.35;
}

.im-checkout38-services strong{
  color:#3c281d;
  font-size:10.5px;
}

.im-checkout38-services small{
  color:#806a5b;
  font-size:9px;
}

/*
 * Le shortcode WooCommerce était déjà contraint à 1180px en V5.43.37.
 * Dans le nouveau shell il ne doit pas recréer une seconde largeur/marge.
 */
.im-checkout38-content .woocommerce{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

/* Coupon : petit encart discret au lieu du grand bandeau bleu WooCommerce. */
.im-checkout38-content .woocommerce-form-coupon-toggle{
  margin:0 0 14px;
}

.im-checkout38-content .woocommerce-form-coupon-toggle .woocommerce-info{
  width:max-content !important;
  max-width:100% !important;
  margin:0 !important;
  border:1px solid #e1cba9 !important;
  border-radius:6px !important;
  background:#fff8ec !important;
  padding:9px 14px 9px 38px !important;
  box-shadow:none !important;
  color:#5d4434 !important;
  font-size:10.5px !important;
}

.im-checkout38-content .woocommerce-form-coupon-toggle .woocommerce-info::before{
  top:50% !important;
  left:13px !important;
  transform:translateY(-50%) !important;
  background:#d58a18 !important;
}

/* Les deux anciens gros messages de livraison sont retirés. */
.im-checkout38-obsolete-notice{
  display:none !important;
}

/* Checkout : rapproche les deux colonnes et réduit l'effet "grand formulaire". */
.im-checkout38-content form.checkout{
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.8fr) !important;
  gap:22px !important;
}

.im-checkout38-content .woocommerce-billing-fields,
.im-checkout38-content .woocommerce-shipping-fields,
.im-checkout38-content .woocommerce-additional-fields,
.im-checkout38-content .woocommerce-checkout-review-order{
  box-shadow:0 4px 14px rgba(65,40,23,.025) !important;
}

.im-checkout38-content .woocommerce-checkout-review-order{
  padding:18px !important;
}

/* Message aucun moyen de paiement : compact et cohérent. */
.im-checkout38-content #payment .woocommerce-info,
.im-checkout38-content #payment .woocommerce-error{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border:1px solid #e1cfb3 !important;
  border-radius:6px !important;
  background:#fffaf1 !important;
  padding:12px 14px 12px 40px !important;
  color:#654b3c !important;
  font-size:10.5px !important;
  line-height:1.5 !important;
}

.im-checkout38-content #payment .woocommerce-info::before,
.im-checkout38-content #payment .woocommerce-error::before{
  top:14px !important;
  left:14px !important;
  width:17px !important;
  height:17px !important;
  transform:none !important;
  line-height:17px !important;
}

.im-checkout38-content .woocommerce-privacy-policy-text{
  color:#7c6556 !important;
  font-size:9.5px !important;
  line-height:1.55 !important;
}

/* ---------- Panier : rapproche Produit et Total ---------- */
.im-cart32-grid{
  grid-template-columns:minmax(0,620px) 315px !important;
  gap:28px !important;
  justify-content:space-between;
}

.im-cart32-products-head{
  grid-template-columns:58px minmax(0,1fr) 90px !important;
  gap:14px !important;
}

.im-cart38-product-head{
  grid-column:1 / 3;
}

.im-cart38-total-head{
  grid-column:3;
  text-align:right;
}

.im-cart32-item{
  grid-template-columns:58px minmax(0,1fr) 90px !important;
  gap:14px !important;
}

.im-cart32-line-total{
  width:90px;
}

@media(max-width:1000px){
  .im-cart32-grid{
    grid-template-columns:minmax(0,1fr) 300px !important;
    gap:22px !important;
  }
}

@media(max-width:900px){
  .im-cart32-grid{
    grid-template-columns:1fr !important;
  }

  .im-checkout38-services{
    grid-template-columns:1fr;
  }

  .im-checkout38-services > div{
    border-right:0;
    border-bottom:1px solid #eadbc5;
  }

  .im-checkout38-services > div:last-child{
    border-bottom:0;
  }
}

@media(max-width:850px){
  .im-checkout38-content form.checkout{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:600px){
  .im-checkout38-shell{
    width:min(100% - 26px,1180px);
    padding-top:20px;
  }

  .im-checkout38-head h1{
    font-size:27px;
  }

  .im-cart32-products-head{
    grid-template-columns:50px minmax(0,1fr) auto !important;
    gap:10px !important;
  }

  .im-cart32-item{
    grid-template-columns:50px minmax(0,1fr) auto !important;
    gap:10px !important;
  }

  .im-cart32-line-total{
    width:auto;
  }
}


/* ==========================================================
   V5.43.39 — ACCUEIL
   ========================================================== */

/* Bandeau supérieur entièrement cliquable */
.im-service-strip-link{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  transition:color .16s ease, background .16s ease;
}
.im-service-strip-link:hover{
  color:#a95f0a;
}
.im-service-strip-link span{
  position:relative;
}
.im-service-strip-link span + span::before{
  content:"";
  position:absolute;
  top:50%;
  left:-19px;
  width:1px;
  height:12px;
  background:#dfcfba;
  transform:translateY(-50%);
}

/* Le hero conserve son design, seul le libellé du CTA change. */

/* ---------- Nouveau bandeau Click & Collect Pamiers ---------- */
.im-home39-pickup-section{
  padding-top:34px;
  padding-bottom:34px;
}

.im-home39-pickup{
  position:relative;
  display:block;
  width:min(var(--grid),calc(100% - 36px));
  min-height:238px;
  margin:0 auto;
  overflow:hidden;
  border:1px solid #d9bd90;
  border-radius:12px;
  box-shadow:0 9px 25px rgba(56,31,17,.09);
  color:#fff;
}

.im-home39-pickup-bg,
.im-home39-pickup-overlay{
  position:absolute;
  inset:0;
}

.im-home39-pickup-bg{
  background:url('assets/images/pamiers-v5.jpg') center 47%/cover no-repeat;
  transform:scale(1.01);
  transition:transform .45s ease;
}

.im-home39-pickup-overlay{
  background:
    linear-gradient(90deg,
      rgba(35,18,10,.90) 0%,
      rgba(35,18,10,.76) 35%,
      rgba(35,18,10,.57) 62%,
      rgba(35,18,10,.40) 100%);
}

.im-home39-pickup:hover .im-home39-pickup-bg{
  transform:scale(1.035);
}

.im-home39-pickup-content{
  position:relative;
  z-index:2;
  display:grid;
  min-height:238px;
  grid-template-columns:1.05fr 1.75fr auto;
  gap:22px;
  align-items:center;
  padding:25px 28px;
}

.im-home39-pickup-intro{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.im-home39-kicker{
  margin:0 0 7px;
  color:#f0b44c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.15em;
}

.im-home39-pickup-intro > strong{
  font:700 28px/1.06 Georgia,"Times New Roman",serif;
  text-shadow:0 2px 8px rgba(0,0,0,.25);
}

.im-home39-pickup-intro > small{
  max-width:260px;
  margin-top:9px;
  color:#f7ede3;
  font-size:10.5px;
  line-height:1.5;
}

.im-home39-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.im-home39-step{
  display:flex;
  min-height:92px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:9px 7px;
  border:1px solid rgba(255,255,255,.19);
  border-radius:8px;
  background:rgba(28,15,9,.39);
  backdrop-filter:blur(2px);
  text-align:center;
}

.im-home39-step > b{
  display:grid;
  width:29px;
  height:29px;
  place-items:center;
  margin-bottom:5px;
  border-radius:50%;
  background:#d28a17;
  color:#fff;
  font-size:10px;
}

.im-home39-step > span{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.im-home39-step strong{
  color:#fff;
  font-size:10px;
}

.im-home39-step small{
  color:#eee1d6;
  font-size:8.5px;
  line-height:1.35;
}

.im-home39-pickup-cta{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:5px;
  background:#d58b17;
  color:#fff;
  padding:0 17px;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
  box-shadow:0 5px 13px rgba(0,0,0,.14);
  transition:background .16s ease, transform .16s ease;
}

.im-home39-pickup:hover .im-home39-pickup-cta{
  background:#e09720;
  transform:translateX(2px);
}

.im-home39-pickup-cta b{
  font-size:18px;
  line-height:1;
}

/* ---------- Boutique / Recettes / À propos ---------- */
.im-home39-links-section{
  padding-top:38px;
}

.im-home39-links{
  width:min(var(--grid),calc(100% - 36px));
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.im-home39-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  box-shadow:0 7px 20px rgba(58,34,21,.045);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.im-home39-card:hover{
  transform:translateY(-3px);
  border-color:#d8ba8b;
  box-shadow:0 12px 26px rgba(58,34,21,.09);
}

.im-home39-card-image{
  display:block;
  height:192px;
  overflow:hidden;
  background:#2a180f;
}

.im-home39-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}

.im-home39-card:hover .im-home39-card-image img{
  transform:scale(1.035);
}

/* Le hero panoramique est recadré sur la partie aliments pour Recettes. */
.im-home39-card-image-recipes img{
  object-position:79% center;
}

.im-home39-card-about .im-home39-card-image img{
  object-fit:contain;
  padding:12px;
  background:#2a180f;
}

.im-home39-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  align-items:flex-start;
  padding:17px 18px 18px;
}

.im-home39-card-kicker{
  margin-bottom:5px;
  color:#ce750b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
}

.im-home39-card-body > strong{
  color:#392318;
  font:700 23px/1.1 Georgia,"Times New Roman",serif;
}

.im-home39-card-body > small{
  display:block;
  margin:10px 0 17px;
  color:#68584e;
  font-size:11px;
  line-height:1.55;
}

.im-home39-card-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:auto;
  color:#a45e12;
  font-size:9px;
  font-weight:900;
}

.im-home39-card-link b{
  font-size:15px;
  transition:transform .16s ease;
}

.im-home39-card:hover .im-home39-card-link b{
  transform:translateX(3px);
}

@media(max-width:980px){
  .im-home39-pickup-content{
    grid-template-columns:1fr;
    gap:16px;
  }

  .im-home39-pickup-intro{
    align-items:center;
    text-align:center;
  }

  .im-home39-pickup-intro > small{
    max-width:520px;
  }

  .im-home39-pickup-cta{
    justify-self:center;
  }

  .im-home39-links{
    grid-template-columns:1fr;
    max-width:620px;
  }

  .im-home39-card{
    display:grid;
    grid-template-columns:42% minmax(0,1fr);
  }

  .im-home39-card-image{
    height:100%;
    min-height:215px;
  }
}

@media(max-width:620px){
  .im-service-strip-link span + span::before{
    display:none;
  }

  .im-home39-pickup-section{
    padding:26px 0;
  }

  .im-home39-pickup{
    min-height:0;
  }

  .im-home39-pickup-content{
    min-height:0;
    padding:24px 17px;
  }

  .im-home39-pickup-overlay{
    background:rgba(34,18,10,.72);
  }

  .im-home39-pickup-intro > strong{
    font-size:25px;
  }

  .im-home39-steps{
    grid-template-columns:1fr;
  }

  .im-home39-step{
    min-height:67px;
    flex-direction:row;
    justify-content:flex-start;
    gap:10px;
    padding:9px 12px;
    text-align:left;
  }

  .im-home39-step > b{
    flex:0 0 29px;
    margin:0;
  }

  .im-home39-links{
    max-width:340px;
  }

  .im-home39-card{
    display:flex;
  }

  .im-home39-card-image{
    height:188px;
    min-height:0;
  }
}


/* ==========================================================
   V5.43.40 — ACCUEIL PAMIERS PLUS CLAIR + À PROPOS ARIÈGE
   ========================================================== */

/* ---------- Click & Collect : photo plus claire et clochers entiers ---------- */
.im-home39-pickup{
  min-height:250px;
  border-color:#dfc69e;
  background:#f7ecdc;
  box-shadow:0 8px 22px rgba(65,40,23,.07);
}

.im-home39-pickup-bg{
  background-image:url('assets/images/pamiers-v54340-panorama.jpg') !important;
  background-position:center center !important;
  background-size:cover !important;
  transform:none !important;
  filter:none;
}

.im-home39-pickup:hover .im-home39-pickup-bg{
  transform:scale(1.012) !important;
}

/*
 * On ne noircit plus toute la photo.
 * À gauche, un voile crème permet le texte brun ; au centre/droite,
 * les clochers restent nettement visibles.
 */
.im-home39-pickup-overlay{
  background:
    linear-gradient(90deg,
      rgba(255,248,238,.97) 0%,
      rgba(255,248,238,.91) 25%,
      rgba(255,248,238,.56) 43%,
      rgba(255,248,238,.18) 62%,
      rgba(255,248,238,.08) 100%) !important;
}

.im-home39-pickup-content{
  min-height:250px;
  grid-template-columns:1.05fr 1.85fr auto;
  padding:24px 28px;
}

.im-home39-kicker{
  color:#ba6807;
}

.im-home39-pickup-intro > strong{
  color:#342016;
  text-shadow:none;
}

.im-home39-pickup-intro > small{
  color:#5e483b;
  font-weight:500;
}

/* Étapes plus légères : la photo reste visible derrière. */
.im-home39-step{
  border:1px solid rgba(210,169,107,.68);
  background:rgba(255,250,242,.82);
  box-shadow:0 3px 10px rgba(60,37,22,.035);
  backdrop-filter:blur(2px);
}

.im-home39-step strong{
  color:#3a281d;
}

.im-home39-step small{
  color:#715b4d;
}

.im-home39-step > b{
  background:#cf8614;
}

.im-home39-pickup-cta{
  background:#ce8413;
  box-shadow:0 4px 12px rgba(94,55,12,.14);
}

.im-home39-pickup:hover .im-home39-pickup-cta{
  background:#db921f;
}

/* ---------- Carte À propos ---------- */
.im-home39-card-about .im-home39-card-image{
  background:#f5ead9;
}

.im-home39-card-about .im-home39-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  padding:0;
  background:#f5ead9;
}

/*
 * Le nouveau visuel mélange mandala et reliefs/montagnes,
 * avec une luminosité plus douce que l'ancien mandala sur bois.
 */
.im-home39-card-about:hover .im-home39-card-image img{
  transform:scale(1.025);
}

@media(max-width:980px){
  .im-home39-pickup-content{
    grid-template-columns:1fr;
  }

  .im-home39-pickup-overlay{
    background:rgba(255,248,238,.84) !important;
  }

  .im-home39-pickup-bg{
    background-size:cover !important;
  }
}

@media(max-width:620px){
  .im-home39-pickup{
    min-height:0;
  }

  .im-home39-pickup-content{
    min-height:0;
  }

  .im-home39-pickup-overlay{
    background:rgba(255,248,238,.90) !important;
  }

  .im-home39-pickup-intro > strong{
    color:#342016;
  }

  .im-home39-pickup-intro > small{
    color:#5e483b;
  }
}


/* ==========================================================
   V5.43.41 — ACCUEIL : PAMIERS NET / RECETTES / VRAI LOGO
   ========================================================== */

/* Pamiers : aucun flou, photo nette et lumineuse */
.im-home39-pickup-bg{
  background-image:url('assets/images/pamiers-v54341-sharp.jpg') !important;
  background-position:center center !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  transform:none !important;
  filter:none !important;
}

.im-home39-pickup:hover .im-home39-pickup-bg{
  transform:none !important;
}

/* Le voile reste uniquement sur la zone texte, pas sur les clochers. */
.im-home39-pickup-overlay{
  background:
    linear-gradient(90deg,
      rgba(255,248,238,.96) 0%,
      rgba(255,248,238,.89) 27%,
      rgba(255,248,238,.47) 43%,
      rgba(255,248,238,.07) 61%,
      rgba(255,248,238,0) 100%) !important;
}

.im-home39-pickup-intro > strong{
  color:#332016 !important;
}

.im-home39-pickup-intro > small{
  color:#5a4436 !important;
}

/* Les cartes étapes gardent la photo visible et ne créent aucun flou. */
.im-home39-step{
  background:rgba(255,250,243,.87) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* Recettes : vrai visuel de plats préparés */
.im-home39-card-image-recipes img{
  object-position:center center !important;
}

/* À propos : le logo fourni par l'utilisateur est intégré au visuel */
.im-home39-card-about .im-home39-card-image{
  background:#f4ead9 !important;
}

.im-home39-card-about .im-home39-card-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  background:#f4ead9 !important;
}

.im-home39-card-about:hover .im-home39-card-image img{
  transform:scale(1.018) !important;
}

@media(max-width:980px){
  .im-home39-pickup-bg{
    background-size:cover !important;
    background-position:center center !important;
  }
}

@media(max-width:620px){
  .im-home39-pickup-overlay{
    background:rgba(255,248,238,.88) !important;
  }
}



/* ==========================================================
   V5.43.43 — CLICK & COLLECT PAMIERS DÉZOOMÉ + 3 BLOCS
   ========================================================== */

.im-home39-pickup-section{
  padding-top:34px;
  padding-bottom:34px;
}

.im-home42-pickup{
  display:block;
  width:min(var(--grid),calc(100% - 36px));
  margin:0 auto;
  overflow:hidden;
  border:1px solid #dec49b;
  border-radius:12px;
  background:#fffaf3;
  color:#3b271c;
  box-shadow:0 9px 24px rgba(60,36,22,.07);
  transition:transform .18s ease,box-shadow .18s ease;
}

.im-home42-pickup:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(60,36,22,.10);
}

.im-home42-photo{
  position:relative;
  display:flex;
  min-height:350px;
  align-items:flex-start;
  justify-content:space-between;
  overflow:hidden;
  padding:34px 34px 130px;
  background:url('assets/images/pamiers-v5.jpg') center 22% / cover no-repeat;
}

.im-home42-photo-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,
    rgba(255,249,241,.96) 0%,
    rgba(255,249,241,.90) 22%,
    rgba(255,249,241,.68) 34%,
    rgba(255,249,241,.18) 48%,
    rgba(255,249,241,0) 62%);
  pointer-events:none;
}

.im-home42-copy,
.im-home42-cta,
.im-home42-steps{
  position:relative;
  z-index:2;
}

.im-home42-copy{
  display:flex;
  width:290px;
  flex-direction:column;
  align-items:flex-start;
}

.im-home42-kicker{
  margin-bottom:7px;
  color:#bd6908;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.15em;
}

.im-home42-copy > strong{
  color:#352117;
  font:700 29px/1.06 Georgia,"Times New Roman",serif;
}

.im-home42-copy > small{
  max-width:260px;
  margin-top:10px;
  color:#5d473a;
  font-size:10.5px;
  line-height:1.5;
}

.im-home42-cta{
  display:inline-flex;
  min-height:45px;
  align-items:center;
  justify-content:center;
  gap:8px;
  align-self:flex-start;
  margin-top:170px;
  margin-right:6px;
  border-radius:5px;
  background:#d48a16;
  color:#fff;
  padding:0 18px;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
  box-shadow:0 5px 14px rgba(70,42,21,.16);
}

.im-home42-cta b{
  font-size:18px;
  line-height:1;
}

.im-home42-steps{
  position:absolute;
  left:28px;
  bottom:22px;
  display:flex;
  gap:16px;
  width:auto;
}

.im-home42-step{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  width:238px;
  min-height:92px;
  padding:18px 18px;
  border:1px solid rgba(214,186,143,.9);
  border-radius:14px;
  background:rgba(255,253,249,.88);
  box-shadow:0 12px 25px rgba(71,47,29,.10);
  backdrop-filter:blur(2px);
}

.im-home42-step > b{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border-radius:50%;
  background:#d28a17;
  color:#fff;
  font-size:11px;
  font-weight:900;
}

.im-home42-step > span{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}

.im-home42-step strong{
  color:#3b281d;
  font-size:11px;
}

.im-home42-step small{
  color:#786255;
  font-size:9.5px;
  line-height:1.35;
}

@media(max-width:1200px){
  .im-home42-photo{
    min-height:385px;
    padding-bottom:138px;
    background-position:center 20%;
  }
  .im-home42-step{
    width:215px;
  }
}

@media(max-width:980px){
  .im-home42-photo{
    min-height:430px;
    align-items:flex-start;
    padding:24px;
    background-position:center 20%;
    flex-direction:column;
    gap:18px;
  }

  .im-home42-photo-shade{
    background:linear-gradient(180deg,
      rgba(255,249,241,.92) 0%,
      rgba(255,249,241,.74) 26%,
      rgba(255,249,241,.28) 54%,
      rgba(255,249,241,.05) 76%,
      rgba(255,249,241,0) 100%);
  }

  .im-home42-cta{
    margin-top:0;
  }

  .im-home42-steps{
    position:relative;
    left:auto;
    bottom:auto;
    width:100%;
    flex-direction:column;
    gap:12px;
    margin-top:10px;
  }

  .im-home42-step{
    width:100%;
  }
}

@media(max-width:620px){
  .im-home42-photo{
    min-height:460px;
    background-position:center 18%;
  }

  .im-home42-copy{
    width:100%;
  }

  .im-home42-copy > strong{
    font-size:25px;
  }
}


/* ==========================================================
   V5.43.45 — PAGE 404
   ========================================================== */

.im-404-page{
  background:#fffaf3;
  color:#3a261b;
}

.im-404-wrap{
  width:min(1120px,calc(100% - 40px));
  margin:0 auto;
  padding:54px 0 58px;
}

.im-404-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  min-height:410px;
  overflow:hidden;
  border:1px solid #e1c8a2;
  border-radius:14px;
  background:
    linear-gradient(90deg,#fffdf8 0%,#fffaf2 54%,#f3e2c7 100%);
  box-shadow:0 12px 34px rgba(61,37,22,.07);
}

.im-404-copy{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:50px 48px;
}

.im-404-kicker{
  margin-bottom:10px;
  color:#c66e08;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}

.im-404-copy h1{
  max-width:590px;
  margin:0;
  color:#352117;
  font:700 42px/1.06 Georgia,"Times New Roman",serif;
}

.im-404-copy p{
  max-width:570px;
  margin:18px 0 0;
  color:#6c5748;
  font-size:13px;
  line-height:1.7;
}

.im-404-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:28px;
}

.im-404-btn{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  border-radius:5px;
  padding:0 17px;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
}

.im-404-btn-primary{
  background:#d68913;
  color:#fff;
  box-shadow:0 5px 13px rgba(115,69,12,.14);
}

.im-404-btn-primary:hover{
  background:#e0931b;
  color:#fff;
}

.im-404-btn-secondary{
  border:1px solid #d6b17a;
  background:#fffdf8;
  color:#563a29;
}

.im-404-btn-secondary:hover{
  border-color:#c97b11;
  color:#a85e08;
}

.im-404-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:4px;
  color:#9e5b12;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
}

.im-404-link span{
  font-size:17px;
  line-height:1;
  transition:transform .15s ease;
}

.im-404-link:hover span{
  transform:translateX(3px);
}

.im-404-visual{
  position:relative;
  overflow:hidden;
  min-height:410px;
  background:
    radial-gradient(circle at 55% 48%,rgba(255,249,238,.96) 0 19%,rgba(255,249,238,.38) 20% 42%,rgba(255,249,238,0) 65%),
    linear-gradient(145deg,#ead2aa 0%,#f6e8cf 46%,#e8c997 100%);
}

.im-404-mandala{
  position:absolute;
  z-index:2;
  top:50%;
  left:50%;
  width:min(290px,74%);
  height:auto;
  transform:translate(-50%,-50%);
  object-fit:contain;
  filter:drop-shadow(0 9px 22px rgba(92,53,22,.10));
}

.im-404-number{
  position:absolute;
  z-index:3;
  right:24px;
  bottom:13px;
  color:rgba(91,55,29,.11);
  font:700 88px/1 Georgia,"Times New Roman",serif;
  letter-spacing:-.08em;
}

.im-404-orbit{
  position:absolute;
  border:1px solid rgba(180,116,28,.18);
  border-radius:50%;
}

.im-404-orbit-one{
  width:330px;
  height:330px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}

.im-404-orbit-two{
  width:420px;
  height:420px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}

.im-404-shortcuts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:center;
  margin-top:18px;
  color:#836c5c;
  font-size:10px;
}

.im-404-shortcuts > span{
  margin-right:3px;
}

.im-404-shortcuts a{
  display:inline-flex;
  min-height:30px;
  align-items:center;
  border:1px solid #e1ccb0;
  border-radius:999px;
  background:#fffdf9;
  color:#6b4c36;
  padding:0 11px;
  font-size:9px;
  font-weight:800;
  text-decoration:none;
}

.im-404-shortcuts a:hover{
  border-color:#d48a17;
  background:#fff6e8;
  color:#a86009;
}

@media(max-width:840px){
  .im-404-card{
    grid-template-columns:1fr;
  }

  .im-404-copy{
    padding:40px 34px 34px;
    text-align:center;
    align-items:center;
  }

  .im-404-copy h1{
    font-size:36px;
  }

  .im-404-actions{
    justify-content:center;
  }

  .im-404-visual{
    min-height:300px;
  }
}

@media(max-width:520px){
  .im-404-wrap{
    width:min(100% - 26px,1120px);
    padding:32px 0 40px;
  }

  .im-404-copy{
    padding:34px 22px 28px;
  }

  .im-404-copy h1{
    font-size:30px;
  }

  .im-404-copy p{
    font-size:12px;
  }

  .im-404-actions{
    width:100%;
    flex-direction:column;
  }

  .im-404-btn{
    width:100%;
  }

  .im-404-link{
    margin:5px 0 0;
  }

  .im-404-visual{
    min-height:250px;
  }

  .im-404-mandala{
    width:min(225px,72%);
  }
}


/* ==========================================================
   V5.43.46 — PAMIERS : PHOTO UTILISATEUR + 3 BLOCS CLIQUABLES
   ========================================================== */

.im-home39-pickup-section{
  padding-top:34px;
  padding-bottom:34px;
}

.im-home46-pickup{
  width:min(var(--grid),calc(100% - 36px));
  margin:0 auto;
  overflow:hidden;
  border:1px solid #dec49b;
  border-radius:12px;
  background:#fffaf3;
  box-shadow:0 9px 25px rgba(56,31,17,.08);
}

/*
 * Le ratio suit directement celui de la photo fournie.
 * Résultat : aucun zoom artificiel et les tours restent visibles
 * de haut en bas.
 */
.im-home46-photo{
  position:relative;
  width:100%;
  aspect-ratio:1832 / 632;
  min-height:330px;
  overflow:hidden;
  background:
    url('assets/images/pamiers-v54346-user.jpg')
    center center / cover
    no-repeat;
}

/* Dégradé crème à gauche uniquement — aucune zone floutée. */
.im-home46-gradient{
  position:absolute;
  z-index:1;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(255,249,241,.98) 0%,
      rgba(255,249,241,.94) 18%,
      rgba(255,249,241,.73) 29%,
      rgba(255,249,241,.30) 42%,
      rgba(255,249,241,.07) 52%,
      rgba(255,249,241,0) 61%);
  pointer-events:none;
}

.im-home46-copy{
  position:absolute;
  z-index:2;
  top:34px;
  left:34px;
  width:285px;
}

.im-home46-kicker{
  display:block;
  margin-bottom:7px;
  color:#bd6908;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.15em;
}

.im-home46-copy h2{
  margin:0;
  color:#352117;
  font:700 29px/1.06 Georgia,"Times New Roman",serif;
}

.im-home46-copy p{
  max-width:255px;
  margin:10px 0 0;
  color:#5d473a;
  font-size:10.5px;
  line-height:1.5;
}

/*
 * Les 3 étapes restent en permanence au-dessus de la photo.
 * Elles sont volontairement regroupées vers la gauche.
 */
.im-home46-steps{
  position:absolute;
  z-index:3;
  left:30px;
  bottom:24px;
  display:grid;
  grid-template-columns:repeat(3,190px);
  gap:12px;
}

.im-home46-step{
  display:grid;
  grid-template-columns:35px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:82px;
  box-sizing:border-box;
  border:1px solid rgba(210,176,123,.82);
  border-radius:12px;
  background:rgba(255,252,247,.91);
  padding:13px 14px;
  color:#3b281d;
  text-decoration:none;
  box-shadow:0 9px 22px rgba(63,39,23,.09);
  transition:
    transform .16s ease,
    border-color .16s ease,
    background .16s ease,
    box-shadow .16s ease;
}

.im-home46-step:hover{
  transform:translateY(-3px);
  border-color:#cf8614;
  background:rgba(255,252,247,.98);
  box-shadow:0 13px 25px rgba(63,39,23,.13);
}

.im-home46-number{
  display:grid;
  width:33px;
  height:33px;
  place-items:center;
  border-radius:50%;
  background:#d28a17;
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:900;
}

.im-home46-step-text{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}

.im-home46-step-text strong{
  color:#3b281d;
  font-size:10.5px;
  line-height:1.2;
}

.im-home46-step-text small{
  color:#786255;
  font-size:8.7px;
  line-height:1.35;
}

@media(max-width:1050px){
  .im-home46-photo{
    min-height:370px;
    aspect-ratio:auto;
    background-size:cover;
    background-position:center center;
  }

  .im-home46-steps{
    grid-template-columns:repeat(3,minmax(0,1fr));
    right:24px;
    left:24px;
  }
}

@media(max-width:760px){
  .im-home46-photo{
    min-height:520px;
    background-position:58% center;
  }

  .im-home46-gradient{
    background:
      linear-gradient(180deg,
        rgba(255,249,241,.95) 0%,
        rgba(255,249,241,.78) 29%,
        rgba(255,249,241,.15) 57%,
        rgba(255,249,241,0) 72%);
  }

  .im-home46-copy{
    top:25px;
    left:24px;
    width:calc(100% - 48px);
  }

  .im-home46-copy h2{
    font-size:26px;
  }

  .im-home46-steps{
    right:18px;
    bottom:18px;
    left:18px;
    grid-template-columns:1fr;
    gap:8px;
  }

  .im-home46-step{
    min-height:64px;
  }
}

@media(max-width:480px){
  .im-home46-photo{
    min-height:550px;
    background-position:61% center;
  }
}


/* ==========================================================
   V5.43.47 — VISUELS CARTES BOUTIQUE / RECETTES / À PROPOS
   ========================================================== */

.im-home39-card-image img,
.im-home39-card-image-recipes img,
.im-home39-card-about .im-home39-card-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
}

.im-home39-card-image-recipes img{
  object-position:center 52% !important;
}

.im-home39-card-about .im-home39-card-image{
  background:#f4ead9 !important;
}

.im-home39-card-about .im-home39-card-image img{
  background:#f4ead9 !important;
}



/* ==========================================================
   V5.43.48 — ACCUEIL FINAL
   ========================================================== */

/* Le texte du bloc Pamiers est centré verticalement dans la zone
   comprise entre le haut de l'image et les trois étapes. */
@media(min-width:761px){
  .im-home46-copy{
    top:56px !important;
  }
}

@media(min-width:1051px){
  .im-home46-copy{
    top:58px !important;
  }
}

/* Cadrage final homogène des trois cartes. */
.im-home39-card-image img,
.im-home39-card-image-recipes img,
.im-home39-card-about .im-home39-card-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  padding:0 !important;
}

.im-home39-card:first-child .im-home39-card-image img{
  object-position:center center !important;
}

.im-home39-card-image-recipes img{
  object-position:center 52% !important;
}

.im-home39-card-about .im-home39-card-image img{
  object-position:center center !important;
}


/* ==========================================================
   V5.43.49 — CARTES SANS ROGNAGE / VRAI LOGO
   ========================================================== */

/*
 * Les 3 nouveaux visuels sont générés directement au ratio 1200x520.
 * Aucun élément important n'est donc coupé par la carte.
 */
.im-home39-card-image img,
.im-home39-card-image-recipes img,
.im-home39-card-about .im-home39-card-image img{
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
  object-position:center center !important;
  padding:0 !important;
}

.im-home39-card-about .im-home39-card-image{
  background:#f4ead9 !important;
}



/* ==========================================================
   V5.43.50 — CARTES ACCUEIL DYNAMIQUES
   ========================================================== */

/*
 * Les cartes sont entièrement cliquables.
 * Les CTA de bas de carte ont été supprimés du HTML.
 */
.im-home39-links{
  align-items:stretch;
}

.im-home39-card{
  position:relative;
  cursor:pointer;
  overflow:hidden;
  border:1px solid #e3cfad !important;
  border-radius:12px !important;
  background:#fffdf9 !important;
  box-shadow:0 7px 20px rgba(58,34,21,.055) !important;
  transform:translateY(0);
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    border-color .24s ease !important;
  will-change:transform;
}

/* Image volontairement plus haute, comme le mockup validé. */
.im-home39-card-image{
  height:auto !important;
  aspect-ratio: 244 / 285;
  overflow:hidden !important;
  background:#ead9bd !important;
}

.im-home39-card-image img,
.im-home39-card-image-recipes img,
.im-home39-card-about .im-home39-card-image img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  transform:scale(1);
  filter:saturate(1) contrast(1);
  transition:
    transform .45s cubic-bezier(.2,.75,.25,1),
    filter .35s ease !important;
}

.im-home39-card-body{
  position:relative;
  z-index:2;
  padding:18px 20px 22px !important;
  transition:background .24s ease;
}

.im-home39-card-body > strong{
  transition:color .22s ease;
}

.im-home39-card:hover{
  transform:translateY(-7px);
  border-color:#cf921f !important;
  box-shadow:0 18px 38px rgba(58,34,21,.14) !important;
}

.im-home39-card:hover .im-home39-card-image img{
  transform:scale(1.045);
  filter:saturate(1.05) contrast(1.025);
}

.im-home39-card:hover .im-home39-card-body > strong{
  color:#b76708 !important;
}

.im-home39-card:focus-visible{
  outline:3px solid rgba(207,134,20,.30);
  outline-offset:4px;
}

/* Les anciens CTA ne doivent jamais réapparaître visuellement. */
.im-home39-card-link{
  display:none !important;
}

/* Petit reflet très discret lors du survol. */
.im-home39-card::after{
  content:"";
  position:absolute;
  z-index:4;
  top:-45%;
  left:-80%;
  width:46%;
  height:190%;
  pointer-events:none;
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0),
    rgba(255,248,225,.20),
    rgba(255,255,255,0)
  );
  transform:rotate(13deg);
  transition:left .62s ease;
}

.im-home39-card:hover::after{
  left:135%;
}

@media(hover:none){
  .im-home39-card:hover{
    transform:none;
    border-color:#e3cfad !important;
    box-shadow:0 7px 20px rgba(58,34,21,.055) !important;
  }

  .im-home39-card:hover .im-home39-card-image img{
    transform:none;
    filter:none;
  }

  .im-home39-card::after{
    display:none;
  }
}

@media(max-width:980px){
  .im-home39-card{
    display:flex !important;
    grid-template-columns:none !important;
  }

  .im-home39-card-image{
    height:auto !important;
    min-height:0 !important;
    aspect-ratio: 244 / 285;
  }
}

@media(max-width:620px){
  .im-home39-card-image{
    aspect-ratio: 4 / 3;
  }
}



/* ==========================================================
   V5.43.52 — CATÉGORIES DYNAMIQUES + NOTRE SÉLECTION
   ========================================================== */
.im-cat{position:relative;overflow:hidden;border:1px solid #e3cfad!important;border-radius:10px!important;box-shadow:0 5px 15px rgba(58,34,21,.04);transform:translateY(0);transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease!important;will-change:transform}.im-cat img{transform:scale(1);transition:transform .42s cubic-bezier(.2,.75,.25,1),filter .32s ease!important}.im-cat-name h3{transition:color .22s ease}.im-cat:hover{transform:translateY(-6px);border-color:#cf921f!important;box-shadow:0 15px 31px rgba(58,34,21,.12)!important}.im-cat:hover img{transform:scale(1.045);filter:saturate(1.05) contrast(1.02)}.im-cat:hover .im-cat-name h3{color:#b76708!important}.im-cat::after{content:"";position:absolute;z-index:3;top:-45%;left:-85%;width:45%;height:190%;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,249,229,.18),rgba(255,255,255,0));transform:rotate(13deg);transition:left .62s ease}.im-cat:hover::after{left:135%}.im-cat:focus-visible{outline:3px solid rgba(207,134,20,.28);outline-offset:4px}
.im-home51-products-section{padding:40px 0 42px;background:#fffaf3}.im-home51-products-shell{width:min(var(--grid),calc(100% - 36px));margin:0 auto}.im-home51-products-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:17px}.im-home51-products-kicker{display:block;margin-bottom:5px;color:#c87009;font-size:8px;font-weight:900;letter-spacing:.15em}.im-home51-products-head h2{margin:0;color:#382319;font:700 27px/1.1 Georgia,"Times New Roman",serif}.im-home51-shop-link{display:inline-flex;align-items:center;gap:6px;color:#9f5b0d;font-size:9px;font-weight:900;text-decoration:none;white-space:nowrap}.im-home51-shop-link span{font-size:17px;transition:transform .16s ease}.im-home51-shop-link:hover span{transform:translateX(3px)}
.im-home51-products-grid{display:grid!important;grid-template-columns:repeat(var(--im51d),minmax(0,1fr))!important;gap:16px!important;margin:0!important;padding:0!important;list-style:none!important}.im-home51-product{position:relative!important;display:flex!important;width:auto!important;min-width:0;float:none!important;flex-direction:column;overflow:hidden;margin:0!important;border:1px solid #e5d2b4;border-radius:9px;background:#fff;box-shadow:0 5px 17px rgba(58,34,21,.04);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.im-home51-product:hover{transform:translateY(-4px);border-color:#d49b43;box-shadow:0 12px 25px rgba(58,34,21,.09)}.im-home51-product-image{position:relative;display:flex;height:185px;align-items:center;justify-content:center;overflow:hidden;background:#fbf5eb;padding:12px}.im-home51-product-image img{display:block;width:100%!important;height:100%!important;margin:0!important;object-fit:contain!important;transition:transform .35s ease}.im-home51-product:hover .im-home51-product-image img{transform:scale(1.035)}.im-home51-sale{position:absolute;top:9px;left:9px;z-index:2;border-radius:4px;background:#d57e0e;color:#fff;padding:5px 7px;font-size:7px;font-weight:900}.im-home51-product-body{display:flex;flex:1;flex-direction:column;padding:12px 13px 14px}.im-home51-brand{margin-bottom:4px;color:#c06b08;font-size:7.5px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.im-home51-product-title{color:#402a1f;font-size:11px;line-height:1.35;font-weight:800;text-decoration:none}.im-home51-product-title:hover{color:#a65d08}.im-home51-product-price{margin-top:8px;color:#c66c08;font-size:13px;font-weight:900}.im-home51-product-price del{margin-right:5px;color:#9c8a7e;font-size:9px;font-weight:600}.im-home51-product-price ins{text-decoration:none}.im-home51-product-stock{display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:9px;color:#6f5a4c;font-size:8.5px;font-weight:800}.im-home51-product-stock>span{width:6px;height:6px;border-radius:50%;background:#4d9851}.im-home51-stock-out{color:#a14734}.im-home51-stock-out>span{background:#b94e39}.im-home51-stock-backorder{color:#94610e}.im-home51-stock-backorder>span{background:#d38e17}
@media(max-width:980px){.im-home51-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:620px){.im-home51-products-head{align-items:flex-start;flex-direction:column}.im-home51-products-grid{grid-template-columns:1fr!important;gap:12px!important}.im-home51-product-image{height:220px}}@media(hover:none){.im-cat:hover{transform:none;border-color:#e3cfad!important;box-shadow:0 5px 15px rgba(58,34,21,.04)!important}.im-cat:hover img{transform:none;filter:none}.im-cat::after{display:none}}


/* ==========================================================
   V5.43.52 — FLIP-OVER PRODUITS + TITRE FICHE PLUS COMPACT
   ========================================================== */

/* Nom du produit : plus équilibré sur la fiche produit. */
.single-product .im-product31-shell .product_title{
  font:700 clamp(28px,2.6vw,42px)/1.08 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.01em;
}

/* Conteneur commun boutique + sélection accueil. */
.im-product-flip-media{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  overflow:hidden;
}

.im-product-flip-media .im-product-image-primary,
.im-product-flip-media .im-product-image-hover{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:contain!important;
  transform:scale(1);
  transition:opacity .34s ease,transform .42s cubic-bezier(.2,.75,.25,1)!important;
}

.im-product-flip-media .im-product-image-hover{
  position:absolute!important;
  inset:0;
  opacity:0;
  z-index:2;
}

/* Boutique : garde le cadrage premium des cartes existantes. */
.im-shop31-card-image .im-product-flip-media{
  height:100%;
}

/* L'accueil dispose déjà de son fond et de son padding. */
.im-home51-product-image .im-product-flip-media{
  height:100%;
}

/* Effet uniquement avec vraie souris : pas de changement imprévisible au tactile. */
@media (hover:hover) and (pointer:fine){
  .im-product-has-hover:hover .im-product-image-primary{
    opacity:0;
    transform:scale(1.025);
  }

  .im-product-has-hover:hover .im-product-image-hover{
    opacity:1;
    transform:scale(1.035);
  }
}

@media(max-width:760px){
  .single-product .im-product31-shell .product_title{
    font-size:clamp(27px,7.3vw,34px)!important;
    line-height:1.08!important;
  }
}


/* ==========================================================
   V5.43.58 — FLIP-OVER CORRIGÉ / SOURIS
   ========================================================== */

/*
 * Deux calques réellement superposés. On ne dépend plus du flux normal
 * de l'image principale ni d'un media-query pointer:fine.
 */
.im-shop31-card-image.im-product-has-hover,
.im-home51-product-image.im-product-has-hover{
  position:relative!important;
}

.im-product-has-hover .im-product-flip-media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-flip-media img,
.im-home51-product-image.im-product-has-hover .im-product-flip-media img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:contain!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transition:opacity .34s ease,transform .44s cubic-bezier(.2,.75,.25,1)!important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover .im-product-image-primary{
  z-index:1!important;
  opacity:1!important;
  visibility:visible!important;
  transform:scale(1)!important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover .im-product-image-hover{
  z-index:2!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(1.015)!important;
}

/* CSS natif + classe JS : double sécurité. */
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover:hover .im-product-image-primary,
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover.is-im53-hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover:hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover.is-im53-hover .im-product-image-primary{
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(1.025)!important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover:hover .im-product-image-hover,
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover.is-im53-hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover:hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover.is-im53-hover .im-product-image-hover{
  opacity:1!important;
  visibility:visible!important;
  transform:scale(1.045)!important;
}

/* Le badge promo doit rester au-dessus du second visuel. */
.im-home51-product-image .im-home51-sale{
  z-index:6!important;
}

/* Sur écran tactile pur, pas de changement au tap. */
@media (hover:none) and (pointer:coarse){
  .im-product-has-hover:hover .im-product-image-primary{
    opacity:1!important;
    visibility:visible!important;
    transform:scale(1)!important;
  }
  .im-product-has-hover:hover .im-product-image-hover{
    opacity:0!important;
    visibility:hidden!important;
    transform:scale(1.015)!important;
  }
}


/* ==========================================================
   V5.43.58 — TITRE PLUS COMPACT + GALERIE PRODUIT MIEUX CADRÉE
   ========================================================== */

/* Le titre ne prend plus le dessus sur le prix et le descriptif. */
.single-product .im-product31-shell .product_title{
  font:700 clamp(24px,2.1vw,36px)/1.08 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.01em !important;
}

/* On donne un peu plus d'espace à la partie informations. */
.single-product .im-product31-shell div.product{
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr) !important;
  column-gap:38px !important;
}

/*
 * Fond cohérent pour les packshots blancs.
 * Le fond de la galerie devient blanc, ce qui évite la rupture visuelle
 * entre le canvas blanc de l'image et le cadre crème précédent.
 */
.single-product .im-product31-shell .woocommerce-product-gallery__wrapper,
.single-product .im-product31-shell .woocommerce-product-gallery__image,
.single-product .im-product31-shell .woocommerce-product-gallery__image a{
  background:#fff !important;
}

/* Le cadre reste visible mais très discret. */
.single-product .im-product31-shell .woocommerce-product-gallery__wrapper{
  border:1px solid #ead9bf !important;
  border-radius:8px !important;
}

/*
 * L'image principale respire davantage.
 * Le produit ne touche plus presque les bords sur les images à fond blanc.
 */
.single-product .im-product31-shell .woocommerce-product-gallery__image a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:500px;
  padding:22px !important;
}

.single-product .im-product31-shell .woocommerce-product-gallery__image img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:90% !important;
  max-height:545px !important;
  margin:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
}

/* Les miniatures à fond blanc restent visibles en entier au lieu d'être rognées. */
.single-product .im-product31-shell .flex-control-thumbs li{
  background:#fff !important;
}

.single-product .im-product31-shell .flex-control-thumbs li img{
  width:100% !important;
  height:100% !important;
  aspect-ratio:1/1;
  padding:4px;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
}

/* Responsive : on garde de l'air sans rendre la galerie trop haute. */
@media(max-width:980px){
  .single-product .im-product31-shell div.product{
    grid-template-columns:1fr !important;
  }

  .single-product .im-product31-shell .woocommerce-product-gallery__image a{
    min-height:430px;
    padding:18px !important;
  }

  .single-product .im-product31-shell .woocommerce-product-gallery__image img{
    max-width:92% !important;
    max-height:500px !important;
  }
}

@media(max-width:620px){
  .single-product .im-product31-shell .product_title{
    font-size:clamp(23px,7vw,29px) !important;
  }

  .single-product .im-product31-shell .woocommerce-product-gallery__image a{
    min-height:330px;
    padding:14px !important;
  }

  .single-product .im-product31-shell .woocommerce-product-gallery__image img{
    max-width:94% !important;
    max-height:390px !important;
  }
}


/* ==========================================================
   V5.43.58 — SURVOL PRODUITS APAISÉ / ZOOM FICHE DÉSACTIVÉ
   ========================================================== */

/*
 * Boutique + Notre sélection : changement d'image direct.
 * Aucun fondu, aucun zoom, aucun déplacement de l'image.
 */
.im-product-flip-media .im-product-image-primary,
.im-product-flip-media .im-product-image-hover,
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-flip-media img,
.im-home51-product-image.im-product-has-hover .im-product-flip-media img{
  transition:none !important;
  transform:none !important;
  animation:none !important;
}

/* Neutralise aussi les anciens zooms de carte hérités des versions précédentes. */
.im-shop31-card:hover .im-shop31-card-image img,
.im-home51-product:hover .im-home51-product-image img,
.woocommerce ul.products li.product.im-shop31-card:hover .im-shop31-card-image img{
  transform:none !important;
}

/* État normal. */
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover .im-product-image-primary{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover .im-product-image-hover{
  opacity:0 !important;
  visibility:hidden !important;
  transform:none !important;
}

/* Survol souris : bascule nette vers l'image secondaire, sans crossfade. */
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover:hover .im-product-image-primary,
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover.is-im53-hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover:hover .im-product-image-primary,
.im-home51-product-image.im-product-has-hover.is-im53-hover .im-product-image-primary{
  opacity:0 !important;
  visibility:hidden !important;
  transform:none !important;
}

.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover:hover .im-product-image-hover,
.woocommerce ul.products li.product.im-shop31-card .im-product-has-hover.is-im53-hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover:hover .im-product-image-hover,
.im-home51-product-image.im-product-has-hover.is-im53-hover .im-product-image-hover{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

/*
 * Fiche produit : le zoom WooCommerce est également retiré côté PHP.
 * Ces règles empêchent un calque zoom résiduel d'apparaître avec un cache ancien.
 */
.single-product .woocommerce-product-gallery .zoomImg,
.single-product .im-product31-shell .woocommerce-product-gallery .zoomImg{
  display:none !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.single-product .im-product31-shell .woocommerce-product-gallery__image img{
  transform:none !important;
  transition:none !important;
}

/* Pas de curseur de zoom au simple survol. Le clic lightbox reste disponible. */
.single-product .im-product31-shell .woocommerce-product-gallery__image a{
  cursor:pointer;
}

@media (hover:none) and (pointer:coarse){
  .im-product-has-hover .im-product-image-primary{
    opacity:1 !important;
    visibility:visible !important;
  }
  .im-product-has-hover .im-product-image-hover{
    opacity:0 !important;
    visibility:hidden !important;
  }
}


/* ==========================================================
   V5.43.58 — ACTIONS AU SURVOL + QUICK VIEW + MONTANT PANIER
   ========================================================== */

/* ---------- Header : montant sous Panier ---------- */
.header-actions .im-header-cart-link{
  position:relative;
  align-items:center;
}

.im-header-cart-copy{
  display:flex;
  min-width:58px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:1px;
  line-height:1;
}

.im-header-cart-title{
  font:inherit;
  line-height:1.05;
}

.header-actions .cart-subtotal{
  display:block;
  color:#b96a0d;
  font-size:9px;
  line-height:1.15;
  font-weight:800;
  white-space:nowrap;
}

.header-actions .cart-subtotal .woocommerce-Price-amount{
  color:inherit;
}

/* ---------- Boutique : zone image et actions rapides ---------- */
.im-shop56-media{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#f8f3ec;
}

.im-shop56-media .im-shop31-card-image{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
}

/*
 * Les icônes apparaissent par-dessus l'image, sans zoom ni fondu d'image.
 * Un voile très discret aide seulement à lire les deux boutons.
 */
.im-shop56-media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:rgba(45,25,14,.05);
  opacity:0;
  transition:opacity .14s ease;
}

.im-shop56-actions{
  position:absolute;
  inset:0;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  pointer-events:none;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .14s ease, transform .14s ease;
}

.im-shop56-media:hover::after{
  opacity:1;
}

.im-shop56-media:hover .im-shop56-actions,
.im-shop56-media:focus-within .im-shop56-actions{
  opacity:1;
  transform:translateY(0);
}

.im-shop56-action{
  display:flex !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.82) !important;
  border-radius:50% !important;
  background:#c9700b !important;
  color:#fff !important;
  box-shadow:0 7px 18px rgba(48,28,15,.18);
  cursor:pointer;
  pointer-events:auto;
  text-decoration:none !important;
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease;
}

.im-shop56-action:hover,
.im-shop56-action:focus-visible{
  background:#9e5005 !important;
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 9px 21px rgba(48,28,15,.23);
}

.im-shop56-action svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.im-shop56-action.is-disabled{
  opacity:.42;
  cursor:not-allowed;
}

/* Sur tactile : pas de survol permanent qui bloque le clic image. */
@media(hover:none), (pointer:coarse){
  .im-shop56-actions{
    display:none;
  }

  .im-shop56-media::after{
    display:none;
  }
}

/* ---------- Quick View ---------- */
body.im-quick56-open{
  overflow:hidden;
}

.im-quick56{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
}

.im-quick56.is-open{
  display:flex;
}

.im-quick56-backdrop{
  position:absolute;
  inset:0;
  background:rgba(35,24,18,.62);
  backdrop-filter:blur(1px);
}

.im-quick56-dialog{
  position:relative;
  z-index:2;
  width:min(960px,calc(100vw - 48px));
  max-height:calc(100vh - 56px);
  overflow:auto;
  border:1px solid #e0c9a6;
  border-radius:12px;
  background:#fffdf9;
  box-shadow:0 25px 75px rgba(36,20,11,.34);
}

.im-quick56-close{
  position:absolute;
  top:11px;
  right:13px;
  z-index:8;
  display:flex;
  width:36px;
  height:36px;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.95);
  color:#362117;
  font-size:29px;
  font-weight:300;
  line-height:1;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(48,28,15,.11);
}

.im-quick56-content{
  min-height:430px;
}

.im-quick56-loading,
.im-quick56-error{
  display:flex;
  min-height:430px;
  align-items:center;
  justify-content:center;
  padding:40px;
  color:#6a5143;
  font-size:14px;
  font-weight:700;
}

.im-quick56-layout{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:34px;
  padding:30px;
}

.im-quick56-gallery{
  min-width:0;
}

.im-quick56-main-image{
  display:flex;
  aspect-ratio:1/1;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid #eadbc6;
  border-radius:7px;
  background:#fff;
  padding:18px;
}

.im-quick56-main-image img{
  display:block;
  width:100%;
  height:100%;
  margin:0;
  object-fit:contain;
}

.im-quick56-thumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.im-quick56-thumb{
  display:flex;
  width:64px;
  height:64px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid #e4d3bb;
  border-radius:5px;
  background:#fff;
  padding:4px;
  cursor:pointer;
}

.im-quick56-thumb.is-active{
  border-color:#d0770c;
  box-shadow:0 0 0 1px #d0770c inset;
}

.im-quick56-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.im-quick56-summary{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  padding:17px 10px 17px 0;
}

.im-quick56-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 9px;
  margin-bottom:7px;
  color:#c16908;
  font-size:9px;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.im-quick56-meta a{
  color:inherit;
  text-decoration:none;
}

.im-quick56-summary h2{
  margin:0 0 12px;
  color:#372117;
  font:700 clamp(25px,2.6vw,36px)/1.08 Georgia,"Times New Roman",serif;
}

.im-quick56-price{
  margin-bottom:14px;
  color:#2f1d14;
  font-size:22px;
  font-weight:900;
}

.im-quick56-price del{
  color:#9b8d84;
  font-size:14px;
}

.im-quick56-price ins{
  color:#c56808;
  text-decoration:none;
}

.im-quick56-desc{
  color:#604c40;
  font-size:12px;
  line-height:1.6;
}

.im-quick56-desc p{
  margin:0 0 9px;
}

.im-quick56-stock{
  display:flex;
  align-items:center;
  gap:6px;
  margin:4px 0 15px;
  padding-top:12px;
  border-top:1px solid #ead8bd;
  color:#60704a;
  font-size:10px;
  font-weight:900;
}

.im-quick56-stock span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#4a9a53;
}

.im-quick56-stock.is-out{
  color:#a24838;
}

.im-quick56-stock.is-out span{
  background:#b84c3c;
}

/* Neutralisation des styles fiche produit trop larges dans le modal. */
.im-quick56-cart form.cart{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:9px;
  margin:0 !important;
}

.im-quick56-cart .quantity{
  margin:0 !important;
}

.im-quick56-cart .quantity input.qty{
  width:60px;
  min-height:42px;
  border:1px solid #dfc7a2;
  border-radius:5px;
  text-align:center;
}

.im-quick56-cart .single_add_to_cart_button{
  min-height:42px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:5px !important;
  background:#dc8b16 !important;
  color:#fff !important;
  padding:11px 17px !important;
  font-size:10px !important;
  font-weight:900 !important;
}

.im-quick56-cart table.variations{
  width:100%;
  margin:0 0 10px !important;
}

.im-quick56-cart table.variations th,
.im-quick56-cart table.variations td{
  padding:5px 7px 5px 0 !important;
  text-align:left;
  vertical-align:middle;
}

.im-quick56-cart table.variations select{
  min-width:180px;
  max-width:100%;
  min-height:38px;
  border:1px solid #dfc7a2;
  border-radius:5px;
  background:#fff;
  padding:6px 9px;
}

.im-quick56-detail{
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:max-content;
  margin-top:15px;
  color:#9f5708;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
}

.im-quick56-detail span{
  font-size:17px;
}

@media(max-width:760px){
  .im-quick56{
    padding:12px;
  }

  .im-quick56-dialog{
    width:calc(100vw - 24px);
    max-height:calc(100vh - 24px);
  }

  .im-quick56-layout{
    grid-template-columns:1fr;
    gap:17px;
    padding:20px 16px;
  }

  .im-quick56-main-image{
    aspect-ratio:4/3;
  }

  .im-quick56-summary{
    padding:0;
  }
}



/* ==========================================================
   V5.43.58 — CONFIRMATION D'AJOUT AU PANIER
   ========================================================== */

/* Le lien WooCommerce « Voir le panier » n'a plus d'utilité dans la carte. */
.products .added_to_cart.wc-forward,
.im-shop31-card .added_to_cart.wc-forward,
.im-home51-product .added_to_cart.wc-forward{
  display:none !important;
}

/* ---------- Modal ---------- */
body.im-cart57-open{
  overflow:hidden;
}

.im-cart57{
  position:fixed;
  inset:0;
  z-index:1000000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.im-cart57.is-open{
  display:flex;
}

.im-cart57-backdrop{
  position:absolute;
  inset:0;
  background:rgba(37,28,23,.54);
}

.im-cart57-dialog{
  position:relative;
  z-index:2;
  width:min(980px,calc(100vw - 48px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  border:1px solid #dbc6a8;
  border-radius:11px;
  background:#fff;
  box-shadow:0 24px 70px rgba(37,22,14,.31);
}

.im-cart57-close{
  position:absolute;
  top:9px;
  right:13px;
  z-index:5;
  width:34px;
  height:34px;
  border:0;
  background:transparent;
  color:#352117;
  font-size:29px;
  line-height:1;
  cursor:pointer;
}

.im-cart57-status{
  display:flex;
  min-height:58px;
  align-items:center;
  gap:10px;
  padding:14px 58px 14px 20px;
  border-bottom:1px solid #eadfce;
  color:#3d8c4f;
  font-size:15px;
}

.im-cart57-check{
  font-size:22px;
  font-weight:400;
}

.im-cart57-status strong{
  font-weight:700;
}

.im-cart57-content{
  min-height:270px;
}

.im-cart57-loading,
.im-cart57-error{
  display:flex;
  min-height:270px;
  align-items:center;
  justify-content:center;
  padding:35px;
  color:#6a5143;
  text-align:center;
  font-size:13px;
  font-weight:700;
}

.im-cart57-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:0;
  padding:28px 30px 30px;
}

.im-cart57-product{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:23px;
  min-height:245px;
  align-items:center;
  padding:5px 30px 5px 4px;
  border-right:1px solid #ded3c4;
}

.im-cart57-product-image{
  display:flex;
  width:190px;
  height:220px;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.im-cart57-product-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

.im-cart57-product-info h3{
  margin:0 0 10px;
  color:#382218;
  font:700 18px/1.22 Georgia,"Times New Roman",serif;
}

.im-cart57-product-price{
  margin-bottom:12px;
  color:#c26908;
  font-size:15px;
  font-weight:900;
}

.im-cart57-product-qty{
  color:#604b3e;
  font-size:11px;
}

.im-cart57-summary{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:5px 0 5px 38px;
}

.im-cart57-summary h3{
  margin:0 0 15px;
  color:#382218;
  font:700 19px/1.25 Georgia,"Times New Roman",serif;
}

.im-cart57-totals{
  margin:0;
}

.im-cart57-totals > div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:6px 0;
  color:#4f3b30;
  font-size:12px;
}

.im-cart57-totals dt,
.im-cart57-totals dd{
  margin:0;
}

.im-cart57-totals dd{
  text-align:right;
  font-weight:800;
}

.im-cart57-total-row{
  margin-top:5px;
  padding-top:11px !important;
  border-top:1px solid #ead8bd;
  color:#312017 !important;
  font-size:13px !important;
  font-weight:900;
}

.im-cart57-delivery-note{
  margin:10px 0 0;
  color:#8a7466;
  font-size:9px;
  line-height:1.45;
}

.im-cart57-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:20px;
}

.im-cart57-continue,
.im-cart57-checkout{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:0;
  border-radius:22px;
  padding:10px 19px;
  font-size:10px;
  line-height:1;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
}

.im-cart57-continue{
  background:#c96d0a;
  color:#fff;
}

.im-cart57-continue:hover{
  background:#ab5804;
  color:#fff;
}

.im-cart57-checkout{
  background:#392116;
  color:#fff;
}

.im-cart57-checkout:hover{
  background:#21130d;
  color:#fff;
}

.im-cart57-checkout span{
  font-size:15px;
}

@media(max-width:780px){
  .im-cart57{
    padding:12px;
  }

  .im-cart57-dialog{
    width:calc(100vw - 24px);
    max-height:calc(100vh - 24px);
  }

  .im-cart57-grid{
    grid-template-columns:1fr;
    padding:20px;
  }

  .im-cart57-product{
    grid-template-columns:125px minmax(0,1fr);
    min-height:0;
    padding:0 0 20px;
    border-right:0;
    border-bottom:1px solid #ded3c4;
  }

  .im-cart57-product-image{
    width:125px;
    height:145px;
  }

  .im-cart57-summary{
    padding:20px 0 0;
  }
}

@media(max-width:480px){
  .im-cart57-status{
    align-items:flex-start;
    font-size:12px;
  }

  .im-cart57-product{
    grid-template-columns:95px minmax(0,1fr);
    gap:14px;
  }

  .im-cart57-product-image{
    width:95px;
    height:115px;
  }

  .im-cart57-product-info h3{
    font-size:15px;
  }

  .im-cart57-buttons{
    flex-direction:column;
  }

  .im-cart57-continue,
  .im-cart57-checkout{
    width:100%;
  }
}


/* ==========================================================
   V5.43.58 — ACCUEIL PLUS COMPACT / BOUTIQUE HARMONISÉE
   ========================================================== */

/* Les sections de l'accueil respirent toujours, mais moins qu'avant. */
.home main > .section{
  padding-top:26px !important;
  padding-bottom:26px !important;
}

.home .im-home51-products-section{
  padding-top:24px !important;
  padding-bottom:24px !important;
}

.home .im-home39-pickup-section{
  padding-top:20px !important;
  padding-bottom:20px !important;
}

.home .im-home58-categories-section{
  padding-top:24px !important;
  padding-bottom:24px !important;
}

.home .im-home39-links-section{
  padding-top:24px !important;
  padding-bottom:28px !important;
}

.home .im-home51-products-head{
  margin-bottom:13px;
}

.home .im-home58-categories-section .section-title{
  margin-bottom:6px;
}

.home .im-home58-categories-section .section-intro{
  margin-bottom:20px;
}

/*
 * Si 8 produits sont demandés, ils s'affichent en 2 lignes de 4
 * au lieu de créer 8 petites colonnes.
 */
.home .im-home51-products-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

/* Même zone média / actions que dans la Boutique. */
.home .im-home58-media{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#fbf5eb;
}

.home .im-home58-media .im-home51-product-image{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  padding:12px;
}

.home .im-home58-media .im-home51-product-image img{
  display:block;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  margin:0 !important;
}

.home .im-home58-media .im-home51-sale{
  z-index:3;
}

/* Les actions sont identiques à celles de la grille boutique. */
.home .im-home58-media:hover .im-shop56-actions,
.home .im-home58-media:focus-within .im-shop56-actions{
  opacity:1;
  transform:translateY(0);
}

/* L'ancienne hauteur fixe ne doit plus perturber le média carré. */
.home .im-home58-media .im-home51-product-image{
  height:100% !important;
}

/* Le flip globalement désactivé = aucune image secondaire n'est rendue,
   donc les actions Panier / Œil restent disponibles sans changement d'image. */

@media(max-width:980px){
  .home .im-home51-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .home main > .section{
    padding-top:22px !important;
    padding-bottom:22px !important;
  }
}

@media(max-width:620px){
  .home .im-home51-products-grid{
    grid-template-columns:1fr !important;
  }

  .home main > .section{
    padding-top:18px !important;
    padding-bottom:18px !important;
  }
}


/* ==========================================================
   ARIEGE-MASALA V5.43.60
   Accueil : hero moins haut + menu principal resserré
   Aucun autre élément du thème n'est modifié.
   ========================================================== */

@media (min-width: 901px){

  /* Hero d'accueil : réduction d'environ 22 % de la hauteur */
  body.home .hero,
  body.front-page .hero{
    min-height:390px !important;
  }

  /* Menu principal : éléments rapprochés et recentrés */
  .im-main-menu{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    justify-content:center !important;
    gap:36px !important;
    padding:0 18px !important;
  }

  .im-main-menu a{
    padding-left:7px !important;
    padding-right:7px !important;
  }
}


/* ==========================================================
   ARIEGE-MASALA V5.43.61
   Ruptures : fin de liste + alerte retour en stock
   ========================================================== */
.woocommerce ul.products li.product.outofstock,
.woocommerce-page ul.products li.product.outofstock{opacity:.92}

.am-backinstock{
  margin:18px 0 8px;
  padding:18px;
  border:1px solid #ead8bc;
  border-radius:8px;
  background:#fff8ee;
}
.am-backinstock h3{
  margin:0 0 7px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
}
.am-backinstock p{margin:0 0 12px;font-size:13px;line-height:1.5}
.am-backinstock-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.am-backinstock-form input[type="email"]{
  flex:1 1 260px;min-width:220px;padding:11px 12px;
  border:1px solid #d9c7ac;border-radius:5px;background:#fff;
}
.am-backinstock-form button{
  border:0;border-radius:5px;padding:11px 16px;
  background:#d58a21;color:#fff;font-weight:700;cursor:pointer;
}
.am-backinstock-msg{margin-top:10px;font-size:12px}
.am-backinstock-msg.success{color:#2f7a38}
.am-backinstock-msg.error{color:#b33b2d}


/* ==========================================================
   ARIEGE-MASALA V5.43.62 — CHECKOUT
   ========================================================== */

/* ---------- Vraies cartes de livraison ---------- */
.im-checkout62-services{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0 0 10px;
  overflow:hidden;
  border:1px solid #e4d1b2;
  border-radius:9px;
  background:#fffdf8;
}

.im-checkout62-service{
  appearance:none;
  -webkit-appearance:none;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:76px;
  padding:12px 18px;
  border:0;
  border-right:1px solid #eadbc5;
  border-radius:0;
  background:#fffdf8;
  color:#4a3327;
  text-align:left;
  cursor:pointer;
  transition:background .16s ease,box-shadow .16s ease,color .16s ease;
}

.im-checkout62-service:last-child{border-right:0}

.im-checkout62-service:hover:not(:disabled){
  background:#fff5e7;
}

.im-checkout62-service.is-selected{
  position:relative;
  z-index:2;
  background:#fff1dc;
  box-shadow:inset 0 0 0 2px #d98b17;
}

.im-checkout62-service.is-unavailable{
  background:#f5f2ee;
  opacity:.55;
  cursor:not-allowed;
}

.im-checkout62-service-icon{
  width:28px;
  height:28px;
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:25px 25px;
}

/* SVG inline : pas d'emoji système */
.im-icon-pin{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d77d0d' stroke-width='1.8'%3E%3Cpath d='M20 10c0 5-8 12-8 12S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}
.im-icon-car{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d77d0d' stroke-width='1.8'%3E%3Cpath d='M5 17h14l1-5-2-5H6l-2 5 1 5Z'/%3E%3Cpath d='M7 17v2M17 17v2M4 12h16'/%3E%3Ccircle cx='8' cy='14.5' r='1'/%3E%3Ccircle cx='16' cy='14.5' r='1'/%3E%3C/svg%3E");
}
.im-icon-box{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d77d0d' stroke-width='1.8'%3E%3Cpath d='m4 7 8-4 8 4-8 4-8-4Z'/%3E%3Cpath d='M4 7v10l8 4 8-4V7M12 11v10'/%3E%3C/svg%3E");
}

.im-checkout62-service-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

.im-checkout62-service-copy strong{
  color:#3a281e;
  font-size:11px;
  line-height:1.25;
}

.im-checkout62-service-copy small{
  color:#806a5b;
  font-size:9px;
  line-height:1.35;
}

.im-checkout62-service-status{
  margin-top:3px;
  color:#b3650a;
  font-size:8.5px;
  line-height:1.2;
  font-style:normal;
  font-weight:800;
}

.im-checkout62-service.is-selected .im-checkout62-service-status{
  color:#47833d;
}

.im-checkout62-selected{
  display:flex;
  align-items:center;
  gap:6px;
  margin:0 0 18px;
  padding:0 2px;
  min-height:18px;
  color:#7a6555;
  font-size:9.5px;
}

.im-checkout62-selected-value{
  color:#3b291f;
}

/*
 * La vraie liste WooCommerce reste dans le DOM et pilote tarifs/totaux,
 * mais devient invisible seulement quand notre JS a bien initialisé les cartes.
 */
html.im-checkout62-ready body.woocommerce-checkout
#order_review .woocommerce-shipping-methods,
html.im-checkout62-ready body.woocommerce-checkout
#order_review #shipping_method{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* Nettoie l'ancien bandeau bleu de livraison s'il est encore injecté par cache/plugin. */
.im-checkout38-content > .woocommerce > .woocommerce-info:first-child:not(.woocommerce-form-coupon-toggle .woocommerce-info){
  display:none !important;
}

/* ---------- Coupon : icône étiquette Ariège-Masala ---------- */
.im-checkout38-content .woocommerce-form-coupon-toggle .woocommerce-info{
  position:relative !important;
  padding-left:42px !important;
}

.im-checkout38-content .woocommerce-form-coupon-toggle .woocommerce-info::before{
  content:"" !important;
  width:18px !important;
  height:18px !important;
  top:50% !important;
  left:13px !important;
  transform:translateY(-50%) !important;
  background-color:transparent !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d77d0d' stroke-width='1.9'%3E%3Cpath d='M20 12 12 20 4 12V4h8l8 8Z'/%3E%3Ccircle cx='9' cy='9' r='1.3'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:18px 18px !important;
  border-radius:0 !important;
}

/* Le formulaire du coupon reprend le même style */
.im-checkout38-content form.checkout_coupon{
  margin:0 0 16px !important;
  padding:13px !important;
  border:1px solid #e1cba9 !important;
  border-radius:7px !important;
  background:#fffdf8 !important;
}

.im-checkout38-content form.checkout_coupon .form-row{
  margin-bottom:0 !important;
}

/* ---------- Petites finitions du récapitulatif ---------- */
.im-checkout38-content #order_review_heading{
  color:#382218 !important;
}

.im-checkout38-content .woocommerce-checkout-review-order-table .shipping th,
.im-checkout38-content .woocommerce-checkout-review-order-table .shipping td{
  vertical-align:middle !important;
}

/* Mobile */
@media(max-width:760px){
  .im-checkout62-services{
    grid-template-columns:1fr;
  }

  .im-checkout62-service{
    border-right:0;
    border-bottom:1px solid #eadbc5;
  }

  .im-checkout62-service:last-child{
    border-bottom:0;
  }
}


/* ==========================================================
   ARIEGE-MASALA V5.43.63 — CHECKOUT CORRIGÉ
   ========================================================== */

/* 1. Masque réellement le vieux bandeau WooCommerce bleu de livraison.
      Le bloc coupon n'est pas concerné car il est imbriqué dans
      .woocommerce-form-coupon-toggle. */
body.page-template-template-checkout-v54338 .im-checkout38-content > .woocommerce > .woocommerce-info,
body.page-template-template-checkout-v54338 .im-checkout38-content > .woocommerce-info,
body.woocommerce-checkout .im-checkout38-content > .woocommerce > .woocommerce-info{
    display:none !important;
}

/* 2. Les cartes de livraison sont beaucoup plus explicites au clic. */
.im-checkout62-service{
    position:relative;
}
.im-checkout62-service.is-selected::after{
    content:"✓";
    position:absolute;
    top:8px;
    right:10px;
    width:19px;
    height:19px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#d98b17;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.im-checkout62-service:not(.is-unavailable):not(.is-selected){
    box-shadow:inset 0 0 0 1px rgba(217,139,23,.08);
}

/* 3. Pays / Région : champ volontairement compact. */
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field{
    width:220px !important;
    max-width:100% !important;
    float:none !important;
    clear:both !important;
}

body.woocommerce-checkout #billing_country_field .woocommerce-input-wrapper,
body.woocommerce-checkout #shipping_country_field .woocommerce-input-wrapper{
    display:block !important;
    width:100% !important;
}

body.woocommerce-checkout #billing_country_field .select2-container,
body.woocommerce-checkout #shipping_country_field .select2-container{
    width:100% !important;
    max-width:220px !important;
}

body.woocommerce-checkout #billing_country_field .select2-selection--single,
body.woocommerce-checkout #shipping_country_field .select2-selection--single{
    height:38px !important;
    min-height:38px !important;
    border:1px solid #ddc5a5 !important;
    border-radius:5px !important;
    background:#fffdf8 !important;
}

body.woocommerce-checkout #billing_country_field .select2-selection__rendered,
body.woocommerce-checkout #shipping_country_field .select2-selection__rendered{
    height:36px !important;
    line-height:36px !important;
    padding-left:10px !important;
    padding-right:28px !important;
    font-size:12px !important;
    font-weight:600 !important;
    color:#3a281e !important;
}

body.woocommerce-checkout #billing_country_field .select2-selection__arrow,
body.woocommerce-checkout #shipping_country_field .select2-selection__arrow{
    height:36px !important;
}

/* Cas où WooCommerce affiche un select natif au lieu de Select2. */
body.woocommerce-checkout #billing_country,
body.woocommerce-checkout #shipping_country{
    width:220px !important;
    max-width:100% !important;
    height:38px !important;
    padding:5px 28px 5px 10px !important;
    font-size:12px !important;
}

/* Mobile : le pays reprend toute la largeur disponible. */
@media(max-width:620px){
    body.woocommerce-checkout #billing_country_field,
    body.woocommerce-checkout #shipping_country_field,
    body.woocommerce-checkout #billing_country_field .select2-container,
    body.woocommerce-checkout #shipping_country_field .select2-container,
    body.woocommerce-checkout #billing_country,
    body.woocommerce-checkout #shipping_country{
        width:100% !important;
        max-width:100% !important;
    }
}


/* ==========================================================
   ARIEGE-MASALA V5.43.65 — CHECKOUT : TOTAUX DYNAMIQUES
   ========================================================== */

/*
 * Les lignes WooCommerce originales "Sous-total" et "Livraison" restent
 * techniquement dans la page pour le calcul, mais sont masquées au profit
 * d'un résumé plus lisible et toujours rafraîchi par WooCommerce.
 */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-subtotal,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping{
    display:none !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-products-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-products-total td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-shipping-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-shipping-total td{
    padding:11px 0 !important;
    border:0 !important;
    border-bottom:1px solid #e8dccd !important;
    background:transparent !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-products-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-shipping-total th{
    color:#4e3a2e !important;
    font-weight:700 !important;
    text-align:left !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-products-total td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-shipping-total td{
    color:#2f1e16 !important;
    font-weight:800 !important;
    text-align:right !important;
    white-space:nowrap !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.am-checkout-shipping-total td .am-free-shipping{
    color:#4f843e !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
    padding-top:15px !important;
    padding-bottom:13px !important;
    border-top:2px solid #d7b985 !important;
    border-bottom:0 !important;
    color:#2f1e16 !important;
    font-size:18px !important;
    font-weight:900 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
    text-align:right !important;
}

/* Le libellé du total final est légèrement plus explicite. */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th{
    letter-spacing:.01em;
}


/* ==========================================================
   ARIEGE-MASALA V5.43.66
   Aucun calcul / prix de livraison dans le panier.
   La livraison est calculée uniquement au checkout.
   ========================================================== */

/* Sécurité visuelle : aucune ligne livraison dans la page Panier. */
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals,
body.woocommerce-cart .cart_totals .shipping,
body.woocommerce-cart .cart_totals #shipping_method,
body.woocommerce-cart .woocommerce-shipping-calculator{
    display:none !important;
}


/* ==========================================================
   ARIEGE-MASALA V5.43.67
   Quantité modifiable directement dans le panier
   ========================================================== */

body.woocommerce-cart .quantity{
  display:inline-flex !important;
  align-items:center !important;
  border:1px solid #dcc5a4 !important;
  border-radius:6px !important;
  overflow:hidden !important;
  background:#fff !important;
  vertical-align:middle !important;
}

body.woocommerce-cart .quantity .qty{
  width:46px !important;
  min-width:46px !important;
  height:36px !important;
  padding:0 4px !important;
  border:0 !important;
  border-left:1px solid #ead8bc !important;
  border-right:1px solid #ead8bc !important;
  border-radius:0 !important;
  text-align:center !important;
  font-size:13px !important;
  font-weight:700 !important;
  color:#35241b !important;
  background:#fff !important;
  -moz-appearance:textfield;
}

body.woocommerce-cart .quantity .qty::-webkit-outer-spin-button,
body.woocommerce-cart .quantity .qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

body.woocommerce-cart .am-qty-btn{
  width:34px !important;
  height:36px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff8ee !important;
  color:#b5650c !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

body.woocommerce-cart .am-qty-btn:hover{
  background:#d98b17 !important;
  color:#fff !important;
}

/* Bouton de mise à jour discret mais visible si le thème WooCommerce l'affiche. */
body.woocommerce-cart button[name="update_cart"]{
  margin-top:10px !important;
}

/* Retour visuel pendant l'actualisation automatique */
body.woocommerce-cart .woocommerce-cart-form.am-cart-updating{
  opacity:.72;
  pointer-events:none;
  transition:opacity .15s ease;
}


/* =========================================================
   ARIEGE-MASALA V6.0.1 — PACKS COMPLET
   ========================================================= */
.im-main-menu{gap:48px}
.im-home-packs{padding:44px 0 42px;background:#fffaf2}
.im-home-packs .im-packs-shell{width:min(1120px,calc(100% - 40px));margin:auto}
.im-packs-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.im-packs-head h2{font:700 34px Georgia,serif;margin:0;color:#392318}
.im-packs-head p{margin:5px 0 0;color:#76655a;font-size:13px}
.im-packs-all{color:#a44f12;font-weight:800;font-size:12px;white-space:nowrap}
.im-packs-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.im-pack-card{background:#fff;border:1px solid #e7d7be;border-radius:10px;overflow:hidden;box-shadow:0 7px 20px rgba(58,34,21,.06);display:flex;flex-direction:column}
.im-pack-card-media{position:relative;aspect-ratio:1.18/1;overflow:hidden;background:#f3e9dc}
.im-pack-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.im-pack-card:hover .im-pack-card-media img{transform:scale(1.035)}
.im-pack-badge{position:absolute;left:10px;top:10px;background:#7d6b17;color:white;padding:5px 10px;border-radius:4px;font-size:10px;font-weight:800;letter-spacing:.2px}
.im-pack-card:nth-child(2) .im-pack-badge{background:#a83225}.im-pack-card:nth-child(3) .im-pack-badge{background:#c78000}.im-pack-card:nth-child(4) .im-pack-badge{background:#4d6d18}
.im-pack-card-body{padding:16px;text-align:center;display:flex;flex-direction:column;flex:1}
.im-pack-card h3{font:700 21px Georgia,serif;margin:0 0 8px}.im-pack-card p{font-size:12px;color:#6f5d52;margin:0 0 10px}
.im-pack-meta{display:flex;justify-content:center;gap:13px;font-size:11px;color:#705a48;margin-bottom:10px}.im-pack-price{font:700 20px Georgia,serif;color:#b65018;margin-top:auto}
.im-pack-btn{display:inline-flex;justify-content:center;align-items:center;background:#b5520d;color:#fff;border-radius:5px;padding:9px 15px;margin-top:10px;font-size:11px;font-weight:800}

/* Page Packs */
body.page-packs .site-main,body.page-template-template-packs .site-main{background:#fffaf2}
.im-packs-page{background:#fffaf2;color:#342116}
.im-packs-hero{position:relative;min-height:410px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(28,14,7,.88),rgba(28,14,7,.48) 52%,rgba(28,14,7,.12)),url('assets/images/home-card-boutique-v54350.jpg') center/cover no-repeat}
.im-packs-hero-inner{width:min(1120px,calc(100% - 40px));margin:auto}.im-packs-hero-copy{max-width:520px}
.im-packs-kicker{display:block;color:#efb352;font-size:11px;font-weight:900;letter-spacing:1.4px;margin-bottom:10px}
.im-packs-hero h1{font:700 clamp(42px,5.2vw,68px)/1.02 Georgia,serif;margin:0 0 12px}.im-packs-hero h1 em{display:block;color:#e9a23c;font-style:normal}
.im-packs-hero p{font-size:16px;max-width:490px;color:#f6eee6}.im-packs-hero .btn{margin-top:12px}
.im-packs-section{width:min(1120px,calc(100% - 40px));margin:auto;padding:42px 0}.im-packs-section h2{font:700 34px Georgia,serif;margin:0 0 20px}
.im-packs-benefits{border-top:1px solid #e2d2ba;border-bottom:1px solid #e2d2ba;background:#fffdf9}
.im-packs-benefits-inner{width:min(1120px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:18px 0}
.im-pack-benefit{text-align:center;font-size:11px}.im-pack-benefit strong{display:block;font:700 14px Georgia,serif;margin-bottom:2px}
.im-pack-detail{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:start}
.im-pack-detail-main{display:grid;grid-template-columns:1fr 1fr;gap:24px}.im-pack-detail-photo{border-radius:12px;overflow:hidden;background:#eee}.im-pack-detail-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.im-pack-detail-copy h2{margin:0 0 8px;font:700 32px Georgia,serif}.im-pack-detail-copy .lead{color:#7b4a2c;font:400 17px Georgia,serif;margin:0 0 12px}.im-pack-detail-copy p{font-size:13px}
.im-pack-cta{background:#f6eadb;border:1px solid #ead8bb;padding:16px;border-radius:8px;margin-top:18px}.im-pack-cta strong{font:700 17px Georgia,serif}.im-pack-spicebox{border:1px solid #e4d3ba;background:#fff;border-radius:12px;padding:22px;position:sticky;top:145px}.im-pack-spicebox h3{font:700 24px Georgia,serif;margin:0 0 8px}
.im-spice-row{display:grid;grid-template-columns:90px 1fr 34px;gap:8px;align-items:center;margin:13px 0;font-size:11px}.im-spice-line{height:4px;background:#e9dcc9;border-radius:3px;position:relative}.im-spice-line i{position:absolute;left:0;top:0;height:100%;background:#c87913;border-radius:3px}.im-spice-line b{position:absolute;width:10px;height:10px;border-radius:50%;background:#c87913;top:50%;transform:translate(-50%,-50%)}
.im-pack-products{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-top:20px}.im-pack-product-mini{width:78px;text-align:center;font-size:11px}.im-pack-product-mini img{width:70px;height:90px;object-fit:contain;display:block;margin:auto}.im-pack-product-mini strong{display:block;margin-top:4px}
@media(max-width:900px){.im-packs-grid{grid-template-columns:repeat(2,1fr)}.im-packs-benefits-inner{grid-template-columns:repeat(2,1fr)}.im-pack-detail,.im-pack-detail-main{grid-template-columns:1fr}.im-pack-spicebox{position:static}.im-packs-hero{min-height:360px}}
@media(max-width:560px){.im-packs-head{display:block}.im-packs-all{display:inline-block;margin-top:8px}.im-packs-grid{grid-template-columns:1fr}.im-packs-benefits-inner{grid-template-columns:1fr}.im-packs-hero{min-height:430px}.im-packs-hero h1{font-size:43px}}




/* =========================================================
   ARIEGE-MASALA V6.0.3 — PACKS ACCUEIL HARMONISÉ
   ========================================================= */
.im-home-pack-feature{
  padding:20px 0 !important;
  background:#fffaf2;
}
.im-pack-feature-shell{
  width:min(var(--grid),calc(100% - 36px));
  margin:0 auto;
  display:grid;
  grid-template-columns:.88fr 1.52fr;
  min-height:330px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid #dec49b;
  box-shadow:0 9px 25px rgba(56,31,17,.08);
  background:#2a160f;
}
.im-pack-feature-copy{
  position:relative;
  padding:34px 32px;
  color:#fff9ef;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(90deg,rgba(27,13,7,.99),rgba(42,22,14,.94)),
    url('assets/images/hero-background.jpg') center/cover no-repeat;
}
.im-pack-feature-kicker{
  display:block;
  margin-bottom:9px;
  color:#e6a54c;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.im-pack-feature-copy h2{
  margin:0 0 12px;
  color:#fff;
  font:700 29px/1.06 Georgia,"Times New Roman",serif;
  letter-spacing:0;
}
.im-pack-feature-copy h2 em{
  color:#e7a13e;
  font-style:normal;
}
.im-pack-feature-copy p{
  max-width:285px;
  margin:0 0 17px;
  color:#efe3d9;
  font-size:10.5px;
  line-height:1.5;
}
.im-pack-feature-btn{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:4px;
  background:#b95513;
  color:#fff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.35px;
  box-shadow:none;
}
.im-pack-feature-btn:hover{background:#ca641b;color:#fff}
.im-pack-feature-link{
  display:inline-block;
  margin-top:9px;
  width:max-content;
  color:#e5c9b4;
  font-size:9px;
  font-weight:700;
}
.im-pack-feature-tiles{
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr 1fr;
  gap:2px;
  background:#2a160f;
}
.im-pack-feature-tile{
  position:relative;
  overflow:hidden;
  min-height:164px;
  isolation:isolate;
  background:#2b180f;
}
.im-pack-feature-tile img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .35s ease,filter .35s ease;
}
.im-pack-feature-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(16,7,3,.03) 40%,rgba(20,8,3,.76) 100%);
}
.im-pack-feature-tile:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
  pointer-events:none;
}
.im-pack-feature-tile:hover img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.03);
}
.im-pack-feature-badge{
  position:absolute;
  z-index:2;
  left:10px;
  top:10px;
  display:inline-block;
  padding:4px 7px;
  border-radius:3px;
  color:#fff;
  background:#557016;
  font-size:7px;
  font-weight:900;
  letter-spacing:.3px;
}
.im-pack-feature-tile:nth-child(2) .im-pack-feature-badge{background:#a52d22}
.im-pack-feature-tile:nth-child(3) .im-pack-feature-badge{background:#b87508}
.im-pack-feature-tile:nth-child(4) .im-pack-feature-badge{background:#4e6817}
.im-pack-feature-tile strong{
  position:absolute;
  z-index:2;
  left:12px;
  right:12px;
  bottom:10px;
  color:#fff;
  text-shadow:0 2px 7px rgba(0,0,0,.55);
  font:700 15px/1.08 Georgia,"Times New Roman",serif;
}

/* Le Click & Collect vient immédiatement après les packs. */
.home .im-home-pack-feature + .im-home39-pickup-section{
  padding-top:20px !important;
}

/* Responsive */
@media(max-width:900px){
  .im-pack-feature-shell{grid-template-columns:1fr}
  .im-pack-feature-copy{padding:30px 28px}
  .im-pack-feature-tiles{min-height:360px}
}
@media(max-width:560px){
  .im-home-pack-feature{padding:16px 0 !important}
  .im-pack-feature-shell{width:min(var(--grid),calc(100% - 24px))}
  .im-pack-feature-copy{padding:26px 20px}
  .im-pack-feature-copy h2{font-size:27px}
  .im-pack-feature-copy p{font-size:10.5px}
  .im-pack-feature-tiles{grid-template-columns:1fr 1fr;min-height:300px}
  .im-pack-feature-tile{min-height:150px}
  .im-pack-feature-tile strong{font-size:14px;left:9px;bottom:8px}
  .im-pack-feature-badge{left:8px;top:8px;font-size:6px;padding:4px 5px}
}


/* =========================================================
   V6.0.4 — PAGE PACKS & RECETTES UNIQUEMENT
   Aucun style ci-dessous ne cible l'accueil ni le footer.
   ========================================================= */
.im-packs-v604{background:#fffaf2;color:#392116}
.im-packs-v604 .im-packs-hero-v604{min-height:390px;background:linear-gradient(90deg,rgba(30,14,6,.92) 0%,rgba(30,14,6,.78) 35%,rgba(30,14,6,.18) 67%,rgba(30,14,6,.04) 100%),url('assets/images/packs-recettes-hero-v604.jpg') center/cover no-repeat}
.im-packs-v604 .im-packs-hero-inner,.im-packs-v604 .im-packs-section{width:min(var(--grid),calc(100% - 36px));max-width:1120px}
.im-packs-v604 .im-packs-hero-copy{max-width:490px}.im-packs-v604 .im-packs-hero h1{font-size:clamp(42px,5vw,64px)}
.im-packs-v604 .im-packs-kicker{display:block;color:#c56a16;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
.im-packs-v604 .im-packs-hero .im-packs-kicker{color:#e6a54c}
.im-packs-v604 .im-packs-head h2{margin:0 0 6px;font:700 31px/1.1 Georgia,serif}.im-packs-v604 .im-packs-head p{margin:0;color:#755f51;font-size:12px}
.im-packs-v604 .im-packs-grid-v604{gap:14px}.im-packs-v604 .im-pack-select{appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%;padding:0}
.im-packs-v604 .im-pack-select.is-active{outline:2px solid #b95413;outline-offset:2px}.im-packs-v604 .im-pack-card-media img{width:100%;height:180px;object-fit:cover}
.im-packs-v604 .im-pack-card-body{min-height:220px}.im-packs-v604 .im-pack-card-body h3{font-size:21px}.im-packs-v604 .im-pack-price{font-size:20px}
.im-pack-builder{border-top:1px solid #eadac1;padding-top:34px!important}.im-pack-builder-top{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:24px;align-items:start}
.im-pack-recipe{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(320px,1.05fr);gap:22px}.im-pack-recipe-photo{border-radius:10px;overflow:hidden;background:#eee}.im-pack-recipe-photo img{display:block;width:100%;height:100%;min-height:365px;object-fit:cover}
.im-pack-live-badge{display:inline-flex;background:#b52c21;color:#fff;border-radius:3px;padding:5px 8px;font-size:8px;font-weight:900;letter-spacing:.05em}.im-pack-recipe-copy h2{font:700 34px/1.05 Georgia,serif;margin:9px 0 5px}.im-pack-recipe-copy .lead{font:400 16px Georgia,serif;color:#9d4b24;margin:0 0 13px}.im-pack-facts{display:flex;flex-wrap:wrap;gap:14px;font-size:11px;margin:0 0 16px}.im-pack-recipe-copy>p{font-size:12px;line-height:1.55}.im-pack-recipe-copy .im-pack-cta{margin-top:16px}.im-pack-recipe-copy .im-pack-cta p{min-height:38px}
.im-pack-spicebox-v604{position:static}.im-spice-control{display:grid;grid-template-columns:78px 1fr 42px;gap:8px;align-items:center;margin:12px 0}.im-spice-label{font-size:9px;font-weight:900}.im-spice-control input[type=range]{width:100%;accent-color:#bd5c12}.im-spice-control output{text-align:right;font-size:10px;font-weight:700}.im-masala-preview{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid #eadbc6}.im-masala-bowl{width:66px;height:66px;border-radius:50%;display:block;background:radial-gradient(circle at 45% 42%,#c47824,#91410b 46%,#5b2606 72%);box-shadow:inset 0 0 0 7px #6a3519,0 4px 10px rgba(0,0,0,.16)}.im-masala-preview strong{font:700 15px Georgia,serif}.im-masala-preview p{font-size:10px;margin:4px 0}.im-reset-link{appearance:none;border:0;background:none;padding:0;color:#a84b19;text-decoration:underline;cursor:pointer;font-size:10px}
.im-pack-products-panel{margin-top:30px;border:1px solid #e5d3b7;border-radius:12px;background:#fff;padding:20px}.im-pack-products-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.im-pack-products-head h2{margin:0;font:700 27px Georgia,serif}.im-pack-products-head p{margin:0;font-size:10px;color:#7a6556}.im-pack-products-live{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.im-pack-product-live{display:flex;flex-direction:column;min-width:0;border:1px solid #eadbc7;border-radius:8px;padding:10px;background:#fffaf3}.im-pack-product-live img{width:100%;height:112px;object-fit:contain;margin-bottom:8px}.im-pack-product-live h3{font:700 13px/1.2 Georgia,serif;margin:0 0 5px;min-height:31px}.im-pack-product-live .price{color:#a84314;font-weight:800;font-size:12px;margin-top:auto}.im-pack-product-live-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.im-pack-product-live-actions a,.im-pack-product-live-actions button{display:flex;align-items:center;justify-content:center;min-height:30px;padding:5px 7px;border:1px solid #b9571a;border-radius:4px;background:#fff;color:#8d3e14;font-size:8px;font-weight:800;cursor:pointer}.im-pack-product-live-actions .add_to_cart_button{background:#b9571a;color:#fff}.im-pack-empty{grid-column:1/-1;padding:22px;text-align:center;border:1px dashed #d7b98e;border-radius:8px;color:#806857}.im-pack-products-actions{text-align:center;margin-top:16px}.im-pack-add-all{border:0;cursor:pointer}
@media(max-width:920px){.im-pack-builder-top,.im-pack-recipe{grid-template-columns:1fr}.im-pack-products-live{grid-template-columns:repeat(3,1fr)}.im-packs-v604 .im-packs-hero-v604{min-height:360px}}
@media(max-width:600px){.im-packs-v604 .im-packs-grid-v604{grid-template-columns:1fr 1fr}.im-packs-v604 .im-pack-card-media img{height:130px}.im-packs-v604 .im-pack-card-body{min-height:200px;padding:12px}.im-packs-v604 .im-pack-card-body h3{font-size:17px}.im-pack-products-live{grid-template-columns:1fr 1fr}.im-pack-products-head{display:block}.im-pack-products-head p{margin-top:7px}.im-pack-recipe-photo img{min-height:280px}.im-packs-v604 .im-packs-hero-v604{min-height:410px;background-position:60% center}}


/* =========================================================
   ARIÈGE-MASALA V6.0.5 — PAGE PACKS & RECETTES
   ========================================================= */

/* HERO : produits réels du catalogue, pas une image géante artificielle */
.im-packs-v605 .im-packs-hero-v605{
  min-height:360px;
  background:
    radial-gradient(circle at 70% 20%,rgba(194,112,28,.13),transparent 30%),
    linear-gradient(115deg,#211009 0%,#32170d 48%,#1c0d08 100%) !important;
  overflow:hidden;
}
.im-packs-v605 .im-packs-hero-inner{
  width:min(var(--grid),calc(100% - 36px));
  min-height:360px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(320px,.85fr) minmax(540px,1.45fr);
  gap:28px;
  align-items:center;
}
.im-packs-v605 .im-packs-hero-copy{max-width:470px;padding:36px 0;color:#fff}
.im-packs-v605 .im-packs-hero-copy h1{font-size:44px;line-height:1.02;margin:0 0 16px}
.im-packs-v605 .im-packs-hero-copy h1 em{display:block;color:#e79a2d;font-style:normal}
.im-packs-v605 .im-packs-hero-copy p{max-width:420px;font-size:14px;line-height:1.55;color:#f3e8dc}
.im-packs-v605 .im-packs-hero-products{
  align-self:stretch;
  display:grid;
  grid-template-columns:1.15fr repeat(5,.72fr);
  gap:10px;
  align-items:end;
  padding:26px 0 18px;
  position:relative;
}
.im-packs-v605 .im-packs-hero-products:before{
  content:"";
  position:absolute;
  inset:14% -20% -10% 5%;
  background:radial-gradient(ellipse at center,rgba(201,119,32,.22),transparent 65%);
  pointer-events:none;
}
.im-packs-v605 .im-packs-hero-box{
  position:relative;z-index:1;
  min-height:235px;
  padding:20px;
  border:1px solid rgba(233,188,123,.38);
  border-radius:10px 10px 4px 4px;
  background:linear-gradient(145deg,#9a5a22,#6e3816);
  color:#f8ead5;
  box-shadow:0 16px 36px rgba(0,0,0,.28);
  display:flex;flex-direction:column;justify-content:flex-end;
}
.im-packs-v605 .im-packs-hero-box:before{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px);
  border-radius:inherit;pointer-events:none
}
.im-packs-hero-box-brand{font-size:9px;letter-spacing:.16em;font-weight:800}
.im-packs-hero-box strong{font:700 24px/1.05 Georgia,serif;margin:6px 0}
.im-packs-hero-box small{font-size:10px;opacity:.85}
.im-packs-v605 .im-packs-hero-product{
  position:relative;z-index:2;
  min-width:0;padding:8px 6px 9px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:rgba(255,250,242,.96);
  box-shadow:0 12px 30px rgba(0,0,0,.24);
  transform-origin:bottom center;
}
.im-packs-v605 .im-packs-hero-product:nth-child(3){transform:translateY(-18px)}
.im-packs-v605 .im-packs-hero-product:nth-child(4){transform:translateY(-7px)}
.im-packs-v605 .im-packs-hero-product:nth-child(5){transform:translateY(-14px)}
.im-packs-v605 .im-packs-hero-product img{display:block;width:100%;height:158px;object-fit:contain}
.im-packs-v605 .im-packs-hero-product span{
  display:block;margin-top:5px;color:#3a2117;font-size:8px;line-height:1.2;text-align:center;font-weight:800;
  max-height:29px;overflow:hidden
}
.im-packs-v605 .im-packs-hero-product.is-unavailable{opacity:.58;filter:grayscale(.35)}

/* Photo recette distincte des cartes pack */
.im-packs-v605 .im-pack-recipe-photo img{
  min-height:390px;
  height:100%;
  object-fit:cover;
  object-position:center;
}

/* Bouton pack complet : plat, comme les boutons produits */
.im-packs-v605 .im-pack-btn-flat,
.im-packs-v605 #am-v605-add-pack{
  background:#b9571a !important;
  background-image:none !important;
  box-shadow:none !important;
  border:1px solid #a84b12 !important;
  border-radius:4px !important;
  min-height:36px !important;
  padding:8px 14px !important;
}

/* Ce pack contient : produit présent OU indisponible, toujours visible */
.im-packs-v605 .im-pack-products-live{grid-template-columns:repeat(5,minmax(0,1fr))}
.im-packs-v605 .im-pack-product-live{position:relative;background:#fffaf3}
.im-packs-v605 .im-pack-product-live.is-unavailable{background:#faf7f1;border-style:dashed}
.im-packs-v605 .im-pack-product-image{height:118px;display:flex;align-items:center;justify-content:center}
.im-packs-v605 .im-pack-product-live img{height:108px;margin:0;object-fit:contain}
.im-packs-v605 .im-pack-product-live.is-unavailable img{opacity:.42;filter:grayscale(.55)}
.im-pack-stock{display:block;margin-top:4px;font-size:9px;font-weight:800}
.im-pack-stock.is-ok{color:#438018}
.im-pack-stock.is-no{color:#b33a2a}
.im-pack-product-live .price.is-empty{color:#9a8879}
.im-pack-disabled{
  display:flex;align-items:center;justify-content:center;min-height:30px;padding:5px 7px;
  border:1px solid #d8cabb;border-radius:4px;background:#eee8df;color:#9b8e82;
  font-size:8px;font-weight:800
}
.im-pack-disabled.is-ghost{background:transparent;color:#aaa;border-color:#ddd}

/* Aperçu Masala : bowl réactif aux 5 curseurs */
.im-packs-v605 .im-masala-bowl{
  --hot:6;--heat:5;--perf:7;--soft:3;--acid:2;--glow:19px;
  position:relative;
  width:76px;height:76px;
  border-radius:50%;
  display:block;
  overflow:hidden;
  background:
    radial-gradient(circle at 34% 30%,
      hsl(calc(34 - var(--hot)*1.7) 88% calc(47% + var(--soft)*1%)),
      hsl(calc(25 + var(--perf)*1.2) 83% 39%) 44%,
      hsl(calc(15 + var(--heat)*1.1) 78% 23%) 74%);
  box-shadow:
    inset 0 0 0 7px #633016,
    inset 0 0 16px rgba(53,19,4,.48),
    0 0 var(--glow) rgba(211,111,24,.38),
    0 5px 13px rgba(0,0,0,.16);
  transition:background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.im-packs-v605 .im-masala-bowl:before{
  content:"";position:absolute;inset:10px;border-radius:50%;
  background:
    radial-gradient(circle at 15% 25%,rgba(255,220,116,.8) 0 1px,transparent 2px),
    radial-gradient(circle at 62% 18%,rgba(93,31,5,.8) 0 1px,transparent 2px),
    radial-gradient(circle at 42% 67%,rgba(255,188,78,.7) 0 1.5px,transparent 2.5px),
    radial-gradient(circle at 78% 58%,rgba(67,21,3,.8) 0 1px,transparent 2px);
  background-size:13px 12px,11px 14px,17px 15px,15px 13px;
  opacity:calc(.38 + var(--perf)*.05);
  mix-blend-mode:soft-light;
  animation:amMasalaDrift 9s linear infinite;
}
.im-packs-v605 .im-masala-bowl i{
  position:absolute;left:25%;top:28%;width:48%;height:25%;border-radius:50%;
  background:rgba(255,218,123,.13);filter:blur(5px);transform:rotate(-18deg);
}
.im-packs-v605 .im-masala-bowl b{
  position:absolute;right:14%;bottom:15%;width:7px;height:7px;border-radius:50%;
  background:#e8bc4b;box-shadow:-22px -15px 0 #a94815,-31px 12px 0 #deb448,5px -24px 0 #87310d;
  opacity:calc(.35 + var(--acid)*.05);
}
@keyframes amMasalaDrift{to{transform:rotate(360deg)}}

/* Responsive */
@media(max-width:980px){
  .im-packs-v605 .im-packs-hero-inner{grid-template-columns:1fr;min-height:unset;padding:28px 0}
  .im-packs-v605 .im-packs-hero-products{grid-template-columns:repeat(5,1fr);padding:0}
  .im-packs-v605 .im-packs-hero-box{display:none}
  .im-packs-v605 .im-packs-hero-product img{height:120px}
}
@media(max-width:600px){
  .im-packs-v605 .im-packs-hero-products{grid-template-columns:repeat(3,1fr)}
  .im-packs-v605 .im-packs-hero-product:nth-child(n){transform:none}
  .im-packs-v605 .im-packs-hero-product:nth-child(n+5){display:none}
  .im-packs-v605 .im-pack-products-live{grid-template-columns:1fr 1fr}
}


/* =========================================================
   V6.0.6 — TEST HERO PACKS & RECETTES — PROPOSITION 1
   Seul le hero de la page Packs & Recettes est modifié.
   ========================================================= */
.im-packs-v605 .im-packs-hero-v606{
  background:#1b0d07 !important;
  padding:0 !important;
  min-height:0 !important;
  overflow:hidden;
}
.im-packs-hero-v606-shell{
  width:100%;
  display:grid;
  grid-template-columns:minmax(370px,40%) minmax(0,60%);
  min-height:350px;
  background:#180b06;
}
.im-packs-hero-v606-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px max(34px,calc((100vw - var(--grid))/2));
  padding-right:38px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 50%,rgba(122,57,15,.22),transparent 45%),
    linear-gradient(110deg,#140906 0%,#221008 100%);
}
.im-packs-hero-v606-copy .im-packs-kicker{
  margin-bottom:10px;
  color:#e4a03a;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.im-packs-hero-v606-copy h1{
  margin:0 0 16px !important;
  color:#fff !important;
  font:700 42px/1.01 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.02em;
}
.im-packs-hero-v606-copy h1 em{
  display:block;
  margin-top:5px;
  color:#e6a13a;
  font-style:normal;
}
.im-packs-hero-v606-copy p{
  max-width:390px;
  margin:0 0 20px;
  color:#f1e6dd;
  font-size:13px;
  line-height:1.55;
}
.im-packs-hero-v606-copy .btn{
  align-self:flex-start;
  min-height:38px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  border-radius:4px;
  box-shadow:none;
}
.im-packs-hero-v606-visual{
  min-height:350px;
  background-image:
    linear-gradient(90deg,rgba(24,11,6,.16),rgba(24,11,6,0) 14%),
    url('assets/images/packs-hero-proposition-1-v606.jpg');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
@media(max-width:900px){
  .im-packs-hero-v606-shell{
    grid-template-columns:1fr;
  }
  .im-packs-hero-v606-copy{
    padding:30px 28px;
  }
  .im-packs-hero-v606-copy h1{
    font-size:36px !important;
  }
  .im-packs-hero-v606-visual{
    min-height:250px;
  }
}
@media(max-width:560px){
  .im-packs-hero-v606-copy{
    padding:25px 20px;
  }
  .im-packs-hero-v606-copy h1{
    font-size:31px !important;
  }
  .im-packs-hero-v606-visual{
    min-height:205px;
    background-position:56% center;
  }
}


/* =========================================================
   V6.0.7 — PACKS & RECETTES : HARMONISATION
   ========================================================= */

/* Titre de section */
.im-packs-v607 .im-packs-picker .im-packs-head h2{
  font-size:30px;
  margin-bottom:7px;
}

/* Cartes packs : uniquement de vrais visuels produits WooCommerce */
.im-packs-v607 .im-pack-real-products{
  background:
    radial-gradient(circle at 50% 85%,rgba(203,134,51,.12),transparent 35%),
    linear-gradient(145deg,#fffaf3,#f2e7d7);
}
.im-packs-v607 .im-pack-real-products-stage{
  position:absolute;
  inset:20px 15px 12px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:2px;
}
.im-packs-v607 .im-pack-real-product{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  width:26%;
  height:92%;
  transform-origin:bottom center;
}
.im-packs-v607 .im-pack-real-product:nth-child(1){transform:translateX(8px) scale(1.02)}
.im-packs-v607 .im-pack-real-product:nth-child(2){transform:translateY(-7px) scale(1.08);z-index:3}
.im-packs-v607 .im-pack-real-product:nth-child(3){transform:translateY(-2px) scale(.96)}
.im-packs-v607 .im-pack-real-product:nth-child(4){transform:translateX(-7px) scale(.9)}
.im-packs-v607 .im-pack-real-product img{
  width:100%;
  height:100%;
  max-height:145px;
  object-fit:contain;
  filter:drop-shadow(0 8px 10px rgba(63,34,17,.18));
}
.im-packs-v607 .im-pack-real-product.is-unavailable{
  opacity:.35;
  filter:grayscale(.7);
}

/* Recette : image et galerie cohérentes */
.im-packs-v607 .im-pack-recipe-media{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.im-packs-v607 .im-pack-recipe-photo{
  aspect-ratio:1.08/1;
  min-height:0 !important;
  overflow:hidden;
  border-radius:8px;
  background:#eee4d6;
}
.im-packs-v607 .im-pack-recipe-photo img{
  width:100%;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover;
  object-position:center;
}
.im-packs-v607 .im-pack-recipe-thumbs{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  margin-top:7px;
}
.im-packs-v607 .im-pack-recipe-thumb{
  padding:0;
  border:1px solid #dec7a7;
  border-radius:5px;
  overflow:hidden;
  background:#fff;
  aspect-ratio:1.35/1;
  cursor:pointer;
}
.im-packs-v607 .im-pack-recipe-thumb img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.im-packs-v607 .im-pack-recipe-thumb.is-active{
  border-color:#b9571a;
  box-shadow:0 0 0 1px #b9571a;
}

/* Produits du pack : même panier + œil que la boutique */
.im-packs-v607 .im-pack-product-live{
  padding:0;
  overflow:hidden;
  background:#fffaf3;
  border:1px solid #ddc8aa;
  border-radius:7px;
}
.im-packs-v607 .im-pack-product-media{
  aspect-ratio:1/1;
  background:#faf4eb;
}
.im-packs-v607 .im-pack-product-media .im-pack-product-image{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
}
.im-packs-v607 .im-pack-product-media .im-pack-product-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  margin:0;
}
.im-packs-v607 .im-pack-product-live.is-unavailable .im-pack-product-media img{
  opacity:.4;
  filter:grayscale(.55);
}
.im-packs-v607 .im-pack-product-info{
  padding:10px 11px 12px;
}
.im-packs-v607 .im-pack-product-info h3{
  min-height:34px;
  margin:0 0 5px;
  font-size:12px;
  line-height:1.2;
}
.im-packs-v607 .im-pack-product-info .price{
  display:block;
  margin-bottom:2px;
  font-size:13px;
  font-weight:800;
  color:#b44f12;
}

/* Sur tactile, garder deux petits boutons visibles sous l'image */
@media(hover:none),(pointer:coarse){
  .im-packs-v607 .im-pack-product-media .im-shop56-actions{
    display:flex !important;
    inset:auto 8px 8px auto;
    width:auto;
    opacity:1;
    transform:none;
  }
  .im-packs-v607 .im-pack-product-media .im-shop56-action{
    width:34px !important;height:34px !important;min-width:34px !important;min-height:34px !important;
  }
}

/* Aperçu Masala : le cercle représente réellement les 5 composantes du mélange */
.im-packs-v607 .im-masala-preview{
  align-items:flex-start;
}
.im-packs-v607 .im-masala-bowl{
  flex:0 0 86px;
  width:86px;
  height:86px;
  transition:background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.im-packs-v607 .im-masala-bowl:before{
  opacity:.55;
}
.im-packs-v607 .im-masala-bowl u{
  position:absolute;
  inset:14px;
  border-radius:50%;
  background:
    radial-gradient(circle at 18% 25%,rgba(73,32,5,.55) 0 1px,transparent 2px),
    radial-gradient(circle at 62% 32%,rgba(255,215,103,.65) 0 1.3px,transparent 2.4px),
    radial-gradient(circle at 38% 73%,rgba(83,71,13,.5) 0 1px,transparent 2px),
    radial-gradient(circle at 76% 68%,rgba(141,42,12,.65) 0 1.2px,transparent 2.2px);
  background-size:11px 13px,14px 12px,12px 15px,13px 11px;
  mix-blend-mode:multiply;
  opacity:.55;
  text-decoration:none;
}
.im-masala-preview-copy{min-width:0}
.im-masala-composition{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin:7px 0 5px;
}
.im-masala-chip{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:3px 6px;
  border:1px solid color-mix(in srgb,var(--chip) 52%,#e1d4c4);
  border-radius:999px;
  background:color-mix(in srgb,var(--chip) 10%,#fff);
  color:#5d3b27;
  font-size:7px;
  font-weight:800;
}
.im-masala-chip:before{
  content:"";
  width:6px;height:6px;border-radius:50%;background:var(--chip);
}

/* Bouton pack complet toujours plat */
.im-packs-v607 #am-v607-add-pack{
  border-radius:4px !important;
  box-shadow:none !important;
}

/* Responsive */
@media(max-width:850px){
  .im-packs-v607 .im-pack-recipe{
    grid-template-columns:1fr;
  }
  .im-packs-v607 .im-pack-recipe-thumbs{
    grid-template-columns:repeat(4,1fr);
  }
}


/* =========================================================
   V6.0.8 — CORRECTIFS RECETTE / MASALA
   ========================================================= */

/* Photo recette : moins zoomée, plus naturelle */
.im-packs-v608 .im-pack-recipe-photo{
  aspect-ratio:1.22/1 !important;
  min-height:0 !important;
  background:#e9dece;
  border-radius:7px;
}
.im-packs-v608 .im-pack-recipe-photo img{
  width:100%;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block;
}

/* Miniatures : clic fiable + retour visuel actif */
.im-packs-v608 .im-pack-recipe-thumbs{
  display:grid !important;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  margin-top:7px;
}
.im-packs-v608 .im-pack-recipe-thumb{
  display:block;
  padding:0 !important;
  border:1px solid #d8c2a4 !important;
  border-radius:5px !important;
  overflow:hidden;
  background:#fff;
  aspect-ratio:1.35/1;
  cursor:pointer;
  box-shadow:none !important;
}
.im-packs-v608 .im-pack-recipe-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.im-packs-v608 .im-pack-recipe-thumb.is-active{
  border-color:#bd5a19 !important;
  box-shadow:0 0 0 1px #bd5a19 !important;
}

/* Ajouter le pack complet : strictement plat, comme Voir le pack */
.im-packs-v608 #am-v608-add-pack,
.im-packs-v608 .im-pack-btn-flat{
  background:#bc570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
  min-height:36px !important;
  padding:9px 15px !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:900 !important;
}
.im-packs-v608 #am-v608-add-pack:hover{
  background:#a94d0d !important;
}

/* Aperçu Masala : suppression complète de la bordure/anneau extérieur */
.im-packs-v608 .im-masala-preview{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr);
  gap:14px;
  align-items:start !important;
}
.im-packs-v608 .im-masala-bowl{
  width:72px !important;
  height:72px !important;
  flex:0 0 72px !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background-clip:padding-box !important;
  overflow:hidden;
  position:relative;
}
.im-packs-v608 .im-masala-bowl:after{
  display:none !important;
}
.im-packs-v608 .im-masala-bowl:before{
  inset:0 !important;
  border:0 !important;
  border-radius:50%;
}
.im-packs-v608 .im-masala-preview-copy{
  min-width:0;
  width:100%;
}
.im-packs-v608 .im-masala-preview-copy strong{
  display:block;
  margin-bottom:4px;
  line-height:1.15;
}
.im-packs-v608 #am-v608-profile-text{
  display:block;
  margin:0 0 6px !important;
  line-height:1.35 !important;
  font-size:9px !important;
  max-width:100%;
  overflow-wrap:anywhere;
}
.im-packs-v608 .im-masala-composition{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin:6px 0 5px;
  max-width:100%;
}
.im-packs-v608 .im-masala-chip{
  white-space:nowrap;
  font-size:6.8px !important;
  padding:3px 5px !important;
}
.im-packs-v608 .im-reset-link{
  display:inline-block;
  margin-top:2px;
}

/* Empêche tout chevauchement du texte sous le cercle */
.im-packs-v608 .im-masala-preview:after{
  content:"";
  display:block;
  clear:both;
}

/* Responsive */
@media(max-width:760px){
  .im-packs-v608 .im-masala-preview{
    grid-template-columns:64px minmax(0,1fr);
    gap:10px;
  }
  .im-packs-v608 .im-masala-bowl{
    width:62px !important;
    height:62px !important;
    flex-basis:62px !important;
  }
}


/* =========================================================
   V6.1.1 — ROSACE AROMATIQUE
   ========================================================= */
.im-packs-v611 .im-pack-spicebox-v611{
  padding:22px 24px 20px !important;
  border:1px solid #ead4b4 !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,#fffdf8 0%,#fffaf1 100%) !important;
  box-shadow:none !important;
}
.im-rosace-head{display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center}
.im-rosace-number{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,#b53f0b,#e56808);color:#fff;
  font:700 24px/1 Georgia,"Times New Roman",serif;
}
.im-rosace-head h3{
  margin:0 0 3px !important;color:#2d160e !important;
  font:700 19px/1.1 Georgia,"Times New Roman",serif !important;
}
.im-rosace-subtitle{margin:0!important;color:#c25114!important;font-size:11px!important}
.im-rosace-separator{height:1px;margin:15px 0;background:#ecd9bd}
.im-rosace-sliders{display:flex;flex-direction:column;gap:7px}
.im-packs-v611 .im-spice-control{
  display:grid!important;grid-template-columns:82px minmax(0,1fr) 42px!important;
  gap:8px!important;align-items:center!important;margin:0!important;
}
.im-packs-v611 .im-spice-label{font-size:9px!important;font-weight:900!important;color:#1e140f!important}
.im-packs-v611 .im-spice-control input[type=range]{width:100%!important;accent-color:#c45c12}
.im-packs-v611 .im-spice-control output{
  font-size:9px!important;color:#1d130e!important;font-weight:800!important;text-align:right
}
.im-rosace-visual{width:250px;max-width:100%;margin:5px auto 10px}
.im-rosace-visual svg{display:block;width:100%;height:auto;overflow:visible}
.am-rosace-petal{
  transform-origin:150px 150px;
  transition:transform .22s ease,opacity .22s ease,filter .22s ease;
  filter:drop-shadow(0 5px 5px rgba(72,35,11,.10));
}
.am-rosace-center{filter:drop-shadow(0 3px 4px rgba(80,37,10,.08))}
.im-rosace-description{
  max-width:285px;margin:5px auto 12px!important;color:#2e2119!important;
  font-size:10.5px!important;line-height:1.45!important;text-align:center
}
.im-rosace-chips{
  display:flex!important;flex-wrap:wrap!important;justify-content:center!important;
  gap:6px!important;max-width:310px;margin:0 auto 11px!important
}
.im-packs-v611 .im-rosace-chips .im-masala-chip{
  display:inline-flex!important;align-items:center!important;gap:5px!important;
  padding:5px 8px!important;border:1px solid #ead1af!important;border-radius:999px!important;
  background:#fffdf8!important;color:#2a1b14!important;font-size:8px!important;
  font-weight:800!important;white-space:nowrap
}
.im-packs-v611 .im-rosace-chips .im-masala-chip:before{display:none!important}
.im-packs-v611 .im-rosace-chips .im-masala-chip i{
  display:block!important;width:8px;height:8px;border-radius:50%;background:var(--chip)
}
.im-rosace-reset{
  display:block!important;margin:0 auto!important;color:#c55417!important;
  font-size:9px!important;text-decoration:underline!important
}
@media(max-width:700px){
  .im-packs-v611 .im-pack-spicebox-v611{padding:18px 16px 17px!important}
  .im-rosace-visual{width:220px}
  .im-packs-v611 .im-spice-control{grid-template-columns:72px minmax(0,1fr) 38px!important}
}


/* =========================================================
   V6.1.2 — RECETTE EN HAUT, PHOTOS EN DESSOUS, ROSACE FIXE
   ========================================================= */
/* disposition générale : colonne recette à gauche / rosace à droite */
.im-packs-v612 .im-pack-builder-top{
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.80fr) !important;
  gap:28px !important;
  align-items:start !important;
}
/* titre + recette d'abord, galerie ensuite */
.im-packs-v612 .im-pack-recipe{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  min-width:0 !important;
}
.im-packs-v612 .im-pack-recipe-copy{order:1 !important; width:100% !important; max-width:none !important;}
.im-packs-v612 .im-pack-recipe-media{order:2 !important; width:100% !important; max-width:none !important;}
.im-packs-v612 .im-pack-recipe-copy h2{font-size:34px !important; line-height:1.04 !important; margin:7px 0 4px !important;}
.im-packs-v612 .im-pack-recipe-copy .lead{font-size:15px !important; margin-bottom:12px !important;}
.im-packs-v612 .im-pack-recipe-copy #am-v612-recipe-intro{max-width:680px !important; font-size:12px !important; line-height:1.55 !important;}
.im-packs-v612 .im-pack-cta{
  max-width:680px !important;
  padding:18px 20px !important;
  border:1px solid #e5cbaa !important;
  border-radius:8px !important;
  background:#fbf0df !important;
}
.im-packs-v612 .im-pack-cta strong{font-size:18px !important; line-height:1.2 !important;}
.im-packs-v612 .im-pack-cta p{font-size:12px !important; line-height:1.65 !important;}
/* bouton strictement plat */
.im-packs-v612 #am-v612-add-pack,
.im-packs-v612 .im-pack-cta .im-pack-btn{
  appearance:none !important;
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
  min-height:38px !important;
  padding:10px 16px !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:#fff !important;
}
.im-packs-v612 #am-v612-add-pack:hover{background:#aa4d0d !important; box-shadow:none !important; transform:none !important;}
/* photo principale plus naturelle, sans bandeau incrusté */
.im-packs-v612 .im-pack-recipe-photo{
  aspect-ratio:1.48/1 !important;
  min-height:0 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#eee2d2 !important;
}
.im-packs-v612 .im-pack-recipe-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center !important;
}
.im-packs-v612 .im-pack-recipe-thumbs{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:8px !important;
  margin-top:8px !important;
}
.im-packs-v612 .im-pack-recipe-thumb{
  padding:0 !important;
  border:1px solid #dec49f !important;
  border-radius:6px !important;
  overflow:hidden !important;
  background:#fff !important;
  aspect-ratio:1.35/1 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.im-packs-v612 .im-pack-recipe-thumb img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important;}
.im-packs-v612 .im-pack-recipe-thumb.is-active{border-color:#bd570f !important; box-shadow:0 0 0 1px #bd570f !important;}
/* rosace : même forme permanente, uniquement intensité/couleur */
.im-packs-v612 .im-pack-spicebox-v611{
  padding:22px 24px 20px !important;
  border:1px solid #ead4b4 !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,#fffdf8 0%,#fffaf1 100%) !important;
  box-shadow:none !important;
}
.im-packs-v612 .im-rosace-visual{width:285px !important; max-width:100% !important; margin:6px auto 10px !important;}
.im-packs-v612 .am-rosace-petal{
  transform-origin:150px 150px !important;
  transition:opacity .20s ease, filter .20s ease !important;
}
/* design plus proche de la maquette */
.im-packs-v612 .im-rosace-head{grid-template-columns:48px 1fr !important; gap:13px !important;}
.im-packs-v612 .im-rosace-head h3{font-size:19px !important; line-height:1.08 !important;}
.im-packs-v612 .im-rosace-number{width:42px !important;height:42px !important;font-size:24px !important;}
.im-packs-v612 .im-spice-control{grid-template-columns:82px minmax(0,1fr) 42px !important; gap:8px !important;}
.im-packs-v612 .im-rosace-description{font-size:10.5px !important; line-height:1.45 !important; max-width:290px !important;}
.im-packs-v612 .im-rosace-chips{max-width:315px !important; gap:6px !important;}
@media(max-width:920px){
  .im-packs-v612 .im-pack-builder-top{grid-template-columns:1fr !important;}
  .im-packs-v612 .im-pack-spicebox-v611{max-width:560px !important;}
}
@media(max-width:560px){
  .im-packs-v612 .im-pack-recipe-thumbs{grid-template-columns:repeat(2,1fr) !important;}
  .im-packs-v612 .im-pack-recipe-copy h2{font-size:29px !important;}
  .im-packs-v612 .im-rosace-visual{width:240px !important;}
}


/* =========================================================
   V6.1.3 — ROSACE FIDÈLE À LA MAQUETTE
   La forme ne change JAMAIS. Seule l'intensité couleur varie.
   ========================================================= */
.im-packs-v613 .im-rosace-visual-v613{
  width:320px !important;
  max-width:100%;
  margin:8px auto 12px !important;
}
.im-packs-v613 .im-rosace-art-v613{
  position:relative;
  width:100%;
  aspect-ratio:645/615;
}
.im-packs-v613 .im-rosace-base-v613,
.im-packs-v613 .im-rosace-layer-v613,
.im-packs-v613 .im-rosace-center-v613{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.im-packs-v613 .im-rosace-base-v613{
  display:block;
  object-fit:contain;
  opacity:.22;
  filter:saturate(.40) brightness(1.08);
}
.im-packs-v613 .im-rosace-layer-v613,
.im-packs-v613 .im-rosace-center-v613{
  background-image:url('assets/images/rosace-aromatique-reference-v613.png');
  background-repeat:no-repeat;
  background-size:100% 100%;
  transition:opacity .18s ease,filter .18s ease;
  pointer-events:none;
}

/* Pétale haut — rouge / Piquant */
.im-packs-v613 .im-rosace-layer-v613.is-piquant{
  clip-path:polygon(39% 5%,62% 5%,66% 20%,63% 38%,57% 50%,50% 54%,43% 50%,36% 38%,34% 20%);
}
/* Pétale droite — orange / Chaleur */
.im-packs-v613 .im-rosace-layer-v613.is-chaleur{
  clip-path:polygon(60% 35%,75% 25%,94% 31%,96% 48%,84% 59%,68% 62%,56% 55%);
}
/* Pétale gauche — brun / Parfumé */
.im-packs-v613 .im-rosace-layer-v613.is-parfume{
  clip-path:polygon(6% 31%,25% 25%,40% 35%,44% 54%,32% 62%,16% 59%,4% 48%);
}
/* Pétale bas-gauche — jaune / Douceur */
.im-packs-v613 .im-rosace-layer-v613.is-douceur{
  clip-path:polygon(28% 57%,44% 54%,50% 64%,43% 83%,28% 94%,14% 87%,13% 71%);
}
/* Pétale bas-droite — vert / Acidité */
.im-packs-v613 .im-rosace-layer-v613.is-acidite{
  clip-path:polygon(50% 64%,56% 54%,72% 57%,87% 71%,86% 87%,72% 94%,57% 83%);
}

/* Centre toujours net et lumineux */
.im-packs-v613 .im-rosace-center-v613{
  clip-path:circle(22% at 50% 56%);
  opacity:1;
  filter:saturate(1.03) brightness(1.03);
}

/* On garde la carte et la disposition de la maquette */
.im-packs-v613 .im-pack-spicebox-v613{
  padding:24px 26px 22px !important;
  border:1px solid #efd6b3 !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#fffdf9,#fffaf2) !important;
  box-shadow:none !important;
}
.im-packs-v613 .im-rosace-head{
  grid-template-columns:52px minmax(0,1fr) !important;
  gap:15px !important;
}
.im-packs-v613 .im-rosace-number{
  width:46px !important;
  height:46px !important;
  font-size:26px !important;
}
.im-packs-v613 .im-rosace-head h3{
  font-size:21px !important;
  line-height:1.05 !important;
}
.im-packs-v613 .im-rosace-subtitle{
  font-size:12px !important;
}
.im-packs-v613 .im-spice-control{
  grid-template-columns:90px minmax(0,1fr) 44px !important;
  gap:10px !important;
}
.im-packs-v613 .im-spice-label{
  font-size:10px !important;
}
.im-packs-v613 .im-spice-control output{
  font-size:10px !important;
}
.im-packs-v613 .im-rosace-description{
  max-width:315px !important;
  font-size:11px !important;
  line-height:1.5 !important;
}
.im-packs-v613 .im-rosace-chips{
  max-width:330px !important;
  gap:7px !important;
}
.im-packs-v613 .im-rosace-chips .im-masala-chip{
  font-size:8.5px !important;
  padding:5px 9px !important;
}

/* Le bouton pack reste définitivement plat */
.im-packs-v613 #am-v613-add-pack{
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
}
.im-packs-v613 #am-v613-add-pack:hover{
  background:#a94d0d !important;
  box-shadow:none !important;
  transform:none !important;
}

@media(max-width:700px){
  .im-packs-v613 .im-rosace-visual-v613{width:280px!important}
  .im-packs-v613 .im-pack-spicebox-v613{padding:18px 16px!important}
}


/* =========================================================
   V6.1.4 — ROSACE LIÉE, PLUS PETITE ET PLUS PROPRE
   ========================================================= */
.im-packs-v614 .im-rosace-visual-v613,
.im-packs-v614 .im-rosace-visual-v614{
  width:255px !important;
  max-width:100%;
  margin:8px auto 10px !important;
}
.im-packs-v614 .im-rosace-art-v614{
  position:relative;
  width:100%;
  aspect-ratio:645/615;
}

/* Anneau visuel qui relie les cinq pétales */
.im-packs-v614 .im-rosace-link-ring-v614{
  position:absolute;
  left:10.5%;
  top:10.5%;
  width:79%;
  height:79%;
  border:1.5px dashed #df7f2f;
  border-radius:50%;
  opacity:.95;
  pointer-events:none;
  z-index:0;
}
.im-packs-v614 .im-rosace-link-ring-v614:before,
.im-packs-v614 .im-rosace-link-ring-v614:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 0,#df7f2f 0 3px,transparent 3.5px),
    radial-gradient(circle at 97% 35%,#df7f2f 0 3px,transparent 3.5px),
    radial-gradient(circle at 79% 91%,#df7f2f 0 3px,transparent 3.5px),
    radial-gradient(circle at 21% 91%,#df7f2f 0 3px,transparent 3.5px),
    radial-gradient(circle at 3% 35%,#df7f2f 0 3px,transparent 3.5px);
}
.im-packs-v614 .im-rosace-link-ring-v614:after{
  transform:rotate(36deg);
  opacity:.18;
}

/* Les pétales restent au-dessus de la ligne et ne changent jamais de forme */
.im-packs-v614 .im-rosace-base-v613,
.im-packs-v614 .im-rosace-base-v614,
.im-packs-v614 .im-rosace-layer-v613,
.im-packs-v614 .im-rosace-layer-v614,
.im-packs-v614 .im-rosace-center-v613,
.im-packs-v614 .im-rosace-center-v614{
  z-index:2;
}
.im-packs-v614 .im-rosace-base-v613,
.im-packs-v614 .im-rosace-base-v614{
  opacity:.16 !important;
  filter:saturate(.35) brightness(1.1) !important;
}

/* Carte rosace un peu plus compacte */
.im-packs-v614 .im-pack-spicebox-v614{
  padding:20px 22px 18px !important;
}
.im-packs-v614 .im-rosace-head{
  grid-template-columns:46px minmax(0,1fr) !important;
  gap:12px !important;
}
.im-packs-v614 .im-rosace-number{
  width:40px !important;
  height:40px !important;
  font-size:23px !important;
}
.im-packs-v614 .im-rosace-head h3{
  font-size:18px !important;
}
.im-packs-v614 .im-rosace-subtitle{
  font-size:10.5px !important;
}
.im-packs-v614 .im-spice-control{
  grid-template-columns:82px minmax(0,1fr) 40px !important;
}
.im-packs-v614 .im-spice-label,
.im-packs-v614 .im-spice-control output{
  font-size:9px !important;
}
.im-packs-v614 .im-rosace-description{
  max-width:280px !important;
  font-size:10px !important;
  margin-top:2px !important;
}

/* Pastilles un peu plus resserrées */
.im-packs-v614 .im-rosace-chips{
  max-width:290px !important;
  gap:5px !important;
}
.im-packs-v614 .im-rosace-chips .im-masala-chip{
  font-size:7.8px !important;
  padding:4px 7px !important;
}

/* Bouton pack complet définitivement plat */
.im-packs-v614 #am-v614-add-pack{
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
}
.im-packs-v614 #am-v614-add-pack:hover{
  background:#a94d0d !important;
  box-shadow:none !important;
  transform:none !important;
}
@media(max-width:700px){
  .im-packs-v614 .im-rosace-visual-v613,
  .im-packs-v614 .im-rosace-visual-v614{width:225px!important}
}


/* =========================================================
   V6.1.5 — ROSACE RÉFÉRENCE + DISPOSITION RECETTE
   ========================================================= */

/* ----- RECETTE : TEXTE D'ABORD, PHOTOS EN DESSOUS ----- */
.im-packs-v615 .im-pack-detail-main-v612,
.im-packs-v615 .im-pack-detail-main-v613,
.im-packs-v615 .im-pack-detail-main-v614,
.im-packs-v615 .im-pack-detail-main-v615{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
}
.im-packs-v615 .im-pack-detail-copy-v612,
.im-packs-v615 .im-pack-detail-copy-v613,
.im-packs-v615 .im-pack-detail-copy-v614,
.im-packs-v615 .im-pack-detail-copy-v615{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 18px !important;
}
.im-packs-v615 .im-pack-recipe-media-v612,
.im-packs-v615 .im-pack-recipe-media-v613,
.im-packs-v615 .im-pack-recipe-media-v614,
.im-packs-v615 .im-pack-recipe-media-v615{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:18px 0 0 !important;
  clear:both !important;
}
.im-packs-v615 .im-pack-recipe-photo-v612,
.im-packs-v615 .im-pack-recipe-photo-v613,
.im-packs-v615 .im-pack-recipe-photo-v614,
.im-packs-v615 .im-pack-recipe-photo-v615{
  width:100% !important;
  aspect-ratio:1.48/1 !important;
  overflow:hidden !important;
  border-radius:8px !important;
}
.im-packs-v615 .im-pack-recipe-photo-v612 img,
.im-packs-v615 .im-pack-recipe-photo-v613 img,
.im-packs-v615 .im-pack-recipe-photo-v614 img,
.im-packs-v615 .im-pack-recipe-photo-v615 img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}
.im-packs-v615 .im-pack-recipe-thumbs-v612,
.im-packs-v615 .im-pack-recipe-thumbs-v613,
.im-packs-v615 .im-pack-recipe-thumbs-v614,
.im-packs-v615 .im-pack-recipe-thumbs-v615{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  margin:8px 0 0 !important;
}
.im-packs-v615 .im-pack-recipe-thumb-v612,
.im-packs-v615 .im-pack-recipe-thumb-v613,
.im-packs-v615 .im-pack-recipe-thumb-v614,
.im-packs-v615 .im-pack-recipe-thumb-v615{
  width:100% !important;
  aspect-ratio:1.35/1 !important;
  margin:0 !important;
}

/* ----- BOUTON PACK : PLAT ----- */
.im-packs-v615 #am-v615-add-pack{
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
  outline:0 !important;
}
.im-packs-v615 #am-v615-add-pack:hover,
.im-packs-v615 #am-v615-add-pack:focus{
  background:#a94d0d !important;
  box-shadow:none !important;
  transform:none !important;
}

/* ----- ROSACE : PLUS PETITE ----- */
.im-packs-v615 .im-rosace-visual-v613,
.im-packs-v615 .im-rosace-visual-v614,
.im-packs-v615 .im-rosace-visual-v615{
  width:225px !important;
  max-width:100% !important;
  margin:7px auto 8px !important;
}

/* L'art de référence est la rosace principale, à pleine couleur. */
.im-packs-v615 .im-rosace-base-v613,
.im-packs-v615 .im-rosace-base-v614,
.im-packs-v615 .im-rosace-base-v615{
  opacity:1 !important;
  filter:none !important;
  z-index:1 !important;
}

/* Plus de cercle CSS supplémentaire :
   les pointillés interrompus + gros points ENTRE les pétales
   sont ceux de l'image de référence choisie. */
.im-packs-v615 .im-rosace-link-ring-v614,
.im-packs-v615 .im-rosace-link-ring-v615{
  display:none !important;
}

/* Les calques servent uniquement de voile blanc.
   La couleur exacte du dessin d'origine reste donc intacte. */
.im-packs-v615 .im-rosace-layer-v613,
.im-packs-v615 .im-rosace-layer-v614,
.im-packs-v615 .im-rosace-layer-v615{
  background-image:none !important;
  background:#fffaf2 !important;
  mix-blend-mode:normal !important;
  z-index:2 !important;
  transition:opacity .18s ease !important;
}
.im-packs-v615 .im-rosace-center-v613,
.im-packs-v615 .im-rosace-center-v614,
.im-packs-v615 .im-rosace-center-v615{
  z-index:3 !important;
  background-image:url('assets/images/rosace-aromatique-reference-v613.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  opacity:1 !important;
  filter:none !important;
}

/* Carte légèrement plus compacte */
.im-packs-v615 .im-pack-spicebox-v615{
  padding:19px 21px 17px !important;
}
.im-packs-v615 .im-rosace-description{
  max-width:270px !important;
  margin:4px auto 10px !important;
}

/* Petit écran */
@media(max-width:700px){
  .im-packs-v615 .im-rosace-visual-v613,
  .im-packs-v615 .im-rosace-visual-v614,
  .im-packs-v615 .im-rosace-visual-v615{
    width:205px !important;
  }
  .im-packs-v615 .im-pack-recipe-thumbs-v612,
  .im-packs-v615 .im-pack-recipe-thumbs-v613,
  .im-packs-v615 .im-pack-recipe-thumbs-v614,
  .im-packs-v615 .im-pack-recipe-thumbs-v615{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* V6.1.6 — correctif structure + rosace fonctionnelle */
.im-packs-v616 .im-pack-recipe{
  display:flex!important; flex-direction:column!important; gap:18px!important;
}
.im-packs-v616 .im-pack-recipe-copy{order:1!important;width:100%!important;max-width:none!important}
.im-packs-v616 .im-pack-recipe-media{order:2!important;width:100%!important;max-width:none!important;margin:0!important}
.im-packs-v616 .im-pack-recipe-photo{width:100%!important;aspect-ratio:1.55/1!important;overflow:hidden!important;border-radius:8px!important}
.im-packs-v616 .im-pack-recipe-photo img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.im-packs-v616 .im-pack-recipe-thumbs{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:8px!important;margin-top:8px!important}
.im-packs-v616 .im-pack-recipe-thumb{width:100%!important;aspect-ratio:1.35/1!important;margin:0!important}
.im-packs-v616 #am-v616-add-pack{background:#bd570f!important;background-image:none!important;border:0!important;border-radius:4px!important;box-shadow:none!important;text-shadow:none!important;transform:none!important}

/* Rosace compacte : géométrie fixe, intensité seulement */
.im-packs-v616 .im-rosace-visual-v613{width:205px!important;max-width:100%!important;margin:6px auto 8px!important}
.im-packs-v616 .im-rosace-art-v614{position:relative!important;width:100%!important;aspect-ratio:645/615!important}
.im-packs-v616 .im-rosace-base-v613,
.im-packs-v616 .im-rosace-layer-v613,
.im-packs-v616 .im-rosace-center-v613{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
.im-packs-v616 .im-rosace-base-v613{display:block!important;object-fit:contain!important;opacity:.14!important;filter:saturate(.45) brightness(1.12)!important}
.im-packs-v616 .im-rosace-layer-v613{
 background-image:url('assets/images/rosace-aromatique-reference-v613.png')!important;
 background-repeat:no-repeat!important;background-size:100% 100%!important;
 background-color:transparent!important;mix-blend-mode:normal!important;
 transition:opacity .16s ease,filter .16s ease!important;pointer-events:none!important;
 transform-origin:50% 56%!important;
}
/* très léger rapprochement visuel vers le centre, forme inchangée */
.im-packs-v616 .im-rosace-layer-v613.is-piquant{transform:translateY(4px)!important}
.im-packs-v616 .im-rosace-layer-v613.is-chaleur{transform:translate(-4px,2px)!important}
.im-packs-v616 .im-rosace-layer-v613.is-parfume{transform:translate(4px,2px)!important}
.im-packs-v616 .im-rosace-layer-v613.is-douceur{transform:translate(3px,-4px)!important}
.im-packs-v616 .im-rosace-layer-v613.is-acidite{transform:translate(-3px,-4px)!important}
.im-packs-v616 .im-rosace-center-v613{
 background-image:url('assets/images/rosace-aromatique-reference-v613.png')!important;
 background-repeat:no-repeat!important;background-size:100% 100%!important;
 clip-path:circle(22% at 50% 56%)!important;opacity:1!important;z-index:4!important;
}
.im-packs-v616 .im-rosace-link-ring-v614,.im-packs-v616 .im-rosace-link-ring-v615{display:none!important}
@media(max-width:700px){
 .im-packs-v616 .im-pack-recipe-thumbs{grid-template-columns:repeat(3,1fr)!important}
 .im-packs-v616 .im-rosace-visual-v613{width:190px!important}
}


/* =========================================================
   V6.1.7 — TRUE SVG ROSACE
   ========================================================= */
.im-packs-v617 .im-rosace-svg-v617{
  width:205px !important;
  max-width:100%;
  margin:6px auto 8px !important;
}
.im-packs-v617 .im-rosace-svg{
  display:block;
  width:100%;
  height:auto;
  overflow:visible;
}
.im-packs-v617 .im-rosace-petal-svg{
  transition:opacity .16s ease,filter .16s ease;
  transform-box:fill-box;
  transform-origin:center;
}
.im-packs-v617 .im-rosace-center-svg{
  filter:drop-shadow(0 2px 2px rgba(91,40,10,.08));
}
.im-packs-v617 .im-rosace-ring,
.im-packs-v617 .im-rosace-dots{
  pointer-events:none;
}

/* recipe positioning — text first, photos below */
.im-packs-v617 .im-pack-recipe{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
}
.im-packs-v617 .im-pack-recipe-copy{
  order:1 !important;
  width:100% !important;
  max-width:none !important;
}
.im-packs-v617 .im-pack-recipe-media{
  order:2 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.im-packs-v617 .im-pack-recipe-photo{
  width:100% !important;
  aspect-ratio:1.55/1 !important;
  overflow:hidden !important;
  border-radius:8px !important;
}
.im-packs-v617 .im-pack-recipe-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.im-packs-v617 .im-pack-recipe-thumbs{
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
  gap:8px !important;
  margin-top:8px !important;
}
.im-packs-v617 .im-pack-recipe-thumb{
  width:100% !important;
  aspect-ratio:1.35/1 !important;
  margin:0 !important;
}
.im-packs-v617 #am-v617-add-pack{
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
}
@media(max-width:700px){
  .im-packs-v617 .im-rosace-svg-v617{width:188px!important}
  .im-packs-v617 .im-pack-recipe-thumbs{grid-template-columns:repeat(3,1fr)!important}
}


/* =========================================================
   V6.1.8 — ROSACE SVG STABLE + GALERIE VERROUILLÉE
   ========================================================= */

/* Recipe: text/recipe above, image and exactly 4 thumbs below */
.im-packs-v618 .im-pack-recipe-v618{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  min-width:0 !important;
}
.im-packs-v618 .im-pack-recipe-copy-v618{
  width:100% !important;
  max-width:none !important;
  order:1 !important;
}
.im-packs-v618 .im-pack-recipe-media-v618{
  width:100% !important;
  min-width:0 !important;
  order:2 !important;
  margin:0 !important;
  overflow:hidden !important;
}
.im-packs-v618 .im-pack-recipe-photo-v618{
  width:100% !important;
  aspect-ratio:1.52/1 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#eadfce !important;
}
.im-packs-v618 .im-pack-recipe-photo-v618 img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
.im-packs-v618 .im-pack-recipe-thumbs-v618{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  margin:8px 0 0 !important;
  overflow:hidden !important;
}
.im-packs-v618 .im-pack-recipe-thumb-v618{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  height:auto !important;
  aspect-ratio:1.35/1 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  border:1px solid #dec49f !important;
  border-radius:6px !important;
  background:#fff !important;
  box-shadow:none !important;
  cursor:pointer !important;
}
.im-packs-v618 .im-pack-recipe-thumb-v618 img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:cover !important;
  margin:0 !important;
}
.im-packs-v618 .im-pack-recipe-thumb-v618.is-active{
  border-color:#bd570f !important;
  box-shadow:0 0 0 1px #bd570f !important;
}

/* Flat pack button */
.im-packs-v618 #am-v618-add-pack{
  background:#bd570f !important;
  background-image:none !important;
  border:0 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  transform:none !important;
}

/* One SVG only. Nothing can escape its viewBox. */
.im-packs-v618 .im-rosace-svg-v618{
  width:210px !important;
  max-width:100% !important;
  margin:7px auto 9px !important;
}
.im-packs-v618 .im-rosace-svg-v618-inner{
  display:block !important;
  width:100% !important;
  height:auto !important;
  overflow:hidden !important;
}
.im-packs-v618 .im-rosace-petal-v618{
  transition:none !important;
}
.im-packs-v618 .im-rosace-petal-v618 .petal-pattern{
  transition:opacity .15s ease !important;
}
.im-packs-v618 .im-rosace-guide-v618,
.im-packs-v618 .im-rosace-guide-dots-v618{
  pointer-events:none !important;
}

/* Prevent old rosace/image layer CSS from interfering */
.im-packs-v618 .im-rosace-base-v613,
.im-packs-v618 .im-rosace-layer-v613,
.im-packs-v618 .im-rosace-center-v613,
.im-packs-v618 .im-rosace-link-ring-v614{
  display:none !important;
}

@media(max-width:700px){
  .im-packs-v618 .im-rosace-svg-v618{width:192px!important}
  .im-packs-v618 .im-pack-recipe-thumbs-v618{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* V6.1.9 — Masala simple sans rosace */
.im-packs-v619 .im-rosace-visual,
.im-packs-v619 .im-rosace-svg-v618{display:none!important}

.im-packs-v619 .im-masala-simple-v619{
 display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;align-items:center;padding-top:6px
}
.im-packs-v619 .im-masala-medallion-v619{
 --masala-h:32;--masala-s:68%;--masala-l:40%;
 position:relative;width:78px;height:78px;border-radius:50%;
 background:
  radial-gradient(circle at 35% 30%,rgba(255,255,255,.18),transparent 28%),
  radial-gradient(circle at 50% 50%,
   hsl(var(--masala-h) var(--masala-s) calc(var(--masala-l) + 8%)) 0 35%,
   hsl(var(--masala-h) var(--masala-s) var(--masala-l)) 58%,
   hsl(var(--masala-h) calc(var(--masala-s) - 10%) calc(var(--masala-l) - 10%)) 100%);
 box-shadow:0 6px 14px rgba(79,36,9,.14)
}
.im-packs-v619 .im-masala-medallion-v619:before{
 content:"";position:absolute;inset:9px;border-radius:50%;
 background:
  radial-gradient(circle,rgba(255,220,144,.65) 0 1px,transparent 1.6px) 0 0/8px 9px,
  radial-gradient(circle,rgba(82,37,7,.45) 0 1px,transparent 1.6px) 3px 4px/10px 8px;
 opacity:.62
}
.im-packs-v619 .im-masala-medallion-core-v619{
 position:absolute;inset:28%;border-radius:50%;background:rgba(255,248,236,.08);
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)
}
.im-packs-v619 .im-masala-simple-copy-v619 strong{
 display:block;margin-bottom:4px;font:700 15px/1.15 Georgia,"Times New Roman",serif;color:#2e190f
}
.im-packs-v619 .im-masala-simple-copy-v619 p{
 margin:0 0 10px!important;color:#5b4536!important;font-size:10px!important;line-height:1.4!important
}
.im-packs-v619 .im-masala-profile-bars-v619{display:flex;flex-direction:column;gap:5px}
.im-packs-v619 .im-masala-profile-bars-v619 span{
 display:block;height:4px;border-radius:999px;transition:width .16s ease,opacity .16s ease
}
.im-packs-v619 .is-piquant{background:#d83a20}
.im-packs-v619 .is-chaleur{background:#f17818}
.im-packs-v619 .is-parfume{background:#84511c}
.im-packs-v619 .is-douceur{background:#e9aa21}
.im-packs-v619 .is-acidite{background:#91a834}
.im-packs-v619 #am-v619-add-pack{
 background:#bd570f!important;background-image:none!important;border:0!important;border-radius:4px!important;
 box-shadow:none!important;text-shadow:none!important;transform:none!important
}
