/* Waitlist view: the split hero, the signup card (form fields, validation
   states) and the perforated success ticket. */

/* ============ waitlist ============ */
.wl-main{min-height:0;display:flex;align-items:center;position:relative;overflow:hidden;padding:30px 0 18px;}
.wl-blob{position:absolute;border-radius:50%;border:var(--bw) solid var(--ink);z-index:0;}
.wl-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center;}
.wl-copy .eyebrow{margin-bottom:22px;font-size:16px;letter-spacing:.16em;padding:11px 20px;}
.wl-copy .eyebrow .dot{width:11px;height:11px;}
.wl-copy h1{font-size:clamp(34px,4.4vw,54px);font-weight:800;letter-spacing:-.025em;line-height:.98;margin:0;}
.wl-copy .sub{font-size:clamp(17px,1.4vw,20px);color:var(--ink-2);margin-top:22px;max-width:40ch;font-weight:600;}
.wl-proof{display:flex;align-items:center;gap:13px;margin-top:30px;}
.wl-proof .avatars{display:flex;}
.wl-proof .avatars i{width:36px;height:36px;border-radius:50%;border:var(--bw) solid var(--ink);margin-left:-10px;}
.wl-proof .avatars i:first-child{margin-left:0;}
.wl-proof .avatars i:nth-child(1){background:var(--orange-t);}
.wl-proof .avatars i:nth-child(2){background:var(--blue-t);}
.wl-proof .avatars i:nth-child(3){background:var(--green-t);}
.wl-proof .avatars i:nth-child(4){background:var(--pink-t);}
.wl-proof p{font-size:14.5px;color:var(--ink-2);font-weight:600;}
.wl-proof b{color:var(--ink);font-weight:800;}
.wl-card{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-xl);box-shadow:var(--sh-3);padding:34px 34px 32px;position:relative;}
.wl-card .card-code{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);}
.wl-card h2{font-family:var(--font-display);font-weight:800;font-size:25px;margin:10px 0 4px;letter-spacing:-.02em;}
.wl-card .card-note{color:var(--ink-2);font-size:14.5px;font-weight:600;}
.wl-form{display:flex;flex-direction:column;gap:15px;margin-top:24px;}
.field{display:flex;flex-direction:column;gap:7px;}
.field label{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);}
.field input,.field select{
  width:100%;font-family:var(--font-body);font-weight:700;font-size:15.5px;color:var(--ink);
  background:var(--paper);border:var(--bw) solid var(--ink);border-radius:var(--r-md);
  padding:13px 15px;outline:none;box-shadow:2px 2px 0 var(--ink);transition:box-shadow .12s ease,transform .12s ease;
  -webkit-appearance:none;appearance:none;
}
.field input::placeholder{color:var(--ink-3);font-weight:600;}
.field input:focus,.field select:focus{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink);}
.select-wrap{position:relative;}
.select-wrap::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);transform:translateY(-70%) rotate(45deg);pointer-events:none;}
.field select{cursor:pointer;}
.field select:invalid{color:var(--ink-3);font-weight:600;}
.wl-form .btn{margin-top:6px;}
.field.err input,.field.err select{box-shadow:3px 3px 0 var(--red);border-color:var(--red);}
.err-msg{display:none;font-size:12.5px;font-weight:700;color:var(--red);}
.field.err .err-msg{display:block;}
.wl-fine{margin-top:16px;font-size:12.5px;color:var(--ink-3);font-weight:600;text-align:center;line-height:1.5;}
.wl-success{display:none;text-align:center;padding:14px 6px 6px;}
.wl-card.done .wl-form,.wl-card.done .card-head{display:none;}
.wl-card.done .wl-success{display:block;}
.wl-success .tick{width:74px;height:74px;border-radius:50%;background:var(--green);border:var(--bw) solid var(--ink);box-shadow:var(--sh-2);display:flex;align-items:center;justify-content:center;color:#fff;margin:6px auto 22px;}
.wl-success h2{font-family:var(--font-display);font-weight:800;font-size:27px;letter-spacing:-.02em;margin:0;}
.wl-success p{color:var(--ink-2);font-size:15.5px;font-weight:600;margin:14px auto 0;max-width:34ch;}
.wl-success .place{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;background:var(--amber-t);border:var(--bw) solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:var(--r-sm);padding:9px 15px;margin-top:24px;}
.wl-perf{border-top:2px dashed var(--ink);margin:24px -34px 0;position:relative;}
.wl-perf::before,.wl-perf::after{content:"";position:absolute;top:-11px;width:20px;height:20px;border-radius:50%;background:var(--paper);border:var(--bw) solid var(--ink);}
.wl-perf::before{left:-11px;}.wl-perf::after{right:-11px;}
@media (max-width:980px){
  .wl-grid{grid-template-columns:1fr;gap:40px;max-width:520px;margin:0 auto;}
  .wl-main{min-height:0;padding:40px 0 64px;}
}
@media (max-width:560px){
  .wl-card{padding:26px 22px 24px;}
  .wl-perf{margin-left:-22px;margin-right:-22px;}
}
