/* 
  VULCAN DESIGN SYSTEM - TYPOGRAPHY
  The Technical Editorial System
*/

h1, h2, h3, h4, h5, h6 {
  font-family: var(--p-font-display);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--s-color-text-primary);
  text-transform: uppercase;
}

.t-display-hero { font-size: clamp(2.5rem, 10vw, var(--p-font-size-hero)); line-height: 1.05; }
.t-display-lg { font-size: clamp(2rem, 8vw, var(--p-font-size-5xl)); }
.t-display-md { font-size: clamp(1.75rem, 6vw, var(--p-font-size-4xl)); }
.t-display-sm { font-size: clamp(1.5rem, 5vw, var(--p-font-size-3xl)); }
.t-display-xs { font-size: clamp(1.25rem, 4vw, var(--p-font-size-2xl)); }

.t-body-lg { font-size: var(--p-font-size-lg); line-height: 1.6; }
.t-body-md { font-size: var(--p-font-size-md); line-height: 1.6; }
.t-body-sm { font-size: var(--p-font-size-sm); line-height: 1.6; }
.t-body-xs { font-size: var(--p-font-size-xs); line-height: 1.6; }

.t-mono {
  font-family: var(--p-font-mono);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.t-label {
  font-family: var(--p-font-mono);
  font-size: var(--p-font-size-xs);
  letter-spacing: 0.1em;
  color: var(--s-color-primary);
  text-transform: uppercase;
}

.t-glow-neon {
  text-shadow: 0 0 15px rgba(0, 238, 129, 0.6);
}

.t-glow-cyan {
  text-shadow: 0 0 15px rgba(0, 210, 255, 0.6);
}

.t-gradient {
  background: linear-gradient(to right, var(--s-color-primary), var(--s-color-secondary));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.t-center {
  text-align: center !important;
}
