:root {
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;

  --text-hero-size: clamp(3.5rem, 5vw + 1rem, 4rem);
  --text-hero-weight: 800;
  --text-hero-leading: 1.02;
  --text-hero-tracking: -0.055em;

  --text-section-size: clamp(2.35rem, 3.25vw + 1rem, 2.625rem);
  --text-section-weight: 750;
  --text-section-leading: 1.05;
  --text-section-tracking: -0.04em;

  --text-card-size: clamp(1.25rem, 1vw + 1rem, 1.375rem);
  --text-card-weight: 650;
  --text-card-leading: 1.24;
  --text-card-tracking: -0.025em;

  --text-card-sm-size: 1rem;
  --text-card-sm-weight: 600;
  --text-card-sm-leading: 1.4;

  --text-nav-size: 0.95rem;
  --text-nav-weight: 550;

  --text-body-size: clamp(1rem, 0.65vw + 0.92rem, 1.125rem);
  --text-body-weight: 400;
  --text-body-leading: 1.72;

  --text-body-sm-size: 0.95rem;
  --text-body-sm-leading: 1.6;

  --text-label-size: 0.875rem;
  --text-label-weight: 650;
  --text-label-tracking: 0.08em;

  --text-prose-max: 44rem;
  --text-stat-size: clamp(2rem, 2vw + 1.25rem, 3rem);
}

html {
  font-family: var(--font-sans);
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-sans);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: var(--text-section-tracking);
}

.hero-title {
  font-size: var(--text-hero-size);
  font-weight: var(--text-hero-weight);
  line-height: var(--text-hero-leading);
  letter-spacing: var(--text-hero-tracking);
}

.section-title {
  font-size: var(--text-section-size);
  font-weight: var(--text-section-weight);
  line-height: var(--text-section-leading);
  letter-spacing: var(--text-section-tracking);
}

.section-desc,
.hero-desc,
.text-body {
  font-size: var(--text-body-size);
  line-height: var(--text-body-leading);
}

.section-label,
.hero-stat-label,
.product-benefit,
.ai-badge,
.eco-status,
.arch-node-sub,
.footer-col h4 {
  font-size: var(--text-label-size);
  font-weight: var(--text-label-weight);
  letter-spacing: var(--text-label-tracking);
  text-transform: uppercase;
}
