/* =========================================
   FOOTER
========================================= */

.site-footer {

    background:
        linear-gradient(
            135deg,
            #16052b 0%,
            #241044 55%,
            #21152f 100%
        );

    color: #d9d0e5;

    padding: 76px 0 25px;

    position: relative;

    overflow: hidden;

}


/* =========================================
   FOOTER PURPLE GLOW
========================================= */

.site-footer::before {

    content: "";

    position: absolute;

    width: 500px;

    height: 500px;

    right: -200px;

    top: -300px;

    background:
        radial-gradient(
            circle,
            rgba(139, 92, 246, 0.32),
            rgba(124, 58, 237, 0.12) 35%,
            transparent 68%
        );

    pointer-events: none;

}

.site-footer::after {

    content: "";

    position: absolute;

    width: 350px;

    height: 350px;

    left: -180px;

    bottom: -220px;

    background:
        radial-gradient(
            circle,
            rgba(167, 139, 250, 0.18),
            transparent 68%
        );

    pointer-events: none;

}


/* =========================================
   FOOTER TOP
========================================= */

.footer-top {

    display: grid;

    grid-template-columns:
        1.15fr
        1.85fr;

    gap: 90px;

    padding-bottom: 55px;

    position: relative;

    z-index: 1;

}


/* =========================================
   FOOTER LOGO
========================================= */

.footer-logo {

    display: inline-flex;

    align-items: center;

    text-decoration: none;

}

.footer-logo-image {

    display: block;

    width: 150px;

    height: auto;

    max-height: 45px;

    object-fit: contain;

}


/* =========================================
   FOOTER SOCIAL
========================================= */

.footer-socials {

    display: flex;

    gap: 9px;

}

.footer-socials a {

    width: 38px;

    height: 38px;

    display: grid;

    place-items: center;

    border:
        1px solid
        rgba(167, 139, 250, 0.20);

    border-radius: 11px;

    color: #e7e0f0;

    text-decoration: none;

    background:
        rgba(255, 255, 255, 0.03);

    transition: 0.25s;

}

.footer-socials a:hover {

    background:
        linear-gradient(
            135deg,
            #7c3aed,
            #8b5cf6
        );

    border-color:
        transparent;

    color: #fff;

    transform:
        translateY(-3px);

    box-shadow:
        0 10px 25px
        rgba(124, 58, 237, 0.28);

}


/* =========================================
   FOOTER LINKS
========================================= */

.footer-links {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 35px;

}

.footer-links h4 {

    font-size: 11px;

    text-transform: uppercase;

    letter-spacing: 1.4px;

    color: #fff;

    margin:
        5px 0 18px;

    position: relative;

}

.footer-links h4::after {

    content: "";

    display: block;

    width: 25px;

    height: 2px;

    margin-top: 8px;

    border-radius: 5px;

    background:
        linear-gradient(
            90deg,
            #7c3aed,
            #a78bfa
        );

}

.footer-links a,
.footer-links span {

    display: block;

    text-decoration: none;

    color: #c7bdd4;

    font-size: 12px;

    margin:
        0 0 12px;

    transition: 0.2s;

}

.footer-links a:hover {

    color: #a78bfa;

    transform:
        translateX(3px);

}


/* =========================================
   FOOTER BOTTOM
========================================= */

.footer-bottom {

    padding-top: 22px;

    border-top:
        1px solid
        rgba(167, 139, 250, 0.13);

    display: flex;

    justify-content: space-between;

    gap: 20px;

    font-size: 11px;

    color: #9185a0;

    position: relative;

    z-index: 1;

}

.footer-bottom a {

    color: #ad9bc2;

    text-decoration: none;

    transition: 0.2s;

}

.footer-bottom a:hover {

    color: #a78bfa;

}


/* =========================================
   MOBILE / TABLET
========================================= */

@media (max-width: 800px) {

    .footer-top {

        grid-template-columns: 1fr;

        gap: 45px;

    }

    .footer-links {

        grid-template-columns:
            repeat(3, 1fr);

    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 560px) {

    .site-footer {

        padding-top: 55px;

    }

    .footer-links {

        grid-template-columns:
            1fr 1fr;

    }

    .footer-bottom {

        flex-direction: column;

    }

}