/* Nestor managed popup — promotional popup rendered from nestor.popups.json.
   Scoped with nl- prefixes so the imported theme can't collide with it and the
   platform's overlay-cleanup runtime never sweeps it. */

.nl-popup-overlay{position:fixed;inset:0;z-index:2147482000;display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(13,14,36,.65);opacity:0;transition:opacity .25s ease;}
.nl-popup-overlay.nl-open{opacity:1;}

.nl-popup{position:relative;max-width:min(560px,94vw);max-height:88vh;overflow:auto;background:#fff;
  border-radius:10px;box-shadow:0 12px 60px rgba(0,0,0,.45);
  transform:translateY(12px) scale(.98);transition:transform .25s ease;}
.nl-popup-overlay.nl-open .nl-popup{transform:none;}

.nl-popup-close{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border-radius:50%;border:0;
  cursor:pointer;background:rgba(0,0,0,.55);color:#fff;font-size:20px;line-height:1;
  display:flex;align-items:center;justify-content:center;transition:background .2s;}
.nl-popup-close:hover{background:rgba(0,0,0,.8);}

.nl-popup-link{display:block;text-decoration:none;}
.nl-popup-img{display:block;max-width:100%;max-height:82vh;width:auto;height:auto;}
.nl-popup-body{max-width:100%;}

@media(max-width:640px){
  .nl-popup{max-width:96vw;}
  .nl-popup-close{width:32px;height:32px;font-size:17px;}
}
