/* Grille et cartes produits, pastilles de stock (accueil, boutique, suggestions). */
.grid-p{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 14px}
@media (min-width:700px){.grid-p{gap:40px 24px}}
@media (min-width:1000px){.grid-p{grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 28px}}

.carte{display:flex;flex-direction:column;min-width:0;color:inherit}
.carte-media{position:relative;background:var(--sable);border-radius:2px;overflow:hidden;aspect-ratio:4/5}
.carte-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease,opacity .45s ease}
.carte-img2{opacity:0}
@media (hover:hover){
.carte:hover .carte-media img:first-child{transform:scale(1.04)}
.carte:hover .carte-img2{opacity:1}
.carte:hover .carte-voir{color:var(--noyer);gap:10px}
}
.carte-meta{margin:14px 0 2px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:500}
.carte-nom{margin:0 0 4px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(20px,1.9vw,26px);line-height:1.12;color:var(--noyer);text-wrap:balance}
.carte-sous{margin:0 0 10px;font-size:clamp(13.5px,1.1vw,14.5px);line-height:1.45;color:var(--texte2)}
.carte-bas{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.carte-prix{font-size:16px;font-weight:500;color:var(--accent)}
.carte-voir{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--texte2);transition:gap .3s,color .3s}
.carte-voir .ic{width:16px;height:16px}
@media (max-width:420px){.carte-voir{display:none}}

/* Pastilles de stock (charte) */
.pastille{position:absolute;left:10px;top:10px;z-index:1;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;letter-spacing:.02em;padding:4px 10px;border-radius:999px}
.pastille .pt{width:7px;height:7px;border-radius:50%}
.pastille.stock{background:#E4ECD9;color:#3E5A2E}.pastille.stock .pt{background:#6F8F5B}
.pastille.hors{background:#F1DDD8;color:#8A3A32}.pastille.hors .pt{background:#B5524A}
.pastille.cmd{background:#EFE3CF;color:var(--noyer)}.pastille.cmd .pt{background:var(--or)}
.pastille.unique{background:var(--nuit);color:var(--sable)}.pastille.unique .pt{background:var(--or)}
.pp-prix-l .pastille{position:static}
.pastilles{position:absolute;left:10px;top:10px;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.pastilles .pastille{position:static}
