.series-page {
    background: #f6f8fc;
    color: #14213b;
    min-height: 100vh;
}

.series-shell {
    width: min(100% - 3rem, 1120px);
    margin-inline: auto;
}

.series-card-meta {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.series-catalog {
    padding-block: 2.75rem 6rem;
}

.series-page-title {
    margin: 0 0 1.5rem;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.2;
}

.series-list {
    display: grid;
    gap: .9rem;
}

.series-card {
    overflow: hidden;
    border: 1px solid #dce5f2;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 3px 10px rgba(23, 45, 82, .025);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.series-card:hover,
.series-card:focus-within {
    border-color: #a8c4f0;
    box-shadow: 0 12px 30px rgba(23, 45, 82, .075);
}

.series-toggle {
    display: grid;
    grid-template-columns: 4.7rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
    padding: 1.55rem 2rem;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.series-toggle:hover {
    background: #f9fbff;
}

.series-card-number {
    align-self: start;
    margin-top: .1rem;
    color: #b9cce7;
    font-size: 2.15rem;
    font-weight: 800;
    letter-spacing: -.06em;
    line-height: 1;
}

.series-card-main {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: start;
}

.series-card-meta {
    color: #3b71c9;
    font-size: .68rem;
}

.series-card-meta span {
    margin-inline: .3rem;
    color: #a2b1c8;
}

.series-card-title {
    margin-top: .3rem;
    color: #14213b;
    font-size: clamp(1.25rem, 2vw, 1.55rem);
    font-weight: 750;
    letter-spacing: -.03em;
    line-height: 1.3;
}

.series-card-description {
    margin-top: .5rem;
    color: #61718b;
    font-size: .91rem;
    line-height: 1.5;
}

.series-card-action {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
    padding-left: 1.5rem;
    color: #275cba;
    font-size: .87rem;
    font-weight: 700;
    white-space: nowrap;
}

.series-card-action svg {
    width: 2.15rem;
    height: 2.15rem;
    padding: .48rem;
    border: 1px solid #dbe7fa;
    border-radius: 50%;
    background: #f3f7ff;
    transition: transform .2s ease, background-color .2s ease;
}

.series-toggle[aria-expanded="true"] .series-card-action svg {
    background: #e8f0ff;
}

.series-content {
    border-top: 1px solid #e7edf7;
    background: #fbfcff;
}

.series-articles {
    margin: 0;
    padding: .5rem 2rem .8rem 8.2rem;
    list-style: none;
}

.series-articles li + li {
    border-top: 1px solid #e6edf7;
}

.series-article-link {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) 1.5rem;
    align-items: start;
    gap: 1rem;
    padding: 1.2rem 0;
    text-decoration: none;
}

.series-article-number {
    color: #7393c5;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.7;
}

.series-article-copy {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.series-article-title {
    color: #1b3154;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.45;
}

.series-article-excerpt {
    color: #68788e;
    font-size: .86rem;
    line-height: 1.55;
}

.series-article-arrow {
    color: #7b9dd5;
    font-size: 1.2rem;
    transition: transform .2s ease;
}

.series-article-link:hover .series-article-title,
.series-article-link:focus-visible .series-article-title {
    color: #2563eb;
}

.series-article-link:hover .series-article-arrow {
    transform: translate(2px, -2px);
}

.dark .series-page {
    background: #0f172a;
    color: #f1f5f9;
}

.dark .series-card {
    border-color: #334155;
    background: #1e293b;
    box-shadow: none;
}

.dark .series-card:hover,
.dark .series-card:focus-within {
    border-color: #5574a6;
}

.dark .series-page .series-toggle:hover {
    background: #26364f;
}

.dark .series-card-number {
    color: #536988;
}

.dark .series-card-description,
.dark .series-article-excerpt {
    color: #aebdd1;
}

.dark .series-card-title,
.dark .series-article-title {
    color: #f1f5f9;
}

.dark .series-card-meta,
.dark .series-card-action,
.dark .series-article-number,
.dark .series-article-arrow {
    color: #91b7fb;
}

.dark .series-card-action svg {
    border-color: #486187;
    background: #2b405f;
}

.dark .series-content {
    border-color: #334155;
    background: #192437;
}

.dark .series-articles li + li {
    border-color: #334155;
}

@media (max-width: 760px) {
    .series-toggle {
        grid-template-columns: 2.5rem minmax(0, 1fr) 2.15rem;
        gap: .8rem;
        padding: 1.35rem;
    }

    .series-card-number {
        font-size: 1.5rem;
    }

    .series-card-action {
        padding: 0;
    }

    .series-card-action span {
        display: none;
    }

    .series-articles {
        padding: .35rem 1.35rem .5rem 4.65rem;
    }
}

@media (max-width: 480px) {
    .series-shell {
        width: min(100% - 2rem, 1120px);
    }

    .series-toggle {
        grid-template-columns: minmax(0, 1fr) 2rem;
        gap: .6rem;
    }

    .series-card-number {
        display: none;
    }

    .series-card-description {
        font-size: .84rem;
    }

    .series-articles {
        padding: .25rem 1.2rem .4rem;
    }

    .series-article-link {
        grid-template-columns: 1.7rem minmax(0, 1fr) 1rem;
        gap: .65rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .series-page *,
    .series-page *::before,
    .series-page *::after {
        transition-duration: 0s !important;
    }
}
