/*
 * Impressum — clean two-column credits list.
 * Label left, names right. Nothing fancy.
 */

.main.impressum-page {
    padding: var(--sf-space-5) 0;
}

.main.impressum-page .entry-content {
    padding-block: 0;
}

.impressum {
    max-width: 880px;
    margin-inline: auto;
}

.impressum__group + .impressum__group {
    margin-top: var(--sf-space-5);
    padding-top: var(--sf-space-5);
    border-top: 1px solid var(--sf-color-border);
}

.impressum__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.impressum__item {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 2fr;
    gap: var(--sf-space-6);
    padding: var(--sf-space-1) 0;
    align-items: baseline;
}

.impressum__label {
    margin: 0;
    font-family: var(--sf-font-body);
    font-size: var(--sf-text-base);
    font-weight: 600;
    line-height: var(--sf-leading-normal);
    color: var(--sf-color-text);
}

.impressum__label em {
    font-style: italic;
    font-weight: 600;
}

.impressum__names {
    margin: 0;
    font-family: var(--sf-font-body);
    font-size: var(--sf-text-base);
    line-height: var(--sf-leading-normal);
    color: var(--sf-color-text);
}

.impressum__names a {
    color: var(--sf-color-accent);
    text-decoration: underline;
}

.impressum__names a:hover {
    color: var(--sf-color-accent-deep);
}

@media (max-width: 640px) {
    .main.impressum-page {
        padding: var(--sf-space-4) 0;
    }
    .impressum__item {
        grid-template-columns: 1fr;
        gap: var(--sf-space-1);
        padding: var(--sf-space-1) 0;
    }
    .impressum__label {
        font-size: var(--sf-text-sm);
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: var(--sf-color-text-muted);
    }
}
