/* ===== Promo Offer Popup ===== */
.promo-overlay{position:fixed;inset:0;background:rgba(13,25,63,.72);backdrop-filter:blur(5px);z-index:150;display:none;align-items:center;justify-content:center;padding:20px}
.promo-overlay.open{display:flex}
.promo-modal{position:relative;max-width:460px;width:100%;background:linear-gradient(160deg,#14306E,#0B2447 65%,#0E2152);border:1px solid rgba(201,162,63,.5);border-radius:24px;padding:0;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);animation:promoIn .35s ease;color:#fff}
@keyframes promoIn{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.promo-modal::before{content:"";position:absolute;top:-60px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,63,.25),transparent 70%)}
.promo-close{position:absolute;top:14px;right:14px;z-index:3;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);width:34px;height:34px;border-radius:50%;color:#fff;font-size:14px;cursor:pointer;transition:.18s;padding:0px;}
.promo-close:hover{background:rgba(255,255,255,.22)}
.promo-body{position:relative;z-index:2;padding:38px 34px 32px;text-align:center}
.promo-tag{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:8px 18px;border-radius:999px;margin-bottom:20px;box-shadow:0 8px 20px rgba(201,162,63,.4)}
.promo-modal h3{font-family:'Playfair Display',serif;font-size:26px;color:#fff;line-height:1.28;margin-bottom:10px}
.promo-modal h3 .gold{color:var(--gold-soft);font-style:italic}
.promo-modal p.promo-sub{color:#C9D6F2;font-size:14.5px;max-width:340px;margin:0 auto 22px}
.promo-price-row{display:flex;align-items:center;justify-content:center;gap:14px;background:rgba(255,255,255,.06);border:1px dashed var(--gold);border-radius:14px;padding:16px 18px;margin-bottom:24px}
.promo-price-row .amt{font-family:'Playfair Display',serif;font-size:38px;font-weight:800;color:var(--gold-soft);line-height:1}
.promo-price-row .amt i{font-style:normal;font-size:14px;color:#B9C6E4;font-family:'Jost',sans-serif;font-weight:500;display:block;margin-top:2px}
.promo-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.promo-note{margin-top:16px;font-size:12px;color:#9FB0D6}

.btn-wa{background:#1FA855;color:#fff}
.btn-wa:hover{background:#178A45;transform:translateY(-2px)}

@media (max-width:480px){
  .promo-modal{border-radius:20px}
  .promo-body{padding:32px 22px 26px}
  .promo-modal h3{font-size:21px}
  .promo-price-row{flex-direction:column;gap:10px;padding:16px}
  .promo-actions{flex-direction:column}
  .promo-actions .btn{width:100%;justify-content:center}
}