/* Pesto — ramka zestawu (bundle). */
.pesto-bundle{margin:2rem 0;padding:1.4rem 1.5rem;background:var(--pesto-base,#fff);border:1.5px solid var(--pesto-accent,#c8a24a);border-radius:var(--pesto-radius-lg,26px)}
.pesto-bundle__title{font-family:var(--pesto-font-display,inherit);font-size:1.25rem;margin:0 0 1rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.pesto-bundle__badge{background:var(--pesto-accent,#c8a24a);color:var(--pesto-accent-ink,#1a1a17);border-radius:var(--pesto-radius-pill,999px);padding:.2rem .7rem;font-size:.8rem;font-weight:800}
.pesto-bundle__items{display:flex;align-items:stretch;gap:.7rem;flex-wrap:wrap;margin-bottom:1.1rem}
.pesto-bundle__item{display:flex;flex-direction:column;align-items:center;gap:.35rem;width:120px;text-decoration:none;color:var(--pesto-ink,#121316);text-align:center;background:var(--pesto-surface,#f3efe7);border-radius:var(--pesto-radius,18px);padding:.7rem .5rem;transition:.15s}
.pesto-bundle__item:hover{transform:translateY(-2px)}
.pesto-bundle__item img{width:74px;height:74px;object-fit:cover;border-radius:12px}
.pesto-bundle__name{font-size:.78rem;font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pesto-bundle__price{font-size:.8rem;color:var(--pesto-muted,#6f6e6a)}
.pesto-bundle__plus{align-self:center;font-size:1.3rem;font-weight:700;color:var(--pesto-muted,#6f6e6a)}
.pesto-bundle__summary{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.pesto-bundle__total del{color:var(--pesto-muted,#6f6e6a);font-size:.95rem}
.pesto-bundle__total ins{text-decoration:none;font-family:var(--pesto-font-display,inherit);font-weight:800;font-size:1.45rem;margin-left:.35rem}
.pesto-bundle__save{background:#e7f5ec;color:#117a3d;border-radius:var(--pesto-radius-pill,999px);padding:.3rem .8rem;font-size:.82rem;font-weight:700}
.pesto-bundle__btn{margin-left:auto;background:var(--pesto-accent,#c8a24a);color:var(--pesto-accent-ink,#1a1a17);border-radius:var(--pesto-radius-pill,999px);padding:.8rem 1.6rem;font-weight:700;text-decoration:none;transition:.15s}
.pesto-bundle__btn:hover{background:var(--pesto-accent-d,#a9863a);color:#fff}
@media(max-width:560px){
	.pesto-bundle__btn{margin-left:0;width:100%;text-align:center}
	/* Pionowy stos zamiast łamanych kafelków: [obrazek] [nazwa] [cena], „+" wyśrodkowany między pozycjami. */
	.pesto-bundle__items{flex-direction:column;align-items:stretch;gap:.5rem}
	.pesto-bundle__item{width:100%;flex-direction:row;align-items:center;text-align:left;gap:.8rem;padding:.6rem .7rem}
	.pesto-bundle__item img{width:54px;height:54px;flex:none}
	.pesto-bundle__name{flex:1}
	.pesto-bundle__price{flex:none;font-weight:700}
	.pesto-bundle__plus{align-self:center;font-size:1.1rem;margin:.1rem 0}
}
/* Desktop: zgrabny układ 2-kolumnowy zamiast „rozlanego" pasa — tytuł na górze,
   produkty po lewej, a cena + oszczędność + przycisk zgrupowane po prawej. */
@media(min-width:768px){
	.pesto-bundle{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:2.2rem;row-gap:.5rem;padding:1.6rem 1.8rem}
	.pesto-bundle__title{grid-column:1/-1;margin:0 0 .3rem}
	.pesto-bundle__items{margin:0;flex-wrap:nowrap}
	.pesto-bundle__summary{flex-direction:column;align-items:flex-end;gap:.5rem;text-align:right;white-space:nowrap}
	.pesto-bundle__btn{margin-left:0;padding:.85rem 2.1rem;font-size:1.02rem}
}
