@mixin footer() {
    @include flex();
    @include align-items-center();
    @include space-between();
    @include backface-hack();
    width: 100%;
    height: 90px;
    padding: 22px;
    border-top: 1px solid color('borders');
    background-color: color('background');
    
    &--overhangs {
        box-shadow: 0 -2px 5px 0 rgba(210, 210, 210, 0.3);
    }
    
    &__wrapper {
        @include flex();
        @include space-between();
        @include space-between();
        height: 100%;
    }

    @include breakpoint(small) {
        height: 58px;
        padding: 0;
    }
}

@mixin footer-website {
    width: 100%;
    background-color: color('footer', 'background');
    padding: 48px 0;

    &__wrapper {
        @include flex();
        @include row();
    }

    &__row {
        @include column(12);
        @include flex();
        @include align-items-top();
        padding-bottom: 32px;

        &:not(:first-child) {
            border-top: 1px solid color('footer', 'divider');
            padding-top: 32px;
        }

        &__cell {
            @include column(3);

            &:nth-child(2) {
                @include breakpoint(medium) {
                    margin-left: auto;
                    margin-right: auto;
                }
            }

            &--cities {
                @include breakpoint(medium) {
                    @include justify-content-end();
                }
            }

            &--half-line{
                @include column(6);
            }

            &__header {
                @include subheader();
                @include font("IntervalNextMed");
                font-weight: 600;
                padding-bottom: 18px;
            }

            &__anchor {
                @include anchor();
                display: block;
                color: color('text', 'subheader');
                opacity: 0.3;
                padding: 6px 0px;
                text-decoration: none;

                &--inline {
                    display: inline;
                }

                &--spaced {
                    @include breakpoint(medium) {
                        margin-right: auto;
                    }
                }
            }

            &__social-link {
                @include flex();
                @include align-items-center();
                @include justify-content-center();
                text-decoration: none;
                width: 40px;
                height: 40px;

                svg {
                    width: 20px;
                    height: 20px;
                    fill: color('text', 'subheader');
                    opacity: 0.3;
                }
            }

            &--align-right {
                @include flex();
                justify-content: flex-end;
            }
        }
    }

    &:not(:first-child) {
        border-top: 1px solid color('footer', 'divider');
        padding-top: 32px;
    }

    &--dark {
        background: color('footer', 'background-dark');
        opacity: 1;

        .footer__row__cell__header,
        .footer__row__cell__anchor,
        .footer__row__cell--social a:not([class*="--icon"]),
        a,
        svg g {
            color: color('footer', 'text-light');
            fill: color('footer', 'text-light');
            fill-opacity: 1;
            opacity: 1;
        }
    }
    
    &--dark &__row__cell__header {
        color: color('footer', 'text-light');
    }

    @include breakpoint(medium) {
        a:last-of-type {
            margin-right: 0;
        }
    }
}
