footer {
    width: 100%;
    padding: .5%;

    #top {
        padding: .5%;
        display: flex;
        justify-content: space-between;
        align-items: center;

        @media screen and (max-width: 767px) {
            flex-direction: column;
            align-items: flex-start;
            padding: 1.75% 1%;
        }

        #title {
            color: var(--purple-main);
            font-family: moraco;
            font-size: 2rem;
        }

        #socials {
            display: flex;
            height: 2.5rem;

            .icon {
                aspect-ratio: 1/1;
                display: flex;
                justify-content: center;
                align-items: center;
                margin-left: .25rem;

                img {
                    aspect-ratio: 1/1;
                    height: 75%;
                    opacity: .5;
                }

                &:hover {
                    img {
                        opacity: 1;
                    }
                }

                @media screen and (max-width: 767px) {
                    margin-left: 0;
                    margin-right: .25rem;
                }
            }

            @media screen and (max-width: 767px) {
                width: 100%;
                height: 2.25rem;

                overflow-x: scroll;

                &::-webkit-scrollbar {
                    display: none;
                }
            }
        }
    }

    #middle {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: .5%;

        hr {
            width: 100%;
        }
    }

    #bottom {
        display: flex;
        justify-content: space-between;
        padding: .5%;

        @media screen and (max-width: 767px) {
            flex-direction: column-reverse;

            p {
                margin: .75% 0;
            }
        }
    }
}