/* PK Popup Banner — paper panel, 12px radius.
   Mounted on document.body; sits above cart/modal (z 80) and toast (z 90). */

.pk-popup{
  position:fixed;inset:0;z-index:120;
  display:none;place-items:center;
  padding:max(16px,env(safe-area-inset-top)) var(--gutter) max(16px,env(safe-area-inset-bottom));
  margin:0;border:0;pointer-events:none;
}
.pk-popup.is-open{display:grid;pointer-events:auto}
.pk-popup[hidden]{display:none!important}
.pk-popup-scrim{position:absolute;inset:0;background:rgba(10,10,10,.55);pointer-events:auto}
.pk-popup-panel{
  position:relative;z-index:1;width:min(560px,100%);max-width:100%;
  background:var(--paper);color:var(--ink);border-radius:12px;
  padding:clamp(28px,4vw,40px) clamp(22px,4vw,36px) clamp(24px,3vw,32px);
  pointer-events:auto;isolation:isolate;
}
.pk-popup-x{
  position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;
  border:2px solid var(--ink);background:var(--card);color:var(--ink);display:grid;place-items:center;
  font-size:1.35rem;line-height:1;padding:0;font-weight:700;cursor:pointer;z-index:2;
}
.pk-popup-title{font-family:var(--font-display);font-weight:800;font-size:clamp(1.45rem,1rem + 1.8vw,2rem);letter-spacing:-.03em;line-height:1.08;margin:0 28px 12px 0;max-width:18ch;color:var(--ink)}
.pk-popup-lead{margin:0 0 18px;color:var(--muted);font-size:var(--fs-body);line-height:1.5;max-width:42ch}
.pk-popup-benefits{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:10px}
.pk-popup-benefits li{display:flex;gap:12px;align-items:flex-start;font-weight:700;line-height:1.35;color:var(--ink)}
.pk-popup-check{
  flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent);color:var(--card);
  display:grid;place-items:center;font-size:.75rem;font-weight:800;margin-top:1px;
}
.pk-popup-row{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.pk-popup-input{
  flex:1 1 180px;min-height:52px;margin:0;border:2px solid var(--ink);border-radius:999px;
  padding:0 18px;font:inherit;font-weight:700;background:var(--card);color:var(--ink);
  -webkit-appearance:none;appearance:none;
}
.pk-popup-input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.pk-popup-btn{
  flex:0 0 auto;min-height:52px;border-radius:999px;padding:0 22px;font-weight:800;
  background:var(--accent);border:2px solid var(--accent);color:var(--card);cursor:pointer;
}
@media (hover:hover) and (pointer:fine){
  .pk-popup-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--card)}
  .pk-popup-x:hover{background:var(--ink);color:var(--card);border-color:var(--ink)}
}
.pk-popup-msg{margin:10px 0 0;font-size:var(--fs-small);font-weight:700}
.pk-popup-msg.is-ok{color:var(--ink)}
.pk-popup-msg.is-err{color:var(--accent)}
.pk-popup-dismiss{margin:16px 0 0;text-align:left}
.pk-popup-dismiss-btn{
  border:0;background:transparent;padding:0;font:inherit;font-weight:700;color:var(--ink);
  text-decoration:underline;text-underline-offset:4px;cursor:pointer;
}
@media (hover:hover) and (pointer:fine){.pk-popup-dismiss-btn:hover{color:var(--accent)}}
@media (max-width:520px){
  .pk-popup-row{flex-direction:column}
  .pk-popup-btn{width:100%}
}
body.pk-popup-lock{overflow:hidden}

/* Elementor editor: inline preview, not a full-screen trap */
.elementor-editor-active .pk-popup,
.elementor-editor-preview .pk-popup{
  position:relative;inset:auto;z-index:1;display:grid!important;padding:24px 0;min-height:0;pointer-events:auto;
}
.elementor-editor-active .pk-popup[hidden],
.elementor-editor-preview .pk-popup[hidden]{display:grid!important}
.elementor-editor-active .pk-popup-scrim,
.elementor-editor-preview .pk-popup-scrim{display:none}
.elementor-editor-active .pk-popup-panel,
.elementor-editor-preview .pk-popup-panel{margin:0 auto}
