/* V1 shared text roles. Preserve layout, imagery, data and diagram typography. */
:root {
  --type-section-title: clamp(30px, 3.5vw, 48px);
  --type-subtitle: 24px;
  --type-body: 17px;
  --type-heading-leading: 1.22;
  --type-body-leading: 1.7;
}

main :is(.value-panel, .route-copy, .simple-heading, .lead-title,
  .feature-band, .home-contact, .market-heading, .contact,
  .news-placeholder, .product-story-copy, .company-copy) h2 {
  font-size: var(--type-section-title);
  font-weight: 610;
  line-height: var(--type-heading-leading);
  text-wrap: balance;
}

main :is(.process-system, .carbon-principles, .market-applications,
  .path-steps, .cooperation-list, .advantage-list) h3,
main .advantage-front strong,
main .advantage-back strong {
  font-size: var(--type-subtitle);
  font-weight: 610;
  line-height: 1.3;
  text-wrap: balance;
}

/* Notes and chart units are supporting labels, not marketing body copy. */
.company-copy h2 > span { display: inline-block; }

#cooperation .cooperation-list article > span {
  font-size: var(--type-subtitle);
  font-variant-numeric: tabular-nums;
}

main p:not(.axis-unit):not(.standard-note):not(.diagram-scroll-hint):not(.form-note),
main .advantage-back > span {
  font-size: var(--type-body);
  line-height: var(--type-body-leading);
}

@media (max-width: 600px) {
  :root {
    --type-subtitle: 22px;
    --type-body: 16px;
  }
}

/* Desktop title-only reduction. Keep body, navigation and numeric data unchanged.
   Do not reduce shared tokens: process diagrams also use them for data labels. */
@media (min-width: 861px) {
  /* One desktop hero size for all five inner pages, including company overrides. */
  main .page-hero { box-sizing: border-box; height: 440px; min-height: 440px; }
  main .page-hero p { text-wrap: balance; }
  main .hero h1 {
    font-size: clamp(26.6px, 3.78vw, 50.4px);
  }
  main .page-hero h1 {
    font-size: clamp(26.6px, 3.5vw, 44.8px);
  }
  /* Preserve the approved desktop scale outside the self-contained market chapters. */
  main > :not(.market-chapter) h2 {
    font-size: calc(var(--type-section-title) * .7) !important;
  }
  main > :not(.market-chapter) h3,
  main .advantage-front strong,
  main .advantage-back strong,
  #hydrogen .product-points dt {
    font-size: calc(var(--type-subtitle) * .7) !important;
  }
}
