/* Two-step waitlist and occupation choices, shared by both signup entry points. */
#waitlist-form .occupation-picker{border:0;padding:0;margin:0;min-width:0}
#waitlist-form .occupation-picker>legend{float:none;padding:0;margin:0 0 8px;font:700 .9375rem/1.4 Inter,Arial,sans-serif;letter-spacing:normal;color:var(--ink)}
#waitlist-form .occupation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#waitlist-form .occupation-option{position:relative;display:block;margin:0;cursor:pointer;min-width:0}
#waitlist-form .occupation-option>input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:1;cursor:pointer}
#waitlist-form .occupation-option-body{display:flex;align-items:center;gap:9px;min-height:48px;height:100%;padding:11px 12px;border:1.5px solid #d7e1d3;border-radius:10px;background:#fff;color:var(--ink);font-size:.8125rem;line-height:1.35;font-weight:550;transition:background .15s,border-color .15s}
#waitlist-form .occupation-dot{flex:0 0 15px;width:15px;height:15px;border:1.5px solid #a6b8a8;border-radius:50%;background:#fff}
#waitlist-form .occupation-option-custom{grid-column:1/-1}
#waitlist-form .occupation-option:hover .occupation-option-body{border-color:#719078}
#waitlist-form .occupation-option>input:checked+.occupation-option-body{background:#f1f7e8;border-color:var(--forest);color:var(--forest)}
#waitlist-form .occupation-option>input:checked+.occupation-option-body .occupation-dot{background:var(--forest);border-color:var(--forest);box-shadow:inset 0 0 0 3px #f1f7e8}
#waitlist-form .occupation-option>input:focus-visible+.occupation-option-body{outline:3px solid var(--forest);outline-offset:3px}
#waitlist-form .occupation-option>input[aria-invalid=true]+.occupation-option-body{border-color:#a52a21}
#waitlist-form .occupation-option>input:disabled{cursor:wait}
#waitlist-form .occupation-option>input:disabled+.occupation-option-body{opacity:.65}
#waitlist-form .occupation-custom{margin-top:13px}
#waitlist-form .occupation-custom[hidden]{display:none!important}
#waitlist-form .occupation-custom>label{display:block;font-size:.875rem;font-weight:650;line-height:1.4;color:var(--ink);margin:0 0 7px}
#waitlist-form .occupation-custom>input{display:block;width:100%;height:52px;border:1.5px solid #879e83;border-radius:9px;padding:12px 14px;background:#fff;color:var(--ink);font:400 16px/1.4 Inter,Arial,sans-serif;min-width:0;scroll-margin-block:20px}
#waitlist-form .occupation-custom>input::placeholder{color:#737b71;opacity:1}
#waitlist-form .occupation-custom>input:focus{border-color:var(--forest);outline:2px solid var(--forest);outline-offset:2px}
#waitlist-form .occupation-custom>input[aria-invalid=true]{border-color:#a52a21}
@media(max-width:360px){#waitlist-form .occupation-option-body{gap:7px;padding:10px;font-size:.78125rem}}
@media(prefers-reduced-motion:reduce){#waitlist-form .occupation-option-body{transition:none}}

/* Keep each step easy to scan without changing the surrounding site. */
#waitlist-dialog #signup-progress{margin:0 0 12px;color:var(--forest);font:700 .6875rem/1.4 Inter,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
#waitlist-content[data-step="2"] #waitlist-title{font-size:1.75rem;line-height:1.16;letter-spacing:-.035em}
#waitlist-form .signup-step{display:grid;gap:14px;min-width:0}
#waitlist-form [hidden]{display:none!important}
#waitlist-form .signup-actions{display:flex;align-items:center;gap:12px;min-width:0}
#waitlist-form .signup-actions #form-next{flex:1;width:auto;min-width:0;margin:0}
#waitlist-form #form-back{flex:0 0 65px;min-height:54px;padding:12px 4px;border:0;border-radius:12px;background:transparent;color:var(--forest);font:650 .9375rem/1.4 Inter,Arial,sans-serif;text-align:center;cursor:pointer}
#waitlist-form #form-back:hover{background:#f1f7e8}
#waitlist-form #form-back:focus-visible{outline:3px solid var(--forest);outline-offset:2px}
#waitlist-form #form-back:disabled{opacity:.6;cursor:wait}
#waitlist-form[aria-busy="true"] .signup-actions{cursor:wait}
@media(max-width:480px){
  #waitlist-dialog #signup-progress{margin-bottom:10px}
  #waitlist-content[data-step="2"] #waitlist-title{font-size:1.5rem;line-height:1.18}
  #waitlist-form .signup-step{gap:13px}
}
