/* ============================================================
   FYSIOHUB FOOTER
   ============================================================ */


/* ------------------------------------------------------------
   BASIS
   ------------------------------------------------------------ */

body .fh-footer,
body .fh-footer * {
    box-sizing: border-box !important;
}

body .fh-footer {
    width: 100vw !important;
    max-width: 100vw !important;

    position: relative !important;
    left: 50% !important;

    margin: 0 0 0 -50vw !important;
    padding: 0 !important;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(105, 86, 232, 0.15),
            transparent 34%
        ),
        radial-gradient(
            circle at 92% 5%,
            rgba(40, 199, 183, 0.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #1B355C 0%,
            #102A43 52%,
            #0C3444 100%
        ) !important;

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;

    overflow: hidden !important;
}

body .fh-footer a {
    text-decoration: none !important;
}


/* ------------------------------------------------------------
   HOOFDINHOUD
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-content {
    width: calc(100% - 80px) !important;
    max-width: 1500px !important;

    margin: 0 auto !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    align-items: flex-start !important;
    justify-content: space-between !important;

    column-gap: 38px !important;

    /*
     * Dit bepaalt grotendeels de hoogte
     * van het bovenste gedeelte.
     */
    padding: 24px 0 22px !important;
}


/* ------------------------------------------------------------
   LOGO
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-brand {
    flex: 0 0 245px !important;
    width: 245px !important;

    margin: 0 !important;
    padding: 1px 0 0 !important;
}

body .fh-footer .fh-footer-logo {
    display: inline-block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #FFFFFF !important;

    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    letter-spacing: -0.05em !important;

    white-space: nowrap !important;
}

body .fh-footer .fh-footer-logo span {
    color: #7866F2 !important;
}


/* ------------------------------------------------------------
   MENU KOLOMMEN
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-menu {
    flex: 1 1 0 !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* ------------------------------------------------------------
   KOLOMTITELS
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-menu h3 {
    margin: 0 0 7px !important;
    padding: 0 !important;

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;

    font-size: 14px !important;
    font-weight: 750 !important;

    line-height: 1.15 !important;
}


/* ------------------------------------------------------------
   LINKLIJSTEN
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-links {
    list-style: none !important;

    display: flex !important;
    flex-direction: column !important;

    /*
     * Zeer kleine verticale ruimte
     * tussen menu-items.
     */
    gap: 1px !important;

    margin: 0 !important;
    padding: 0 !important;
}

body .fh-footer .fh-footer-links li {
    list-style: none !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1.15 !important;
}

body .fh-footer .fh-footer-links li::marker,
body .fh-footer .fh-footer-links li::before {
    content: "" !important;
    display: none !important;
}

body .fh-footer .fh-footer-links a {
    display: inline !important;

    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255, 255, 255, 0.78) !important;

    font-family: "Montserrat", sans-serif !important;

    font-size: 12.5px !important;
    font-weight: 500 !important;

    line-height: 1.15 !important;
}

body .fh-footer .fh-footer-links a:hover {
    color: #28C7B7 !important;
}


/* ------------------------------------------------------------
   CONTACT
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-contact-group {
    display: flex !important;
    flex-direction: column !important;

    /* Label en link vrijwel direct onder elkaar */
    gap: 0 !important;

    margin: 0 0 5px !important;
    padding: 0 !important;
}

body .fh-footer .fh-footer-small-title {
    display: block !important;

    margin: 0 0 1px !important;
    padding: 0 !important;

    color: rgba(255, 255, 255, 0.46) !important;

    font-size: 8.5px !important;
    font-weight: 750 !important;

    line-height: 1 !important;

    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body .fh-footer .fh-footer-contact-link {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #FFFFFF !important;

    font-size: 12px !important;
    font-weight: 700 !important;

    line-height: 1.1 !important;
}

body .fh-footer .fh-footer-contact-link:hover {
    color: #28C7B7 !important;
}


/* ------------------------------------------------------------
   ONDERSTE BALK
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-bottom-container {
    width: calc(100% - 80px) !important;
    max-width: 1500px !important;

    margin: 0 auto !important;

    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

body .fh-footer .fh-footer-bottom {
    display: flex !important;
    flex-direction: row !important;

    align-items: center !important;
    justify-content: space-between !important;

    gap: 25px !important;

    margin: 0 !important;

    /*
     * Geen min-height meer.
     * De inhoud bepaalt nu zelf de hoogte.
     */
    padding: 9px 0 10px !important;
}

body .fh-footer .fh-footer-bottom p {
    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255, 255, 255, 0.72) !important;

    font-size: 10.5px !important;
    font-weight: 500 !important;

    line-height: 1.2 !important;
}


/* ------------------------------------------------------------
   JURIDISCHE LINKS
   ------------------------------------------------------------ */

body .fh-footer .fh-footer-legal {
    display: flex !important;
    flex-direction: row !important;

    align-items: center !important;
    justify-content: flex-end !important;

    gap: 14px !important;

    margin: 0 !important;
    padding: 0 !important;
}

body .fh-footer .fh-footer-legal a {
    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255, 255, 255, 0.72) !important;

    font-size: 10.5px !important;
    font-weight: 500 !important;

    line-height: 1.2 !important;

    white-space: nowrap !important;
}

body .fh-footer .fh-footer-legal a:hover {
    color: #28C7B7 !important;
}

body .fh-footer .fh-footer-legal > span {
    display: block !important;

    width: 1px !important;
    height: 14px !important;

    flex: 0 0 1px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: rgba(255, 255, 255, 0.14) !important;
}


/* ------------------------------------------------------------
   WORDPRESS SHORTCODE WRAPPER
   ------------------------------------------------------------ */

body .wp-block-shortcode {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 760px) {

    body .fh-footer .fh-footer-content {
        width: calc(100% - 32px) !important;

        flex-wrap: wrap !important;

        justify-content: flex-start !important;

        gap: 22px 25px !important;

        padding: 24px 0 20px !important;
    }

    body .fh-footer .fh-footer-brand {
        width: 100% !important;
        flex: 0 0 100% !important;
    }

    body .fh-footer .fh-footer-menu {
        flex: 0 0 calc(50% - 13px) !important;
    }

    body .fh-footer .fh-footer-bottom-container {
        width: calc(100% - 32px) !important;
    }

    body .fh-footer .fh-footer-bottom {
        flex-direction: column !important;

        align-items: flex-start !important;

        gap: 7px !important;
    }

    body .fh-footer .fh-footer-legal {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }
}


/* ============================================================
   MOBIEL
   ============================================================ */

@media (max-width: 500px) {

    body .fh-footer .fh-footer-menu {
        flex: 0 0 100% !important;
    }

    body .fh-footer .fh-footer-logo {
        font-size: 27px !important;
    }
}