/* Catalogue, extension « delices-gourmandes-commande ». Tout est sous #ldg-catalogue : rien ne touche au reste du site. */
#ldg-catalogue{--k-encre:var(--h-encre,#12042e);--k-doux:var(--h-doux,#675a7d);--k-subtil:var(--h-subtil,#8a80a0);--k-ligne:var(--h-ligne,#e0dbe9);--k-ligne-f:var(--h-ligne-f,#cfc7de);
  --k-rose:var(--h-rose-t,#d0305e);--k-rose-d:var(--h-rose-d,#b02651);--k-fond:var(--h-fond,#f3f1f6);--k-sur-sombre:#cfc6e0;
  --k-sans:var(--h-sans,'Montserrat','Segoe UI',system-ui,sans-serif);--k-serif:var(--h-serif,'Playfair Display',Georgia,serif);
  --k-marge:clamp(18px,4vw,32px);--k-max:var(--h-shell,1180px);--k-gout:16px;--k-section:var(--h-section,clamp(44px,5vw,72px));
  --k-r:18px;--k-rz:22px;--k-ease:cubic-bezier(.16,1,.3,1);
  display:block;margin:0;background:var(--k-fond);color:var(--k-encre);font-family:var(--k-sans);font-size:17px;font-weight:400;
  line-height:1.55;letter-spacing:normal;text-align:left;-webkit-font-smoothing:antialiased}
@media (min-width:768px){#ldg-catalogue{--k-gout:24px}}
#ldg-catalogue,#ldg-catalogue *,#ldg-catalogue *::before,#ldg-catalogue *::after{box-sizing:border-box}
#ldg-catalogue :where(h1,h2,h3,h4,p,figure,ul,ol,li,fieldset,legend,dl,dd){margin:0;padding:0}
#ldg-catalogue :where(ul,ol){list-style:none}
#ldg-catalogue :where(h1,h2,h3,h4){font-family:inherit;color:inherit;font-weight:600;line-height:1.2;text-transform:none}
#ldg-catalogue :where(a){color:inherit;background:none;text-decoration:none;box-shadow:none}
#ldg-catalogue :where(a:hover,a:active,a:focus){color:inherit;text-decoration:none}
#ldg-catalogue :where(img){display:block;max-width:100%;height:auto;border:0;border-radius:0;box-shadow:none}
#ldg-catalogue :where(label){display:inline;line-height:inherit;vertical-align:baseline}
#ldg-catalogue :where(button){-webkit-appearance:none;appearance:none;width:auto;margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;
  font:inherit;line-height:inherit;text-align:inherit;text-transform:none;letter-spacing:normal;white-space:normal;cursor:pointer;
  box-shadow:none;transition:none;user-select:auto}
#ldg-catalogue :where(button:hover,button:focus,button:active){background:none;color:inherit;text-decoration:none}
#ldg-catalogue :where(a,button,input,select,textarea,label,[tabindex]):focus-visible{outline:2px solid var(--k-rose);outline-offset:3px;box-shadow:none}
#ldg-catalogue :where(a,button,input,select,textarea,[tabindex]):focus:not(:focus-visible){outline:none;box-shadow:none}
#ldg-catalogue [hidden]{display:none!important}

#ldg-catalogue .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;
  border:1.5px solid var(--k-encre);border-radius:999px;background:var(--k-encre);color:#fff;
  font-family:var(--k-sans);font-size:15px;font-weight:600;line-height:1.2;letter-spacing:0;text-transform:none;text-align:center;text-decoration:none;
  white-space:normal;cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .14s ease}
#ldg-catalogue .btn:hover,#ldg-catalogue .btn:focus-visible{background:var(--k-rose);border-color:var(--k-rose);color:#fff}
#ldg-catalogue .btn.rose{background:var(--k-rose);border-color:var(--k-rose);color:#fff}
#ldg-catalogue .btn.rose:hover,#ldg-catalogue .btn.rose:focus-visible{background:var(--k-rose-d);border-color:var(--k-rose-d);color:#fff}
#ldg-catalogue .btn.ghost{background:transparent;border-color:var(--k-encre);color:var(--k-encre)}
#ldg-catalogue .btn.ghost:hover,#ldg-catalogue .btn.ghost:focus-visible{background:var(--k-encre);border-color:var(--k-encre);color:#fff}
#ldg-catalogue .btn.ghost.sur-sombre{border-color:rgba(255,255,255,.55);color:#fff}
#ldg-catalogue .btn.ghost.sur-sombre:hover,#ldg-catalogue .btn.ghost.sur-sombre:focus-visible{background:#fff;border-color:#fff;color:var(--k-encre)}
#ldg-catalogue .btn.sm{min-height:44px;padding:0 20px}
#ldg-catalogue .btn.full{width:100%}
#ldg-catalogue .btn svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#ldg-catalogue .btn:active{transform:scale(.97)}
#ldg-catalogue .btn[aria-disabled="true"],#ldg-catalogue .btn:disabled{background:var(--k-fond);border-color:var(--k-ligne);color:var(--k-subtil);cursor:default;pointer-events:none}

#ldg-catalogue .puces{display:flex;flex-wrap:wrap;gap:8px}
#ldg-catalogue .puce{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1.5px solid var(--k-ligne-f);border-radius:999px;
  background:#fff;color:var(--k-encre);font-family:var(--k-sans);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;
  cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}
#ldg-catalogue .puce:hover{border-color:var(--k-encre);background:#fff;color:var(--k-encre)}
#ldg-catalogue .puce[aria-pressed="true"],#ldg-catalogue .puce[aria-current="true"]{background:var(--k-encre);border-color:var(--k-encre);color:#fff}

#ldg-catalogue .entrees{border-top:1px solid var(--k-ligne)}
#ldg-catalogue .entrees a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:14px 0;
  border-bottom:1px solid var(--k-ligne);color:var(--k-encre);text-decoration:none;transition:transform .14s ease}
#ldg-catalogue .entrees b{display:block;font-size:17px;font-weight:600;line-height:1.35}
#ldg-catalogue .entrees small{display:block;margin-top:2px;font-size:15px;line-height:1.45;color:var(--k-doux)}
#ldg-catalogue .entrees a::after{content:"";flex:none;width:8px;height:8px;margin-right:6px;border:solid var(--k-encre);border-width:2px 2px 0 0;transform:rotate(45deg)}
#ldg-catalogue .entrees a:hover b{color:var(--k-rose-d)}
#ldg-catalogue .entrees a:active{transform:scale(.98)}

#ldg-catalogue{padding:24px 0 var(--k-section)}
#ldg-catalogue .cat-in{max-width:var(--k-max);margin:0 auto;padding:0 var(--k-marge)}
#ldg-catalogue.cat-vide p{max-width:36em;color:var(--k-doux)}
#ldg-catalogue svg{flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#ldg-catalogue h3{font-size:21px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
@media (min-width:768px){#ldg-catalogue h3{font-size:24px}}

#ldg-catalogue .modele{min-width:0}
#ldg-catalogue .modele img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--k-fond)}
#ldg-catalogue .modele .ligne1{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px}
#ldg-catalogue .modele .ref{font-size:15px;font-weight:600;color:var(--k-doux);white-space:nowrap}
#ldg-catalogue .modele .px{font-size:17px;font-weight:700;white-space:nowrap}
#ldg-catalogue .modele .th{display:block;margin:2px 0 12px;font-size:15px;line-height:1.45;color:var(--k-doux);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ldg-catalogue .modele .btn{width:100%;margin-top:auto}

#ldg-catalogue .cat-repere{height:1px;margin-bottom:-1px}
#ldg-catalogue .cat-tete{position:sticky;top:var(--entete,0px);z-index:20;margin:0 calc(var(--k-marge) * -1);padding:0 var(--k-marge);
  background:var(--k-fond);border-bottom:1px solid transparent;transition:border-color .2s ease}
#ldg-catalogue .cat-tete.colle{border-bottom-color:var(--k-ligne)}
#ldg-catalogue .cat-fam{margin:0 calc(var(--k-marge) * -1)}
#ldg-catalogue .cat-fam-rail{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:10px var(--k-marge);scroll-padding:0 var(--k-marge)}
#ldg-catalogue .cat-fam-rail::-webkit-scrollbar{display:none}
#ldg-catalogue .cat-fam .puce{flex:none}

#ldg-catalogue .cat-filtres{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
  margin:0 calc(var(--k-marge) * -1);padding:18px var(--k-marge) 16px;scroll-padding:0 var(--k-marge)}
#ldg-catalogue .cat-filtres::-webkit-scrollbar{display:none}
#ldg-catalogue .cat-f{flex:none;min-width:76px;max-width:110px;display:flex;flex-direction:column;align-items:center;gap:8px;scroll-snap-align:start;
  color:var(--k-doux);font-size:14px;font-weight:600;line-height:1.25;text-align:center;text-decoration:none;transition:color .18s ease}
#ldg-catalogue .cat-f-ph{display:block;width:72px;height:72px;padding:3px;border:2px solid var(--k-ligne);border-radius:50%;background:#fff;
  transition:border-color .18s ease,width .25s ease,height .25s ease}
#ldg-catalogue .cat-f-nom{display:block;max-width:100%}
#ldg-catalogue .cat-tete.colle .cat-filtres{padding-top:8px;padding-bottom:10px}
#ldg-catalogue .cat-tete.colle .cat-f{gap:4px}
#ldg-catalogue .cat-tete.colle .cat-f-ph{width:44px;height:44px;padding:2px}
#ldg-catalogue .cat-f-ph img{display:block;width:100%;height:100%;max-width:none;border-radius:50%;object-fit:cover}
#ldg-catalogue .cat-f:hover{color:var(--k-encre)}
#ldg-catalogue .cat-f:hover .cat-f-ph{border-color:var(--k-doux)}
#ldg-catalogue .cat-f[aria-current="true"]{color:var(--k-encre)}
#ldg-catalogue .cat-f[aria-current="true"] .cat-f-ph{border-color:var(--k-rose)}
#ldg-catalogue .cat-f:focus-visible{outline:0}
#ldg-catalogue .cat-f:focus-visible .cat-f-ph{outline:2px solid var(--k-rose);outline-offset:2px}

#ldg-catalogue .cat-pas-court{margin-top:4px}
#ldg-catalogue .cat-pas-court a{min-height:68px}
#ldg-catalogue .cat-pas-court b{font-size:17px}

#ldg-catalogue .cat-barre{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 22px}
#ldg-catalogue .cat-compte{margin:0;font-size:15px;color:var(--k-doux)}
#ldg-catalogue .cat-partage svg{width:18px;height:18px}

#ldg-catalogue .cat-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 12px;margin:0;padding:0;list-style:none}
#ldg-catalogue .cat-item{display:flex;flex-direction:column;min-width:0;margin:0;padding:0}
#ldg-catalogue .cat-ph{display:block;width:100%;margin:0;padding:0;border:1px solid var(--k-ligne);border-radius:var(--k-r);background:#fff;overflow:hidden;cursor:zoom-in;
  transition:border-color .25s ease}
#ldg-catalogue .cat-ph:hover{border-color:var(--k-rose);background:#fff}
#ldg-catalogue .cat-ph img{display:block;width:100%;border-radius:0;transition:scale .4s ease}
#ldg-catalogue .cat-ph:hover img{scale:1.03}
#ldg-catalogue .cat-ph:focus-visible{outline:2px solid var(--k-rose);outline-offset:3px}
@media (max-width:699px){
  #ldg-catalogue .cat-item .btn{padding:0 12px}
  #ldg-catalogue .cat-item .btn svg{display:none}
}
@media (min-width:700px){#ldg-catalogue .cat-grille{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 20px}}
@media (min-width:1100px){#ldg-catalogue .cat-grille{grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 24px}}
@media (min-width:900px){
  #ldg-catalogue .cat-fam{margin:0}
  #ldg-catalogue .cat-fam-rail{flex-wrap:wrap;overflow:visible;padding:8px 0}
  #ldg-catalogue .cat-filtres{flex-wrap:wrap;gap:18px 16px;overflow:visible;margin:0;padding:18px 0 20px}
}

#ldg-catalogue .cat-loin{display:none!important}
#ldg-catalogue .cat-plus-z{display:flex;justify-content:center;margin:40px 0 0}

#ldg-catalogue .cat-pas{display:grid;gap:20px;margin-top:56px;padding:28px 24px;border:1px solid var(--k-ligne);border-radius:var(--k-rz);background:#fff}
#ldg-catalogue .cat-pas p{margin:8px 0 0;max-width:34em;color:var(--k-doux)}
#ldg-catalogue .cat-pas .btn{justify-self:start}
@media (min-width:768px){#ldg-catalogue .cat-pas{grid-template-columns:1fr auto;align-items:center;gap:32px;padding:40px}}

#ldg-catalogue .cat-vue{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;
  border:0;border-radius:0;background:var(--k-encre);color:#fff;overflow:hidden;overscroll-behavior:contain}
#ldg-catalogue .cat-vue[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;z-index:100000}
#ldg-catalogue .cat-vue::backdrop{background:var(--k-encre)}
#ldg-catalogue .cat-vue:focus{outline:none}
#ldg-catalogue .cat-v-haut{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(8px + env(safe-area-inset-top)) 10px 8px 20px}
#ldg-catalogue .cat-v-pos{margin:0;font-size:14px;color:var(--k-sur-sombre);font-variant-numeric:tabular-nums}
#ldg-catalogue .cat-v-x,#ldg-catalogue .cat-v-nav{display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:1.5px solid rgba(255,255,255,.4);border-radius:50%;
  background:rgba(18,4,46,.6);color:#fff;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}
#ldg-catalogue .cat-v-x:hover,#ldg-catalogue .cat-v-nav:hover{background:#fff;border-color:#fff;color:var(--k-encre)}
#ldg-catalogue .cat-v-x svg,#ldg-catalogue .cat-v-nav svg{width:20px;height:20px}
#ldg-catalogue .cat-v-scene{position:relative;min-height:0;overflow:hidden;touch-action:none;user-select:none}
#ldg-catalogue .cat-vue .cat-v-scene .cat-v-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
#ldg-catalogue .cat-v-nav{position:absolute;top:50%;translate:0 -50%}
#ldg-catalogue .cat-v-prec{left:10px}
#ldg-catalogue .cat-v-suiv{right:10px}
#ldg-catalogue .cat-v-bas{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;
  padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.14)}
#ldg-catalogue .cat-v-l1{display:flex;align-items:baseline;gap:14px;margin:0;font-size:17px;font-weight:700}
#ldg-catalogue .cat-v-ref{color:var(--k-sur-sombre);font-size:15px;font-weight:600}
#ldg-catalogue .cat-v-theme{margin:2px 0 0;font-size:15px;color:var(--k-sur-sombre)}
#ldg-catalogue .cat-v-act{display:flex;gap:10px;flex-wrap:wrap}
#ldg-catalogue .cat-vue :focus-visible{outline-color:#fff}
@media (max-width:560px){
  #ldg-catalogue .cat-v-act{flex:1 1 100%}
  #ldg-catalogue .cat-v-act .btn{flex:1 1 0;padding:0 10px;font-size:15px;white-space:nowrap}
  #ldg-catalogue .cat-v-act .btn svg{display:none}
}
@media (max-width:340px){#ldg-catalogue .cat-v-act{flex-direction:column}}
html.ldg-cat-ouvert{overflow:hidden}

@media (prefers-reduced-motion:reduce){#ldg-catalogue *{transition:none!important}}

@media (max-width:374px){
  #ldg-catalogue .cat-item .ligne1{flex-wrap:wrap;gap:0 8px}
  #ldg-catalogue .cat-item .btn{padding:0 10px;font-size:14px}
}
