/* Popup Pro para Elementor */
.rjp-popup{--rjp-bg:#fff;--rjp-title:#111;--rjp-tx:#333;--rjp-accent:#d4202c;--rjp-btn-tx:#fff;--rjp-ov:#000;--rjp-ov-op:.65;--rjp-w:560px;--rjp-r:18px;--rjp-ts:28px;--rjp-fs:16px;--rjp-al:center;
  position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;
  font-family:inherit;text-align:var(--rjp-al)}
.rjp-popup *{box-sizing:border-box}
.rjp-popup.is-visible{display:flex}
.rjp-popup.rjp-pos-bottom-right{align-items:flex-end;justify-content:flex-end}
.rjp-popup.rjp-pos-bottom-left{align-items:flex-end;justify-content:flex-start}
.rjp-popup.rjp-no-overlay{pointer-events:none}
.rjp-popup.rjp-no-overlay .rjp-card{pointer-events:auto}
.rjp-popup.rjp-no-overlay .rjp-overlay{display:none}

.rjp-overlay{position:absolute;inset:0;background:var(--rjp-ov);opacity:0;transition:opacity .3s ease}
.rjp-popup.is-open .rjp-overlay{opacity:var(--rjp-ov-op)}

.rjp-card{position:relative;width:100%;max-width:var(--rjp-w);max-height:calc(100vh - 40px);overflow:auto;
  background:var(--rjp-bg);color:var(--rjp-tx);border-radius:var(--rjp-r);
  box-shadow:0 30px 80px -20px rgba(0,0,0,.55);opacity:0;transition:opacity .3s ease,transform .3s cubic-bezier(.2,.8,.2,1);
  scrollbar-width:thin}
.rjp-anim-zoom .rjp-card{transform:scale(.92)}
.rjp-anim-slide .rjp-card{transform:translateY(40px)}
.rjp-popup.is-open .rjp-card{opacity:1;transform:none}

.rjp-close{position:absolute;top:10px;right:10px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;cursor:pointer;
  background:rgba(0,0,0,.55);color:#fff;font-size:24px;line-height:1;display:grid;place-items:center;padding:0;transition:.2s}
.rjp-close:hover{background:var(--rjp-accent);transform:rotate(90deg)}
.rjp-close:focus-visible,.rjp-btn:focus-visible,.rjp-dismiss:focus-visible{outline:3px solid var(--rjp-accent);outline-offset:2px}

.rjp-media{position:relative;line-height:0;background:#000}
.rjp-img{display:block;width:100%;height:auto}
.rjp-imglink{display:block}
.rjp-video{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.rjp-video iframe,.rjp-video video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}

.rjp-body{padding:26px 28px 28px}
.rjp-title{margin:0 0 12px;font-size:var(--rjp-ts);line-height:1.15;font-weight:800;color:var(--rjp-title);letter-spacing:-.01em}
.rjp-text{font-size:var(--rjp-fs);line-height:1.6;color:var(--rjp-tx)}
.rjp-text p{margin:0 0 .8em}
.rjp-text p:last-child{margin-bottom:0}
.rjp-btn{display:inline-block;margin-top:20px;padding:14px 30px;border-radius:999px;background:var(--rjp-accent);color:var(--rjp-btn-tx)!important;
  font-weight:700;font-size:16px;text-decoration:none!important;transition:.2s;box-shadow:0 10px 24px -10px var(--rjp-accent)}
.rjp-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.rjp-dismiss{display:block;margin:14px auto 0;background:none;border:0;padding:4px;cursor:pointer;color:var(--rjp-tx);opacity:.65;font-size:13px;text-decoration:underline}
.rjp-dismiss:hover{opacity:1}

@media(min-width:760px){
  .rjp-layout-side .rjp-card{max-width:max(var(--rjp-w),820px);display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
  .rjp-layout-side .rjp-media{height:100%;min-height:100%}
  .rjp-layout-side .rjp-img{height:100%;object-fit:cover}
  .rjp-layout-side .rjp-video{height:100%;aspect-ratio:auto;min-height:260px}
  .rjp-layout-side .rjp-body{align-self:center}
}
@media(max-width:600px){
  .rjp-popup{padding:12px}
  .rjp-body{padding:20px}
  .rjp-popup.rjp-pos-bottom-right,.rjp-popup.rjp-pos-bottom-left{justify-content:center}
}
html.rjp-lock{overflow:hidden}

/* Vista previa dentro del editor de Elementor */
.rjp-popup.rjp-preview{position:relative;inset:auto;display:block;z-index:1;padding:14px;border:2px dashed rgba(212,32,44,.55);border-radius:14px;pointer-events:auto}
.rjp-preview .rjp-overlay{display:none}
.rjp-preview .rjp-card{margin:0 auto;opacity:1;transform:none;max-height:none}
.rjp-preview .rjp-close{display:none}
.rjp-note{font:600 12px/1.4 system-ui,sans-serif;color:#d4202c;background:rgba(212,32,44,.08);border-radius:8px;padding:8px 12px;margin-bottom:12px;text-align:left}

@media(prefers-reduced-motion:reduce){.rjp-card,.rjp-overlay,.rjp-close,.rjp-btn{transition:none}}
