.footer {
    background-color: #1c1c1c;
    color: #fff;
    padding-bottom: 30px;
    font-size: 16px;
    line-height: 1.6;
    font-family: var(--main-font-family);
    padding-inline: 80px;
}

.footer ul {
    list-style: none;
}

.footer li {
    margin-bottom: 3px;
    width: max-content;
}

.footer__top {
    display: flex;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
}

.footer__column {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding-top: var(--space-between-sections);
    padding-bottom: 20px;
}

.footer__column:nth-child(2n) {
    text-align: center;
}

.footer__column:nth-child(2n) ul,
.footer__column:nth-child(2n) li {
    width: max-content;
    margin-inline: auto;
}

.footer__column strong {
    text-transform: uppercase;
    display: block;
    margin-bottom: 8px;
    font-weight: bold;
}

.footer__social {
    display: flex;
    gap: 16px;
    margin-top: 15px;
}

.footer__menu {
    padding: 0;
    margin: 0;
    margin-top: auto;
    color: var(--grey-color);
}

.footer a {
    text-decoration: none;
    transition: color 0.3s;
    font-size: 14px;
    display: flex;
    gap: 5px;
    align-items: center;
}

.footer a:hover {
    color: #fff;
}

.footer__social .icon {
    width: 20px !important;
    height: 20px !important;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(170deg) brightness(103%) contrast(104%) !important;
    transition: opacity 0.3s;
}

.footer__social a:hover .icon {
    filter: brightness(0) saturate(100%) invert(71%) sepia(3%) saturate(15%) hue-rotate(322deg) brightness(98%) contrast(85%) !important;
}

.footer__logo {
    width: 84px;
    height: auto;
    margin-left: auto;
}

.footer__contact {
    margin-top: 30px;
}

.footer__legal {
    margin-top: 70px;
    color: var(--grey-color);
}

.footer-bottom {
    padding-top: 30px;
    display: flex;
    justify-content: center;
    gap: 6px;
    font-size: 14px;
    line-height: 14px;
    color: var(--grey-color);
}

.footer-bottom img {
    height: 15px;
    filter: brightness(0) saturate(100%) invert(80%) sepia(0%) saturate(300%) hue-rotate(160deg) brightness(86%) contrast(89%);
}

.footer-bottom img:hover {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(170deg) brightness(103%) contrast(104%) !important;
}

.footer-bottom .icon.neobookings {
    display: flex;
    align-items: center;
}

.footer-bottom a.icon.neobookings:hover {
    filter: brightness(0) invert(1)
}

@media (max-width: 1024px) {
    .footer__top {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding-top: 30px;
        gap: 30px;
    }

    .footer__column {
        padding-top: unset;
        padding-bottom: unset;
        width: -webkit-fill-available;
        width: fill-available;
    }

    .footer__column:nth-child(2n) ul,
    .footer__column:nth-child(2n) li {
        width: -webkit-fill-available;
        width: fill-available;
    }

    .footer__legal {
        color: white;
    }

    .footer__logo {
        margin-inline: auto;
    }

    .footer ul {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .footer a {
        color: white;
        text-decoration: none;
        transition: color 0.3s;
        justify-content: center;
    }

    .footer img {
        filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(170deg) brightness(103%) contrast(104%) !important;
    } 

    .footer__social {
        justify-content: center;
    }

    .footer-bottom {
        text-align: center;
        border-top: unset;
        color: white;
        flex-direction: column;
    }

    .footer__menu {
        margin-top: 32px;
    }
}