/* =========================================================
   VIVEIROS PORTUGAL
   RODAPE.CSS
   RODAPÉ E WHATSAPP
   ========================================================= */


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

.site-footer {

    position: relative;

    padding: 4rem 0 0;

    background-color: var(--verde-principal);

    color: var(--branco);

}


/* ---------------------------------------------------------
   LINHA LIMA NO TOPO
   --------------------------------------------------------- */

.site-footer::before {

    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 0.25rem;

    background-color: var(--verde-lima);

}


/* =========================================================
   COLUNAS
   ========================================================= */

.footer-column {

    height: 100%;

}


/* =========================================================
   TÍTULOS
   ========================================================= */

.footer-column h2,
.footer-column h3 {

    margin: 0 0 1.25rem;

    color: var(--branco);

    font-size: 1rem;

    font-weight: 700;

    line-height: 1.3;

}


.footer-column h2 {

    font-size: 1.25rem;

}


/* =========================================================
   DESCRIÇÃO
   ========================================================= */

.footer-description {

    max-width: 20rem;

    margin-bottom: 1.25rem;

    color: rgba(255, 255, 255, 0.68);

    font-size: 0.875rem;

    line-height: 1.7;

}


/* =========================================================
   LINK PRINCIPAL
   ========================================================= */

.footer-more {

    display: inline-flex;

    align-items: center;

    gap: 0.5rem;

    color: var(--verde-lima);

    font-size: 0.875rem;

    font-weight: 600;

    text-decoration: none;

    transition:
        color 0.25s ease,
        gap 0.25s ease;

}


.footer-more:hover {

    color: var(--branco);

    gap: 0.75rem;

}


.footer-more i {

    font-size: 0.7rem;

}


/* =========================================================
   LINKS
   ========================================================= */

.footer-links {

    margin: 0;

    padding: 0;

    list-style: none;

}


.footer-links li {

    margin-bottom: 0.65rem;

}


.footer-links li:last-child {

    margin-bottom: 0;

}


.footer-links a {

    color: rgba(255, 255, 255, 0.68);

    font-size: 0.875rem;

    text-decoration: none;

    transition:
        color 0.25s ease,
        padding-left 0.25s ease;

}


.footer-links a:hover {

    color: var(--verde-lima);

    padding-left: 0.25rem;

}


/* =========================================================
   CONTACTOS
   ========================================================= */

.footer-contact-list {

    margin: 0;

    padding: 0;

    list-style: none;

}


.footer-contact-list li {

    display: flex;

    align-items: flex-start;

    gap: 0.75rem;

    margin-bottom: 0.8rem;

    color: rgba(255, 255, 255, 0.68);

    font-size: 0.875rem;

    line-height: 1.5;

}


.footer-contact-list li:last-child {

    margin-bottom: 0;

}


.footer-contact-list i {

    width: 1.1rem;

    margin-top: 0.2rem;

    color: var(--verde-lima);

    font-size: 0.85rem;

    text-align: center;

}


.footer-contact-list a {

    color: rgba(255, 255, 255, 0.68);

    text-decoration: none;

}


.footer-contact-list a:hover {

    color: var(--verde-lima);

}


/* =========================================================
   REDES SOCIAIS
   ========================================================= */

.footer-social {

    display: flex;

    align-items: center;

    gap: 0.5rem;

    margin-top: 1.5rem;

}


.footer-social a {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 2.4rem;

    height: 2.4rem;

    color: var(--branco);

    background-color: transparent;

    border: 0.0625rem solid rgba(255, 255, 255, 0.2);

    border-radius: 50%;

    font-size: 0.9rem;

    text-decoration: none;

    transition:
        color 0.25s ease,
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;

}


.footer-social a:hover {

    color: var(--verde-principal);

    background-color: var(--verde-lima);

    border-color: var(--verde-lima);

    transform: translateY(-0.15rem);

}


/* =========================================================
   PARTE INFERIOR
   ========================================================= */

.footer-bottom {

    margin-top: 3.5rem;

    padding: 1.35rem 0;

    border-top: 0.0625rem solid rgba(255, 255, 255, 0.1);

}


.footer-bottom-content {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 1.5rem;

}


/* =========================================================
   DADOS DA EMPRESA
   ========================================================= */

.footer-company p {

    margin: 0;

    color: rgba(255, 255, 255, 0.5);

    font-size: 0.72rem;

    line-height: 1.6;

}


.footer-separator {

    margin: 0 0.25rem;

}


/* =========================================================
   LINKS LEGAIS
   ========================================================= */

.footer-legal {

    display: flex;

    flex-wrap: wrap;

    justify-content: flex-end;

    gap: 0.4rem 1.2rem;

}


.footer-legal a {

    color: rgba(255, 255, 255, 0.5);

    font-size: 0.72rem;

    text-decoration: none;

    transition: color 0.25s ease;

}


.footer-legal a:hover {

    color: var(--verde-lima);

}


/* =========================================================
   PARCEIRO
   ========================================================= */

.footer-partner {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 0.8rem;

    padding: 1.25rem 0 1.5rem;

    border-top: 0.0625rem solid rgba(255, 255, 255, 0.06);

}


.footer-partner span {

    color: rgba(255, 255, 255, 0.4);

    font-size: 0.65rem;

    font-weight: 500;

    letter-spacing: 0.08rem;

    text-transform: uppercase;

}


.footer-partner a {

    display: inline-flex;

    align-items: center;

}


.footer-partner img {

    display: block;

    width: auto;

    height: 2.4rem;

    opacity: 0.75;

    transition: opacity 0.25s ease;

}


.footer-partner a:hover img {

    opacity: 1;

}


/* =========================================================
   WHATSAPP FLUTUANTE
   ========================================================= */

.whatsapp-float {

    position: fixed;

    right: 1.5rem;
    bottom: 1.5rem;

    z-index: 1000;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 3.5rem;
    height: 3.5rem;

    color: var(--branco);

    background-color: #25d366;

    border-radius: 50%;

    font-size: 1.65rem;

    text-decoration: none;

    box-shadow: 0 0.4rem 1.25rem rgba(0, 0, 0, 0.2);

    transition:
        color 0.25s ease,
        background-color 0.25s ease,
        transform 0.25s ease,
        box-shadow 0.25s ease;

}


.whatsapp-float:hover {

    color: var(--branco);

    background-color: #20bd5a;

    transform: translateY(-0.2rem);

    box-shadow: 0 0.6rem 1.5rem rgba(0, 0, 0, 0.25);

}


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

@media (max-width: 991.98px) {

    .site-footer {

        padding-top: 3.5rem;

    }


    .footer-bottom {

        margin-top: 3rem;

    }


    .footer-bottom-content {

        align-items: flex-start;

        flex-direction: column;

    }


    .footer-legal {

        justify-content: flex-start;

    }

}


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

@media (max-width: 767.98px) {

    .site-footer {

        padding-top: 3rem;

    }


    .footer-column {

        height: auto;

    }


    .footer-column h2,
    .footer-column h3 {

        margin-bottom: 1rem;

    }


    .footer-description {

        max-width: 100%;

    }


    .footer-bottom {

        margin-top: 2.5rem;

    }


    .footer-bottom-content {

        align-items: center;

        text-align: center;

    }


    .footer-legal {

        justify-content: center;

    }


    .footer-company p {

        text-align: center;

    }


    .whatsapp-float {

        right: 1.1rem;

        bottom: 1.1rem;

        width: 3.25rem;

        height: 3.25rem;

        font-size: 1.5rem;

    }

}


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

@media (max-width: 575.98px) {

    .footer-partner {

        flex-direction: column;

        gap: 0.5rem;

    }


    .footer-legal {

        flex-direction: column;

        align-items: center;

        gap: 0.45rem;

    }

}