/* JPT Kenteken Leads (v1.4.0) — simple, solid, theme-proof-ish */
.jpt-kl, .jpt-kl *{box-sizing:border-box}
.jpt-kl{width:100%; margin:0; padding:0;}
.jpt-kl-shell{
  width:100%;
  padding:28px 18px 22px;
  color:#eaf0f7;
  font-family: Arial, sans-serif;
  background:
    radial-gradient(1200px 500px at 20% -10%, rgba(255,70,0,.18), transparent 60%),
    radial-gradient(900px 400px at 80% 0%, rgba(255,180,0,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,0)),
    #070b10;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.jpt-kl-head{max-width:980px}
.jpt-kl-brand{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.jpt-kl-logo{width:56px;height:auto;opacity:.95;filter:drop-shadow(0 8px 16px rgba(0,0,0,.45))}
.jpt-kl-kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.82}
.jpt-kl-micro{font-size:12px;opacity:.72;margin-top:2px}
.jpt-kl-title{margin:10px 0 8px;font-size:32px;line-height:1.1;letter-spacing:.02em;color:#ff3a1a;text-transform:uppercase;font-weight:900}
.jpt-kl-sub{margin:0 0 16px;opacity:.86;line-height:1.45;max-width:920px}

.jpt-kl-steps{max-width:980px}
.jpt-kl-step{display:none; padding:10px 0; animation:jptIn .22s ease-out both}
.jpt-kl-step.is-active{display:block}
@keyframes jptIn{from{opacity:0; transform:translateY(8px)}to{opacity:1; transform:translateY(0)}}
.jpt-kl-stepmeta{display:inline-flex;align-items:center;gap:10px;font-size:12px;opacity:.78;margin-bottom:12px}
.jpt-kl-stepmeta .dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(90deg,#ffb400,#ff2a2a);box-shadow:0 0 0 4px rgba(255,60,0,.12)}

.jpt-kl-plate-wrap{display:flex;justify-content:flex-start;margin:10px 0 14px}
.jpt-kl-plate{
  width:min(720px,100%);
  display:flex;align-items:center;gap:10px;
  padding:10px;border-radius:18px; overflow:hidden;
  background:linear-gradient(180deg,#f4c400,#f0b800);
  border:1px solid rgba(0,0,0,.45);
  box-shadow:0 18px 40px rgba(0,0,0,.35), inset 0 0 0 2px rgba(255,255,255,.18);
  transition:transform .2s ease, box-shadow .2s ease;
}
.jpt-kl-plate.is-focused{transform:translateY(-2px);box-shadow:0 22px 55px rgba(0,0,0,.42), 0 0 0 4px rgba(255,80,0,.14), inset 0 0 0 2px rgba(255,255,255,.18)}
.jpt-kl-nl{
  width:56px;height:60px;border-radius:14px;
  background:linear-gradient(180deg,#0d56bf,#083a84);
  color:#fff;display:flex;align-items:center;justify-content:center;
  font-weight:900;letter-spacing:.08em;flex:0 0 auto;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
}
.jpt-kl-plate-input{
  flex:1 1 auto;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:60px;
  border:0 !important;
  outline:none !important;
  border-radius:14px;
  background:rgba(255,255,255,.94) !important;
  color:#0f141b !important;
  text-transform:uppercase;
  font-weight:950;
  font-size:clamp(18px, 3.8vw, 30px);
  letter-spacing:.14em;
  padding:0 14px;
  text-align:center;
  box-shadow:none !important;
  margin:0 !important;
  display:block;
}

.jpt-kl-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:8px}
.jpt-kl-btn{
  appearance:none;border:0;border-radius:14px;
  padding:12px 16px;cursor:pointer;font-weight:900;letter-spacing:.02em;
  color:#fff;background:linear-gradient(90deg,#ff2a2a,#ff6a00);
  box-shadow:0 14px 30px rgba(255,60,0,.18);
}
.jpt-kl-btn:hover{filter:brightness(1.04)}
.jpt-kl-btn:disabled{opacity:.65;cursor:not-allowed;filter:none}
.jpt-kl-btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.14);box-shadow:none;color:#eaf0f7}

.jpt-kl-hint{margin-top:10px;font-size:12px;opacity:.72}
.jpt-kl-hint span{opacity:1;font-weight:900}

.jpt-kl-carbox{
  width:min(920px,100%);
  border-radius:18px;
  padding:10px 14px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.jpt-kl-carbox .row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed rgba(255,255,255,.10)}
.jpt-kl-carbox .row:last-child{border-bottom:0}
.jpt-kl-carbox span{opacity:.75}
.jpt-kl-carbox strong{max-width:68%;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.jpt-kl-confirm .q{margin-top:14px;font-weight:900}

.jpt-kl-field{width:min(720px,100%);margin-top:14px}
.jpt-kl-field label{display:block;font-size:13px;opacity:.85;margin-bottom:8px}
.jpt-kl-field input{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:#eaf0f7;
  padding:12px 14px;
  outline:none;
}
.jpt-kl-field input:focus{border-color:rgba(255,100,0,.35);box-shadow:0 0 0 4px rgba(255,70,0,.12)}

.jpt-kl-alert{width:min(720px,100%);margin-top:14px;padding:12px 14px;border-radius:14px;line-height:1.35}
.jpt-kl-alert-error{background:rgba(255,42,42,.12);border:1px solid rgba(255,42,42,.35)}
.jpt-kl-alert-ok{background:rgba(0,200,120,.12);border:1px solid rgba(0,200,120,.35)}

.jpt-kl-foot{margin-top:16px;opacity:.70}

@media (max-width:520px){
  .jpt-kl-shell{padding:22px 14px 18px}
  .jpt-kl-title{font-size:24px}
  .jpt-kl-actions{flex-direction:column;align-items:stretch}
  .jpt-kl-btn{width:100%}
  .jpt-kl-plate{padding:8px}
  .jpt-kl-nl{width:46px;height:54px;border-radius:12px}
  .jpt-kl-plate-input{height:54px;font-size:clamp(18px,6.2vw,22px);letter-spacing:.11em;padding:0 10px}
}
