.footer-one{
    padding: var(--block-margin) 0;
}

.footer-one > div{
	width: var(--wide-width);
    margin-left: auto;
    margin-right: auto;
}

.footer-one-main{
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    column-gap: var(--column-gap);
    row-gap: var(--row-gap);
}

.footer-one-column-container{
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    column-gap: var(--item-column-gap);
    row-gap: var(--item-row-gap);
}

.footer-one-column h2{
    font: var(--font-headline-6);
}

.footer-one-column ul{
    padding: 0;
}

.footer-one-column ul li{
    display: block;
    list-style: none;
    margin-bottom: calc(0.25em * var(--primary-line-height));
}

.footer-one-column ul li a{
    display: flex;
    align-items: center;
}

.footer-one-column ul li a :is(svg, img){
    width: 2.4rem;
    height: 2.4rem;
    object-fit: contain;
    flex-shrink: 0;
    margin-right: 0.5em;
}

.footer-one-column > *:last-child{
    margin-bottom: 0;
}

.footer-one .logo{
    display: block;
    width: min-content;
    margin-bottom: calc(1em * var(--primary-line-height));
}

.footer-one .logo :is(img, svg) {
    max-width: 10rem;
    max-height: 4rem;
    object-fit: contain;
}

.footer-one-copyright{
    margin-top: calc(var(--block-margin) / 2);
    padding-top: calc(var(--block-margin) / 2);
    border-top: 0.1rem solid;
    font: var(--font-body-small);
}

.footer-one-copyright nav ul{
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--item-column-gap);
    row-gap: var(--item-row-gap);
    align-items: center;
}

.footer-one-copyright nav ul li{
    display: block;
    list-style: none;
}

.footer-one-copyright p{
    margin: 0;
}

@media (max-width: 767px){
    .footer-one-copyright nav{
        margin-bottom: 1em;
    }

    .footer-one-copyright nav ul{
        justify-content: center;
    }

    .footer-one-copyright p{
        text-align: center;
    }
}

@media (min-width: 768px){
    .footer-one-column-container{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .footer-one-copyright{
        display: flex;
        column-gap: var(--column-gap);
        row-gap: var(--row-gap);
        flex-direction: row-reverse;
        justify-content: space-between;
    }
}

@media (min-width: 1200px){
    .footer-one-main{
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    }
}