/* ============================================================
   ESTUDIO RETÓRICA · Tipografía
   ============================================================ */

.t-display-xl {
  font-family: var(--font-display);
  font-size: clamp(3.4rem, 8vw, var(--fs-96));
  font-weight: var(--fw-semibold);
  line-height: 1.02;
  letter-spacing: var(--tracking-tight);
}
.t-display-lg {
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 6vw, var(--fs-72));
  font-weight: var(--fw-semibold);
  line-height: 1.05;
  letter-spacing: var(--tracking-tight);
}
.t-display-md {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4.6vw, var(--fs-56));
  font-weight: var(--fw-semibold);
  line-height: 1.08;
  letter-spacing: var(--tracking-tight);
}
.t-display-sm {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, var(--fs-40));
  font-weight: var(--fw-semibold);
  line-height: 1.1;
  letter-spacing: var(--tracking-snug);
}

.t-h1 { font-size: var(--fs-40); font-weight: var(--fw-semibold); line-height: 1.08; letter-spacing: var(--tracking-snug); }
.t-h2 { font-size: var(--fs-32); font-weight: var(--fw-semibold); line-height: 1.12; letter-spacing: var(--tracking-snug); }
.t-h3 { font-size: var(--fs-24); font-weight: var(--fw-semibold); line-height: 1.2; }
.t-h4 { font-size: var(--fs-20); font-weight: var(--fw-semibold); line-height: 1.3; }
.t-h5 { font-size: var(--fs-18); font-weight: var(--fw-semibold); line-height: 1.4; }

.t-body-lg { font-size: var(--fs-20); font-weight: var(--fw-regular); line-height: 1.75; }
.t-body { font-size: var(--fs-16); font-weight: var(--fw-regular); line-height: 1.7; }
.t-body-sm { font-size: var(--fs-14); font-weight: var(--fw-regular); line-height: 1.6; }

.t-label { font-size: var(--fs-14); font-weight: var(--fw-medium); line-height: 1.4; }
.t-label-sm { font-size: var(--fs-12); font-weight: var(--fw-medium); line-height: 1.3; }

.t-eyebrow {
  font-size: var(--fs-12);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  line-height: 1;
}

.t-caption {
  font-size: var(--fs-12);
  font-weight: var(--fw-regular);
  color: var(--fg-soft);
  line-height: 1.5;
}

.t-code {
  font-family: var(--font-mono);
  font-size: .9em;
  background: var(--brand-gray-100);
  padding: 0.1em 0.35em;
  border-radius: var(--r-sm);
}

.t-tabular { font-variant-numeric: tabular-nums; }
.t-underline { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
