/* ============================================================
   ProtonBusMods — Semantic Type Classes (PRO-271)
   Verbatim mirror of c:\temp\bsc\ds\colors_and_type.css class block
   (.ds-display, .ds-h1, .ds-h2, .ds-title, .ds-body, .ds-caption,
   .ds-eyebrow, .ds-num, .ds-gradient-text).

   Depends on ds-tokens.css (loaded first by includes/header.php) for
   the --sans/--mono/--fs-*/--w-*/--t-*/--grad variables.

   These are *opt-in* classes — apply them directly on elements that
   want a canonical role, or copy the rules into Tailwind-styled
   partials that need a one-off match. Existing partials are NOT
   migrated by this card (PRO-272 territory).

   Drift gate: keep byte-identical to the source class block. Drift
   check script lands in PRO-273.
   ============================================================ */

.ds-display {
  font-family: var(--sans);
  font-size: var(--fs-display);
  font-weight: var(--w-heavy);
  letter-spacing: var(--track-display);
  line-height: 1.02;
  color: var(--t-1);
}
.ds-h1 {
  font-family: var(--sans);
  font-size: var(--fs-h1);
  font-weight: var(--w-heavy);
  letter-spacing: -0.03em;
  line-height: 1.05;
  color: var(--t-1);
}
.ds-h2 {
  font-family: var(--sans);
  font-size: var(--fs-h2);
  font-weight: var(--w-heavy);
  letter-spacing: var(--track-head);
  line-height: 1.1;
  color: var(--t-1);
}
.ds-title {
  font-family: var(--sans);
  font-size: var(--fs-title);
  font-weight: var(--w-bold);
  letter-spacing: -0.015em;
  color: var(--t-1);
}
.ds-body {
  font-family: var(--sans);
  font-size: var(--fs-body);
  font-weight: var(--w-medium);
  letter-spacing: var(--track-body);
  line-height: 1.5;
  color: var(--t-2);
}
.ds-caption {
  font-family: var(--sans);
  font-size: var(--fs-caption);
  color: var(--t-3);
}
.ds-eyebrow {
  font-family: var(--mono);
  font-size: var(--fs-eyebrow);
  font-weight: var(--w-semibold);
  letter-spacing: var(--track-eyebrow);
  text-transform: uppercase;
  color: var(--blue-2);
}
.ds-num {
  font-family: var(--mono);
  font-weight: var(--w-bold);
  color: var(--t-1);
}
.ds-gradient-text {
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
