/* Per-display-font type adjustments
   Scoped via [data-display-font="x"] set on <html> by font-selector.js.
   Playfair Display is the baseline — no override block needed for it.
   ─────────────────────────────────────────────────────────────────────
   Baseline (Playfair Display, in base.css):
     ts-display-xl  line-height 1.08   letter-spacing -0.025em  weight 500
     ts-display-lg  line-height 1.12   letter-spacing -0.02em   weight 500
     ts-display-md  line-height 1.18   letter-spacing -0.02em   weight 500
     ts-display-sm  line-height 1.4    letter-spacing -0.01em   weight 500
     ts-headline-lg line-height 1.2    letter-spacing -0.015em  weight 500
   ─────────────────────────────────────────────────────────────────────── */


/* ── Fraunces ─────────────────────────────────────────────────────────── */
/* Optical-size variable serif. Slightly looser at large sizes, tighter tracking needed. */
[data-display-font="fraunces"] .ts-display-xl  { line-height: 1.06; letter-spacing: -0.035em; font-weight: 400; }
[data-display-font="fraunces"] .ts-display-lg  { line-height: 1.1;  letter-spacing: -0.03em;  font-weight: 400; }
[data-display-font="fraunces"] .ts-display-md  { line-height: 1.16; letter-spacing: -0.025em; font-weight: 400; }
[data-display-font="fraunces"] .ts-display-sm  { line-height: 1.38; letter-spacing: -0.015em; font-weight: 400; }
[data-display-font="fraunces"] .ts-headline-lg { line-height: 1.18; letter-spacing: -0.015em; font-weight: 400; }
[data-display-font="fraunces"] .ts-num-2xl     { font-weight: 400; }
[data-display-font="fraunces"] .ts-num-xl      { font-weight: 400; }
[data-display-font="fraunces"] .ts-num-lg      { font-weight: 400; }


/* ── DM Serif Display ─────────────────────────────────────────────────── */
/* Light-contrast display serif. Needs more vertical space; minimal negative tracking. */
[data-display-font="dm-serif"] .ts-display-xl  { line-height: 1.1;  letter-spacing: -0.015em; font-weight: 400; }
[data-display-font="dm-serif"] .ts-display-lg  { line-height: 1.15; letter-spacing: -0.01em;  font-weight: 400; }
[data-display-font="dm-serif"] .ts-display-md  { line-height: 1.22; letter-spacing: -0.01em;  font-weight: 400; }
[data-display-font="dm-serif"] .ts-display-sm  { line-height: 1.45; letter-spacing: 0;        font-weight: 400; }
[data-display-font="dm-serif"] .ts-headline-lg { line-height: 1.25; letter-spacing: -0.005em; font-weight: 400; }
[data-display-font="dm-serif"] .ts-num-2xl     { font-weight: 400; }
[data-display-font="dm-serif"] .ts-num-xl      { font-weight: 400; }
[data-display-font="dm-serif"] .ts-num-lg      { font-weight: 400; }


/* ── Lora ─────────────────────────────────────────────────────────────── */
/* Balanced text serif. Upright axis needs near-zero tracking. Heavier weight for display use. */
[data-display-font="lora"] .ts-display-xl  { line-height: 1.1;  letter-spacing: -0.01em;  font-weight: 600; }
[data-display-font="lora"] .ts-display-lg  { line-height: 1.15; letter-spacing: -0.005em; font-weight: 600; }
[data-display-font="lora"] .ts-display-md  { line-height: 1.2;  letter-spacing: 0;        font-weight: 600; }
[data-display-font="lora"] .ts-display-sm  { line-height: 1.45; letter-spacing: 0;        font-weight: 600; }
[data-display-font="lora"] .ts-headline-lg { line-height: 1.22; letter-spacing: 0;        font-weight: 600; }
[data-display-font="lora"] .ts-num-2xl     { font-weight: 600; }
[data-display-font="lora"] .ts-num-xl      { font-weight: 600; }
[data-display-font="lora"] .ts-num-lg      { font-weight: 600; }


/* ── Georgia ──────────────────────────────────────────────────────────── */
/* System serif. Classic proportions; needs heavier weight and more space. */
[data-display-font="georgia"] .ts-display-xl  { line-height: 1.1;  letter-spacing: -0.01em; font-weight: 700; }
[data-display-font="georgia"] .ts-display-lg  { line-height: 1.14; letter-spacing: -0.01em; font-weight: 700; }
[data-display-font="georgia"] .ts-display-md  { line-height: 1.2;  letter-spacing: 0;       font-weight: 700; }
[data-display-font="georgia"] .ts-display-sm  { line-height: 1.42; letter-spacing: 0;       font-weight: 700; }
[data-display-font="georgia"] .ts-headline-lg { line-height: 1.22; letter-spacing: 0;       font-weight: 700; }
[data-display-font="georgia"] .ts-num-2xl     { font-weight: 700; }
[data-display-font="georgia"] .ts-num-xl      { font-weight: 700; }
[data-display-font="georgia"] .ts-num-lg      { font-weight: 700; }


/* ── Manrope ──────────────────────────────────────────────────────────── */
/* Geometric sans-serif as display. Tight tracking, compressed line-height, bold weight. */
[data-display-font="manrope"] .ts-display-xl  { line-height: 1.0;  letter-spacing: -0.04em;  font-weight: 700; }
[data-display-font="manrope"] .ts-display-lg  { line-height: 1.04; letter-spacing: -0.035em; font-weight: 700; }
[data-display-font="manrope"] .ts-display-md  { line-height: 1.1;  letter-spacing: -0.03em;  font-weight: 700; }
[data-display-font="manrope"] .ts-display-sm  { line-height: 1.3;  letter-spacing: -0.02em;  font-weight: 700; }
[data-display-font="manrope"] .ts-headline-lg { line-height: 1.15; letter-spacing: -0.025em; font-weight: 700; }
[data-display-font="manrope"] .ts-num-2xl     { line-height: 0.96; letter-spacing: -0.04em;  font-weight: 700; }
[data-display-font="manrope"] .ts-num-xl      { letter-spacing: -0.035em; font-weight: 700; }
[data-display-font="manrope"] .ts-num-lg      { font-weight: 700; }
