/* Product bundle (buy it together) */
product-bundle{display:block;margin-block:1.25rem}
product-bundle[hidden]{display:none}
.pb-section--narrow{max-width:760px}
.pb__heading{font-family:var(--font-heading);font-weight:var(--heading-weight,700);font-size:1.25rem;line-height:1.25;color:var(--c-text);margin:0}
.pb__sub{margin:.15rem 0 .875rem;font-size:.9375rem;color:var(--c-text)}
.pb__main .pb-row{border:1.5px solid var(--c-text);border-radius:var(--r-card,12px);background:var(--c-white)}
.pb__plus{display:grid;place-items:center;width:28px;height:28px;margin:.4rem auto;border-radius:50%;background:var(--c-muted);color:var(--c-white)}
.pb__list{border:1px solid var(--c-border);border-radius:var(--r-card,12px);background:var(--c-white);overflow:hidden}
.pb__list .pb-row+.pb-row{border-top:1px solid var(--c-border)}
.pb-row{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;transition:opacity .2s,background .2s}
.pb-row.is-off{opacity:.55}
.pb-row.is-off .pb-row__img{filter:grayscale(.6)}
.pb-row--skeleton{height:96px;background:linear-gradient(90deg,var(--c-bg-soft) 25%,var(--c-white) 50%,var(--c-bg-soft) 75%);background-size:200% 100%;animation:pb-shine 1.2s linear infinite}
@keyframes pb-shine{to{background-position:-200% 0}}
.pb-row__tick{position:relative;flex-shrink:0;cursor:pointer;display:grid;place-items:center;width:26px;height:26px}
.pb-row__tick input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.pb-row__tick span{width:22px;height:22px;border-radius:5px;border:2px solid var(--c-text);background:var(--c-white);display:grid;place-items:center;transition:background .15s}
.pb-row__tick input:checked+span{background:var(--c-text)}
.pb-row__tick input:checked+span::after{content:"";width:6px;height:11px;border:solid var(--c-white);border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}
.pb-row__tick input:focus-visible+span{outline:2px solid var(--c-primary);outline-offset:2px}
.pb-row__img{flex-shrink:0;width:84px;height:84px;border-radius:var(--r-img,8px);overflow:hidden;background:var(--card-img-bg,var(--c-bg-soft))}
.pb-row__img img{width:100%;height:100%;object-fit:cover}
.pb-row__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}
.pb-row__this{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--c-muted)}
.pb-row__title{font-size:.9375rem;font-weight:500;line-height:1.35;color:var(--c-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pb-row__title:hover{color:var(--c-primary)}
.pb-row__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem}
.pb-row__price b{font-size:1rem;font-weight:700;color:var(--c-primary)}
.pb-row__price s{font-size:.8125rem;color:var(--c-muted)}
.pb-row__price em{font-style:normal;font-size:.75rem;font-weight:600;color:var(--c-success)}
.pb-row__price [hidden]{display:none}
.pb-row__select{align-self:flex-start;max-width:100%;height:36px;padding:0 2rem 0 .75rem;border:1px solid var(--c-border);border-radius:var(--r-input,8px);background:var(--c-white);color:var(--c-text);font-size:.875rem}
.pb__total{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin:1.125rem 0 .875rem}
.pb__total > div:first-child{display:flex;flex-direction:column;line-height:1.35}
.pb__total b{font-size:1rem;color:var(--c-text)}
.pb__total small{font-size:.875rem;color:var(--c-muted)}
.pb__sum{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.pb__was{font-size:.875rem;color:var(--c-muted)}
.pb__was em{font-style:normal;color:var(--c-success);font-weight:600}
.pb__was [hidden]{display:none}
.pb__sum > b{font-size:1.5rem;font-weight:800;color:var(--c-primary)}
.pb__note{margin:-.25rem 0 .75rem;font-size:.8125rem;font-weight:600;color:var(--c-success)}
.pb__btn{width:100%}
.pb__btn:disabled{opacity:.5;cursor:not-allowed}
.pb__msg{margin:.5rem 0 0;font-size:.8125rem;color:#dc2626}
.pb__msg:empty{display:none}
@media(max-width:599px){.pb-row{gap:.625rem;padding:.75rem}.pb-row__img{width:68px;height:68px}.pb-row__title{font-size:.875rem}}
