/*
 * The Doe Network - Shared Professional Public-Site Styles
 *
 * Originally created for the homepage and now shared with Site Updates.
 * New public pages can reuse the existing dn-home/dn-updates visual system,
 * with page-specific rules added here under a unique page wrapper.
 *
 * Shared header/menu/footer styles remain in their own shared stylesheets.
 */

.dn-home {
    background: #FFFFFF;
    color: #24313A;
    font-family: "Open Sans", Arial, sans-serif;
    line-height: 1.6;
}

.dn-home *,
.dn-home *::before,
.dn-home *::after {
    box-sizing: border-box;
}

.dn-home-section {
    padding: 42px 0;
}

.dn-home-inner {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto;
}

.dn-home-inner-narrow {
    width: min(960px, calc(100% - 40px));
}

.dn-home h1,
.dn-home h2,
.dn-home h3 {
    font-family: "Roboto", Arial, sans-serif;
    color: #147CA6;
    margin-top: 0;
}

.dn-home a {
    color: #8A6500;
}

.dn-home a:hover,
.dn-home a:focus {
    color: #5C4300;
}

/* Welcome */
.dn-home-intro {
    padding-top: 38px;
    text-align: center;
}

.dn-home-eyebrow {
    margin: 0 0 7px;
    color: #5E6D76;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.dn-home-intro h1 {
    margin-bottom: 6px;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.15;
}

.dn-home-tagline {
    margin: 0 auto 20px;
    color: #52616A;
    font-size: 15px;
    font-style: italic;
}

.dn-home-lead {
    max-width: 900px;
    margin: 0 auto 28px;
    font-size: 16px;
}

.dn-home-subheading {
    margin-bottom: 16px;
    font-size: 20px;
}

.dn-mission-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    text-align: left;
}

.dn-mission-card {
    position: relative;
    min-height: 155px;
    padding: 20px 20px 18px;
    background: #F4F8FA;
    border: 1px solid #D9E7ED;
    border-radius: 7px;
}

.dn-mission-number {
    display: block;
    margin-bottom: 5px;
    color: #147CA6;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}

.dn-mission-card h3 {
    margin-bottom: 7px;
    font-size: 17px;
}

.dn-mission-card p {
    margin: 0;
    font-size: 13px;
}

/* Shared section heading */
.dn-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 20px;
}

.dn-section-kicker {
    flex: 0 0 4px;
    width: 4px;
    height: 36px;
    margin-top: 3px;
    background: #147CA6;
    border-radius: 3px;
}

.dn-section-heading h2 {
    margin: 0;
    font-size: 23px;
    line-height: 1.25;
}

.dn-section-heading p {
    margin: 4px 0 0;
    color: #64737C;
    font-size: 13px;
}

.dn-section-heading-centered {
    justify-content: center;
    text-align: left;
}

/* Search */
.dn-home-search-section {
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
    border-bottom: 1px solid #E3ECEF;
}

.dn-home .home-simple-search {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 20px;
    background: #FFFFFF;
    border: 1px solid #D9E4E9;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(23, 37, 54, .06);
}

.dn-home .home-search-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px 16px;
}

.dn-home .home-search-field label {
    display: block;
    margin-bottom: 5px;
    color: #33444E;
    font-size: 12px;
    font-weight: 700;
}

.dn-home .home-search-field input,
.dn-home .home-search-field select {
    width: 100%;
    min-height: 38px;
    padding: 8px 10px;
    color: #24313A;
    font: inherit;
    font-size: 13px;
    background: #FFFFFF;
    border: 1px solid #BFCED5;
    border-radius: 4px;
}

.dn-home .home-search-field input:focus,
.dn-home .home-search-field select:focus {
    outline: 2px solid rgba(20, 124, 166, .22);
    outline-offset: 1px;
    border-color: #147CA6;
}

.dn-home .home-search-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 18px;
}

.dn-home .home-search-actions button {
    min-height: 38px;
    padding: 8px 20px;
    color: #FFFFFF;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    background: #147CA6;
    border: 1px solid #106B90;
    border-radius: 4px;
    cursor: pointer;
}

.dn-home .home-search-actions button:hover,
.dn-home .home-search-actions button:focus {
    background: #0F6B91;
}

.dn-home .home-search-actions a {
    font-size: 13px;
    font-weight: 700;
}

/* Featured Cases */
.dn-featured-section {
    padding-top: 34px;
    padding-bottom: 38px;
}

/* Support / Facebook */
.dn-support-section {
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
    border-bottom: 1px solid #E3ECEF;
}

.dn-home .home-action-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    width: min(900px, 100%);
    margin: 0 auto;
}

.dn-home .home-action-box {
    max-width: none;
    margin: 0;
    padding: 24px;
    text-align: center;
    background: #FFFFFF;
    border: 1px solid #D9E4E9;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(23, 37, 54, .05);
}

.dn-home .home-action-button {
    display: block;
    width: min(330px, 100%);
    height: auto;
    margin: 0 auto 17px;
}

.dn-home .home-action-text {
    color: #3F4F58;
    font-size: 13px;
    text-align: left;
}

.dn-home .home-action-text p {
    margin: 0 0 10px;
}

.dn-home .home-action-text p:last-child {
    margin-bottom: 0;
}

/* Important information */
.dn-information-section {
    background: #FFFFFF;
}

.dn-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.dn-info-card {
    padding: 22px;
    background: #F8FAFB;
    border: 1px solid #DCE6EA;
    border-left: 4px solid #147CA6;
    border-radius: 6px;
}

.dn-info-card h3 {
    margin-bottom: 10px;
    font-size: 17px;
}

.dn-info-card p {
    margin: 0 0 11px;
    font-size: 13px;
}

.dn-info-card p:last-child {
    margin-bottom: 0;
}

.dn-info-emphasis {
    color: #172536;
    font-weight: 800;
}

/* Remembrance */
.dn-remembrance-section {
    padding-top: 30px;
    padding-bottom: 30px;
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
}

.dn-remembrance {
    display: flex;
    align-items: center;
    gap: 26px;
    width: min(700px, 100%);
    margin: 0 auto;
}

.dn-remembrance img {
    flex: 0 0 auto;
    width: 118px;
    height: 118px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid #FFFFFF;
    box-shadow: 0 2px 10px rgba(23, 37, 54, .12);
}

.dn-remembrance-copy {
    text-align: left;
}

.dn-remembrance-copy h2 {
    margin-bottom: 6px;
    font-size: 21px;
}

.dn-remembrance-copy p {
    margin: 0 0 9px;
    font-size: 13px;
}

.dn-text-link {
    font-size: 13px;
    font-weight: 700;
}

/* Closing */
.dn-home-closing {
    padding: 15px 0;
    text-align: center;
    background: #172536;
}

.dn-home-closing p {
    margin: 0;
    color: #FFFFFF;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .025em;
}

/* Responsive */
@media screen and (max-width: 800px) {
    .dn-home-section {
        padding: 34px 0;
    }

    .dn-mission-grid,
    .dn-home .home-search-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dn-info-grid {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 650px) {
    .dn-home-inner,
    .dn-home-inner-narrow {
        width: min(100% - 28px, 1120px);
    }

    .dn-mission-grid,
    .dn-home .home-search-fields,
    .dn-home .home-action-row {
        grid-template-columns: 1fr;
    }

    .dn-home .home-simple-search,
    .dn-home .home-action-box,
    .dn-info-card {
        padding: 17px;
    }

    .dn-home .home-search-actions {
        flex-direction: column;
        gap: 10px;
    }

    .dn-home .home-search-actions button {
        width: 100%;
    }

    .dn-remembrance {
        flex-direction: column;
        gap: 14px;
        text-align: center;
    }

    .dn-remembrance-copy {
        text-align: center;
    }

    .dn-section-heading-centered {
        justify-content: flex-start;
    }
}

/* ========================================================================
   SITE UPDATES PAGE
   Shared public-site additions. These rules are scoped to .dn-updates so
   they do not change the homepage.
   ======================================================================== */

.dn-updates {
    background: #FFFFFF;
    color: #24313A;
    font-family: "Open Sans", Arial, sans-serif;
    line-height: 1.6;
}

.dn-updates *,
.dn-updates *::before,
.dn-updates *::after { box-sizing: border-box; }

.dn-updates-inner {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}


.dn-updates h1,
.dn-updates h2,
.dn-updates h3 {
    font-family: "Roboto", Arial, sans-serif;
    color: #147CA6;
}

.dn-updates a { color: #8A6500; }
.dn-updates a:hover,
.dn-updates a:focus { color: #5C4300; }

.dn-updates-hero {
    padding: 38px 0 32px;
    text-align: center;
}

.dn-updates-eyebrow {
    margin: 0 0 7px;
    color: #5E6D76;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.dn-updates-hero h1 {
    margin: 0 0 8px;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
}

.dn-updates-lead {
    max-width: 720px;
    margin: 0 auto 8px;
    font-size: 15px;
}

.dn-refresh-note {
    margin: 0;
    color: #65757E;
    font-size: 12px;
    font-style: italic;
}

.dn-updates-section { padding: 36px 0; }

.dn-updates-highlights {
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
    border-bottom: 1px solid #E3ECEF;
}

.dn-updates-highlights .dn-updates-card-grid,
.dn-update-history .dn-update-list {
    width: 100%;
}

.dn-updates-card-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    align-items: start;
}

.dn-updates-card {
    padding: 22px;
    background: #FFFFFF;
    border: 1px solid #D9E4E9;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(23, 37, 54, .05);
}

.dn-updates-card h2 {
    margin: 0 0 12px;
    font-size: 20px;
}

.dn-updates-card p {
    margin: 0 0 12px;
    font-size: 13px;
}

.dn-donation-mark {
    margin: 0 0 12px;
}

.dn-donation-mark img {
    display: block;
    width: 60px;
    height: 60px;
}

.dn-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    align-items: center;
}

.dn-primary-link {
    display: inline-block;
    padding: 7px 13px;
    color: #FFFFFF !important;
    font-weight: 700;
    text-decoration: none !important;
    background: #147CA6;
    border: 1px solid #106B90;
    border-radius: 4px;
}

.dn-primary-link:hover,
.dn-primary-link:focus {
    background: #0F6B91;
}

.dn-announcements p {
    padding-bottom: 11px;
    margin-bottom: 11px;
    border-bottom: 1px solid #E5ECEF;
}

.dn-announcements p:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.dn-update-history { background: #FFFFFF; }

.dn-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 22px;
}

.dn-section-kicker {
    flex: 0 0 4px;
    width: 4px;
    height: 38px;
    margin-top: 3px;
    background: #147CA6;
    border-radius: 3px;
}

.dn-section-heading h2 {
    margin: 0;
    font-size: 23px;
}

.dn-section-heading p {
    margin: 3px 0 0;
    color: #64737C;
    font-size: 13px;
}

.dn-update-list {
    padding: 0 22px 18px;
    background: #FFFFFF;
    border: 1px solid #DCE6EA;
    border-radius: 8px;
}

.dn-update-list .dn-update-date {
    margin: 24px -22px 10px;
    padding: 9px 18px;
    color: #172536 !important;
    font-size: 16px;
    line-height: 1.3;
    background: #EAF3F7;
    border-top: 1px solid #D2E3EA;
    border-bottom: 1px solid #D2E3EA;
}

.dn-update-list .dn-update-date:first-child {
    margin-top: 0;
    border-radius: 7px 7px 0 0;
    border-top: 0;
}

.dn-update-list p {
    position: relative;
    margin: 0;
    padding: 7px 4px 7px 17px;
    font-size: 13px;
    line-height: 1.55;
    border-bottom: 1px solid #EEF2F4;
}

.dn-update-list p::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 15px;
    width: 5px;
    height: 5px;
    background: #147CA6;
    border-radius: 50%;
}

.dn-update-list p:last-child { border-bottom: 0; }

.dn-update-list a {
    font-weight: 600;
    overflow-wrap: anywhere;
}

.dn-updates-closing {
    padding: 15px 0;
    text-align: center;
    background: #172536;
}

.dn-updates-closing p {
    margin: 0;
    color: #FFFFFF;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .025em;
}

@media screen and (max-width: 800px) {
    .dn-updates-card-grid { grid-template-columns: 1fr; }
    .dn-updates-section { padding: 30px 0; }
}

@media screen and (max-width: 600px) {
    .dn-updates-inner { width: min(100% - 28px, 1180px); }
    .dn-updates-card { padding: 17px; }
    .dn-update-list { padding-left: 14px; padding-right: 14px; }
    .dn-update-list .dn-update-date {
        margin-left: -14px;
        margin-right: -14px;
        padding-left: 14px;
        padding-right: 14px;
    }
    .dn-update-list p {
        padding-left: 14px;
        font-size: 12.5px;
    }
}

/* ========================================================================
   RESOURCES PAGE
   Shared public-site additions. Scoped to .dn-resources.
   ======================================================================== */

.dn-resources {
    background: #FFFFFF;
    color: #24313A;
    font-family: "Open Sans", Arial, sans-serif;
    line-height: 1.6;
}

.dn-resources *,
.dn-resources *::before,
.dn-resources *::after { box-sizing: border-box; }

.dn-resources-inner {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.dn-resources h1,
.dn-resources h2,
.dn-resources h3 {
    font-family: "Roboto", Arial, sans-serif;
    color: #147CA6;
}

.dn-resources a { color: #8A6500; }
.dn-resources a:hover,
.dn-resources a:focus { color: #5C4300; }

.dn-resources-hero {
    padding: 38px 0 32px;
    text-align: center;
}

.dn-resources-eyebrow {
    margin: 0 0 7px;
    color: #5E6D76;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.dn-resources-hero h1 {
    margin: 0 0 8px;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
}

.dn-resources-lead {
    max-width: 760px;
    margin: 0 auto;
    font-size: 15px;
}

.dn-resources-section { padding: 36px 0; }

.dn-resources-featured {
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
    border-bottom: 1px solid #E3ECEF;
}

.dn-resources-heading { margin-bottom: 22px; }

.dn-resource-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.dn-resource-card {
    padding: 21px;
    background: #FFFFFF;
    border: 1px solid #D9E4E9;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(23,37,54,.05);
}

.dn-resource-card h3 {
    margin: 0 0 8px;
    font-size: 17px;
}

.dn-resource-card p {
    margin: 0 0 11px;
    font-size: 13px;
}

.dn-resource-card a { font-weight: 700; }

.dn-resource-card-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
}

.dn-alpha-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 0 25px;
    padding: 13px;
    background: #F4F8FA;
    border: 1px solid #DCE6EA;
    border-radius: 8px;
}

.dn-alpha-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: #147CA6;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    background: #FFFFFF;
    border: 1px solid #D3E1E7;
    border-radius: 4px;
}

.dn-alpha-nav a:hover,
.dn-alpha-nav a:focus {
    color: #FFFFFF;
    background: #147CA6;
    border-color: #147CA6;
}

.dn-resource-groups {
    display: grid;
    gap: 17px;
}

.dn-resource-group {
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #DCE6EA;
    border-radius: 8px;
}

.dn-resource-group h2 {
    margin: 0;
    padding: 9px 17px;
    color: #172536;
    font-size: 17px;
    background: #EAF3F7;
    border-bottom: 1px solid #D2E3EA;
}

.dn-resource-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    margin: 0;
    padding: 8px 18px 13px 38px;
}

.dn-resource-list li {
    padding: 7px 4px;
    font-size: 13px;
    line-height: 1.45;
    border-bottom: 1px solid #EEF2F4;
    break-inside: avoid;
}

.dn-resource-list a {
    font-weight: 600;
    overflow-wrap: anywhere;
}

.dn-back-to-top {
    margin: 22px 0 0;
    text-align: right;
    font-size: 13px;
}

.dn-resources-closing {
    padding: 15px 0;
    text-align: center;
    background: #172536;
}

.dn-resources-closing p {
    margin: 0;
    color: #FFFFFF;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .025em;
}

@media screen and (max-width: 800px) {
    .dn-resource-list { grid-template-columns: 1fr; }
    .dn-resources-section { padding: 30px 0; }
}

@media screen and (max-width: 650px) {
    .dn-resources-inner { width: min(100% - 28px, 1180px); }
    .dn-resource-card-grid { grid-template-columns: 1fr; }
    .dn-resource-card { padding: 17px; }
    .dn-alpha-nav { gap: 6px; padding: 10px; }
    .dn-alpha-nav a { width: 31px; height: 31px; }
    .dn-resource-list { padding-left: 34px; padding-right: 12px; }
    .dn-resource-list li { font-size: 12.5px; }
}

/* Keep unusually long resource titles from dominating the directory. */
.dn-resource-list a {
    display: block;
    position: relative;
    padding-right: 104px;
}

.dn-resource-list a .dn-resource-visit {
    position: absolute;
    top: 1px;
    right: 0;
    color: #5E6D76;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .02em;
    white-space: nowrap;
}

.dn-resource-list a {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

@media screen and (max-width: 650px) {
    .dn-resource-list a {
        padding-right: 0;
        -webkit-line-clamp: 4;
        line-clamp: 4;
    }

    .dn-resource-list a .dn-resource-visit {
        position: static;
        display: block;
        margin-top: 3px;
    }
}


/* Back-to-top link at the end of each alphabetical resource section. */
.dn-group-back-top {
    margin: 0;
    padding: 8px 17px 10px;
    text-align: right;
    background: #FAFCFD;
    border-top: 1px solid #EEF2F4;
}

.dn-group-back-top a {
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.dn-group-back-top a:hover,
.dn-group-back-top a:focus {
    text-decoration: underline;
}

/* ========================================================================
   MEDIA CENTER
   Shared public-site additions. Scoped to .dn-media.
   ======================================================================== */

.dn-media {
    background: #FFFFFF;
    color: #24313A;
    font-family: "Open Sans", Arial, sans-serif;
    line-height: 1.6;
}

.dn-media *,
.dn-media *::before,
.dn-media *::after { box-sizing: border-box; }

.dn-media-inner {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.dn-media h1,
.dn-media h2,
.dn-media h3 {
    font-family: "Roboto", Arial, sans-serif;
    color: #147CA6;
}

.dn-media a { color: #8A6500; }
.dn-media a:hover,
.dn-media a:focus { color: #5C4300; }

.dn-media-hero {
    padding: 38px 0 32px;
    text-align: center;
}

.dn-media-eyebrow,
.dn-media-card-kicker {
    margin: 0 0 7px;
    color: #5E6D76;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.dn-media-hero h1 {
    margin: 0 0 8px;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
}

.dn-media-lead {
    max-width: 790px;
    margin: 0 auto;
    font-size: 15px;
}

.dn-media-section { padding: 36px 0; }

.dn-media-contact-section {
    background: #F4F8FA;
    border-top: 1px solid #E3ECEF;
    border-bottom: 1px solid #E3ECEF;
}

.dn-media-contact-card {
    padding: 26px;
    background: #FFFFFF;
    border: 1px solid #D9E4E9;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(23,37,54,.05);
}

.dn-media-contact-card > div:first-child {
    max-width: 850px;
    margin-bottom: 20px;
}

.dn-media-contact-card h2 {
    margin: 0 0 8px;
    font-size: 22px;
}

.dn-media-contact-card p { margin-top: 0; }

.dn-media-contact-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.dn-media-contact-option {
    padding: 17px 18px;
    background: #F7FAFB;
    border: 1px solid #E0E8EC;
    border-radius: 6px;
}

.dn-media-contact-option h3 {
    margin: 0 0 4px;
    font-size: 15px;
}

.dn-media-contact-option p {
    margin: 0 0 5px;
    font-size: 13px;
}

.dn-media-contact-option a { font-weight: 700; }

.dn-media-heading { margin-bottom: 20px; }

.dn-media-year-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 24px;
    padding: 13px;
    background: #F4F8FA;
    border: 1px solid #DCE6EA;
    border-radius: 8px;
}

.dn-media-year-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 58px;
    height: 34px;
    padding: 0 10px;
    color: #147CA6;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    background: #FFFFFF;
    border: 1px solid #D3E1E7;
    border-radius: 4px;
}

.dn-media-year-nav a:hover,
.dn-media-year-nav a:focus {
    color: #FFFFFF;
    background: #147CA6;
    border-color: #147CA6;
}

.dn-media-years {
    display: grid;
    gap: 18px;
}

.dn-media-year {
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #DCE6EA;
    border-radius: 8px;
}

.dn-media-year-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 17px;
    background: #EAF3F7;
    border-bottom: 1px solid #D2E3EA;
}

.dn-media-year-heading h3 {
    margin: 0;
    color: #172536;
    font-size: 17px;
}

.dn-media-top-link {
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.dn-media-release-list { padding: 5px 18px; }

.dn-media-release-item {
    padding: 11px 2px;
    border-bottom: 1px solid #EEF2F4;
}

.dn-media-release-item:last-child { border-bottom: 0; }

.dn-media-release-item p {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
}

.dn-media-release-item a {
    font-weight: 650;
    overflow-wrap: anywhere;
}

.dn-media-closing {
    padding: 15px 0;
    text-align: center;
    background: #172536;
}

.dn-media-closing p {
    margin: 0;
    color: #FFFFFF;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .025em;
}

@media screen and (max-width: 700px) {
    .dn-media-inner { width: min(100% - 28px, 1180px); }
    .dn-media-section { padding: 30px 0; }
    .dn-media-contact-options { grid-template-columns: 1fr; }
    .dn-media-contact-card { padding: 19px; }
    .dn-media-release-list { padding: 4px 13px; }
    .dn-media-year-heading { padding: 9px 13px; }
}
