.lead-page { min-height: 100vh; }

.lead-hero {
  border-bottom: 1px solid var(--line);
  background: linear-gradient(118deg, #c3beb8 0%, #d8d4cf 56%, var(--surface) 100%);
}
.lead-hero__grid {
  min-height: 620px;
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  gap: clamp(60px, 9vw, 150px);
  align-items: end;
  padding-top: clamp(100px, 11vw, 160px);
  padding-bottom: clamp(70px, 8vw, 110px);
}
.lead-hero__copy h1 {
  max-width: 850px;
  margin: 0 0 30px;
  font-size: clamp(58px, 7vw, 104px);
  line-height: .9;
  letter-spacing: -.04em;
  text-wrap: balance;
}
.lead-hero__copy > p:last-child {
  max-width: 700px;
  margin: 0;
  color: var(--ink-soft);
  font-size: 19px;
  line-height: 1.65;
  text-wrap: pretty;
}
.lead-expectations { padding-top: 24px; border-top: 1px solid rgba(36,40,44,.3); }
.lead-expectations > span { display: block; margin-bottom: 26px; color: var(--ink-soft); font-size: 13px; font-weight: 700; }
.lead-expectations ol { margin: 0; padding: 0; list-style: none; counter-reset: expectation; }
.lead-expectations li { position: relative; padding: 0 0 24px 42px; counter-increment: expectation; }
.lead-expectations li::before { content: counter(expectation, decimal-leading-zero); position: absolute; left: 0; top: 2px; color: var(--signal-strong); font-size: 12px; font-weight: 700; }
.lead-expectations strong, .lead-expectations small { display: block; }
.lead-expectations strong { margin-bottom: 6px; font-size: 16px; }
.lead-expectations small { color: var(--ink-soft); font-size: 14px; line-height: 1.5; }

.lead-form-section { padding: clamp(90px, 11vw, 150px) 0; }
.lead-form-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(60px, 9vw, 140px); align-items: start; }
.lead-form-intro { position: sticky; top: 130px; }
.lead-form-intro h2 { max-width: 560px; margin: 0 0 24px; font-size: clamp(48px, 5vw, 76px); line-height: .94; letter-spacing: -.04em; text-wrap: balance; }
.lead-form-intro > p { max-width: 520px; margin: 0 0 44px; color: var(--ink-soft); font-size: 17px; line-height: 1.65; }
.lead-form-intro dl { margin: 0; border-top: 1px solid var(--line); }
.lead-form-intro dl div { padding: 20px 0; border-bottom: 1px solid var(--line); }
.lead-form-intro dt { margin-bottom: 6px; color: var(--ink-faint); font-size: 12px; font-weight: 700; }
.lead-form-intro dd { margin: 0; max-width: 480px; line-height: 1.5; }

.lead-form { padding: clamp(28px, 4vw, 54px); background: var(--surface-raised); }
.lead-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.lead-field { margin-bottom: 24px; }
.lead-field label { display: block; margin-bottom: 9px; font-size: 13px; font-weight: 650; }
.lead-field label span { color: var(--signal-strong); }
.lead-field input, .lead-field select, .lead-field textarea {
  width: 100%;
  border: 1px solid rgba(36,40,44,.32);
  border-radius: 10px;
  background: var(--surface);
  color: var(--ink);
  font: inherit;
  transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}
.lead-field input, .lead-field select { min-height: 52px; padding: 0 14px; }
.lead-field textarea { min-height: 170px; padding: 14px; resize: vertical; line-height: 1.5; }
.lead-field input:focus, .lead-field select:focus, .lead-field textarea:focus { outline: none; border-color: var(--signal-strong); box-shadow: 0 0 0 3px rgba(223,111,29,.14); background: white; }
.lead-field textarea::placeholder { color: #666e73; opacity: 1; }
.lead-consent { display: flex; align-items: flex-start; gap: 12px; margin: 4px 0 28px; color: var(--ink-soft); font-size: 13px; line-height: 1.5; }
.lead-consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--signal-strong); flex: 0 0 auto; }
.lead-consent a { color: var(--ink); font-weight: 650; }
.lead-form__footer { display: flex; align-items: center; gap: 22px; }
.lead-submit { border: 0; cursor: pointer; font: inherit; flex: 0 0 auto; }
.lead-submit:disabled { cursor: wait; opacity: .58; transform: none; }
.lead-status { margin: 0; max-width: 520px; font-size: 13px; line-height: 1.45; }
.lead-status[data-state="pending"] { color: var(--ink-soft); }
.lead-status[data-state="success"] { color: #277446; }
.lead-status[data-state="error"] { color: #a4382f; }

.meeting-bridge { padding: clamp(80px,10vw,130px) 0; border-top: 1px solid var(--line); background: var(--signal); color: #21170f; }
.meeting-bridge__inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: end; }.meeting-bridge__inner span { display: block; margin-bottom: 20px; font-size: 12px; font-weight: 700; }.meeting-bridge h2 { max-width: 850px; margin: 0; font-size: clamp(52px,6.5vw,94px); line-height: .9; letter-spacing: -.04em; }.meeting-bridge p { max-width: 560px; margin: 0 0 28px; font-size: 18px; line-height: 1.6; }

.diagnostic-hero { background: var(--ink); color: var(--surface); }
.diagnostic-hero .lead-hero__grid { min-height: 680px; }
.diagnostic-hero .white-eyebrow, .diagnostic-hero .lead-hero__copy > p:last-child { color: #c7cbce; }
.diagnostic-hero .lead-expectations { border-color: rgba(255,255,255,.24); }
.diagnostic-hero .lead-expectations > span, .diagnostic-hero .lead-expectations small { color: #b7bdc1; }
.diagnostic-hero .lead-expectations strong { color: white; }

.diagnostic-outcomes { padding: clamp(90px, 11vw, 150px) 0; border-bottom: 1px solid var(--line); }
.diagnostic-outcomes__head { display: grid; grid-template-columns: .75fr 1.25fr; gap: 60px; margin-bottom: 70px; }
.diagnostic-outcomes__head h2 { max-width: 570px; margin: 0; font-size: clamp(50px, 5.6vw, 84px); line-height: .93; letter-spacing: -.04em; text-wrap: balance; }
.diagnostic-outcomes__head p { max-width: 670px; margin: 10px 0 0; color: var(--ink-soft); font-size: 18px; line-height: 1.65; }
.diagnostic-list { border-top: 1px solid var(--line); }
.diagnostic-item { display: grid; grid-template-columns: 90px minmax(220px,.7fr) 1.3fr; gap: 28px; padding: 30px 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.diagnostic-item > span { color: var(--signal-strong); font-size: 13px; font-weight: 700; }
.diagnostic-item h3 { margin: 0; font-size: 24px; letter-spacing: -.025em; }
.diagnostic-item p { margin: 0; color: var(--ink-soft); line-height: 1.6; }

.diagnostic-fit { padding: clamp(90px, 11vw, 150px) 0; background: var(--surface-muted); }
.diagnostic-fit__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 9vw, 140px); }
.diagnostic-fit h2 { max-width: 650px; margin: 0; font-size: clamp(50px, 5.6vw, 84px); line-height: .93; letter-spacing: -.04em; text-wrap: balance; }
.diagnostic-fit__content { border-top: 1px solid var(--line); }
.diagnostic-fit__content div { padding: 28px 0; border-bottom: 1px solid var(--line); }
.diagnostic-fit__content strong { display: block; margin-bottom: 9px; font-size: 19px; }
.diagnostic-fit__content p { margin: 0; color: var(--ink-soft); line-height: 1.6; }

@media (max-width: 980px) {
  .lead-hero__grid, .lead-form-layout, .diagnostic-outcomes__head, .diagnostic-fit__grid, .meeting-bridge__inner { grid-template-columns: 1fr; }
  .lead-hero__grid { gap: 56px; }
  .lead-form-intro { position: static; }
}

@media (max-width: 680px) {
  .lead-hero__grid { min-height: 0; padding-top: 86px; }
  .lead-hero__copy h1 { font-size: clamp(52px, 16vw, 72px); }
  .lead-form__row { grid-template-columns: 1fr; gap: 0; }
  .lead-form { padding: 24px 18px; }
  .lead-form__footer { align-items: stretch; flex-direction: column; }
  .lead-submit { width: 100%; }
  .diagnostic-item { grid-template-columns: 42px 1fr; }
  .diagnostic-item p { grid-column: 2; }
}
