﻿html,
body {
    font-family: "Poppins", sans-serif;
}

/* Container base */
.container {
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    position: relative;
}

@media (min-width: 640px) {
    .container {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media (min-width: 768px) {
    .container {
        padding-left: 3rem;
        padding-right: 3rem;
    }
}

@media (min-width: 1024px) {
    .container {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media (min-width: 1280px) {
    .container {
        padding-left: 5rem;
        padding-right: 5rem;
    }
}

@media (min-width: 1536px) {
    .container {
        padding-left: 6rem;
        padding-right: 6rem;
    }
}

/* Custom colors */
.bg-custom-004b65 {
    background-color: #004b65;
}

/* =========================
   HEADER
========================= */

.bg-custom-004b65 {
    background-color: #004b65;
}


.site-header {
    padding-top: clamp(1.5rem, 2.2vw, 3rem);
    padding-bottom: clamp(1.5rem, 2.2vw, 3rem);
}

.header-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(1.25rem, 3vw, 6.5625rem);
    /* 20px -> 105px */
    padding-right: clamp(1.25rem, 3vw, 6.5625rem);
    display: flex;
    align-items: center;
    gap: clamp(1rem, 1.8vw, 2.5rem);
}

/* bloco da logo */
.header-brand {
    flex: 0 0 auto;
    width: clamp(160px, 18vw, 380px);
    display: flex;
    align-items: center;
}

/* logo escalável mantendo proporção */
.header-logo {
    height: clamp(2.75rem, 4.2vw, 5rem);
    /* aprox 44px -> 80px */
    width: auto;
    display: block;
}

/* navegação */
.header-nav {
    flex: 1 1 auto;
    min-width: 0;
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: clamp(1.2rem, 2vw, 3rem);
    position: relative;
    overflow: visible;
    z-index: 9999;
}

@media (min-width: 768px) {
    .header-nav {
        display: flex;
    }
}

/* links base */
.menu-link,
.menu-link-active {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: -0.03em;
    color: #ffffff;
    font-weight: 500;
    font-family: "Poppins", sans-serif;
    font-size: clamp(0.95rem, 1.35vw, 1.8125rem);
    /* ~15px até 29px */
    transition: color 0.2s ease;
}

/* link ativo */
.menu-link-active {
    color: #ffffff;
}

    /* underline */
    .menu-link.active::after,
    .menu-link:focus::after,
    .menu-link:hover::after,
    .menu-link-active::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: clamp(-0.7rem, -0.55vw, -0.45rem);
        width: 100%;
        height: clamp(3px, 0.32vw, 6px);
        border-radius: 999px;
        background-color: #00aeef;
    }

/* botão login */
.menu-link-botao {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    line-height: 1;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: clamp(0.95rem, 1.35vw, 1.8125rem);
    /* acompanha os links */
    padding: clamp(0.4rem, 0.5vw, 0.55rem) clamp(1rem, 1.8vw, 1.875rem);
    /* 16px -> 30px lateral */
    border-radius: 999px;
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
    flex-shrink: 0;
}

/* ajuste fino para notebooks menores */
@media (min-width: 768px) and (max-width: 1279px) {
    .header-shell {
        gap: 1.5rem;
    }

    .header-brand {
        width: clamp(170px, 20vw, 260px);
    }

    .header-nav {
        gap: clamp(0.55rem, 0.9vw, 1rem);
    }

    .menu-link,
    .menu-link-active,
    .menu-link-botao {
        font-size: clamp(0.9rem, 1vw, 1.15rem);
    }

    .menu-link-botao {
        padding: 0.45rem 1rem;
    }
}

/* container do item */
.menu-item {
    position: relative;
}

/* submenu escondido */
.submenu {
    margin-top: 20px;
    position: absolute;
    top: 100%;
    left: 0;
    background: #ffffff;
    border-radius: 8px;
    min-width: 100px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease;
    z-index: 999;
    width: 100%;
}


    /* itens */
    .submenu a {
        display: block;
        padding: 10px 20px;
        color: #004b65;
        font-size: clamp(14px, 0.94vw, 18px);
        white-space: nowrap;
        font-weight: 600;
    }

        .submenu a:hover {
            background: #004b65;
            color: #ffffff;
        }

/* hover desktop */
.menu-item:hover .submenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* =========================
    HERO
========================= */

.hero-section {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-bottom: 400px;
}

.hero-shell {
    width: 100%;
}

.hero-layout {
    position: relative;
}

.hero-content-wrapper {
    padding-left: clamp(20px, 10vw, 228px);
    position: relative;
    z-index: 2;
}

.hero-content {
    max-width: min(820px, 55vw);
    padding-top: clamp(40px, 6vw, 120px);
}

.hero-text {
    width: 100%;
    max-width: 100%;
}

.hero-title {
    font-size: clamp(1.75rem, 5vw, 3.625rem);
    line-height: 1.08;
    font-weight: 600;
    color: #ffffff;
}

.hero-description {
    margin-top: clamp(1.25rem, 2.2vw, 2.875rem);
    font-size: clamp(0.95rem, 1.7vw, 2.0625rem);
    line-height: 1.35;
    color: #ffffff;
    font-weight: 400;
    width: clamp(500px, 47vw, 904px);
}

.hero-actions {
    display: flex;
    flex-direction: column;
    gap: clamp(0.75rem, 1.5vw, 1.5rem);
    margin-top: clamp(1.5rem, 2.5vw, 2.875rem);
}

@media (min-width: 640px) {
    .hero-actions {
        flex-direction: row;
    }
}

.hero-image {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    pointer-events: none;
}

    .hero-image img {
        width: clamp(600px, 60vw, 986px);
        max-width: 986px;
        height: auto;
        display: block;
    }

@media (min-width: 1280px) {
    .hero-image {
        right: 0;
    }
}

.botao-assine-ja,
.botao-saiba-mais {
    position: relative;
    z-index: 10;
}

.botao-assine-ja {
    color: #ffffff;
    padding: 2px 40px;
    border-radius: 30px;
    font-family: "Poppins";
    font-size: 33px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
    white-space: nowrap;
}

.botao-saiba-mais {
    display: inline-flex;
    padding: 2px 40px;
    border: 2px solid #2bb3d6;
    border-radius: 30px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 33px;
    font-weight: 600;
    align-items: center;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-left: 10px;
    white-space: nowrap;
}

.hero-curve {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 200px;
}

.hero-lines {
    position: absolute;
    bottom: 65px;
    z-index: 2;
}

.curva-eliptica svg {
    width: 100%;
    height: 200px;
    /*margin-top: -200px;*/
}

@media (max-width: 768px) {
    .curva-eliptica svg {
        /*margin-top: 100px;*/
        height: 120px;
    }
}

/* =========================
  SOBRE
========================= */

.sobre-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-top: clamp(24px, 2.6vw, 50px);
    padding-bottom: clamp(24px, 2.6vw, 50px);
}

.sobre-layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(2rem, 5vw, 6rem);
}

.sobre-text {
    width: 100%;
    max-width: clamp(400px, 40vw, 700px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 5vw, 120px));
}

.sobre-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #004b65;
    font-weight: 600;
}

.sobre-description {
    margin-top: clamp(20px, 2.5vw, 50px);
    font-size: clamp(16px, 1.8vw, 31px);
    line-height: 1.25;
    color: #424242;
}

.botao-solucoes {
    color: #ffffff;
    padding: clamp(6px, 0.6vw, 10px) clamp(18px, 4vw, 65px);
    border-radius: 999px;
    font-family: "Poppins";
    font-size: 33px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
}

.botao-solucoes {
    margin-top: clamp(24px, 3vw, 50px);
}

.sobre-card {
    position: relative;
    width: clamp(320px, 48.4vw, 929px);
    height: clamp(280px, 26vw, 500px);
    background: white;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    display: flex;
    align-items: center;
}

.sobre-imagem {
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateX(-21%);
    width: clamp(220px, 28vw, 450px);
    height: auto;
    z-index: 1;
}

.sobre-lista {
    position: relative;
    z-index: 2;
    margin-left: clamp(220px, 28vw, 350px);
    font-size: clamp(14px, 1.6vw, 29px);
    list-style: none;
    color: #424242;
}

    .sobre-lista li {
        position: relative;
        padding-left: clamp(24px, 2.6vw, 50px);
        margin-bottom: 12px;
    }

        .sobre-lista li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 15px;
            width: 17px;
            height: 17px;
            border-radius: 50%;
            background: #00aeef;
        }

        .sobre-lista li:hover::before {
            box-shadow: 0 0 8px #00aeef, 0 0 16px #00aeef, 0 0 24px #00aeef;
            transform: scale(1.2);
        }

/* =========================
  SOLUÇÕES PING
========================= */

.botao-saiba-mais:hover {
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
    color: #ffffff;
}

svg {
    width: 100%;
    height: 100%;
}

.section-sobre {
    width: 100%;
    background-color: #eceff0;
    position: relative;
    z-index: 3;
    margin-top: -10px;
    padding-top: 40px;
    padding-bottom: 10vh;
}

    .section-sobre h1 {
        color: #004b65;
        font-weight: 600;
    }

.lista-solucoes {
    border-radius: 30px;
    background-color: #ffffff;
}

.section-solucoes-ping {
    width: 100%;
    background: linear-gradient(rgba(0, 75, 101, 0.361), rgba(0, 75, 101, 0.361)), url("../img/bg-faixa-solucoes.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 77%;
    /* forte */

    padding-bottom: 400px;
    /* 🔥 ESSENCIAL */
}

.solucoes-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-right: 100px;
    padding-top: clamp(24px, 2.6vw, 50px);
}

.solucoes-titulo {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #ffffff;
    font-weight: 500;
    text-align: center;
}

/* =========================
   CONTAINER DOS CARDS
========================= */
.solucoes-cards {
    display: grid;
    grid-template-columns: repeat(5, minmax(150px, 311px));
    gap: 20px;
    margin-top: clamp(40px, 6.2vw, 120px);
    justify-content: center;
    padding: 0;
}

@media (max-width: 1440px) {
    .solucoes-cards {
        grid-template-columns: repeat(5, minmax(180px, 311px));
        gap: 10px;
    }
}

/* =========================
   BASE DOS CARDS
========================= */
.card-solucao-wrap-azul,
.card-solucao-wrap-verde,
.card-solucao-wrap-azul-escuro {
    position: relative;
    overflow: visible;
    width: 100%;
    max-width: clamp(240px, 16.2vw, 311px);
    min-height: clamp(200px, 14.8vw, 285px);
    /*height: auto;*/
    border-radius: clamp(16px, 1.3vw, 25px);
    position: relative;
    display: flex;
    flex-direction: column;
}

.card-solucao-azul,
.card-solucao-verde,
.card-solucao-azul-escuro {
    width: 100%;
    max-width: clamp(220px, 16.2vw, 311px);
    /* height: clamp(220px, 14.8vw, 285px);*/
    aspect-ratio: 311 / 285; /* 🔥 trava proporção */
    padding: clamp(16px, 1.6vw, 30px) clamp(4px, 0.3vw, 5px);
    border-radius: clamp(16px, 1.3vw, 25px);
    background: white;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    /*justify-content: space-between;*/
    justify-content: center; /* 🔥 evita deformação */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    overflow: hidden;
}

    .card-solucao-azul::before,
    .card-solucao-verde::before,
    .card-solucao-azul-escuro::before {
        content: "";
        position: absolute;
        top: -90px;
        left: -10px;
        width: 120px;
        height: 120px;
        transform: rotate(45deg) scale(0);
        transform-origin: top left;
        transition: all 0.3s ease;
        z-index: 1;
    }

    .card-solucao-azul::before {
        background: linear-gradient(135deg, #0a83d0, #25b4d8);
    }

    .card-solucao-verde::before {
        background: linear-gradient(135deg, #4bc35b, #85c33f);
    }

    .card-solucao-azul-escuro::before {
        background: linear-gradient(135deg, #1b5bab, #528ff4);
    }

    /* =========================
   HOVER (efeito premium)
========================= */

    .card-solucao-azul:hover::before,
    .card-solucao-verde:hover::before,
    .card-solucao-azul-escuro:hover::before {
        transform: rotate(45deg) scale(1);
    }

    .card-solucao-azul:hover,
    .card-solucao-verde:hover,
    .card-solucao-azul-escuro:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    }

    /* =========================
   TÍTULOS
========================= */
    .card-solucao-azul h3 {
        color: #1799ca;
    }

    .card-solucao-verde h3 {
        color: #3aa451;
    }

    .card-solucao-azul-escuro h3 {
        color: #25579c;
    }

    /* =========================
   TEXTOS
========================= */
    .card-solucao-azul p,
    .card-solucao-verde p,
    .card-solucao-azul-escuro p {
        font-size: clamp(16px, 1.4vw, 27px);
        margin-top: clamp(20px, 2.1vw, 40px);
        margin-bottom: clamp(24px, 2.6vw, 50px);
        color: #424242;
        font-weight: 400;
        font-family: "Poppins";
        line-height: 1.1;
    }

/* =========================
   BOTÕES
========================= */
.card-solucao-wrap-azul a,
.card-solucao-wrap-verde a,
.card-solucao-wrap-azul-escuro a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: clamp(4px, 0.5vw, 6px) clamp(18px, 3.5vw, 53px);
    font-size: clamp(14px, 1.6vw, 27px);
    border-radius: clamp(18px, 2vw, 27px);
    color: white;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s ease;
    /* bottom: -25px;*/
    bottom: clamp(-25px, -2vw, -15px);
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    font-family: "Poppins";
    white-space: nowrap;
}

@media (max-width: 1440px) {

    .card-solucao-wrap-azul a,
    .card-solucao-wrap-verde a,
    .card-solucao-wrap-azul-escuro a {
        padding: 5px 36px;
        font-size: 22px;
        border-radius: 23px;
        bottom: clamp(-25px, -2vw, -15px);
    }
}

@media (max-width: 1024px) {

    .card-solucao-wrap-azul a,
    .card-solucao-wrap-verde a,
    .card-solucao-wrap-azul-escuro a {
        padding: 5px 30px;
        font-size: 18px;
        border-radius: 23px;
        bottom: 18px;
    }
}

@media (max-width: 768px) {

    .card-solucao-wrap-azul a,
    .card-solucao-wrap-verde a,
    .card-solucao-wrap-azul-escuro a {
        padding: 5px 36px;
        font-size: 14px;
        border-radius: 23px;
        bottom: 20px
    }
}


/* hover botão */
.card-solucao-wrap-azul a:hover,
.card-solucao-wrap-verde a:hover,
.card-solucao-wrap-azul-escuro a:hover {
    opacity: 0.85;
}

/* =========================
   CORES DOS BOTÕES
========================= */
.card-solucao-wrap-azul a {
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
}

.card-solucao-wrap-verde a {
    background-image: linear-gradient(135deg, #4bc35b 0%, #4bc35b 22%, #85c33f 99%, #85c33f 100%);
}

.card-solucao-wrap-azul-escuro a {
    background-image: linear-gradient(135deg, #1b5bab 0%, #1b5bab 22%, #528ff4 99%, #528ff4 100%);
}

.solucoes-descricao {
    margin-top: clamp(10px, 1.2vw, 16px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.35;
    color: #ffffff;
    text-align: center;
}

.solucoes-cards h3 {
    font-size: clamp(20px, 1.8vw, 34px);
    font-weight: 600;
    font-family: "Poppins";
    text-align: center;
    line-height: 1.1;
    margin-top: 10px;
}

/* =========================
   CRM PING
========================= */

.crm-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-top: clamp(24px, 2.6vw, 50px);
}

.crm-layout {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: clamp(2rem, 5vw, 6rem);
}

.section-crm-ping {
    width: 100%;
    background-color: #eceff0;
    position: relative;
    z-index: 3;
    margin-top: -200px;
    padding-top: 80px;
    padding-bottom: 10vh;
}

.crm-text {
    width: 100%;
    max-width: clamp(420px, 42vw, 700px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 5vw, 120px)) translateY(clamp(20px, 3vw, 40px));
}

.crm-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #34a3cf;
    font-weight: 600;
}

.crm-subtitle {
    margin-top: clamp(10px, 1.5vw, 20px);
    font-size: clamp(16px, 2vw, 42px);
    line-height: 1.1;
    color: #424242;
    font-weight: 600;
}

.crm-description {
    margin-top: clamp(20px, 3vw, 56px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.35;
    color: #424242;
}

.multicalculo-ping-card,
.marketplace-card,
.crm-card {
    position: relative;
    width: clamp(360px, 47vw, 950px);
    height: clamp(320px, 34vw, 600px);
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

    .crm-card::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: #0c85cf;
    }

.crm-imagem {
    position: absolute;
    bottom: 0;
    left: 0;
    width: clamp(260px, 28vw, 450px);
    height: auto;
    z-index: 2;
}

.crm-lista {
    position: relative;
    z-index: 2;
    margin-left: clamp(180px, 20vw, 320px);
    font-size: clamp(14px, 1.5vw, 29px);
    color: #ffffff;
    list-style: none;
}

.crm-lista {
    position: relative;
    z-index: 2;
    margin-left: clamp(200px, 24vw, 400px);
    margin-top: clamp(20px, 2.5vw, 60px);
    font-size: clamp(14px, 1.5vw, 29px);
    color: #ffffff;
    list-style: none;
}

    .crm-lista li {
        position: relative;
        padding-left: 40px;
        margin-bottom: clamp(10px, 1.5vw, 20px);
    }

        .crm-lista li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 8px;
            width: clamp(10px, 1vw, 16px);
            height: clamp(10px, 1vw, 16px);
            border-radius: 50%;
            background: #ffffff;
        }

        .crm-lista li:hover::before {
            transform: scale(1.3);
            box-shadow: 0 0 6px #ffffff, 0 0 12px #ffffff, 0 0 20px #ffffff;
        }

/* =========================
   MULTICÁLCULO PING
========================= */

.section-multicalculo-ping {
    width: 100%;
    background-image: linear-gradient(135deg, #0d4836 0%, #0d4836 54%, #85c33f 98%, #85c33f 100%);
    position: relative;
    z-index: 3;
    padding-top: 80px;
    padding-bottom: 10vh;
}

.multicalculo-text {
    width: 100%;
    max-width: clamp(420px, 42vw, 700px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 5vw, 120px));
    margin-top: clamp(20px, 2.8vw, 70px);
}

.multicalculo-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #85c33f;
    font-weight: 600;
}

.multicalculo-subtitle {
    margin-top: clamp(10px, 1.5vw, 20px);
    font-size: clamp(16px, 2vw, 42px);
    line-height: 1.1;
    color: #ffffff;
    font-weight: 600;
}

.multicalculo-description {
    margin-top: clamp(20px, 3vw, 56px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.25;
    color: #ffffff;
}

.multicalculo-card {
    position: relative;
    width: clamp(360px, 47vw, 950px);
    height: clamp(320px, 34vw, 600px);
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    display: flex;
    align-items: flex-start;
    overflow: hidden;
}

    .multicalculo-card::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: #419848;
    }

.multicalculo-imagem {
    position: absolute;
    bottom: 0;
    left: 0;
    width: clamp(260px, 28vw, 450px);
    height: auto;
    z-index: 2;
}

.multicalculo-lista {
    position: relative;
    z-index: 2;
    margin-left: clamp(200px, 26vw, 450px);
    margin-top: clamp(30px, 5vw, 100px);
    font-size: clamp(14px, 1.5vw, 29px);
    color: #ffffff;
    list-style: none;
}

    .multicalculo-lista li {
        position: relative;
        padding-left: 40px;
        margin-bottom: clamp(12px, 1.8vw, 22px);
        line-height: 1.1;
    }

        .multicalculo-lista li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 7px;
            width: clamp(10px, 1vw, 17px);
            height: clamp(10px, 1vw, 17px);
            border-radius: 50%;
            background: #ffffff;
        }

        .multicalculo-lista li:hover::before {
            transform: scale(1.3);
            box-shadow: 0 0 6px #85c33f, 0 0 12px #85c33f, 0 0 20px #85c33f;
        }

.botao-assine-ja-multicalculo {
    color: #ffffff;
    padding: clamp(4px, 0.5vw, 6px) clamp(18px, 3vw, 45px);
    font-size: clamp(16px, 2vw, 33px);
    border-radius: clamp(18px, 2vw, 30px);
    font-family: "Poppins";
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    background-image: linear-gradient(135deg, #4bc35b 0%, #4bc35b 22%, #85c33f 99%, #85c33f 100%);
}

/* =========================
   MARKETPLACE 
========================= */

.section-marketplace {
    width: 100%;
    background-color: #eceff0;
    position: relative;
    z-index: 3;
    padding-top: 80px;
    padding-bottom: 10vh;
}

.marketplace-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-top: clamp(24px, 2.6vw, 50px);
}

.marketplace-layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(2rem, 5vw, 6rem);
}

/* TEXTO */
.marketplace-text {
    width: 100%;
    max-width: clamp(420px, 42vw, 700px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 5vw, 120px));
    margin-top: clamp(10px, 2vw, 40px);
}

.marketplace-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #3a66a4;
    font-weight: 600;
}

.marketplace-subtitle {
    margin-top: clamp(10px, 1.5vw, 20px);
    font-size: clamp(16px, 2vw, 42px);
    line-height: 1.1;
    color: #424242;
    font-weight: 600;
}

.marketplace-description {
    margin-top: clamp(20px, 3vw, 56px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.25;
    color: #424242;
}

/* CARD */
.marketplace-card {
    position: relative;
    width: clamp(360px, 47vw, 950px);
    height: clamp(320px, 34vw, 600px);
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

    .marketplace-card::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: #355f99;
    }

/* IMAGEM */
.marketplace-imagem {
    position: absolute;
    bottom: 0;
    left: 0;
    width: clamp(260px, 28vw, 450px);
    height: auto;
    z-index: 2;
}

/* LISTA */
.marketplace-lista {
    position: relative;
    z-index: 2;
    margin-left: clamp(180px, 26vw, 470px);
    font-size: clamp(14px, 1.5vw, 29px);
    color: #ffffff;
    list-style: none;
}

    .marketplace-lista li {
        position: relative;
        padding-left: 40px;
        margin-bottom: clamp(10px, 1.5vw, 20px);
    }

        .marketplace-lista li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 8px;
            width: clamp(10px, 1vw, 16px);
            height: clamp(10px, 1vw, 16px);
            border-radius: 50%;
            background: #ffffff;
        }


        .marketplace-lista li:hover::before {
            transform: scale(1.3);
            box-shadow: 0 0 6px #ffffff, 0 0 12px #ffffff, 0 0 20px #ffffff;
        }


.botao-assine-ja-marketplace {
    color: #ffffff;
    padding: clamp(4px, 0.5vw, 6px) clamp(18px, 3vw, 45px);
    border-radius: 30px;
    font-family: "Poppins";
    font-size: clamp(16px, 2vw, 33px);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    font-family: "Poppins";
    background-image: linear-gradient(135deg, #3965a3 0%, #3965a3 22%, #67b2d2 99%, #67b2d2 100%);
}


/* =========================
   PREÇOS ASSINATURAS 
========================= */

.section-precos-assinatura {
    width: 100%;
    background: linear-gradient(rgba(0, 75, 101, 0.361), rgba(0, 75, 101, 0.361)), url("../img/bg-faixa-precos.webp");
    background-position: center 140%;
    background-size: cover;
    background-repeat: no-repeat;
    padding-bottom: clamp(120px, 20vw, 400px);
}

.precos-assinatura-content {
    text-align: center;
    color: white;
    padding-top: 5vh;
}

/* =========================
   BASE DOS CARDS PREÇOS ASSINATURAS
========================= */

.precos-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-right: clamp(20px, 4vw, 120px);
    padding-top: clamp(20px, 2.5vw, 50px);
}

.precos-assinatura-titulo {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #ffffff;
    text-align: center;
    font-weight: 500;
}

.precos-assinatura-descricao {
    margin-top: clamp(10px, 1.5vw, 20px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.35;
    color: #ffffff;
    text-align: center;
}

.precos-assinatura-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(280px, 565px));
    gap: 40px;
    justify-content: center;
    margin-top: clamp(60px, 6vw, 120px);
    padding: 0;
}

@media (max-width: 1440px) {
    .precos-assinatura-cards {
        grid-template-columns: repeat(2, minmax(150px, 565px));
        gap: 5px;
    }
}

/*@media (max-width: 1440px) {

    .card-precos-assinatura-wrap-verde a,
    .card-precos-assinatura-wrap-azul a {
        margin-left: -30px;
    }
}*/

.card-precos-assinatura-wrap-verde,
.card-precos-assinatura-wrap-azul {
    position: relative;
    overflow: visible;
    width: 100%;
    display: flex;
    flex-direction: column;
    overflow: visible;
}

.card-precos-assinatura-azul,
.card-precos-assinatura-verde {
    width: 100%;
    max-width: 565px;
    height: 435px;
    padding: 30px 5px;
    background: white;
    border-radius: 30px;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    overflow: hidden;
}


    .card-precos-assinatura-azul::before,
    .card-precos-assinatura-verde::before {
        content: "";
        position: absolute;
        top: -250px;
        left: -70px;
        width: 300px;
        height: 300px;
        transform: rotate(45deg) scale(0);
        transform-origin: top left;
        transition: all 0.3s ease;
        z-index: 1;
    }

    .card-precos-assinatura-azul::before {
        background: linear-gradient(135deg, #0a83d0, #25b4d8);
    }

    .card-precos-assinatura-verde::before {
        background: linear-gradient(135deg, #4bc35b, #85c33f);
    }

    .card-precos-assinatura-azul:hover::before,
    .card-precos-assinatura-verde:hover::before {
        transform: rotate(45deg) scale(1);
    }

    .card-precos-assinatura-azul:hover,
    .card-precos-assinatura-verde:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    }


/* notebook / monitor menor */
@media (max-width: 1600px) {

    .card-precos-assinatura-azul,
    .card-precos-assinatura-verde {
        max-width: 500px;
        height: 390px;
    }
}

/* telas menores */
@media (max-width: 1366px) {

    .card-precos-assinatura-azul,
    .card-precos-assinatura-verde {
        max-width: 460px;
        height: 360px;
    }
}

/* tablet */
@media (max-width: 1024px) {

    .card-precos-assinatura-azul,
    .card-precos-assinatura-verde {
        max-width: 400px;
        height: 300px;
    }
}

.card-precos-assinatura-azul h1,
.card-precos-assinatura-verde h1 {
    font-size: clamp(28px, 2.8vw, 50px);
}

.precos-assinatura-cards h3 {
    font-size: clamp(18px, 2vw, 37px);
}

.precos-assinatura-cards p {
    font-size: clamp(16px, 1.6vw, 29px);
}

.card-precos-assinatura-wrap-verde a,
.card-precos-assinatura-wrap-azul a {
    font-size: 33px;
    bottom: -28px;
    font-weight: 600;
    white-space: nowrap;
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    display: inline-block;
    margin-top: 15px;
    padding-left: clamp(30px, 5vw, 80px);
    padding-right: clamp(30px, 5vw, 80px);
    padding-top: clamp(4px, 0.6vw, 8px);
    padding-bottom: clamp(4px, 0.6vw, 8px);
    border-radius: 33px;
    color: white;
    font-family: "Poppins";
}

@media (max-width: 1440px) {

    .card-precos-assinatura-wrap-verde a,
    .card-precos-assinatura-wrap-azul a {
        transform: translateX(-80%);
        left: 57%;
        padding-left: 60px;
        padding-right: 60px;
        padding-top: 6px;
        padding-bottom: 6px;
        font-size: 28px;
    }
}

@media (max-width: 1024px) {

    .card-precos-assinatura-wrap-verde a,
    .card-precos-assinatura-wrap-azul a {
        transform: translateX(-65%);
        left: 50%;
        padding-left: 40px;
        padding-right: 40px;
        padding-top: 4px;
        padding-bottom: 4px;
        font-size: 28px;
    }
}


.card-precos-assinatura-wrap-azul a {
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
}

.card-precos-assinatura-wrap-verde a {
    background-image: linear-gradient(135deg, #4bc35b 0%, #4bc35b 22%, #85c33f 99%, #85c33f 100%);
}


.card-precos-assinatura-azul h1 {
    color: #1799ca;
    font-size: 50px;
    font-weight: 700;
    font-family: "Poppins";
    margin-top: 10px;
}

.card-precos-assinatura-azul h3 {
    color: #1799ca;
}



.card-precos-assinatura-verde h1 {
    color: #3aa451;
    font-size: 50px;
    font-weight: 700;
    line-height: 2;
}

.card-precos-assinatura-verde h3 {
    color: #3aa451;
    font-weight: 700;
}

.precos-assinatura-cards h3 {
    font-size: 37px;
    line-height: 41px;
    font-weight: 500;
    text-align: center;
    line-height: 1.1;
    margin-top: -35px;
    font-family: "Poppins";
}

.card-precos-assinatura-verde h4 {
    color: #3aa451;
    font-size: 25px;
    font-weight: 700;
    font-family: "Poppins";
}

@media (max-width: 1024px) {

    .card-precos-assinatura-verde h4 {
        font-size: 20px;
        font-weight: 400;
    }

    .precos-assinatura-cards h3 {
        font-size: 29px
    }

    .precos-assinatura-cards h1 {
        font-size: 40px;
        line-height: 2.5;
    }
}

.precos-assinatura-descricao {
    letter-spacing: 0px;
    color: #ffffff;
    font-weight: 400;
    font-family: "Poppins";
    text-align: center;
    line-height: 1.2;
}


.precos-assinatura-cards p {
    font-size: 29px;
    letter-spacing: 0px;
    color: #424242;
    font-weight: 100;
    font-family: "Poppins";
    text-align: center;
    line-height: 1.1;
    position: relative;
    margin-top: 20px;
}


.card-precos-assinatura-verde .texto-card-pequeno {
    font-size: 25px;
    margin-top: 22px;
    padding-bottom: 20px;
}


@media (max-width: 1024px) {

    .precos-assinatura-cards p {
        font-size: 20px;
        margin-top: 17px;
    }

    .card-precos-assinatura-verde .texto-card-pequeno {
        font-size: 18px;
        margin-top: 10px;
    }
}

.card-precos-assinatura-verde .texto-card-pequeno b {
    font-weight: 600;
}

.card-precos-assinatura-azul .texto-card-pequeno-azul b {
    font-weight: 600;
}

.card-precos-assinatura-azul .texto-card-pequeno-azul {
    font-size: 25px;
    margin-top: 25px;
    padding-bottom: 10px;
}

@media (max-width: 1024px) {
    .card-precos-assinatura-azul .texto-card-pequeno-azul {
        font-size: 18px;
        margin-top: 10px;
    }
}

.underline-custom {
    text-underline-offset: 6px;
    /* 🔥 distância do texto */
}

/* =========================
   CLUBE DE BENEFÍCIOS
========================= */

.section-clube-beneficios {
    width: 100%;
    background-color: #ffffff;
    position: relative;
    z-index: 3;
    padding-bottom: 10vh;
    margin-top: -170px;
}

.clube-beneficios-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 5vw, 200px);
    padding-top: clamp(24px, 2.6vw, 50px);
}

.clube-beneficios-layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* TEXTO */
.clube-beneficios-text {
    width: 100%;
    max-width: clamp(320px, 43vw, 826px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 8vw, 200px));
    position: relative;
}

    .clube-beneficios-text b {
        font-weight: 500;
    }

.clube-beneficios-description {
    margin-top: clamp(20px, 3vw, 56px);
    font-size: clamp(15px, 1.7vw, 33px);
    line-height: 1.15;
    color: #424242;
    font-weight: 400;
}

.imagem-clube-responsive {
    width: 100%;
    height: auto;
    max-width: clamp(336px, 44vw, 850px);
    transform: translateX(clamp(10px, 3vw, 60px));
}


.botao-assine-ja-clube-beneficios {
    color: #ffffff;
    padding: clamp(4px, 0.5vw, 6px) clamp(18px, 3vw, 45px);
    font-size: clamp(16px, 2vw, 33px);
    border-radius: clamp(18px, 2vw, 30px);
    font-family: "Poppins";
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    background-image: linear-gradient(135deg, #0b83cf 0%, #0b83cf 22%, #25b3d7 99%, #25b3d7 100%);
}

.lista-diferenciais {
    display: flex;
    flex-direction: column;
    gap: clamp(16px, 1.5vw, 28px);
    margin-right: clamp(20px, 7vw, 135px);
}

.item {
    display: flex;
    align-items: flex-start;
    gap: clamp(4px, 0.4vw, 6px);
}

.icone {
    width: clamp(40px, 3vw, 59px);
    height: clamp(40px, 3vw, 59px);
    border-radius: clamp(8px, 0.8vw, 15px);
    background-image: linear-gradient(45deg, #004d67 0%, #0080a7 100%);
    flex-shrink: 0;
}

.conteudo h3 {
    font-size: clamp(18px, 1.5vw, 29px);
    font-weight: 600;
    margin-left: clamp(6px, 0.5vw, 10px);
    color: #006889;
    line-height: 1.1;
    font-family: "Poppins";
}

.lista-diferenciais p {
    margin-left: 0;
    margin-top: clamp(-10px, -0.8vw, -15px);
    font-size: clamp(16px, 1.3vw, 25px);
    color: #424242;
    font-family: "Poppins";
    line-height: 1.2;
}

/* =========================
   CONTATO
========================= */

.section-contato {
    padding-top: 100px;
    padding-bottom: 100px;
    background-image: radial-gradient(circle at center, #0b85cf 0%, #004b65 72%, #004b65 100%);
    font-family: "Poppins";
    color: #ffffff;
}

.contato-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 5vw, 200px);
    padding-top: clamp(24px, 2.6vw, 50px);
}

.contato-layout {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: clamp(16px, 3vw, 40px);
}

/* TEXTO */
.contato-text {
    width: 100%;
    max-width: clamp(320px, 43vw, 826px);
    font-family: "Poppins";
    transform: translateX(clamp(40px, 8vw, 200px));
    position: relative;
}

.contato-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: 1.1;
    color: #ffffff;
    font-weight: 600;
}

.contato-description {
    margin-top: clamp(18px, 1.8vw, 30px);
    /* margin-top: clamp(20px, 2.6vw, 50px); */
    font-size: clamp(18px, 1.5vw, 29px);
    line-height: 1.25;
    color: #ffffff;
}

.contato-lista {
    margin-top: clamp(16px, 2vw, 32px);
    margin-bottom: clamp(20px, 3vw, 40px);
    display: flex;
    flex-direction: column;
    gap: clamp(8px, 0.8vw, 16px);
}

.contato-item {
    display: flex;
    align-items: center;
    gap: clamp(4px, 0.4vw, 8px);
}

.contato-item-text {
    margin-left: clamp(4px, 0.3vw, 5px);
    font-size: clamp(12px, 1.5vw, 29px);
    line-height: 1.3;
    color: #ffffff;
}

/* ÍCONE */
.contato-icon {
    width: clamp(16px, 1.2vw, 24px);
    height: clamp(16px, 1.2vw, 24px);
    border-radius: 50%;
    background-color: #0095f9;
    /* bg-topicos-dados */
    flex-shrink: 0;
}

/* TEXTO */
.contato-text {
    margin-left: clamp(6px, 0.5vw, 10px);
    font-size: clamp(12px, 1.5vw, 29px);
    line-height: 1.3;
    color: #ffffff;
}

.bg-topicos-dados {
    background-color: #0d9bff;
}

.contato-form {
    width: 100%;
    max-width: clamp(320px, 36.5vw, 700px);
    margin-top: clamp(10px, 1.5vw, 20px);
    margin-left: clamp(20px, 4vw, 15px);
}

.bg-botao-enviar {
    font-size: clamp(16px, 2vw, 33px);
    line-height: 1.2;
    color: #fffefe;
    font-weight: 700;
    border-radius: clamp(20px, 2vw, 33px);
    padding: clamp(6px, 0.8vw, 10px) clamp(20px, 3vw, 50px);
    text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.8);
    background-image: linear-gradient(135deg, #4bc35b 0%, #85c33f 98%, #85c33f 100%);
    font-family: "Poppins";
}

/* =========================
  EMPRESAS DO GRUPO
========================= */

.background-dohub {
    background-image: linear-gradient(135deg, #004b65 0%, #29c57f 100%);
}

.plataformas-shell {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-right: clamp(20px, 4vw, 120px);
    padding-top: clamp(40px, 6vw, 120px);
}

.plataforma-card {
    width: 100%;
    /* max-width: clamp(320px, 42vw, 785px); */
    min-height: clamp(420px, 40vw, 700px);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* .grid-cards{
    gap: clamp(16px, 3vw, 48px);
} */

.plataformas-title {
    font-size: clamp(28px, 3vw, 58px);
    line-height: clamp(36px, 4.5vw, 63px);
    color: #104159;
    font-weight: 600;
    text-align: center;
}

.plataformas-subtitle {
    font-size: clamp(16px, 2vw, 35px);
    color: #5a5a5a;
}

.plataformas-card h2 {
    font-size: clamp(16px, 2vw, 36px);
    line-height: 39px;
    font-weight: 600;
    white-space: nowrap;
}

.plataformas-card p {
    font-size: clamp(14px, 1.6vw, 30px);
}

.botao-conhecer-gti,
.botao-conhecer-dohub {
    font-size: clamp(16px, 2vw, 33px);
    padding: clamp(6px, 0.8vw, 10px) clamp(20px, 4vw, 65px);
    border-radius: 30px;
    line-height: 53px;
    font-weight: 700;
    font-family: "Poppins";
    text-align: center;
}


.botao-conhecer-gti {
    color: #000000;
    filter: drop-shadow(6.997px 3.878px 13.5px rgba(0, 0, 0, 0.41));
    background-color: #a8ca31;
}

.botao-conhecer-dohub {
    color: #000000;
    filter: drop-shadow(6.997px 3.878px 13.5px rgba(0, 0, 0, 0.41));
    background-color: #5ff772;
}

.plataformas-logo-gti {
    width: 100%;
    max-width: clamp(160px, 13vw, 320px);
    height: auto;
}

.plataformas-logo-dohub {
    width: 100%;
    max-width: clamp(180px, 18vw, 434px);
    height: auto;
}

.from-gti-blue-primary {
    background-color: #004b65;
}

.plataformas-section {
    font-family: "Poppins";
    color: #fffefe;
}

.card-content {
    margin-bottom: 50px;
}

.text-description-gti {
    margin-top: 55px;
    margin-bottom: clamp(90px, 11vw, 260px);
}

.text-description-dohub {
    margin-top: clamp(16px, 2vw, 40px);
    margin-bottom: clamp(90px, 11vw, 260px);
}

/* =========================
 BLOG
========================= */

.blog-section-container {
    background-image: linear-gradient(0deg, #23b7c9 0%, #004b65 63%, #004b65 100%);
    width: 100%;
    margin-top: -50px;
    padding-bottom: 150px;
}

@media (max-width: 768px) {
    .blog-section-container {
        /*margin-top: 100px;*/
        margin-top: -10px;
        padding-bottom: 150px;
    }
}

.titulo-section-blog {
    font-size: clamp(28px, 3vw, 58px);
    line-height: clamp(28px, 3vw, 58px);
    color: #ffffff;
    font-weight: 600;
    font-family: "Poppins";
}

.blog-section-container p {
    font-size: clamp(16px, 1.3vw, 25px);
    color: #ffffff;
    font-family: "Poppins";
    line-height: 1.1;
    margin-bottom: clamp(10px, 1.5vw, 20px);
}

.blog-section-container h3 {
    margin-top: clamp(10px, 1.5vw, 20px);
    margin-bottom: clamp(10px, 1.5vw, 20px);
    font-size: clamp(16px, 2vw, 35px);
    line-height: clamp(24px, 2.2vw, 39px);
    color: #ffffff;
    font-weight: 600;
    font-family: "Poppins";
}

.blog-section-container h1 {
    font-size: clamp(28px, 2.8vw, 50px);
    line-height: clamp(24px, 2.2vw, 39px);
    color: #ffffff;
    font-weight: 600;
    font-family: "Poppins";
}

.blog-section-container h2 {
    font-size: clamp(14px, 1.6vw, 30px);
    color: #ffffff;
    font-weight: 400;
    font-family: "Poppins";
    white-space: nowrap;
    line-height: clamp(24px, 2.2vw, 39px);
}

.botao-blog-ler-mais {
    margin-top: clamp(10px, 1.5vw, 20px);
    font-size: clamp(16px, 1.2vw, 24px);
    padding: 5px clamp(14px, 1.6vw, 30px);
    line-height: 38px;
    color: #fefefe;
    font-weight: 600;
    font-family: "Poppins";
    text-align: center;
    filter: drop-shadow(6.997px 3.878px 13.5px rgba(0, 0, 0, 0.29));
    border-radius: 24px;
    background-image: linear-gradient(135deg, #0b83cf 0%, #0b83cf 22%, #25b3d7 99%, #25b3d7 100%);
}

.botao-mais-conteudos {
    display: inline-flex;
    padding: clamp(2px, 0.3vw, 6px) clamp(20px, 2.5vw, 40px);
    border: 2px solid #2bb3d6;
    margin-left: clamp(4px, 0.6vw, 10px);
    border-radius: clamp(16px, 2vw, 30px);
    font-size: clamp(18px, 2vw, 33px);
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    align-items: center;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
}

.botao-botao-mais-conteudos-mais:hover {
    background-image: linear-gradient(135deg, #0a83d0 0%, #0a83d0 22%, #25b4d8 99%, #25b4d8 100%);
    color: #ffffff;
}

.ping-nas-redes {
    margin-top: clamp(60px, 8vw, 160px);
    padding-bottom: clamp(120px, 15vw, 300px);
}

.icones-redes-sociais {
    width: clamp(50px, 4vw, 90px);
}

/* =========================
 FOOTER
========================= */

.footer-section {
    font-family: "Poppins";
    color: #efefef;
    background-color: #003543;
    margin-top: -50px;
}

@media (max-width: 768px) {
    .footer-section {
        /*margin-top: 100px;*/
        margin-top: -10px;
    }
}

/* =========================
 WRAPPER
========================= */

.footer-wrapper {
    max-width: 1920px;
    margin: 0 auto;
    padding-left: clamp(20px, 6vw, 228px);
    padding-right: clamp(20px, 5vw, 228px);
    padding-top: clamp(20px, 3vw, 50px);
    margin-top: clamp(-60px, -6vw, -100px);
}

/* =========================
 GRID
========================= */

.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
    gap: clamp(20px, 3vw, 48px);
}

/* quebra suave */
@media (max-width: 1200px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* =========================
 COLUNAS
========================= */

.footer-col h3 {
    font-size: clamp(16px, 1.5vw, 25px);
    margin-bottom: clamp(12px, 1.5vw, 24px);
}

.footer-col ul {
    display: flex;
    flex-direction: column;
    gap: clamp(8px, 1vw, 16px);
}

.footer-col a {
    font-size: clamp(14px, 1.3vw, 25px);
    text-decoration: none;
}

/* =========================
 LOGO
========================= */

.footer-logo img {
    width: clamp(180px, 18vw, 287px);
}

/* =========================
 INFO
========================= */

.footer-info {
    margin-top: clamp(16px, 2vw, 32px);
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 1.5vw, 24px);
}

.footer-item {
    display: flex;
    gap: clamp(8px, 1vw, 12px);
    align-items: flex-start;
}

    .footer-item p {
        font-size: clamp(14px, 1.3vw, 25px);
    }

/* =========================
 BLIP
========================= */

.footer-blip {
    width: clamp(120px, 12vw, 220px);
    margin-bottom: clamp(12px, 1.5vw, 24px);
}

.footer-text {
    font-size: clamp(14px, 1.3vw, 25px);
    max-width: 420px;
}

/* =========================
 FOOTER BOTTOM
========================= */
.footer-bottom {
    text-align: center;
}
    .footer-bottom p {
        font-size: clamp(14px, 1.2vw, 25px);
    }

.icone-dados-footer {
    border-radius: 9px;
    background-color: #0095f9;
    flex-shrink: 0;
    margin-right: 20px;
    width: clamp(16px, 1.5vw, 24px);
    height: clamp(16px, 1.5vw, 24px);
}

.texto-footer {
    font-size: clamp(14px, 1.2vw, 25px);
}

#ra-verified-seal {
    margin-left: clamp(20px, 6vw, 130px);
}

/* =========================
 WHATSAPP
========================= */

.whatsapp-float {
    position: fixed;
    right: clamp(16px, 2vw, 32px);
    bottom: clamp(16px, 2vw, 32px);
    width: clamp(50px, 4vw, 70px);
    height: clamp(50px, 4vw, 70px);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #25D366;
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

    .whatsapp-float img {
        width: 60%;
        height: 60%;
        object-fit: contain;
    }

    /* hover */
    .whatsapp-float:hover {
        transform: scale(1.1);
        box-shadow: 0 12px 30px rgba(0,0,0,0.3);
    }

    .whatsapp-float::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background: #25D366;
        animation: pulse 1.5s infinite;
        z-index: -1;
    }

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }

    100% {
        transform: scale(1.6);
        opacity: 0;
    }
}
