.post-author {
    width: 100%;
    max-width: calc(62.5rem + 80px);
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 2rem;
    margin-left: auto;
}

body.single-post section:has(+ .post-author) {
    margin-bottom: 0;
}

.post-author__inner {
    display: flex;
    align-items: flex-start;
    gap: 1.75rem;
    padding: 1.75rem;
    border: 1px solid #dededf;
    border-radius: .75rem;
    background: #f8fafc;
}

.post-author__avatar {
    flex: 0 0 8rem;
}

.post-author__avatar-image {
    display: block;
    width: 8rem;
    height: 8rem;
    border: 3px solid #fff;
    border-radius: 50%;
    object-fit: cover;
}

.post-author__content {
    flex: 1;
    min-width: 0;
}

.post-author__label {
    display: block;
    margin-bottom: .1rem;
    color: #4eaff3;
    font-size: .8rem;
    font-weight: bold;
    text-transform: uppercase;
}

.post-author__name {
    margin: 0;
    color: #1c495a;
    font-size: 1.5rem;
    font-weight: bold;
}

.post-author__name-row {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.post-author__role-row {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-top: .2rem;
}

.post-author__role {
    color: #1c495a;
    font-size: 1.05rem;
    font-weight: bold;
}

.post-author__bio {
    margin-top: 1rem;
    font-size: 1rem;
}

.post-author__bio > :last-child {
    margin-bottom: 0;
}

@media (max-width: 1200px) {
    .post-author {
        max-width: calc(62.5rem + 60px);
    }
}

@media (max-width: 991px) {
    .post-author {
        max-width: calc(62.5rem + 40px);
    }
}

@media (max-width: 600px) {
    .post-author__inner {
        flex-direction: column;
        gap: 1.25rem;
        padding: 1.25rem;
    }

    .post-author__avatar {
        flex-basis: auto;
    }

    .post-author__avatar-image {
        width: 6.5rem;
        height: 6.5rem;
    }
}
