.wpb-footer { background-color: var(--clr-dark); color: #fff; border-bottom: .5rem solid var(--clr-blue); margin-top: auto; 
    h3 { color: #fff; }

    .wpb-footer__menu {
        .footer-menu__title { display: block; padding: 0 0 1rem 0; font-size: 2rem; color: inherit; text-decoration: none; font-weight: bold; }
        ul { list-style: none; 
            li {
                a { display: flex; text-decoration: none; color: inherit; font-size: 1.5rem; align-items: center; transition: transform var(--ts-25) ease;
                    i{ font-size: 1rem; margin-right: .3rem; }
                    &:hover { transform: translateX(.2rem); }
                }
                + li { margin-top: .5rem; }
            }
        }
    }

    .wpb-footer__top { background-color: #27416D;
        .wpb-text { --mt: .25em;
            > * + * { margin-top: var(--mt); }
            > *:not(.woocommerce-breadcrumb) + *:not(.btn .blockquote) {margin-top: var(--mt); }
        }
        .upper {padding: 1.4rem 0; border-bottom: 1px solid rgba(var(--clr-border-rgb), .12);
            .payoff {margin-left: auto; width: 16rem;}
        }
        .inner {display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 2.4rem; padding: 2.8rem 0;
            > .footer-logo {width: 16rem;}
            .wpb-footer-column {
                h3 { font-size: clamp(1.4rem, 2vw, 1.8rem); }
                > .wpb-text + * {margin-top: 1.2rem;}
            }
        }
    }

    .wpb-footer__main { --gc: 1; padding-top: 4.8rem; padding-bottom: 4.8rem;
        .container { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: 3.2rem; row-gap: 3.2rem; align-items: start; }
        .wpb-footer__menu ul { column-count: 2; column-gap: 2rem; } 
    }

    .wpb-footer__bottom { border-top: .1rem solid rgba(255,255,255,.1); padding-top: 2rem; padding-bottom: 2rem;
        .container { display: flex; flex-direction: column; align-items: center; column-gap: 2rem; row-gap: 1rem; }
        .copyright { font-size: 1.2rem; line-height: 1; font-weight: 600; white-space: nowrap; }
        .menu { display: flex; flex-wrap: wrap; justify-content: center; column-gap: 2rem; row-gap: 1rem; padding-top: 1.6rem; padding-bottom: 1.6rem; list-style: none;
            a { text-decoration: none; font-size: 1.2rem; line-height: 1; font-weight: 500;
                &:hover { text-decoration: underline; } 
            }
        }
        .global-region-switcher { border: 1px solid rgba(255, 255, 255, .12); padding: 1.2rem 1.6rem; border-radius: 3.2rem; transition: .12s ease;
            &:hover { background-color: rgba(255, 255, 255, .08); }
        }
    }

    @media (min-width: 768px) {
        .wpb-footer__top {
            .inner > .footer-logo { width: 22rem; }
            .upper { padding: 3.2rem 0;
                .payoff {width: 18rem;}
            }
        }
        .wpb-footer__main { --gc: 2; }
    }

    @media (min-width: 992px) {
        .wpb-footer__top {
            .upper .payoff { width: 20rem; }
            .wpb-text > *:not(.woocommerce-breadcrumb) + *:not(.btn .blockquote) {margin-top: 1em;}
            .inner {padding: 4.8rem 0; grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 4rem;
                .wpb-footer-column:not(:last-child) {padding-right: 1.6rem;}
                .wpb-footer-column > .wpb-text + * {margin-top: 1.6rem;}
            } 
        }
        .wpb-footer__bottom {
            .container { flex-direction: row; }
            .copyright { border-right: .1rem solid rgb(255,255,255,.5); padding-right: 2rem; }
            .menu { justify-content: start; padding: 0; column-gap: 1rem; row-gap: 0; }
            .woocommerce-payment-icons {margin-left: auto;}
        }
    }
    
    @media (min-width: 1200px) {
        .wpb-footer__top .inner {grid-template-columns: repeat(4, 1fr);}
    
        .wpb-footer__main {
            .container { column-gap: 6.4rem; grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)) minmax(0, 2fr); }
            .wpb-footer__menu:nth-child(2) ul { column-count: 1; }
            .wpb-footer__menu:nth-child(3) ul { column-count: 1; }
            .wpb-footer__menu:nth-child(4) ul { column-count: 1; }
        }
    
        .wpb-footer__bottom .menu { column-gap: 2rem; }
    }
    
    @media (min-width: 1400px) {
        .wpb-footer__main .container { column-gap: 6.4rem; grid-template-columns: minmax(0, 41rem) 1fr 1fr minmax(0, 36rem); }  
    }
}

