/* Soft corners shared by shop actions and checkout controls. */
button,.primary{border-radius:10px}
.checkout-dialog .checkout-action,.checkout-dialog .checkout-head button{border-radius:10px}
.pack-close{border-radius:50%}
.promos article,.promos article.featured{background:var(--paper);color:var(--ink);border:0;border-radius:14px}
.promos article p,.promos article.featured p{color:var(--ink)}
.promos article button{background:var(--ink);color:var(--paper);border:0}
.promos article button:hover{background:#262d50}

.add-btn{background:var(--ink);color:#fff;border:0}
.add-btn:hover{background:#262d50;color:#fff}
footer{background:var(--ink);color:var(--paper)}
footer p,footer a,footer>small{color:var(--paper)}
footer>small{border-top-color:rgba(255,253,249,.22)}
footer .footer-logo{width:200px;max-width:100%;background:var(--paper);-webkit-mask:url('logo.png') center/contain no-repeat;mask:url('logo.png') center/contain no-repeat}
footer .footer-logo img{visibility:hidden}

.discount-form{margin-bottom:1rem}.discount-form label{display:block;font-size:14px;margin-bottom:.5rem}.discount-form>div{display:flex;gap:.5rem;flex-wrap:wrap}.discount-form input{flex:1;min-width:100px;width:0;padding:.7rem;border:1px solid #ccc;border-radius:10px;font:inherit}.discount-form button{background:var(--ink);color:var(--paper);padding:.7rem;border:0}.discount-form small{display:block;margin-top:.5rem}#cartDiscountRow[hidden],#checkoutDiscountRow[hidden],#removeDiscount[hidden]{display:none}

.product-visual{position:relative}.stock-badge{position:absolute;top:12px;left:12px;background:var(--ink);color:var(--paper);padding:6px 12px;border-radius:8px;font-size:14px;font-weight:600}.add-btn:disabled{opacity:.5;cursor:not-allowed}

/* Encabezado sobre las tres promociones; tarjetas alineadas. */
.promos{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.promos>div{grid-column:1/-1;padding-right:0;margin-bottom:1rem}
.promos article{min-width:0;display:grid;grid-template-rows:auto minmax(4.2rem,auto) 1fr auto auto;align-items:start;gap:1rem}
.promos article h3,.promos article p{margin:0}
.promos article>strong{align-self:end}
.promos article button{margin-top:0;width:100%;align-self:end}
@media(max-width:900px){.promos{grid-template-columns:1fr}.promos article{grid-template-rows:auto auto auto auto auto}.promos>div{grid-column:1/-1}}
