/*========================================================
  ROMERO VERDE · BLOQUES PÚBLICOS (regalo, cupones, footer)
  Colores y tipografía se heredan del sitio (currentColor).
========================================================*/

/*---------- REGALO ------------*/
body .rv-regalo { text-align:center; }
body .rv-regalo-titulo { margin:0 0 .6em; }
body .rv-regalo-imagen { margin:0 auto .9em; }
body .rv-regalo-imagen img { max-width:180px; height:auto; display:inline-block; }
body .rv-regalo-texto { margin:0 auto; }
body .rv-regalo-texto p { margin:0 0 .6em; }

/*---------- CUPONES / DESCUENTOS ------------*/
body .rv-descuentos { text-align:center; }
body .rv-descuentos-intro { margin:0 0 1em; }
body .rv-cupon-bloque { margin:0 0 1.4em; }
body .rv-cupon-bloque:last-child { margin-bottom:0; }
body .rv-cupon-titulo { margin:0 0 .3em; }
body .rv-cupon-texto { margin:0 0 .7em; }

/*---------- CHIP CLICABLE ------------*/
body .rv-chip { position:relative; display:inline-flex; align-items:center; gap:.55em; cursor:pointer; font:inherit; font-weight:700; letter-spacing:.04em; padding:.55em 1.1em; border:2px dashed currentColor; border-radius:8px; background:transparent; color:inherit; transition:background-color .15s,color .15s; }
body .rv-chip:hover { background:rgba(0,0,0,.06); }
body .rv-chip-codigo { font-size:1.05em; }
body .rv-chip-accion { display:inline-flex; align-items:center; gap:.3em; font-size:.78em; font-weight:600; opacity:.8; }
body .rv-chip .rv-svg { width:1em; height:1em; }
body .rv-chip-ok { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; border-radius:6px; background:#2f7d32; color:#fff; opacity:0; transform:scale(.92); transition:opacity .15s,transform .15s; pointer-events:none; }
body .rv-chip--ok .rv-chip-ok { opacity:1; transform:scale(1); }

/*---------- FOOTER INFO ------------*/
body .rv-footer-info { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:30px 50px; }
body .rv-footer-bloque { display:flex; align-items:center; gap:14px; }
body .rv-footer-pagos { gap:10px; }
body .rv-footer-pago-icono { font-size:34px; line-height:1; }
body .rv-footer-pagos-img { max-height:34px; width:auto; }
body .rv-footer-icono .rv-svg { width:42px; height:42px; }
body .rv-footer-texto { display:flex; flex-direction:column; line-height:1.2; text-align:left; }
body .rv-footer-texto strong { font-size:1.15em; font-weight:700; }
body .rv-footer-texto span { font-size:.95em; opacity:.9; }

/*---------- RESPONSIVE 959 ------------*/
@media only screen and (max-width:959px) {
	body .rv-footer-info { gap:24px 36px; }
	body .rv-footer-icono .rv-svg { width:36px; height:36px; }
}

/*---------- RESPONSIVE 767 ------------*/
@media only screen and (max-width:767px) {
	body .rv-footer-info { flex-direction:column; gap:22px; }
	body .rv-footer-bloque { justify-content:center; }
	body .rv-footer-texto { text-align:center; }
	body .rv-regalo-imagen img { max-width:140px; }
}

/*---------- BLOQUES LIBRES (rv_info) ------------*/
body .rv-info { }
body .rv-info p { margin:0 0 1em; }
body .rv-info img { max-width:100%; height:auto; }
body .rv-info h2, body .rv-info h3, body .rv-info h4 { margin:0 0 .5em; }

/*---------- RESPONSIVE 767 (bloques) ------------*/
@media only screen and (max-width:767px) {
	body .rv-info, body .rv-info * { text-align:center; }
	body .rv-info img { margin-left:auto; margin-right:auto; }
}

/*---------- MÉTODO DE PAGO GOOGLE PAY (SVG) ------------*/
body .rv-pago-svg { display:inline-flex; align-items:center; line-height:1; }
body .rv-pago-svg .rv-svg-gpay { height:.85em; width:auto; display:block; }

/*---------- BARRA DE AVISO / TICKER ------------*/
body .rv-ticker { background:var(--rv-ticker-bg,#a68f3d); color:var(--rv-ticker-color,#fff); overflow:hidden; width:100%; position:relative; }
body .rv-ticker-track { display:flex; align-items:center; width:max-content; animation:rv-ticker-move var(--rv-ticker-vel,20s) linear infinite; will-change:transform; }
body .rv-ticker:hover .rv-ticker-track { animation-play-state:paused; }
body .rv-ticker-item { white-space:nowrap; padding:7px 0; padding-right:3.5rem; font-size:14px; line-height:1.4; font-weight:400; }
body .rv-ticker-item, body .rv-ticker-item * { color:inherit; }
body .rv-ticker-item p, body .rv-ticker-item h2, body .rv-ticker-item h3, body .rv-ticker-item h4 { display:inline; margin:0; padding:0; font-size:inherit; font-weight:inherit; line-height:inherit; }
body .rv-ticker-item strong, body .rv-ticker-item b { font-weight:700; }
body .rv-ticker-item a { color:inherit; text-decoration:underline; }
@keyframes rv-ticker-move { from { transform:translateX(0); } to { transform:translateX(-50%); } }

/*---------- RESPONSIVE 767 (ticker) ------------*/
@media only screen and (max-width:767px) {
	body .rv-ticker-item { font-size:13px; padding-right:2.5rem; }
}

/*---------- ACCESIBILIDAD: sin movimiento ------------*/
@media (prefers-reduced-motion:reduce) {
	body .rv-ticker-track { animation:none; width:100%; justify-content:center; }
	body .rv-ticker-item { white-space:normal; text-align:center; padding-right:0; }
	body .rv-ticker-item[aria-hidden="true"] { display:none; }
}
