:root {
  font-family: "Avenir Next", Avenir, "Segoe UI Variable", "Segoe UI", Inter, ui-sans-serif, system-ui, sans-serif;
  font-feature-settings: "kern" 1, "liga" 1, "tnum" 1;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
button,
input,
select,
textarea {
  font-family: inherit;
}

.brand-mark,
.brand strong,
h1,
h2,
.criteria-card strong,
.kpi strong {
  font-family: inherit;
}

.brand-mark {
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -0.04em;
}

.brand strong {
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: -0.018em;
}

h1 {
  font-size: clamp(1.9rem, 2.4vw, 2.45rem);
  font-weight: 730;
  letter-spacing: -0.045em;
  line-height: 1.08;
}

h2,
.modal h2 {
  font-weight: 720;
  letter-spacing: -0.035em;
  line-height: 1.15;
}

.muted {
  letter-spacing: -0.008em;
}

.eyebrow,
.criteria-card span,
th {
  letter-spacing: 0.075em;
  font-weight: 760;
}

.criteria-card strong {
  font-size: 1.02rem;
  font-weight: 690;
  letter-spacing: -0.018em;
}

.kpi strong {
  font-size: 1.85rem;
  font-weight: 720;
  letter-spacing: -0.045em;
  line-height: 1;
}

.role,
.job-card strong {
  font-weight: 720;
  letter-spacing: -0.015em;
  line-height: 1.3;
}

.button,
.tab,
.status,
.lane-head,
.form-grid label,
.request-label {
  font-weight: 680;
  letter-spacing: -0.008em;
}

td,
input,
select,
textarea {
  letter-spacing: -0.006em;
}

@media (max-width: 700px) {
  .intro h1 { font-size: 1.85rem; }
}
