.article-listing-header .lead {
    max-width: 76rem;
    margin-bottom: 2.4rem;
}

.article-search {
    max-width: 84rem;
    margin-bottom: 0;
}

.article-search__controls {
    display: flex;
    align-items: stretch;
    gap: 1.2rem;
}

.article-search input[type="search"] {
    min-width: 0;
    height: 6rem;
    flex: 1;
    margin: 0;
    padding-right: 1.6rem;
    padding-left: 1.6rem;
    background-color: #ffffff;
}

.article-search .btn {
    margin: 0;
}

.article-search .btn[hidden] {
    display: none;
}

.article-masonry .grid-sizer,
.article-masonry .masonry__brick {
    width: 50%;
}

.article-masonry .entry__thumb img {
    width: 100%;
    margin: 0;
}

.article-masonry .article-loading,
.article-masonry .article-message {
    width: 100% !important;
    padding: 4rem 3.2rem;
    margin-bottom: 4rem;
    background: #ffffff;
    color: rgba(0, 0, 0, 0.55);
    text-align: center;
}

.article-masonry .article-message.is-error,
.article-body .article-message.is-error {
    border-left: 4px solid #b94a48;
    color: #8a2f2d;
}

.article-card--text .entry__text {
    border-top: 4px solid #000000;
}

.article-pagination {
    margin-top: 1.6rem;
    margin-bottom: 6.4rem;
}

.legacy-series {
    padding-top: 4rem;
    padding-bottom: 10rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.legacy-series h2,
.legacy-series p {
    margin-top: 0;
}

.legacy-series__links {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem 2.4rem;
}

.legacy-series__links a {
    display: inline-block;
    padding-bottom: .4rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.25);
    color: #000000;
    font-family: "Heebo", sans-serif;
    font-weight: 500;
}

.legacy-series__links a:hover,
.legacy-series__links a:focus,
.article-back-link:hover,
.article-back-link:focus {
    border-color: #33998a;
    color: #267367;
}

.article-back-link {
    display: inline-block;
    margin-bottom: 3.2rem;
    padding-bottom: .4rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    color: rgba(0, 0, 0, 0.6);
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: .18rem;
    text-transform: uppercase;
}

.article-page .entry__media {
    margin-bottom: 5.6rem;
}

.article-page .entry__post-thumb img {
    display: block;
    width: 100%;
    margin: 0;
}

.article-body {
    overflow-wrap: anywhere;
}

.article-body > :first-child {
    margin-top: 0;
}

.article-body pre {
    color: #1a1a1a;
    text-shadow: none;
}

.article-body pre code,
.article-body pre code * {
    color: inherit !important;
    text-shadow: none !important;
}

.article-body table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

.article-body th,
.article-body td {
    min-width: 9rem;
    text-align: left;
    vertical-align: top;
}

.article-body .article-image-blocked {
    display: block;
    padding: 1.6rem;
    border-left: 4px solid #b94a48;
    background: #f3f3f3;
    color: #8a2f2d;
}

@media screen and (max-width: 800px) {
    .article-masonry .grid-sizer,
    .article-masonry .masonry__brick {
        width: 100%;
        float: none;
    }

    .article-search__controls {
        flex-wrap: wrap;
    }

    .article-search input[type="search"] {
        flex-basis: 100%;
    }

    .article-search .btn {
        flex: 1;
    }

    .legacy-series {
        padding-bottom: 6.4rem;
    }
}

@media screen and (max-width: 500px) {
    .article-search__controls {
        gap: .8rem;
    }

    .article-search .btn {
        height: 5.2rem;
        line-height: 4.8rem;
        padding: 0 2rem;
    }

    .article-page .entry__media {
        margin-bottom: 4rem;
    }
}
