/* ==========================================================================
   TheConsulting.io — typography aligned with learn.theconsulting.io (Inter)
   Loaded last. Replaces the serif display face with Inter across the site.
   ========================================================================== */

:root { --tc-serif: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; }

body.tc-firm { font-feature-settings: "cv11", "ss01"; }

/* Headlines: bold and tightly tracked, as on learn */
.tc-display { font-weight: 700; letter-spacing: -.035em; line-height: 1.02; }
.tc-h1 { font-weight: 700; letter-spacing: -.03em; line-height: 1.05; }
.tc-h2, .tc-cta-statement { font-weight: 700; letter-spacing: -.028em; line-height: 1.08; }
.tc-firm h1, .tc-firm h2, .tc-firm h3, .tc-firm .tc-serif { font-weight: 700; }

/* Sub-headings and list titles */
.tc-h3,
.tc-acc-title,
.tc-shift-to,
.tc-move-to,
.tc-feature-title,
.tc-article-title,
.tc-portrait-name,
.tc-roadmap-cols h3,
.tc-steps h3,
.tc-mentor h3,
.tc-offer h3,
.tc-also h3,
.tc-stories-title,
.tc-svc-group-title h2,
.tc-reasons dt,
.tc-principles dt,
.tc-people-row b,
.tc-firms b,
.tc-converge-to b,
.tc-pillars b {
  font-weight: 600;
  letter-spacing: -.015em;
}
.tc-shift-to { font-size: clamp(1.15rem, 1rem + .5vw, 1.4rem); }
.tc-acc-title { font-size: clamp(1.1rem, 1rem + .35vw, 1.25rem); }
.tc-move-to { font-size: 1.125rem; }
.tc-article-title { font-size: 1.0625rem; }
.tc-firms b { font-size: 1.25rem; letter-spacing: -.02em; }

/* Numbers */
.tc-ratio-num,
.tc-stats dt,
.tc-creds dt,
.tc-bignums dt,
.tc-hero-meta strong,
.tc-steps li::before {
  font-weight: 700;
  letter-spacing: -.03em;
  font-variant-numeric: tabular-nums;
}
.tc-hero-meta strong { font-size: 1.375rem; }

/* Quotes and emphasis lines: upright, not italic */
.tc-lede-strong { font-style: normal; font-weight: 600; letter-spacing: -.015em; }
.tc-quote-lg,
.tc-quote,
.tc-feature-quote blockquote,
.tc-questions blockquote {
  font-style: normal;
  font-weight: 600;
  letter-spacing: -.02em;
}
.tc-quote-lg { font-size: clamp(1.375rem, 1.1rem + 1vw, 1.875rem); line-height: 1.3; }

/* Hero case composition */
.tc-case-prompt { font-weight: 500; font-size: 1rem; }
.tc-node--question, .tc-node--decision { font-weight: 600; letter-spacing: -.01em; }

/* Mobile menu links */
@media (max-width: 991.98px) {
  .tc-nav-link { font-size: 1.25rem; font-weight: 600; letter-spacing: -.015em; }
}

/* Illustration labels */
.tc-illus .ti-t-l { font-weight: 700; letter-spacing: -.02em; }
