/* -------------------------------------- FOOTER -------------------------------------- */
.footer_section {
    background: var(--ma-tag-black);
    background-image: url('/Assets/Images/footer-tech-bg.webp');
    background-size: cover;
    background-position: center;
    background-attachment: scroll;
    color: var(--ma-white);
    position: relative;
    overflow: hidden;
    padding: 80px 80px;
}
    .footer_section::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        background: var(--ma-tag-black);
        opacity: 0.60;
    }

    .footer_section .container-fluid {
        position: relative;
        z-index: 1;
    }



/* -------------------------- Nav column heading -------------------------- */
.ft-col-heading {
    color: var(--ma-white);
    padding-bottom: 10px;
    border-bottom: 0.20px solid transparent;
    border-image: linear-gradient(0.25turn, #98a6ad9c, rgba(56, 2, 155, 0));
    border-image-slice: 1;
    margin-bottom: 20px;
}

/* -------------------------- Brand column -------------------------- */
.ft-logo-link { 
    display: inline-block; margin-bottom: 18px;
}
.ft-logo {
    height: 40px;
    width: auto;
}
.ft-about {
    color: var(--ma-gray-600);
}

/* -------------------------- Social icons -------------------------- */

.social_icons_footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center !important;
    align-items: center !important;
}

    .social_icons_footer > a {
        height: 36px;
        width: 36px;
        border-radius: 100%;
        margin: 0px 10px 0px 0px;
        line-height: 36px;
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: center !important;
        align-items: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

        .social_icons_footer > a > i {
            content: "";
            font-size: 15px;
        }


.social_icons_facebook {
    background-color: #1877f2;
    color: white;
}

    .social_icons_facebook:hover,
    .social_icons_facebook:focus,
    .social_icons_facebook:active {
        background-color: white;
        color: #1877f2;
    }



.social_icons_twitter {
    background-color: white;
    color: black;
}

    .social_icons_twitter:hover,
    .social_icons_twitter:focus,
    .social_icons_twitter:active {
        background-color: black;
        color: white;
    }


.social_icons_linkedin {
    background-color: #0a66c2;
    color: white;
}

    .social_icons_linkedin:hover,
    .social_icons_linkedin:focus,
    .social_icons_linkedin:active {
        background-color: white;
        color: #0a66c2;
    }

.social_icons_youtube {
    background-color: #FF0000;
    color: white;
}

    .social_icons_youtube:hover,
    .social_icons_youtube:focus,
    .social_icons_youtube:active {
        background-color: white;
        color: #FF0000;
    }

/* -------------------------- Contact -------------------------- */
.contact_footer {
    padding: 0px 0px 0px 30px;
    margin: 0px;
    position: relative;
}

    .contact_footer i {
        position: absolute;
        left: 0px;
        top: 0px;
        font-size: var(--ma-body-text);
        height: 20px;
        width: 20px;
        line-height: 20px;
        color: var(--ma-gray-600);
    }

    .contact_footer h6 {
        margin-bottom: 5px;
        color: var(--ma-gray-600);
    }

    .contact_footer p {
        color: var(--ma-gray-600);
    }


        .contact_footer p a {
            color: var(--ma-gray-600);
            font-size: var(--ma-body-text);
            letter-spacing: 0.3px;
        }

            .contact_footer p a:hover,
            .contact_footer p a:focus,
            .contact_footer p a:active {
                color: var(--ma-white);
                text-decoration: underline;
            }




/* -------------------------- Quick Links inline block (below emails) -------------------------- */
.ft-links-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.ft-links-list--mt { margin-top: 20px; }

.ft-links-list li a {
    font-size: var(--ma-body-text);
    color: var(--ma-gray-600);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color .18s, gap .18s;
}
    .ft-links-list li a::before {
        content: '';
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: var(--ma-gray-600);
        flex-shrink: 0;
        transition: background .18s, transform .18s;
    }
    .ft-links-list li a:hover,
    .ft-links-list li a:focus,
    .ft-links-list li a:active{
        color: var(--ma-white);
    }
        .ft-links-list li a:hover::before,
        .ft-links-list li a:focus::before,
        .ft-links-list li a:active::before {
            background: var(--ma-type-primary);
            transform: scale(1.3);
        }


/* -------------------------- GET IN TOUCH -------------------------- */
.ft-git-text {
    font-size: clamp(54px, 8vw, 110px);
    font-weight: 200;
    color: #fff;
    letter-spacing: -.02em;
    line-height: 1;
    white-space: nowrap;
}
.ft-git-col {
    text-align:right;
}
.ft-git-btn {
    flex-shrink: 0;
    background: var(--ma-type-secondary);
    color: var(--ma-white);
    font-size: var(--ma-body-text);
    text-decoration: none;
    padding: 13px 26px;
    border-radius: 50px;
    transition: background .2s, transform .2s;
    white-space: nowrap;
    display: inline-block;
}
    .ft-git-btn:hover,
    .ft-git-btn:focus,
    .ft-git-btn:active {
        background: var(--ma-type-secondaryhoverdark);
        transform: translateY(-2px);
        color: var(--ma-white);
    }

/* -------------------------- NAV LINKS BAR -------------------------- */

.ft-nav {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}
    .ft-nav a {
        font-size: var(--ma-body-text);
        color: var(--ma-gray-600);
        text-decoration: none;
        transition: color .18s, gap .18s;
        display: inline-block;
    }
        .ft-nav a:hover,
        .ft-nav a:focus,
        .ft-nav a:active {
            color: var(--ma-white);
        }

/* -------------------------- BOTTOM BAR -------------------------- */

.ft-copy {
    font-size: var(--ma-metadata);
    color: var(--ma-gray-600);
    margin: 0;
    letter-spacing: .03em;
}
    .ft-copy strong {
        color: var(--ma-gray-600);
        white-space: nowrap;
    }



.ft-badges {
    display: flex;
    align-items: center;
    gap: 14px;
}
.ft-badges a { 
    display: inline-block; 
    transition: opacity .2s; 
    opacity: .7; 
}
    .ft-badges a:hover,
    .ft-badges a:focus,
    .ft-badges a:active {
        opacity: 1;
    }
.ft-badges img { 
    height: 24px; 
    width: auto; 
    object-fit: contain; 
}
.ft-badges a:last-child img { 
    height: 40px; 
}




/* -------------------------- Scroll to top -------------------------- */

.scrollUp {
    position: fixed;
    bottom: 10px;
    right: 10px;
    border: 0px;
    background-color: white;
    padding: 8px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center !important;
    align-items: center !important;
    z-index: 10000;
    border: 1px solid var(--ma-gray-400);
    border-radius: 5px;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    display: none;
}

    .scrollUp > svg {
        width: 25px;
        height: 25px;
        fill: var(--ma-gray-700);
        -webkit-transition: all .3s ease;
        -moz-transition: all .3s ease;
        -ms-transition: all .3s ease;
        -o-transition: all .3s ease;
        transition: all .3s ease;
    }

    .scrollUp:hover > svg,
    .scrollUp:focus > svg,
    .scrollUp:active > svg {
        fill: var(--ma-type-primary);
        -webkit-transition: all .3s ease;
        -moz-transition: all .3s ease;
        -ms-transition: all .3s ease;
        -o-transition: all .3s ease;
        transition: all .3s ease;
    }




/* ── RESPONSIVE ── */
@media (max-width: 1280px) {
    
    
}
@media (max-width: 991.99px) {
    .ft-git-text {
        text-align: center;
        display: block;
    }
    .ft-git-col {
        text-align: center;
    }
    .ft-nav {
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }
    .ft-copy {
        margin-bottom: 35px;
        text-align: center;
    }
    .ft-badges {
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }
}
@media (max-width: 768px) {
    .footer_section {
        padding: 40px;
    }
}
@media (max-width: 576.99px) {
    .ft-git-text {
        font-size: var(--ma-page-title);
        margin-bottom:20px;
    }
    .ft-nav {
        gap: 20px 40px;
    }
    .ft-badges {
        display: block;
    }
    .ft-badges a {
        padding:10px;
        margin-bottom:10px;
    }
}
