.ftr.v8 {

    /* -- Font overrides ------------------------ */

    /* Big headline: Figma 80px = 5rem (default 7.889rem) */
    --fnt-t-big-s: 5rem;

    /* CTA heading: Figma 24px = 1.5rem (default 1.778rem) */
    --fnt-t-2-s: 1.5rem;

    /* Phone value: Figma 24px = 1.5rem (default 1.333rem) */
    --fnt-phn-s: 1.5rem;

    /* Nav column headings: uppercase + tracking */
    .ftr-v8-hdg {
        --fnt-t-6-tt: uppercase;
        --fnt-t-6-ls: 0.0375em;
    }

    /* -- Red gradient accent bar --------------- */

    .ftr-v8-bar {
        height: 0.5rem;
        background: var(--buttons);
    }

    /* -- Left sidebar -------------------------- */

    .ftr-v8-side {
        gap: 1.5rem;

        @media screen and (min-width:1280px) {
            & {
                padding: 2.5rem;
            }
        }
    }

    /* Contact info rows */
    .ftr-v8-contacts {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .ftr-v8-ctc {
        gap: 1rem;
    }

    .ftr-v8-icn {
        width: 2.8rem;
        height: 2.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        background: var(--buttons);
        border-radius: 0.5rem;
        flex-shrink: 0;
        color: white;
    }



    .crds {

        .fnt_t-nt {
            --fnt-t-nt-ff: var(--fnt-t);
            --fnt-t-nt-tt: uppercase;
            --fnt-t-nt-w: 700;
            color: rgba(255, 255, 255, 0.6);
        }

        svg {
            font-size: 2.5rem;
        }
    }

    .ftr-v8-addr {
        font-weight: 600;
        line-height: 1.5;
    }

    /* Separator sections (social, payments) */
    .ftr-v8-sep {
        gap: 1rem;
        padding-top: 1rem;
        border-top: 1px solid rgba(255, 255, 255, 0.2);

        .fnt_t-nt {
            --fnt-t-nt-s: .75rem;
            --fnt-t-nt-tt: uppercase;
            --fnt-t-nt-ls: 1.2px;
            color: rgba(255, 255, 255, 0.6);
        }
    }

    .ftr-v8-sm-lbl {
        font-size: 0.75rem;
        font-weight: 400;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: rgba(255, 255, 255, 0.6);
    }

    .ftr-v8-socials {
        gap: 0.75rem;
    }

    .so-lk {
        width: 2.5rem;
        height: 2.5rem;
        background: rgba(255, 255, 255, 0.1);
        border-radius: 50%;

        svg {
            width: 1.25rem;
            height: 1.25rem;
            fill: currentColor;
        }
    }

    .ftr-v8-payments {
        gap: 1.25rem;

        svg {
            height: 1.875rem;
            width: auto;
        }
    }

    .ftr-v8-lic {
        font-size: 1rem;
        line-height: 1;
        color: rgba(255, 255, 255, 0.4);
    }

    /* -- Right content area -------------------- */

    .ftr-v8-main {
        @media screen and (min-width:1280px) {
            & {
                padding: 2.5rem;
            }
        }
    }

    /* Headline + decorative images */


    /* Nav columns */
    .ftr-v8-nav {
        gap: 2rem;

        > div {
            flex: 1;
        }
    }

    .ftr-v8-lnk {
        font-weight: 700;
        font-size: .889rem;
        color: hsl(from var(--text-color) h s l / .7);
    }

    /* CTA card at bottom */
    .ftr-v8-cta {
        border-left: 4px solid var(--buttons);
        border-radius: 0 0.625rem 0.625rem 0;
        overflow: hidden;

        @media screen and (min-width:1280px) {
            .pd_v.pd_h {
                padding: 1.78rem;
            }
        }
    }

    .ftr-v8-cta-body {
        color: hsl(from var(--text-color) h s l / .7);
        line-height: 1.625;
        letter-spacing: -0.02em;

        @media screen and (min-width:1280px) {
            max-width: 55%;
        }
    }

    /* -- Desktop layout ------------------------ */

    @media screen and (min-width: 1280px) {
        .ftr-v8-links {
            --itm-val: 25;
            --itm-w: calc(var(--itm-val) * 1% - (var(--grd-sp-dyn) * ((100 - var(--itm-val)) * .01)));
        }
        .ftr-v8-side {
            width: 24rem;
            flex-shrink: 0;
        }

        .ftr-v8-nav {
            padding-right: 5rem;
        }
    }
}
