/* ═══ PIPEIT WAITLIST MODAL - shared across every marketing page ═══
   Visual language is unchanged from the approved modal. Structure is now a
   single concise step: email required, name / company / job title optional. */

#wl-overlay{position:fixed;inset:0;z-index:9950;background:rgba(15,22,41,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .25s ease;overflow-y:auto;}
#wl-overlay.open{opacity:1;pointer-events:all;}
#wl-modal{background:#fff;border-radius:20px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 32px 80px rgba(15,22,41,.35),0 0 0 1px rgba(74,120,255,.1);transform:scale(.93) translateY(24px);transition:transform .35s cubic-bezier(.34,1.3,.64,1),opacity .25s ease;opacity:0;position:relative;margin:auto;}
#wl-overlay.open #wl-modal{transform:scale(1) translateY(0);opacity:1;}
#wl-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:none;background:#F1F4F7;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#151515;z-index:20;transition:background .15s;}
#wl-close:hover{background:#E4E7F0;}
#wl-close:focus-visible{outline:2px solid #4A78FF;outline-offset:2px;}

.wl-panel{padding:28px 26px 26px;display:flex;flex-direction:column;}
.wl-head{margin-bottom:18px;padding-right:34px;}
.wl-title{font-size:17px;font-weight:800;color:#0F1629;margin:0 0 4px;letter-spacing:-.015em;}
.wl-sub{font-size:12.5px;color:#6B7280;margin:0;line-height:1.5;}

.wl-field{margin-bottom:13px;}
.wl-field label{display:block;font-size:10.5px;font-weight:700;color:#374151;margin-bottom:5px;letter-spacing:.055em;text-transform:uppercase;}
.wl-field label .opt{font-weight:500;text-transform:none;letter-spacing:0;color:#9CA3AF;}
.wl-field input{width:100%;padding:10px 13px;border:1.5px solid #E4E7F0;border-radius:8px;font-size:13.5px;font-family:inherit;color:#0F1629;background:#F8FAFC;transition:border-color .2s,box-shadow .2s,background .2s;outline:none;-webkit-appearance:none;appearance:none;}
.wl-field input:focus{border-color:#4A78FF;box-shadow:0 0 0 3px rgba(74,120,255,.1);background:#fff;}
.wl-field input.wl-error{border-color:#EF4444;animation:wlShake .35s ease;}
.wl-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

/* Honeypot - never shown to a human, never announced to assistive tech */
.wl-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none;}

/* Optional marketing consent - unchecked by default */
.wl-consent{display:flex;align-items:flex-start;gap:9px;margin-top:4px;cursor:pointer;}
.wl-consent input{width:16px;height:16px;margin-top:1px;flex-shrink:0;accent-color:#4A78FF;cursor:pointer;}
.wl-consent span{font-size:12.5px;color:#4B5563;line-height:1.5;}

/* Privacy disclosure under the form */
.wl-privacy{font-size:11.5px;color:#9CA3AF;line-height:1.55;margin-top:14px;}
.wl-privacy a{color:#4A78FF;font-weight:600;text-decoration:none;}
.wl-privacy a:hover{text-decoration:underline;}

.wl-actions{display:flex;gap:8px;margin-top:16px;}
.wl-btn{flex:1;padding:12px 16px;background:#4A78FF;border:none;border-radius:8px;font-size:13.5px;font-weight:700;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;font-family:inherit;transition:background .15s,transform .1s,box-shadow .15s;min-height:44px;}
.wl-btn:hover:not(:disabled){background:#3B63E0;box-shadow:0 4px 14px rgba(74,120,255,.3);}
.wl-btn:active:not(:disabled){transform:scale(.98);}
.wl-btn:disabled{background:#C7D4F5;cursor:default;}
.wl-btn:focus-visible{outline:2px solid #151515;outline-offset:2px;}

.wl-msg{font-size:12.5px;line-height:1.55;margin-top:12px;padding:10px 12px;border-radius:8px;display:none;}
.wl-msg.show{display:block;}
.wl-msg.err{background:#FEF2F2;color:#B91C1C;border:1px solid #FECACA;}

/* Success state */
.wl-success{display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px 0 4px;}
.wl-check-wrap{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#4A78FF,#4F46E5);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;animation:wlPop .5s .05s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 8px 22px rgba(74,120,255,.3);}
@keyframes wlPop{from{transform:scale(0);opacity:0;}to{transform:scale(1);opacity:1;}}
@keyframes wlCheckDraw{from{stroke-dashoffset:32;}to{stroke-dashoffset:0;}}
.wl-check-path{stroke-dasharray:32;stroke-dashoffset:32;animation:wlCheckDraw .5s .5s cubic-bezier(.4,0,.2,1) forwards;}
.wl-success-title{font-size:18px;font-weight:800;color:#0F1629;margin:0 0 8px;letter-spacing:-.02em;}
.wl-success-msg{font-size:13px;color:#6B7280;line-height:1.6;margin:0 0 20px;}
.wl-demo-btn{display:inline-flex;align-items:center;gap:6px;padding:11px 22px;background:#4A78FF;color:#fff;border-radius:8px;font-size:13.5px;font-weight:700;text-decoration:none;transition:background .15s,box-shadow .15s;}
.wl-demo-btn:hover{background:#3B63E0;box-shadow:0 4px 14px rgba(74,120,255,.3);}

@keyframes wlShake{0%,100%{transform:translateX(0);}20%{transform:translateX(-6px);}40%{transform:translateX(6px);}60%{transform:translateX(-4px);}80%{transform:translateX(3px);}}
@media(prefers-reduced-motion:reduce){
  .wl-check-wrap,.wl-check-path{animation:none;}
  .wl-check-path{stroke-dashoffset:0;}
}
@media(max-width:420px){
  .wl-panel{padding:24px 20px 22px;}
  .wl-row{grid-template-columns:1fr;gap:0;}
}
