/* Promociones: colección completa, lista de promos, "completá tu colección" y resumen del carrito */
.coleccion { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; padding: 1.1rem 1.25rem; margin: 0 0 1rem; border-radius: var(--radio); border: 1px solid var(--acento); background: linear-gradient(110deg, rgba(255,77,133,.16), rgba(241,211,161,.08)); }
.coleccion-txt { flex: 1 1 220px; display: flex; flex-direction: column; gap: .15rem; }
.coleccion-txt strong { font-family: var(--serif); font-size: 1.3rem; }
.coleccion-txt span { color: var(--suave); font-size: .9rem; }
.coleccion-precio { display: flex; align-items: baseline; gap: .6rem; flex-wrap: wrap; }
.coleccion-antes { color: var(--suave); text-decoration: line-through; }
.coleccion-ahora { font-size: 1.7rem; font-weight: 700; color: var(--champan); }
.coleccion-pct { background: var(--acento); color: #1b0b14; font-size: .78rem; font-weight: 700; padding: .2rem .6rem; border-radius: 999px; }

.aviso-promo { padding: .85rem 1.1rem; margin: 0 0 1rem; border-radius: var(--radio); border: 1px solid var(--borde); background: var(--panel); color: #d9cde6; }
.aviso-promo-ok { border-color: var(--ok); background: rgba(143,214,165,.08); }

.pack.ya-tiene { cursor: default; opacity: .75; }
.pack-tiene { border: 1px solid var(--ok); color: var(--ok); border-radius: 999px; padding: .4rem 1rem; font-size: .88rem; font-weight: 600; }

.promos { margin: 2.2rem 0 0; padding: 1.25rem 1.4rem; border: 1px solid var(--borde); border-radius: var(--radio); background: var(--panel); max-width: 52rem; }
.promos h2 { margin: 0 0 .6rem; font-size: 1.35rem; }
.promos ul { margin: 0; padding-left: 1.1rem; color: #d9cde6; }
.promos li { margin: .35rem 0; }
.promos li strong { color: var(--champan); }
.promos .aviso { margin: .75rem 0 0; }

/* Resumen del carrito con promociones */
.res-promos { background: rgba(143,214,165,.08); border: 1px solid rgba(143,214,165,.35); border-radius: 10px; padding: .6rem .85rem; margin: .5rem 0; font-size: .9rem; }
.res-promos strong { color: var(--ok); }
.res-promos ul { margin: .35rem 0 0; padding-left: 1.1rem; color: #d9cde6; }
.res-tope { color: var(--suave); margin: .35rem 0 0; font-size: .82rem; }
.res-promo p { margin: .2rem 0; }
.res-minimo { margin: .6rem 0 0; font-size: .88rem; }
