.sources { text-align: center; }

.sources-title {
    margin: 0 0 1.5rem;
    font-size: var(--title);
}

.source-cards {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
    margin: 0 0 4rem;
    padding: 0;
    list-style: none;
}

.source-card {
    flex: 0 1 18rem;
    padding: 1.75rem 1.5rem;
    border: var(--hairline) solid var(--line);
    scroll-margin-top: 2rem;
}

.source-card:target { border-color: var(--umber); outline: var(--hairline) solid var(--umber); }

.source-name { font-size: var(--heading); }

.source-role {
    margin: 0.25rem 0 0;
    font-family: var(--font-smallcaps);
    font-size: var(--note);
}

.source-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    margin: 1.25rem 0 0;
    padding: 1.25rem 0 0;
    border-top: var(--hairline) solid var(--line);
    list-style: none;
    font-family: var(--font-smallcaps);
}

.source-links li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.source-links a { text-decoration: none; }
.source-links a:hover { text-decoration: underline; }
