/* SnoopTool lead capture widget */
:root{
  --lead-ink:#12152e; --lead-ink-2:#1b1f3b;
  --lead-accent:#5a6fd6; --lead-accent-2:#7c5cff;
  --lead-paper:#ffffff; --lead-mut:#6b7280; --lead-line:#e5e7eb;
  --lead-ok:#16a34a; --lead-err:#dc2626;
  --lead-r:14px; --lead-shadow:0 18px 50px rgba(18,21,46,.22);
}
#lead-band{font-family:Inter,system-ui,sans-serif;max-width:1120px;margin:56px auto;padding:0 20px}
#lead-band .lead-card{display:grid;grid-template-columns:1.05fr .95fr;gap:0;border-radius:20px;overflow:hidden;box-shadow:var(--lead-shadow);background:var(--lead-paper)}
#lead-band .lead-pitch{background:radial-gradient(120% 140% at 0% 0%, #232a52 0%, var(--lead-ink) 60%);color:#fff;padding:40px 38px;display:flex;flex-direction:column;justify-content:center}
.lead-eyebrow{font:600 12px/1 Inter;letter-spacing:.14em;text-transform:uppercase;color:#9aa6ff;margin-bottom:14px}
.lead-h{font-family:'Sora',Inter,sans-serif;font-weight:700;font-size:clamp(24px,3vw,32px);line-height:1.12;letter-spacing:-.02em;margin:0 0 12px}
.lead-sub{color:#c3c8e6;font-size:15px;line-height:1.6;margin:0 0 22px;max-width:42ch}
.lead-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.lead-points li{display:flex;gap:10px;align-items:flex-start;color:#dfe3f5;font-size:14px}
.lead-points li svg{flex:0 0 18px;margin-top:1px;color:#8ad6a0}
.lead-form{padding:36px 34px;display:flex;flex-direction:column;gap:14px}
.lead-form h3{font-family:'Sora',Inter,sans-serif;font-size:18px;letter-spacing:-.01em;margin:0 0 2px;color:var(--lead-ink)}
.lead-form .lf-note{font-size:13px;color:var(--lead-mut);margin:0 0 6px}
.lf-field{display:flex;flex-direction:column;gap:6px}
.lf-field label{font-size:12.5px;font-weight:600;color:#374151}
.lf-field input,.lf-field textarea{width:100%;padding:12px 14px;border:1.5px solid var(--lead-line);border-radius:11px;font:400 14.5px Inter;color:var(--lead-ink);background:#fff;transition:border-color .15s,box-shadow .15s}
.lf-field textarea{resize:vertical;min-height:74px}
.lf-field input:hover,.lf-field textarea:hover{border-color:#c7ccd6}
.lf-field input:focus-visible,.lf-field textarea:focus-visible{outline:none;border-color:var(--lead-accent);box-shadow:0 0 0 4px rgba(90,111,214,.16)}
.lf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.lf-btn{appearance:none;border:0;cursor:pointer;font:600 15px 'Sora',Inter;color:#fff;background:linear-gradient(180deg,#3a4796,#2c356f);padding:14px 18px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .12s,box-shadow .15s,opacity .15s;box-shadow:0 8px 20px rgba(44,53,111,.28)}
.lf-btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(44,53,111,.34)}
.lf-btn:active{transform:translateY(0)}
.lf-btn:focus-visible{outline:3px solid #aab4ff;outline-offset:2px}
.lf-btn[disabled]{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.lf-btn .lf-spin{width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:lf-spin .7s linear infinite;display:none}
.lf-btn.is-loading .lf-spin{display:inline-block}
@keyframes lf-spin{to{transform:rotate(360deg)}}
.lf-msg{font-size:13px;min-height:16px}
.lf-msg.err{color:var(--lead-err)}
.lf-privacy{font-size:12px;color:var(--lead-mut);margin:2px 0 0}
.lf-privacy a{color:var(--lead-accent)}
/* Floating button */
#lead-fab{position:fixed;right:20px;bottom:20px;z-index:9998;font-family:'Sora',Inter,sans-serif;font-weight:600;font-size:14px;color:#fff;background:linear-gradient(180deg,#3a4796,#222a57);border:0;border-radius:999px;padding:13px 20px;display:inline-flex;align-items:center;gap:9px;cursor:pointer;box-shadow:0 12px 30px rgba(18,21,46,.32);transition:transform .14s,box-shadow .15s}
#lead-fab:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(18,21,46,.4)}
#lead-fab:focus-visible{outline:3px solid #aab4ff;outline-offset:3px}
#lead-fab svg{width:17px;height:17px}
/* Modal */
.lead-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(12,14,30,.62);backdrop-filter:blur(3px)}
.lead-modal.open{display:flex}
.lead-modal .lm-box{background:#fff;border-radius:18px;max-width:440px;width:100%;box-shadow:var(--lead-shadow);overflow:hidden;animation:lm-in .22s ease}
@keyframes lm-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.lm-head{background:radial-gradient(120% 140% at 0% 0%, #232a52, var(--lead-ink));color:#fff;padding:22px 24px;position:relative}
.lm-head .lead-h{font-size:21px;margin:0}
.lm-head .lead-sub{margin:8px 0 0;font-size:13.5px}
.lm-close{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.12);border:0;color:#fff;width:30px;height:30px;border-radius:9px;cursor:pointer;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}
.lm-close:hover{background:rgba(255,255,255,.22)}
.lm-close:focus-visible{outline:2px solid #fff;outline-offset:2px}
.lm-body{padding:24px;display:flex;flex-direction:column;gap:13px}
/* Success state */
.lead-done{text-align:center;padding:30px 26px;display:flex;flex-direction:column;align-items:center;gap:12px}
.lead-done .ld-tick{width:58px;height:58px;border-radius:50%;background:rgba(22,163,74,.12);color:var(--lead-ok);display:flex;align-items:center;justify-content:center}
.lead-done h3{font-family:'Sora',Inter,sans-serif;font-size:20px;margin:0;color:var(--lead-ink)}
.lead-done p{color:var(--lead-mut);font-size:14px;margin:0;max-width:34ch;line-height:1.55}
@media(max-width:760px){
  #lead-band .lead-card{grid-template-columns:1fr}
  #lead-band .lead-pitch{padding:30px 26px}
  .lead-form{padding:26px 22px}
  #lead-fab span{display:none}#lead-fab{padding:14px}
}
@media(prefers-reduced-motion:reduce){.lf-btn,#lead-fab,.lm-box{transition:none;animation:none}.lf-spin{animation-duration:1.4s}}
