.prod-card{background:var(--white);border:1px solid var(--sand);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.prod-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.prod-card-img{width:100%;height:220px;object-fit:cover;display:block;background:var(--sand)}
.jus-grille .prod-card-img{object-fit:contain;padding:14px}
.prod-card-imglink{display:block}
.prod-card-placeholder{display:flex;align-items:center;justify-content:center;font-size:2.6rem}
.prod-card-body{padding:1rem 1.2rem 1.2rem;display:flex;flex-direction:column;flex:1}
.prod-card-badge{display:inline-block;background:var(--sage-l);color:var(--sage-d);font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px;margin-bottom:.5rem;width:fit-content}
.prod-card-nom{font-family:var(--font-head);font-size:1.08rem;color:var(--ink);margin-bottom:.3rem;font-weight:700}
.prod-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.8rem;gap:.6rem}
.prod-card-prix{font-family:var(--font-head);font-size:1.1rem;color:var(--peach-d);font-weight:700;white-space:nowrap}
.prod-card-btn{background:var(--sage-d);color:var(--white);border:none;padding:9px 16px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;cursor:pointer;transition:background .2s;white-space:nowrap;text-decoration:none;display:inline-block}
.prod-card-btn:hover{background:var(--sage)}
.prod-card-btn-added{background:#2A4520!important}
@media(max-width:768px){.prod-card-img{height:160px}}

.format-choice{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.4rem}
.format-radio{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.format-tab{display:block;text-align:center;padding:12px 8px;border:1.5px solid var(--sand);border-radius:var(--radius-sm);background:var(--white);cursor:pointer;transition:all .15s;font-weight:700;color:var(--ink);font-size:.9rem}
.format-tab span{display:block;font-size:.82rem;font-weight:700;color:var(--peach-d);margin-top:3px}
.format-radio:checked + .format-tab{background:var(--sage-d);border-color:var(--sage-d);color:var(--white)}
.format-radio:checked + .format-tab span{color:var(--white)}
.format-note{font-size:.8rem;color:var(--grey);margin-bottom:1rem}
.format-note a{color:var(--sage-d);font-weight:700;text-decoration:none}
.format-note a:hover{text-decoration:underline}
