/* FreelancerPeople type system - Inter everywhere (text + amounts).
   Migrated 2026-08-10 from Geist -> Inter across the whole marketplace incl. admin.
   Single primary family + centralized typography tokens. Emails keep their own font.
   Loads LAST in <head> so body + amount rules win. Weights loaded: 400/500/600/700 (+300/800). */

:root {
  /* ---- Primary family (single source of truth) ---- */
  --fp-font: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* ---- Weight tokens (spec: avoid 800/900 for new work) ---- */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* ---- Responsive type scale (size / line-height / tracking) ---- */
  --text-display: clamp(2rem, 1.2rem + 4vw, 4rem);          /* 32 -> 64 */
  --lh-display: 1.1;
  --ls-display: -0.03em;

  --text-h1: clamp(1.5rem, 1.1rem + 2vw, 2.5rem);           /* 24 -> 40 */
  --lh-h1: 1.2;
  --ls-h1: -0.02em;

  --text-h2: clamp(1.25rem, 1.05rem + 1vw, 1.75rem);        /* 20 -> 28 */
  --lh-h2: 1.25;
  --ls-h2: -0.01em;

  --text-h3: clamp(1rem, 0.95rem + 0.4vw, 1.25rem);         /* 16 -> 20 (card titles) */
  --lh-h3: 1.3;

  --text-body: clamp(0.9375rem, 0.9rem + 0.15vw, 1rem);     /* 15 -> 16 */
  --lh-body: 1.55;

  --text-small: clamp(0.75rem, 0.72rem + 0.1vw, 0.8125rem); /* 12 -> 13 */
  --lh-small: 1.4;

  --text-caption: clamp(0.6875rem, 0.66rem + 0.08vw, 0.75rem); /* 11 -> 12 */

  --text-button: clamp(0.875rem, 0.85rem + 0.1vw, 1rem);    /* 14 -> 16 */
}

body {
  font-family: var(--fp-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* amounts / numbers -> Inter with tabular figures so columns line up */
.money-big,.nums,.cprice,.price b,.stat b,
.ed-card-price,.ed-pkg-price,.ed-co-total,.ed-co-addon-price,.ed-oc-pkg-price,.ed-oc-bd-total,.ed-oc-deliv-num,.ed-oc-hr-wrow-money,.ed-gd-amount,.ed-gd-earn-price,.ed-biz-balance-v,.ed-biz-money-ink,.ed-job-ms-total,.ed-job-stat-v,.ed-actv-num,.ed-done-num,
.about-value-number,.car-value,
.checkout-total-row,.checkout-price-lines,
.buyer-wallet-balance-total,.buyer-wallet-amounts,.buyer-price-list,
[class*="-price"],[class*="-amount"],[class*="earn-price"]{
  font-family: var(--fp-font)!important;
  font-variant-numeric: tabular-nums;
}

/* ---- Opt-in typography utilities (new/future components + landing hero).
   Existing components keep their own tuned sizes; these do not override them. ---- */
.fp-display{font-family:var(--fp-font);font-weight:var(--fw-bold);font-size:var(--text-display);line-height:var(--lh-display);letter-spacing:var(--ls-display);}
.fp-h1{font-family:var(--fp-font);font-weight:var(--fw-bold);font-size:var(--text-h1);line-height:var(--lh-h1);letter-spacing:var(--ls-h1);}
.fp-h2{font-family:var(--fp-font);font-weight:var(--fw-semibold);font-size:var(--text-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2);}
.fp-h3{font-family:var(--fp-font);font-weight:var(--fw-semibold);font-size:var(--text-h3);line-height:var(--lh-h3);}
.fp-body{font-family:var(--fp-font);font-weight:var(--fw-regular);font-size:var(--text-body);line-height:var(--lh-body);}
.fp-body-strong{font-family:var(--fp-font);font-weight:var(--fw-medium);font-size:var(--text-body);line-height:var(--lh-body);}
.fp-small{font-family:var(--fp-font);font-weight:var(--fw-regular);font-size:var(--text-small);line-height:var(--lh-small);}
.fp-caption{font-family:var(--fp-font);font-weight:var(--fw-regular);font-size:var(--text-caption);line-height:var(--lh-small);}
.fp-btn{font-family:var(--fp-font);font-weight:var(--fw-semibold);font-size:var(--text-button);line-height:1.2;}
.fp-num{font-variant-numeric:tabular-nums;}
