.footer__logo-wrap {
    display: block;
    margin-bottom: 1rem;
}

.footer__logo-search-wrap {
    margin: 1.25rem 0;
}

.footer__logo-link {
    display: inline-block;
}

.footer__primary-logo-wrap .footer__logo-link {
    padding: var(--footer-primary-logo-padding);
    background: var(--footer-primary-logo-bg-color);
}

.footer__secondary-logo-wrap .footer__logo-link {
    padding: var(--footer-secondary-logo-padding);
    background: var(--footer-secondary-logo-bg-color);
}

.footer__logo-link img {
    max-width: 100%;
    width: 240px;
    height: auto;
    display: block;
}

.footer__secondary-logo-wrap .footer__logo-link img {
    width: auto;
    max-width: 180px;
}

.footer__primary-logo-wrap .footer__logo-text {
    font-size: var(--footer-primary-text-size);
    color: var(--footer-primary-text-color);
}

.footer__secondary-logo-wrap .footer__logo-text {
    font-size: var(--footer-secondary-text-size);
    color: var(--footer-secondary-text-color);
}

@media screen and (max-width: 879px) {
    .footer__logo-wrap {
        margin-top: 1rem;
    }
    
    .footer__logo--has-text {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .footer__logo-layout--mobile-above .footer__logo-text{
        order: -5;
        margin-top: 0;
        margin-bottom: 1rem;
    }
    .footer__logo-layout--mobile-below .footer__logo-text{
        order: 5;
        margin-top: 1rem;
        margin-bottom: 0;
    }
}

@media screen and (min-width: 880px) {
    .footer__logo--has-text {
        display: flex;
        align-items: center;
    }

    .footer__logo-text {
        max-width: 50%;
    }

    .footer__logo--has-text.footer__logo-layout--above,
    .footer__logo--has-text.footer__logo-layout--below {
        flex-wrap: wrap;
    }

    .footer__logo--has-text.footer__logo-layout--above .footer__logo-text,
    .footer__logo--has-text.footer__logo-layout--below .footer__logo-text {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .footer__logo--no-space.footer__logo-layout--above .footer__logo-text {
        margin-bottom: 1rem
    }

    .footer__logo--no-space.footer__logo-layout--below .footer__logo-link+.footer__logo-text {
        margin-top: 1rem;
    }

    .footer__logo--no-space.footer__logo-layout--right .footer__logo-link+.footer__logo-text {
        margin: 0;
        margin-left: 1rem;
    }

    .footer__logo--no-space.footer__logo-layout--left .footer__logo-text {
        margin: 0;
        margin-right: 1rem;
    }
}