@charset "utf-8";
/* CSS Document */
/* ==========================================================
   FOOTER
========================================================== */

.tc-footer{

    position:relative;

    background:#1A1F2C;

    color:#D7D9DE;

    overflow:hidden;

}

.tc-footer::before{

    content:"";

    position:absolute;

    inset:0;

    background:url("../images/world-map.svg") center center no-repeat;

    background-size:70%;

    opacity:.03;

    pointer-events:none;

}

.tc-footer__top-border{

    position:relative;

    height:3px;

    background:linear-gradient(
        90deg,
        transparent,
        var(--tc-primary) 20%,
        #ff5b5f,
        var(--tc-primary) 80%,
        transparent
    );

    box-shadow:0 0 24px 1px rgba(227,30,36,.55);

}

/* ==========================================================
   Main Grid
========================================================== */

.tc-footer> .tc-container{

    position:relative;

    z-index:2;

    padding:90px 0 70px;

}

.tc-footer__grid{

    display:grid;

    grid-template-columns:1.6fr repeat(4,1fr);

    gap:60px;

}

/* ==========================================================
   Brand
========================================================== */

.tc-footer__brand{

    padding-right:30px;

}

.tc-footer__logo{

    display:inline-flex;

    margin-bottom:28px;

}

.tc-footer__logo img{

    max-width:240px;

    height:auto;

}

.tc-footer__description{

    color:#C4C7CF;

    line-height:1.9;

    margin-bottom:35px;

}

/* ==========================================================
   Social
========================================================== */

.tc-footer__social{

    display:flex;

    gap:14px;

}

.tc-footer__social a{

    width:46px;

    height:46px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    border:1px solid rgba(255,255,255,.12);

    color:#fff;

    text-decoration:none;

    transition:.35s;

}

.tc-footer__social a:hover{

    background:var(--tc-primary);

    border-color:var(--tc-primary);

    transform:translateY(-4px);

}

/* ==========================================================
   Columns
========================================================== */

.tc-footer__column h4{

    margin:0 0 28px;

    color:#fff;

    font-size:1.15rem;

    position:relative;

    padding-bottom:12px;

}

.tc-footer__column h4::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:45px;

    height:3px;

    border-radius:20px;

    background:var(--tc-primary);

}

.tc-footer__column ul{

    margin:0;

    padding:0;

    list-style:none;

}

.tc-footer__column li{

    margin-bottom:16px;

}

.tc-footer__column:not(.tc-footer__contact) li{

    position:relative;

    padding-left:18px;

}

.tc-footer__column:not(.tc-footer__contact) li::before{

    content:"\203A";

    position:absolute;

    left:0;

    top:50%;

    color:var(--tc-primary);

    font-size:17px;

    font-weight:700;

    line-height:1;

    transform:translateY(-50%);

    transition:transform .3s ease, color .3s ease;

}

.tc-footer__column:not(.tc-footer__contact) li:hover::before{

    color:#fff;

    transform:translate(3px, -50%);

}

/* ==========================================================
   Links
========================================================== */

.tc-footer__column a{

    color:#C4C7CF;

    text-decoration:none;

    transition:.3s;

    position:relative;

}

.tc-footer__column a::before{

    content:"";

    position:absolute;

    left:0;

    bottom:-4px;

    width:0;

    height:2px;

    background:var(--tc-primary);

    transition:.3s;

}

.tc-footer__column a:hover{

    color:#fff;

    padding-left:8px;

}

.tc-footer__column a:hover::before{

    width:100%;

}

/* ==========================================================
   Contact
========================================================== */

.tc-footer__contact li{

    display:flex;

    align-items:flex-start;

    gap:14px;

    margin-bottom:22px;

}

.tc-footer__contact i{

    color:var(--tc-primary);

    font-size:18px;

    width:20px;

    margin-top:3px;

}

.tc-footer__contact span{

    color:#C4C7CF;

    line-height:1.8;

}

.tc-footer__contact a{

    color:#C4C7CF;

}

/* ==========================================================
   Bottom Bar
========================================================== */

.tc-footer__bottom{

    position:relative;

    z-index:2;

    border-top:1px solid rgba(255,255,255,.08);

    background:rgba(0,0,0,.15);

}

.tc-footer__bottom-wrapper{

    min-height:72px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:30px;

    flex-wrap:wrap;

}

.tc-footer__bottom p{

    margin:0;

    color:#BFC3CC;

    font-size:.95rem;

}

.tc-footer__bottom ul{

    margin:0;

    padding:0;

    list-style:none;

    display:flex;

    align-items:center;

    gap:24px;

    flex-wrap:wrap;

}

.tc-footer__bottom ul li{

    margin:0;

}

.tc-footer__bottom a{

    color:#BFC3CC;

    text-decoration:none;

    transition:.3s ease;

    position:relative;

}

.tc-footer__bottom a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-5px;

    width:0;

    height:2px;

    background:var(--tc-primary);

    transition:.3s ease;

}

.tc-footer__bottom a:hover{

    color:#fff;

}

.tc-footer__bottom a:hover::after{

    width:100%;

}

/* ==========================================================
   Decorative Glow
========================================================== */

.tc-footer__brand{

    position:relative;

}

.tc-footer__brand::before{

    content:"";

    position:absolute;

    top:-40px;

    left:-60px;

    width:180px;

    height:180px;

    border-radius:50%;

    background:radial-gradient(

        circle,

        rgba(227,30,36,.10),

        transparent 70%

    );

    pointer-events:none;

}

/* ==========================================================
   Social Hover
========================================================== */

.tc-footer__social a i{

    transition:.3s ease;

}

.tc-footer__social a:hover i{

    transform:scale(1.15);

}

/* ==========================================================
   Contact Hover
========================================================== */

.tc-footer__contact li{

    transition:.3s ease;

}

.tc-footer__contact li:hover{

    transform:translateX(6px);

}

.tc-footer__contact li:hover i{

    color:#fff;

}

/* ==========================================================
   Column Animation
========================================================== */

@keyframes tcFooterFade{

    from{

        opacity:0;

        transform:translateY(25px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.tc-footer__brand,
.tc-footer__column{

    animation:tcFooterFade .8s ease both;

}

.tc-footer__column:nth-child(2){

    animation-delay:.08s;

}

.tc-footer__column:nth-child(3){

    animation-delay:.16s;

}

.tc-footer__column:nth-child(4){

    animation-delay:.24s;

}

.tc-footer__column:nth-child(5){

    animation-delay:.32s;

}


.tc-footer-icon{

    width:20px;

    height:20px;

    flex-shrink:0;

    color:var(--tc-primary);

    transition:.3s ease;

}
/* ==========================================================
   Tablet
========================================================== */

@media (max-width:1199px){

    .tc-footer__grid{

        grid-template-columns:1.3fr repeat(4,1fr);

        gap:40px;

    }

}

@media (max-width:991px){

    .tc-footer>.container{

        padding:70px 0 50px;

    }

    .tc-footer__grid{

        grid-template-columns:repeat(2,1fr);

        gap:45px;

    }

    .tc-footer__brand{

        grid-column:1 / -1;

        padding-right:0;

    }

}

/* ==========================================================
   Mobile
========================================================== */

@media (max-width:767px){

    .tc-footer>.container{

        padding:60px 0 40px;

    }

    .tc-footer__grid{

        grid-template-columns:1fr;

        gap:35px;

    }

    .tc-footer__logo img{

        max-width:190px;

    }

    .tc-footer__description{

        margin-bottom:25px;

    }

    .tc-footer__column h4{

        margin-bottom:20px;

    }

    .tc-footer__bottom-wrapper{

        flex-direction:column;

        justify-content:center;

        text-align:center;

        padding:20px 0;

    }

    .tc-footer__bottom ul{

        justify-content:center;

        gap:16px;

    }

}

@media (max-width:480px){

    .tc-footer__social{

        gap:10px;

    }

    .tc-footer__social a{

        width:42px;

        height:42px;

    }

    .tc-footer__bottom p{

        font-size:.9rem;

    }

    .tc-footer__bottom ul{

        gap:14px;

    }

    .tc-footer__bottom a{

        font-size:.9rem;

    }

}
