/* Responsive type guardrails. The v3 path invalidates stale edge CSS. */
h1,
h2,
h3,
h4 {
  overflow-wrap: break-word;
}

.home-baseline-a h2 {
  font-size: var(--type-display-size);
  font-weight: var(--type-display-weight);
  letter-spacing: -.036em;
  line-height: var(--type-display-leading);
}

.home-hero h1 {
  font-size: var(--type-hero-size);
  font-weight: var(--type-hero-weight);
  letter-spacing: -.036em;
  line-height: var(--type-hero-leading);
  max-width: 16ch;
  text-wrap: balance;
}

/* Commercial hero type follows the brand's 84px ceiling. Keep the copy and
   adjacent actions in separate, readable rows at every viewport width. */
:is(.ai-consulting-hero, .automation-hero, .integration-hero, .agent-hero,
  .specialized-hero, .company-hero, .industries-hero, .sector-hero,
  .manufacturing-hero, .solutions-hero, .education-hero, .aagi-hero) h1 {
  font-size: clamp(3rem, 5.2vw, 5.25rem);
  line-height: 1.02;
  letter-spacing: -.036em;
  max-width: 17ch;
  text-wrap: balance;
}

.ai-consulting-hero h1 { max-width: 19ch; }
.edu-landing h1,
.aagi-campaign .aagi-hero h1 { font-size: clamp(3rem, 5.2vw, 5.25rem); line-height: 1.02; max-width: 17ch; }
.company-hero h1,
.industries-hero h1 { max-width: 18ch; }
.sector-hero h1,
.manufacturing-hero h1 { font-size: clamp(3rem, 4.8vw, 4.5rem); max-width: 16ch; }
.specialized-hero h1 { font-size: clamp(3rem, 4.2vw, 4rem); max-width: none; }
.legacy-supporting__hero h1 { font-size: clamp(2.5rem, 3.5vw, 3.25rem); line-height: 1.05; max-width: 20ch; }

.ai-consulting-hero { min-height: 0; padding-bottom: clamp(2rem, 5vw, 4rem); }
.ai-consulting-hero .ai-shell > .ai-consulting-hero__bottom { margin-top: clamp(2rem, 3vw, 3rem); }

.home-problems__list strong { line-height: 1.1; }
.home-service__name {
  font-size: clamp(1.8rem, 3vw, 3rem);
  letter-spacing: -.036em;
  line-height: 1.05;
}
.home-service__proof { letter-spacing: -.035em; line-height: 1.05; }
.home-case__header h2,
.home-trust__copy h2,
.home-final-cta h2,
.home-approach__header h2,
.home-results-intro h2,
.home-faq__header h2 {
  font-size: var(--type-display-size);
  line-height: var(--type-display-leading);
}
.home-case__metric strong {
  font-size: clamp(6rem, 12vw, 11rem);
  letter-spacing: -.07em;
  line-height: .9;
}
.home-trust__since strong {
  font-size: clamp(4.5rem, 8vw, 7rem);
  letter-spacing: -.06em;
  line-height: .92;
}
.home-approach__header h2,
.home-faq__header h2 { max-width: 10ch; }
.home-approach__stage-copy h3 {
  font-size: clamp(2.25rem, 3.5vw, 3.5rem);
  letter-spacing: -.036em;
  line-height: 1;
}
.home-results-intro__metrics strong { line-height: .96; }
.home-case__metric--comparison .home-case__metric-phase strong { line-height: .94; }
.home .site-footer__brand-stage .site-footer__brand-link span {
  font-size: clamp(4rem, 6vw, 6rem);
  line-height: 1;
}

.c-media-hero__title,
.c-case-narrative__header h2,
.process-assessment h1 {
  font-size: var(--type-hero-size);
  letter-spacing: -.036em;
  line-height: var(--type-hero-leading);
}
.process-assessment h1 { font-size: clamp(3rem, 5vw, 4.75rem); line-height: 1.02; max-width: 18ch; }
.insight-header h1 { font-size: clamp(2.75rem, 4vw, 3.25rem); line-height: 1.08; max-width: 24ch; }
.c-evidence-ledger__heading h2,
.c-decision-sequence__heading h2 {
  font-size: var(--type-display-size);
  line-height: var(--type-display-leading);
}
.c-metric__number,
.c-evidence-ledger__item strong { line-height: .92; }
.c-case-narrative__before strong,
.c-case-narrative__after strong { line-height: .96; }

@media (min-width: 75rem) {
  .home-case--forecast .home-case__header h2 {
    font-size: var(--type-display-size);
    line-height: var(--type-display-leading);
    max-width: 14ch;
  }
}

@media (min-width: 48rem) and (max-width: 74.99rem) {
  .home-case__header h2 {
    font-size: var(--type-display-size);
    line-height: var(--type-display-leading);
  }
  .home-case__metric:not(.home-case__metric--comparison) strong {
    font-size: clamp(5rem, 9vw, 7rem);
    line-height: .92;
  }
}

@media (max-width: 47.99rem) {
  .home-baseline-a h2 {
    font-size: clamp(2.5rem, 11vw, 3.5rem);
    line-height: 1;
  }
  .home-hero h1 {
    font-size: clamp(2.375rem, 10.2vw, 2.75rem);
    line-height: 1.05;
    max-width: none;
  }
  :is(.ai-consulting-hero, .automation-hero, .integration-hero, .agent-hero,
    .specialized-hero, .company-hero, .industries-hero, .sector-hero,
    .manufacturing-hero, .solutions-hero, .education-hero, .aagi-hero) h1,
  .process-assessment h1 {
    font-size: clamp(2.375rem, 10.2vw, 2.75rem);
    line-height: 1.05;
    letter-spacing: -.036em;
    max-width: none;
  }
  .edu-landing h1,
  .aagi-campaign .aagi-hero h1 {
    font-size: clamp(2.375rem, 10.2vw, 2.75rem);
    line-height: 1.05;
    max-width: none;
  }
  .insight-header h1 { font-size: clamp(2rem, 8.7vw, 2.25rem); line-height: 1.12; max-width: none; }
  .legacy-supporting__hero h1 { font-size: clamp(2.125rem, 9vw, 2.5rem); line-height: 1.06; max-width: none; }
  .ai-principle { display: flex; flex-wrap: wrap; gap: .35rem; }
  .ai-principle span { white-space: nowrap; }
  .ai-principle i { padding-inline: .15rem; }
  .ai-principle strong { flex-basis: 100%; }
  .home-approach__header h2,
  .home-results-intro h2,
  .home-faq__header h2 { font-size: 3rem; line-height: 1; }
  .home-approach__stage-copy h3 { font-size: 2.25rem; line-height: 1.05; }
  .home-case__metric strong { font-size: clamp(5rem, 25vw, 7rem); }
  .home-case__metric--comparison .home-case__metric-phase strong { font-size: clamp(3rem, 15vw, 4rem); }
  .home-final-cta h2 { font-size: clamp(2.5rem, 11vw, 3.5rem); line-height: 1; }
  .home .site-footer__brand-stage .site-footer__brand-link span {
    font-size: clamp(2rem, 9vw, 2.5rem);
    line-height: 1;
  }
  .c-media-hero__title { font-size: 2.25rem; line-height: 1.05; }
  .c-evidence-ledger__heading h2,
  .c-decision-sequence__heading h2 { font-size: 2.75rem; line-height: 1; }
  .c-case-narrative__header h2 { font-size: 3rem; line-height: 1; }
}
