:root {
            --primary-blue: #00287a;
            --secondary-blue: #0046c7;
            --text-dark: #333333;
            --text-muted: #555555;
            --bg-light: #f8fafc;
        }

    

        /* Linha decorativa embaixo dos títulos */
        .title-with-line {
            color: var(--primary-blue);
            font-weight: 700;
            position: relative;
            padding-bottom: 12px;
            margin-bottom: 24px;
        }

        .title-with-line::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: 0;
            width: 55px; 
            height: 4px;  
            background-color: var(--secondary-blue);
        }

        .main-title {
            font-size: 2rem;
        }

        .section-title {
            font-size: 1.5rem;
            margin-top: 2rem;
        }

        .text-body-custom {
            font-size: 1rem;
            color: var(--text-muted);
            line-height: 1.6;
        }

        .text-highlight-custom {
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--primary-blue);
        }

        /* Card de Benefícios */
        .benefits-card {
            background-color: var(--bg-light);
            border: 1px solid #e2e8f0;
            border-radius: 12px;
            padding: 2rem;
        }

        .benefit-item {
            display: flex;
            align-items: flex-start;
            margin-bottom: 1.5rem;
        }

        .benefit-item:last-child {
            margin-bottom: 0;
        }

        .benefit-icon-img {
            width: 24px;
            height: 24px;
            margin-right: 1rem;
            margin-top: 3px;
            object-fit: contain;
        }

        .benefit-title {
            color: var(--text-dark);
            font-weight: 700;
            font-size: 1.1rem;
            margin-bottom: 0.25rem;
            line-height: 1.55;
        }

        .benefit-desc {
            color: var(--text-muted);
            font-size: 1rem;
            margin-bottom: 0;
        }

        /* Card de Análise de Fatura com Imagem de Fundo */
        .analysis-bg-card {
            position: relative;
            border-radius: 12px;
            overflow: hidden;
            border: 1px solid #dbedff;
            background-color: #edf2f9; /* Fallback caso a imagem não carregue */
            z-index: 1;
        }

        /* Elemento para injetar a imagem de background */
        .analysis-bg-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: -2;
        }

        /* Camada overlay para garantir contraste do texto sobre o fundo */
        .analysis-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, rgba(237,242,249,0.95) 0%, rgba(237,242,249,0.85) 60%, rgba(237,242,249,0.4) 100%);
            z-index: -1;
        }

        .analysis-content {
            padding: 2.5rem 2rem;
        }

        .analysis-header-icon {
            width: auto;
            height: 52px;
            margin-right: 0.75rem;
            object-fit: contain;
        }

        .analysis-title {
            color: var(--secondary-blue);
            font-weight: 700;
            font-size: 1.25rem;
        }

        .analysis-subtitle {
            font-size: 1.05rem;
            font-weight: 700;
            margin-bottom: 1rem;
            color: var(--text-dark);
        }

        .analysis-list {
            list-style: none;
            padding-left: 0;
            font-size: 1rem;
            color: var(--text-dark);
            margin-bottom: 1.5rem;
            max-width: 85%; /* Evita que o texto encoste na extremidade direita */
        }

        .analysis-list li {
            margin-bottom: 0.6rem;
            display: flex;
            align-items: flex-start;
            gap: 8px;
        }

        .analysis-list li svg{color: #0046b8;stroke-width: 3px;}

        .list-check-icon {
            width: 18px;
            height: 18px;
            margin-right: 0.75rem;
            margin-top: 4px;
            object-fit: contain;
        }

        .analysis-footer {
            color: var(--secondary-blue);
            font-weight: 700;
            font-size: 1.05rem;
        }












        @media (min-width: 768px) {
    .ons-section {
        position: relative;
        padding-left: 20px;
        padding-right: 20px;
    }
    .ons-section:not(:last-child)::after {
        content: "";
        position: absolute;
        right: 0;
        top: 10%;
        height: 80%;
        width: 1px;
        background-color: #f0f0f0;
    }
}














/* Customização sutil para alinhar com o design da imagem */
.custom-faq-btn {
    color: #333333 !important;
    font-weight: 500;
    font-size: 14px;
    padding: 15px;
    box-shadow: none !important;
}

/* Altera o ícone de seta do Bootstrap para o símbolo de "+" */
.custom-faq-btn::after {
    content: "+";
    background-image: none !important;
    font-size: 18px;
    font-weight: bold;
    color: #333;
    transform: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Posiciona o sinal de "+" no lado esquerdo, conforme a imagem original */
.custom-faq-btn {
    flex-direction: row;
    justify-content: flex-start;
    gap: 10px;
}

/* Muda para um traço ou rotaciona sutilmente quando aberto (opcional) */
.custom-faq-btn:not(.collapsed)::after {
    content: "-";
}




















/* Pequenos ajustes para replicar com perfeição o layout da imagem */
.form-control:focus, .form-select:focus {
    border-color: #0046b8;
    box-shadow: 0 0 0 0.2rem rgba(0, 70, 184, 0.15);
}

.btn-submit-custom:hover {
    background-color: #00216d !important;
}

/* Customização do input de arquivo para ficar mais discreto como na imagem */
.style-upload-wrapper input[type=file]::file-selector-button {
    background-color: #f8f9fa;
    color: #495057;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    padding: 4px 12px;
}
.style-upload-wrapper input[type=file]::file-selector-button:hover {
    background-color: #e9ecef;
}

















.section-title::before {
   display: none !important;
}


html, body {
  overflow-x: hidden; /* Esconde qualquer coisa que tente vazar para os lados */
  width: 100%;
}