:root {
  --bg: #f7f6f3;
  --surface: #ffffff;
  --ink: #1a1a1e;
  --muted: #6e6e76;
  --hair: #e6e3dc;
  --ok: #15803d;
  --maxw: 660px;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: var(--bg);
  color: var(--ink);
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 48px 28px 120px; }
.brand {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-weight: 600; font-size: 15px; letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--ink); text-decoration: none; display: inline-block; margin-bottom: 92px;
}
h1 {
  font-family: "Newsreader", Georgia, "Times New Roman", serif;
  font-weight: 500;
  font-size: clamp(33px, 5vw, 52px);
  line-height: 1.07; letter-spacing: -0.015em;
  margin: 0 0 24px;
}
h1 em { font-style: italic; }
.sub {
  font-size: 18px; color: var(--muted); margin: 0 0 38px; max-width: 52ch;
}
.sub code, .proof {
  font-family: "JetBrains Mono", ui-monospace, monospace;
}
.proof {
  font-size: 13px; line-height: 1.75;
  background: var(--surface); border: 1px solid var(--hair); border-radius: 10px;
  padding: 16px 18px; color: #45454d; margin: 0 0 38px; max-width: 520px;
  white-space: pre-wrap;
}
.proof .ok { color: var(--ok); }
.proof .dim { color: var(--muted); }
form.cta { display: flex; gap: 10px; flex-wrap: wrap; max-width: 520px; margin: 0 0 14px; }
form.cta input[type=email] {
  flex: 1; min-width: 230px; background: var(--surface); border: 1px solid var(--hair);
  color: var(--ink); border-radius: 9px; padding: 13px 15px; font-size: 15px;
  font-family: inherit; outline: none;
}
form.cta input[type=email]:focus { border-color: var(--ink); }
form.cta button {
  background: var(--ink); color: #fff; border: 0; border-radius: 9px;
  padding: 13px 22px; font-size: 15px; font-weight: 550; cursor: pointer; font-family: inherit;
}
form.cta button:hover { background: #000; }
form.cta button:disabled { opacity: 0.55; cursor: default; }
.note { font-size: 13px; color: var(--muted); margin: 0; }
.success {
  display: none; border: 1px solid var(--ok); color: var(--ok);
  border-radius: 9px; padding: 14px 16px; max-width: 520px; margin: 0 0 14px; font-size: 15px;
}
.success.show { display: block; }
form.cta.hide { display: none; }
footer {
  margin-top: 100px; color: var(--muted); font-size: 12.5px;
  font-family: "JetBrains Mono", ui-monospace, monospace; letter-spacing: 0.01em;
}
