footer {
    background-color: var(--color-black);
    padding: 80px 0 calc(72px + env(safe-area-inset-bottom, 0px));
    position: relative;

    .container {
    }

    .footer-crest {
        position: absolute;
        top: -50px;
        left: 50%;
        transform: translate(-50%, 0);
    }

    .footer-links {
        @media (min-width: 960px) {
            display: flex;
            justify-content: center;
            gap: 51px;
            align-items: center;
        }

        .social {
            display: flex;
            gap: 24px;
        }

        ul {
            margin-top: 24px;

            @media (min-width: 960px) {
                margin-top: 0;
                display: flex;
                gap: 69px;
            }

            li {
                a {
                    font-family: var(--font-trade-gothic-compressed);
                    color: var(--color-red);
                    text-transform: uppercase;
                    font-weight: 700;
                    font-size: 1.25rem;

                    &:hover {
                        text-decoration: underline;
                        text-decoration-thickness: 3px;
                        text-underline-offset: 4px;
                    }
                }
            }
        }
    }

    .footer-disclaimer {
        margin-top: 24px;
        display: flex;
        align-items: baseline;
        gap: 12px;
        color: var(--color-red);
        text-transform: uppercase;
        font-family: var(--font-trade-gothic-compressed);
        font-weight: 700;
        font-size: 1.625rem;
        white-space: nowrap;

        .footer-disclaimer__rule {
            flex: 1;
            min-width: 24px;
            height: 4px;
            background-image: radial-gradient(
                circle,
                var(--color-red) 2px,
                transparent 2px
            );
            background-size: 16px 4px;
            background-repeat: repeat-x;
            background-position: center;
        }

        @media (max-width: 767px) {
            flex-direction: column;
            align-items: flex-start;
            white-space: normal;
            gap: 8px;

            .footer-disclaimer__rule {
                display: none;
            }
        }
    }

    .footer-logo {
        width: 100%;
        margin-top: 24px;
    }

    .copyright {
        margin-top: 20px;
        font-family: var(--font-trade-gothic-compressed);
        color: var(--color-red);
        text-transform: uppercase;
        font-weight: 700;
        font-size: 1.25rem;
    }
}
