/* =========================================================
   THIRDEYE SOLUTIONZ
   FOOTER
========================================================= */

.site-footer {

    position: relative;

    overflow: hidden;

    background: var(--teal-deep);

    color: #ffffff;

    padding: 0;

}


/* =========================================================
   BACKGROUND EFFECT
========================================================= */

.site-footer::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:

        radial-gradient(
            circle at 8% 15%,
            rgba(201, 163, 78, 0.08),
            transparent 28%
        ),

        radial-gradient(
            circle at 92% 85%,
            rgba(201, 163, 78, 0.05),
            transparent 25%
        );

}


.site-footer .container {

    position: relative;

    z-index: 1;

}


/* =========================================================
   MAIN FOOTER GRID
========================================================= */

.footer-grid {

    display: grid;

    grid-template-columns:

        1.45fr
        0.8fr
        1.05fr
        1.15fr;

    gap: 55px;

    padding-top: 75px;

    padding-bottom: 65px;

}


/* =========================================================
   BRAND
========================================================= */

.footer-brand {

    max-width: 370px;

}


.footer-main-logo {

    width: 165px;

    height: auto;

    max-height: 95px;

    object-fit: contain;

    display: block;

    margin-bottom: 22px;

}


.footer-brand p {

    margin: 0;

    color: rgba(255, 255, 255, 0.62);

    font-size: 13px;

    line-height: 1.8;

}


/* =========================================================
   SOCIAL ICONS
========================================================= */

.footer-socials {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 27px;

}


.social-link {

    width: 42px;

    height: 42px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    border: 1px solid var(--gold);

    border-radius: 50%;

    color: var(--gold-light);

    background: transparent;

    text-decoration: none;

    font-family: var(--sans);

    font-size: 12px;

    font-weight: 800;

    transition:

        background 0.25s ease,

        color 0.25s ease,

        transform 0.25s ease,

        box-shadow 0.25s ease;

}


.social-link:hover {

    background: var(--gold);

    color: var(--teal-dark);

    transform: translateY(-3px);

    box-shadow:

        0 8px 20px
        rgba(201, 163, 78, 0.18);

}


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

.footer-column {

    border-left:

        1px solid
        rgba(255, 255, 255, 0.11);

    padding-left: 32px;

    display: flex;

    flex-direction: column;

    align-items: flex-start;

}


/* =========================================================
   COLUMN HEADINGS
========================================================= */

.footer-column h4 {

    margin: 0 0 21px;

    color: var(--gold-light);

    font-family: var(--serif);

    font-size: 21px;

    font-weight: 500;

    line-height: 1.3;

}


.footer-column h4::after {

    content: "";

    display: block;

    width: 38px;

    height: 2px;

    margin-top: 10px;

    background: var(--gold);

}


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

.footer-column > a:not(.contact-item) {

    position: relative;

    display: block;

    margin: 0 0 13px;

    padding: 0;

    color: rgba(255, 255, 255, 0.66);

    background: transparent;

    border: 0;

    font-family: var(--sans);

    font-size: 12px;

    line-height: 1.5;

    text-decoration: none;

    transition:

        color 0.2s ease,

        transform 0.2s ease;

}


.footer-column > a:not(.contact-item)::before {

    content: "›";

    display: inline-block;

    margin-right: 9px;

    color: var(--gold);

    font-size: 17px;

    line-height: 0;

    transition:

        transform 0.2s ease;

}


.footer-column > a:not(.contact-item):hover {

    color: #ffffff;

    transform: translateX(4px);

}


/* =========================================================
   CONTACT
========================================================= */

.footer-contact {

    min-width: 0;

}


.contact-item {

    display: flex;

    align-items: flex-start;

    gap: 13px;

    margin-bottom: 23px;

    color: rgba(255, 255, 255, 0.72);

    font-family: var(--sans);

    font-size: 13px;

    line-height: 1.65;

    text-decoration: none;

    transition:

        color 0.2s ease;

}


.contact-item:hover {

    color: var(--gold-light);

}


.contact-icon {

    width: 40px;

    height: 40px;

    flex: 0 0 40px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    border:

        1px solid
        var(--gold);

    border-radius: 50%;

    color: var(--gold-light);

    font-size: 14px;

}


.address-item {

    max-width: 310px;

}


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

.footer-bottom {

    position: relative;

    z-index: 2;

    border-top:

        1px solid
        rgba(201, 163, 78, 0.75);

    background:

        rgba(0, 0, 0, 0.12);

}


.footer-bottom-inner {

    min-height: 105px;

    display: grid;

    grid-template-columns:

        1fr
        auto
        auto;

    align-items: center;

    gap: 40px;

}


/* =========================================================
   COPYRIGHT
========================================================= */

.footer-copyright {

    color: rgba(255, 255, 255, 0.50);

    font-family: var(--sans);

    font-size: 10px;

    line-height: 1.6;

    letter-spacing: 0.02em;

}


/* =========================================================
   WEBSITE CREDIT
========================================================= */

.website-credit {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 5px;

    min-width: 240px;

    color: rgba(255, 255, 255, 0.68);

    font-family: var(--sans);

    font-size: 11px;

    line-height: 1.4;

}


.itwf-link {

    color: var(--gold-light);

    text-decoration: none;

    font-size: 14px;

    font-weight: 800;

    letter-spacing: 0.02em;

    border-bottom:

        1px solid
        rgba(201, 163, 78, 0.55);

    padding-bottom: 2px;

    transition:

        color 0.2s ease,

        border-color 0.2s ease;

}


.itwf-link:hover {

    color: #ffffff;

    border-color: #ffffff;

}


/* =========================================================
   SMALL THIRDEYE BRAND
========================================================= */

.footer-mini-brand {

    display: flex;

    align-items: center;

    gap: 12px;

    padding-left: 30px;

    border-left:

        1px solid
        rgba(255, 255, 255, 0.14);

}


.mini-logo {

    width: 52px;

    height: 52px;

    flex: 0 0 52px;

    display: flex;

    align-items: center;

    justify-content: center;

    overflow: hidden;

    border:

        1px solid
        var(--gold);

    border-radius: 50%;

}


.mini-logo img {

    width: 78%;

    height: 78%;

    object-fit: contain;

    display: block;

}


.mini-brand-text {

    display: flex;

    flex-direction: column;

    gap: 4px;

}


.mini-brand-text strong {

    color: var(--gold-light);

    font-family: var(--serif);

    font-size: 15px;

    font-weight: 500;

    letter-spacing: 0.04em;

    white-space: nowrap;

}


.mini-brand-text span {

    color: rgba(255, 255, 255, 0.50);

    font-family: var(--sans);

    font-size: 9px;

    white-space: nowrap;

}


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

@media (max-width: 1050px) {

    .footer-grid {

        grid-template-columns:

            1.25fr
            1fr
            1fr;

        gap: 40px;

    }


    .footer-contact {

        grid-column: 2 / 4;

    }


    .footer-bottom-inner {

        grid-template-columns:

            1fr
            auto;

        gap: 25px;

        padding-top: 20px;

        padding-bottom: 20px;

    }


    .footer-mini-brand {

        grid-column: 1 / 3;

        padding-left: 0;

        border-left: 0;

        border-top:

            1px solid
            rgba(255, 255, 255, 0.10);

        padding-top: 20px;

    }


    .website-credit {

        justify-content: flex-end;

    }

}


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

@media (max-width: 760px) {

    .footer-grid {

        grid-template-columns: 1fr;

        gap: 0;

        padding-top: 55px;

        padding-bottom: 30px;

    }


    /* BRAND */

    .footer-brand {

        max-width: 100%;

        padding-bottom: 35px;

    }


    .footer-main-logo {

        width: 150px;

        margin-bottom: 20px;

    }


    .footer-brand p {

        font-size: 12px;

        line-height: 1.75;

    }


    /* COLUMNS */

    .footer-column {

        border-left: 0;

        border-top:

            1px solid
            rgba(255, 255, 255, 0.10);

        padding:

            28px 0;

    }


    .footer-column h4 {

        font-size: 19px;

    }


    .footer-column > a:not(.contact-item) {

        font-size: 12px;

        margin-bottom: 12px;

    }


    .footer-contact {

        grid-column: auto;

    }


    .address-item {

        max-width: 100%;

    }


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

    .footer-bottom-inner {

        min-height: auto;

        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        gap: 22px;

        padding:

            25px 0 30px;

        text-align: center;

    }


    /* WEBSITE CREDIT */

    .website-credit {

        order: 1;

        width: 100%;

        min-width: 0;

        display: flex;

        align-items: center;

        justify-content: center;

        flex-wrap: wrap;

        gap: 5px;

        font-size: 10px;

    }


    .itwf-link {

        font-size: 14px;

    }


    /* THIRDEYE MINI BRAND */

    .footer-mini-brand {

        order: 2;

        display: flex;

        align-items: center;

        justify-content: center;

        padding: 0;

        border: 0;

    }


    .mini-logo {

        width: 48px;

        height: 48px;

        flex: 0 0 48px;

    }


    .mini-brand-text {

        text-align: left;

    }


    .mini-brand-text strong {

        font-size: 13px;

    }


    .mini-brand-text span {

        font-size: 8px;

    }


    /* COPYRIGHT */

    .footer-copyright {

        order: 3;

        font-size: 9px;

        text-align: center;

    }

}


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

@media (max-width: 400px) {

    .footer-main-logo {

        width: 140px;

    }


    .footer-brand p {

        font-size: 11.5px;

    }


    .contact-item {

        font-size: 12px;

    }


    .contact-icon {

        width: 36px;

        height: 36px;

        flex-basis: 36px;

    }


    .website-credit {

        font-size: 9.5px;

    }


    .itwf-link {

        font-size: 13px;

    }


    .mini-logo {

        width: 44px;

        height: 44px;

        flex-basis: 44px;

    }


    .mini-brand-text strong {

        font-size: 11px;

    }

}