/* Promociones a la vista: barra en todas las páginas y sección grande en la portada */
.promo-barra { background: linear-gradient(90deg, rgba(255,77,133,.22), rgba(241,211,161,.14)); border-top: 1px solid rgba(255,77,133,.35); }
.promo-barra-int { display: flex; align-items: center; gap: .75rem; padding: .4rem 0; }
.promo-rotulo { flex: none; background: var(--acento); color: #1b0b14; font-size: .72rem; font-weight: 800; letter-spacing: .04em; padding: .2rem .6rem; border-radius: 999px; }
.promo-lista { flex: 1; min-width: 0; display: flex; gap: .4rem 1.1rem; list-style: none; margin: 0; padding: 0; overflow-x: auto; scrollbar-width: none; white-space: nowrap; font-size: .82rem; color: #ecdff6; }
.promo-lista::-webkit-scrollbar { display: none; }
.promo-chip strong { color: var(--champan); font-size: .95rem; margin-right: .15rem; }
.promo-ver { flex: none; font-size: .8rem; color: var(--champan); text-decoration: underline; white-space: nowrap; }
@media (max-width: 560px) { .promo-ver { display: none; } .promo-lista { font-size: .78rem; } }

.promos-home { margin: 2.5rem 0 0; }
.promos-home-cab { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .25rem 1.5rem; margin-bottom: 1rem; }
.promos-home-cab h2 { margin: 0; }
.promos-home-cab p { margin: 0; color: var(--suave); }
.promos-home-cab strong { color: var(--champan); }
.promos-lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--borde); }
@media (min-width: 860px) { .promos-lista { grid-template-columns: 1fr 1fr; column-gap: 3rem; } }
.promos-lista li { display: flex; align-items: center; gap: 1.1rem; padding: 1rem 0; border-bottom: 1px solid var(--borde); }
.promo-num { flex: none; min-width: 5.2rem; font-family: var(--serif); font-size: 2rem; font-weight: 700; line-height: 1; color: var(--champan); }
.promo-txt { color: #e2d7ee; }
.perfil-usuario a { color: var(--suave); }
.perfil-usuario a:hover { color: var(--champan); }
