.b-richtext {
    display: flex;
    flex-flow: column;
    gap: calc(24/16*1rem);
    color: var(--color-black);
}
.b-richtext h1,
.b-richtext h2,
.b-richtext h3,
.b-richtext h4,
.b-richtext h5,
.b-richtext h6 {
    margin-block: 0;
    text-wrap: pretty;
    color: inherit;
}
.b-richtext h1,
.b-richtext h2,
.b-richtext h3,
.b-richtext h4 {
    font: var(--typo--mobile-headline-03);
}
.b-richtext h5,
.b-richtext h6 {
    font: var(--typo--mobile-headline-04);
}
.b-richtext p {
    margin-block: 0;
    font: var(--typo--mobile-headline-05);
    color: inherit;
}
.b-richtext ul,
.b-richtext ol {
    list-style-position: inside;
    display: flex;
    flex-flow: column;
    gap: calc(4/16*1rem);
    padding-inline-start: 0;
    margin-block: 0;
    font: var(--typo--mobile-headline-05);
    color: inherit;
}
.b-richtext a {
    color: inherit;
    text-decoration: underline;
}
.b-richtext a:hover,
.b-richtext a:focus-visible {
    text-decoration: none;
}
.b-richtext__preview {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(50/16*1rem);
    padding: calc(20/16*1rem);
    border: 1px dotted var(--color-grey--medium);
    font: var(--typo--transverse-small-body-02);
    color: var(--color-grey--dark);
}

.b-richtext a {
    color: var(--color-primary--green);
}

.b-richtext a:visited {
    color: var(--color-primary--green-ultra-light);
}
.b-richtext a:hover {
    color: var(--color-primary--green);
    background-color: var(--color-primary--gold);
    text-decoration: underline;
}

.b-richtext a:active {
    color: var(--color-black);
    background-color: var(--color-grey--light);
    text-decoration: underline;
}
.b-richtext a:focus {
    color: var(--color-primary--green);
    border: 1px solid var(--color-black);
    background-color: var(--color-primary--gold);
    border-style: dotted;
    text-decoration: none;
}

.b-richtext a,
.b-richtext strong,
.b-richtext li,
.b-richtext p {
    word-wrap: break-word;
}

@media screen and (min-width: 48em) {
    .b-richtext {
        gap: calc(30/16*1rem);
    }
    .b-richtext h1,
    .b-richtext h2,
    .b-richtext h3,
    .b-richtext h4 {
        font: var(--typo--desktop-headline-03);
    }
    .b-richtext h5,
    .b-richtext h6 {
        font: var(--typo--desktop-headline-04);
    }
    .b-richtext p {
        font: var(--typo--desktop-headline-05);
    }
    .b-richtext ul,
    .b-richtext ol {
        font: var(--typo--desktop-headline-05);
    }
}

/* editor only styles */
.acf-block-body .acf-block-preview:has(.b-richtext) {
    min-height: calc(100/16*1rem);
}