/* systeme: macro-matiere */
/* Charte CBS 30/10/2026 — emballage-alimentaire.com */

.cbs-top{display:none!important}

/* Header 0141 — Chivo (DA proposition E), pas de serif Fraunces/Source */
@font-face{
  font-family:"Chivo";
  src:url(/assets/fonts/chivo-latin-wght-normal.woff2) format("woff2");
  font-weight:100 900;
  font-display:swap;
}
.hd-pill .logo,
.hd-pill .logo-name,
.hd-pill .logo-domain,
.hd-nav,
.hd-nav a,
.hd-nav summary,
.ea-panel nav a,
.hd-right a.btn-rdv-hd,
.hd-right a.btn-devis-hd,
.ea-panel-cta a.btn-rdv-hd,
.ea-panel-cta a.btn-devis-hd{
  font-family:"Chivo",Barlow,system-ui,sans-serif!important;
}
/* Logo : nom → trait vert collé (= largeur du nom) → domaine — modèle sac-de-ciment */
.hd-pill .logo{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  line-height:1;
  gap:0!important;
}
.hd-pill .logo-name,
body.home .hd-pill .logo-name,
body.home .logo-name{
  font-family:"Chivo",Barlow,system-ui,sans-serif!important;
  font-weight:800!important;
  font-size:15px!important;
  letter-spacing:.02em!important;
  line-height:1!important;
  text-transform:uppercase;
  color:#003366!important;
  display:block!important;
  width:max-content!important;
  max-width:100%;
  padding:0 0 2px!important;
  margin:0!important;
  border-bottom:2px solid #1C8048!important; /* trait collé, largeur du nom */
  box-sizing:border-box;
}
.hd-pill .logo-name::after{
  content:none!important;
  display:none!important; /* plus de ::after : le border-bottom fait le trait */
}
.hd-pill .logo .logo-domain{
  display:block!important;
  margin-top:3px!important;
  font-size:11px!important;
  font-weight:600!important;
  color:#1C8048!important;
  letter-spacing:.02em;
  line-height:1.1;
  white-space:nowrap;
}
.hd-nav{
  gap:14px!important;
  font-size:14px!important;
  font-weight:600!important;
}
@media (min-width:1025px) and (max-width:1360px){
  .hd-nav{gap:10px!important;font-size:13px!important}
  .hd-pill .logo-name,
  body.home .hd-pill .logo-name,
  body.home .logo-name{font-size:13.5px!important}
  .hd-pill .logo .logo-domain{font-size:10px!important}
  .hd-right{gap:8px!important}
}

a.btn-rdv-hd,
a.btn-devis-hd{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  height:40px;
  min-height:40px!important;
  max-height:40px;
  padding:0 18px!important;
  border-radius:999px!important;
  font-size:14.5px!important;
  font-weight:600!important;
  line-height:1.2!important;
  text-decoration:none!important;
  white-space:nowrap;
  transform:none!important;
  box-shadow:none!important;
}
a.btn-rdv-hd::after,
a.btn-devis-hd::after,
a.btn-rdv-page::after,
footer.cbs-foot a.btn-rdv::after{content:none!important;display:none!important}

a.btn-rdv-hd{
  background:#fff!important;
  color:#003366!important;
  border:1.5px solid #003366!important;
}
a.btn-rdv-hd:hover,
a.btn-rdv-hd:focus-visible{
  background:#003366!important;
  color:#fff!important;
  border-color:#003366!important;
}
a.btn-devis-hd{
  background:#1C8048!important;
  color:#fff!important;
  border:0!important;
}
a.btn-devis-hd:hover,
a.btn-devis-hd:focus-visible{
  background:#166A3B!important;
  color:#fff!important;
}

.hd-right{gap:10px}
.mmenu .drop-menu a.btn-rdv-hd,
.mmenu .drop-menu a.btn-devis-hd{
  margin:8px 8px 0;
  width:calc(100% - 16px);
}

@media (max-width:1024px){
  .hd-right>a.btn-rdv-hd,
  .hd-right>a.btn-devis-hd{display:none!important}
  .mmenu a.btn-rdv-hd,
  .mmenu a.btn-devis-hd{display:inline-flex!important}
}
@media (min-width:1025px){
  .hd-right>a.btn-rdv-hd,
  .hd-right>a.btn-devis-hd{display:inline-flex!important}
}

footer.cbs-foot{
  background:#092142!important;
  color:rgba(255,255,255,.75)!important;
  font-size:15px!important;
  line-height:1.6!important;
}
footer.cbs-foot .brand .name{
  display:table;
  color:#fff!important;
  font-weight:700;
  font-size:22px;
  letter-spacing:0;
  text-decoration:none;
  text-transform:none;
}
html:not([lang="zh"]):not([lang="ja"]) footer.cbs-foot .brand .name{text-transform:uppercase}
footer.cbs-foot .brand .name::after{
  content:"";
  display:block;
  height:2px;
  margin-top:8px;
  background:#1C8048; /* aligné logo header / vert boutons */
}
footer.cbs-foot .domain{display:none!important}
footer.cbs-foot .brand p{
  margin-top:16px;
  max-width:36em;
  color:rgba(255,255,255,.75);
  font-size:14px;
  line-height:1.55;
}
footer.cbs-foot .main{
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr)!important;
  gap:48px 56px!important;
}
footer.cbs-foot .main li{white-space:normal}
footer.cbs-foot h4::after{content:none!important;display:none!important}

footer.cbs-foot .contact a.btn-rdv,
footer.cbs-foot .contact a.btn-rdv:visited{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  background:transparent!important;
  color:#fff!important;
  border:2px solid #fff!important;
  border-radius:5px!important;
  padding:11px 22px!important;
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.2!important;
  text-decoration:none!important;
  white-space:normal;
}
footer.cbs-foot .contact a.btn-rdv:hover,
footer.cbs-foot .contact a.btn-rdv:focus-visible{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  border-color:#fff!important;
}
footer.cbs-foot .contact li.f-rdv{display:block;margin-top:16px}

footer.cbs-foot #sites-cbs-group{
  border-top:1px solid rgba(255,255,255,.12);
  padding:48px 0 56px;
  text-align:center;
}
footer.cbs-foot #sites-cbs-group>.label{
  display:table;
  margin:0 auto 30px;
  padding:0 0 0 .14em;
  font-size:15px;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.3;
  text-transform:uppercase;
  text-align:center;
  color:#fff;
  background:none;
  border:0;
  text-decoration:none!important;
  box-shadow:none;
}
footer.cbs-foot #sites-cbs-group>.label::before{content:none!important;display:none!important}
footer.cbs-foot #sites-cbs-group>.label::after{
  content:"";
  display:block;
  height:2px;
  margin:8px .14em 0 0;
  background:#5BC889;
}
footer.cbs-foot #sites-cbs-group .gsecs{
  display:grid;
  grid-template-columns:max-content max-content max-content;
  justify-content:center;
  align-items:start;
  column-gap:72px;
  row-gap:34px;
  max-width:1040px;
  margin:0 auto;
}
footer.cbs-foot #sites-cbs-group .gsec{display:flex;flex-direction:column;align-items:center;min-width:0}
footer.cbs-foot #sites-cbs-group .gsec-wide{grid-column:1 / -1;justify-self:stretch}
footer.cbs-foot #sites-cbs-group .gt{
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#5BC889;
  line-height:16px;
  margin:0 0 8px;
}
footer.cbs-foot #sites-cbs-group p{font-size:16px;line-height:28px;margin:0;color:#fff;max-width:none}
footer.cbs-foot #sites-cbs-group .gi{display:inline-block;padding:0 2px;line-height:28px}
footer.cbs-foot #sites-cbs-group a.gi{
  color:#fff!important;
  font-size:16px;
  font-weight:400;
  text-decoration:none;
}
footer.cbs-foot #sites-cbs-group a.gi:hover,
footer.cbs-foot #sites-cbs-group a.gi:focus-visible{color:#5BC889!important;text-decoration:underline}
footer.cbs-foot #sites-cbs-group a.gi[aria-current="page"]{font-weight:600}
footer.cbs-foot #sites-cbs-group .sep{margin:0 10px;color:#fff;opacity:.45}
footer.cbs-foot #sites-cbs-group .gsec-wide p{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:24px;
  row-gap:4px;
  width:100%;
  max-width:880px;
  justify-items:center;
}
footer.cbs-foot #sites-cbs-group .gsec-wide .sep,
footer.cbs-foot #sites-cbs-group .gsec-wide br.gbr{display:none}
footer.cbs-foot #sites-cbs-group .gsec-site p>*:not(a.gi){display:none!important}

@media (max-width:900px) and (min-width:641px){
  footer.cbs-foot #sites-cbs-group .gsecs{grid-template-columns:max-content max-content;column-gap:56px}
  footer.cbs-foot #sites-cbs-group .gsec-prot{grid-column:1 / -1}
}
@media (max-width:640px){
  footer.cbs-foot #sites-cbs-group{padding:40px 0 44px}
  footer.cbs-foot #sites-cbs-group .gsecs{grid-template-columns:minmax(0,1fr);row-gap:22px}
  footer.cbs-foot #sites-cbs-group .gsec,
  footer.cbs-foot #sites-cbs-group .gsec-wide,
  footer.cbs-foot #sites-cbs-group .gsec-prot{grid-column:1 / -1;align-items:stretch}
  footer.cbs-foot #sites-cbs-group p,
  footer.cbs-foot #sites-cbs-group .gsec-wide p{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px 2px;
    max-width:none;
  }
  footer.cbs-foot #sites-cbs-group .gsec-one p{grid-template-columns:minmax(0,1fr)}
  footer.cbs-foot #sites-cbs-group .sep,
  footer.cbs-foot #sites-cbs-group br.gbr{display:none}
  footer.cbs-foot #sites-cbs-group .gi{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    white-space:normal;
    text-align:center;
  }
}

.fil{font-size:14px;color:#5A6B7D;margin:28px 0 18px}
.fil a{color:#003366;text-decoration:underline;text-underline-offset:3px}
.page-contact,.page-legal{padding-bottom:64px}
.page-contact h1,.page-legal h1{
  color:#003366;
  font-size:clamp(32px,4vw,44px);
  font-weight:700;
  line-height:1.15;
  margin:0 0 12px;
}
.page-contact h1::after,.page-legal h1::after{content:none;display:none}
.page-contact .intro,.page-legal p{color:#0F1F33}
.page-legal h2{color:#003366;font-size:22px;font-weight:700;margin:28px 0 8px}
.joindre{
  border:1px solid #E2E8F0;
  background:#fff;
  padding:28px 32px;
  margin:8px 0 28px;
}
.joindre h2{color:#003366;font-size:22px;font-weight:700;margin:0 0 14px}
.joindre p{margin:0 0 10px;color:#0F1F33}
.joindre span{display:block;color:#5A6B7D;font-size:13px;font-weight:600}
a.btn-rdv-page{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  background:#1C8048;
  color:#fff!important;
  border:0;
  border-radius:6px;
  padding:16px 40px;
  font-size:17px;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
}
a.btn-rdv-page:hover,
a.btn-rdv-page:focus-visible{background:#166A3B;color:#fff!important}
.page-contact .contact-panel{
  display:block;
  background:transparent;
  padding:0;
  border-radius:0;
  color:inherit;
}
.page-contact .cp-form{border-radius:6px;border:1px solid #E2E8F0}
.page-contact .cp-form input,
.page-contact .cp-form textarea,
.page-contact .cp-form select{
  border-radius:6px;
  border-color:#E2E8F0;
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

/* menu-blanc-1319 : fond menu hamburger / pilule blanc pur */.hd-wrap,.hd-wrap.scrolled,.hd-wrap.open{background:#FFFFFF!important}.hd-pill,.hd-wrap.scrolled .hd-pill,.hd-wrap.open .hd-pill{background:#FFFFFF!important;border:1px solid #E2E8F0}.hd-wrap.scrolled .hd-pill{box-shadow:0 12px 32px rgba(0,34,68,.14)}.ea-panel{background:#FFFFFF!important}/* ea-burger-3010 */
.hd-wrap .ea-burger{
  display:none;
  width:48px;
  height:48px;
  padding:0;
  margin:0;
  align-items:center;
  justify-content:center;
  border:1.5px solid #003366;
  border-radius:0;
  background:#fff;
  color:#003366;
  cursor:pointer;
  flex:none;
}
.ea-burger svg{width:22px;height:22px;display:block}
.ea-burger .i-x{display:none}
.hd-wrap.open .ea-burger .i-m{display:none}
.hd-wrap.open .ea-burger .i-x{display:block}
.ea-panel[hidden]{display:none!important}
.ea-burger:focus-visible,
.ea-panel a:focus-visible{
  outline:2px solid #1C8048;
  outline-offset:3px;
}
@media (max-width:1024px){
  .hd-wrap .ea-burger{display:inline-flex}
  .ea-panel{
    position:absolute;
    left:0;
    right:0;
    top:100%;
    z-index:80;
    max-height:calc(100svh - 72px);
    overflow:auto;
    background:#FFFFFF;
    border-top:2px solid #5BC889;
    padding:8px 20px 24px;
  }
  .ea-panel nav{display:flex;flex-direction:column}
  .ea-panel nav a{
    min-height:48px;
    display:flex;
    align-items:center;
    color:#003366;
    font-weight:600;
    font-size:16px;
    line-height:22px;
    text-decoration:none;
    border-bottom:1px solid #E2E8F0;
  }
  .ea-panel-cta{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:16px;
    align-items:stretch;
  }
  .ea-panel-cta a.btn-rdv-hd,
  .ea-panel-cta a.btn-devis-hd{width:100%}
}
@media (min-width:1025px){
  .ea-panel{display:none!important}
}

/* Sélecteur de langue : pilule, toutes les pages. Pas un bouton vert. */
summary.lang-pill{
  border-radius:999px!important;
  background:#fff!important;
  color:#003366!important;
  border:1.5px solid #003366!important;
}
summary.lang-pill:hover,
summary.lang-pill:focus-visible{
  background:#fff!important;
  color:#003366!important;
  border-color:#003366!important;
}

/* Accueil : Nous joindre + formulaire, sans la boîte de la page contact */
body.home .joindre{
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  max-width:none;
}
body.home .joindre h2{
  font-family:"Source Serif 4",Georgia,serif;
  font-size:32px;
  line-height:36px;
  font-weight:600;
  color:#092142;
  width:fit-content;
  max-width:100%;
  margin:0 0 16px;
  padding-bottom:8px;
  border-bottom:2px solid #5BC889;
}
body.home .joindre p{color:#092142;font-size:18px;line-height:26px}
body.home .joindre span{
  display:block;
  margin-bottom:8px;
  color:#092142;
  font-size:12px;
  font-weight:600;
  line-height:16px;
  letter-spacing:0.12em;
  text-transform:uppercase;
}
body.home .contact-panel{
  display:grid;
  grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  column-gap:24px;
  align-items:start;
  margin:0;
  padding:0;
  background:transparent;
  border-radius:0;
  box-shadow:none;
}
@media (max-width:799px){
  body.home .contact-panel{grid-template-columns:1fr;row-gap:32px}
}

/* COO 0150 : menu sur une seule ligne */ @media (min-width:1181px){.hd-pill .hd-nav > a,.hd-pill .hd-nav summary{white-space:nowrap}} @media (min-width:1361px){.hd-wrap > .container{max-width:1240px}} @media (min-width:1181px) and (max-width:1360px){.hd-wrap .hd-pill{gap:12px;padding-left:20px;padding-right:12px}.hd-wrap .hd-nav{gap:10px}}footer.cbs-foot .contact li{white-space:normal;overflow-wrap:anywhere}
/* fix-1420-burger */.hd-wrap,.hd-wrap.scrolled,.hd-wrap.open{background:#FFFFFF!important;top:0!important}.hd-wrap .ea-burger{width:36px!important;height:36px!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#003366;margin:0!important}.hd-wrap.open .ea-burger{background:#F7F7F7!important}.ea-burger svg{width:18px;height:18px}@media (max-width:1024px){.hd-wrap .hd-pill{padding:8px 8px 8px 16px!important;gap:8px;max-width:100%;box-sizing:border-box}.hd-wrap .hd-right{gap:6px;align-items:center;flex:0 0 auto;margin-left:auto}.hd-wrap .logo{min-width:0;flex:1 1 auto}}
