.site-footer {
    font-size: var(--wp--preset--font-size--small);
    font-weight: 500;
}

.site-footer .has-accent-1-background-color {
    color: var(--wp--preset--color--accent-6);
}

.site-footer > .wp-block-columns {
    gap: 0;
    border-radius: var(--wp--custom--border-radius--block) var(--wp--custom--border-radius--block) 0 0;
}

.site-footer > .wp-block-columns > .wp-block-column {
    text-wrap: balance;
    padding-block: var(--wp--preset--spacing--80);
    padding-inline: var(--wp--preset--spacing--30);
}

.site-footer > .wp-block-columns > .wp-block-column > .wp-block-columns {
    flex-wrap: wrap !important;
    column-gap: 50px;
}

.site-footer > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column:first-child {
    line-height: 2;
}

.site-footer > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column:last-child {
    flex-grow: 0 !important;
    flex-basis: 250px !important;
    width: 250px;
    line-height: 2;
}

.site-footer > .wp-block-columns > .wp-block-column > p {
    font-size: var(--wp--preset--font-size--x-small);
    font-weight: 600;
    padding-block-start: var(--wp--preset--spacing--40);
}

.site-footer > .wp-block-columns > .wp-block-column:first-child > p {
    color: var(--wp--preset--color--accent-5);
    border-top: 1px solid rgba(0,0,0,0.2);
}

.site-footer > .wp-block-columns > .wp-block-column:first-child > p > strong {
    color: var(--wp--preset--color--contrast);
}

.site-footer > .wp-block-columns > .wp-block-column:last-child > p {
    color: rgba(255,255,255,0.6);
    border-top: 1px solid rgba(255,255,255,0.2);
}

.site-footer > .wp-block-columns > .wp-block-column > p > a {
    color: var(--wp--preset--color--accent-6);
    margin-left: 5px;
}

.site-footer .wp-block-navigation {
    align-items: start;
}

.site-footer .wp-block-navigation-item__content {
    line-height: 40px;
}

.site-footer .wp-block-social-links {
    gap: 0.5rem;
    line-height: 2;
}

.site-footer .wp-block-navigation__container {
    display: grid;
    row-gap: 0;
    column-gap: clamp(40px, 15vw, 80px);
    grid-template-rows: repeat(6, 1fr);
    grid-auto-flow: column;
}

@media (min-width: 769px) {
    .site-footer > .wp-block-columns {
        border-radius: var(--wp--custom--border-radius--block);
    }

    .site-footer .wp-block-navigation__container {
        display: grid;
        row-gap: 0;
        grid-template-rows: repeat(4, 1fr);
        grid-auto-flow: column;
    }

    .site-footer > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column:first-child {
        flex-basis: 330px !important;
    }
}

@media (max-width: 1023px) {
    .site-footer > .wp-block-columns {
        display: block;
    }

    .site-footer > .wp-block-columns > .wp-block-column {
        padding-inline: var(--wp--preset--spacing--30);
    }
}

@media (min-width: 1024px) {
    .site-footer .wp-block-navigation__container {
        grid-template-rows: repeat(6, 1fr);
    }

    .site-footer > .wp-block-columns {
        display: grid;
        row-gap: var(--wp--preset--spacing--40);
        grid-template-columns: 1fr repeat(2, min(50cqi, calc(var(--wp--style--global--wide-size) / 2))) 1fr;
        grid-template-rows: repeat(3, auto);
        grid-template-areas: "left  left_header   right_header   right"
                             "left  left_content  right_content  right"
                             "left  left_footer   right_footer   right";
    }

    .site-footer > .wp-block-columns > .wp-block-column {
        display: grid;
        grid-template-columns: subgrid;
        grid-template-rows: subgrid;
        padding-block: var(--wp--preset--spacing--80);
    }

    .site-footer > .wp-block-columns > .wp-block-column > * {
        margin-block-start: 0;
    }

    .site-footer > .wp-block-columns > .wp-block-column:first-child {
        grid-column-start: left;
        grid-column-end: left_header;
        grid-row-start: left_header;
        grid-row-end: left_footer;
        padding-right: var(--wp--preset--spacing--60);
    }

    .site-footer > .wp-block-columns > .wp-block-column:last-child {
        grid-column-start: right_header;
        grid-column-end: right;
        grid-row-start: right_header;
        grid-row-end: right_footer;
        padding-left: var(--wp--preset--spacing--60);
    }

    .site-footer > .wp-block-columns > .wp-block-column:first-child::after,
    .site-footer > .wp-block-columns > .wp-block-column:last-child::after {
        content: "";
    }

    .site-footer > .wp-block-columns > .wp-block-column:first-child::after { grid-area: left }
    .site-footer > .wp-block-columns > .wp-block-column:last-child::after { grid-area: right }

    .site-footer > .wp-block-columns > .wp-block-column:last-child > :nth-child(1) { grid-area: right_content }
    .site-footer > .wp-block-columns > .wp-block-column:last-child > :nth-child(2) { grid-row: right_footer }
}

@media (min-width: 1440px) {
    .site-footer .wp-block-navigation__container {
        grid-template-rows: repeat(5, 1fr);
    }

    .site-footer > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column:first-child {
        flex-grow: 0 !important;
        width: 330px;
        flex-basis: 330px !important;
    }
}
