/* Stealth Manager — typography.
   Official typeface: Poppins. Titles use Bold/Black in mixed case;
   body uses Thin/Light/Regular. Arial is the sanctioned system substitute. */
:root {
  --font-core: 'Poppins', Arial, Helvetica, sans-serif;
  --font-system: Arial, Helvetica, sans-serif;
  --font-sub-brand: 'Montserrat', 'Poppins', Arial, sans-serif;

  --weight-thin: 100;
  --weight-extralight: 200;
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --weight-black: 900;

  /* Deck scale — literal values from the 1920×1080 guideline pages */
  --type-cover-size: 198.81px;
  --type-cover-lh: 153.25px;
  --type-display-size: 83.91px;
  --type-display-lh: 104.89px;
  --type-title-size: 40px;
  --type-title-lh: 50px;
  --type-subtitle-size: 25px;
  --type-subtitle-lh: 1.5;
  --type-quote-size: 24px;
  --type-quote-lh: 40px;
  --type-section-size: 18px;
  --type-section-lh: 30px;
  --type-body-size: 14px;
  --type-body-lh: 25px;
  --type-cell-size: 14px;
  --type-cell-lh: 25px;
  --type-spec-size: 14px;
  --type-spec-lh: 25px;
  --type-rail-size: 12px;
  --type-rail-lh: 20px;
  --type-eyebrow-size: 10px;
  --type-eyebrow-lh: 20px;

  /* Tracking */
  --track-tight: -0.005em;
  --track-normal: 0; /* @kind other */
  --track-rail: 0.2em;
  --track-caps-wide: 0.18em;
  --track-lockup: 1.59em;
}

/* Utility classes for the deck vocabulary */
.sm-cover-title { font-family: var(--font-core); font-weight: var(--weight-bold); font-size: var(--type-cover-size); line-height: var(--type-cover-lh); color: var(--text-on-inverse); }
.sm-title { font-family: var(--font-core); font-weight: var(--weight-bold); font-size: var(--type-title-size); line-height: var(--type-title-lh); color: var(--text-primary); }
.sm-section-label { font-family: var(--font-core); font-weight: var(--weight-bold); font-size: var(--type-section-size); line-height: var(--type-section-lh); text-transform: uppercase; color: var(--text-primary); }
.sm-body { font-family: var(--font-core); font-weight: var(--weight-regular); font-size: var(--type-body-size); line-height: var(--type-body-lh); color: var(--text-primary); text-wrap: pretty; }
.sm-spec { font-family: var(--font-core); font-weight: var(--weight-regular); font-size: var(--type-spec-size); line-height: var(--type-spec-lh); }
.sm-eyebrow { font-family: var(--font-core); font-weight: var(--weight-light); font-size: var(--type-eyebrow-size); line-height: var(--type-eyebrow-lh); text-transform: uppercase; color: var(--text-primary); }
.sm-rail { font-family: var(--font-core); font-weight: var(--weight-semibold); font-size: var(--type-rail-size); line-height: var(--type-rail-lh); letter-spacing: var(--track-rail); text-transform: uppercase; color: var(--text-primary); }
.sm-quote { font-family: var(--font-core); font-weight: var(--weight-bold); font-size: var(--type-quote-size); line-height: var(--type-quote-lh); color: var(--text-primary); }
