/* Shared public-page corrections. Desktop keeps the original alignment. */
@media (max-width: 767px) {
    :root {
        --public-prose-align: start;
        --public-title-bottom: 0px;
    }

    /* Bootstrap and rich-text content can also request justification. */
    #wrapper .text-justify:not([style*="text-align:center" i]):not([style*="text-align: center" i]),
    #wrapper [align="justify" i],
    #wrapper [style*="text-align:justify" i],
    #wrapper [style*="text-align: justify" i] {
        text-align: start !important;
        text-align-last: auto !important;
    }

    body:not(.home-page) .contents .home-row-head,
    body:not(.home-page) .contents .home-row-head-topic {
        margin-bottom: 24px !important;
    }

    body:not(.home-page) .contents .headertitle {
        margin-bottom: 0 !important;
        padding-bottom: 0;
    }

    /* Keep the position heading's spacing above the winner cards. */
    body:not(.home-page) .contents .home-row-head + .wt-new.winners-list {
        top: 0;
    }

    body:not(.home-page) .contents .home-row-head .heading,
    body:not(.home-page) .contents .home-row-head-topic .heading {
        margin-bottom: 0 !important;
        text-align: center;
    }

    body:not(.home-page) .contents .home-row-head > ul {
        padding-bottom: 0 !important;
    }

    body:not(.home-page) .contents .home-row-head ~ .article-border {
        margin-top: 0;
    }

    body:not(.home-page) .contents .home-row-head ~ .home-about-text {
        top: auto !important;
        margin-top: 0 !important;
    }

    body:not(.home-page) .contents .post-video .video-container {
        padding-top: 0;
    }

    /* These template line breaks add empty rows between a title and its content. */
    body:not(.home-page) .contents .home-row-head + br,
    body:not(.home-page) .contents .home-row-head + br + br {
        display: none;
    }
}
