.rnov-page{
  --vert:#2b7a3c;
  --vert-fonce:#1a4a29;
  --vert-clair:#e7f2e6;
  --olive:#5f9a2f;
  --sable:#e9dfcd;
  --kraft:#c8b393;
  --fond:#faf8f3;
  --blanc:#ffffff;
  --anthracite:#26292b;
  --gris:#5f6a63;
  --gris-clair:#e4e2db;
  --terracotta:#e2661f;
  --terracotta-fonce:#c45314;
  --r:14px;
  --r-sm:10px;
  --r-pill:999px;
  --ombre:0 2px 8px rgba(26,74,41,.06);
  --ombre-md:0 10px 30px rgba(26,74,41,.10);
  --ombre-lg:0 22px 50px rgba(26,74,41,.14);
  --ct:1240px;
  font-family:'Inter',system-ui,sans-serif;
  color:var(--anthracite)!important;
  background:var(--fond);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.rnov-page *,.rnov-page *::before,.rnov-page *::after{box-sizing:border-box;}
.rnov-page img{max-width:100%;display:block;}
.rnov-page h1,.rnov-page h2,.rnov-page h3,.rnov-page h4{font-family:'Manrope',system-ui,sans-serif!important;color:var(--vert-fonce)!important;margin:0;line-height:1.15!important;letter-spacing:-.02em!important;text-wrap:balance;}
.rnov-page p{margin:0;text-wrap:pretty;}
.rnov-page ul{margin:0;padding:0;list-style:none;}
.rnov-page a{color:var(--vert)!important;text-decoration:none!important;transition:color .18s ease;}
.rnov-page a:hover{color:var(--terracotta)!important;}
.rnov-page button{font:inherit;cursor:pointer;border:0;background:none;}
.rnov-page .ct{width:100%;max-width:var(--ct);margin:0 auto;padding:0 20px;}
.rnov-page .sec{padding:64px 0;}
.rnov-page .sec-sable{background:var(--sable);}
.rnov-page .sec-blanc{background:var(--blanc);}

/* Titres de section */
.rnov-page .kicker{font-family:'Manrope',sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--olive)!important;margin-bottom:10px;}
.rnov-page .sec-head{max-width:660px;margin-bottom:36px;}
.rnov-page .sec-head h2{font-size:clamp(26px,3.4vw,40px)!important;font-weight:800!important;}
.rnov-page .sec-head p{margin-top:12px;color:var(--gris)!important;font-size:16px;}
.rnov-page .sec-head-row{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end;justify-content:space-between;margin-bottom:36px;}
.rnov-page .sec-head-row .sec-head{margin-bottom:0;}

/* Boutons */
.rnov-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 26px;border-radius:var(--r-pill);font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;letter-spacing:.01em;transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;}
.rnov-page .btn svg{width:18px;height:18px;flex:none;}
.rnov-page .btn-primary{background:var(--terracotta);color:#fff!important;box-shadow:0 8px 20px rgba(226,102,31,.28);}
.rnov-page .btn-primary:hover{background:var(--terracotta-fonce);color:#fff!important;transform:translateY(-2px);}
.rnov-page .btn-vert{background:var(--vert);color:#fff!important;}
.rnov-page .btn-vert:hover{background:var(--vert-fonce);color:#fff!important;transform:translateY(-2px);}
.rnov-page .btn-outline{border:1.5px solid var(--vert);color:var(--vert)!important;background:transparent;}
.rnov-page .btn-outline:hover{background:var(--vert);color:#fff!important;}
.rnov-page .btn-blanc{background:#fff;color:var(--vert-fonce)!important;}
.rnov-page .btn-blanc:hover{background:var(--sable);color:var(--vert-fonce)!important;transform:translateY(-2px);}
.rnov-page .btn-ghost-blanc{border:1.5px solid rgba(255,255,255,.55);color:#fff!important;}
.rnov-page .btn-ghost-blanc:hover{background:rgba(255,255,255,.14);color:#fff!important;border-color:#fff;}
.rnov-page .btn-sm{padding:10px 18px;font-size:14px;}
.rnov-page .btn-block{width:100%;}

/* Badges */
.rnov-page .badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--r-pill);font-family:'Manrope',sans-serif;font-weight:700;font-size:11px;letter-spacing:.05em;text-transform:uppercase;}
.rnov-page .badge svg{width:13px;height:13px;}
.rnov-page .badge-eco{background:var(--vert-clair);color:var(--vert)!important;}
.rnov-page .badge-mif{background:#fff1ec;color:var(--terracotta-fonce)!important;}
.rnov-page .badge-pro{background:var(--vert);color:#fff!important;}
.rnov-page .badge-stock{background:#eef4ea;color:var(--olive)!important;}
.rnov-page .badge-kraft{background:var(--sable);color:var(--vert-fonce)!important;}

/* Barre d'annonce */
.rnov-page .annonce{background:var(--vert-fonce);color:#eef3ee!important;font-size:13.5px;}
.rnov-page .annonce .ct{display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center;justify-content:center;padding-top:10px;padding-bottom:10px;text-align:center;}
.rnov-page .annonce span{display:inline-flex;align-items:center;gap:7px;}
.rnov-page .annonce svg{width:15px;height:15px;opacity:.85;}
.rnov-page .annonce a{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px;}
.rnov-page .annonce a:hover{color:var(--kraft)!important;}

/* Header */
.rnov-page .hdr{position:sticky;top:0;z-index:40;background:rgba(250,248,243,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--gris-clair);}
.rnov-page .hdr .ct{display:flex;align-items:center;gap:18px;padding-top:14px;padding-bottom:14px;}
.rnov-page .logo{display:flex;align-items:center;gap:11px;margin-right:auto;}
.rnov-page .logo img{height:56px;width:auto;}
.rnov-page .logo-txt{display:none;}
.rnov-page .ftr .logo img{height:64px;background:#fff;padding:6px 10px;border-radius:var(--r-sm);}
.rnov-page .nav{display:flex;align-items:center;gap:30px;}
.rnov-page .nav a{font-family:'Manrope',sans-serif;font-weight:600;font-size:15px;color:var(--anthracite)!important;position:relative;padding:4px 0;}
.rnov-page .nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--terracotta);transition:right .22s ease;}
.rnov-page .nav a:hover{color:var(--vert)!important;}
.rnov-page .nav a:hover::after,.rnov-page .nav a.actif::after{right:0;}
.rnov-page .nav a.actif{color:var(--vert)!important;}
.rnov-page .hdr-act{display:flex;align-items:center;gap:12px;}
.rnov-page .panier{position:relative;width:44px;height:44px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);display:grid;place-items:center;background:#fff;transition:border-color .18s ease,background .18s ease;}
.rnov-page .panier:hover{border-color:var(--vert);background:var(--vert-clair);}
.rnov-page .panier svg{width:20px;height:20px;stroke:var(--vert-fonce);}
.rnov-page .panier b{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:var(--r-pill);background:var(--terracotta);color:#fff!important;font-size:11px;font-weight:700;display:grid;place-items:center;font-family:'Manrope',sans-serif;}
.rnov-page .burger{display:none;width:44px;height:44px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);background:#fff;place-items:center;}
.rnov-page .burger svg{width:20px;height:20px;stroke:var(--vert-fonce);}
.rnov-page .nav-mob{display:none;border-top:1px solid var(--gris-clair);background:var(--blanc);}
.rnov-page .nav-mob.ouvert{display:block;}
.rnov-page .nav-mob a{display:block;padding:14px 20px;border-bottom:1px solid var(--gris-clair);font-family:'Manrope',sans-serif;font-weight:600;}

/* Réassurance */
.rnov-page .reass{background:var(--blanc);border-bottom:1px solid var(--gris-clair);}
.rnov-page .reass-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:26px 0;}
.rnov-page .reass-it{display:flex;gap:13px;align-items:flex-start;}
.rnov-page .reass-it svg{width:26px;height:26px;stroke:var(--olive);flex:none;stroke-width:1.5;}
.rnov-page .reass-it strong{display:block;font-family:'Manrope',sans-serif;font-size:15px;color:var(--vert-fonce)!important;}
.rnov-page .reass-it span{font-size:13.5px;color:var(--gris)!important;}

/* Fil d'ariane */
.rnov-page .ariane{padding:18px 0;font-size:13.5px;color:var(--gris)!important;}
.rnov-page .ariane ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rnov-page .ariane li{display:flex;gap:8px;align-items:center;}
.rnov-page .ariane li+li::before{content:"›";color:var(--kraft)!important;}

/* Cartes produit */
.rnov-page .grille-prod{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.rnov-page .prod{background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.rnov-page .prod:hover{transform:translateY(-4px);box-shadow:var(--ombre-md);border-color:var(--kraft);}
.rnov-page .prod-img{position:relative;aspect-ratio:4/3;background:var(--sable);overflow:hidden;}
.rnov-page .prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.rnov-page .prod:hover .prod-img img{transform:scale(1.05);}
.rnov-page .prod-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;}
.rnov-page .prod-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.rnov-page .prod-meta{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;font-family:'Manrope',sans-serif;}
.rnov-page .prod-meta .marque{color:var(--vert)!important;}
.rnov-page .prod-meta .ref{color:var(--gris)!important;font-weight:500;letter-spacing:.03em;}
.rnov-page .prod h3{font-size:16.5px!important;font-weight:700!important;line-height:1.3!important;}
.rnov-page .prod .desc{font-size:13.5px;color:var(--gris)!important;}
.rnov-page .prix{margin-top:auto;padding-top:10px;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;}
.rnov-page .prix b{font-family:'Manrope',sans-serif;font-size:22px;font-weight:800;color:var(--vert-fonce)!important;}
.rnov-page .prix small{font-size:12.5px;color:var(--gris)!important;}
.rnov-page .prix .ht{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--olive)!important;font-weight:700;}

/* Catégories */
.rnov-page .grille-cat{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.rnov-page .cat{position:relative;border-radius:var(--r);overflow:hidden;min-height:220px;display:flex;align-items:flex-end;color:#fff!important;isolation:isolate;}
.rnov-page .cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s ease;}
.rnov-page .cat::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(26,74,41,.88),rgba(26,74,41,.15));}
.rnov-page .cat:hover img{transform:scale(1.06);}
.rnov-page .cat-in{padding:20px;width:100%;}
.rnov-page .cat h2,.rnov-page .cat h3{color:#fff!important;font-size:20px!important;font-weight:800!important;}
.rnov-page .cat p{font-size:13.5px;color:rgba(255,255,255,.82)!important;margin-top:4px;}
.rnov-page .cat .fleche{display:inline-flex;align-items:center;gap:7px;margin-top:12px;font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;color:#fff!important;}
.rnov-page .cat .fleche svg{width:16px;height:16px;transition:transform .2s ease;}
.rnov-page .cat:hover .fleche svg{transform:translateX(4px);}

/* Bloc PRO */
.rnov-page .pro{background:var(--vert-fonce);color:#e9efe9!important;border-radius:var(--r);overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr;}
.rnov-page .pro-txt{padding:48px;}
.rnov-page .pro h2{color:#fff!important;font-size:clamp(24px,3vw,36px)!important;font-weight:800!important;}
.rnov-page .pro p{margin-top:14px;color:rgba(233,239,233,.78)!important;font-size:15.5px;max-width:52ch;}
.rnov-page .pro-paliers{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 28px;}
.rnov-page .palier{border:1px solid rgba(255,255,255,.2);border-radius:var(--r-sm);padding:14px 18px;min-width:170px;}
.rnov-page .palier b{display:block;font-family:'Manrope',sans-serif;font-size:28px;font-weight:800;color:var(--kraft)!important;line-height:1;}
.rnov-page .palier span{font-size:13px;color:rgba(233,239,233,.75)!important;}
.rnov-page .pro-cta{display:flex;flex-wrap:wrap;gap:12px;}
.rnov-page .pro-img{position:relative;min-height:280px;}
.rnov-page .pro-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* Avis Google */
.rnov-page .ti{background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);box-shadow:var(--ombre);overflow:hidden;}
.rnov-page .ti-head{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--gris-clair);}
.rnov-page .ti-note{display:flex;align-items:center;gap:16px;}
.rnov-page .ti-note .big{font-family:'Manrope',sans-serif;font-size:44px;font-weight:800;color:var(--vert-fonce)!important;line-height:1;}
.rnov-page .etoiles{display:flex;gap:2px;}
.rnov-page .etoiles svg{width:17px;height:17px;fill:#f4b400;}
.rnov-page .ti-note small{display:block;font-size:13px;color:var(--gris)!important;margin-top:4px;}
.rnov-page .ti-google{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--gris)!important;}
.rnov-page .ti-google svg{width:22px;height:22px;}
.rnov-page .ti-piste{overflow:hidden;}
.rnov-page .ti-rail{display:flex;gap:18px;padding:24px;transition:transform .45s cubic-bezier(.4,0,.2,1);}
.rnov-page .avis{flex:0 0 calc((100% - 36px)/3);background:var(--fond);border:1px solid var(--gris-clair);border-radius:var(--r-sm);padding:20px;display:flex;flex-direction:column;gap:11px;}
.rnov-page .avis-top{display:flex;gap:12px;align-items:center;}
.rnov-page .avis-top img{width:42px;height:42px;border-radius:var(--r-pill);object-fit:cover;}
.rnov-page .avis-top strong{display:block;font-family:'Manrope',sans-serif;font-size:15px;color:var(--vert-fonce)!important;}
.rnov-page .avis-top span{font-size:12.5px;color:var(--gris)!important;}
.rnov-page .avis p{font-size:14.5px;color:#3c443f!important;}
.rnov-page .ti-foot{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding:0 24px 24px;}
.rnov-page .ti-nav{display:flex;gap:9px;}
.rnov-page .ti-nav button{width:40px;height:40px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);display:grid;place-items:center;background:#fff;transition:.18s ease;}
.rnov-page .ti-nav button:hover{border-color:var(--vert);background:var(--vert-clair);}
.rnov-page .ti-nav svg{width:18px;height:18px;stroke:var(--vert-fonce);}

/* Articles */
.rnov-page .grille-art{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.rnov-page .art{background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease;}
.rnov-page .art:hover{transform:translateY(-4px);box-shadow:var(--ombre-md);}
.rnov-page .art-img{aspect-ratio:16/10;overflow:hidden;background:var(--sable);}
.rnov-page .art-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.rnov-page .art:hover .art-img img{transform:scale(1.05);}
.rnov-page .art-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1;}
.rnov-page .art-meta{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--gris)!important;}
.rnov-page .art h3{font-size:18px!important;font-weight:700!important;line-height:1.28!important;}
.rnov-page .art p{font-size:14px;color:var(--gris)!important;}
.rnov-page .lien-fleche{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:7px;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;color:var(--terracotta)!important;}
.rnov-page .lien-fleche svg{width:16px;height:16px;transition:transform .2s ease;}
.rnov-page .art:hover .lien-fleche svg,.rnov-page .lien-fleche:hover svg{transform:translateX(4px);}

/* FAQ */
.rnov-page .faq{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.rnov-page .faq-it{background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r-sm);overflow:hidden;transition:border-color .18s ease;}
.rnov-page .faq-it:hover{border-color:var(--kraft);}
.rnov-page .faq-q{width:100%;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:18px 20px;text-align:left;font-family:'Manrope',sans-serif;font-weight:700;font-size:16.5px;color:var(--vert-fonce)!important;}
.rnov-page .faq-q svg{width:20px;height:20px;stroke:var(--olive);flex:none;transition:transform .25s ease;}
.rnov-page .faq-it.ouvert .faq-q svg{transform:rotate(45deg);}
.rnov-page .faq-r{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.rnov-page .faq-r p{padding:0 20px 20px;font-size:15px;color:var(--gris)!important;max-width:70ch;}
.rnov-page .faq-it.ouvert .faq-r{max-height:400px;}

/* Newsletter */
.rnov-page .news{background:var(--sable);border-radius:var(--r);padding:44px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
.rnov-page .news h2{font-size:clamp(22px,2.6vw,30px)!important;font-weight:800!important;}
.rnov-page .news p{margin-top:10px;color:var(--gris)!important;font-size:15px;}
.rnov-page .news-form{display:flex;gap:10px;flex-wrap:wrap;}
.rnov-page .news-form input{flex:1;min-width:220px;padding:14px 18px;border-radius:var(--r-pill);border:1.5px solid var(--kraft);background:#fff;font:inherit;font-size:15px;color:var(--anthracite)!important;}
.rnov-page .news-form input:focus{outline:2px solid var(--vert);outline-offset:1px;border-color:var(--vert);}
.rnov-page .news small{display:block;margin-top:10px;font-size:12.5px;color:var(--gris)!important;}

/* Footer */
.rnov-page .ftr{background:var(--vert-fonce);color:rgba(233,239,233,.75)!important;padding-top:56px;font-size:14.5px;}
.rnov-page .ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:34px;padding-bottom:40px;}
.rnov-page .ftr h4{color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.04em!important;text-transform:uppercase!important;margin-bottom:16px;}
.rnov-page .ftr a{color:rgba(233,239,233,.75)!important;}
.rnov-page .ftr a:hover{color:var(--kraft)!important;}
.rnov-page .ftr li{margin-bottom:9px;}
.rnov-page .ftr .logo{margin-bottom:16px;}
.rnov-page .ftr-coord li{display:flex;gap:10px;align-items:flex-start;}
.rnov-page .ftr-coord svg{width:17px;height:17px;stroke:var(--kraft);flex:none;margin-top:3px;}
.rnov-page .ftr-map{border-radius:var(--r-sm);overflow:hidden;border:1px solid rgba(255,255,255,.14);}
.rnov-page .ftr-map img{width:100%;height:150px;object-fit:cover;}
.rnov-page .ftr-social{display:flex;gap:10px;margin-top:16px;}
.rnov-page .ftr-social a{width:38px;height:38px;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;transition:.18s ease;}
.rnov-page .ftr-social a:hover{background:var(--olive);border-color:var(--olive);}
.rnov-page .ftr-social svg{width:17px;height:17px;stroke:#fff;}
.rnov-page .ftr-bas{border-top:1px solid rgba(255,255,255,.13);padding:20px 0;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;font-size:13px;}
.rnov-page .ftr-bas ul{display:flex;flex-wrap:wrap;gap:18px;}
.rnov-page .ftr-bas li{margin:0;}

/* En-tête de page interne */
.rnov-page .page-head{background:var(--sable);padding:30px 0 46px;}
.rnov-page .page-head h1{font-size:clamp(28px,4vw,44px)!important;font-weight:800!important;}
.rnov-page .page-head p{margin-top:12px;color:#4a544d!important;font-size:16.5px;max-width:62ch;}
.rnov-page .page-head .kicker{margin-bottom:8px;}

/* Filtres catalogue */
.rnov-page .filtres{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-end;justify-content:space-between;background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);padding:20px 22px;margin-bottom:28px;box-shadow:var(--ombre);}
.rnov-page .f-groupe{display:flex;flex-direction:column;gap:9px;}
.rnov-page .f-lbl{font-family:'Manrope',sans-serif;font-weight:700;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--olive)!important;}
.rnov-page .puces{display:flex;flex-wrap:wrap;gap:8px;}
.rnov-page .puce{padding:8px 15px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);background:#fff;font-size:14px;font-weight:600;font-family:'Manrope',sans-serif;color:var(--anthracite)!important;transition:.18s ease;}
.rnov-page .puce:hover{border-color:var(--vert);color:var(--vert)!important;}
.rnov-page .puce.on{background:var(--vert);border-color:var(--vert);color:#fff!important;}
.rnov-page .tri{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--gris)!important;}
.rnov-page .tri select{padding:10px 14px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);background:#fff;font:inherit;font-size:14px;color:var(--anthracite)!important;cursor:pointer;}
.rnov-page .tri select:focus{outline:2px solid var(--vert);outline-offset:1px;}
.rnov-page .cat-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:14.5px;color:var(--gris)!important;}

/* Pagination */
.rnov-page .pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin-top:40px;}
.rnov-page .pagination a{min-width:44px;height:44px;padding:0 14px;border-radius:var(--r-pill);border:1.5px solid var(--gris-clair);background:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;color:var(--anthracite)!important;transition:.18s ease;}
.rnov-page .pagination a:hover{border-color:var(--vert);color:var(--vert)!important;}
.rnov-page .pagination a.on{background:var(--vert);border-color:var(--vert);color:#fff!important;}
.rnov-page .pagination svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;}

/* Bandeau CTA conseil */
.rnov-page .cta-bande{background:var(--vert);color:#fff!important;border-radius:var(--r);padding:38px 42px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;}
.rnov-page .cta-bande h2{color:#fff!important;font-size:clamp(22px,2.6vw,30px)!important;font-weight:800!important;}
.rnov-page .cta-bande p{margin-top:8px;color:rgba(255,255,255,.82)!important;font-size:15.5px;max-width:56ch;}
.rnov-page .cta-bande .actions{display:flex;flex-wrap:wrap;gap:12px;}

/* Article à la une */
.rnov-page .une{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);overflow:hidden;box-shadow:var(--ombre);}
.rnov-page .une img{width:100%;height:100%;min-height:340px;object-fit:cover;}
.rnov-page .une-txt{padding:40px;display:flex;flex-direction:column;gap:14px;justify-content:center;}
.rnov-page .une-txt h2{font-size:clamp(24px,3vw,34px)!important;font-weight:800!important;}
.rnov-page .une-txt p{color:var(--gris)!important;font-size:15.5px;}
.rnov-page .une-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;color:var(--gris)!important;}

/* Formulaire contact */
.rnov-page .contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:start;}
.rnov-page .form-box{background:#fff;border:1px solid var(--gris-clair);border-radius:var(--r);padding:32px;box-shadow:var(--ombre);}
.rnov-page .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;}
.rnov-page .champ{display:flex;flex-direction:column;gap:7px;}
.rnov-page .champ.large{grid-column:1/-1;}
.rnov-page .champ label{font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;color:var(--vert-fonce)!important;}
.rnov-page .champ input,.rnov-page .champ textarea,.rnov-page .champ select{padding:13px 15px;border-radius:var(--r-sm);border:1.5px solid var(--gris-clair);background:var(--fond);font:inherit;font-size:15px;color:var(--anthracite)!important;}
.rnov-page .champ textarea{min-height:140px;resize:vertical;}
.rnov-page .champ input:focus,.rnov-page .champ textarea:focus,.rnov-page .champ select:focus{outline:2px solid var(--vert);outline-offset:1px;border-color:var(--vert);background:#fff;}
.rnov-page .radios{display:flex;gap:10px;flex-wrap:wrap;}
.rnov-page .radios label{display:flex;align-items:center;gap:9px;padding:12px 18px;border:1.5px solid var(--gris-clair);border-radius:var(--r-pill);background:var(--fond);cursor:pointer;font-weight:600;font-family:'Manrope',sans-serif;font-size:14.5px;transition:.18s ease;}
.rnov-page .radios label:hover{border-color:var(--vert);}
.rnov-page .radios input{accent-color:var(--vert);width:17px;height:17px;}
.rnov-page .form-foot{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-top:24px;}
.rnov-page .form-foot small{font-size:12.5px;color:var(--gris)!important;max-width:46ch;}
.rnov-page .infos-box{background:var(--vert-fonce);color:rgba(233,239,233,.8)!important;border-radius:var(--r);padding:30px;}
.rnov-page .infos-box h3{color:#fff!important;font-size:20px!important;font-weight:800!important;margin-bottom:18px;}
.rnov-page .infos-box ul li{display:flex;gap:12px;align-items:flex-start;margin-bottom:15px;font-size:14.5px;}
.rnov-page .infos-box svg{width:18px;height:18px;stroke:var(--kraft);flex:none;margin-top:3px;}
.rnov-page .infos-box strong{display:block;color:#fff!important;font-family:'Manrope',sans-serif;font-size:15px;}
.rnov-page .map-box{margin-top:18px;border-radius:var(--r);overflow:hidden;border:1px solid var(--gris-clair);}
.rnov-page .map-box img{width:100%;height:280px;object-fit:cover;}

/* Hero */
.rnov-page .hero{position:relative;background:var(--sable);overflow:hidden;}
.rnov-page .hero .ct{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:64px;}
.rnov-page .hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.rnov-page .hero h1{font-size:clamp(32px,5vw,56px)!important;font-weight:800!important;line-height:1.05!important;}
.rnov-page .hero h1 em{font-style:normal;color:var(--terracotta)!important;}
.rnov-page .hero .chapo{margin-top:18px;font-size:17px;color:#4a544d!important;max-width:52ch;}
.rnov-page .hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.rnov-page .hero-puces{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;font-size:14px;color:var(--gris)!important;}
.rnov-page .hero-puces li{display:flex;align-items:center;gap:8px;}
.rnov-page .hero-puces svg{width:17px;height:17px;stroke:var(--olive);}
.rnov-page .hero-media{position:relative;}
.rnov-page .hero-media img{border-radius:var(--r);box-shadow:var(--ombre-lg);aspect-ratio:4/3.2;object-fit:cover;width:100%;}
.rnov-page .hero-carte{position:absolute;left:-24px;bottom:24px;background:#fff;border-radius:var(--r-sm);box-shadow:var(--ombre-md);padding:16px 18px;display:flex;gap:13px;align-items:center;max-width:270px;}
.rnov-page .hero-carte svg{width:26px;height:26px;stroke:var(--terracotta);flex:none;stroke-width:1.5;}
.rnov-page .hero-carte strong{display:block;font-family:'Manrope',sans-serif;font-size:15px;color:var(--vert-fonce)!important;}
.rnov-page .hero-carte span{font-size:13px;color:var(--gris)!important;}

@media (max-width:1024px){
  .rnov-page .hero .ct{grid-template-columns:1fr;gap:32px;}
  .rnov-page .une,.rnov-page .contact-grid{grid-template-columns:1fr;}
  .rnov-page .une img{min-height:240px;}
  .rnov-page .hero-carte{left:16px;}
  .rnov-page .grille-prod{grid-template-columns:repeat(2,1fr);}
  .rnov-page .grille-cat{grid-template-columns:repeat(2,1fr);}
  .rnov-page .grille-art{grid-template-columns:repeat(2,1fr);}
  .rnov-page .reass-grid{grid-template-columns:repeat(2,1fr);gap:22px;}
  .rnov-page .pro{grid-template-columns:1fr;}
  .rnov-page .pro-txt{padding:34px;}
  .rnov-page .ftr-grid{grid-template-columns:repeat(2,1fr);}
  .rnov-page .avis{flex:0 0 calc((100% - 18px)/2);}
  .rnov-page .nav{display:none;}
  .rnov-page .burger{display:grid;}
}
@media (max-width:680px){
  .rnov-page .sec{padding:44px 0;}
  .rnov-page .grille-prod,.rnov-page .grille-cat,.rnov-page .grille-art,.rnov-page .reass-grid,.rnov-page .ftr-grid,.rnov-page .news{grid-template-columns:1fr;}
  .rnov-page .avis{flex:0 0 100%;}
  .rnov-page .news{padding:28px;}
  .rnov-page .form-grid{grid-template-columns:1fr;}
  .rnov-page .form-box{padding:22px;}
  .rnov-page .une-txt{padding:24px;}
  .rnov-page .cta-bande{padding:26px;}
  .rnov-page .filtres{padding:18px;}
  .rnov-page .pro-txt{padding:26px;}
  .rnov-page .btn{width:100%;}
  .rnov-page .prix b{font-size:20px;}
}

/* ===================================================================
   Compléments d'intégration (agence) - hors bloc de maquette d'origine
   =================================================================== */
/* En-tête collant : le sticky est porté par le wrapper du modèle d'en-tête
   Elementor, sinon il se décolle au bout de sa propre hauteur. Le décalage
   négatif, posé en JS, laisse la barre d'annonce défiler avant l'accroche. */
.elementor-location-header{position:sticky!important;top:0;z-index:200!important;}
.rnov-page .hdr{position:static!important;}
/* Cartes Google Maps (remplacent les images de substitution) */
.rnov-page .ftr-map iframe{width:100%!important;height:150px!important;border:0!important;display:block!important;}
.rnov-page .map-box iframe{width:100%!important;height:280px!important;border:0!important;display:block!important;}
/* Carrousel d'avis : flèches en bout de course */
.rnov-page .ti-nav button[disabled]{opacity:.35;}
.rnov-page .ti-nav button[disabled]:hover{border-color:var(--gris-clair)!important;background:#fff!important;}
/* Accessibilité clavier */
.rnov-page a:focus-visible,.rnov-page button:focus-visible,.rnov-page input:focus-visible,
.rnov-page select:focus-visible,.rnov-page textarea:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px;}
/* Les widgets HTML ne doivent pas hériter d'une largeur bornée */
.elementor-widget-html>.rnov-page{width:100%;}

/* En mobile, la règle .btn{width:100%} ne doit pas s'appliquer à l'en-tête,
   sinon le bouton « Devis pro » écrase le panier et le burger. */
@media (max-width:680px){
  .rnov-page .hdr .btn{width:auto!important;}
}

/* ===================================================================
   Fluent Forms alignés sur la maquette (charte : formulaire = Fluent Forms
   par shortcode). CSS injecté hors du thème donc !important partout.
   =================================================================== */
.rnov-page .rnov-ff .fluentform{margin-top:22px!important;}
.rnov-page .rnov-ff .fluentform legend{position:absolute!important;}
.rnov-page .rnov-ff .ff-el-group{margin:0!important;}
.rnov-page .rnov-ff .ff-el-input--label{margin-bottom:7px!important;padding:0!important;}
.rnov-page .rnov-ff .ff-el-input--label label{font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:13.5px!important;color:var(--vert-fonce)!important;margin:0!important;line-height:1.3!important;}
.rnov-page .rnov-ff .ff-el-is-required.asterisk-right label:after{color:var(--terracotta)!important;}

/* Champs */
.rnov-page .rnov-ff .ff-el-form-control{width:100%!important;padding:13px 15px!important;border-radius:var(--r-sm)!important;border:1.5px solid var(--gris-clair)!important;background-color:var(--fond)!important;font-family:'Inter',system-ui,sans-serif!important;font-size:15px!important;color:var(--anthracite)!important;box-shadow:none!important;height:auto!important;line-height:1.5!important;}
.rnov-page .rnov-ff textarea.ff-el-form-control{min-height:140px!important;resize:vertical!important;}
.rnov-page .rnov-ff select.ff-el-form-control{appearance:none!important;-webkit-appearance:none!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a4a29' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:16px!important;padding-right:44px!important;}
.rnov-page .rnov-ff .ff-el-form-control:focus{outline:2px solid var(--vert)!important;outline-offset:1px!important;border-color:var(--vert)!important;background-color:#fff!important;}

/* Radios en pilules, comme la maquette */
.rnov-page .rnov-ff .ff-el-input--content{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
.rnov-page .rnov-ff .ff-el-input--content>.ff-el-form-control,
.rnov-page .rnov-ff .ff-el-input--content>textarea,
.rnov-page .rnov-ff .ff-el-input--content>select{flex:1 1 100%!important;}
.rnov-page .rnov-ff .ff-el-form-check-inline{display:block!important;margin:0!important;padding:0!important;}
.rnov-page .rnov-ff .ff-el-form-check-label{display:inline-flex!important;align-items:center!important;gap:9px!important;padding:12px 18px!important;border:1.5px solid var(--gris-clair)!important;border-radius:var(--r-pill)!important;background:var(--fond)!important;cursor:pointer!important;font-family:'Manrope',sans-serif!important;font-weight:600!important;font-size:14.5px!important;color:var(--anthracite)!important;transition:.18s ease!important;margin:0!important;}
.rnov-page .rnov-ff .ff-el-form-check-label:hover{border-color:var(--vert)!important;}
.rnov-page .rnov-ff .ff_item_selected .ff-el-form-check-label{border-color:var(--vert)!important;background:var(--vert-clair)!important;}
.rnov-page .rnov-ff .ff-el-form-check-input{position:static!important;opacity:1!important;width:17px!important;height:17px!important;min-width:17px!important;margin:0!important;accent-color:var(--vert)!important;-webkit-appearance:radio!important;appearance:auto!important;}
.rnov-page .rnov-ff .ff-el-form-check-label:before,.rnov-page .rnov-ff .ff-el-form-check-label:after,
.rnov-page .rnov-ff .ff-el-form-check-input:before,.rnov-page .rnov-ff .ff-el-form-check-input:after{content:none!important;display:none!important;}

/* Bouton d'envoi */
.rnov-page .rnov-ff .ff-btn-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;padding:14px 26px!important;border-radius:var(--r-pill)!important;font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:15px!important;background:var(--terracotta)!important;color:#fff!important;border:0!important;box-shadow:0 8px 20px rgba(226,102,31,.28)!important;transition:background .18s ease,transform .18s ease!important;width:auto!important;}
.rnov-page .rnov-ff .ff-btn-submit:hover{background:var(--terracotta-fonce)!important;transform:translateY(-2px)!important;}

/* Erreurs et confirmation */
.rnov-page .rnov-ff .ff-el-is-error .ff-el-form-control{border-color:#c0392b!important;}
.rnov-page .rnov-ff .error,.rnov-page .rnov-ff .text-danger,.rnov-page .rnov-ff .ff-el-form-check-error{color:#c0392b!important;font-size:13px!important;margin-top:5px!important;}
.rnov-page .rnov-ff .ff-message-success{background:var(--vert-clair)!important;border:1.5px solid var(--vert)!important;color:var(--vert-fonce)!important;border-radius:var(--r-sm)!important;padding:18px 20px!important;font-size:15px!important;}
.rnov-page .rnov-ff-note{display:block!important;margin-top:16px!important;font-size:12.5px!important;color:var(--gris)!important;max-width:46ch!important;}

/* Formulaire de contact : deux colonnes comme .form-grid */
.rnov-page .rnov-ff-contact .fluentform fieldset{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;}
.rnov-page .rnov-ff-contact .ff-el-group.rnov-ff-pleine,
.rnov-page .rnov-ff-contact .ff-el-group.rnov-ff-envoi{grid-column:1/-1!important;}

/* Newsletter : champ et bouton sur une ligne */
.rnov-page .rnov-ff-news .fluentform{margin-top:0!important;}
.rnov-page .rnov-ff-news .fluentform fieldset{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:flex-start!important;}
.rnov-page .rnov-ff-news .ff-el-group.rnov-news-champ{flex:1 1 220px!important;}
.rnov-page .rnov-ff-news .ff-el-group.rnov-news-envoi{flex:0 0 auto!important;}
.rnov-page .rnov-ff-news .ff-el-input--label{display:none!important;}
.rnov-page .rnov-ff-news .ff-el-form-control{border-radius:var(--r-pill)!important;padding:14px 18px!important;border:1.5px solid var(--kraft)!important;background-color:#fff!important;}

@media (max-width:680px){
  .rnov-page .rnov-ff-contact .fluentform fieldset{grid-template-columns:1fr!important;}
  .rnov-page .rnov-ff .ff-btn-submit{width:100%!important;}
}

/* Le bloc coordonnées est sur fond vert foncé : un lien y prend la couleur
   verte des liens et devient illisible. */
.rnov-page .infos-box a{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px;}
.rnov-page .infos-box a:hover{color:var(--kraft)!important;}

/* ===================================================================
   Pages WooCommerce (fiche produit, panier, tunnel, catégorie)
   Habillage de base dans la charte : ces écrans ne sont pas maquettés,
   l'objectif est qu'un clic depuis le catalogue ne dépayse pas.
   Les variables sont redéclarées sur :root, le bloc de maquette ne les
   expose que sous .rnov-page.
   =================================================================== */
:root{
  --vert:#2b7a3c; --vert-fonce:#1a4a29; --vert-clair:#e7f2e6; --olive:#5f9a2f;
  --sable:#e9dfcd; --kraft:#c8b393; --fond:#faf8f3; --anthracite:#26292b;
  --gris:#5f6a63; --gris-clair:#e4e2db; --terracotta:#e2661f; --terracotta-fonce:#c45314;
  --r:14px; --r-sm:10px; --r-pill:999px; --ct:1240px;
}

.woocommerce, .woocommerce-page .site-main, body.woocommerce-cart, body.woocommerce-checkout{
  font-family:'Inter',system-ui,sans-serif!important;
  color:var(--anthracite)!important;
}
.woocommerce h1,.woocommerce h2,.woocommerce h3,
.woocommerce-page h1,.woocommerce-page h2,.woocommerce-page h3{
  font-family:'Manrope',system-ui,sans-serif!important;
  color:var(--vert-fonce)!important;letter-spacing:-.02em!important;
}
/* Les écrans portés par un gabarit JetWooBuilder gèrent eux-mêmes leurs largeurs,
   par des conteneurs Elementor bornés à 1240 px. Brider <main> empêchait leurs
   bandeaux pleine largeur (en-tête de gamme, bandeau de conseil) d'aller au bord.
   La gouttière reste sur les écrans encore servis par le gabarit par défaut de
   WooCommerce : panier, paiement, compte. */
.woocommerce-page .site-main{max-width:none!important;margin:0!important;padding:0!important;}
body.woocommerce-checkout .site-main,
body.woocommerce-account .site-main{max-width:var(--ct)!important;margin:0 auto!important;
  padding:38px 20px 64px!important;}

/* Le thème imprime le titre de la page au-dessus du contenu : sur un écran à
   gabarit, le h1 est déjà dans le bandeau d'en-tête, ça faisait deux titres. */
body.woocommerce-cart .page-header,
body.woocommerce-cart .entry-title,
body.woocommerce-checkout .page-header,
body.woocommerce-checkout .entry-title,
body.woocommerce-account .page-header,
body.woocommerce-account .entry-title,
body.single-product .page-header,
body.single-product .entry-title{display:none!important;}

/* fil d'Ariane */
.woocommerce .woocommerce-breadcrumb{font-size:13.5px!important;color:var(--gris)!important;margin-bottom:26px!important;}
.woocommerce .woocommerce-breadcrumb a{color:var(--vert)!important;text-decoration:none!important;}

/* prix */
.woocommerce div.product p.price,.woocommerce div.product span.price,
.woocommerce ul.products li.product .price{
  color:var(--vert-fonce)!important;font-family:'Manrope',sans-serif!important;font-weight:800!important;
}
.woocommerce div.product p.price{font-size:26px!important;}
.woocommerce .woocommerce-Price-taxLabel{font-size:12px!important;font-weight:700!important;color:var(--olive)!important;}

/* boutons */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce input.button.alt,.woocommerce #place_order{
  background:var(--terracotta)!important;color:#fff!important;border:0!important;
  border-radius:var(--r-pill)!important;padding:14px 26px!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:15px!important;
  text-shadow:none!important;box-shadow:0 8px 20px rgba(226,102,31,.28)!important;
  transition:background .18s ease,transform .18s ease!important;line-height:1.2!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce #place_order:hover{
  background:var(--terracotta-fonce)!important;color:#fff!important;transform:translateY(-2px)!important;
}
.woocommerce ul.products li.product .button,
.woocommerce .cart .button:not(.checkout-button):not([name="apply_coupon"]){
  background:var(--vert)!important;box-shadow:none!important;
}
.woocommerce ul.products li.product .button:hover{background:var(--vert-fonce)!important;}
.woocommerce a.button.wc-backward,.woocommerce .cart button[name="apply_coupon"],
.woocommerce a.added_to_cart{
  background:transparent!important;color:var(--vert)!important;
  border:1.5px solid var(--vert)!important;box-shadow:none!important;
}

/* quantité et champs */
.woocommerce .quantity .qty,.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select:not(.select2-hidden-accessible),
.woocommerce-page form .form-row input.input-text,.woocommerce table.cart td.actions .coupon .input-text{
  padding:12px 14px!important;border:1.5px solid var(--gris-clair)!important;
  border-radius:var(--r-sm)!important;background:var(--fond)!important;
  font-family:'Inter',system-ui,sans-serif!important;font-size:15px!important;
  color:var(--anthracite)!important;box-shadow:none!important;height:auto!important;
}
.woocommerce .quantity .qty:focus,.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:not(.select2-hidden-accessible):focus,
.woocommerce form .form-row textarea:focus{
  outline:2px solid var(--vert)!important;outline-offset:1px!important;border-color:var(--vert)!important;background:#fff!important;
}
.woocommerce form .form-row label,.woocommerce-billing-fields label,.woocommerce-shipping-fields label{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:13.5px!important;
  color:var(--vert-fonce)!important;
}

/* onglets de la fiche produit */
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 22px!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom:1px solid var(--gris-clair)!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent!important;border:0!important;border-radius:0!important;margin:0 26px 0 0!important;padding:0!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:14.5px!important;
  color:var(--gris)!important;padding:12px 0!important;display:inline-block!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--vert-fonce)!important;box-shadow:inset 0 -2px 0 var(--terracotta)!important;
}

/* images de la fiche */
.woocommerce div.product div.images img{border-radius:var(--r)!important;}

/* Grilles de produits WooCommerce, carte par défaut.
   Ces règles ne doivent pas atteindre nos cartes (`li.jet-woo-builder-product`) :
   `object-fit:cover` et `aspect-ratio` sur l'image y écrasaient notre `contain`
   et la faisaient déborder du cadre arrondi. D'où le `:not()`. */
.woocommerce ul.products li.product:not(.jet-woo-builder-product){
  background:#fff!important;border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:0 0 18px!important;overflow:hidden!important;text-align:left!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.woocommerce ul.products li.product:not(.jet-woo-builder-product):hover{transform:translateY(-4px)!important;box-shadow:0 10px 30px rgba(26,74,41,.10)!important;}
.woocommerce ul.products li.product:not(.jet-woo-builder-product) a img{margin:0 0 14px!important;border-radius:0!important;aspect-ratio:4/3!important;object-fit:cover!important;}
.woocommerce ul.products li.product:not(.jet-woo-builder-product) .woocommerce-loop-product__title{
  padding:0 16px!important;font-size:16.5px!important;font-weight:700!important;line-height:1.3!important;
}
.woocommerce ul.products li.product:not(.jet-woo-builder-product) .price,
.woocommerce ul.products li.product:not(.jet-woo-builder-product) .button{margin-left:16px!important;margin-right:16px!important;}

/* tableau du panier */
.woocommerce table.shop_table{border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;}
.woocommerce table.shop_table th{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;color:var(--vert-fonce)!important;
  background:var(--sable)!important;
}
.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-checkout #order_review_heading{
  font-size:20px!important;font-weight:800!important;
}
.woocommerce .cart_totals table.shop_table{background:#fff!important;}

/* messages */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top-color:var(--vert)!important;background:var(--vert-clair)!important;
  border-radius:var(--r-sm)!important;color:var(--vert-fonce)!important;
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--vert)!important;}
.woocommerce-error{background:#fdecea!important;border-top-color:#c0392b!important;color:#8c2b20!important;}
.woocommerce-error::before{color:#c0392b!important;}

/* Liens du contenu WooCommerce, et seulement lui.
   L'ancien sélecteur employait `:not(.button)` : la spécificité de l'argument
   d'un `:not()` s'ajoute à celle de la règle, si bien que le sélecteur pesait
   trois classes et écrasait la charte de l'en-tête. Résultat, sur toutes les
   pages WooCommerce la navigation, le numéro de téléphone, l'icône du panier et
   jusqu'au texte du bouton « Devis pro » passaient en vert.
   L'en-tête et le pied de page sont rendus hors de <main> par les emplacements
   Elementor : cibler <main class="site-main"> les laisse intacts. */
.woocommerce-page main.site-main a{color:var(--vert);}
.woocommerce-page main.site-main a:hover{color:var(--terracotta);}
.woocommerce-page main.site-main a.button,
.woocommerce-page main.site-main a.button:hover,
.woocommerce-page main.site-main a.checkout-button,
.woocommerce-page main.site-main a.checkout-button:hover{color:#fff!important;}

/* titres de produit dans les grilles WooCommerce : sobres, comme sur nos cartes */
.woocommerce main.site-main ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce main.site-main ul.products li.product .woocommerce-loop-product__title{color:var(--vert-fonce)!important;}
.woocommerce main.site-main ul.products li.product a.woocommerce-LoopProduct-link:hover{color:var(--vert)!important;}

/* pastille « ajouté » du catalogue maquette */
.rnov-page a.added_to_cart{
  display:inline-block!important;margin-top:8px!important;font-size:13px!important;
  color:var(--vert)!important;text-decoration:underline!important;
}
.rnov-page .prod .btn.loading{opacity:.7!important;}
.rnov-page .prod .btn.added{background:var(--vert-fonce)!important;}

/* le champ de code promo est écrasé par la mise en page du tableau */
.woocommerce table.cart td.actions .coupon .input-text{width:230px!important;min-width:180px!important;margin-right:10px!important;}
.woocommerce table.cart td.actions{padding:18px!important;}

/* saut de pagination (fenêtre autour de la page courante) */
.rnov-page .pagination-saut{display:inline-flex;align-items:center;padding:0 6px;color:var(--gris)!important;font-weight:700;}

/* Les descriptions du catalogue réel sont bien plus longues que celles de la
   maquette (jusqu'à 230 caractères, importées d'Odoo) : on les borne à trois
   lignes pour que les cartes restent lisibles et de hauteur comparable. */
.rnov-page .prod .desc{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}



/* ===================================================================
   Pastilles produit : lisibilité
   Les tons pastel de la maquette passent tout juste (ou pas) le seuil de
   contraste à 11 px en capitales, et les pastilles se fondent dans la photo
   qu'elles surplombent. Mesuré avant / après :
     marque  7,74 -> 10,22   gamme  5,02 -> 10,22
     éco     4,62 ->  8,87   made in France  4,15 (échec AA) -> 6,01
   Les teintes de la charte sont conservées, seuls le texte et les deux
   pastilles de taxonomie sont renforcés, plus une ombre pour détacher.
   =================================================================== */
.rnov-page .badge{box-shadow:0 1px 3px rgba(26,74,41,.16)!important;}

/* marque et gamme : côte à côte, solides, cliquables */
.rnov-page .prod-taxo{display:flex!important;flex-wrap:wrap!important;gap:6px!important;align-items:flex-start!important;}
.rnov-page .badge-marque{background:var(--vert-fonce)!important;color:#fff!important;text-decoration:none!important;
  transition:background .18s ease,transform .18s ease;}
.rnov-page .badge-marque:hover{background:var(--vert)!important;color:#fff!important;transform:translateY(-1px);}
/* la pastille de gamme est blanche : sur une photo claire, seule une bordure lui
   garde un contour. Le padding est réduit d'un pixel pour compenser sa hauteur. */
.rnov-page .badge-gamme{background:#fff!important;color:var(--vert-fonce)!important;text-decoration:none!important;
  border:1px solid rgba(26,74,41,.22)!important;padding:4px 10px!important;
  box-shadow:0 1px 3px rgba(26,74,41,.16)!important;transition:background .18s ease,color .18s ease,transform .18s ease;}
.rnov-page .badge-gamme:hover{background:var(--vert-fonce)!important;color:#fff!important;transform:translateY(-1px);}

/* texte des pastilles de nature et d'origine, assombri */
.rnov-page .badge-eco{color:var(--vert-fonce)!important;}
.rnov-page .badge-mif{color:#9e3f0c!important;}
.rnov-page .badge-kraft{color:var(--vert-fonce)!important;}

/* Dans la maquette, le titre d'une carte produit était un simple <h3> en vert
   foncé. En le rendant cliquable, il héritait du vert des liens : on le remet
   dans sa couleur d'origine, le survol suffit à signaler le lien. */
.rnov-page .prod h3 a,.rnov-page .art h3 a,.rnov-page .une-txt h2 a{color:var(--vert-fonce)!important;}
.rnov-page .prod h3 a:hover,.rnov-page .art h3 a:hover,.rnov-page .une-txt h2 a:hover{color:var(--vert)!important;}

/* ===================================================================
   Fiche produit (modèle JetWooBuilder)
   =================================================================== */
.rnov-page .fiche-pastilles{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-bottom:18px!important;}
.rnov-page .fiche-retrait{background:var(--fond)!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:22px 24px!important;margin:24px 0 0!important;}
.rnov-page .fiche-retrait ul{display:grid!important;gap:14px!important;margin:0!important;padding:0!important;list-style:none!important;}
.rnov-page .fiche-retrait li{display:flex!important;gap:12px!important;align-items:flex-start!important;
  font-size:14px!important;color:var(--gris)!important;margin:0!important;}
.rnov-page .fiche-retrait svg{width:20px!important;height:20px!important;min-width:20px!important;flex:none!important;
  stroke:var(--olive)!important;margin-top:2px!important;}
.rnov-page .fiche-retrait strong{display:block!important;color:var(--vert-fonce)!important;
  font-family:'Manrope',sans-serif!important;font-size:14.5px!important;font-weight:700!important;margin-bottom:2px!important;}
.rnov-page .fiche-retrait .btn{margin-top:20px!important;}

/* rythme vertical des widgets Jet de la fiche */
[data-elementor-type="jet-woo-builder"] .elementor-widget-jet-single-title{margin-bottom:12px!important;}
[data-elementor-type="jet-woo-builder"] .elementor-widget-jet-single-price{margin-bottom:16px!important;}
[data-elementor-type="jet-woo-builder"] .elementor-widget-jet-single-excerpt{margin-bottom:22px!important;}
[data-elementor-type="jet-woo-builder"] .elementor-widget-jet-single-meta{margin-top:22px!important;}
[data-elementor-type="jet-woo-builder"] .jet-woo-swiper-container,
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery{border-radius:var(--r)!important;overflow:hidden!important;}

/* ===================================================================
   Fiche produit et boucles WooCommerce, suite
   Les boucles portent désormais notre carte validée (modèle d'archive
   JetWooBuilder). La liste WooCommerce devient donc la grille de la maquette,
   et les styles de colonnes du plugin sont neutralisés.
   =================================================================== */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;
  gap:22px!important;margin:0!important;padding:0!important;list-style:none!important;}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;content:none!important;}
.woocommerce ul.products li.jet-woo-builder-product{width:auto!important;max-width:none!important;
  float:none!important;clear:none!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
  transform:none!important;display:flex!important;}
.woocommerce ul.products li.jet-woo-builder-product:hover{transform:none!important;box-shadow:none!important;}
.woocommerce ul.products li.jet-woo-builder-product .rnov-carte-archive,
.woocommerce ul.products li.jet-woo-builder-product .rnov-carte-archive .prod,
.woocommerce ul.products li.jet-woo-builder-product .elementor,
.woocommerce ul.products li.jet-woo-builder-product .e-con,
.woocommerce ul.products li.jet-woo-builder-product .e-con-inner,
.woocommerce ul.products li.jet-woo-builder-product .elementor-widget-shortcode,
.woocommerce ul.products li.jet-woo-builder-product .elementor-shortcode{width:100%!important;height:100%!important;}
.woocommerce ul.products li.jet-woo-builder-product .e-con,
.woocommerce ul.products li.jet-woo-builder-product .e-con-inner{padding:0!important;margin:0!important;}

@media (max-width:1024px){ .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;} }
@media (max-width:680px){ .woocommerce ul.products{grid-template-columns:1fr!important;} }

/* ------- visuel de la fiche : hauteur fixe, image entière, cliquable ------- */
[data-elementor-type="jet-woo-builder"] .jet-single-images__wrap{position:relative!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;overflow:hidden!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery .flex-viewport,
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__wrapper,
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image{height:460px!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image>a{display:block!important;
  height:100%!important;cursor:zoom-in!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image img{width:100%!important;
  height:100%!important;object-fit:contain!important;padding:26px!important;background:#fff!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__trigger{top:14px!important;right:14px!important;
  background:#fff!important;border:1px solid var(--gris-clair)!important;border-radius:var(--r-pill)!important;
  width:38px!important;height:38px!important;line-height:36px!important;text-align:center!important;
  color:var(--vert-fonce)!important;box-shadow:0 2px 6px rgba(26,74,41,.10)!important;}
/* vignettes sous le visuel */
[data-elementor-type="jet-woo-builder"] .flex-control-thumbs{display:flex!important;gap:10px!important;
  margin:12px 0 0!important;padding:0!important;list-style:none!important;}
[data-elementor-type="jet-woo-builder"] .flex-control-thumbs li{width:74px!important;margin:0!important;}
[data-elementor-type="jet-woo-builder"] .flex-control-thumbs img{width:74px!important;height:74px!important;
  object-fit:contain!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r-sm)!important;padding:6px!important;opacity:1!important;cursor:pointer!important;}
[data-elementor-type="jet-woo-builder"] .flex-control-thumbs img.flex-active{border-color:var(--vert)!important;}

@media (max-width:1024px){
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery .flex-viewport,
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__wrapper,
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image{height:380px!important;}
}
@media (max-width:680px){
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery .flex-viewport,
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__wrapper,
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image{height:300px!important;}
  [data-elementor-type="jet-woo-builder"] .woocommerce-product-gallery__image img{padding:16px!important;}
}

/* ------------------------- colonne d'informations ------------------------- */
[data-elementor-type="jet-woo-builder"] .price .woocommerce-price-suffix{font-family:'Inter',system-ui,sans-serif!important;
  font-size:14px!important;font-weight:500!important;color:var(--gris)!important;}
[data-elementor-type="jet-woo-builder"] .jet-single-excerpt,
[data-elementor-type="jet-woo-builder"] .woocommerce-product-details__short-description{font-size:15px!important;
  color:var(--gris)!important;max-width:60ch!important;line-height:1.65!important;}
[data-elementor-type="jet-woo-builder"] form.cart{display:flex!important;flex-wrap:wrap!important;
  gap:12px!important;align-items:stretch!important;margin:0!important;}
[data-elementor-type="jet-woo-builder"] form.cart .quantity{margin:0!important;}
[data-elementor-type="jet-woo-builder"] form.cart .quantity .qty{width:86px!important;height:100%!important;
  min-height:50px!important;text-align:center!important;}
[data-elementor-type="jet-woo-builder"] form.cart .single_add_to_cart_button{flex:1 1 240px!important;min-height:50px!important;}
[data-elementor-type="jet-woo-builder"] .product_meta{font-size:13.5px!important;color:var(--gris)!important;
  border-top:1px solid var(--gris-clair)!important;padding-top:18px!important;margin-top:4px!important;}
[data-elementor-type="jet-woo-builder"] .product_meta>span{display:block!important;margin-bottom:5px!important;}
[data-elementor-type="jet-woo-builder"] .product_meta .sku,
[data-elementor-type="jet-woo-builder"] .product_meta a{font-family:'Manrope',sans-serif!important;font-weight:600!important;}

/* ------------------------------- onglets --------------------------------- */
[data-elementor-type="jet-woo-builder"] .woocommerce-Tabs-panel{max-width:78ch!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-Tabs-panel h2{font-size:22px!important;
  font-weight:800!important;margin-bottom:16px!important;}
[data-elementor-type="jet-woo-builder"] .woocommerce-Tabs-panel p{margin-bottom:12px!important;
  font-size:15px!important;color:#3c443f!important;line-height:1.7!important;}
/* Onglet « Informations complémentaires » : le tableau des attributs.
   WooCommerce le rend en italique et sans cadre ; on le remet dans la charte,
   étiquette en Manrope sur fond sable, valeur en Inter. */
[data-elementor-type="jet-woo-builder"] table.shop_attributes{width:100%!important;
  border-collapse:separate!important;border-spacing:0!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  overflow:hidden!important;margin:0!important;background:#fff!important;font-size:14.5px!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes tr:not(:last-child) th,
[data-elementor-type="jet-woo-builder"] table.shop_attributes tr:not(:last-child) td{
  border-bottom:1px solid var(--gris-clair)!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes th{width:38%!important;
  background:var(--fond)!important;text-align:left!important;vertical-align:top!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:13.5px!important;
  letter-spacing:.02em!important;color:var(--vert-fonce)!important;padding:14px 18px!important;
  border-right:1px solid var(--gris-clair)!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes td{padding:14px 18px!important;
  color:var(--anthracite)!important;vertical-align:top!important;background:#fff!important;}
/* seul « conditionnement » a des archives d'attribut : sa valeur est donc un lien.
   On le rend discret plutôt que vert vif, pour ne pas déséquilibrer le tableau. */
[data-elementor-type="jet-woo-builder"] table.shop_attributes td a{color:var(--vert-fonce)!important;
  text-decoration:underline!important;text-decoration-color:var(--kraft)!important;
  text-underline-offset:3px!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes td a:hover{color:var(--vert)!important;
  text-decoration-color:var(--vert)!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes td p,
[data-elementor-type="jet-woo-builder"] table.shop_attributes td{font-style:normal!important;
  font-size:14.5px!important;line-height:1.55!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes td p{margin:0!important;}
[data-elementor-type="jet-woo-builder"] table.shop_attributes td a{font-weight:600!important;}
@media (max-width:680px){
  [data-elementor-type="jet-woo-builder"] table.shop_attributes th{width:44%!important;padding:12px 14px!important;}
  [data-elementor-type="jet-woo-builder"] table.shop_attributes td{padding:12px 14px!important;}
}

/* -------------------- produits similaires : en-tête de section ------------ */
[data-elementor-type="jet-woo-builder"] .related.products>h2,
[data-elementor-type="jet-woo-builder"] .up-sells>h2{font-size:clamp(24px,3vw,34px)!important;
  font-weight:800!important;text-align:left!important;margin:0 0 28px!important;}

/* ------------------------------------------------------------------
   Visuel des cartes produit : même traitement que la fiche, pour que
   l'ensemble du site soit cohérent. Hauteur fixe par le rapport 4/3
   déjà en place, image entière (contain) sur fond blanc, et le visuel
   devient cliquable vers la fiche.
   ------------------------------------------------------------------ */
.rnov-page .prod-img{background:#fff!important;}
.rnov-page .prod-img .prod-lien{display:block!important;width:100%!important;height:100%!important;}
.rnov-page .prod-img img{width:100%!important;height:100%!important;aspect-ratio:auto!important;
  object-fit:contain!important;padding:14px!important;margin:0!important;background:#fff!important;
  transition:transform .35s ease!important;}
.rnov-page .prod:hover .prod-img img{transform:scale(1.04)!important;}

/* ------------------------------------------------------------------
   Fiche produit : le visuel s'accroche au scroll, en haut à gauche.
   Les onglets sont dans la colonne de droite, ce qui donne à l'accroche
   une vraie course : sur une fiche à longue description, le visuel reste
   sous les yeux pendant toute la lecture.
   Le décalage se cale sur la hauteur réellement collée de l'en-tête,
   exposée en variable CSS par le JS.
   ------------------------------------------------------------------ */
@media (min-width:1025px){
  .elementor-element-1c71e17{
    position:sticky!important;
    top:calc(var(--rnov-entete-collee, 100px) + 24px)!important;
    align-self:flex-start!important;
  }
}

/* ------------------------------------------------------------------
   .rnov-page peint le fond beige de la page : c'est ce qu'il faut quand
   l'enveloppe entoure une section pleine largeur, mais pas quand elle
   entoure un petit bloc inséré dans une colonne. Là, elle dessinait une
   bande beige derrière les pastilles, l'encart de retrait et le fil
   d'Ariane, et surtout un carré beige qui dépassait aux quatre coins
   arrondis de chaque carte produit. D'où cette enveloppe « nue ».
   ------------------------------------------------------------------ */
.rnov-page.rnov-nu{background:transparent!important;}

/* Le fil d'Ariane de WooCommerce, sur les écrans à gabarit, doit retrouver la
   gouttière commune : <main> ne la porte plus. */
.woocommerce-page .woocommerce-breadcrumb{max-width:var(--ct)!important;margin:0 auto!important;
  padding:18px 20px!important;font-size:13.5px!important;color:var(--gris)!important;}
.woocommerce-page .woocommerce-breadcrumb .ariane-sep{color:var(--kraft)!important;padding:0 2px;}

/* ===================================================================
   Panier (gabarit JetWooBuilder)
   =================================================================== */
/* le tableau : cadre arrondi, en-tête sable, filets discrets */
body.woocommerce-cart table.shop_table{border-collapse:separate!important;border-spacing:0!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;overflow:hidden!important;
  background:#fff!important;margin:0!important;}
body.woocommerce-cart table.shop_table th{background:var(--sable)!important;text-align:left!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:12.5px!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--vert-fonce)!important;
  padding:14px 16px!important;border:0!important;}
body.woocommerce-cart table.shop_table td{padding:16px!important;border:0!important;
  border-top:1px solid var(--gris-clair)!important;vertical-align:middle!important;}
body.woocommerce-cart table.shop_table .product-thumbnail img{width:70px!important;height:70px!important;
  object-fit:contain!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r-sm)!important;padding:6px!important;}
body.woocommerce-cart table.shop_table .product-name a{font-family:'Manrope',sans-serif!important;
  font-weight:700!important;font-size:14.5px!important;color:var(--vert-fonce)!important;
  text-decoration:none!important;}
body.woocommerce-cart table.shop_table .product-name a:hover{color:var(--vert)!important;}
body.woocommerce-cart table.shop_table .product-price,
body.woocommerce-cart table.shop_table .product-subtotal{font-family:'Manrope',sans-serif!important;
  font-weight:700!important;color:var(--vert-fonce)!important;}
body.woocommerce-cart table.shop_table td.product-remove a.remove{color:var(--gris)!important;
  font-size:20px!important;line-height:1!important;}
body.woocommerce-cart table.shop_table td.product-remove a.remove:hover{color:var(--terracotta)!important;
  background:transparent!important;}

/* le récapitulatif : une carte, comme les autres encadrés du site */
body.woocommerce-cart .elementor-jet-cart-totals,
body.woocommerce-cart .cart_totals{background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:24px!important;}
body.woocommerce-cart .cart_totals h2,
body.woocommerce-cart .elementor-jet-cart-totals h2{font-size:20px!important;font-weight:800!important;
  margin:0 0 16px!important;}
body.woocommerce-cart .cart_totals table.shop_table{border:0!important;border-radius:0!important;}
body.woocommerce-cart .cart_totals table.shop_table th{background:transparent!important;
  text-transform:none!important;letter-spacing:0!important;font-size:14px!important;padding:12px 0!important;}
body.woocommerce-cart .cart_totals table.shop_table td{padding:12px 0!important;text-align:right!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;color:var(--vert-fonce)!important;
  background:transparent!important;}
/* le récapitulatif est étroit : le libellé d'expédition doit pouvoir passer à la ligne */
body.woocommerce-cart .cart_totals table.shop_table{width:100%!important;table-layout:fixed!important;}
body.woocommerce-cart .cart_totals table.shop_table th{width:44%!important;background:transparent!important;
  word-break:break-word!important;}
body.woocommerce-cart .cart_totals td[data-title],
body.woocommerce-cart .cart_totals .woocommerce-shipping-methods,
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination{word-break:break-word!important;
  white-space:normal!important;font-weight:500!important;}
body.woocommerce-cart .cart_totals .woocommerce-shipping-methods{list-style:none!important;margin:0!important;padding:0!important;}
body.woocommerce-cart .cart_totals .woocommerce-shipping-methods label{font-family:'Manrope',sans-serif!important;
  font-weight:700!important;font-size:14px!important;color:var(--vert-fonce)!important;}
body.woocommerce-cart .cart_totals tr.order-total th,
body.woocommerce-cart .cart_totals tr.order-total td{border-top:1.5px solid var(--gris-clair)!important;
  font-size:17px!important;}
body.woocommerce-cart .wc-proceed-to-checkout{padding:18px 0 0!important;}
body.woocommerce-cart a.checkout-button{display:block!important;width:100%!important;text-align:center!important;}
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .shipping-calculator-button{font-size:13px!important;}

/* le pied du tableau : code promo et mise à jour */
body.woocommerce-cart td.actions{background:var(--fond)!important;border-top:1px solid var(--gris-clair)!important;}
body.woocommerce-cart td.actions .coupon{display:flex!important;gap:10px!important;align-items:center!important;
  flex-wrap:wrap!important;float:none!important;}
body.woocommerce-cart td.actions button[name="update_cart"]{float:right!important;}

/* ventes croisées : notre grille */
body.woocommerce-cart .cross-sells>h2{font-size:clamp(22px,2.6vw,30px)!important;font-weight:800!important;
  margin:0 0 24px!important;}

/* ===================================================================
   Paiement (gabarit JetWooBuilder)
   =================================================================== */
/* Le créneau de retrait, servi par l'extension « CoderRockz Woo Delivery ».
   Ses champs sont désormais configurés et visibles : son titre reprend donc sa
   place, à la même échelle que les autres titres de bloc du tunnel. */
#coderockz-woo-delivery-public-delivery-details h3{font-size:20px!important;
  font-weight:800!important;margin:0 0 18px!important;padding:0!important;}
#coderockz_woo_delivery_setting_wrapper{margin-bottom:26px!important;}
#coderockz_woo_delivery_pickup_date_section,
#coderockz_woo_delivery_pickup_time_section{margin:0!important;}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .elementor-jet-checkout-order-review h3{font-size:20px!important;
  font-weight:800!important;margin:0 0 18px!important;}
body.woocommerce-checkout .woocommerce-additional-fields h3{font-size:17px!important;
  font-weight:800!important;margin:26px 0 14px!important;}

/* les deux blocs de formulaire prennent l'allure d'encadrés, comme le reste */
body.woocommerce-checkout .elementor-jet-checkout-billing,
body.woocommerce-checkout .elementor-jet-checkout-additional-form{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;padding:26px!important;}
body.woocommerce-checkout .elementor-jet-checkout-additional-form{margin-top:22px!important;}
body.woocommerce-checkout .woocommerce-additional-fields h3:first-child{margin-top:0!important;}

/* récapitulatif et paiement : une même colonne de cartes */
body.woocommerce-checkout .elementor-jet-checkout-order-review,
body.woocommerce-checkout .elementor-jet-checkout-payment{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;padding:24px!important;}
body.woocommerce-checkout .elementor-jet-checkout-payment{margin-top:20px!important;}
body.woocommerce-checkout table.shop_table{border:0!important;background:transparent!important;
  border-collapse:separate!important;border-spacing:0!important;width:100%!important;}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td{background:transparent!important;padding:11px 0!important;
  border:0!important;border-bottom:1px solid var(--gris-clair)!important;font-size:14px!important;}
body.woocommerce-checkout table.shop_table thead th{background:var(--fond)!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:12.5px!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--vert-fonce)!important;
  padding:11px 12px!important;}
body.woocommerce-checkout table.shop_table td{text-align:right!important;}
body.woocommerce-checkout table.shop_table td.product-name{text-align:left!important;
  font-family:'Manrope',sans-serif!important;font-weight:600!important;color:var(--vert-fonce)!important;}
body.woocommerce-checkout table.shop_table tfoot .order-total th,
body.woocommerce-checkout table.shop_table tfoot .order-total td{border-bottom:0!important;
  border-top:1.5px solid var(--gris-clair)!important;font-size:17px!important;
  font-family:'Manrope',sans-serif!important;font-weight:800!important;color:var(--vert-fonce)!important;}

/* moyen de règlement */
body.woocommerce-checkout ul.wc_payment_methods{list-style:none!important;margin:0 0 16px!important;padding:0!important;}
body.woocommerce-checkout ul.wc_payment_methods li{border:1.5px solid var(--gris-clair)!important;
  border-radius:var(--r-sm)!important;padding:14px 16px!important;margin-bottom:10px!important;
  background:var(--fond)!important;}
body.woocommerce-checkout ul.wc_payment_methods label{font-family:'Manrope',sans-serif!important;
  font-weight:700!important;font-size:14.5px!important;color:var(--vert-fonce)!important;}
body.woocommerce-checkout .payment_box{background:transparent!important;border:0!important;
  padding:8px 0 0!important;font-size:13.5px!important;color:var(--gris)!important;}
body.woocommerce-checkout .payment_box::before{display:none!important;}
body.woocommerce-checkout #place_order{width:100%!important;}
body.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:12.5px!important;
  color:var(--gris)!important;line-height:1.55!important;}

/* connexion et code promo, au-dessus du formulaire */
body.woocommerce-checkout .woocommerce-form-login,
body.woocommerce-checkout .checkout_coupon{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;padding:22px!important;
  margin:0 0 16px!important;}

/* ------------------------------------------------------------------
   Select2, utilisé par WooCommerce sur le pays et par l'extension de
   retrait sur l'heure : il masque le <select> natif avec height:1px, que
   nos règles de champ écrasaient. Le natif est désormais exclu, et le
   widget Select2 reçoit l'habillage des autres champs.
   ------------------------------------------------------------------ */
.woocommerce .select2-container--default .select2-selection--single{
  height:auto!important;min-height:50px!important;padding:12px 14px!important;
  border:1.5px solid var(--gris-clair)!important;border-radius:var(--r-sm)!important;
  background:var(--fond)!important;display:flex!important;align-items:center!important;}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{
  padding:0!important;line-height:1.4!important;color:var(--anthracite)!important;
  font-family:'Inter',system-ui,sans-serif!important;font-size:15px!important;}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:100%!important;right:12px!important;}
.woocommerce .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce .select2-container--default.select2-container--open .select2-selection--single{
  border-color:var(--vert)!important;background:#fff!important;}
.woocommerce .select2-dropdown{border:1.5px solid var(--gris-clair)!important;
  border-radius:var(--r-sm)!important;overflow:hidden!important;}
.woocommerce .select2-container--default .select2-results__option--highlighted[aria-selected]{
  background:var(--vert)!important;}
.woocommerce .select2-search--dropdown .select2-search__field{
  border:1.5px solid var(--gris-clair)!important;border-radius:var(--r-sm)!important;padding:9px 11px!important;}

/* ------------------------------------------------------------------
   Espacement des lignes de formulaire : le conteneur de champs est en
   display:block et chaque ligne avait une marge basse nulle. Deux champs
   sans étiquette entre eux, « numéro et nom de rue » puis « bâtiment,
   appartement », se retrouvaient donc collés.
   ------------------------------------------------------------------ */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper .form-row,
body.woocommerce-checkout #coderockz_woo_delivery_setting_wrapper .form-row{
  margin-bottom:16px!important;}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row:last-child{
  margin-bottom:0!important;}
body.woocommerce-checkout .form-row label{display:block!important;margin-bottom:6px!important;}

/* le champ « bâtiment, appartement » est un complément du précédent :
   on les rapproche volontairement, avec un décalage plus court */
body.woocommerce-checkout #billing_address_1_field{margin-bottom:10px!important;}

/* ---------------- état d'erreur des champs du tunnel ----------------------
 * WooCommerce peint son rouge sur `.woocommerce-invalid`. L'extension de retrait
 * posait cette classe dès le chargement, si bien que le champ d'heure était
 * rouge avant toute saisie : c'est le script qui retire la marque tant que le
 * champ est vide et jamais quitté, et WooCommerce la repose au bon moment. Il
 * reste à porter le rouge jusqu'au widget Select2, dont la bordure visible est
 * sur son span intérieur, et non sur le conteneur que WooCommerce cible.
 * --------------------------------------------------------------------- */
body.woocommerce-checkout form.checkout .form-row.woocommerce-invalid .select2-selection--single{
  border-color:#c0392b!important;}
body.woocommerce-checkout form.checkout .form-row.woocommerce-invalid>label{color:#a5321f!important;}

/* =====================================================================
   Page de remerciement — « Réservation enregistrée »
   Le client vient de cliquer sans rien payer : la page doit lever le
   doute, dire ce qui est acquis, ce qui reste à confirmer, et où venir.
   ===================================================================== */

/* ------------------------------- bandeau -------------------------------- */
.rnov-page .merci-head{padding-bottom:34px!important;}
.rnov-page .merci-head h1{max-width:22ch!important;}
.rnov-page .merci-head>.ct>p{max-width:62ch!important;}

.rnov-page .merci-creneau{display:grid!important;grid-template-columns:repeat(3,1fr)!important;
  gap:0!important;margin:30px 0 0!important;background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  overflow:hidden!important;box-shadow:0 6px 22px rgba(26,74,41,.07)!important;}
.rnov-page .merci-creneau .mc-bloc{display:flex!important;flex-direction:column!important;
  gap:5px!important;padding:22px 24px!important;border-left:1px solid var(--gris-clair)!important;}
.rnov-page .merci-creneau .mc-bloc:first-child{border-left:0!important;}
.rnov-page .merci-creneau .mc-lbl{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--vert)!important;}
.rnov-page .merci-creneau .mc-val{font-family:'Manrope',sans-serif!important;font-size:18px!important;
  font-weight:800!important;color:var(--vert-fonce)!important;line-height:1.25!important;}
.rnov-page .merci-creneau .mc-sec{font-size:14px!important;color:var(--gris)!important;line-height:1.5!important;}
.rnov-page .merci-creneau .mc-etat{background:var(--fond)!important;justify-content:center!important;}
.rnov-page .merci-creneau .mc-etat .badge{align-self:flex-start!important;margin-bottom:3px!important;}

@media (max-width:900px){
  .rnov-page .merci-creneau{grid-template-columns:1fr!important;}
  .rnov-page .merci-creneau .mc-bloc{border-left:0!important;border-top:1px solid var(--gris-clair)!important;}
  .rnov-page .merci-creneau .mc-bloc:first-child{border-top:0!important;}
}

/* --------------------- récapitulatif WooCommerce ------------------------ */
/* Le message du bloc JetWooBuilder sert d'introduction au tableau. */
body.woocommerce-order-received .woocommerce-notice--success,
body.woocommerce-order-received p.woocommerce-thankyou-order-received{font-size:16px!important;
  color:var(--gris)!important;background:none!important;border:0!important;padding:0!important;
  margin:0 0 4px!important;}
body.woocommerce-order-received .woocommerce-notice--success::before{display:none!important;}

/* la bande numéro / date / total / règlement */
body.woocommerce-order-received ul.woocommerce-order-overview{display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;gap:0!important;margin:0!important;padding:0!important;
  list-style:none!important;background:var(--vert-fonce)!important;border:0!important;
  border-radius:var(--r)!important;overflow:hidden!important;}
body.woocommerce-order-received ul.woocommerce-order-overview li{display:flex!important;
  flex-direction:column!important;gap:6px!important;margin:0!important;padding:20px 22px!important;
  border:0!important;border-left:1px solid rgba(255,255,255,.16)!important;
  font-family:'Manrope',sans-serif!important;font-size:11.5px!important;font-weight:700!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;
  color:rgba(255,255,255,.72)!important;text-align:left!important;float:none!important;}
body.woocommerce-order-received ul.woocommerce-order-overview li:first-child{border-left:0!important;}
body.woocommerce-order-received ul.woocommerce-order-overview li strong{font-size:18px!important;
  font-weight:800!important;letter-spacing:0!important;text-transform:none!important;
  color:#fff!important;line-height:1.3!important;}
@media (max-width:900px){
  body.woocommerce-order-received ul.woocommerce-order-overview{grid-template-columns:repeat(2,1fr)!important;}
  body.woocommerce-order-received ul.woocommerce-order-overview li:nth-child(-n+2){
    border-top:0!important;}
  body.woocommerce-order-received ul.woocommerce-order-overview li:nth-child(2n+1){border-left:0!important;}
  body.woocommerce-order-received ul.woocommerce-order-overview li{
    border-top:1px solid rgba(255,255,255,.16)!important;}
}
@media (max-width:560px){
  body.woocommerce-order-received ul.woocommerce-order-overview{grid-template-columns:1fr!important;}
  body.woocommerce-order-received ul.woocommerce-order-overview li{border-left:0!important;}
}

/* le tableau des références */
body.woocommerce-order-received .woocommerce-order-details{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:26px 28px!important;margin:0!important;}
body.woocommerce-order-received .woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-column__title{font-family:'Manrope',sans-serif!important;
  font-size:20px!important;font-weight:800!important;color:var(--vert-fonce)!important;
  margin:0 0 18px!important;padding:0!important;}
body.woocommerce-order-received table.order_details{width:100%!important;margin:0!important;
  border:0!important;border-collapse:collapse!important;font-size:15px!important;}
body.woocommerce-order-received table.order_details th,
body.woocommerce-order-received table.order_details td{padding:13px 0!important;
  border:0!important;border-bottom:1px solid var(--gris-clair)!important;
  background:none!important;vertical-align:top!important;}
body.woocommerce-order-received table.order_details thead th{font-family:'Manrope',sans-serif!important;
  font-size:11.5px!important;font-weight:700!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;color:var(--vert)!important;}
body.woocommerce-order-received table.order_details tfoot th{font-family:'Manrope',sans-serif!important;
  font-weight:700!important;color:var(--vert-fonce)!important;text-align:left!important;}
body.woocommerce-order-received table.order_details tfoot td{text-align:right!important;
  font-family:'Manrope',sans-serif!important;font-weight:600!important;}
body.woocommerce-order-received table.order_details tfoot tr:last-child th,
body.woocommerce-order-received table.order_details tfoot tr:last-child td{border-bottom:0!important;
  font-size:18px!important;font-weight:800!important;padding-top:16px!important;}
body.woocommerce-order-received table.order_details td.woocommerce-table__product-total,
body.woocommerce-order-received table.order_details th.woocommerce-table__product-total,
body.woocommerce-order-received table.order_details td:last-child{text-align:right!important;}
body.woocommerce-order-received table.order_details .product-name a{font-weight:700!important;}
body.woocommerce-order-received table.order_details .product-quantity{color:var(--gris)!important;
  font-weight:600!important;}

/* --------------------------- vos coordonnées ---------------------------- */
.rnov-page .merci-contact{background:var(--fond)!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:24px 26px!important;}
.rnov-page .merci-contact h3{font-family:'Manrope',sans-serif!important;font-size:17px!important;
  font-weight:800!important;color:var(--vert-fonce)!important;margin:0 0 16px!important;}
.rnov-page .merci-contact ul{list-style:none!important;margin:0!important;padding:0!important;
  display:flex!important;flex-direction:column!important;gap:12px!important;}
.rnov-page .merci-contact li{display:flex!important;flex-direction:column!important;gap:2px!important;
  margin:0!important;padding:0!important;}
.rnov-page .merci-contact li span{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--vert)!important;}
.rnov-page .merci-contact li strong{font-size:15.5px!important;font-weight:700!important;
  color:var(--vert-fonce)!important;word-break:break-word!important;}
.rnov-page .merci-contact .mct-note{margin-top:16px!important;padding-top:16px!important;
  border-top:1px solid var(--gris-clair)!important;}
.rnov-page .merci-contact .mct-note span{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--vert)!important;}
.rnov-page .merci-contact .mct-note p{margin:5px 0 0!important;font-size:14.5px!important;
  color:#3c443f!important;font-style:italic!important;}
.rnov-page .merci-contact .mct-erreur{margin:18px 0 0!important;padding-top:16px!important;
  border-top:1px solid var(--gris-clair)!important;font-size:13.5px!important;
  color:var(--gris)!important;line-height:1.6!important;}

/* ------------------------------ les étapes ------------------------------ */
.rnov-page .merci-etapes-sec{padding:56px 0 10px!important;}
.rnov-page .merci-etapes-sec h2{font-size:clamp(24px,3vw,34px)!important;font-weight:800!important;
  margin:6px 0 30px!important;}
.rnov-page ol.merci-etapes{list-style:none!important;margin:0!important;padding:0!important;
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:22px!important;
  counter-reset:none!important;}
.rnov-page ol.merci-etapes li{display:flex!important;gap:16px!important;margin:0!important;
  padding:24px 26px!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;align-items:flex-start!important;}
.rnov-page ol.merci-etapes li::before{display:none!important;content:none!important;}
.rnov-page ol.merci-etapes .me-num{flex:0 0 34px!important;width:34px!important;height:34px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border-radius:var(--r-pill)!important;background:var(--vert)!important;color:#fff!important;
  font-family:'Manrope',sans-serif!important;font-size:15px!important;font-weight:800!important;}
.rnov-page ol.merci-etapes strong{display:block!important;font-family:'Manrope',sans-serif!important;
  font-size:16.5px!important;font-weight:800!important;color:var(--vert-fonce)!important;
  margin-bottom:6px!important;line-height:1.35!important;}
.rnov-page ol.merci-etapes p{margin:0!important;font-size:14.5px!important;color:var(--gris)!important;
  line-height:1.65!important;}
@media (max-width:900px){ .rnov-page ol.merci-etapes{grid-template-columns:1fr!important;} }

/* ------------------------------- le dépôt ------------------------------- */
.rnov-page .merci-depot-sec{padding:44px 0 70px!important;}
.rnov-page .merci-depot{display:grid!important;grid-template-columns:1.05fr .95fr!important;
  gap:0!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;overflow:hidden!important;
  box-shadow:0 8px 26px rgba(26,74,41,.07)!important;}
.rnov-page .merci-depot .md-infos{padding:34px 36px!important;}
.rnov-page .merci-depot h2{font-size:clamp(21px,2.4vw,27px)!important;font-weight:800!important;
  margin:6px 0 12px!important;line-height:1.25!important;}
.rnov-page .merci-depot .md-acces{font-size:15px!important;color:var(--gris)!important;
  line-height:1.65!important;margin:0 0 22px!important;max-width:46ch!important;}
.rnov-page .merci-depot .md-liste{list-style:none!important;margin:0 0 26px!important;padding:0!important;
  display:flex!important;flex-direction:column!important;gap:14px!important;}
.rnov-page .merci-depot .md-liste li{display:grid!important;grid-template-columns:104px 1fr!important;
  gap:14px!important;margin:0!important;padding:0 0 14px!important;
  border-bottom:1px solid var(--gris-clair)!important;align-items:baseline!important;}
.rnov-page .merci-depot .md-liste li:last-child{border-bottom:0!important;padding-bottom:0!important;}
.rnov-page .merci-depot .md-liste span{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--vert)!important;}
.rnov-page .merci-depot .md-liste strong{font-size:15.5px!important;font-weight:700!important;
  color:var(--vert-fonce)!important;line-height:1.5!important;}
.rnov-page .merci-depot .md-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;}
.rnov-page .merci-depot .md-plan{min-height:100%!important;}
.rnov-page .merci-depot .md-plan iframe{display:block!important;width:100%!important;
  height:100%!important;min-height:340px!important;border:0!important;}
@media (max-width:900px){
  .rnov-page .merci-depot{grid-template-columns:1fr!important;}
  .rnov-page .merci-depot .md-infos{padding:28px 24px!important;}
  .rnov-page .merci-depot .md-plan iframe{min-height:280px!important;}
}

/* Le fil d'Ariane et l'en-tête du thème n'ont rien à faire ici : le gabarit
   porte son propre titre. */
body.woocommerce-order-received .site-main>.entry-title,
body.woocommerce-order-received .page-header{display:none!important;}

/* Panier vide : le gabarit annonce déjà « Votre panier est vide » en titre. Le
   message de WooCommerce, juste en dessous, le répétait mot pour mot ; on ne
   garde que son bouton de retour. */
body.woocommerce-cart .cart-empty.woocommerce-info{display:none!important;}
body.woocommerce-cart p.return-to-shop{margin:0!important;}

/* Le bouton de retour du panier vide : le widget JetWooBuilder rend un
   `.button` sans fond, et notre habillage lui donne du blanc sur du blanc. */
body.woocommerce-cart .elementor-jet-cart-return-to-shop .button,
body.woocommerce-cart p.return-to-shop .button{display:inline-flex!important;
  align-items:center!important;justify-content:center!important;
  background:var(--terracotta)!important;color:#fff!important;border:0!important;
  border-radius:var(--r-pill)!important;padding:14px 26px!important;
  font-family:'Manrope',sans-serif!important;font-size:15px!important;font-weight:700!important;
  text-decoration:none!important;box-shadow:0 6px 18px rgba(230,110,46,.26)!important;}
body.woocommerce-cart .elementor-jet-cart-return-to-shop .button:hover,
body.woocommerce-cart p.return-to-shop .button:hover{background:var(--terracotta-fonce)!important;
  color:#fff!important;}

/* =====================================================================
   Compte : connexion, inscription, et les sections une fois connecté
   La réservation marche sans compte. Les deux écrans doivent donc
   inviter, pas barrer la route.
   ===================================================================== */

/* --------------------- connexion et inscription, côte à côte ------------- */
/* La carte, c'est le bloc entier : le titre du widget est un frère du
   formulaire, l'encadrer avec lui évite un titre suspendu au-dessus du vide. */
body.woocommerce-account .elementor-jet-myaccount-login-form,
body.woocommerce-account .elementor-jet-myaccount-registration-form{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:28px 30px 26px!important;margin:0!important;
  box-shadow:0 6px 22px rgba(26,74,41,.06)!important;}
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register{background:none!important;
  border:0!important;padding:0!important;margin:0!important;}
body.woocommerce-account .elementor-widget-jet-myaccount-login-form,
body.woocommerce-account .elementor-widget-jet-myaccount-registration-form,
body.woocommerce-account .elementor-jet-myaccount-login-form,
body.woocommerce-account .elementor-jet-myaccount-registration-form{height:100%!important;}
body.woocommerce-account .elementor-jet-myaccount-login-form>h2,
body.woocommerce-account .elementor-jet-myaccount-registration-form>h2{
  font-family:'Manrope',sans-serif!important;font-size:21px!important;font-weight:800!important;
  color:var(--vert-fonce)!important;margin:0 0 20px!important;padding:0 0 16px!important;
  border-bottom:1px solid var(--gris-clair)!important;}
/* le titre appartient à la carte : on le fait passer dedans visuellement */
body.woocommerce-account .elementor-widget-jet-myaccount-login-form>.elementor-widget-container,
body.woocommerce-account .elementor-widget-jet-myaccount-registration-form>.elementor-widget-container{
  height:100%!important;}

body.woocommerce-account form.login label,
body.woocommerce-account form.register label{font-family:'Manrope',sans-serif!important;
  font-size:13px!important;font-weight:700!important;color:var(--vert-fonce)!important;
  margin-bottom:7px!important;display:block!important;}
body.woocommerce-account form.login .form-row,
body.woocommerce-account form.register .form-row{margin:0 0 16px!important;padding:0!important;}
body.woocommerce-account form.login .woocommerce-form-login__rememberme,
body.woocommerce-account form.register label.woocommerce-form__label-for-checkbox{
  font-weight:600!important;font-size:14px!important;color:var(--gris)!important;
  display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 16px!important;}
body.woocommerce-account form.login .woocommerce-form-login__submit,
body.woocommerce-account form.register .woocommerce-form-register__submit{width:100%!important;
  margin:0!important;justify-content:center!important;}
body.woocommerce-account p.woocommerce-LostPassword{margin:16px 0 0!important;
  padding-top:16px!important;border-top:1px solid var(--gris-clair)!important;
  font-size:14px!important;}
body.woocommerce-account form.register .woocommerce-privacy-policy-text p,
body.woocommerce-account form.register>p:not(.form-row){font-size:13.5px!important;
  color:var(--gris)!important;line-height:1.6!important;margin:0 0 16px!important;}

/* ------------------------- à quoi sert un compte ------------------------ */
.rnov-page .compte-avantages-sec{padding:52px 0 10px!important;}
.rnov-page .compte-avantages-sec h2{font-size:clamp(23px,2.8vw,32px)!important;
  font-weight:800!important;margin:6px 0 8px!important;}
.rnov-page .compte-avantages-sec .ca-intro{font-size:16px!important;color:var(--gris)!important;
  margin:0 0 28px!important;max-width:60ch!important;}
.rnov-page ul.compte-avantages{list-style:none!important;margin:0!important;padding:0!important;
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:22px!important;}
.rnov-page ul.compte-avantages li{margin:0!important;padding:24px 26px!important;
  background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;border-top:3px solid var(--vert)!important;}
.rnov-page ul.compte-avantages strong{display:block!important;font-family:'Manrope',sans-serif!important;
  font-size:16.5px!important;font-weight:800!important;color:var(--vert-fonce)!important;
  margin-bottom:7px!important;line-height:1.35!important;}
.rnov-page ul.compte-avantages p{margin:0!important;font-size:14.5px!important;
  color:var(--gris)!important;line-height:1.65!important;}
@media (max-width:900px){ .rnov-page ul.compte-avantages{grid-template-columns:1fr!important;} }

/* ------------------------- bandeau du compte ---------------------------- */
.rnov-page .compte-head{padding-bottom:30px!important;}
.rnov-page .compte-head-haut{display:flex!important;align-items:flex-start!important;
  justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;}
.rnov-page .compte-head h1{margin:0!important;}
.rnov-page .compte-head>.ct>p{margin:14px 0 0!important;max-width:64ch!important;}
.rnov-page a.compte-sortie{display:inline-flex!important;align-items:center!important;
  gap:8px!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r-pill)!important;padding:10px 18px!important;
  font-family:'Manrope',sans-serif!important;font-size:14px!important;font-weight:700!important;
  color:var(--vert-fonce)!important;text-decoration:none!important;margin-top:6px!important;}
.rnov-page a.compte-sortie:hover{border-color:var(--vert)!important;color:var(--vert)!important;}
.rnov-page a.compte-sortie svg{width:17px!important;height:17px!important;flex:0 0 17px!important;}

/* ---------------------------- menu latéral ------------------------------ */
.rnov-page nav.compte-menu{display:flex!important;flex-direction:column!important;
  gap:2px!important;background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:10px!important;margin:0 0 20px!important;}
.rnov-page nav.compte-menu .cm-lien{display:block!important;padding:12px 16px!important;
  border-radius:var(--r-sm)!important;font-family:'Manrope',sans-serif!important;
  font-size:15px!important;font-weight:700!important;color:var(--vert-fonce)!important;
  text-decoration:none!important;}
.rnov-page nav.compte-menu .cm-lien:hover{background:var(--fond)!important;color:var(--vert)!important;}
.rnov-page nav.compte-menu .cm-lien.on{background:var(--vert-fonce)!important;color:#fff!important;}
.rnov-page aside.compte-depot{background:var(--fond)!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:22px 24px!important;}
.rnov-page aside.compte-depot h3{font-family:'Manrope',sans-serif!important;font-size:15px!important;
  font-weight:800!important;color:var(--vert-fonce)!important;margin:0 0 10px!important;}
.rnov-page aside.compte-depot p{margin:0 0 8px!important;font-size:14px!important;
  color:var(--gris)!important;line-height:1.6!important;}
.rnov-page aside.compte-depot .cd-tel a{font-family:'Manrope',sans-serif!important;
  font-size:16px!important;font-weight:800!important;color:var(--vert-fonce)!important;}
.rnov-page aside.compte-depot .btn{margin-top:8px!important;}

/* --------------------------- cartes du tableau -------------------------- */
.rnov-page .compte-cartes{display:grid!important;grid-template-columns:repeat(3,1fr)!important;
  gap:20px!important;margin:0 0 34px!important;}
.rnov-page .cc-carte{display:flex!important;flex-direction:column!important;gap:7px!important;
  background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:22px 24px!important;}
.rnov-page .cc-lbl{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--vert)!important;}
.rnov-page .cc-val{font-family:'Manrope',sans-serif!important;font-size:24px!important;
  font-weight:800!important;color:var(--vert-fonce)!important;line-height:1.2!important;
  word-break:break-word!important;}
/* Le terracotta de la charte ne passe pas 4,5:1 sur du blanc (3,41) : pour une
   alerte à lire, on descend d'un cran vers #a05010, qui donne 5,75. */
.rnov-page .cc-val.cc-manque{font-size:17px!important;color:#a05010!important;}
.rnov-page .cc-carte p{margin:0!important;font-size:14px!important;color:var(--gris)!important;
  line-height:1.6!important;flex:1 1 auto!important;}
.rnov-page .cc-carte>a{font-family:'Manrope',sans-serif!important;font-size:14px!important;
  font-weight:700!important;color:var(--vert)!important;text-decoration:none!important;
  border-bottom:1.5px solid currentColor!important;align-self:flex-start!important;
  padding-bottom:1px!important;margin-top:4px!important;}
@media (max-width:900px){ .rnov-page .compte-cartes{grid-template-columns:1fr!important;} }

/* ----------------------- dernières réservations ------------------------- */
.rnov-page .compte-dernieres h2{font-family:'Manrope',sans-serif!important;font-size:20px!important;
  font-weight:800!important;color:var(--vert-fonce)!important;margin:0 0 16px!important;}
.rnov-page .compte-dernieres ul{list-style:none!important;margin:0!important;padding:0!important;
  display:flex!important;flex-direction:column!important;gap:12px!important;}
.rnov-page .compte-dernieres li{display:grid!important;
  grid-template-columns:1fr auto!important;gap:6px 20px!important;align-items:center!important;
  margin:0!important;padding:18px 22px!important;background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;}
.rnov-page .compte-dernieres .cd-tete{display:flex!important;align-items:center!important;
  gap:12px!important;flex-wrap:wrap!important;}
.rnov-page .compte-dernieres .cd-tete strong{font-family:'Manrope',sans-serif!important;
  font-size:16px!important;font-weight:800!important;color:var(--vert-fonce)!important;}
.rnov-page .compte-dernieres .cd-etat{font-family:'Manrope',sans-serif!important;
  font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;padding:4px 11px!important;border-radius:var(--r-pill)!important;
  background:var(--vert-clair)!important;color:#1c5a2a!important;}
.rnov-page .compte-dernieres .cd-etat-cancelled,
.rnov-page .compte-dernieres .cd-etat-failed{background:#fbe9e6!important;color:#a5321f!important;}
.rnov-page .compte-dernieres .cd-infos{grid-column:1!important;display:flex!important;
  flex-wrap:wrap!important;gap:6px 18px!important;font-size:14px!important;color:var(--gris)!important;}
.rnov-page .compte-dernieres .cd-lien{grid-row:1 / span 2!important;grid-column:2!important;
  font-family:'Manrope',sans-serif!important;font-size:14px!important;font-weight:700!important;
  color:var(--vert)!important;text-decoration:none!important;white-space:nowrap!important;
  border-bottom:1.5px solid currentColor!important;padding-bottom:1px!important;}
@media (max-width:680px){
  .rnov-page .compte-dernieres li{grid-template-columns:1fr!important;}
  .rnov-page .compte-dernieres .cd-lien{grid-row:auto!important;grid-column:1!important;
    justify-self:start!important;margin-top:6px!important;}
}

/* ------------------ contenu WooCommerce des sections -------------------- */
body.woocommerce-account .woocommerce-MyAccount-content{padding:0!important;width:auto!important;
  float:none!important;}
body.woocommerce-account .woocommerce-MyAccount-navigation{display:none!important;}
body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{font-size:15px!important;
  color:var(--gris)!important;line-height:1.65!important;margin:0 0 22px!important;max-width:70ch!important;}

/* la liste des réservations */
body.woocommerce-account table.woocommerce-orders-table{width:100%!important;margin:0!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  border-collapse:separate!important;border-spacing:0!important;overflow:hidden!important;
  background:#fff!important;font-size:14.5px!important;}
body.woocommerce-account table.woocommerce-orders-table th,
body.woocommerce-account table.woocommerce-orders-table td{padding:15px 18px!important;
  border:0!important;border-bottom:1px solid var(--gris-clair)!important;
  text-align:left!important;background:none!important;vertical-align:middle!important;}
body.woocommerce-account table.woocommerce-orders-table thead th{background:var(--fond)!important;
  font-family:'Manrope',sans-serif!important;font-size:11.5px!important;font-weight:700!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--vert)!important;}
body.woocommerce-account table.woocommerce-orders-table tbody tr:last-child td{border-bottom:0!important;}
body.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-number a{
  font-family:'Manrope',sans-serif!important;font-weight:800!important;}
body.woocommerce-account table.woocommerce-orders-table .mr-creneau{display:block!important;
  font-weight:700!important;color:var(--vert-fonce)!important;}
body.woocommerce-account table.woocommerce-orders-table .mr-creneau em{display:block!important;
  font-style:normal!important;font-weight:600!important;font-size:13px!important;color:var(--gris)!important;}
body.woocommerce-account table.woocommerce-orders-table .mr-vide{color:var(--gris-clair)!important;}
body.woocommerce-account table.woocommerce-orders-table .button{padding:9px 16px!important;
  font-size:13.5px!important;}

/* état vide */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-Message--info{background:var(--fond)!important;
  border:1px solid var(--gris-clair)!important;border-left:3px solid var(--vert)!important;
  border-radius:var(--r-sm)!important;padding:18px 22px!important;color:#3c443f!important;
  font-size:15px!important;display:flex!important;align-items:center!important;
  gap:16px!important;flex-wrap:wrap!important;margin:0 0 22px!important;}
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before{display:none!important;}
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-message .button{margin:0!important;}

/* mes adresses */
/* `auto-fit` avec `1fr` créait des pistes vides et posait la carte unique au
   milieu : on borne la largeur et on aligne à gauche. */
body.woocommerce-account .woocommerce-Addresses{display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(280px,400px))!important;
  justify-content:start!important;gap:20px!important;margin:0!important;}
body.woocommerce-account .woocommerce-Address{width:auto!important;float:none!important;
  background:#fff!important;border:1px solid var(--gris-clair)!important;
  border-radius:var(--r)!important;padding:24px 26px!important;}
body.woocommerce-account .woocommerce-Address-title{display:flex!important;
  align-items:baseline!important;justify-content:space-between!important;gap:14px!important;
  margin:0 0 14px!important;}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3{font-family:'Manrope',sans-serif!important;
  font-size:17px!important;font-weight:800!important;color:var(--vert-fonce)!important;margin:0!important;}
body.woocommerce-account .woocommerce-Address address{font-style:normal!important;
  font-size:15px!important;color:#3c443f!important;line-height:1.7!important;margin:0!important;}
body.woocommerce-account .woocommerce-Address .edit{font-family:'Manrope',sans-serif!important;
  font-size:13.5px!important;font-weight:700!important;color:var(--vert)!important;
  text-decoration:none!important;border-bottom:1.5px solid currentColor!important;white-space:nowrap!important;}
/* le titre de colonne répète celui de la carte */
body.woocommerce-account .woocommerce-Addresses .woocommerce-Address>header+h3,
body.woocommerce-account .u-columns>.woocommerce-Address>h3{display:none!important;}

/* mes informations */
body.woocommerce-account form.edit-account{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:28px 30px!important;max-width:720px!important;}
body.woocommerce-account form.edit-account fieldset{border:0!important;padding:0!important;
  margin:26px 0 0!important;border-top:1px solid var(--gris-clair)!important;padding-top:24px!important;}
body.woocommerce-account form.edit-account legend{font-family:'Manrope',sans-serif!important;
  font-size:17px!important;font-weight:800!important;color:var(--vert-fonce)!important;
  padding:0!important;margin:0 0 16px!important;}
body.woocommerce-account form.edit-account label{font-family:'Manrope',sans-serif!important;
  font-size:13px!important;font-weight:700!important;color:var(--vert-fonce)!important;
  margin-bottom:7px!important;display:block!important;}
body.woocommerce-account form.edit-account .form-row{margin:0 0 16px!important;padding:0!important;}
body.woocommerce-account form.edit-account span.description,
body.woocommerce-account form.edit-account em{display:block!important;font-style:normal!important;
  font-size:13px!important;color:var(--gris)!important;margin-top:6px!important;}

/* formulaire d'adresse */
body.woocommerce-account form .woocommerce-address-fields{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:28px 30px!important;max-width:720px!important;}
body.woocommerce-account form .woocommerce-address-fields .form-row{margin:0 0 16px!important;}
body.woocommerce-account form .woocommerce-address-fields__field-wrapper{margin:0!important;}

/* le titre de page du thème n'a pas lieu d'être : le gabarit a le sien */
body.woocommerce-account .site-main>.entry-title,
body.woocommerce-account .page-header{display:none!important;}

/* ------------------- accès au compte dans l'en-tête ----------------------
 * Une pastille contour à côté du panier : secondaire par rapport au « Devis
 * pro », mais lisible — une icône de bonhomme seule laisse trop de doute sur
 * ce qu'on trouvera derrière. Sous 1100 px le libellé s'efface et la pastille
 * devient ronde comme celle du panier, pour ne pas pousser le logo.
 * --------------------------------------------------------------------- */
.rnov-page a.compte-lien{position:relative!important;display:inline-flex!important;
  align-items:center!important;gap:9px!important;height:44px!important;
  padding:0 18px!important;border-radius:var(--r-pill)!important;
  border:1.5px solid var(--gris-clair)!important;background:#fff!important;
  font-family:'Manrope',sans-serif!important;font-size:14px!important;font-weight:700!important;
  color:var(--vert-fonce)!important;text-decoration:none!important;white-space:nowrap!important;
  transition:border-color .18s ease,background .18s ease!important;}
.rnov-page a.compte-lien:hover{border-color:var(--vert)!important;background:var(--vert-clair)!important;
  color:var(--vert-fonce)!important;}
.rnov-page a.compte-lien svg{width:20px!important;height:20px!important;
  flex:0 0 20px!important;stroke:var(--vert-fonce)!important;}
/* une session ouverte se signale par un point, sans ajouter de mot */
.rnov-page a.compte-lien.est-connecte::after{content:''!important;position:absolute!important;
  top:6px!important;right:12px!important;width:8px!important;height:8px!important;
  border-radius:var(--r-pill)!important;background:var(--vert)!important;
  box-shadow:0 0 0 2px #fff!important;}

@media (max-width:1100px){
  .rnov-page a.compte-lien{width:44px!important;padding:0!important;
    justify-content:center!important;gap:0!important;}
  .rnov-page a.compte-lien span{display:none!important;}
  .rnov-page a.compte-lien.est-connecte::after{top:-2px!important;right:-2px!important;}
}
/* sur mobile, le compte passe dans le menu déroulant : trois pastilles plus le
   bouton du menu ne tiennent pas dans la barre */
@media (max-width:780px){
  .rnov-page a.compte-lien{display:none!important;}
}

/* le lien du menu déroulant, détaché des pages du site */
.rnov-page .nav-mob a.nav-mob-compte{display:flex!important;align-items:center!important;
  gap:10px!important;background:var(--fond)!important;color:var(--vert-fonce)!important;
  font-weight:700!important;border-bottom:0!important;}
.rnov-page .nav-mob a.nav-mob-compte svg{width:19px!important;height:19px!important;
  flex:0 0 19px!important;stroke:var(--vert)!important;}

/* ------------------------- recherche dans le catalogue -------------------- */
.rnov-page form.rnov-recherche{margin:0 0 18px!important;}
.rnov-page .rnov-recherche-lbl{display:block!important;font-family:'Manrope',sans-serif!important;
  font-size:11.5px!important;font-weight:700!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;color:var(--vert)!important;margin:0 0 8px!important;}
.rnov-page .rnov-recherche-champ{display:flex!important;align-items:center!important;
  gap:10px!important;background:#fff!important;border:1.5px solid var(--gris-clair)!important;
  border-radius:var(--r-pill)!important;padding:6px 6px 6px 18px!important;
  max-width:640px!important;transition:border-color .18s ease!important;}
.rnov-page .rnov-recherche-champ:focus-within{border-color:var(--vert)!important;}
.rnov-page .rnov-recherche-champ>svg{width:19px!important;height:19px!important;
  flex:0 0 19px!important;stroke:var(--gris)!important;}
.rnov-page .rnov-recherche-champ input[type="search"]{flex:1 1 auto!important;min-width:0!important;
  border:0!important;background:none!important;padding:10px 0!important;margin:0!important;
  font-family:'Inter',system-ui,sans-serif!important;font-size:15px!important;
  color:var(--anthracite)!important;box-shadow:none!important;outline:none!important;
  -webkit-appearance:none!important;appearance:none!important;}
.rnov-page .rnov-recherche-champ input[type="search"]::placeholder{color:#8b9490!important;}
.rnov-page .rnov-recherche-champ input[type="search"]::-webkit-search-cancel-button{
  -webkit-appearance:none!important;appearance:none!important;}
.rnov-page .rnov-recherche-champ button{flex:0 0 auto!important;border:0!important;
  border-radius:var(--r-pill)!important;background:var(--vert)!important;color:#fff!important;
  padding:11px 22px!important;font-family:'Manrope',sans-serif!important;font-size:14px!important;
  font-weight:700!important;cursor:pointer!important;}
.rnov-page .rnov-recherche-champ button:hover{background:var(--vert-fonce)!important;}
@media (max-width:560px){
  .rnov-page .rnov-recherche-champ{padding-left:14px!important;}
  .rnov-page .rnov-recherche-champ button{padding:11px 16px!important;}
}

/* ------------------------ mot de passe oublié --------------------------- */
body.woocommerce-account form.woocommerce-ResetPassword,
body.woocommerce-account form.lost_reset_password{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-radius:var(--r)!important;
  padding:28px 30px!important;max-width:560px!important;margin:0!important;
  box-shadow:0 6px 22px rgba(26,74,41,.06)!important;}
/* la phrase d'introduction de WooCommerce répète le bandeau, mot pour mot */
body.woocommerce-account form.lost_reset_password>p:first-of-type:not(.form-row){display:none!important;}
body.woocommerce-account form.woocommerce-ResetPassword,
body.woocommerce-account form.lost_reset_password{margin-top:34px!important;margin-bottom:10px!important;}
body.woocommerce-account form.lost_reset_password input.input-text{width:100%!important;}
/* WooCommerce pose `form-row-first` sur cette ligne, qui vaut 47 % : sur un
   formulaire à un seul champ, ça donne un champ deux fois trop court. */
body.woocommerce-account form.lost_reset_password .form-row{width:100%!important;
  float:none!important;}
body.woocommerce-account form.lost_reset_password .form-row{margin:0 0 16px!important;padding:0!important;}
body.woocommerce-account form.lost_reset_password label{font-family:'Manrope',sans-serif!important;
  font-size:13px!important;font-weight:700!important;color:var(--vert-fonce)!important;
  margin-bottom:7px!important;display:block!important;}
body.woocommerce-account form.lost_reset_password button{width:100%!important;
  justify-content:center!important;margin:0!important;}
body.woocommerce-account form.lost_reset_password .required{color:var(--gris)!important;}
.rnov-page p.rnov-retour-connexion{margin:20px 0 0!important;font-size:14.5px!important;
  color:var(--gris)!important;}

/* =====================================================================
   Article (gabarit Elementor single-post 1339)
   Il venait du kit importé : bandeau gris ardoise, sommaire bleu vif,
   et 111 caractères par ligne. On le ramène à la charte et à une
   longueur de ligne lisible, sans toucher au gabarit lui-même.
   ===================================================================== */
body.single-post [data-elementor-type="single-post"]{background:var(--fond)!important;}

/* le bandeau de titre reprend le vert profond de la charte */
body.single-post .elementor-element-15ebde75{background:var(--vert-fonce)!important;
  padding:52px 20px 46px!important;}
body.single-post .elementor-element-15ebde75 h1{font-family:'Manrope',sans-serif!important;
  font-size:clamp(28px,4.2vw,44px)!important;font-weight:800!important;line-height:1.14!important;
  letter-spacing:-.01em!important;color:#fff!important;max-width:24ch!important;
  text-wrap:balance!important;}
body.single-post .elementor-element-15ebde75 a,
body.single-post .elementor-element-15ebde75 .elementor-post-info,
body.single-post .elementor-element-15ebde75 .elementor-post-info__item{
  color:rgba(255,255,255,.82)!important;font-size:14px!important;}
body.single-post .elementor-element-15ebde75 a:hover{color:#fff!important;}
body.single-post .elementor-element-15ebde75 .elementor-post-info__terms-list-item{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;font-size:11.5px!important;}

/* ------------------------ la colonne de lecture ------------------------- */
/* 68 caractères par ligne : au-delà, l'oeil perd la ligne suivante */
body.single-post .elementor-widget-theme-post-content{max-width:none!important;}
body.single-post .elementor-widget-theme-post-content > .elementor-widget-container{
  max-width:62ch!important;margin-left:auto!important;margin-right:auto!important;}
body.single-post .elementor-widget-theme-post-content p,
body.single-post .elementor-widget-theme-post-content li{font-size:17.5px!important;
  line-height:1.72!important;color:#2f352f!important;}
body.single-post .elementor-widget-theme-post-content p{margin:0 0 22px!important;}
body.single-post .elementor-widget-theme-post-content p.chapo{font-size:20px!important;
  line-height:1.6!important;color:var(--vert-fonce)!important;font-weight:500!important;
  padding-bottom:26px!important;margin-bottom:30px!important;
  border-bottom:1px solid var(--gris-clair)!important;}
body.single-post .elementor-widget-theme-post-content h2{font-family:'Manrope',sans-serif!important;
  font-size:clamp(23px,2.8vw,29px)!important;font-weight:800!important;line-height:1.2!important;
  color:var(--vert-fonce)!important;margin:44px 0 16px!important;text-wrap:balance!important;}
body.single-post .elementor-widget-theme-post-content h3{font-family:'Manrope',sans-serif!important;
  font-size:19px!important;font-weight:800!important;line-height:1.3!important;
  color:var(--vert-fonce)!important;margin:32px 0 10px!important;}
body.single-post .elementor-widget-theme-post-content ul{margin:0 0 24px!important;
  padding-left:0!important;list-style:none!important;display:flex!important;
  flex-direction:column!important;gap:14px!important;}
body.single-post .elementor-widget-theme-post-content ul li{position:relative!important;
  padding-left:26px!important;}
body.single-post .elementor-widget-theme-post-content ul li::before{content:''!important;
  position:absolute!important;left:2px!important;top:11px!important;width:9px!important;
  height:9px!important;border-radius:2px!important;background:var(--vert)!important;
  transform:rotate(45deg)!important;}
body.single-post .elementor-widget-theme-post-content strong{font-weight:700!important;
  color:var(--vert-fonce)!important;}
body.single-post .elementor-widget-theme-post-content a{color:var(--vert)!important;
  text-decoration:none!important;border-bottom:1.5px solid var(--vert)!important;}
body.single-post .elementor-widget-theme-post-content a:hover{color:var(--vert-fonce)!important;
  border-bottom-color:var(--vert-fonce)!important;}

/* --------------------------- l'image de tête ---------------------------- */
body.single-post .elementor-widget-theme-post-featured-image img{border-radius:var(--r)!important;
  width:100%!important;max-height:420px!important;object-fit:cover!important;}

/* ------------------------------ le sommaire ------------------------------ */
/* Le bleu ciel du kit importé était posé sur le conteneur du sommaire, pas sur
   le widget : c'est lui qu'il faut reprendre. */
body.single-post .elementor-element-54851821{background:transparent!important;
  padding:26px 20px 0!important;}
body.single-post .elementor-widget-table-of-contents{width:100%!important;
  max-width:685px!important;margin-left:auto!important;margin-right:auto!important;}
body.single-post .elementor-toc__header{background:var(--sable)!important;
  border:0!important;border-radius:var(--r) var(--r) 0 0!important;padding:15px 22px!important;}
body.single-post .elementor-toc__header-title{font-family:'Manrope',sans-serif!important;
  font-size:12px!important;font-weight:700!important;letter-spacing:.14em!important;
  text-transform:uppercase!important;color:var(--vert-fonce)!important;}
body.single-post .elementor-toc__toggle-button i,
body.single-post .elementor-toc__toggle-button svg{color:var(--vert-fonce)!important;
  fill:var(--vert-fonce)!important;}
body.single-post .elementor-toc__body{background:#fff!important;
  border:1px solid var(--gris-clair)!important;border-top:0!important;
  border-radius:0 0 var(--r) var(--r)!important;padding:16px 22px!important;}
body.single-post .elementor-toc__list-item-text{font-size:15px!important;
  color:var(--gris)!important;text-decoration:none!important;}
body.single-post .elementor-toc__list-item-text:hover,
body.single-post .elementor-toc__list-item.elementor-item-active .elementor-toc__list-item-text{
  color:var(--vert)!important;}
body.single-post .elementor-toc__spinner-container{display:none!important;}

@media (max-width:680px){
  body.single-post .elementor-element-15ebde75{padding:38px 18px 32px!important;}
  body.single-post .elementor-widget-theme-post-content p,
  body.single-post .elementor-widget-theme-post-content li{font-size:16.5px!important;}
  body.single-post .elementor-widget-theme-post-content p.chapo{font-size:18px!important;}
}

/* =====================================================================
   Annonce du dépôt (gabarit 1348 + listing JetEngine 828)
   Même traitement que l'article : le bandeau du kit sortait en gris
   ardoise avec un titre presque illisible, et la ligne courait sur
   113 caractères.
   ===================================================================== */
body.single-annonces{background:var(--fond)!important;}
body.single-annonces .elementor-widget-theme-post-title,
body.single-annonces [data-elementor-type="single-post"] > .e-con:first-child{
  background:var(--vert-fonce)!important;}
body.single-annonces [data-elementor-type="single-post"] > .e-con:first-child{
  padding:52px 20px 46px!important;}
body.single-annonces h1{font-family:'Manrope',sans-serif!important;
  font-size:clamp(28px,4.2vw,44px)!important;font-weight:800!important;
  line-height:1.14!important;color:#fff!important;max-width:26ch!important;
  text-wrap:balance!important;}

/* Le champ « texte » de l'annonce sort dans un éditeur de texte Elementor, pas
   dans un champ dynamique JetEngine : c'est ce widget qu'il faut borner. */
body.single-annonces .elementor-widget-text-editor > .elementor-widget-container,
body.single-annonces .jet-listing-dynamic-field__content,
body.single-annonces .elementor-widget-theme-post-content > .elementor-widget-container{
  max-width:62ch!important;margin-left:auto!important;margin-right:auto!important;}
body.single-annonces .elementor-widget-text-editor p,
body.single-annonces .elementor-widget-text-editor li,
body.single-annonces .jet-listing-dynamic-field__content p,
body.single-annonces .jet-listing-dynamic-field__content li{font-size:17.5px!important;
  line-height:1.72!important;color:#2f352f!important;margin:0 0 22px!important;}
body.single-annonces .elementor-widget-text-editor h2,
body.single-annonces .jet-listing-dynamic-field__content h2{font-family:'Manrope',sans-serif!important;
  font-size:clamp(23px,2.8vw,29px)!important;font-weight:800!important;line-height:1.2!important;
  color:var(--vert-fonce)!important;margin:44px 0 16px!important;text-wrap:balance!important;}
body.single-annonces .elementor-widget-text-editor strong,
body.single-annonces .jet-listing-dynamic-field__content strong{font-weight:700!important;
  color:var(--vert-fonce)!important;}
body.single-annonces .jet-listing-dynamic-image img,
body.single-annonces .jet-listing-dynamic-field img{border-radius:var(--r)!important;
  max-height:420px!important;width:100%!important;object-fit:cover!important;}

@media (max-width:680px){
  body.single-annonces [data-elementor-type="single-post"] > .e-con:first-child{
    padding:38px 18px 32px!important;}
  body.single-annonces .elementor-widget-text-editor p,
  body.single-annonces .jet-listing-dynamic-field__content p{font-size:16.5px!important;}
}

/* Note sous le sélecteur de créneau : la demande n'est pas une confirmation. */
.woocommerce-checkout .rnov-note-creneau{margin:0 0 26px!important;padding:12px 14px!important;
  border-left:3px solid var(--vert,#1a4a29)!important;background:var(--sable,#faf8f3)!important;
  font-size:14px!important;line-height:1.55!important;color:#3d4744!important;border-radius:0 6px 6px 0!important;}
.woocommerce-checkout .rnov-note-creneau strong{color:var(--vert-fonce,#123018)!important;}

/* ------------------------------------------------------------------
   Achat à la surface : quantité et m² côte à côte sur la fiche produit
   ------------------------------------------------------------------ */
.rnov-mesure{display:flex!important;align-items:flex-end!important;gap:14px!important;
  flex-wrap:wrap!important;margin:0 0 6px!important;}
.rnov-mesure-champ{display:flex!important;flex-direction:column!important;gap:6px!important;}
.rnov-mesure-lbl{font-family:'Manrope',sans-serif!important;font-size:13px!important;
  font-weight:700!important;color:#5f6a63!important;line-height:1.2!important;}
.rnov-mesure .quantity{margin:0!important;}
.rnov-mesure .quantity input.qty{height:48px!important;width:104px!important;padding:0 10px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;
  font-size:16px!important;font-weight:700!important;color:#26292b!important;text-align:center!important;}
.rnov-mesure-boite{position:relative!important;display:inline-flex!important;align-items:center!important;}
.rnov-mesure-boite input.rnov-m2{height:48px!important;width:124px!important;padding:0 40px 0 12px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;
  font-size:16px!important;font-weight:700!important;color:#26292b!important;}
.rnov-mesure-boite input.rnov-m2:focus{outline:2px solid var(--vert,#1a4a29)!important;outline-offset:1px!important;}
.rnov-mesure-unite{position:absolute!important;right:12px!important;pointer-events:none!important;
  font-size:14px!important;font-weight:600!important;color:#5f6a63!important;}
.rnov-mesure-aide{margin:0 0 18px!important;font-size:13.5px!important;line-height:1.55!important;
  color:#5f6a63!important;}
.rnov-mesure-aide strong{color:#26292b!important;}
.rnov-mesure-prix{display:block!important;color:var(--vert,#1a4a29)!important;font-weight:700!important;}
.rnov-mesure-note{display:block!important;margin-top:2px!important;font-size:13px!important;
  color:#7b8580!important;}
@media (max-width:480px){
  .rnov-mesure{gap:10px!important;}
  .rnov-mesure .quantity input.qty{width:88px!important;}
  .rnov-mesure-boite input.rnov-m2{width:112px!important;}
}

/* --------- rendement indicatif et boutons − / + du champ quantité --------- */
.rnov-couverture{margin:0 0 18px!important;padding:12px 14px!important;
  border-left:3px solid var(--vert,#1a4a29)!important;background:var(--sable,#faf8f3)!important;
  border-radius:0 8px 8px 0!important;}
.rnov-couverture-titre{display:block!important;font-family:'Manrope',sans-serif!important;
  font-size:15px!important;color:#26292b!important;}
.rnov-couverture-titre strong{color:var(--vert-fonce,#123018)!important;}
.rnov-couverture-note{display:block!important;margin-top:4px!important;font-size:13px!important;
  line-height:1.5!important;color:#5f6a63!important;}

.quantity.rnov-qte{display:inline-flex!important;align-items:stretch!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;overflow:hidden!important;
  background:#fff!important;height:48px!important;width:auto!important;}
.quantity.rnov-qte input.qty{height:46px!important;width:56px!important;padding:0 4px!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  text-align:center!important;font-size:16px!important;font-weight:700!important;color:#26292b!important;
  -moz-appearance:textfield!important;appearance:textfield!important;}
.quantity.rnov-qte input.qty::-webkit-outer-spin-button,
.quantity.rnov-qte input.qty::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important;}
.rnov-qte-btn{display:flex!important;align-items:center!important;justify-content:center!important;
  width:42px!important;padding:0!important;border:0!important;border-radius:0!important;
  background:#f4f1ea!important;color:#26292b!important;font-size:19px!important;line-height:1!important;
  font-weight:700!important;cursor:pointer!important;transition:background .15s ease!important;}
.rnov-qte-btn:hover:not(:disabled){background:#e8e3d7!important;}
.rnov-qte-btn:disabled{opacity:.35!important;cursor:not-allowed!important;}
.rnov-qte-moins{border-right:1px solid #e6e2d8!important;}
.rnov-qte-plus{border-left:1px solid #e6e2d8!important;}

/* Le bloc quantité ne doit jamais se comprimer : sur une colonne étroite,
   les boutons − / + tombaient à 14 px de large. */
.rnov-mesure-champ{flex:0 0 auto!important;}
.quantity.rnov-qte{flex:0 0 auto!important;max-width:none!important;min-width:0!important;}
/* WooCommerce borne .quantity à 70 px de large : les trois éléments
   débordaient d'un conteneur en overflow:hidden, donc invisibles. */
.quantity.rnov-qte input.qty{flex:0 0 56px!important;min-width:56px!important;width:56px!important;}
.rnov-qte-btn{flex:0 0 42px!important;min-width:42px!important;}
@media (max-width:480px){
  .rnov-mesure .quantity input.qty,
  .quantity.rnov-qte input.qty{flex:0 0 48px!important;min-width:48px!important;width:48px!important;}
  .rnov-qte-btn{flex:0 0 38px!important;min-width:38px!important;}
  .rnov-mesure-boite input.rnov-m2{width:104px!important;}
}

/* Prix au m² sous le prix, sur les cartes produit */
.rnov-page .prix .prix-m2{flex:0 0 100%!important;margin-top:2px!important;
  font-family:'Manrope',sans-serif!important;font-size:12.5px!important;font-weight:700!important;
  color:var(--vert,#1a4a29)!important;line-height:1.3!important;}
.rnov-page .prix .prix-m2-approx{font-weight:600!important;color:var(--gris,#5f6a63)!important;
  cursor:help!important;}

/* Bandeau du tri au prix du m² */
.rnov-page .tri-m2-note{margin:0 0 16px!important;padding:10px 14px!important;
  background:var(--sable,#faf8f3)!important;border-left:3px solid var(--vert,#1a4a29)!important;
  border-radius:0 8px 8px 0!important;font-size:13.5px!important;line-height:1.5!important;
  color:#5f6a63!important;}
.rnov-page .tri-m2-note a{color:var(--vert,#1a4a29)!important;font-weight:700!important;}

/* ---------------- écran d'acceptation d'un devis, et inscription ---------- */
.rnov-devis-ecran{max-width:720px!important;margin:0 auto!important;}
.rnov-devis-ecran h2{margin:0 0 12px!important;}
.rnov-devis-faits{list-style:none!important;margin:0 0 22px!important;padding:16px 18px!important;
  background:var(--sable,#faf8f3)!important;border-left:3px solid var(--vert,#1a4a29)!important;
  border-radius:0 8px 8px 0!important;display:grid!important;gap:8px!important;}
.rnov-devis-faits li{display:flex!important;justify-content:space-between!important;gap:16px!important;
  align-items:baseline!important;margin:0!important;}
.rnov-devis-faits span{font-size:13.5px!important;color:#5f6a63!important;}
.rnov-devis-faits strong{font-family:'Manrope',sans-serif!important;color:#26292b!important;text-align:right!important;}
.rnov-devis-form{margin-top:24px!important;display:flex!important;flex-wrap:wrap!important;gap:12px!important;
  align-items:center!important;}
.rnov-devis-mention{flex:0 0 100%!important;margin:0 0 6px!important;font-size:13.5px!important;
  line-height:1.6!important;color:#5f6a63!important;}
.rnov-devis-recap{margin-top:14px!important;font-size:16px!important;}

.rnov-inscription{border:1px solid #e6e2d8!important;border-radius:10px!important;padding:16px 18px!important;
  margin:0 0 18px!important;background:#fff!important;}
.rnov-inscription legend{padding:0 8px!important;font-family:'Manrope',sans-serif!important;
  font-weight:700!important;font-size:14px!important;color:#5f6a63!important;}
.rnov-type-compte{display:flex!important;gap:20px!important;margin:0 0 14px!important;}
.rnov-type-compte label{display:inline-flex!important;align-items:center!important;gap:7px!important;
  font-weight:600!important;color:#26292b!important;cursor:pointer!important;}
.rnov-type-compte input{width:auto!important;margin:0!important;}
.rnov-aide{display:block!important;margin-top:4px!important;font-size:13px!important;line-height:1.5!important;
  color:#7b8580!important;}
.rnov-aide-forte{margin-top:12px!important;padding:10px 12px!important;background:var(--sable,#faf8f3)!important;
  border-radius:8px!important;color:#5f6a63!important;}
.rnov-bloc-pro[hidden]{display:none!important;}

/* =========================== espace de gestion du dépôt =================== */
.rnov-g{max-width:1080px!important;}
.rnov-g-accueil{max-width:440px!important;margin:0 auto!important;}
.rnov-g-tete{display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;
  align-items:flex-end!important;gap:12px!important;margin:0 0 18px!important;}
.rnov-g-sur{display:block!important;font-family:'Manrope',sans-serif!important;font-size:12px!important;
  font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;
  color:var(--olive,#5f6a63)!important;}
.rnov-g h2{margin:2px 0 0!important;display:flex!important;align-items:baseline!important;
  gap:12px!important;flex-wrap:wrap!important;}
.rnov-g-jour{font-size:14px!important;font-weight:500!important;color:var(--gris,#5f6a63)!important;
  text-transform:capitalize!important;}
.rnov-g-qui{font-size:13.5px!important;color:var(--gris,#5f6a63)!important;}
.rnov-g-nav{display:flex!important;flex-wrap:wrap!important;gap:4px!important;
  border-bottom:2px solid var(--sable-fonce,#e6e2d8)!important;margin:0 0 22px!important;}
.rnov-g-nav a{padding:9px 16px!important;font-family:'Manrope',sans-serif!important;font-weight:700!important;
  font-size:14px!important;color:var(--gris,#5f6a63)!important;text-decoration:none!important;
  border-bottom:2px solid transparent!important;margin-bottom:-2px!important;}
.rnov-g-nav a:hover{color:var(--vert,#1a4a29)!important;}
.rnov-g-nav a.on{color:var(--vert-fonce,#123018)!important;border-bottom-color:var(--vert,#1a4a29)!important;}

.rnov-g-msg{padding:11px 15px!important;border-radius:8px!important;font-size:14.5px!important;
  margin:0 0 20px!important;}
.rnov-g-ok{background:#e9f2ec!important;color:#123018!important;border-left:3px solid var(--vert,#1a4a29)!important;}
.rnov-g-erreur{background:#fbeee6!important;color:#8a3c0f!important;border-left:3px solid #b04d13!important;}

.rnov-g-tuiles{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;
  gap:12px!important;margin:0 0 28px!important;}
.rnov-g-tuile{display:block!important;padding:15px 17px!important;background:#fff!important;
  border:1px solid var(--sable-fonce,#e6e2d8)!important;border-left:4px solid #cfcabc!important;
  border-radius:8px!important;text-decoration:none!important;color:var(--encre,#26292b)!important;}
a.rnov-g-tuile:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)!important;}
.rnov-g-tuile.actif{border-left-color:var(--vert,#1a4a29)!important;}
.rnov-g-tuile.alerte{border-left-color:#b04d13!important;}
.rnov-g-tuile .n{display:block!important;font-family:'Manrope',sans-serif!important;font-weight:800!important;
  font-size:30px!important;line-height:1.05!important;font-variant-numeric:tabular-nums!important;}
.rnov-g-tuile.actif .n{color:var(--vert,#1a4a29)!important;}
.rnov-g-tuile.alerte .n{color:#b04d13!important;}
.rnov-g-tuile .l{display:block!important;margin-top:2px!important;font-size:13px!important;
  color:var(--gris,#5f6a63)!important;}

.rnov-g h3{margin:28px 0 6px!important;font-size:18px!important;}
.rnov-g h4{margin:24px 0 6px!important;font-size:13px!important;letter-spacing:.09em!important;
  text-transform:uppercase!important;color:var(--gris,#5f6a63)!important;font-weight:700!important;}
.rnov-g-aide{margin:0 0 12px!important;font-size:13.5px!important;color:var(--gris,#5f6a63)!important;
  max-width:70ch!important;}
.rnov-g-vide{margin:0 0 8px!important;padding:14px 16px!important;background:var(--sable,#faf8f3)!important;
  border-left:3px solid var(--vert,#1a4a29)!important;border-radius:0 8px 8px 0!important;
  color:var(--gris,#5f6a63)!important;font-size:14.5px!important;}

.rnov-g-defile{overflow-x:auto!important;}
.rnov-g-table{width:100%!important;border-collapse:collapse!important;font-size:14.5px!important;
  background:#fff!important;border:1px solid var(--sable-fonce,#e6e2d8)!important;border-radius:8px!important;}
.rnov-g-table th,.rnov-g-table td{padding:11px 13px!important;text-align:left!important;
  border-bottom:1px solid var(--sable-fonce,#e6e2d8)!important;vertical-align:middle!important;}
.rnov-g-table thead th{font-family:'Manrope',sans-serif!important;font-size:11.5px!important;
  font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  color:var(--gris,#5f6a63)!important;}
.rnov-g-table tbody tr:last-child td{border-bottom:none!important;}
.rnov-g-table tfoot th{font-family:'Manrope',sans-serif!important;border-top:2px solid var(--sable-fonce,#e6e2d8)!important;}
.rnov-g-num,.rnov-g-montant,.rnov-g-heure{font-variant-numeric:tabular-nums!important;white-space:nowrap!important;}
.rnov-g-heure{font-weight:700!important;}
.rnov-g-tel{color:var(--gris,#5f6a63)!important;font-size:12.5px!important;}
.rnov-g-ref{color:var(--gris,#5f6a63)!important;font-size:12.5px!important;}
.rnov-g-reste{color:var(--gris,#5f6a63)!important;}
.rnov-g-expire{color:#b04d13!important;font-weight:700!important;}

.rnov-g-retour{margin:0 0 10px!important;font-size:14px!important;}
.rnov-g-fiche-tete{display:flex!important;align-items:baseline!important;gap:14px!important;
  flex-wrap:wrap!important;}
.rnov-g-fiche-tete h3{margin:0!important;}
.rnov-g-statut{font-family:'Manrope',sans-serif!important;font-size:12px!important;font-weight:700!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;padding:4px 10px!important;
  border-radius:4px!important;background:var(--sable,#faf8f3)!important;color:var(--vert-fonce,#123018)!important;
  border:1px solid var(--sable-fonce,#e6e2d8)!important;}

/* ---- filière d'une commande : comptoir ou réservation en ligne ----------
   Les deux filières ne se mélangent plus dans les onglets ; la pastille dit
   laquelle on regarde, pour lever tout doute sur une fiche ouverte seule. */
.rnov-g-origine{font-family:'Manrope',sans-serif!important;font-size:12px!important;
  font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;
  padding:4px 10px!important;border-radius:4px!important;}
.rnov-g-origine-comptoir{background:#fbeee6!important;color:#8c3d0f!important;
  border:1px solid #f0d6c4!important;}
.rnov-g-origine-client{background:#eaf3ec!important;color:var(--vert-fonce,#123018)!important;
  border:1px solid #cfe3d4!important;}

/* ---- registre des documents émis ----------------------------------------
   On ne liste pas des fichiers (rien n'est stocké) mais des documents émis,
   réédités à l'identique depuis leur numéro et leur date. */
.rnov-g-table-doc tbody tr[hidden]{display:none!important;}
.rnov-g-cherche-doc-p{max-width:460px!important;margin:14px 0 4px!important;}
.rnov-g-sous{display:block!important;font-size:12.5px!important;font-weight:400!important;
  color:var(--gris,#7b8580)!important;margin-top:2px!important;}
.rnov-g-bougee{display:inline-block!important;margin-top:5px!important;padding:2px 7px!important;
  border-radius:4px!important;font-size:11px!important;font-weight:700!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;cursor:help!important;
  background:#fdf3e3!important;color:#8a5a10!important;border:1px solid #f2dfba!important;}
.rnov-g-lien-fiche{display:inline-block!important;margin-left:10px!important;font-size:13px!important;
  color:var(--gris,#7b8580)!important;text-decoration:underline!important;white-space:nowrap!important;}
.rnov-g-journal-pdf{margin:4px 0 18px!important;font-size:13.5px!important;}
.rnov-g-journal-pdf summary{cursor:pointer!important;color:var(--olive,#5f6a63)!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;font-size:13px!important;}
.rnov-g-journal-pdf ul{margin:8px 0 0 18px!important;padding:0!important;}
.rnov-g-journal-pdf li{margin:0 0 3px!important;color:var(--gris,#7b8580)!important;line-height:1.5!important;}

/* ---- exemplaires envoyés, figés à l'envoi et rangés hors du web --------- */
.rnov-g-envois{margin:18px 0 4px!important;padding:14px 16px!important;
  background:var(--sable,#f6f3ec)!important;border:1px solid var(--sable-fonce,#e6e2d8)!important;
  border-radius:8px!important;}
.rnov-g-envois h4{margin:0 0 4px!important;}
.rnov-g-envois .rnov-g-aide{margin:0 0 10px!important;}
.rnov-g-envois ul{margin:0!important;padding:0 0 0 18px!important;}
.rnov-g-envois li{margin:0 0 8px!important;font-size:14px!important;line-height:1.5!important;}
.rnov-g-envois li:last-child{margin-bottom:0!important;}
.rnov-g-envois a{font-weight:700!important;color:#b04d13!important;}
.rnov-g-lien-envoye{display:inline-block!important;margin-left:10px!important;font-size:13px!important;
  font-weight:700!important;color:#b04d13!important;text-decoration:underline!important;
  white-space:nowrap!important;cursor:help!important;}

/* ---- remise automatique : l'incitation au palier, au panier ------------- */
.rnov-palier-avis{margin:0 0 12px!important;padding:11px 14px!important;border-radius:8px!important;
  background:#fdf3e3!important;border:1px solid #f2dfba!important;color:#8a5a10!important;
  font-size:14px!important;line-height:1.5!important;}

/* ---- inventaire : l'état d'une référence se lit d'un coup d'œil --------- */
.rnov-g-table-stock tbody tr[hidden]{display:none!important;}
.rnov-g-cherche-stock-p{max-width:420px!important;margin:14px 0 4px!important;}
.rnov-g-stock{display:inline-block!important;min-width:44px!important;text-align:center!important;
  padding:4px 10px!important;border-radius:4px!important;font-family:'Manrope',sans-serif!important;
  font-size:15px!important;font-weight:800!important;}
.rnov-g-stock-ok{background:#eaf3ec!important;color:var(--vert-fonce,#123018)!important;
  border:1px solid #cfe3d4!important;}
.rnov-g-stock-bas{background:#fdf3e3!important;color:#8a5a10!important;border:1px solid #f2dfba!important;}
.rnov-g-stock-rupture{background:#fbeee6!important;color:#8c3d0f!important;border:1px solid #f0d6c4!important;}
.rnov-g-stock-form{display:flex!important;flex-wrap:wrap!important;gap:7px!important;
  align-items:center!important;margin:0!important;}
.rnov-g-stock-form .rnov-g-qte{width:78px!important;height:38px!important;padding:0 8px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;
  text-align:center!important;font-size:14px!important;font-weight:700!important;}
.rnov-g-stock-form select{height:38px!important;padding:0 8px!important;border:1px solid #d8d5cc!important;
  border-radius:8px!important;background:#fff!important;font-size:13.5px!important;}
.rnov-g-stock-form .rnov-g-motif{flex:1 1 170px!important;min-width:0!important;height:38px!important;
  padding:0 10px!important;border:1px solid #d8d5cc!important;border-radius:8px!important;
  background:#fff!important;font-size:13.5px!important;}
.rnov-g-mvt-ligne td{padding-top:0!important;border-top:0!important;}

/* ---- prix au m² : le TTC mène, le HT suit en retrait --------------------
   Vers un particulier c'est le prix toutes taxes qui doit être affiché
   (art. L.112-1 du code de la consommation) ; l'artisan garde son HT. */
.prix-m2-ht{display:inline!important;margin-left:.45em!important;font-size:.86em!important;
  font-weight:400!important;color:var(--gris,#7b8580)!important;white-space:nowrap!important;}
.rnov-g-faits{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:1px!important;background:var(--sable-fonce,#e6e2d8)!important;border:1px solid var(--sable-fonce,#e6e2d8)!important;
  border-radius:8px!important;overflow:hidden!important;margin:16px 0 8px!important;}
.rnov-g-faits > div{background:#fff!important;padding:11px 14px!important;}
.rnov-g-faits span{display:block!important;font-size:11.5px!important;font-weight:700!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--gris,#5f6a63)!important;
  font-family:'Manrope',sans-serif!important;margin-bottom:2px!important;}
.rnov-g-faits strong{font-size:14.5px!important;color:var(--encre,#26292b)!important;}

.rnov-g-docs,.rnov-g-actions{display:flex!important;flex-wrap:wrap!important;gap:9px!important;
  align-items:center!important;margin:6px 0 4px!important;}
.rnov-g-act{margin:0!important;}
.rnov-g-fait{margin:0!important;font-size:14.5px!important;color:var(--vert-fonce,#123018)!important;}
.rnov-g-note-client{margin:14px 0!important;padding:11px 14px!important;background:var(--sable,#faf8f3)!important;
  border-radius:8px!important;font-size:14.5px!important;}
.rnov-g-journal{list-style:none!important;margin:6px 0 0!important;padding:0!important;
  font-size:13.5px!important;color:var(--gris,#5f6a63)!important;}
.rnov-g-journal li{padding:6px 0!important;border-bottom:1px dotted var(--sable-fonce,#e6e2d8)!important;}
.rnov-g-journal span{display:inline-block!important;min-width:105px!important;
  font-variant-numeric:tabular-nums!important;color:var(--encre,#26292b)!important;}

.rnov-g-carte-pro{background:#fff!important;border:1px solid var(--sable-fonce,#e6e2d8)!important;
  border-left:4px solid #cfcabc!important;border-radius:8px!important;padding:15px 17px!important;
  margin:0 0 14px!important;}
.rnov-g-carte-pro.attente{border-left-color:#b04d13!important;}
.rnov-g-pro-tete{display:flex!important;justify-content:space-between!important;align-items:baseline!important;
  gap:12px!important;flex-wrap:wrap!important;}
.rnov-g-pro-tete strong{font-family:'Manrope',sans-serif!important;font-size:16px!important;}
.rnov-g-pro-etat{font-size:11.5px!important;font-weight:700!important;letter-spacing:.07em!important;
  text-transform:uppercase!important;color:var(--gris,#5f6a63)!important;}
.rnov-g-carte-pro .rnov-g-faits{margin:12px 0 12px!important;}

/* ------- composition d'un devis depuis l'espace de gestion --------------- */
.rnov-g-titre-action{display:flex!important;justify-content:space-between!important;
  align-items:baseline!important;gap:14px!important;flex-wrap:wrap!important;}
.rnov-g-titre-action h3{margin:28px 0 6px!important;}
.rnov-g-form{max-width:620px!important;background:#fff!important;
  border:1px solid var(--sable-fonce,#e6e2d8)!important;border-radius:8px!important;
  padding:20px 22px!important;margin:14px 0 0!important;}
.rnov-g-champ{margin:0 0 15px!important;}
.rnov-g-champ label{display:block!important;font-family:'Manrope',sans-serif!important;
  font-size:13px!important;font-weight:700!important;color:var(--olive,#5f6a63)!important;
  margin-bottom:5px!important;}
.rnov-g-champ input,.rnov-g-champ select{width:100%!important;height:44px!important;
  padding:0 12px!important;border:1px solid #d8d5cc!important;border-radius:8px!important;
  background:#fff!important;font-size:15px!important;color:var(--encre,#26292b)!important;}
.rnov-g-champ select{padding:0 8px!important;}
.rnov-g-note{display:block!important;margin-top:5px!important;font-size:12.5px!important;
  line-height:1.5!important;color:var(--gris,#7b8580)!important;}
.rnov-g-duo{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 14px!important;}
@media (max-width:560px){.rnov-g-duo{grid-template-columns:1fr!important;}}

/* ---- ouverture d'un devis : choisir un client connu masque l'identité ----
   Les champs Prénom/Nom/Société/Téléphone/E-mail restaient visibles et vides
   alors que le serveur reprend déjà tout du compte : on les remplace par un
   récapitulatif. La référence chantier, elle, appartient au devis et reste. */
.rnov-g-form [hidden]{display:none!important;}
.rnov-g-recap{margin:0 0 15px!important;padding:13px 15px!important;
  background:var(--sable,#f6f3ec)!important;border:1px solid var(--sable-fonce,#e6e2d8)!important;
  border-radius:8px!important;}
.rnov-g-recap p{margin:0!important;font-size:14px!important;line-height:1.55!important;
  color:var(--encre,#26292b)!important;}
.rnov-g-recap-qui{font-weight:700!important;}
.rnov-g-recap-mail{margin-top:2px!important;font-size:13px!important;
  color:var(--gris,#7b8580)!important;}
.rnov-g-recap p:last-child{margin-top:9px!important;}
.rnov-g-corriger{border:0!important;background:transparent!important;padding:0!important;
  font-family:'Manrope',sans-serif!important;font-size:13px!important;font-weight:700!important;
  color:#b04d13!important;text-decoration:underline!important;cursor:pointer!important;}
.rnov-g-corriger:hover{color:#8c3d0f!important;}

.rnov-g-ligne-form{display:flex!important;flex-wrap:wrap!important;gap:9px!important;
  align-items:center!important;margin:6px 0 4px!important;}
.rnov-g-ligne-form select{flex:1 1 340px!important;min-width:0!important;max-width:100%!important;
  height:42px!important;padding:0 8px!important;border:1px solid #d8d5cc!important;
  border-radius:8px!important;background:#fff!important;font-size:14px!important;}
.rnov-g-ligne-form input[type=text]{flex:1 1 240px!important;height:42px!important;padding:0 12px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;font-size:14px!important;}
.rnov-g-ligne-form .rnov-g-qte{width:80px!important;height:42px!important;padding:0 10px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;
  text-align:center!important;font-size:14px!important;font-weight:700!important;}
.rnov-g-ligne-form .rnov-g-val{flex:0 0 110px!important;text-align:center!important;font-weight:700!important;}
.rnov-g-retirer{width:1%!important;white-space:nowrap!important;}
.rnov-g-x{border:0!important;background:transparent!important;cursor:pointer!important;
  font-size:20px!important;line-height:1!important;color:#b04d13!important;padding:2px 6px!important;
  border-radius:4px!important;}
.rnov-g-x:hover{background:#fbeee6!important;}

/* ---- ajustements au comptoir : quantité en ligne, note, chantier -------- */
.rnov-g-qte-form{display:inline-flex!important;align-items:center!important;gap:4px!important;margin:0!important;}
.rnov-g-qte-form input[type=number]{width:62px!important;height:34px!important;padding:0 6px!important;
  border:1px solid #d8d5cc!important;border-radius:6px!important;background:#fff!important;
  text-align:center!important;font-size:14px!important;font-weight:700!important;
  font-variant-numeric:tabular-nums!important;}
.rnov-g-ok-btn{border:1px solid #d8d5cc!important;background:var(--sable,#faf8f3)!important;
  color:var(--vert,#1a4a29)!important;border-radius:6px!important;height:34px!important;width:30px!important;
  cursor:pointer!important;font-size:14px!important;line-height:1!important;padding:0!important;}
.rnov-g-ok-btn:hover{background:#e9f2ec!important;}
.rnov-g-note-form{display:flex!important;flex-direction:column!important;gap:9px!important;
  align-items:flex-start!important;max-width:620px!important;margin:6px 0 4px!important;}
.rnov-g-note-form textarea{width:100%!important;padding:10px 12px!important;border:1px solid #d8d5cc!important;
  border-radius:8px!important;background:#fff!important;font-size:14.5px!important;line-height:1.5!important;
  font-family:inherit!important;resize:vertical!important;}
.rnov-g-case{display:flex!important;align-items:flex-start!important;gap:8px!important;
  font-size:13.5px!important;color:var(--gris,#5f6a63)!important;line-height:1.5!important;cursor:pointer!important;}
.rnov-g-case input{width:auto!important;margin:3px 0 0!important;flex:0 0 auto!important;}

/* Champ de recherche du sélecteur de références */
.rnov-g-ligne-form .rnov-g-cherche{flex:1 1 200px!important;height:42px!important;padding:0 12px!important;
  border:1px solid #d8d5cc!important;border-radius:8px!important;background:#fff!important;
  font-size:14px!important;}
.rnov-g-ligne-form .rnov-g-cherche:focus{outline:2px solid var(--vert,#1a4a29)!important;outline-offset:1px!important;}
.rnov-g-compteur{margin:2px 0 0!important;font-size:12.5px!important;color:var(--gris,#7b8580)!important;
  min-height:1.1em!important;}
