/* Duke Popup Manager — front-end popups (matches the Free Trial modal look) */

.dpopup-overlay{
  position:fixed; inset:0; z-index:9000;
  background:rgba(0,0,0,.58);
  -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
  display:flex; align-items:center; justify-content:center;
  padding:20px; opacity:0; visibility:hidden;
  transition:opacity .25s, visibility .25s;
}
.dpopup-overlay.open{ opacity:1; visibility:visible; }

.dpopup-box{
  background:#fff; border-radius:18px; width:100%;
  max-width:560px; padding:40px 38px 34px;
  position:relative; text-align:center;
  transform:translateY(20px); transition:transform .28s;
  box-shadow:0 24px 80px rgba(0,0,0,.22);
  max-height:calc(100vh - 40px); overflow:auto;
}
.dpopup-overlay.open .dpopup-box{ transform:translateY(0); }
.dpopup--small  .dpopup-box{ max-width:420px; }
.dpopup--large  .dpopup-box{ max-width:760px; }

.dpopup-close{
  position:absolute; top:12px; right:16px;
  background:none; border:none; cursor:pointer;
  font-size:28px; line-height:1; color:#5A6A7E; padding:2px 8px;
}
.dpopup-close:hover{ color:#0F1B2D; }

.dpopup-heading{
  font-family:'Montserrat',sans-serif;
  font-size:22px; font-weight:800; color:#0066FF; margin:0 0 14px;
}

/* Promo content */
.dpopup-content{ text-align:left; color:#334155; line-height:1.6; }
.dpopup-content h1,.dpopup-content h2,.dpopup-content h3{ color:#0F1B2D; }
.dpopup-content a:not(.btn){ color:#0066FF; }
.dpopup-content img{ max-width:100%; height:auto; border-radius:10px; }
.dpopup-content > *:first-child{ margin-top:0; }
.dpopup-content > *:last-child{ margin-bottom:0; }

/* Image popup */
.dpopup-img{ display:block; max-width:100%; height:auto; border-radius:12px; margin:0 auto; }

/* Body scroll lock helper */
body.dpopup-open{ overflow:hidden; }

@media(max-width:520px){
  .dpopup-box{ padding:34px 22px 26px; }
  .dpopup-heading{ font-size:19px; }
}
