.f-serif {
  font-family: var(--font-serif, "metropolis, sans-serif");
}

.f-sans {
  font-family: var(--font-sans, "Lora, georgia, serif");
}

.f-mono {
  font-family: var(--font-mono, monospace);
}

.fw-thin {
  font-weight: 100;
}
.fw-thin .field__label {
  font-weight: 100;
}

.fw-extralight {
  font-weight: 200;
}
.fw-extralight .field__label {
  font-weight: 200;
}

.fw-light {
  font-weight: 300;
}
.fw-light .field__label {
  font-weight: 300;
}

.fw-normal {
  font-weight: 400;
}
.fw-normal .field__label {
  font-weight: 400;
}

.fw-medium {
  font-weight: 500;
}
.fw-medium .field__label {
  font-weight: 500;
}

.fw-semibold {
  font-weight: 600;
}
.fw-semibold .field__label {
  font-weight: 600;
}

.fw-bold {
  font-weight: 700;
}
.fw-bold .field__label {
  font-weight: 700;
}

.fw-extrabold {
  font-weight: 800;
}
.fw-extrabold .field__label {
  font-weight: 800;
}

.fw-black {
  font-weight: 900;
}
.fw-black .field__label {
  font-weight: 900;
}

.fs-xs {
  font-size: var(--font-size-xs, var(--fs--2));
}

.fs-s {
  font-size: var(--font-size-s, var(--fs--1));
}

.fs-m {
  font-size: var(--font-size-m, var(--fs-0));
}

.fs-l {
  font-size: var(--font-size-l, var(--fs-1));
}

.fs-xl {
  font-size: var(--font-size-xl, var(--fs-2));
}

.fs-2xl {
  font-size: var(--font-size-2xl, var(--fs-3));
}

.fs-3xl {
  font-size: var(--font-size-3xl, var(--fs-4));
}

.fi {
  font-style: italic;
}

.ls-xs {
  letter-spacing: -0.07em;
}

.ls-s {
  letter-spacing: -0.02em;
}

.ls-m {
  letter-spacing: 0.04em;
}

.ls-l {
  letter-spacing: 0.07em;
}

.ls-xl {
  letter-spacing: 0.1em;
}
