/* Public landing page for signed-out visitors. Mobile first; no external fonts or scripts. */
.lp{--sand:#fdf7ee;--soft:#eaf1fd;display:block;max-width:1100px;margin:0 auto;padding:0 20px 56px;color:var(--ink);line-height:1.6}
.lp img{display:block;width:100%;height:auto}
.lp h1,.lp h2,.lp h3{line-height:1.25;text-wrap:balance}
.lp p{margin:0 0 16px}
.lp-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 8px;flex-wrap:wrap}
.lp-wordmark{margin:0;font-size:1.15rem;font-weight:800;letter-spacing:.01em;color:var(--blue)}
.lp-button{min-height:52px;border-radius:14px;border:1px solid var(--line);background:#fff;color:var(--ink);padding:12px 22px;font-weight:700}
.lp-button-primary{background:var(--blue);border-color:var(--blue);color:#fff}
.lp-button-small{min-height:44px;padding:9px 18px}
.lp-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}
.lp-badge{display:inline-block;margin:0 0 14px;padding:7px 14px;border-radius:999px;background:var(--soft);color:#13438f;font-size:.85rem;font-weight:700}
.lp-hero{display:grid;gap:28px;padding:16px 0 8px}
.lp-hero h1{margin:0 0 12px;font-size:clamp(2.3rem,10vw,3.4rem);color:var(--blue);letter-spacing:-.015em}
.lp-lead{font-size:1.15rem;max-width:34em}
.lp-hero-image{border-radius:26px;overflow:hidden;background:var(--soft);box-shadow:0 18px 44px #122c5518}
.lp-fineprint{margin:0;font-size:.95rem;color:#425e82}
.lp-muted{color:#425e82}
.lp-section{padding:34px 0;border-top:1px solid var(--line)}
.lp-section h2{margin:0 0 16px;font-size:clamp(1.5rem,5.5vw,2rem)}
.lp-section p{max-width:62ch}
.lp-split{display:grid;gap:24px}
.lp-figure{border-radius:26px;overflow:hidden;background:var(--sand)}
.lp-steps{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.lp-step{background:#fff;border:1px solid var(--line);border-radius:22px;padding:0 0 20px;overflow:hidden}
.lp-step-image{aspect-ratio:4/3;object-fit:cover;background:var(--soft)}
.lp-step h3{margin:18px 20px 8px;font-size:1.15rem;color:var(--blue)}
.lp-step p{margin:0 20px;max-width:none}
.lp-pilot{background:var(--sand);border:1px solid #f0e2cc;border-radius:26px;padding:28px 22px;margin-top:34px}
.lp-pilot h2{margin-top:0}
.lp-login{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px 22px;box-shadow:0 18px 44px #122c5514}
.lp-login h2{margin:0 0 10px}
.lp-form{display:grid;gap:16px;max-width:420px;margin-top:20px}
.lp-form label{display:grid;gap:8px;font-weight:700}
.lp-form input{width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.lp-form .lp-check{display:flex;align-items:flex-start;gap:12px;font-weight:500;line-height:1.45}
.lp-form .lp-check input{width:22px;height:22px;flex-shrink:0;margin-top:1px;padding:0}
.lp-status{margin:0;min-height:24px;color:#9a2323;font-weight:700}
.lp-footer{padding:34px 0 0;border-top:1px solid var(--line);font-size:.95rem}
.lp-footer p{margin:0 0 8px;max-width:62ch}
@media(min-width:760px){
  .lp{padding:0 32px 72px}
  .lp-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:44px;padding:28px 0 16px}
  .lp-split{grid-template-columns:1.2fr .8fr;align-items:center;gap:40px}
  .lp-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lp-pilot,.lp-login{padding:36px 34px}
}
@media(min-width:1040px){
  .lp-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lp-step h3{font-size:1.05rem}
}
