/* GENERATED by design/fonts/build.py — do not edit by hand.
 *
 * The product's three faces, EMBEDDED — served from lattr.co, downloaded by
 * every visitor, never answered by a font the reader happens to own.
 * Nothing here is fetched from a third party either: the Google Fonts
 * <link> and @import this replaces cost two DNS+TLS handshakes and a
 * render-blocking stylesheet before a glyph was drawn, and pulled 209.3 KB
 * of Inter, Poppins, IBM Plex Mono and Source Serif 4.
 *
 * THE FAMILY NAMES ARE PRIVATE ON PURPOSE. Called 'PP Neue Montreal' or
 * 'Object Sans', these rules resolve off a designer's own font book — the
 * page renders correctly on the one machine that owns the licence and in a
 * fallback everywhere else, and every check that asks the browser whether
 * the family exists answers yes without a byte having been fetched. A name
 * no installed font can answer makes a passing check a fact about OUR file.
 *
 * WHO HOLDS WHAT
 *
 *   Lattr UI       PP Neue Montreal. The work: every label, control, table
 *                  cell, heading and body string in the chrome — .rc,
 *                  .rc-h1, .rc-h2, .rc-strong, .rc-control, .rc-micro,
 *                  .rc-metric. Replaces Inter, Poppins AND IBM Plex Mono:
 *                  the micro register was a fourth family carrying 46
 *                  eyebrows and column heads, and v4's ladder has no
 *                  monospace step.
 *   Lattr Display  Object Sans Heavy. The two large renderings per screen —
 *                  .rc-display at 44px and .rc-hero-num at 57px — and the
 *                  wordmark lockup it already carried. Owner's ruling, and
 *                  v4's own ladder: DISPLAY is Object Sans Heavy 800.
 *   Lattr Record   PP Grafier. THE DOCUMENT: the resume, on screen, in
 *                  print and in the PDF. It exists so the user's own page
 *                  stops being set in the product's chrome face.
 *
 * METRIC COMPENSATION. A face swap at a fixed px is not size-neutral —
 * optical size is x-height, not em. Measured, in units per em:
 *
 *     Inter             x .5459  cap .7275  <- was the interface AND the document
 *     Poppins 600       x .5540  cap .7010  <- was the display
 *     Source Serif 4    x .4750  cap .6700  <- was the serif templates
 *     PP Neue Montreal  x .5100  cap .7150
 *     Object Sans Heavy x .5160  cap .7160
 *     PP Grafier        x .5000  cap .7300
 *
 * so size-adjust holds what the ladder already decided:
 *
 *   107%  Lattr UI       .5459/.5100. The interface would otherwise lose
 *         6.6% of its x-height at every step, and the floor of that ladder
 *         is an 11px uppercase eyebrow.
 *   109%  Lattr Record   .5459/.5000. THE DOCUMENT. 8.4px body is already
 *         the product's central defect; a face that renders 8.4% smaller
 *         still at the same nominal size would make it worse. This holds
 *         the resume exactly where it is while changing whose voice it is.
 *   100%  Lattr Display  none needed and none wanted. Its cap is within 2%
 *         of the Poppins it replaces at the only two steps it sets, and it
 *         also draws the wordmark — a lockup does not take a correction
 *         computed for a text ladder.
 *
 * ascent/descent-override pins the two TEXT faces to Inter's 96.9/24.1/0
 * line box. Grafier's own hhea is 1.020/-0.290, a 1.43 em default line —
 * 18% taller than Inter's 1.21 — and the resume paper leaves line-height
 * unset on its section heads, role lines, dates and school names. Unpinned,
 * the document grows vertically on a font swap and the PDF repaginates. It
 * does not. Lattr Display is left alone for the same reason it is left at
 * 100%: both display steps set their own line-height, and the wordmark's
 * box has to stay exactly where it was.
 */

@font-face {
  font-family: 'Lattr UI';  /* NeueMontreal-Regular */
  font-style: normal;
  font-weight: 100 400;
  font-display: swap;
  size-adjust: 107%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('NeueMontreal-Regular.22b6e9330e.woff2') format('woff2');
}
@font-face {
  font-family: 'Lattr UI';  /* NeueMontreal-Bold */
  font-style: normal;
  font-weight: 500 900;
  font-display: swap;
  size-adjust: 107%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('NeueMontreal-Bold.e2ab02e453.woff2') format('woff2');
}

@font-face {
  font-family: 'Lattr Display';  /* ObjectSans-Heavy */
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  size-adjust: 100%;
  src: url('ObjectSans-Heavy.86e6384c03.woff2') format('woff2');
}

@font-face {
  font-family: 'Lattr Record';  /* Grafier-Regular */
  font-style: normal;
  font-weight: 100 400;
  font-display: swap;
  size-adjust: 109%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('Grafier-Regular.c63c1c4ecc.woff2') format('woff2');
}
@font-face {
  font-family: 'Lattr Record';  /* Grafier-Bold */
  font-style: normal;
  font-weight: 500 900;
  font-display: swap;
  size-adjust: 109%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('Grafier-Bold.a4401b8fa2.woff2') format('woff2');
}

@font-face {
  font-family: 'Lattr Quote';  /* EditorialNew-Regular */
  font-style: normal;
  font-weight: 100 500;
  font-display: swap;
  size-adjust: 100%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('EditorialNew-Regular.8db3340a80.woff2') format('woff2');
}

@font-face {
  font-family: 'Lattr Stamp';  /* NeueMachina-Regular */
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  size-adjust: 104%;
  ascent-override: 96.9%; descent-override: 24.1%; line-gap-override: 0%;
  src: url('NeueMachina-Regular.48f9baa185.woff2') format('woff2');
}
