/* Bio2Twin canonical heading system v1 · source: /design.md §4 */
:root {
  --bt-type-hero-title: clamp(40px, 4.5vw, 56px);
  --bt-type-hero-title-mobile: clamp(32px, 8.2vw, 40px);
  --bt-type-section-title: clamp(28px, 3.2vw, 40px);
  --bt-type-section-title-mobile: clamp(26px, 7vw, 34px);
  --bt-type-card-title: clamp(24px, 2.6vw, 30px);
  --bt-type-brand-subtitle: clamp(18px, 1.75vw, 22px);
  --bt-type-hero-lead: 16px;
  --bt-type-hero-lead-mobile: 15px;
}
.hero-copy h1,
.so-hero h1,
.technology-hero h1 {
  font-size: var(--bt-type-hero-title) !important;
  font-weight: 560 !important;
  line-height: 1.06 !important;
  letter-spacing: -.04em !important;
}
.hero-lead,
.so-subtitle,
.technology-lead {
  font-size: var(--bt-type-hero-lead) !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}
.so-subtitle { letter-spacing: 0 !important; }
.so-en,
.so-zh {
  font-size: var(--bt-type-brand-subtitle) !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
}
.so-section h2,
.so-final h2,
.technology-system > h2,
.science-depth__head > h2,
.health-category-head h2 {
  font-size: var(--bt-type-section-title) !important;
  font-weight: 560 !important;
  line-height: 1.1 !important;
  letter-spacing: -.03em !important;
}
.so-card h3 {font-size: var(--bt-type-card-title) !important; font-weight: 560 !important;}
@media (max-width: 640px) {
  .hero-copy h1,
  .so-hero h1,
  .technology-hero h1 {
    font-size: var(--bt-type-hero-title-mobile) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
  }
  .hero-lead,
  .so-subtitle,
  .technology-lead {
    font-size: var(--bt-type-hero-lead-mobile) !important;
    line-height: 1.7 !important;
  }
  .so-section h2,
  .so-final h2,
  .technology-system > h2,
  .science-depth__head > h2,
  .health-category-head h2 {font-size: var(--bt-type-section-title-mobile) !important;}
  .so-en,
  .so-zh {font-size: 18px !important;}
  .so-card h3 {font-size: clamp(22px, 6vw, 28px) !important;}
}
