.waitlist-main { min-height: 65vh; }
.waitlist-layout { display: grid; gap: var(--s6); align-items: start; }
.waitlist-intro { display: grid; gap: var(--s4); }
.waitlist-intro .bl-eyebrow, .waitlist-intro .bl-h1, .waitlist-intro .bl-lede { margin: 0; }
.waitlist-expectation { display: grid; gap: var(--s3); max-width: 34rem; padding: var(--s4); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius); }
.waitlist-expectation .bl-label { margin: 0; }
.waitlist-form-shell { gap: var(--s5); }
.waitlist-form-shell [hidden] { display: none; }
.waitlist-form-shell form { width: 100%; }
.form-grid { display: grid; gap: var(--s4); grid-template-columns: minmax(0, 1fr); }
.full { min-width: 0; width: 100%; }
.waitlist-form-shell .bl-input { box-sizing: border-box; height: 48px; min-height: 48px; max-width: none; align-self: start; }
.waitlist-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.waitlist-choice { margin: 0; padding: 0; border: 0; }
.waitlist-choice legend { margin-bottom: var(--s2); font-size: var(--fs-small); font-weight: 700; }
.waitlist-choice label { display: flex; gap: var(--s2); align-items: center; min-height: 44px; padding: 0 var(--s3); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius); cursor: pointer; }
.waitlist-choice input { width: 18px; height: 18px; margin: 0; }
.form-help, .waitlist-policy { margin: 0; color: var(--slate); font-size: var(--fs-small); }
.waitlist-policy { margin-top: var(--s5); }
.waitlist-policy a { color: var(--navy); font-weight: 700; }
.form-actions { display: flex; margin-top: var(--s4); }
.waitlist-message { margin-top: var(--s4); }
.waitlist-message[data-state="error"] { background: var(--surface-raised); border-color: var(--debit); }
.waitlist-message[data-state="error"] .bl-icon { color: var(--debit); }
@media (min-width: 960px) { .waitlist-layout { grid-template-columns: minmax(0, .8fr) minmax(360px, 1.2fr); gap: var(--s7); }.waitlist-intro { position: sticky; top: calc(var(--header-h) + var(--s4)); } }
@media (max-width: 420px) { .bl-choice-tiles { grid-template-columns: 1fr; } }
.waitlist-main + [data-site-footer] { margin-top: 0; }
