
/* Each product uses its own tile; illustrations are not shared within a category. */
.product-photo{aspect-ratio:1;background-image:none}
#product-detail>.product-photo{aspect-ratio:1;max-width:300px;width:100%;margin:0 auto 20px}
.bag-planner{background:#f6e9d5;border:1px solid #ddc5a7;border-radius:16px;padding:22px;margin:10px 0 28px}
.planner-heading,.planner-controls{display:flex;justify-content:space-between;align-items:center;gap:18px}
.planner-heading strong{font-family:Outfit,sans-serif;font-size:23px;line-height:1.2}
.planner-heading p{font-size:12px;color:var(--muted);margin:5px 0 0}
.compact{min-height:44px;padding:10px 17px;white-space:nowrap}
.planner-controls{margin-top:20px;justify-content:flex-start;gap:28px}
.planner-controls label,.destination-label{font-size:12px;font-weight:700;display:block}
.planner-controls select,.destination-label select{display:block;width:280px;max-width:100%;margin-top:6px}
.text-button{border:0;background:transparent;padding:10px 0;text-decoration:underline;text-underline-offset:4px;font-size:12px;text-align:left;min-height:44px}
.bag-sauces{margin:20px 0 0}
.bag-sauces legend{font-size:12px;margin-bottom:8px}
.bag-sauces .small-note{margin-bottom:0}
.bag-planner>.small-note{margin-bottom:0}
.bag-card{border:1px solid #d8c2a7;border-radius:12px;padding:18px;margin:18px 0;background:#fffbf5}
.selected-bag{border-color:#bc6a24}
.bag-card-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}
.bag-card-heading h3{font-size:23px;margin:0}
.bag-card-heading strong{font-size:16px}
.bag-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.bag-actions button{font-size:11px;padding:7px 9px;min-height:35px;background:var(--cream);border:1px solid #ddc5a7;border-radius:20px}
.bag-actions button:last-child{color:#a02420}
.empty-bag{font-size:12px;color:var(--muted);margin:18px 0 0}
.new-bag-button{width:100%}
.extras{margin-top:30px}
.extras>h3{font-size:24px}
#detail-destination{padding-top:15px}
#detail-destination .bag-sauces{margin:10px 0 20px}
.cart-line-top strong{overflow-wrap:anywhere}
@media(max-width:700px){.bag-planner{padding:17px}.planner-heading,.planner-controls{flex-direction:column;align-items:stretch;gap:12px}.planner-heading strong{font-size:21px}.planner-controls select{width:100%}.bag-planner .compact{align-self:flex-start}.planner-controls{margin-top:17px}.bag-card{padding:13px}.bag-card-heading h3{font-size:22px}.bag-card .sauces{gap:6px}.bag-card .sauces label{padding:8px 9px;font-size:11px}#product-detail>.product-photo{max-width:250px}}
