/* Confi web system — generated from design_exchange/handoff/LOCK.md, 11 Sep 2026.
   Any value here that contradicts LOCK.md is drift. */
:root{
  --stage:#E1E1E1; --surface:#FFFFFF; --inset:#FAFBFC; --line:#E7E9EB;
  --ink:#04070E; --mute:#6C7278; --signal:#E4752F; --member:#2B6799;
  --r-chip:20px; --r-card:28px; --r-frame:32px;
  --rest:0 0 28px rgba(4,7,14,.05); --lift:0 0 48px rgba(4,7,14,.11);
  --curve:cubic-bezier(.25,0,0,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--stage);color:var(--ink);
  font-family:Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:16.5px;line-height:1.7;letter-spacing:-.004em;-webkit-font-smoothing:antialiased}
.wrap{max-width:560px;margin:0 auto;padding:0 20px}
.mono{font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--mute)}
h1{font-size:50px;line-height:1.04;letter-spacing:-.038em;font-weight:800;margin:0 0 18px}
h2{font-size:30px;line-height:1.12;letter-spacing:-.028em;font-weight:800;margin:0 0 14px}
.lede{font-size:21px;line-height:1.5;letter-spacing:-.018em;font-weight:500;color:var(--ink)}
@media(max-width:400px){h1{font-size:38px}h2{font-size:26px}.lede{font-size:19px}}
section{padding:56px 0}
.card{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--rest);padding:26px 22px}
.band{background:var(--ink);color:#fff;padding:64px 0}
.band h1,.band h2{color:#fff}
.band .lede{color:#C9CDD2}
a{color:inherit}
.btn{display:block;width:100%;text-align:center;background:var(--signal);color:var(--ink);
  font-weight:600;font-size:17px;border:0;border-radius:28px;padding:17px 20px;cursor:pointer;
  text-decoration:none;transition:transform 120ms var(--curve)}
.btn:active{transform:scale(.99)}
input[type=email],input[type=text]{width:100%;font:inherit;font-size:17px;padding:16px 18px;
  border:1px solid var(--line);border-radius:28px;background:var(--surface);color:var(--ink);margin-bottom:10px}
input:focus{outline:2px solid var(--member);outline-offset:1px}
.fine{font-size:13.5px;line-height:1.55;color:var(--mute)}
/* the founding-members component — LOCK.md */
.fm{background:var(--surface);border:2px solid var(--member);border-radius:28px;
  box-shadow:0 0 48px rgba(43,103,153,.16);overflow:hidden}
.fm-head{background:var(--member);color:#fff;padding:14px 20px;display:flex;gap:10px;align-items:center}
.fm-head .mono{color:#fff}
.fm-body{padding:20px}
.opt{background:var(--inset);border:1px solid var(--line);border-radius:20px;padding:16px 18px;
  margin-bottom:12px;display:flex;gap:14px;align-items:flex-start;cursor:pointer;
  transition:border-color 120ms var(--curve)}
.opt:hover{border-color:var(--member)}
.opt.sel{border-color:var(--member);border-width:2px}
.chip{flex:0 0 30px;height:30px;border-radius:50%;background:var(--member);color:#fff;
  font-family:'IBM Plex Mono',monospace;font-size:13px;display:grid;place-items:center;font-weight:500}
.bar{height:8px;border-radius:999px;background:var(--line);overflow:hidden;margin:8px 0 4px}
.bar i{display:block;height:100%;background:var(--member);transition:width 380ms var(--curve)}
.reveal{opacity:0;transform:translateY(8px);animation:rise 380ms var(--curve) forwards}
@keyframes rise{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.reveal{animation:none;opacity:1;transform:none}}
footer{padding:48px 0 64px;color:var(--mute);font-size:13.5px}
footer a{color:var(--mute)}
