@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Source+Sans+3:wght@400;500;600;700&family=Source+Serif+4:ital,opsz,wght@0,8..60,400..700;1,8..60,400..600&display=swap");

:root {
  --font-display: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-body: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "Cascadia Code", monospace;

  --text-xs: 0.72rem;
  --text-sm: 0.875rem;
  --text-base: 1.0625rem;
  --text-lg: 1.1875rem;
  --text-xl: 1.375rem;
  --text-2xl: clamp(1.75rem, 3.5vw, 2.25rem);
  --text-3xl: clamp(2.25rem, 5vw, 3.25rem);
  --text-hero: clamp(2.65rem, 6.2vw, 4.75rem);
}

html {
  font-size: 16px;
}

body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: 400;
  line-height: 1.62;
  letter-spacing: -0.011em;
  font-feature-settings: "kern" 1, "liga" 1;
}

.font-display,
h1.font-display,
h2.font-display,
h3.font-display {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: -0.032em;
  font-feature-settings: "kern" 1, "liga" 1;
  text-wrap: balance;
}

.mono {
  font-family: var(--font-mono);
  letter-spacing: 0.04em;
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: -0.028em;
  text-wrap: balance;
}

strong, b {
  font-weight: 600;
}
