/*------------------------------------*\
    Individual Author block (acf/author-block)
    Mobile-first; tokens from custom-properties.css
\*------------------------------------*/

.author-block {
    position: relative;
}

.author-block .flex-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.author-block__empty {
    margin: 0;
    font-size: var(--fx-text-font-size-paragraph);
    color: var(--fx-text-paragraph-default, var(--text-color));
}

.author-image__placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 1;
    border-radius: 24px;
    background: var(--fx-brand-colors-neutrals-grey-5pct, rgba(95, 88, 86, 0.05));
}

.author-block__headlines {
    margin-bottom: 18px;
}

.author-block__headlines h2 {
    position: relative;
    display: inline-block;
    font-family: var(--fx-h2-post-heading-style-font-family, var(--secondary-font));
    font-size: clamp(1.75rem, 4vw, var(--fx-text-font-size-h2-posts));
    font-weight: var(--fx-h2-post-heading-style-font-weight);
    line-height: var(--fx-h2-post-heading-style-line-height);
    color: var(--fx-text-heading-default, var(--black-coffee));
    margin: 0;
}

.author-block__headlines h2::after {
    position: absolute;
    content: "";
    bottom: 7px;
    right: -97px;
    width: 89px;
    height: 3px;
    background-color: var(--fx-brand-colors-secondary-text-and-icon, var(--black-coffee));
}

.author-image,
.author-details {
    width: 100%;
}

.author-image {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.author-image__img {
    width: 115px;
    height: auto;
}

.author-image__img img {
    border-radius: 24px;
}

.author-image__title {
    width: calc(100% - 115px);
    padding-left: 18px;
}

.author-image__title h4 {
    margin-bottom: 0;
    font-size: 22px;
    font-family: var(--fx-h4-heading-style-font-family, var(--secondary-font));
    font-weight: var(--fx-h4-heading-style-font-weight);
    line-height: var(--fx-h4-heading-style-line-height);
    color: var(--fx-text-heading-default, var(--black-coffee));
}

.author-details {
    margin-top: 18px;
}

.author-details :is(p, li) {
    font-family: var(--fx-paragraph-style-font-family, var(--primary-font));
    font-size: var(--fx-text-font-size-paragraph);
    line-height: var(--fx-paragraph-style-line-height);
    color: var(--fx-text-paragraph-default, var(--text-color));
}

.author-details p {
    margin: 0 0 var(--fx-text-spacing-paragraph) 0;
}

.author-details > :last-child {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .author-image__placeholder {
        border-radius: 40px;
    }

    .author-block__headlines {
        margin-bottom: 25px;
    }

    .author-block__headlines h2::after {
        right: -350px;
        width: 338px;
    }

    .author-image__img {
        width: 200px;
    }

    .author-image__img img {
        border-radius: 40px;
    }

    .author-image__title {
        width: calc(100% - 200px);
        padding-left: 32px;
    }

    .author-image__title h4 {
        font-size: 30px;
    }

    .author-details {
        margin-top: 32px;
    }
}

@media (min-width: 1200px) {
    .author-image {
        width: 292px;
        flex-direction: column;
    }

    .author-details {
        width: calc(100% - 292px);
        padding-left: 32px;
    }

    .author-block__headlines {
        margin-bottom: 40px;
    }

    .author-block__headlines h2::after {
        right: -209px;
        width: 194px;
        bottom: 10px;
    }

    .author-image__img {
        width: 100%;
    }

    .author-image__img img {
        border-radius: 40px;
    }

    .author-image__title {
        width: 100%;
        padding-left: 0;
        margin-top: 24px;
        text-align: center;
    }

    .author-image__title h4 {
        font-size: 33px;
    }

    .author-details {
        margin-top: 0;
    }
}
