footer {
    padding-block: var(--wp--preset--spacing--large);
}

footer .is-style-mono {
    font-family: var(--wp--preset--font-family--dm-mono);
    color: var(--wp--preset--color--neutral-600);
    font-size: var(--wp--preset--font-size--caption);
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0.0325rem;
    text-transform: uppercase;
}

footer h2.wp-block-heading::before {
    content: "//";
    margin-right: 0.5rem;
}

footer .is-vertically-aligned-stretch {
    display: flex;
    flex-direction: column;
}

footer .is-vertically-aligned-stretch>*:first-child {
    flex: 1;
}

footer .wp-block-group.is-content-justification-center {
    gap: 8px;

    a {
        text-decoration: none;
    }
}

@media (max-width: 1023.991px) {
    footer > .wp-block-group:first-of-type > .wp-block-columns {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    footer > .wp-block-group.has-dark-gradient-background {
        padding: 2rem;
    }

    footer > .wp-block-group.is-layout-constrained {
        padding-top: var(--wp--preset--spacing--large) !important;
    }

    footer > .wp-block-group.is-layout-constrained > .wp-block-columns,
    footer > .wp-block-group.is-layout-constrained > .wp-block-columns > .wp-block-column > .wp-block-columns {
        gap: 4rem;
    }
}

@media (min-width: 1024px) {
    footer .wp-block-columns {
        gap: 7rem;
    }

    footer>*>.wp-block-columns:not(#newsletter)>*:first-child {
        border-right: 1px solid var(--wp--preset--color--neutral-800);
    }
}