/* ============================================================
   96-careers — Careers page. Reuses .sec-90-legal-body__wrap for
   the intro paragraph and the site's card/checklist vocabulary.
   ============================================================ */

.sec-96-careers__block {
  max-width: 62rem;
  /* The resume email address must wrap on 320px phones */
  overflow-wrap: anywhere;
}

.sec-96-careers__block + .sec-96-careers__block,
.sec-90-legal-body__wrap + .sec-96-careers__block {
  margin-top: clamp(2.5rem, 4vw, 3.5rem);
}

.sec-96-careers__block h2 {
  font-size: var(--fs-h4);
  margin-bottom: 0.5rem;
}

.sec-96-careers__positions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1rem;
  margin-top: 1.2rem;
}

.sec-96-careers__position {
  background: var(--bone-2);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-soft);
  padding: 1.5rem 1.75rem;
}

.sec-96-careers__position h3 {
  font-size: var(--fs-h5, 1.1rem);
  margin-bottom: 0.4rem;
}

.sec-96-careers__position p {
  color: var(--ink-2);
  font-size: 0.96rem;
  line-height: 1.6;
  margin: 0;
}

.sec-96-careers__apply {
  margin-top: 1.25rem;
  font-weight: 600;
}
.sec-96-careers__apply a {
  color: var(--accent-strong);
}

.sec-96-careers__quotes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: 1.25rem;
  margin-top: 1.2rem;
}

.sec-96-careers__quote {
  margin: 0;
  background: var(--bone-2);
  border-left: 3px solid var(--accent);
  border-radius: var(--radius-card);
  padding: 1.5rem 1.75rem;
}

.sec-96-careers__quote p {
  color: var(--ink-2);
  font-size: 0.96rem;
  line-height: 1.6;
  margin: 0;
}

.sec-96-careers__quote cite {
  display: block;
  margin-top: 0.9rem;
  font-style: normal;
  font-weight: 600;
  font-size: 0.85rem;
  color: var(--text-on-bone);
}

.sec-96-careers__benefits {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: 0.75rem;
  margin-top: 1rem;
  padding: 0;
  list-style: none;
}

.sec-96-careers__benefits li {
  background: var(--bone-2);
  border-radius: var(--radius-card);
  padding: 0.85rem 1.1rem;
  font-weight: 500;
  font-size: 0.95rem;
}


/* --- Application form (#apply). Field, error and success styles reuse the
   benefits-check form vocabulary from 11-insurance.css. --- */
.sec-96-careers__apply-panel {
  max-width: 44rem;
  margin: clamp(2.5rem, 4vw, 3.5rem) auto 0;
  background: var(--bone-2);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-soft);
  padding: clamp(1.5rem, 4vw, 2.5rem);
}

.sec-96-careers__apply-panel h2 {
  font-size: var(--fs-h4);
  margin-bottom: 0.5rem;
}

.sec-96-careers__apply-lead {
  color: var(--ink-2);
  margin-bottom: 1.4rem;
}

.sec-96-careers__form .sec-11-insurance__field input[type="file"] {
  padding: 0.55rem 0.7rem;
  font-size: 0.9rem;
  cursor: pointer;
}

.sec-96-careers__form .sec-11-insurance__field input[type="file"]::file-selector-button {
  margin-right: 0.8rem;
  padding: 0.4rem 0.9rem;
  border: 0;
  border-radius: 999px;
  background: var(--accent);
  color: var(--white);
  font-family: var(--font-display);
  font-weight: 600;
  cursor: pointer;
}
