/* ============================================
   OVERRIDE _astro (igual à Home): 1 H1 com 96px; H2 com .h3 mantêm tamanhos por classe
   ============================================ */
body .solucoes-hero-content h1,
body .solucoes-hero-content h1.h1 {
    font-size: clamp(48px, 8vw, 96px) !important;
    font-family: 'Lexend', Arial, sans-serif !important;
}
/* ============================================
   ESTILOS DA SEÇÃO HERO SOLUÇÕES
   ============================================ */
/* Garantir que o container-fluid não tenha padding que interfira */
.hero-section .container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* Reduzir padding-top do hero (pt-105 = 105px → 52px) */
.hero-section .container-fluid.pt-105 {
    padding-top: 52px !important;
}
@media (max-width: 768px) {
    .hero-section .container-fluid.pt-105 {
        padding-top: 32px !important;
    }
}
@media (max-width: 425px) {
    .hero-section .container-fluid.pt-105 {
        padding-top: 24px !important;
    }
}
 .hero-section .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
}
 .solucoes-hero-wrapper {
    gap: 65px;
    align-items: flex-start !important;
    padding-left: 0;
    margin-left: 32px;
}
 .solucoes-title-label {
    width: 101px;
    height: 30px;
    font-family: 'Lexend', Arial, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #595959;
    margin: 0;
    padding: 0;
    flex-shrink: 0;
}
 .solucoes-hero-content {
    flex: 1;
    display: flex;
    flex-direction: column;
}
 .solucoes-hero-content h1 {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-size: clamp(48px, 8vw, 96px) !important;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 0%;
    color: #000000;
    margin: 0;
    padding: 0;
    transition: font-size 0.3s ease !important;
}
 .solucoes-hero-text {
    margin: 0 !important;
    margin-bottom: 0 !important;
    padding: 0;
}
 .solucoes-hero-description {
    width: 100%;
    max-width: calc(100% - clamp(16px, 4vw, 60px));
    height: auto;
    min-height: clamp(30px, 3vh, 40px);
    font-family: 'Lexend', Arial, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: clamp(14px, 1.5vw, 16px) !important;
    line-height: 100%;
    letter-spacing: 0%;
    color: #595959;
    margin: 0 !important;
    margin-top: clamp(40px, 6vh, 80px) !important;
    margin-right: clamp(16px, 4vw, 60px) !important;
    padding: 0;
    transition: font-size 0.3s ease, margin-top 0.3s ease, margin-right 0.3s ease !important;
}
 .solucoes-hero-subtitle {
    width: 100%;
    max-width: calc(100% - clamp(16px, 4vw, 60px));
    height: auto;
    min-height: clamp(30px, 3vh, 45px);
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: clamp(20px, 3vw, 32px) !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #000000 !important;
    margin: 0 !important;
    margin-top: clamp(20px, 3vh, 30px) !important;
    margin-right: clamp(16px, 4vw, 60px) !important;
    padding: 0 !important;
    transition: font-size 0.3s ease, margin-top 0.3s ease, margin-right 0.3s ease !important;
}
 .solucoes-hero-text-after {
    width: 1160px;
    max-width: calc(100% - 60px);
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 16px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #595959 !important;
    margin: 0 !important;
    margin-top: 8px !important;
    margin-right: 60px !important;
    padding: 0 !important;
}
 .solucoes-hero-subtitle-2 {
    width: 1160px;
    max-width: calc(100% - 60px);
    height: auto;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 32px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #000000 !important;
    margin: 0 !important;
    margin-top: 40px !important;
    margin-right: 60px !important;
    padding: 0 !important;
}
 .solucoes-hero-text-after-2 {
    width: 1160px;
    max-width: calc(100% - 60px);
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 16px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #595959 !important;
    margin: 0 !important;
    margin-top: 8px !important;
    margin-right: 60px !important;
    padding: 0 !important;
}
 /* Garantir que nenhum estilo de h2, h4 ou h5 interfira - regras muito específicas */
.solucoes-hero-subtitle,
.solucoes-hero-subtitle.h2,
h2.solucoes-hero-subtitle,
.solucoes-hero-subtitle.h5,
h2.solucoes-hero-subtitle.h5,
.solucoes-hero-content .solucoes-hero-subtitle,
.solucoes-hero-content h2.solucoes-hero-subtitle,
.hero-section .solucoes-hero-subtitle,
.hero-section h2.solucoes-hero-subtitle {
    font-size: 32px !important;
}
 /* Sobrescrever qualquer estilo do Bootstrap */
h2.solucoes-hero-subtitle,
.h2.solucoes-hero-subtitle,
.h5.solucoes-hero-subtitle {
    font-size: 32px !important;
}
 /* Responsividade para a seção hero soluções - breakpoints intermediários */
@media (max-width: 1400px) {
    .solucoes-hero-content h1 {
        font-size: clamp(56px, 7vw, 80px) !important;
    }
     .solucoes-hero-wrapper {
        gap: clamp(30px, 4vw, 50px);
    }
     .solucoes-hero-description {
        width: 100%;
        max-width: calc(100% - clamp(16px, 4vw, 60px));
        margin-right: clamp(16px, 4vw, 60px) !important;
        font-size: clamp(14px, 1.5vw, 16px) !important;
    }
     .solucoes-hero-subtitle {
        width: 100%;
        max-width: calc(100% - clamp(16px, 4vw, 60px));
        margin-right: clamp(16px, 4vw, 60px) !important;
        font-size: clamp(24px, 3vw, 32px) !important;
    }
     .solucoes-hero-text-after {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 16px !important;
    }
     .solucoes-hero-subtitle-2 {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 32px !important;
        margin-top: 40px !important;
    }
     .solucoes-hero-text-after-2 {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 16px !important;
        margin-top: 8px !important;
    }
}
 @media (max-width: 1200px) {
    .solucoes-hero-content h1 {
        font-size: clamp(48px, 6.5vw, 72px) !important;
    }
     .solucoes-hero-wrapper {
        gap: clamp(40px, 5vw, 70px);
    }
     .solucoes-hero-description {
        width: 100%;
        max-width: calc(100% - clamp(16px, 4vw, 60px));
        margin-right: clamp(16px, 4vw, 60px) !important;
        font-size: clamp(14px, 1.5vw, 16px) !important;
    }
     .solucoes-hero-subtitle {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 28px !important;
    }
}
 @media (max-width: 992px) {
    .solucoes-hero-content h1 {
        font-size: clamp(42px, 6vw, 56px) !important;
    }
     .solucoes-hero-wrapper {
        margin-left: clamp(16px, 2vw, 20px);
        gap: clamp(30px, 4vw, 60px);
    }
     .solucoes-hero-description {
        width: 100%;
        max-width: calc(100% - clamp(16px, 4vw, 60px));
        margin-right: clamp(16px, 4vw, 60px) !important;
        font-size: clamp(14px, 1.5vw, 16px) !important;
        margin-top: clamp(30px, 5vh, 60px) !important;
    }
     .solucoes-hero-subtitle {
        width: 100%;
        max-width: calc(100% - clamp(16px, 4vw, 60px));
        margin-right: clamp(16px, 4vw, 60px) !important;
        font-size: clamp(20px, 2.5vw, 26px) !important;
        margin-top: clamp(20px, 3vh, 30px) !important;
    }
     .solucoes-hero-text-after {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 16px !important;
        margin-top: 8px !important;
    }
     .solucoes-hero-subtitle-2 {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 24px !important;
        margin-top: 40px !important;
    }
     .solucoes-hero-text-after-2 {
        width: 100%;
        max-width: calc(100% - 60px);
        margin-right: 60px !important;
        font-size: 16px !important;
        margin-top: 8px !important;
    }
}
 @media (max-width: 768px) {
    .solucoes-hero-content h1 {
        font-size: clamp(36px, 6vw, 48px) !important;
    }
     .solucoes-hero-wrapper {
        flex-direction: column;
        gap: clamp(12px, 2vw, 16px);
        margin-left: clamp(12px, 2vw, 15px);
    }
     .solucoes-title-label {
        width: auto;
        height: auto;
        font-size: clamp(18px, 2.5vw, 20px);
    }
     .solucoes-hero-description {
        width: 100%;
        max-width: calc(100% - clamp(16px, 3vw, 48px));
        margin-right: clamp(16px, 3vw, 48px) !important;
        height: auto;
        font-size: clamp(14px, 1.5vw, 16px) !important;
        margin-top: clamp(20px, 4vh, 40px) !important;
    }
     .solucoes-hero-subtitle {
        width: 100%;
        max-width: calc(100% - clamp(16px, 3vw, 48px));
        margin-right: clamp(16px, 3vw, 48px) !important;
        height: auto;
        font-size: clamp(18px, 2.5vw, 22px) !important;
        margin-top: clamp(20px, 3vh, 30px) !important;
    }
}
 @media (max-width: 576px) {
    .solucoes-hero-content h1 {
        font-size: clamp(32px, 6vw, 42px) !important;
    }
     .solucoes-hero-description {
        max-width: calc(100% - clamp(16px, 3vw, 40px));
        margin-right: clamp(16px, 3vw, 40px) !important;
        font-size: clamp(14px, 1.5vw, 16px) !important;
        margin-top: clamp(20px, 3vh, 30px) !important;
    }
     .solucoes-hero-subtitle {
        max-width: calc(100% - clamp(16px, 3vw, 40px));
        margin-right: clamp(16px, 3vw, 40px) !important;
        font-size: clamp(16px, 2.5vw, 20px) !important;
        margin-top: clamp(20px, 3vh, 30px) !important;
    }
}
 @media (max-width: 480px) {
    .solucoes-hero-content h1 {
        font-size: clamp(28px, 6vw, 36px) !important;
    }
     .solucoes-hero-wrapper {
        margin-left: clamp(8px, 1.5vw, 12px);
    }
     .solucoes-title-label {
        font-size: clamp(16px, 2.5vw, 18px);
    }
     .solucoes-hero-description {
        max-width: calc(100% - clamp(16px, 2.5vw, 32px));
        margin-right: clamp(16px, 2.5vw, 32px) !important;
        font-size: clamp(13px, 1.5vw, 15px) !important;
        margin-top: clamp(16px, 2.5vh, 24px) !important;
    }
     .solucoes-hero-subtitle {
        max-width: calc(100% - clamp(16px, 2.5vw, 32px));
        margin-right: clamp(16px, 2.5vw, 32px) !important;
        font-size: clamp(16px, 2.5vw, 18px) !important;
        margin-top: clamp(16px, 2.5vh, 24px) !important;
    }
     .solucoes-hero-text-after {
        max-width: calc(100% - 40px);
        margin-right: 40px !important;
        font-size: 16px !important;
        margin-top: 8px !important;
    }
     .solucoes-hero-subtitle-2 {
        max-width: calc(100% - 40px);
        margin-right: 40px !important;
        font-size: 18px !important;
        margin-top: 40px !important;
    }
     .solucoes-hero-text-after-2 {
        max-width: calc(100% - 40px);
        margin-right: 40px !important;
        font-size: 16px !important;
        margin-top: 8px !important;
    }
}
 /* ============================================
       ESTILOS DO TÍTULO DA SEÇÃO CAMPANHAS CUSTOMIZADAS
       ============================================ */
/* Regra específica e muito específica para garantir 64px */
h2.solucoes-section-title,
h4.solucoes-section-title,
h2.solucoes-section-title.h1,
h2.solucoes-section-title.h2,
h4.solucoes-section-title.h1,
h4.solucoes-section-title.h2,
h2.solucoes-section-title.h2-sm,
h4.solucoes-section-title.h2-sm,
h2.solucoes-section-title.text-rainbow,
h4.solucoes-section-title.text-rainbow,
h2.solucoes-section-title.fw-500,
h4.solucoes-section-title.fw-500,
.solucoes-section-title,
.solucoes-section-title.h2,
.solucoes-section-title.h1 {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 500 !important;
    font-style: normal;
    font-size: 64px !important;
    line-height: 85% !important;
    letter-spacing: -0.05em !important;
    text-align: left !important;
    background: linear-gradient(180deg, #8EFFF7 0%, #FD75FD 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    margin: 0 !important;
    margin-top: 0 !important;
    padding: 0 !important;
}
 /* Estilos específicos para o título Insights */
.solucoes-insights-title,
h4.solucoes-insights-title,
h4.solucoes-section-title.solucoes-insights-title {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 500 !important;
    font-style: normal;
    font-size: 64px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.05em !important;
    text-align: left !important;
    background: linear-gradient(180deg, #8EFFF7 0%, #FD75FD 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    margin: 0 !important;
    margin-top: 0 !important;
    padding: 0 !important;
    padding-bottom: 0.2em !important;
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    display: block !important;
}
 /* Garantir que o container não corte o texto */
.container:has(.solucoes-insights-title),
.row:has(.solucoes-insights-title),
.col-lg-12:has(.solucoes-insights-title),
.col-md-12:has(.solucoes-insights-title) {
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
}
 /* Fallback para navegadores sem suporte a :has() */
.container .solucoes-insights-title,
.row .solucoes-insights-title,
.col-lg-12 .solucoes-insights-title,
.col-md-12 .solucoes-insights-title {
    position: relative !important;
}
 /* Garantir que a seção Insights não corte o título */
#insights,
#insights .container-fluid,
#insights .row,
#insights .col-md-5,
#insights .col-md-6,
#insights .col-md-7 {
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
}
 #insights h4.solucoes-section-title {
    overflow: visible !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    line-height: 1.3 !important;
    padding-bottom: 0.3em !important;
    margin-bottom: 0 !important;
}
 #insights .col-md-6:first-child {
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
}
 /* Garantir que parágrafo e lista fiquem um abaixo do outro na seção Insights */
#insights .solucoes-campanhas-text-col {
    display: block !important;
    flex-direction: column !important;
}
 #insights .solucoes-campanhas-intro {
    display: block !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
}
 #insights .solucoes-campanhas-list {
    display: block !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
    flex-direction: column !important;
}
/* Insights: escala responsiva para alinhar texto ao título + imagem */
.solucoes-campanhas-row .solucoes-campanhas-text-col-right {
    padding-top: clamp(60px, 8vw, 100px) !important;
}
/* Mídia/AirBoost: mesma lógica com offset */
.solucoes-campanhas-row.solucoes-row-midia .solucoes-campanhas-text-col-right {
    padding-top: clamp(64px, 8.5vw, 105px) !important;
}
/* Meu Air (sou-creator): texto alinhado ao topo da imagem */
.solucoes-campanhas-row.solucoes-row-meu-air .solucoes-campanhas-text-col-right {
    padding-top: clamp(68px, 9vw, 120px) !important;
}
/* Connect (sou-creator): texto alinhado ao topo da imagem */
.solucoes-campanhas-row.solucoes-row-connect .solucoes-campanhas-text-col-right {
    padding-top: clamp(68px, 9vw, 120px) !important;
}
/* Meu Air / Connect: espaço título → imagem em escala responsiva */
.solucoes-campanhas-row.solucoes-row-meu-air .col-12.col-md-6:first-child img.hero-logo,
.solucoes-campanhas-row.solucoes-row-connect .col-12.col-md-6:first-child .carousel {
    margin-top: clamp(16px, 2vw, 24px) !important;
}
/* Coluna direita com foto (Campanhas Customizadas, AirSearch): escala responsiva */
.solucoes-col-photo-right {
    margin-top: clamp(60px, 8vw, 116px) !important;
}
.solucoes-campanhas-row .solucoes-campanhas-intro {
    margin-top: 0 !important;
}
 /* Regra ainda mais específica para sobrescrever qualquer estilo do Bootstrap ou externo */
#campanhas-customizadas~.container h2.solucoes-section-title,
#campanhas-customizadas~.container h4.solucoes-section-title,
.container h2.solucoes-section-title,
.container h4.solucoes-section-title,
section h2.solucoes-section-title,
section h4.solucoes-section-title,
body h2.solucoes-section-title,
body h4.solucoes-section-title {
    font-size: 64px !important;
    margin-top: 0 !important;
    text-align: left !important;
}
 /* Garantir que o container com text-center não force centralização */
.text-center h4.solucoes-section-title,
.text-center h2.solucoes-section-title,
.d-flex.text-center h4.solucoes-section-title,
.d-flex.text-center h2.solucoes-section-title,
.col-lg-12.text-center h4.solucoes-section-title,
.col-lg-12.text-center h2.solucoes-section-title {
    text-align: left !important;
}
 /* Garantir que nenhum estilo inline ou externo sobrescreva */
h2.solucoes-section-title[style*="font-size"],
h4.solucoes-section-title[style*="font-size"],
.solucoes-section-title[style*="font-size"] {
    font-size: 64px !important;
}
 h2.solucoes-section-title[style*="text-align"],
h4.solucoes-section-title[style*="text-align"],
.solucoes-section-title[style*="text-align"] {
    text-align: left !important;
}
 /* Estilos para a seção Campanhas Customizadas */
.solucoes-campanhas-row {
    padding-top: 60px;
    align-items: flex-start !important;
    margin-left: 135px;
    margin-right: 135px;
    box-sizing: border-box;
}
 .solucoes-campanhas-row > .col-md-6:first-child,
.solucoes-campanhas-row > .col-12.col-md-6:first-child {
    padding-right: 4px !important;
    padding-left: 0 !important;
    align-self: flex-start !important; /* coluna logo+foto independente da altura do texto à direita */
}
 .solucoes-campanhas-row > .col-md-6:last-child {
    padding-left: 4px !important;
}
 .solucoes-campanhas-row > .col-md-6:last-child.solucoes-campanhas-text-col {
    padding-left: 4px !important;
}

.solucoes-campanhas-row-2 {
    padding-top: 0px;
    align-items: flex-start !important;
    margin-left: 135px;
    margin-right: 135px;
    box-sizing: border-box;
}
 .solucoes-campanhas-row-2 > .col-md-6:first-child {
    padding-right: 8px !important;
    padding-left: 0 !important;
}
 .solucoes-campanhas-row-2 > .col-md-6:last-child {
    padding-left: 0px !important;
}
 .solucoes-campanhas-row-2 > .col-md-6:last-child.solucoes-campanhas-text-col {
    padding-left: 0px !important;
}

/* Apenas a coluna "Campanhas Customizadas": h2 sobe 50px sem deslocar o texto e a lista */
.campanhas-customizadas-text-col > h2.solucoes-section-title {
    margin-top: -30px !important;
}
.campanhas-customizadas-text-col > .solucoes-campanhas-intro {
    margin-top: 35px !important;
}

/* Apenas a coluna de texto "Plataforma AirSearch" (classe única no HTML): sobe em relação à imagem */
.plataforma-airsearch-text-col {
    margin-top: clamp(-70px, -4vw, -70px) !important;
}
@media (max-width: 991.98px) {
    .plataforma-airsearch-text-col {
        margin-top: 0 !important;
    }
}

 .solucoes-campanhas-text-col {
    padding-left: 32px;
}
/* Coluna de texto à direita (Insights, Mídia): padding-top só no desktop */
@media (min-width: 992px) {
    .solucoes-campanhas-text-col-right {
        padding-top: 100px !important;
    }
}
 .solucoes-campanhas-title {
    margin-top: 0 !important;
}
 /* Estilos para a seção Insights */
.solucoes-insights-title-wrapper {
    margin-left: 200px !important;
}
 .solucoes-insights-row {
    align-items: flex-start !important;
    margin-top: 0 !important;
}
 .solucoes-insights-image-col {
    padding-left: 200px !important;
}
 .solucoes-insights-text-col {
    padding-left: 32px !important;
}
 .solucoes-insights-description {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 32px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    margin-bottom: 32px !important;
    padding: 0 !important;
}
 .solucoes-insights-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
 .solucoes-insights-list li {
    color: #B0B0B0 !important;
    margin-bottom: 24px !important;
}
 .solucoes-insights-list li:last-child {
    margin-bottom: 0 !important;
}
 .solucoes-insights-list li p {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 16px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #B0B0B0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
 .solucoes-insights-list li svg {
    fill: #B0B0B0 !important;
    margin-right: 8px;
}
 /* Garantir que a imagem fique alinhada ao topo (mesma altura do título) */
.solucoes-campanhas-row .col-md-6:last-child {
    display: flex;
    align-items: flex-start;
}
 .solucoes-campanhas-row .col-md-6:last-child .carousel {
    width: 100%;
}
 .solucoes-campanhas-intro {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 24px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    margin-top: 56px !important;
    margin-bottom: 0;
}
 .solucoes-campanhas-list {
    margin-top: 32px !important;
    margin-bottom: 0;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}
 .solucoes-campanhas-list li {
    color: #B0B0B0;
    margin-bottom: 12px !important;
}

.solucoes-campanhas-list li.mb-2 {
    margin-bottom: 12px !important;
}
 .solucoes-campanhas-list li:last-child {
    margin-bottom: 0 !important;
}
 .solucoes-campanhas-list li p {
    color: #B0B0B0 !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    margin: 0;
    padding: 0;
}
 .solucoes-campanhas-list li svg {
    fill: #B0B0B0 !important;
    margin-right: 8px;
}
 /* Estilos para o título CTA da seção Campanhas Customizadas */
.solucoes-campanhas-cta-title,
h2.solucoes-campanhas-cta-title,
h3.solucoes-campanhas-cta-title,
h4.solucoes-campanhas-cta-title {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 500 !important;
    font-style: normal;
    font-size: 30px !important;
    line-height: 114% !important;
    letter-spacing: -0.05em !important;
    vertical-align: middle;
    color: #000000 !important;
    margin: 0 !important;
    margin-top: 25px !important;
    margin-bottom: 0px !important;
    padding: 0 !important;
}
 /* Ajuste de padding da seção CTA para espaçamento do botão até o final */
/* Removendo padding padrão do py-4 e aplicando padding-bottom específico */
section.py-4.text-white:has(.solucoes-campanhas-cta-title) {
    padding-top: 0 !important;
    padding-bottom: 30px !important;
}
 /* Fallback para navegadores que não suportam :has() - usando classe específica */
/* CTAs alinhados ao conteúdo: mesmo offset que .solucoes-campanhas-row (sem o padding 32 da col) */
.solucoes-cta-align-hero {
    margin-left: 135px !important;
    margin-right: 135px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
@media (max-width: 1200px) {
    .solucoes-cta-align-hero {
        margin-left: clamp(80px, 10vw, 135px) !important;
        margin-right: clamp(60px, 8vw, 135px) !important;
    }
}
@media (max-width: 992px) {
    .solucoes-cta-align-hero {
        margin-left: 20px !important; /* igual .solucoes-campanhas-text-col no mobile */
        margin-right: 12px !important;
    }
}
@media (max-width: 768px) {
    .solucoes-cta-align-hero {
        margin-left: 15px !important;
        margin-right: 12px !important;
    }
}
@media (max-width: 576px) {
    .solucoes-cta-align-hero {
        margin-left: 15px !important;
        margin-right: 12px !important;
    }
}
@media (max-width: 480px) {
    .solucoes-cta-align-hero {
        margin-left: 10px !important;
        margin-right: 10px !important;
    }
}
section.solucoes-cta-section {
    padding-top: 0 !important;
    padding-bottom: 48px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
 section.solucoes-cta-section .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* Row dos CTAs sem margem extra: alinhamento só via .solucoes-cta-align-hero (igual ao hero) */
 section.solucoes-cta-section .container .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
 /* Alinhar o conteúdo da seção CTA à esquerda */
section.solucoes-cta-section .container .row {
    justify-content: flex-start !important;
}
 section.solucoes-cta-section .col-12.mx-auto {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Garantir padding-left em col-12 mx-auto quando especificado inline */
.col-12.mx-auto[style*="padding-left"],
.col-12.mx-auto.solucoes-cta-padding {
    padding-left: 100px !important;
    padding-right: 0 !important;
}

/* Sobrescrever qualquer padding do Bootstrap - regra mais específica */
section .container .row .col-12.mx-auto.solucoes-cta-padding,
.container .row .col-12.mx-auto.solucoes-cta-padding,
div.col-12.mx-auto.solucoes-cta-padding,
.row .col-12.mx-auto.solucoes-cta-padding {
    padding-left: 0px !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Forçar padding-left mesmo com Bootstrap */
.solucoes-cta-padding {
    padding-left: 100px !important;
}
 section.solucoes-cta-section .solucoes-campanhas-cta-title {
    text-align: left !important;
    margin-left: 0 !important;
}
 /* Estilos para o botão da seção CTA - formato de pílula/cápsula */
.solucoes-cta-section .solucoes-cta-button,
.solucoes-cta-section button.btn.btn-light,
section.solucoes-cta-section button.btn.btn-light.solucoes-cta-button,
section.solucoes-cta-section .col-12.mx-auto button.btn.btn-light {
    width: 187px !important;
    min-width: 187px !important;
    max-width: 187px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    border-radius: 50px !important;
    padding: 10px 115px !important;
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #000000 !important;
    border: none !important;
    border-width: 0 !important;
    box-shadow: none !important;
    gap: 10px;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 550 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    margin-left: 0 !important;
}
 /* Remover qualquer hover effect do Bootstrap */
.solucoes-cta-section .solucoes-cta-button:hover,
.solucoes-cta-section button.btn.btn-light:hover {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #000000 !important;
    border: none !important;
    box-shadow: none !important;
}
 /* Remover qualquer focus effect do Bootstrap */
.solucoes-cta-section .solucoes-cta-button:focus,
.solucoes-cta-section button.btn.btn-light:focus {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #000000 !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}
 /* Remover qualquer active effect do Bootstrap */
.solucoes-cta-section .solucoes-cta-button:active,
.solucoes-cta-section button.btn.btn-light:active {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #000000 !important;
    border: none !important;
    box-shadow: none !important;
}
 /* Responsividade para a seção Campanhas Customizadas */
@media (max-width: 1400px) {
    .solucoes-campanhas-intro {
        font-size: 24px !important;
    }
     .solucoes-campanhas-cta-title {
        font-size: 32px !important;
    }
     section.solucoes-cta-section .col-12.mx-auto {
        margin-left: 0 !important;
    }
}
 @media (max-width: 1200px) {
    .solucoes-campanhas-intro {
        font-size: 24px !important;
    }
     .solucoes-campanhas-cta-title {
        font-size: 28px !important;
    }
     section.solucoes-cta-section .col-12.mx-auto {
        margin-left: 0 !important;
    }
}
 @media (max-width: 992px) {
    .solucoes-campanhas-row {
        padding-top: 80px;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* solucoes-campanhas-row-2 (Aira/Tecnologia): mobile - imagem centralizada, texto alinhado como os outros */
    .solucoes-campanhas-row-2 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    #insights.solucoes-campanhas-row-2,
    #insights.container-fluid {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    .solucoes-campanhas-row-2 > .col-md-6:first-child {
        display: flex !important;
        justify-content: center !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .solucoes-campanhas-row-2 > .col-md-6:first-child .carousel,
    .solucoes-campanhas-row-2 > .col-md-6:first-child .carousel .img-fluid {
        max-width: 100% !important;
        width: 100% !important;
    }
    .solucoes-campanhas-row-2 .solucoes-campanhas-text-col {
        margin-top: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    /* Imagem mais próxima do texto no mobile - só na coluna do texto (última) */
    .solucoes-campanhas-row .col-md-6:last-child,
    .solucoes-campanhas-row .col-12.col-md-6:last-child {
        margin-top: 32px !important;
    }
    /* Escala padding-top coluna texto (Insights, Mídia, Meu Air, Connect) em tablet */
    .solucoes-campanhas-row .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-midia .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-meu-air .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-connect .solucoes-campanhas-text-col-right {
        padding-top: clamp(24px, 4vw, 48px) !important;
    }
    /* Seção Insights (e similares): título, imagem e texto mais próximos no mobile */
    .solucoes-campanhas-row > .col-md-6:first-child .carousel {
        margin-top: 32px !important;
    }
    /* Título → imagem (Meu Air, Connect) em tablet */
    .solucoes-campanhas-row.solucoes-row-meu-air .col-12.col-md-6:first-child img.hero-logo,
    .solucoes-campanhas-row.solucoes-row-connect .col-12.col-md-6:first-child .carousel {
        margin-top: clamp(14px, 1.8vw, 20px) !important;
    }
    .solucoes-col-photo-right {
        margin-top: clamp(40px, 5vw, 80px) !important;
    }
    .solucoes-campanhas-row .solucoes-campanhas-text-col {
        padding-top: 16px !important;
    }
     .solucoes-campanhas-text-col {
        padding-left: 20px;
    }
     .solucoes-campanhas-intro {
        font-size: 22px !important;
        margin-top: 40px !important;
    }
     .solucoes-campanhas-list {
        margin-top: 24px !important;
    }
     .solucoes-campanhas-list li p {
        font-size: 16px !important;
    }
     .solucoes-campanhas-cta-title {
        font-size: 24px !important;
    }
     section.solucoes-cta-section .col-12.mx-auto {
        margin-left: 50px !important;
    }
}
 @media (max-width: 768px) {
    .solucoes-campanhas-row {
        padding-top: 60px;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* Margem só na coluna do texto (última) - não afeta logo/imagem à esquerda */
    .solucoes-campanhas-row .col-md-6:last-child,
    .solucoes-campanhas-row .col-12.col-md-6:last-child {
        margin-top: 24px !important;
    }
    /* Escala padding-top coluna texto em mobile (768) */
    .solucoes-campanhas-row .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-midia .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-meu-air .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-connect .solucoes-campanhas-text-col-right {
        padding-top: clamp(20px, 3vw, 32px) !important;
    }
    /* Seção logo + foto: apenas o carousel na primeira coluna */
    .solucoes-campanhas-row > .col-md-6:first-child .carousel,
    .solucoes-campanhas-row > .col-12.col-md-6:first-child .carousel {
        margin-top: 24px !important;
    }
    /* Título → imagem (Meu Air, Connect) em mobile 768 */
    .solucoes-campanhas-row.solucoes-row-meu-air .col-12.col-md-6:first-child img.hero-logo,
    .solucoes-campanhas-row.solucoes-row-connect .col-12.col-md-6:first-child .carousel {
        margin-top: clamp(12px, 1.5vw, 16px) !important;
    }
    .solucoes-col-photo-right {
        margin-top: clamp(28px, 4vw, 56px) !important;
    }
    .solucoes-campanhas-row .solucoes-campanhas-text-col {
        padding-top: 12px !important;
    }
     .solucoes-campanhas-text-col {
        padding-left: 15px;
    }
     .solucoes-campanhas-intro {
        font-size: 18px !important;
        margin-top: 30px !important;
        margin-bottom: 0;
    }
     .solucoes-campanhas-list {
        margin-top: 24px !important;
    }
     .solucoes-campanhas-list li p {
        font-size: 14px !important;
    }
     .solucoes-campanhas-cta-title {
        font-size: 20px !important;
    }
     section.solucoes-cta-section .col-12.mx-auto {
        margin-left: 0 !important;
    }
}
 @media (max-width: 480px) {
    .solucoes-campanhas-row {
        padding-top: 40px;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* Margem só na coluna do texto (última) - não afeta logo/imagem à esquerda */
    .solucoes-campanhas-row .col-md-6:last-child,
    .solucoes-campanhas-row .col-12.col-md-6:last-child {
        margin-top: 20px !important;
    }
    /* Escala padding-top coluna texto em mobile (480) */
    .solucoes-campanhas-row .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-midia .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-meu-air .solucoes-campanhas-text-col-right,
    .solucoes-campanhas-row.solucoes-row-connect .solucoes-campanhas-text-col-right {
        padding-top: clamp(16px, 2.5vw, 24px) !important;
    }
    /* Seção logo + foto: apenas o carousel na primeira coluna */
    .solucoes-campanhas-row > .col-md-6:first-child .carousel,
    .solucoes-campanhas-row > .col-12.col-md-6:first-child .carousel {
        margin-top: 20px !important;
    }
    /* Título → imagem (Meu Air, Connect) em mobile 480 */
    .solucoes-campanhas-row.solucoes-row-meu-air .col-12.col-md-6:first-child img.hero-logo,
    .solucoes-campanhas-row.solucoes-row-connect .col-12.col-md-6:first-child .carousel {
        margin-top: clamp(10px, 1.2vw, 14px) !important;
    }
    .solucoes-col-photo-right {
        margin-top: clamp(20px, 3vw, 40px) !important;
    }
    .solucoes-campanhas-row .solucoes-campanhas-text-col {
        padding-top: 8px !important;
    }
     .solucoes-campanhas-text-col {
        padding-left: 10px;
    }
     .solucoes-campanhas-intro {
        font-size: 16px !important;
        margin-top: 24px !important;
        margin-bottom: 0;
    }
     .solucoes-campanhas-list {
        margin-top: 20px !important;
    }
     .solucoes-campanhas-list li p {
        font-size: 14px !important;
    }
     .solucoes-campanhas-cta-title {
        font-size: 18px !important;
    }
     section.solucoes-cta-section .col-12.mx-auto {
        margin-left: 0 !important;
    }
}
 /* Responsividade para o título da seção - mantendo 64px como base */
@media (max-width: 1400px) {
     h2.solucoes-section-title,
    h4.solucoes-section-title,
    .solucoes-section-title,
    h4.solucoes-insights-title {
        font-size: 56px !important;
        margin-top: 100px !important;
    }
    .plataforma-airsearch-text-col h3.solucoes-section-title {
        margin-top: 0 !important;
    }
     .solucoes-insights-title-wrapper {
        margin-left: 150px !important;
    }
     .solucoes-insights-image-col {
        padding-left: 150px !important;
    }
     .solucoes-insights-description {
        font-size: 28px !important;
    }
}
 @media (max-width: 1200px) {
     h2.solucoes-section-title,
    h4.solucoes-section-title,
    .solucoes-section-title,
    h4.solucoes-insights-title {
        font-size: 48px !important;
        margin-top: 80px !important;
    }
    .plataforma-airsearch-text-col h3.solucoes-section-title {
        margin-top: 0 !important;
    }
     .solucoes-insights-title-wrapper {
        margin-left: 100px !important;
    }
     .solucoes-insights-image-col {
        padding-left: 100px !important;
    }
     .solucoes-insights-description {
        font-size: 24px !important;
    }
}
 @media (max-width: 992px) {
     h2.solucoes-section-title,
    h4.solucoes-section-title,
    .solucoes-section-title,
    h4.solucoes-insights-title {
        font-size: 40px !important;
        margin-top: 60px !important;
    }
    .plataforma-airsearch-text-col h3.solucoes-section-title {
        margin-top: 0 !important;
    }
     .solucoes-insights-title-wrapper {
        margin-left: 50px !important;
    }
     .solucoes-insights-image-col {
        padding-left: 50px !important;
    }
     .solucoes-insights-description {
        font-size: 22px !important;
    }
}
 @media (max-width: 768px) {
     h2.solucoes-section-title,
    h4.solucoes-section-title,
    .solucoes-section-title,
    h4.solucoes-insights-title {
        font-size: 32px !important;
        margin-top: 40px !important;
    }
    .plataforma-airsearch-text-col h3.solucoes-section-title {
        margin-top: 0 !important;
    }
     .solucoes-insights-title-wrapper {
        margin-left: 32px !important;
    }
     .solucoes-insights-image-col {
        padding-left: 32px !important;
    }
     .solucoes-insights-description {
        font-size: 18px !important;
    }
}
 @media (max-width: 480px) {
     h2.solucoes-section-title,
    h4.solucoes-section-title,
    .solucoes-section-title,
    h4.solucoes-insights-title {
        font-size: 28px !important;
        margin-top: 30px !important;
    }
    .plataforma-airsearch-text-col h3.solucoes-section-title {
        margin-top: 0 !important;
    }
     .solucoes-insights-title-wrapper {
        margin-left: 20px !important;
    }
     .solucoes-insights-image-col {
        padding-left: 20px !important;
    }
     .solucoes-insights-description {
        font-size: 16px !important;
    }
}
 /* Header - Responsividade Mobile */
@media (max-width: 991.98px) {
    .header-buttons.mobile-hidden {
        display: none !important;
    }
}
 /* Header - Desktop */
@media (min-width: 992px) {
    .header-container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
}
 /* ============================================
   ESTILOS DO RODAPÉ
   ============================================ */
   .footer-contact-title {
    width: 100% !important;
    max-width: min(1792px, calc(100vw - clamp(16px, 3vw, 64px))) !important;
    height: auto !important;
    min-height: clamp(50px, 6vh, 90px) !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: clamp(48px, 8vw, 96px) !important;
    line-height: 100% !important;
    letter-spacing: -0.05em !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    margin-top: clamp(80px, 12vh, 190px) !important;
    margin-bottom: clamp(40px, 6vh, 80px) !important;
    box-sizing: border-box !important;
    transition: font-size 0.3s ease, margin-top 0.3s ease, margin-bottom 0.3s ease !important;
}
 /* Responsividade para o título do rodapé - breakpoints intermediários */
@media (max-width: 1920px) {
    .footer-contact-title {
        width: 100% !important;
        max-width: min(1792px, calc(100vw - clamp(16px, 3vw, 64px))) !important;
        height: auto !important;
        font-size: clamp(48px, 7vw, 90px) !important;
    }
}
 @media (max-width: 1400px) {
    .footer-contact-title {
        font-size: clamp(42px, 6vw, 80px) !important;
        margin-top: clamp(60px, 10vh, 150px) !important;
    }
}
 @media (max-width: 992px) {
    .footer-contact-title {
        font-size: clamp(36px, 6vw, 64px) !important;
        margin-top: clamp(40px, 8vh, 100px) !important;
    }
}
 @media (max-width: 768px) {
    .footer-contact-title {
        font-size: clamp(32px, 6vw, 56px) !important;
        margin-top: clamp(30px, 6vh, 60px) !important;
        margin-bottom: clamp(30px, 4vh, 50px) !important;
    }
}
 @media (max-width: 576px) {
    .footer-contact-title {
        font-size: clamp(28px, 6vw, 48px) !important;
    }
}
 @media (max-width: 480px) {
    .footer-contact-title {
        font-size: clamp(24px, 6vw, 42px) !important;
        margin-top: clamp(20px, 5vh, 40px) !important;
        margin-bottom: clamp(20px, 3vh, 32px) !important;
    }
}
 /* ============================================
      ESTILOS DO RODAPÉ
      ============================================ */
.footer-custom {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}
 .footer-custom .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
/* Container do footer: padding igual à home para o título "Contato" não ficar cortado */
.footer-custom .container-fluid.footer-container {
    padding-left: 32px !important;
    padding-right: 32px !important;
}
@media (max-width: 768px) {
    .footer-custom .container-fluid.footer-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}
@media (max-width: 576px) {
    .footer-custom .container-fluid.footer-container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}
 .footer-custom .row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-wrap: wrap !important;
}
 .footer-custom .col-sm-12,
.footer-custom .col-md-6,
.footer-custom .col-lg-4 {
    box-sizing: border-box !important;
}
 /* Sobrescrever padding das colunas do footer */
.footer-custom .row>div:first-child {
    padding-left: 0 !important;
    padding-right: 10px !important;
}
 .footer-custom .row>div:nth-child(2) {
    padding-left: 10px !important;
    padding-right: 10px !important;
}
 .footer-custom .row>div:nth-child(3) {
    padding-left: 10px !important;
    padding-right: 10px !important;
}
 .footer-custom .row>div:nth-child(4) {
    padding-left: 10px !important;
    padding-right: 0 !important;
}
 /* Ajustar largura das colunas para melhor composição */
@media (min-width: 992px) {
    .footer-custom .row {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
    }
     .footer-custom .col-lg-4 {
        flex: 0 0 25% !important;
        max-width: 25% !important;
        box-sizing: border-box !important;
    }
     .footer-custom .col-lg-3 {
        flex: 0 0 25% !important;
        max-width: 25% !important;
        box-sizing: border-box !important;
    }
}
 /* ============================================
      ESTILOS DO RODAPÉ - CONTEÚDO
      ============================================ */
.footer-section-title {
    width: 100% !important;
    max-width: 315px !important;
    height: 16px !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    margin: 0 !important;
    margin-bottom: 8px !important;
}
 .footer-section-text {
    width: 100% !important;
    max-width: 366px !important;
    height: auto !important;
    min-height: 80px !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #B0B0B0 !important;
    margin: 0 !important;
    margin-bottom: 10px !important;
}
 .footer-email {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    color: #FFFFFF !important;
    text-decoration: underline !important;
    margin: 0 !important;
    margin-bottom: 10px !important;
}
 .footer-email a {
    color: #FFFFFF !important;
    text-decoration: underline !important;
}
 .footer-link {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    text-decoration: underline !important;
    cursor: pointer !important;
}
 .footer-link:hover {
    color: #B0B0B0 !important;
}
 .footer-content-title {
    width: 315px !important;
    height: 16px !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #000000 !important;
    text-decoration: none !important;
    margin: 0 !important;
    margin-bottom: 8px !important;
}
 .footer-content-links {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
 .footer-content-links li {
    margin-bottom: 5px !important;
}
 .footer-content-link {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #000000 !important;
    text-decoration: underline !important;
}
 .footer-content-link:hover {
    opacity: 0.8 !important;
}
 .footer-social-links {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
 .footer-social-links li {
    margin-bottom: 5px !important;
}
 .footer-social-link {
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    text-decoration: underline !important;
}
 .footer-social-link:hover {
    color: #B0B0B0 !important;
}
 .footer-bottom {
    margin-top: 0px !important;
    padding-top: 0px !important;
    border-top: none !important;
}
 .footer-copyright {
    width: 304px !important;
    height: 20px !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    text-align: left !important;
}
 .footer-privacy-link {
    width: 311px !important;
    height: 20px !important;
    font-family: 'Lexend', Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 100% !important;
    letter-spacing: 0% !important;
    color: #FFFFFF !important;
    text-decoration: underline !important;
    margin: 0 auto !important;
    display: block !important;
    text-align: center !important;
}
 .footer-privacy-link:hover {
    color: #B0B0B0 !important;
}
 .footer-logo-link {
    display: inline-block !important;
    width: 64px !important;
    height: 37px !important;
}
 .footer-logo-link svg {
    width: 64px !important;
    height: 37px !important;
}
 /* Responsividade do rodapé */
@media (max-width: 768px) {
     .footer-section-title,
    .footer-section-text,
    .footer-email,
    .footer-content-link,
    .footer-social-link,
    .footer-copyright,
    .footer-privacy-link {
        font-size: 14px !important;
    }
     .footer-bottom {
        text-align: center !important;
    }
     .footer-bottom .col-lg-4 {
        margin-bottom: 20px !important;
    }
}
 /* Rodapé branco: título "Contato" — margins 50% (96px top, 60px bottom) */
body .footer-custom.bg-white .footer-contact-title,
.footer-custom.bg-white .footer-contact-title {
    color: #000000 !important;
    margin: 0 !important;
    margin-top: 96px !important;
    margin-bottom: 60px !important;
    transition: font-size 0.3s ease, margin-top 0.3s ease, margin-bottom 0.3s ease !important;
}
@media (max-width: 1400px) {
    body .footer-custom.bg-white .footer-contact-title,
    .footer-custom.bg-white .footer-contact-title {
        margin-top: 75px !important;
    }
}
@media (max-width: 992px) {
    body .footer-custom.bg-white .footer-contact-title,
    .footer-custom.bg-white .footer-contact-title {
        margin-top: 50px !important;
    }
}
@media (max-width: 768px) {
    body .footer-custom.bg-white .footer-contact-title,
    .footer-custom.bg-white .footer-contact-title {
        margin-top: 30px !important;
        margin-bottom: 30px !important;
    }
}
@media (max-width: 480px) {
    body .footer-custom.bg-white .footer-contact-title,
    .footer-custom.bg-white .footer-contact-title {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
    }
}
 .footer-custom.bg-white .footer-section-title {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-section-text {
    color: #595959 !important;
}
 .footer-custom.bg-white .footer-email,
.footer-custom.bg-white .footer-email a {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-link {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-link:hover {
    color: #666666 !important;
}
 .footer-custom.bg-white .footer-copyright {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-privacy-link {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-privacy-link:hover {
    color: #666666 !important;
}
 .footer-custom.bg-white .footer-social-link {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-social-link:hover {
    color: #666666 !important;
}
 .footer-custom.bg-white .footer-logo-link svg path {
    fill: #000000 !important;
}
 .footer-custom.bg-white .footer-content-title {
    color: #000000 !important;
}
 .footer-custom.bg-white .footer-content-link {
    color: #000000 !important;
}
/* /solucoes/: bloco "Conteúdos para você" — só texto branco, fundo continua branco */
.footer-custom.bg-white .footer-col-4 .footer-block:first-child .footer-content-title,
.footer-custom.bg-white .footer-col-4 .footer-block:first-child .footer-content-link {
    color: #ffffff !important;
}
 .footer-custom.bg-white .footer-section-text[style*="color: #B0B0B0"],
.footer-custom.bg-white .footer-section-text[style*="color: #000000"] {
    color: #595959 !important;
}