/* Small-screen overrides only; the original desktop styles stay untouched. */
@media screen and (max-width: 600px) {
    body {
        padding: 0;
    }

    #outer {
        border: 0;
        font-size: 16px;
        line-height: 1.7;
        overflow-wrap: break-word;
    }

    #outer > #content {
        padding-left: clamp(18px, 5.5vw, 24px);
        padding-right: clamp(18px, 5.5vw, 24px);
    }

    #outer > #content #content {
        padding-left: 0;
        padding-right: 0;
    }

    #person-info {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-top: 22px;
    }

    #person-info > img {
        display: block;
        float: none !important;
        width: 180px;
        max-width: 100%;
        height: auto;
        margin: 0 auto 18px !important;
    }

    #person-info .profile-details {
        font-size: 14px;
        line-height: 1.5;
        margin-bottom: 8px;
        text-align: center;
    }

    #person-info font[size="6"] {
        font-size: 30px;
        line-height: 1.25;
    }

    #person-info a {
        display: inline-block;
        padding: 4px 0;
        text-decoration: underline;
        text-underline-offset: 3px;
    }

    #person-info .profile-details > br,
    #person-info .profile-identity > br,
    #person-info .profile-resources > br,
    #person-info .profile-desktop-only {
        display: none;
    }

    #person-info .profile-mobile-only {
        display: inline !important;
    }

    #person-info .profile-identity,
    #person-info .profile-identity > b,
    #person-info .profile-email {
        display: block;
    }

    #person-info .profile-identity > b {
        margin-bottom: 6px;
    }

    #person-info .profile-email {
        margin-top: 14px;
    }

    #person-info .profile-resources {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 2px 14px;
        margin-top: 8px;
    }

    #person-info .profile-resources a {
        white-space: nowrap;
    }

    #outer p {
        text-align: left;
    }

    #about hr {
        margin: 8px 0 24px;
    }

    #about p {
        font-size: 14px;
        line-height: 1.75;
        margin-bottom: 28px;
    }

    #content.contentarea {
        font-size: 13px;
        line-height: 1.45;
    }

    #content.contentarea > h4 {
        display: block;
        margin: 16px 0 4px;
        padding-right: 0;
        background: none;
        font-size: 18px;
        line-height: 1.4;
    }

    #content.contentarea > h4 + br {
        display: none;
    }

    /* Keep the original list markup, including its nested journal lists. */
    #content.contentarea ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    #content.contentarea p.pubEntry:empty {
        display: none;
    }

    /* The title already includes the venue abbreviation; retain full names on desktop. */
    .publication-venue-full {
        display: none;
    }

    .publication-mobile-rate {
        display: inline !important;
    }

    #conference-example li,
    [id="journal-example"] li {
        margin: 10px 0 0;
        padding-bottom: 10px;
        font-size: 13px;
        line-height: 1.45;
    }

    #conference-example li > b:first-child,
    [id="journal-example"] li > b:first-child {
        display: block;
        margin-bottom: 4px;
        font-size: 13.5px;
        line-height: 1.4;
    }

    #conference-example li > b:first-child + br,
    [id="journal-example"] li > b:first-child + br {
        display: none;
    }

    #conference-example li a,
    [id="journal-example"] li a {
        display: inline-block;
        padding: 3px 1px;
        font-size: 13px;
        line-height: 1.5;
        text-decoration: underline;
        text-underline-offset: 3px;
    }

    #conference-example li > small,
    [id="journal-example"] li > small {
        display: block;
        margin-top: 2px;
        color: #666666;
        font-size: 12px;
        line-height: 1.45;
    }
}
