.footer {
    background: var(--color-black);
    padding-top: 80px;
    padding-bottom: 128px;
}

.footer__inner {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 40px;
}

.footer__first-column {
    max-width: 217px;
}

.footer__first-column-info {
    margin-bottom: 64px;
}

.footer__first-column-info img {
    margin-bottom: 16px;
}

.footer__first-column-info p {
    font: 400 16px/1.25 var(--font-montserrat);
    color: var(--color-white);
}

.footer__first-column-socials ul {
    display: flex;
    flex-flow: row;
    align-items: center;
    justify-content: flex-start;
    gap: 24px;
    padding-left: 0;
    list-style-type: none;
}

.footer__menu .menu {
    display: flex;
    flex-flow: row;
    align-items: center;
    justify-content: center;
    gap: 24px;
    list-style-type: none;
    padding-left: 0;
}

.footer__menu .menu a {
    font: 500 16px/1.25 var(--font-montserrat);
    color: rgba(255, 255, 255, 0.4);
}

.footer .header__language-label {
    color: var(--color-white);
}

.lang-switcher__arrow svg path {
    fill: var(--color-white);
}

.footer .header__language {
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 30px;
}

.footer .header__btn {
    background: transparent;
    color: var(--color-white);
    border-color: var(--color-white);
}

.footer__policy {
    font: 400 16px/1.25 var(--font-montserrat);
    color: rgba(255, 255, 255, 0.4);
}

.footer__policies {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.footer__contact {
    margin-top: 24px;
}

.footer__contact-company {
    font: 500 14px/1.4 var(--font-montserrat);
    color: rgba(255, 255, 255, 0.6);
    margin-bottom: 12px;
}

.footer__contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font: 400 14px/1.4 var(--font-montserrat);
    color: rgba(255, 255, 255, 0.4);
    margin-bottom: 8px;
}

.footer__contact-item svg {
    flex-shrink: 0;
}

.footer__contact-item a {
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
}

.footer__contact-item a:hover {
    color: var(--color-white);
}

@media only screen and (min-width: 991px) {
    .footer__inner {
        display: flex;
        flex-flow: row;
        align-items: stretch;
        justify-content: space-between;
    }

    .footer__first-column-info {
        margin-bottom: 72px;
    }

    .footer__third-column {
        display: flex;
        flex-flow: column;
        justify-content: space-between;
        align-items: flex-end;
    }

    .footer__policies {
        flex-flow: row;
        gap: 24px;
        align-items: center;justify-content: flex-end;
    }
}

/* Halkbank-mandated payment branding (sec. 2.2) */
.footer__payments {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 32px;
    padding: 24px 0 0;
    margin-top: 32px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.footer__payments-bank img {
    height: 48px;
    width: auto;
    display: block;
}
.footer__payments-acceptance {
    display: flex;
    align-items: center;
    gap: 16px;
}
.footer__payments-acceptance img {
    height: 40px;
    width: auto;
    max-width: 80px;
    object-fit: contain;
    background: #fff;
    padding: 6px 8px;
    border-radius: 6px;
    display: block;
}
/* >= 4x program-mark width gap between groups, per spec (~360px min) */
.footer__payments-program {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: 24px;
}
.footer__payments-program img {
    height: 32px;
    width: auto;
    max-width: 90px;
    object-fit: contain;
    display: block;
}
@media (max-width: 768px) {
    .footer__payments {
        gap: 20px;
        justify-content: center;
    }
    .footer__payments-program {
        margin-left: 0;
        flex-basis: 100%;
        justify-content: center;
    }
}

.footer__rsd-disclaimer {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer__rsd-disclaimer p {
    font: 400 12px/1.4 var(--font-montserrat);
    color: rgba(255, 255, 255, 0.35);
    margin: 0;
    text-align: center;
}