/* TEMPORARY (Josh, 2026-09-22): the public-demo invitation pop-up (templates/_launch_popup.html).
   Same palette as the #305 contact pop-up (contact.css): ink #16181d, line #e6e8ec, Apex Red
   #E1131E. z-index 80 matches contact.css; the two never show together, because this one's
   backdrop covers the "Contact us" button while it is open.

   The panel caps its own height and scrolls INSIDE itself, because this copy is long enough that
   a phone in landscape would otherwise push the Close button off the bottom of the screen. */

.lp-modal{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.lp-modal[hidden]{display:none}
.lp-back{position:fixed;inset:0;background:rgba(22,24,29,.62)}
.lp-panel{position:relative;width:100%;max-width:540px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;
  background:#fff;color:#16181d;border-radius:14px;border-top:5px solid #E1131E;
  box-shadow:0 16px 44px rgba(16,18,22,.32);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}
.lp-x{position:absolute;top:10px;right:10px;width:32px;height:32px;border:none;border-radius:8px;background:none;
  cursor:pointer;font-size:15px;line-height:1;color:#6b7280;display:inline-flex;align-items:center;justify-content:center}
.lp-x:hover{background:#f0f1f4;color:#16181d}
.lp-head{padding:20px 52px 4px 22px}
.lp-eyebrow{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#E1131E;margin-bottom:6px}
.lp-head h2{margin:0;font-size:21px;line-height:1.3;font-weight:800;color:#16181d}
.lp-body{padding:10px 22px 4px}
.lp-body p{margin:0 0 12px}
.lp-callout{font-weight:700;background:#fdf1f2;border-left:4px solid #E1131E;border-radius:0 8px 8px 0;padding:10px 12px}
.lp-when{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:6px;font-weight:600}
.lp-cta{margin-bottom:8px !important}
.lp-meet{display:inline-block;background:#E1131E;color:#fff;text-decoration:none;font-weight:700;border-radius:9px;padding:11px 18px}
.lp-meet:hover{background:#c00f19}
.lp-small{font-size:13.5px;color:#4b5563;margin-bottom:6px !important;overflow-wrap:anywhere}
.lp-book{text-decoration:none;display:inline-flex;align-items:center;margin-right:auto}
.lp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e6e8ec;border-radius:10px;
  padding:10px 12px;margin-bottom:6px}
.lp-val{font-size:17px;font-weight:700;user-select:all;overflow-wrap:anywhere}
.lp-act{flex:none;border:1px solid #e6e8ec;background:#fff;color:#16181d;border-radius:8px;padding:7px 12px;font:inherit;
  font-size:13px;font-weight:600;line-height:1;cursor:pointer;white-space:nowrap}
.lp-act:hover{background:#f0f1f4}
.lp-act.done{border-color:#1a7f37;color:#1a7f37}
.lp-foot{padding:12px 22px 20px;display:flex;justify-content:flex-end;align-items:center;gap:10px}
.lp-btn{background:#E1131E;color:#fff;border:none;border-radius:9px;padding:10px 18px;font:inherit;font-weight:600;cursor:pointer}
.lp-btn:hover{background:#c00f19}
.lp-meet:focus-visible,.lp-x:focus-visible,.lp-act:focus-visible,.lp-btn:focus-visible{outline:2px solid #E1131E;outline-offset:2px}
@media (max-width:480px){
  .lp-head{padding:18px 48px 4px 16px}
  .lp-head h2{font-size:18px}
  .lp-body{padding:8px 16px 4px}
  .lp-foot{padding:10px 16px 16px}
  .lp-meet{display:block;text-align:center}
}
