/* =====================================================================
   THERALETIK STEGLITZ — utilities.css
   Reusable TEXT STYLES (Lumos-style `u-text-style-*`). Di-load PALING
   AKHIR supaya menang cascade saat ditumpuk di atas component class.
   Hanya properti tipografi (weight/size/line-height/letter-spacing);
   warna & layout tetap di component class. Token only (no px, no hex).
   ===================================================================== */

.u-text-style-display {
  font-weight: 500;
  font-size: var(--fs-display);
  line-height: var(--lh-tight);
  letter-spacing: -.02em;
  overflow-wrap: break-word;
}
.u-text-style-display-sm {
  font-weight: 500;
  font-size: var(--fs-display-sm);
  line-height: .8;
  letter-spacing: -.02em;
  overflow-wrap: break-word;
}
.u-text-style-h1 {
  font-weight: 500;
  font-size: var(--fs-h1);
  line-height: var(--lh-snug);
  letter-spacing: -.01em;
}
.u-text-style-h2 {
  font-weight: 700;
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  letter-spacing: -.018em;
  overflow-wrap: break-word;
}
.u-text-style-h3 {
  font-weight: 500;
  font-size: var(--fs-h3);
  line-height: var(--lh-snug);
  letter-spacing: -.04em;
}
.u-text-style-h4 {
  font-weight: 700;
  font-size: var(--fs-h4);
  line-height: var(--lh-h2);
  letter-spacing: -.01em;
  overflow-wrap: break-word;
}
/* 22px bold — line-height sengaja TIDAK diset (varies per pemakaian);
   instance yang butuh lh-snug menyetelnya di component class. */
.u-text-style-large {
  font-weight: 700;
  font-size: var(--fs-large);
  letter-spacing: -.01em;
}
