/* =====================================================
   ZKR REAL ESTATE — GLOBAL FOOTER
===================================================== */

.zkr-site-footer {
    background: #0a0a0a;
    color: #f4f2ed;

    padding:
        55px
        32px
        30px;
}


.zkr-site-footer__container {
    width: min(1280px, 100%);
    margin: 0 auto;
}


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

.zkr-site-footer__top {
    padding-bottom: 55px;

    display: grid;

    grid-template-columns:
        1fr
        1fr
        .7fr;

    gap: 60px;

    border-top:
        1px solid rgba(244,242,237,.16);

    padding-top: 42px;
}


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

.zkr-site-footer__brand {
    width: fit-content;

    display: flex;
    flex-direction: column;

    gap: 7px;

    color: #f4f2ed;

    text-decoration: none;
}


.zkr-site-footer__logo {
    font-family:
        Didot,
        "Bodoni MT",
        Georgia,
        serif;

    font-size: 30px;

    line-height: 1;

    font-style: italic;
}


.zkr-site-footer__tagline {
    font-family:
        Inter,
        Arial,
        sans-serif;

    font-size: 9px;

    letter-spacing: .6px;

    opacity: .5;
}


/* =====================================================
   NAVIGATION
===================================================== */

.zkr-site-footer__nav {
    display: grid;

    grid-template-columns:
        1fr
        1fr;

    gap:
        15px
        35px;
}


.zkr-site-footer__nav a {
    width: fit-content;

    color: #f4f2ed;

    text-decoration: none;

    font-family:
        Inter,
        Arial,
        sans-serif;

    font-size: 11px;

    opacity: .65;

    transition:
        opacity 180ms ease;
}


.zkr-site-footer__nav a:hover {
    opacity: 1;
}


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

.zkr-site-footer__social {
    display: flex;

    flex-direction: column;

    align-items: flex-end;

    gap: 14px;
}


.zkr-site-footer__social a {
    color: #f4f2ed;

    text-decoration: none;

    font-family:
        Inter,
        Arial,
        sans-serif;

    font-size: 10px;

    letter-spacing: .6px;

    opacity: .65;

    transition:
        opacity 180ms ease;
}


.zkr-site-footer__social a:hover {
    opacity: 1;
}


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

.zkr-site-footer__bottom {
    padding-top: 25px;

    border-top:
        1px solid rgba(244,242,237,.12);

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    font-family:
        Inter,
        Arial,
        sans-serif;

    font-size: 8px;

    letter-spacing: .8px;

    text-transform: uppercase;

    color:
        rgba(244,242,237,.42);
}


.zkr-site-footer__legal {
    display: flex;

    align-items: center;

    gap: 25px;
}


.zkr-site-footer__legal a {
    color: inherit;

    text-decoration: none;
}


.zkr-site-footer__legal a:hover {
    color: #f4f2ed;
}


/* =====================================================
   TABLETTE
===================================================== */

@media (min-width: 768px) and (max-width: 1180px) {

    .zkr-site-footer {
        padding:
            50px
            24px
            28px;
    }


    .zkr-site-footer__top {
        grid-template-columns:
            1fr
            1fr
            .6fr;

        gap: 35px;
    }


    .zkr-site-footer__logo {
        font-size: 26px;
    }

}


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

@media (max-width: 767px) {

    .zkr-site-footer {
        padding:
            45px
            20px
            25px;
    }


    .zkr-site-footer__top {
        display: flex;

        flex-direction: column;

        gap: 45px;

        padding-top: 35px;
        padding-bottom: 45px;
    }


    .zkr-site-footer__logo {
        font-size: 28px;
    }


    .zkr-site-footer__nav {
        grid-template-columns:
            1fr
            1fr;

        gap:
            18px
            30px;
    }


    .zkr-site-footer__nav a {
        font-size: 13px;
    }


    .zkr-site-footer__social {
        align-items: flex-start;

        flex-direction: row;

        flex-wrap: wrap;

        gap:
            15px
            24px;
    }


    .zkr-site-footer__social a {
        font-size: 11px;
    }


    .zkr-site-footer__bottom {
        align-items: flex-start;

        flex-direction: column;

        gap: 17px;

        line-height: 1.5;
    }


    .zkr-site-footer__legal {
        align-items: flex-start;

        flex-direction: column;

        gap: 10px;
    }

}

/* ==========================================================
   FOOTER — LOCATION + SOUS-DESTINATIONS
   ========================================================== */

.zkr-site-footer__nav-group--locations {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
}

.zkr-site-footer__nav-parent {
    display: block;

    color: inherit;
    font: inherit;
    line-height: inherit;
}

.zkr-site-footer__subnav {
    display: flex !important;
    flex-direction: column;

    margin-top: 8px;
    padding-left: 12px;

    gap: 6px;
}

.zkr-site-footer__subnav a {
    display: block !important;

    color: rgba(255, 255, 255, 0.46) !important;
    text-decoration: none;

    font-size: 11px !important;
    line-height: 1.4;
    letter-spacing: 0.02em;

    opacity: 1 !important;

    transition:
        color .25s ease,
        transform .25s ease;
}

@media (hover: hover) {

    .zkr-site-footer__subnav a:hover {
        color: rgba(255, 255, 255, 0.9) !important;
        transform: translateX(3px);
    }

}

/* ==========================================================
   FOOTER — LOCATION SUBMENU
   ========================================================== */

.zkr-site-footer__nav-group--locations {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}


/* ==========================================================
   FOOTER — LOCATION SUBMENU
   ========================================================== */

.zkr-site-footer__nav-group--locations {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.zkr-site-footer__subnav {
    display: flex;
    flex-direction: column;
    gap: 3px;

    margin-top: 3px;
}

.zkr-site-footer__subnav a {
    margin: 0 !important;
    padding: 0 !important;

    font-size: 9px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;

    color: rgba(255, 255, 255, .38) !important;
}

@media (hover: hover) {

    .zkr-site-footer__subnav a:hover {
        color: rgba(255, 255, 255, .75) !important;
    }

}