/* =========================================
   TAIYARI24 ENTERPRISE — TYPOGRAPHY
   Premium editorial type system
   ========================================= */

/* Google Fonts import */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Instrument+Serif:ital@0;1&family=IBM+Plex+Mono:wght@400;500&display=swap');

/* ---- Base ---- */
body {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: var(--weight-regular);
  line-height: var(--leading-relaxed);
  color: var(--ink);
  background-color: var(--paper);
}

/* ---- Display / Editorial Headlines ---- */
.display-1 {
  font-family: var(--font-serif);
  font-size: clamp(var(--text-5xl), 7vw, var(--text-8xl));
  font-weight: var(--weight-regular);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
}

.display-2 {
  font-family: var(--font-serif);
  font-size: clamp(var(--text-4xl), 5.5vw, var(--text-7xl));
  font-weight: var(--weight-regular);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
}

/* ---- Section Headlines ---- */
.headline-xl {
  font-family: var(--font-sans);
  font-size: clamp(var(--text-3xl), 4vw, var(--text-5xl));
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tighter);
}

.headline-lg {
  font-family: var(--font-sans);
  font-size: clamp(var(--text-2xl), 3vw, var(--text-4xl));
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
}

.headline-md {
  font-family: var(--font-sans);
  font-size: clamp(var(--text-xl), 2.5vw, var(--text-3xl));
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
}

.headline-sm {
  font-family: var(--font-sans);
  font-size: clamp(var(--text-lg), 2vw, var(--text-2xl));
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
}

/* ---- Body Text ---- */
.body-xl {
  font-size: var(--text-xl);
  font-weight: var(--weight-regular);
  line-height: var(--leading-relaxed);
  color: var(--mid);
}

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

.body-md {
  font-size: var(--text-base);
  font-weight: var(--weight-regular);
  line-height: var(--leading-relaxed);
  color: var(--mid);
}

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

/* ---- Labels & Captions ---- */
.label {
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-widest);
  text-transform: uppercase;
}

.caption {
  font-size: var(--text-sm);
  font-weight: var(--weight-regular);
  color: var(--mid-light);
}

/* ---- Mono ---- */
.mono {
  font-family: var(--font-mono);
  font-size: 0.9em;
}

/* ---- Color Modifiers ---- */
.text-ink     { color: var(--ink); }
.text-mid     { color: var(--mid); }
.text-light   { color: var(--mid-light); }
.text-accent  { color: var(--accent); }
.text-talent  { color: var(--talent); }
.text-white   { color: var(--white); }
.text-white-70 { color: rgba(255,255,255,0.70); }
.text-white-50 { color: rgba(255,255,255,0.50); }

/* ---- Italic Serif accent ---- */
.serif-italic {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: var(--weight-regular);
}

/* ---- Gradient text ---- */
.text-gradient {
  background: linear-gradient(135deg, var(--accent) 0%, #7B4FFF 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
