/* Shared by the legal and waitlist pages. Brand tokens as in index.html (brand/BRAND.md). */
:root{
  --paper:#FBF8F5; --ink:#232B4D; --muted:#454C6B; --soft:#636A8A;
  --sky:#E6EDF3; --rose:#F7E9E4; --hairline:#D9DDE6; --hairline-sky:#CDD5E0; --chip:#3D466B;
  --white:#FFFFFF; --error:#8A2D1B;
  --serif:'Newsreader',Georgia,serif;
  --sans:'Geist',system-ui,sans-serif;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,monospace;
  --gutter:clamp(20px,3vw,32px);
}
*{-webkit-font-smoothing:antialiased}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}
a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--hairline-sky)}
a:hover{text-decoration-color:currentColor}
.wrap{max-width:760px;margin:0 auto;padding:0 var(--gutter)}
.header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding:22px 0}
.lockup{display:flex;align-items:center;gap:11px;padding:8px 0;color:var(--ink);text-decoration:none}
.lockup .word{font-family:var(--serif);font-size:24px;letter-spacing:-.015em;line-height:1}
.mark{flex:none;width:22px;height:24px;border:2px solid var(--ink);border-bottom:0;display:flex;align-items:flex-end;justify-content:center}
.mark>span{width:12px;height:16px;border:2px solid var(--ink);border-bottom:0;display:flex;align-items:flex-end;justify-content:center}
.mark>span>span{width:4px;height:9px;background:var(--ink)}
.nav{display:flex;flex-wrap:wrap;gap:4px 22px;font-size:15px}
.nav a{padding:10px 0;text-decoration:none}
.nav a[aria-current=page]{text-decoration:underline}
h1{margin:40px 0 8px;font-family:var(--serif);font-weight:300;font-size:clamp(40px,6vw,60px);line-height:1.02;letter-spacing:-.025em}
h2{margin:44px 0 10px;font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.15;letter-spacing:-.015em}
h3{margin:26px 0 6px;font-size:17px;font-weight:600}
p,ul,ol{margin:0 0 14px}
ul,ol{padding-left:22px}
li{margin:0 0 6px}
code{font-family:var(--mono);font-size:14px;overflow-wrap:anywhere;background:var(--sky);padding:1px 6px;border-radius:6px}
.updated{color:var(--muted);font-size:15px}
.lede{font-size:19px;color:var(--muted)}
.draft{margin:24px 0 0;padding:16px 18px;background:var(--rose);border-radius:14px;font-size:15px}
.draft strong{display:block;margin-bottom:4px;letter-spacing:.04em}
.draft ul{margin:8px 0 0}
table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:15px}
th,td{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-bottom:1px solid var(--hairline)}
th{font-weight:600}
.table-scroll{overflow-x:auto}
.footer{margin-top:72px;padding:28px 0 56px;border-top:1px solid var(--hairline);display:flex;flex-wrap:wrap;gap:4px 24px;font-size:14px;color:var(--muted)}
.footer a{padding:8px 0;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;font:inherit;font-size:16px;font-weight:500;color:var(--paper);background:var(--ink);border:0;border-radius:999px;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--chip);color:var(--paper)}
.btn[disabled]{opacity:.5;cursor:default}
.status{min-height:24px;color:var(--muted)}
.status.bad{color:var(--error)}
.muted{color:var(--soft)}
