/* Minimal publication card, using the existing paper and ink palette. */
.profession-publication {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px 35px;
  margin-top: 28px;
  padding: 28px 30px;
  border: 1px solid var(--sand);
  background: var(--paper);
}
.profession-publication h2 {
  margin-top: 8px;
  font-size: 30px;
}
.profession-publication .text-link { flex: 0 0 auto; }
.publication-divider {
  height: 0;
  border: 0;
  border-top: 1px solid var(--green);
  margin: 60px 0 0;
}
.publication-description {
  max-width: 55ch;
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.8;
  color: var(--muted);
}
@media (max-width: 760px) {
  .publication-divider { margin-top: 45px; }
  .profession-publication { margin-top: 24px; padding: 24px; }
  .profession-publication h2 { font-size: 28px; }
}

/* The career story uses quiet section dividers and a readable text column. */
.page-profession .career-navigation {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 25px;
  margin-top: 45px;
  font-size: 12px;
}
.page-profession .career-navigation a { padding-block: 8px; }
.page-profession .career-section {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(0, 2fr);
  gap: 32px clamp(35px, 6vw, 90px);
  padding-top: 48px;
  margin-top: 58px;
  border-top: 1px solid var(--sand);
  scroll-margin-top: 32px;
}
.page-profession .career-section-heading h2 {
  font-size: clamp(1.8rem, 2.6vw, 2.5rem);
  line-height: 1.18;
  margin-top: 12px;
  max-width: 12ch;
}
.page-profession .career-section-body { max-width: 70ch; min-width: 0; }
.page-profession .career-intro { color: var(--muted); font-size: 15px; margin-bottom: 26px; }
.page-profession .career-entry + .career-entry {
  border-top: 1px solid var(--sand);
  margin-top: 34px;
  padding-top: 32px;
}
.page-profession .career-entry h3 { font-size: clamp(1.45rem, 2vw, 1.9rem); line-height: 1.25; }
.page-profession .career-roles { margin: 15px 0 22px; }
.page-profession .career-roles div {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 18px;
  font-size: 12px;
}
.page-profession .career-roles div + div { margin-top: 8px; }
.page-profession .career-roles dt { font-weight: 600; }
.page-profession .career-roles dd { margin: 0; color: var(--muted); }
.page-profession .career-division { margin-top: 8px; color: var(--muted); font-size: 13px; }
.page-profession .career-points { margin: 0; padding-left: 19px; font-size: 14px; line-height: 1.9; }
.page-profession .career-points li { padding-left: 4px; }
.page-profession .career-points li + li { margin-top: 12px; }
.page-profession .career-points li::marker { color: var(--green); }
.page-profession .career-capability + .career-capability { margin-top: 27px; }
.page-profession .career-skills { margin: 0; }
.page-profession .career-capability dt { font-size: 13px; font-weight: 600; }
.page-profession .career-capability dd { color: var(--muted); font-size: 14px; line-height: 1.9; margin: 6px 0 0; }
.page-profession .career-education > h3 { font-size: 1.8rem; }
.page-profession .career-education p { font-size: 14px; margin-top: 9px; }
.page-profession .career-education .career-points { margin-top: 22px; }
.page-profession .career-certifications { margin-top: 32px; padding-top: 28px; border-top: 1px solid var(--sand); }
.page-profession .career-certifications h3 { font-size: 1.6rem; margin-bottom: 18px; }
.page-profession .career-coursework { margin-top: 24px; }
.page-profession .career-role-details summary,
.page-profession .career-coursework summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  padding-block: 12px;
  cursor: pointer;
  font-size: 12px;
  list-style: none;
  border-bottom: 1px solid var(--sand);
}
.page-profession .career-role-details summary::-webkit-details-marker,
.page-profession .career-coursework summary::-webkit-details-marker { display: none; }
.page-profession .career-role-details summary:focus-visible,
.page-profession .career-coursework summary:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
.page-profession .career-role-details[open] > summary > span[aria-hidden],
.page-profession .career-coursework[open] > summary > span[aria-hidden] { transform: rotate(45deg); }
.page-profession .career-role-details .career-points { margin-top: 20px; }
@media (max-width: 760px) {
  .page-profession .career-navigation { margin-top: 30px; gap: 5px 20px; }
  .page-profession .career-section { grid-template-columns: minmax(0, 1fr); margin-top: 42px; padding-top: 31px; gap: 26px; }
  .page-profession .career-section-heading h2 { max-width: none; font-size: 2rem; }
  .page-profession .career-entry + .career-entry { margin-top: 29px; padding-top: 26px; }
}
