.apply-main { padding: 120px 0; }
.apply-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 80px;
  align-items: start;
}

.ap-copy h2 { font-family: var(--serif); font-weight: 500; font-size: 1.9rem; margin: 30px 0 16px; }
.ap-copy p { color: var(--muted); font-size: 1.06rem; margin-bottom: 18px; max-width: 46ch; }

.ap-steps { margin-top: 34px; border-top: 1px solid var(--line); }
.ap-step { display: flex; gap: 18px; padding: 18px 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.ap-step .n { font-family: var(--serif); font-style: italic; color: var(--gold); font-size: 1.1rem; min-width: 26px; }
.ap-step .t { color: var(--muted); font-size: .98rem; }

.form { background: var(--white); padding: 48px; border: 1px solid var(--line); }
.field { display: flex; flex-direction: column; gap: 9px; margin-bottom: 26px; }
.field label { font-size: .66rem; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); font-weight: 700; }
.field input,
.field textarea {
  font-family: var(--sans);
  font-size: 1rem;
  color: var(--ink);
  background: var(--cream);
  border: 1px solid var(--line);
  padding: 13px 14px;
  resize: vertical;
  border-radius: 0;
  appearance: none;
}
.field input:focus,
.field textarea:focus {
  outline: 2px solid var(--gold);
  outline-offset: 1px;
  border-color: var(--gold);
}
.form .cta { width: 100%; text-align: center; margin-top: 6px; }
.form-note { font-size: .8rem; color: var(--muted); margin-top: 16px; text-align: center; }

@media (max-width: 860px) {
  .apply-grid { grid-template-columns: 1fr; gap: 44px; }
  .form { padding: 32px; }
}
