/* css/typography.css */

/* Fonts loaded via <link> in HTML head for performance */

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}

/* Type scale */
.vd-display {
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -1.6px;
  line-height: 1.08;
}

.vd-h1 {
  font-size: 40px;
  font-weight: 700;
  letter-spacing: -1.2px;
  line-height: 1.12;
}

.vd-h2 {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.5px;
  line-height: 1.15;
}

.vd-h3 {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.3px;
  line-height: 1.2;
}

.vd-h4 {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.2px;
  line-height: 1.3;
}

.vd-h5 {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4;
}

.vd-body {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}

.vd-body-sm {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
}

.vd-small {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
}

.vd-caption {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.3px;
  line-height: 1.4;
}

.vd-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.5px;
  line-height: 1.4;
  text-transform: uppercase;
}

.vd-mono {
  font-family: 'JetBrains Mono', monospace;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}

/* Responsive type — tablet */
@media (max-width: 1023px) {
  .vd-display {
    font-size: 42px;
    letter-spacing: -1.2px;
  }
  .vd-h1 {
    font-size: 32px;
    letter-spacing: -0.9px;
  }
}

/* Responsive type — scale down on mobile */
@media (max-width: 767px) {
  .vd-display {
    font-size: 36px;
    letter-spacing: -1.2px;
  }
  .vd-h1 {
    font-size: 30px;
    letter-spacing: -0.8px;
  }
  .vd-h2 {
    font-size: 22px;
    letter-spacing: -0.3px;
  }
  .vd-h3 {
    font-size: 18px;
  }
}
