/* The about page (/gioi-thieu) follows a Read.cv style layout: one 600px column of 14px Inter with a 1.8 line height. */
.about {
    max-width: calc(600px + 2.8rem);
    margin-inline: auto;
    padding: 4rem 1.4rem;
    font-family: "Inter", sans-serif;
    font-size: 0.875rem;
    line-height: 1.8;
}

.about-avatar {
    width: 5.75rem;
    height: 5.75rem;
}

.about-name {
    font-size: 1.25rem;
    line-height: 1.3;
}

.about-pill {
    display: inline-block;
    margin-top: 0.125rem;
    padding: 0.125rem 0.625rem 0.1875rem;
    border-radius: 0.75rem;
    font-size: 0.75rem;
    line-height: 1.6;
}

.about-section {
    margin-top: 3.625rem;
}

.about-section:first-of-type {
    margin-top: 3.4375rem;
}

.about-heading {
    margin-bottom: 0.25rem;
    line-height: 1.4;
}

.about-heading:has(+ .about-entry) {
    margin-bottom: 1.4375rem;
}

.about-paragraph + .about-paragraph {
    margin-top: 0.75rem;
}

.about-entry {
    display: flex;
}

.about-entry + .about-entry {
    margin-top: 1.5625rem;
}

.about-section-dense .about-entry + .about-entry {
    margin-top: 0.625rem;
}

.about-period {
    flex-shrink: 0;
    width: 8.125rem;
}

/* The arrow sits after the last word, like a superscript, even when the title wraps. */
.about-arrow {
    display: inline-block;
    width: 0.875rem;
    height: 0.875rem;
    margin-left: 0.1875rem;
    vertical-align: 0.0625rem;
}

.about-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 0.625rem;
    margin-top: 1.5625rem;
}

.about-gallery img {
    width: 9.375rem;
    height: 5.625rem;
    border-radius: 0.5rem;
}

.about-card {
    display: flex;
    align-items: center;
    height: 5.625rem;
    margin-top: 1.5625rem;
    overflow: hidden;
    border-radius: 0.5rem;
}

.about-card img {
    flex-shrink: 0;
    width: 9.5rem;
    height: 100%;
}

.about-card-body {
    min-width: 0;
    padding: 0 1.25rem 0 1.3125rem;
}

@media (max-width: 639px) {
    .about {
        padding-block: 2rem;
    }

    .about-arrow {
        display: none;
    }

    .about-period {
        width: 7.1875rem;
    }

    .about-gallery {
        flex-direction: column;
    }

    .about-card {
        flex-direction: column;
        align-items: stretch;
        height: auto;
    }

    .about-card img {
        width: 100%;
        height: 5.625rem;
    }

    .about-card-body {
        padding: 0.75rem 1.25rem 1rem;
    }
}
