.footer__content {
    display: grid;
    grid-template-columns:
        minmax(var(--grid-padding), 1fr) repeat(
            var(--grid-columns),
            minmax(0, calc(var(--max-content-width) / var(--grid-columns)))
        )
        minmax(var(--grid-padding), 1fr);
}

.footer--dark::before {
    content: "";
    display: block;
    width: 11.25rem;
    height: 4.625rem;
    margin-inline: auto;
    margin-block-start: 3.75rem;
    margin-block-end: 1.875rem;
    background-image: url("/fileadmin/logos/logo.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.footer__content > * {
    grid-column: 2 / -2;
}

.footer a {
    text-decoration: none;
}

.footer a:not(.button):hover,
.footer a:not(.button):focus {
    text-decoration: underline;
}

.footer--dark .footer__content {
    padding-block: 3rem;
    color: var(--clr-white);
    background-color: var(--clr-secondary);
}

.footer--dark a {
    color: var(--clr-white);
}

.footer--dark .heading {
    font-size: 1.25rem;
    color: var(--clr-white);
}

.footer--dark .textmedia__image {
    width: unset;
    aspect-ratio: unset;
    object-fit: unset;
    border-radius: unset;
}

.footer--links {
    place-items: center;
    padding-block: 3rem;
    color: var(--clr-secondary);
    background-image: var(--clr-gradient-1);
}

.footer--links a {
    color: var(--clr-secondary);
}

.footer .component {
    padding-block: 1.5rem;
}

.footer .component > * + * {
    margin-block-start: 1.25rem;
}

.footer__copyright {
    padding-block: 1.5rem;
    text-align: center;
    font-size: 0.875rem;
}

@media (min-width: 576px) {
    .footer__col:nth-child(1),
    .footer__col:nth-child(3) {
        grid-column: 2 / 8;
    }

    .footer__col:nth-child(2),
    .footer__col:nth-child(4) {
        grid-column: 9 / -2;
    }
    .footer--links .footer__content {
        place-items: flex-start;
    }
}

@media (max-width: 1199px) {
    .footer--dark .footer__content {
        background-image: url("../Images/Intersect-footer.svg");
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: contain;
    }
}

@media (min-width: 1200px) {
    .footer--dark .footer__content {
        padding-block-end: 12.125rem;
        background-image: url("../Images/Intersect-footer.svg");
        background-position: center bottom;
        background-repeat: no-repeat;
    }

    .footer__col:nth-child(1) {
        grid-column: 2 / 5;
    }

    .footer__col:nth-child(2) {
        grid-column: 5 / 8;
    }

    .footer__col:nth-child(3) {
        grid-column: 8 / 11;
    }

    .footer__col:nth-child(4) {
        grid-column: 11 / -2;
    }
}
