/**
 * ADCAM DIGITAL — TYPOGRAPHY SYSTEM
 * css/typography.css
 */

.text-display {
  font-family: var(--font-display);
  font-size: var(--text-display);
  font-weight: var(--weight-extrabold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-heading);
}

h1, .text-h1 {
  font-family: var(--font-display);
  font-size: var(--text-h1);
  font-weight: var(--weight-bold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-heading);
}

h2, .text-h2 {
  font-family: var(--font-display);
  font-size: var(--text-h2);
  font-weight: var(--weight-bold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-heading);
}

h3, .text-h3 {
  font-family: var(--font-display);
  font-size: var(--text-h3);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-heading);
}

h4, .text-h4 {
  font-family: var(--font-display);
  font-size: var(--text-h4);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-normal);
  color: var(--color-text-heading);
}

p {
  font-size: var(--text-body);
  line-height: var(--leading-normal);
  color: var(--color-text-secondary);
}

.lead {
  font-size: var(--text-body-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
  font-weight: var(--weight-regular);
}

.text-body-lg {
  font-size: var(--text-body-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
}

.text-body-sm {
  font-size: var(--text-body-sm);
  line-height: var(--leading-normal);
  color: var(--color-text-secondary);
}

.text-caption {
  font-size: var(--text-caption);
  line-height: var(--leading-normal);
  color: var(--color-text-muted);
}

/* Eyebrow badge overlines */
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-label);
  font-weight: var(--weight-bold);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-accent-primary);
  line-height: 1;
  margin-bottom: var(--space-3);
}

.eyebrow--line::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 2px;
  background: var(--color-accent-primary);
  border-radius: var(--radius-pill);
}

.eyebrow--dot::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-accent-primary);
}

.eyebrow--amber {
  color: var(--color-accent-secondary);
}
.eyebrow--amber.eyebrow--line::before,
.eyebrow--amber.eyebrow--dot::before {
  background: var(--color-accent-secondary);
}

/* Gradient highlight text */
.text-gradient-blue {
  background: var(--gradient-blue);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.text-number {
  font-family: var(--font-display);
  font-size: var(--text-h3);
  font-weight: var(--weight-extrabold);
  color: var(--color-accent-primary);
  opacity: 0.35;
  line-height: 1;
}

/* Utilities */
.text-blue      { color: var(--color-accent-primary); }
.text-amber     { color: var(--color-accent-secondary); }
.text-success   { color: var(--color-success); }
.text-heading   { color: var(--color-text-heading); }
.text-secondary { color: var(--color-text-secondary); }
.text-muted     { color: var(--color-text-muted); }
.text-center    { text-align: center; }
.text-left      { text-align: left; }
