.cg-design-system {
  color: var(--cg-color-ink-900);
  font-family: var(--cg-font-sans);
  font-size: var(--cg-font-size-body);
  line-height: var(--cg-leading-body);
}

.cg-design-system h1,
.cg-design-system h2,
.cg-design-system h3,
.cg-design-system h4 {
  color: var(--cg-color-ink-900);
  font-weight: var(--cg-font-weight-semibold);
  letter-spacing: 0;
}

.cg-design-system h2 {
  font-size: var(--cg-font-size-h2);
  line-height: 1.12;
}

.cg-design-system h3 {
  font-size: var(--cg-font-size-h3);
  line-height: var(--cg-leading-heading);
}

.cg-design-system h4 {
  font-size: var(--cg-font-size-h4);
  line-height: 1.3;
}

.cg-type-display {
  font-size: var(--cg-font-size-display);
  font-weight: var(--cg-font-weight-semibold);
  line-height: 1.02;
}

.cg-type-h1 {
  font-size: var(--cg-font-size-h1);
  font-weight: var(--cg-font-weight-semibold);
  line-height: 1.08;
}

.cg-type-h2 {
  font-size: var(--cg-font-size-h2);
  font-weight: var(--cg-font-weight-semibold);
  line-height: 1.12;
}

.cg-type-h3 {
  font-size: var(--cg-font-size-h3);
  font-weight: var(--cg-font-weight-semibold);
  line-height: var(--cg-leading-heading);
}

.cg-type-h4 {
  font-size: var(--cg-font-size-h4);
  font-weight: var(--cg-font-weight-semibold);
  line-height: 1.3;
}

.cg-type-body-lg {
  font-size: var(--cg-font-size-body-lg);
  line-height: 1.6;
}

.cg-type-body {
  font-size: var(--cg-font-size-body);
  line-height: var(--cg-leading-body);
}

.cg-type-body-sm {
  font-size: var(--cg-font-size-sm);
  line-height: 1.5;
  color: var(--cg-color-ink-700);
}

.cg-type-label {
  font-size: var(--cg-font-size-label);
  font-weight: var(--cg-font-weight-semibold);
}

.cg-type-price {
  font-size: var(--cg-font-size-body-lg);
  font-weight: var(--cg-font-weight-semibold);
}

.cg-type-sku {
  color: var(--cg-color-ink-500);
  font-size: var(--cg-font-size-xs);
  font-weight: var(--cg-font-weight-medium);
}
