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

/*==================================================
FOOTER
==================================================*/


.footer
{

    background:#021b6d;

    color:#fff;

    padding-top:80px;

}



/* GRID */

.footer-grid
{

    display:grid;

    grid-template-columns:

    1.2fr

    1fr

    .8fr;

    gap:3rem;

    align-items:center;

}



/* LOGO */


.footer-brand img
{

    width:230px;

    height:auto;

    margin-bottom:1.5rem;

}



.footer-brand p
{

    max-width:350px;

    color:rgba(255,255,255,.75);

    line-height:1.8;

}



/* CONTACTO */


.footer-contact h3
{

    color:#fff;

    margin-bottom:1rem;

    font-size:1.4rem;

}



.footer-contact p
{

    color:rgba(255,255,255,.75);

    margin-bottom:1.5rem;

}




/* ASESORES */


.advisor
{

    display:flex;

    align-items:center;

    gap:.8rem;

    color:#fff;

    margin-bottom:1rem;

    font-weight:600;

}



.advisor-icon
{

    display:flex;

    align-items:center;

    justify-content:center;

    width:40px;

    height:40px;

    border-radius:50%;

    background:#25D366;

}



.advisor-icon i
{

    font-size:1.2rem;

}



/* QR */


.footer-social
{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:1.5rem;

}



.footer-qr
{

    width:130px;

    height:130px;

    padding:.5rem;

    background:#fff;

    border-radius:15px;

}



/* REDES */


.social-list
{

    display:flex;

    gap:.8rem;

}



.social-list a
{

    display:flex;

    align-items:center;

    justify-content:center;

    width:42px;

    height:42px;

    border-radius:50%;


    background:rgba(255,255,255,.12);


    color:#fff;

    transition:.35s ease;

}



.social-list a:hover
{

    background:#c89b3c;

    transform:translateY(-5px);

}



.social-list i
{

    font-size:1rem;

}


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

.footer-bottom
{

    margin-top:60px;

    padding:25px 0;

    border-top:1px solid rgba(255,255,255,.10);
	
	background: #01124a;


}


/* TEXTO */

.footer-bottom p
{

    text-align:center;

    color:rgba(255,255,255,.72);

    font-size:.95rem;

    letter-spacing:.3px;

}


/* CORAZÓN */

.footer-bottom span
{

    display:inline-block;

    color:#ff5d73;

    animation:heartBeat 1.8s infinite;

}

/*==================================================
COLABORAWEB FOOTER
==================================================*/

.footer-bottom a
{

    position:relative;

    display:inline-block;

background:linear-gradient(
    90deg,
    #FCD116,
    #FFE56B,
    #003893,
    #2D6CDF,
    #CE1126,
    #FCD116
);

background-size:300% auto;


    -webkit-background-clip:text;
    background-clip:text;


    -webkit-text-fill-color:transparent;


    animation:footerGradient 7s linear infinite;


}



/* Línea inferior */

.footer-bottom a::after
{

    content:"";


    position:absolute;


    left:0;


    bottom:-4px;


    width:100%;


    height:2px;


    border-radius:20px;

background:linear-gradient(
    90deg,
    #FCD116,
    #003893,
    #CE1126
);

    transform:scaleX(.45);


    transform-origin:center;


    opacity:.55;


    animation:lineMove 3.5s ease infinite;


    pointer-events:none;


}



/* Contenedor inferior */

.footer-bottom
{

    position:relative;

    z-index:1;

}





/*==================================================
ANIMACIONES
==================================================*/


@keyframes footerGradient
{

    0%
    {

        background-position:0%;

    }


    100%
    {

        background-position:300%;

    }

}





@keyframes lineMove
{

    0%,100%
    {

        transform:scaleX(.45);

        opacity:.45;

    }


    50%
    {

        transform:scaleX(1);

        opacity:1;

    }

}





@keyframes heartBeat
{

    0%,100%
    {

        transform:scale(1);

    }


    25%
    {

        transform:scale(1.18);

    }


    50%
    {

        transform:scale(.95);

    }


    75%
    {

        transform:scale(1.12);

    }

}


/*==================================================
TABLET
==================================================*/


@media(max-width:992px)
{


.footer-grid
{

    grid-template-columns:1fr;

    text-align:center;

}


.footer-brand p
{

    margin:auto;

}


.footer-social
{

    margin-top:1rem;

}



}


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


@media(max-width:576px)
{


.footer
{

    padding-top:60px;

}


.footer-brand img
{

    width:190px;

}


}