/* Lead form overlay — Lyman's approved Digital Identity popup */

.lead-layer{
  position:fixed;inset:0;z-index:240;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,8,8,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  padding:28px;
  opacity:0;pointer-events:none;
  transition:opacity .28s ease;
}
.lead-layer.is-open{opacity:1;pointer-events:auto}
.lead-layer[hidden]{display:none}

.lead-panel{
  width:100%;max-width:680px;max-height:min(94vh,900px);
  overflow:auto;background:var(--panel,#1A1814);
  border:1px solid var(--gold,#8D734D);color:var(--bone,#D8D2C4);
  padding:32px 36px 36px;
  transform:translateY(18px);
  transition:transform .32s cubic-bezier(.22,1,.36,1), max-width .32s ease;
}
.lead-panel.is-confirmed{max-width:480px}
.lead-panel.is-confirmed .lead-vsl{display:none}
.lead-layer.is-open .lead-panel{transform:none}

.lead-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.lead-kicker{
  font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;
  color:var(--gold-txt,#9C8055);margin-bottom:10px
}
.lead-panel h2{
  font-family:var(--disp,'Cinzel',Georgia,serif);font-weight:500;color:var(--cream,#F2EDE3);
  font-size:clamp(26px,4vw,34px);line-height:1.12;letter-spacing:.01em;margin:0
}
.lead-lede{
  font-family:var(--serif,'Cormorant Garamond',Georgia,serif);
  font-size:clamp(18px,2.2vw,22px);line-height:1.45;color:var(--bone,#D8D2C4);
  font-weight:300;margin:12px 0 0
}

.lead-close{
  flex:none;width:44px;height:44px;margin:-8px -8px 0 0;
  border:1px solid var(--line2,#403A2F);background:transparent;color:var(--bone,#D8D2C4);
  cursor:pointer;font-size:22px;line-height:1;display:inline-flex;align-items:center;justify-content:center
}
.lead-close:hover{border-color:var(--gold-lt,#C9A96B);color:var(--gold-lt,#C9A96B)}

.lead-split{display:grid;grid-template-columns:1fr;gap:28px;align-items:start}

.lead-vsl .vidwrap{
  position:relative;width:100%;aspect-ratio:16/9;
  background:#0B0B0B;border:1px solid var(--gold,#8D734D);
  overflow:hidden;cursor:pointer
}
.lead-vsl video,
.lead-vsl iframe,
.lead-vsl .poster{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0B0B0B;border:0
}
.lead-vsl iframe{z-index:2}
.lead-vsl .play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;
  width:74px;height:74px;border-radius:50%;border:1px solid var(--gold,#8D734D);
  background:rgba(14,14,14,.45);display:flex;align-items:center;justify-content:center;
  pointer-events:none;transition:.25s
}
.lead-vsl .vidwrap:hover .play{background:var(--gold,#8D734D)}
.lead-vsl .play i{font-style:normal;color:var(--gold-lt,#C9A96B);font-size:20px;margin-left:5px}
.lead-vsl .vidwrap:hover .play i{color:#000}
.lead-vsl .vidwrap.is-playing .play,
.lead-vsl .vidwrap.is-playing .poster{opacity:0;pointer-events:none}

.lead-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.lead-field span{
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bone-far,#8A8478)
}
.lead-field input{
  width:100%;background:var(--black,#0E0E0E);border:1px solid var(--line2,#403A2F);
  color:var(--bone,#D8D2C4);padding:0 16px;min-height:52px;
  font-family:var(--body,'Montserrat',system-ui,sans-serif);font-size:16px;font-weight:300
}
.lead-field input::placeholder{color:var(--bone-far,#8A8478)}
.lead-field input:focus{outline:0;border-color:var(--gold-lt,#C9A96B)}
.lead-field input[aria-invalid="true"]{border-color:#a45a4a}
.lead-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.lead-consent{
  display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;
  margin:6px 0 16px;padding:14px 14px 14px 12px;border:1px solid var(--line,#2E2A22)
}
.lead-consent[aria-invalid="true"]{border-color:#a45a4a}
.lead-consent input{
  width:20px;height:20px;margin-top:2px;accent-color:var(--gold,#8D734D);cursor:pointer
}
.lead-consent label{font-size:13px;line-height:1.55;color:var(--bone-dim,#9C9585);cursor:pointer}
.lead-consent label b{font-weight:500;color:var(--cream,#F2EDE3)}

.lead-err{font-size:13px;color:#d4a39a;min-height:1.2em;margin:-4px 0 12px}
.lead-hint{font-size:13px;line-height:1.5;color:var(--bone-far,#8A8478);margin:-6px 0 16px}

.lead-panel button{font-family:inherit}
.lead-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.lead-actions .btn{
  display:inline-flex;align-items:center;justify-content:center;
  flex:1;min-width:160px;min-height:52px;padding:0 22px;cursor:pointer;
  font-size:12.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  border:1px solid transparent
}
.lead-actions .btn-p{background:var(--gold,#8D734D);color:#000;border-color:var(--gold,#8D734D)}
.lead-actions .btn-p:hover{background:var(--gold-lt,#C9A96B);border-color:var(--gold-lt,#C9A96B)}

.lead-done[hidden],.lead-formwrap[hidden]{display:none}
.free-panel.is-confirmed .lead-vsl{display:none}
.lead-mail{
  margin:18px 0 0;padding:14px 16px;border-left:2px solid var(--gold,#8D734D);
  font-size:14px;color:var(--cream,#F2EDE3)
}

body.lead-open{overflow:hidden}

@media (max-width:900px){
  .lead-layer{align-items:flex-end;padding:0}
  .lead-panel{border-bottom:0;padding:22px 20px 28px;max-height:94vh}
}
@media (max-width:640px){
  .lead-row{grid-template-columns:1fr}
}
