.careers-motto {
  margin: 1rem 0 0;
  color: var(--muted);
  font-family: "Fraunces", Georgia, serif;
  font-style: italic;
}
.careers-back { display: inline-flex; align-items: center; gap: 0.5rem; }
.careers-back svg { width: 16px; height: 16px; }
.structure-intro > p { color: #4b5964; }
.tier-legend { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin: 1.5rem 0; }
.tier-legend span { color: var(--muted); }
.tier-legend strong { display: block; color: var(--navy); }
.leadership-model { margin-top: 1.5rem; }
.model-image-link { display: block; }
.model-image-link img { display: block; width: 100%; height: auto; }
.diagram-description { color: var(--muted); font-size: 0.9rem; }
.model-dialog {
  width: min(96vw, 1800px);
  max-width: 96vw;
  max-height: 92vh;
  padding: 3rem 1rem 1rem;
  color: var(--ink);
  background: var(--paper-light);
  border: 1px solid var(--line);
}
.model-dialog::backdrop { background: rgba(7, 27, 44, 0.85); }
/* Fit the whole chart on screen at every size, including phone landscape: the image is
   limited by both the available width and the height left after the close button and
   the two links, and scales without cropping. */
.model-dialog[open] { display: flex; flex-direction: column; align-items: center; overflow: auto; }
.model-dialog img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: calc(92vh - 8.5rem);
  max-height: calc(92dvh - 8.5rem);
  object-fit: contain;
}
.model-dialog-close {
  position: absolute; top: 0.5rem; right: 0.5rem;
  width: 2.25rem; height: 2.25rem;
  border: 1px solid var(--line); border-radius: 50%;
  background: var(--paper-light); color: var(--navy);
  font-size: 1.5rem; cursor: pointer;
}
.model-dialog-original { display: block; width: fit-content; margin: 0.6rem auto 0; line-height: 1.5; }
.role-card .pillar-tag {
  color: var(--category-edge);
  font: 600 0.72rem/1.4 "IBM Plex Mono", ui-monospace, monospace;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.8rem;
}
.role-card .pillar-motto { margin: 0.3rem 0 0.8rem; font-style: italic; }
.role-card ul { margin: 0; padding-left: 1.2rem; color: #4b5964; }
.role-card li { margin: 0.3rem 0; }
.apply-cta > p { color: #4b5964; }
.cta { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 700; }
.cta svg { width: 16px; height: 16px; }
.note-panel { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
