/* FOOTER */
footer {
    background: radial-gradient(ellipse 90% 170% at 0% 100%, #38B6FF 0%, #1d4f72 22%, #142434 42%, #101317 60%, #111317 100%);
}

.footer-bg {
    overflow: hidden;
    position: relative;
    z-index: 0;

    .ft-bottom-sec {
        padding-block: 87px 64px;

        .container {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;

            &:after,
            &:before {
                display: none;
            }

            .getintouch-left {
                width: 325px;

                & p {
                    font-size: 16px;
                    font-weight: normal;
                    line-height: 24px;
                    letter-spacing: 0%;
                    color: #fff;
                    margin-bottom: 54px;
                    font-family: var(--font-ui);
                }

                .img-wrap {
                    margin-bottom: 14px;
                }
            }

            .getintouch-right {
                width: calc(100% - 325px);
                max-width: 1075px;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
            }
        }
    }
}

.footer-bg>*,
.cta-wrapper>*,
.cta-content p {
    color: var(--white);
}

.contact-details {
    position: relative;

    .contact-wrap {
        margin-bottom: 30px;
        margin-left: 0;

        .ft-text {
            margin-bottom: 20px;
            display: flex;
            flex-wrap: wrap;
            align-items: center;

            &::last-child {
                margin-bottom: 0;
            }

            & .lct-icon {
                position: relative;
                width: 40px;
                height: 40px;
                background: #fff;
                border-radius: 100%;
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                justify-content: center;
                text-align: center;

                & .lct-icon img {
                    filter: brightness(0) saturate(100%) invert(100%) sepia(8%) saturate(0%) hue-rotate(260deg) brightness(107%) contrast(102%);
                }
            }

            & .lct-info {
                padding-left: 18px;
                width: calc(100% - 40px);

                & P,
                a {
                    font-weight: normal;
                    font-size: 16px;
                    line-height: 24px;
                    color: #fff;
                    letter-spacing: 0;
                    font-family: var(--font-ui);
                    text-transform: unset;
                    text-decoration: none;
                }
            }

            /* &.address {
                position: relative;

                &::after {
                    content: '';
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 18px;
                    height: 22px;
                    background: url(../images/icon/location.png) no-repeat;
                    background-size: contain;
                }
            }

            &.contact {
                position: relative;

                &::after {
                    content: '';
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 16px;
                    height: 16px;
                    background: url(../images/icon/call-icon.svg) no-repeat;
                    background-size: contain;
                    filter: brightness(0) invert(1);
                }
            }

            &.mail {
                position: relative;

                &::after {
                    content: '';
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 16px;
                    height: 16px;
                    background: url(../images/icon/call-icon.svg) no-repeat;
                    background-size: contain;
                    filter: brightness(0) invert(1);
                }
            } */


            & a {
                color: var(--white);

                &:hover {
                    color: var(--primary);
                    text-decoration: underline;
                }
            }
        }
    }
}

img.ft-bg-logo {
    position: absolute;
    right: 22px;
    top: 0;
    bottom: 0;
    width: 370px;
    height: 347px;
    margin: auto;
    opacity: 6%;
}

.licenced-background {
    background: var(--secondary);
    border-radius: 6px;
    padding-bottom: 5px;
    max-width: 269px;
}

.licensed-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    padding: 11px 17px;
    background: #fff;
    border-radius: 6px;
}

.licensed-text {
    color: #111317;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 22px;
    width: calc(100% - 44px);
    font-family: var(--font-ui);
}

.ft-service-list {
    position: relative;

    &:last-child {
        &:after {
            content: none;
        }
    }
}

.ft-heading {
    font-family: var(--font-ui);
    font-weight: var(--font-weight-regular);
    font-size: 16px;
    line-height: 31px;
    color: #fff;
    text-transform: capitalize;
    margin-bottom: 21px;
}

.footer-links {
    margin: 0;

    li {
        position: relative;
        list-style-type: none;
        line-height: 1;
        margin-bottom: 0;

        & a {
            font-family: var(--font-ui);
            font-weight: 500;
            font-size: 16px;
            line-height: 31px;
            color: #fff;
            letter-spacing: 0%;
            text-decoration: none;
        }

        &:last-child {
            margin-bottom: 0;
        }

        &::before {
            content: none;
        }
    }
}

.footer-links li.active>a,
.footer-links li>a:hover {
    color: var(--primary);
    text-decoration: underline;
}

.copyright {
    border-top: 1px solid rgb(255 255 255 / 10%);
    padding-block: 22px;
    text-align: center;
}

.copyright p,
.copyright a {
    font-family: var(--font-ui);
    font-weight: normal;
    font-size: 16px;
    line-height: 1.1;
    color: #fff;
    letter-spacing: 0;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
    text-transform: capitalize;
}

.copyright p span {
    margin-inline: 4px;
}

.copyright a {
    border-bottom: none;

    & img.ftrsignimg {
        margin-left: 2px;
    }
}

@media (max-width: 1599.99px) {
    .footer-bg {
        & .ft-bottom-sec {
            & .container {
                .getintouch-right {
                    max-width: 880px;
                }
            }
        }
    }
}

@media(max-width: 1439.99px) {
    .footer-bg {

        & .ft-bottom-sec {
            padding-block: 50px;

            & .container {
                .getintouch-left {
                    width: 300px;

                    p {
                        font-size: 16px;
                    }
                }

                .getintouch-right {
                    width: calc(100% - 300px);
                    max-width: 720px;
                }

            }
        }
    }

    .ft-heading {
        font-size: 20px;
        line-height: 1.1;
    }

    .footer-links {
        & li {
            & a {
                font-size: 16px;
            }
        }
    }

    .ft-service-list {
        &::after {
            transform: translateX(40px);
        }
    }

    .contact-details {
        & .contact-wrap {
            .ft-text {
                font-size: 16px;

                & .lct-icon {
                    position: relative;
                    width: 30px;
                    height: 30px;

                    & img {
                        max-width: 13px;
                    }
                }

                & .lct-info {
                    padding-left: 10px;
                    width: calc(100% - 40px);
                }

                & .label {
                    margin-bottom: 10px;
                }

                &.address {
                    &::after {
                        width: 16px;
                        height: 19px;
                    }
                }
            }
        }

        &::after {
            transform: translateX(40px);
        }
    }
}

@media (max-width: 1199.99px) {

    .footer-bg {
        & .ft-bottom-sec {
            padding-block: 30px;

            & .container {
                gap: 30px;

                .getintouch-left {
                    width: 100%;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    gap: 30px;

                    p {
                        margin-bottom: 0;
                        max-width: 420px;
                    }

                    .img-wrap {
                        margin-bottom: 0;

                        img {
                            max-width: 190px;
                        }
                    }

                    .licenced-background {}
                }

                .getintouch-right {
                    width: 100%;
                    max-width: 100%;
                }

            }
        }
    }

    .contact-details {
        & .contact-wrap {
            .ft-text {
                align-items: flex-start;
            }
        }

        &::after {
            transform: translateX(32px);
        }
    }

    .ft-service-list {
        &::after {
            transform: translateX(33px);
        }
    }

    .footer-links {
        & li {
            margin-bottom: 5px;
        }
    }

    .licenced-background {
        max-width: 100%;
    }

    .licensed-wrapper {
        gap: 10px;
        padding: 10px 10px;
    }

    .licensed-text {
        line-height: 20px;
    }
}

@media (max-width: 991.99px) {
    .footer-bg {

        & .ft-bottom-sec {
            & .container {

                .getintouch-left {
                    flex-direction: column;
                    justify-content: unset;
                    align-items: unset;
                    gap: 15px;

                    p {
                        max-width: 100%;
                    }
                }
            }
        }
    }

    .contact-details {
        width: 100%;
        margin-top: 30px;

        &::after {
            transform: translateX(50px);
        }
    }

    .ft-service-list {
        width: calc(50% - 30px);

        &::after {
            transform: translateX(50px);
        }
    }

    .copyright .container.justify-between {
        justify-content: center !important;
        gap: 2px;
    }

}

@media (max-width: 767.99px) {
    .footer-bg {
        & .ft-bottom-sec {
            padding-block: 25px;
        }
    }

    .ft-heading {
        margin-bottom: 15px;
    }

    .ft-service-list {
        &::after {
            transform: translateX(12px);
        }
    }

    .contact-details {
        &::after {
            transform: translateX(12px);
        }
    }

    .footer-links {
        & li {
            & a {
                font-size: 16px;
                line-height: 25px;
            }
        }
    }


    .licensed-text {
        font-size: 15px;
    }

}

@media (max-width: 575.99px) {

    .footer-bottom .ft-title {
        position: relative;
    }

    .ft-title::after {
        position: absolute;
        content: "";
        right: 5px;
        top: 5px;
        width: 16px;
        height: 14px;
        background: url(../images/svg/plus.svg) no-repeat right 0 center;
        background-size: contain;
        -webkit-transition: .5s ease-in-out;
        filter: brightness(0) invert(1);
    }

    .ft-title.linkopen:after {
        rotate: 180deg;
        background: url(../images/svg/minus.svg) no-repeat right 0 center;
        background-size: contain;
        -webkit-transition: .5s ease-in-out;
    }

    .ft-service-list:last-child .ft-heading {
        margin-bottom: 0;
    }

    .ft-service-list .ft-heading.linkopen {
        margin-bottom: 10px;
    }

    .socialmedia {
        margin-bottom: 20px;
    }

    .ft-title.linkopen::before {
        content: none;
    }

    .contact-details {
        width: 100%;
        margin-top: unset;

        & .contact-wrap {
            margin-bottom: 0px;

            & .ft-text {
                margin-bottom: 15px;

                &:last-of-type {
                    margin-bottom: 0px;
                }
            }
        }
    }

    .ft-service-list {
        width: 100%;
        border-bottom: 1px solid rgb(255 255 255 / 20%);
    }

    .ft-service-list:has(.linkopen) {
        margin-bottom: 15px;
    }

    .footer-links {
        display: none;
    }

    .footer-links li {
        line-height: 1.1;
        margin-bottom: 12px;

        & a {
            line-height: 1.1;
        }

        &:last-child {
            margin-bottom: 0;
        }
    }

    .copyright {
        padding: 10px 15px;

        & p {
            display: flex;
            font-size: 12px;
            line-height: 1.5;
            flex-direction: column;

            & a {
                display: inline;

                & img.ftrsignimg {
                    margin-top: 0;
                    margin-left: 0;
                    max-width: 165px;
                }
            }
        }
    }

    a.signature {
        margin-top: 1px;
    }

    .footer-bg {
        & .ft-bottom-sec {
            & .container {

                .getintouch-left {
                    width: 100%;
                    max-width: 100%;

                    p {
                        margin-bottom: 0;
                    }
                }

                .getintouch-right {
                    gap: 15px;
                }
            }
        }
    }

    .licenced-background {
        max-width: 50%;
    }

    .ft-service-list:has(.ft-title.linkopen) .footer-links {
        margin-bottom: 15px;
    }

    .ft-heading {
        font-size: 18px;
    }
}


@media (max-width: 480px) {
    .licenced-background {
        max-width: 70%;
        width: auto;
    }
}