main#main { padding: 8.5rem 2.5rem 6rem; }

/* ── HERO ── */
.wl-hero { padding-bottom: 3rem; margin-bottom: 3rem; border-bottom: 1px solid var(--line); }

.wl-hero-heading {
  font-family: var(--serif);
  font-size: clamp(2rem, 5.5vw, 2.9rem);
  line-height: 1.15;
  margin-bottom: 1.25rem;
  scroll-margin-top: 7rem;
}

.wl-hero-heading:focus { outline: none; }

.wl-hero .step-body { margin-bottom: 1.5rem; }

.wl-lead {
  font-family: var(--serif);
  font-style: italic;
  font-size: 1.15rem;
  color: var(--ink);
  margin-bottom: 1.5rem;
}

.wl-hero .btn-primary { text-decoration: none; }

.wl-location {
  font-family: var(--mono);
  font-size: 0.78rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--brass-text);
  margin-top: 1.5rem;
}

/* ── NARRATIVE SECTIONS ── */
.wl-section {
  padding-bottom: 2.75rem;
  margin-bottom: 2.75rem;
  border-bottom: 1px solid var(--line);
}

.wl-section .explainer-heading { margin-top: 0.25rem; }
.wl-section .step-body { margin-bottom: 1rem; }
.wl-section .step-body:last-of-type { margin-bottom: 0; }

.explainer-heading {
  font-family: var(--serif);
  font-size: clamp(1.4rem, 3.5vw, 1.9rem);
  line-height: 1.3;
  margin-bottom: 1rem;
}

.wl-emphasis {
  font-family: var(--serif);
  font-style: italic;
  font-size: 1.05rem;
  color: var(--ink);
  margin-bottom: 0.4rem;
}

.wl-emphasis:last-child { margin-bottom: 0; }

/* ── INTEREST PREVIEW ── */
.wl-interest-preview {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.wl-interest-label {
  font-family: var(--mono);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--brass-text);
  margin-bottom: 0.5rem;
}

.wl-interest-list { font-size: 0.9rem; color: var(--ink-soft); line-height: 1.6; }

/* ── FORM ── */
.wizard-step[hidden] { display: none; }
.wizard-step.center { text-align: center; }
.step-actions.center { justify-content: center; }
.wizard-step[data-step="form"] {
  scroll-margin-top: 6.5rem;
  padding-bottom: 2.75rem;
  margin-bottom: 2.75rem;
  border-bottom: 1px solid var(--line);
}

.wizard-step[data-step="confirmation"] {
  padding-bottom: 2.75rem;
  margin-bottom: 2.75rem;
  border-bottom: 1px solid var(--line);
}

.field-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 1.5rem; }

[data-queue-ticket] { padding: 1.75rem 2rem; margin-top: 1.5rem; }

/* ── CLOSING ── */
.wl-closing { text-align: center; border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
.wl-closing .explainer-heading { font-size: clamp(1.6rem, 4vw, 2.2rem); }
.wl-closing-ticket { text-align: left; max-width: 420px; margin: 1.75rem auto; padding: 1.25rem 1.5rem; }
.wl-closing-ticket .leader { font-size: 0.85rem; }
.wl-closing .btn-primary { text-decoration: none; }

@media (max-width: 640px) {
  main#main { padding: 6.5rem 1.5rem 4rem; }
  .field-grid { grid-template-columns: 1fr; }
  .wl-interest-preview { grid-template-columns: 1fr; gap: 1rem; }
}
