/* renegademakers · RM Sustitutos — bloque de alternativas (ficha de producto) */
.rms-wrap{width:100%}
.rms-wrap:empty{display:none}
.rms-block{--rms-accent:#ff3b30;--rms-accent2:#ff8a00;--rms-dark:#1b1b2f;--rms-text:#2b2b3a;margin:0 0 24px;width:100%}
.rms-block .rms-inner{position:relative;border-radius:16px;padding:22px 22px 20px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.08);overflow:hidden;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(120deg,var(--rms-accent),var(--rms-accent2));background-origin:border-box;background-clip:padding-box,border-box}
.rms-block .rms-inner::before{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:rmsShine 4.5s ease-in-out infinite;pointer-events:none}
@keyframes rmsShine{0%{left:-60%}35%{left:130%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.rms-block .rms-inner::before{animation:none}}
.rms-badge{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:6px 14px;border-radius:999px;background:linear-gradient(120deg,var(--rms-accent),var(--rms-accent2));box-shadow:0 4px 10px rgba(0,0,0,.15);margin-bottom:12px}
.rms-block--oos .rms-badge,.rms-block--combo .rms-badge{--rms-accent:#2b6cb0;--rms-accent2:#3b9ddd}
.rms-block--oos .rms-inner,.rms-block--combo .rms-inner{background-image:linear-gradient(#fff,#fff),linear-gradient(120deg,#2b6cb0,#3b9ddd)}
.rms-head{margin-bottom:14px}
.rms-title{margin:0 0 2px;font-size:20px;font-weight:800;color:var(--rms-dark);line-height:1.25;text-transform:none}
.rms-lead{margin:0;font-size:14px;color:#6a6a7a}
.rms-cards{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.rms-cols-1 .rms-cards{grid-template-columns:minmax(0,1fr)}
.rms-cols-2 .rms-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.rms-cols-4 .rms-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.rms-card{display:flex;flex-direction:column;background:#fbfbfd;border:1px solid #ececf3;border-radius:12px;padding:12px;min-width:0;transition:transform .15s ease,box-shadow .15s ease}
.rms-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.rms-card--match{border-color:var(--rms-accent2)}
.rms-cols-1 .rms-card{flex-direction:row;align-items:center;gap:18px}
.rms-img{display:block;width:100%;max-width:200px;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #eee;margin:0 auto 10px}
.rms-cols-1 .rms-img{width:120px;flex:0 0 120px;margin:0}
.rms-img img{width:100%;height:100%;object-fit:cover;display:block}
.rms-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}
.rms-avail{display:inline-block;align-self:flex-start;font-size:11px;font-weight:700;color:#0f6b3d;background:#e8f7ef;border-radius:999px;padding:2px 9px;text-transform:uppercase;letter-spacing:.04em}
.rms-name{display:block;font-size:15px;font-weight:700;color:var(--rms-text);text-decoration:none;line-height:1.3}
.rms-name:hover{color:var(--rms-accent)}
.rms-desc{font-size:13px;color:#70707f;line-height:1.45;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rms-price{font-size:20px;font-weight:800;color:var(--rms-accent)}
.rms-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:flex-start;margin-top:4px;background:linear-gradient(120deg,var(--rms-accent),var(--rms-accent2));color:#fff !important;font-weight:700;font-size:14px;text-decoration:none;padding:10px 18px;border-radius:999px;box-shadow:0 6px 16px rgba(0,0,0,.18);transition:transform .15s ease;white-space:nowrap}
.rms-btn:hover{transform:translateY(-2px);color:#fff !important}
@media (max-width:900px){.rms-cards,.rms-cols-4 .rms-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.rms-cards,.rms-cols-2 .rms-cards,.rms-cols-4 .rms-cards{grid-template-columns:minmax(0,1fr)}.rms-card{flex-direction:row;align-items:center;gap:12px}.rms-img{width:96px;flex:0 0 96px;margin:0}.rms-btn{width:100%;align-self:stretch}.rms-block .rms-inner{padding:16px}}
