/* The Join Us article template owns headings, prose, lists, steps and callouts.
   Only the founder media and interactive proposal form need additional layout. */
.company-section, .company-guide-chapter { scroll-margin-top: 100px; }
.company-page .join-us-team-photo + .company-section > h2 { margin-top: 32px; }
.company-founder { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 32px; align-items: start; }
.company-founder img { width: 160px; height: 200px; object-fit: cover; }
.company-founder p:first-child { margin-top: 0; }
.company-application { --contact-blue: var(--navy); --contact-blue-dark: var(--navy-soft); }
#teacher-application { margin-top: 32px; }
.company-application .company-form-progress {
  display: flex; justify-content: space-between; gap: 12px; margin: 0 0 32px;
  border-bottom: 1px solid var(--border); padding: 0 0 20px; color: var(--muted);
  font-size: 14px; list-style: none;
}
.company-application .company-form-progress li { margin: 0; padding: 0; }
.company-form-progress [aria-current] { color: var(--navy); font-weight: 700; }
.company-application fieldset { min-width: 0; margin: 0; border: 0; padding: 0; }
.company-application legend { margin-bottom: 24px; color: var(--navy-soft); font-size: 19px; font-weight: 700; line-height: 1.45; }
.company-form-grid { row-gap: 24px; }
.company-field--wide { grid-column: 1 / -1; }
.company-field p { margin: 0; color: var(--muted); font-size: 14px; font-weight: 400; line-height: 1.7; }
.company-field .company-field-error { color: #a63b30; }
.company-field label { align-self: end; }
.company-field textarea { min-height: 170px; }
.company-form-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 32px; }
.company-button { cursor: pointer; }
.company-button:disabled { cursor: wait; opacity: .65; }
.company-button--secondary { background: #fff; color: var(--navy); }
.company-button--secondary:hover { background: var(--canvas); color: var(--navy); }
.company-page [hidden] { display: none !important; }
.company-review { margin: 0 0 36px; }
.company-review div { padding: 18px 0; border-bottom: 1px solid var(--border); }
.company-review dt { color: var(--muted); font-size: 14px; font-weight: 700; }
.company-review dd { margin: 6px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.company-privacy { color: var(--muted); font-size: 14px; }
.company-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#proposal-status { color: #a63b30; font-size: 15px; }
#proposal-status:empty { display: none; }
.company-success { margin-top: 32px; }
.company-reference { font-size: 16px; font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
@media (max-width: 680px) {
  .company-founder { grid-template-columns: 1fr; }
  .company-founder img { width: 140px; height: 170px; }
  .company-form-grid { row-gap: 22px; }
  .company-application .company-form-progress { font-size: 13px; gap: 8px; }
  .company-form-actions { gap: 12px; }
}
