.newsroom,.news-article {
    padding-bottom: 56px
}

.newsletter-streams {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin: 0 0 32px
}

.newsletter-streams button {
    font: inherit;
    text-align: left;
    padding: 28px;
    background: var(--paper);
    border: 1px solid var(--line);
    color: var(--ink);
    cursor: pointer
}

.newsletter-streams button[aria-pressed="true"] {
    border-color: var(--accent);
    box-shadow: inset 0 3px var(--accent)
}

.newsletter-streams button>span {
    font-size: 11px;
    letter-spacing: .1em;
    color: var(--accent)
}

.newsletter-streams strong {
    display: block;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.25;
    margin: 14px 0
}

.newsletter-streams p {
    font-size: 15px;
    line-height: 1.6;
    color: var(--muted);
    margin: 0
}

.news-stream-links {
    display: flex;
    gap: 26px;
    flex-wrap: wrap;
    margin: 0 0 24px;
    font-size: 14px
}

.news-card img {
    object-fit: contain!important;
    padding: 8px
}

.article-image img {
    height: auto;
    aspect-ratio: auto;
    max-height: none
}

.article-image a {
    display: block
}

.article-image a:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 4px
}

@media(max-width: 760px) {
    .newsletter-streams {
        grid-template-columns:1fr;
        gap: 14px
    }

    .newsletter-streams button {
        padding: 22px
    }

    .newsletter-streams strong {
        font-size: 22px
    }
}

.newsroom-intro {
    max-width: 850px;
    margin: 12px 0 40px
}

.newsroom-intro h1 {
    font-size: clamp(38px,4.6vw,64px);
    line-height: 1.06;
    letter-spacing: -.045em;
    margin: 18px 0 24px
}

.newsroom-intro>p {
    max-width: 65ch;
    font-size: 17px;
    line-height: 1.75;
    color: var(--muted)
}

.news-filters {
    display: grid;
    grid-template-columns: 1fr .7fr 1.3fr;
    gap: 24px;
    padding: 24px 0;
    border-block:1px solid var(--line)}

.news-filters label {
    font-size: 12px;
    letter-spacing: .04em;
    display: grid;
    gap: 10px;
    color: var(--muted)
}

.news-filters input,.news-filters select {
    font: inherit;
    font-size: 15px;
    padding: 12px;
    border: 1px solid var(--line);
    background: var(--paper);
    color: var(--ink);
    width: 100%;
    min-width: 0;
    border-radius: 0
}

#news-count {
    font-size: 13px;
    color: var(--muted);
    margin: 22px 0
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 36px 28px
}

.news-card {
    border-bottom: 1px solid var(--line);
    min-width: 0
}

.news-card[hidden] {
    display: none
}

.news-card>a {
    display: block;
    text-decoration: none;
    color: var(--ink)
}

.news-card img,.news-wordmark {
    width: 100%;
    height: 240px;
    object-fit: cover;
    background: #e9e8f1;
    display: block
}

.news-card-body {
    padding: 22px 0 26px
}

.news-meta {
    font-size: 12px;
    line-height: 1.65;
    color: var(--muted)
}

.news-card h2 {
    font-size: 23px;
    line-height: 1.28;
    font-weight: 500;
    letter-spacing: -.02em;
    margin: 12px 0 23px
}

.news-card a:hover h2 {
    color: var(--accent)
}

.news-card .text-button {
    font-size: 13px
}

.news-wordmark {
    background: #172744;
    color: #dbccff;
    padding: 38px;
    font-size: 54px;
    line-height: .95;
    letter-spacing: -.05em
}

.news-wordmark span {
    font-size: 14px;
    letter-spacing: .12em
}

.archive-note {
    max-width: 95ch;
    font-size: 13px;
    line-height: 1.75;
    color: var(--muted);
    margin: 38px 0
}

.home-news {
    padding: 24px 0 62px
}

.home-news .news-card h2 {
    font-size: 21px
}

.home-news .news-card img {
    height: 210px
}

.article-heading {
    position: static;
    background: transparent;
    display: block;
    max-width: 1000px;
    padding: 8px 0 38px;
    height: auto;
    border: 0
}

.article-heading>.eyebrow {
    display: block;
    margin: 34px 0 18px
}

.article-heading h1 {
    font-size: clamp(34px,3.8vw,56px);
    line-height: 1.12;
    letter-spacing: -.035em;
    max-width: 26ch;
    margin-bottom: 25px
}

.article-layout {
    display: grid;
    grid-template-columns: minmax(0,780px) 1fr;
    gap: 70px;
    align-items: start
}

.article-body {
    min-width: 0
}

.article-body p,.article-body li {
    font-size: 17px;
    line-height: 1.85;
    color: var(--muted)
}

.article-body p {
    margin: 0 0 22px
}

.article-body h2 {
    font-size: 27px;
    line-height: 1.3;
    font-weight: 500;
    margin: 32px 0 18px;
    letter-spacing: -.02em
}

.article-body ul {
    padding-left: 24px;
    margin-bottom: 25px
}

.article-body li {
    margin-bottom: 12px
}

.article-image {
    margin: 28px 0
}

.article-image img {
    width: 100%;
    max-height: 650px;
    object-fit: contain;
    background: var(--surface-soft);
    display: block
}

.article-image figcaption,.article-source {
    font-size: 12px!important;
    line-height: 1.65!important;
    color: var(--muted);
    padding-top: 10px;
    overflow-wrap: anywhere
}

.article-aside {
    position: sticky;
    top: 112px;
    border-top: 2px solid var(--accent);
    padding-top: 25px
}

.article-aside h2 {
    font-size: 27px;
    font-weight: 500;
    line-height: 1.2;
    margin: 16px 0
}

.article-aside p {
    font-size: 14px;
    line-height: 1.7;
    color: var(--muted)
}

.article-aside>a {
    display: block;
    padding: 14px 0;
    border-bottom: 1px solid var(--line);
    font-size: 13px
}

.article-aside button {
    margin-top: 25px
}

.archive-context {
    background: var(--surface-soft);
    border-left: 3px solid var(--accent);
    padding: 20px 24px;
    margin: 0 0 30px
}

.archive-context p {
    font-size: 13px;
    line-height: 1.75;
    margin: 0 0 8px
}

.archive-context p:last-child {
    margin: 0
}

.related-news {
    padding: 40px 0
}

.related-news>h2,.connected-services h2 {
    font-size: 32px;
    font-weight: 500;
    letter-spacing: -.03em;
    margin: 14px 0 28px
}

.related-news .news-grid {
    grid-template-columns: repeat(2,1fr)
}

.connected-services {
    padding: 35px 0 55px;
    border-top: 1px solid var(--line)
}

.connected-services>div {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 25px;
    margin: 0 0 24px
}

.connected-services>div>a {
    font-size: 20px;
    padding: 22px 0;
    border-bottom: 1px solid var(--line)
}

.resource-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px
}

.resource-grid article {
    padding: 30px;
    border: 1px solid var(--line)
}

.resource-grid h2 {
    font-size: 29px;
    line-height: 1.2;
    margin: 18px 0
}

.resource-grid p,.contact-routes p {
    font-size: 16px;
    line-height: 1.7;
    color: var(--muted)
}

.resource-grid .button {
    margin-top: 22px
}

.contact-routes {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 35px;
    margin-top: 30px
}

.contact-routes article {
    border-top: 1px solid var(--line);
    padding-top: 25px
}

.contact-routes h3 {
    font-size: 22px;
    line-height: 1.3
}

.contact-routes a,.contact-routes button {
    font-size: 14px
}

.inquiry-extra {
    margin-top: 20px
}

.inquiry-extra p {
    font-size: 13px;
    line-height: 1.6
}

.inquiry-extra a {
    display: inline-flex;
    margin: 8px 10px 0 0
}

.inquiry-notice {
    font-size: 12px;
    line-height: 1.6;
    margin: 15px 0
}

.inquiry-consent {
    display: flex!important;
    gap: 10px;
    align-items: start;
    font-size: 13px!important;
    line-height: 1.6
}

.inquiry-consent input {
    width: 18px!important;
    min-height: 18px!important;
    margin: 3px 0!important;
    flex-shrink: 0
}

#copy-status {
    font-size: 13px;
    margin-top: 12px
}

@media(max-width: 1000px) {
    .news-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .article-layout {
        grid-template-columns: minmax(0,1fr) 240px;
        gap: 30px
    }

    .home-news .news-grid {
        grid-template-columns: repeat(3,minmax(0,1fr))
    }

    .home-news .news-card h2 {
        font-size: 18px
    }

    .home-news .news-card img {
        height: 160px
    }
}

@media(max-width: 760px) {
    .news-grid,.home-news .news-grid,.related-news .news-grid,.article-layout,.resource-grid,.contact-routes {
        grid-template-columns:1fr
    }

    .news-filters {
        grid-template-columns: 1fr 1fr;
        gap: 16px
    }

    .news-filters label:last-child {
        grid-column: 1/-1
    }

    .news-card img,.home-news .news-card img {
        height: 230px
    }

    .news-card h2,.home-news .news-card h2 {
        font-size: 23px
    }

    .home-news .news-card:nth-child(n+2) {
        display: none
    }

    .article-heading h1 {
        font-size: 35px
    }

    .article-aside {
        position: static
    }

    .article-body p,.article-body li {
        font-size: 16px
    }

    .article-body h2 {
        font-size: 25px
    }

    .connected-services>div {
        grid-template-columns: 1fr;
        gap: 0
    }

    .connected-services>div>a {
        font-size: 18px
    }

    .resource-grid article {
        padding: 24px
    }

    .newsroom-intro h1 {
        font-size: 39px
    }

    .newsroom-intro>p {
        font-size: 16px
    }

    .article-heading {
        padding-top: 0
    }

    .news-card-body {
        padding-bottom: 22px
    }
}
