:where(h1, h2, h3, h4, p) {
    padding: 0;
    margin: 0;
    color: var(--black);
}


:where(.text-2xl) {
    margin: 0;padding: 0;
    font-size: var(--font-size-2xl);
    line-height: var(--line-height-2xl);
    letter-spacing: var(--letter-spacing-2xl);
}
:where(.text-xl) {
    margin: 0;padding: 0;
    font-size: var(--font-size-xl);
    line-height: var(--line-height-xl);
    letter-spacing: var(--letter-spacing-xl);
}
:where(.text-lg) {
    margin: 0;padding: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-lg);
    letter-spacing: var(--letter-spacing-lg);
}
:where(.text-md) {
    margin: 0;padding: 0;
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
    letter-spacing: var(--letter-spacing-md);
}
:where(.text-sm) {
    margin: 0;padding: 0;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    letter-spacing: var(--letter-spacing-sm);
}
:where(.text-xs) {
    margin: 0;padding: 0;
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs);
    letter-spacing: var(--letter-spacing-xs);
}
:where(.text-2xs) {
    margin: 0;padding: 0;
    font-size: var(--font-size-2xs);
    line-height: var(--line-height-2xs);
    letter-spacing: var(--letter-spacing-2xs);
}
:where(.text-nav) {
    margin: 0;padding: 0;
    font-size: var(--font-size-nav);
    line-height: var(--line-height-nav);
    letter-spacing: var(--letter-spacing-nav);
    text-decoration: none;
    color: inherit;
}

:where(.light) { font-weight: var(--font-weight-light); }
:where(.regular) { font-weight: var(--font-weight-regular); }
:where(.medium) { font-weight: var(--font-weight-medium); }
:where(.semibold) { font-weight: var(--font-weight-semibold); }



:where(.text-2xl) { --paragraph-spacing: var(--paragraph-spacing-2xl); }
:where(.text-xl) { --paragraph-spacing: var(--paragraph-spacing-xl); }
:where(.text-lg) { --paragraph-spacing: var(--paragraph-spacing-lg); }
:where(.text-md) { --paragraph-spacing: var(--paragraph-spacing-md); }
:where(.text-sm) { --paragraph-spacing: var(--paragraph-spacing-sm); }
:where(.text-xs) { --paragraph-spacing: var(--paragraph-spacing-xs); }
:where(.text-2xs) { --paragraph-spacing: var(--paragraph-spacing-2xs); }
:where(.text-nav) { --paragraph-spacing: var(--paragraph-spacing-nav); }

:where(.text-2xl, .text-xl, .text-lg, .text-md, .text-sm, .text-xs, .text-2xs, .text-nav) > :where(ul, ol, blockquote) {
    margin-top: 0;
    margin-bottom: 0;
}

:where(.text-2xl, .text-xl, .text-lg, .text-md, .text-sm, .text-xs, .text-2xs, .text-nav) > :where(p, ul, ol, blockquote) + :where(p, ul, ol, blockquote),
:where(.text-2xl + .text-2xl),
:where(.text-xl + .text-xl),
:where(.text-lg + .text-lg),
:where(.text-md + .text-md),
:where(.text-sm + .text-sm),
:where(.text-xs + .text-xs),
:where(.text-2xs + .text-2xs),
:where(.text-nav + .text-nav) {
    margin-top: var(--paragraph-spacing);
}
