
        /* Definindo a família da fonte */
        body {
            margin: 0;
            min-height: 100vh;
            font-family: 'Montserrat', sans-serif;
            background: url('fundo.webp') no-repeat center center;
            background-size: cover;
            background-attachment: fixed;
            display: flex;
            flex-direction: column;
            color: #fff;
            background-color: black;
            overflow-x: hidden; /* Evita scroll horizontal */
        }
        .funcao-imagem i {
    font-size: 3rem;
    color: #333;
    display: block;
    text-align: center;
    margin: 0 auto 1rem auto;
}


        /* Faixa fina acima do cabeçalho */
        .top-strip {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 8px;
            background-color: #5c67f2;
            z-index: 1003;
        }

        /* Estilo do cabeçalho */
        .header {
            width: 100%;
            padding: 15px 30px;
            background: rgba(0, 0, 0, 0.7);
            display: flex;
            justify-content: space-between;
            align-items: center;
            position: fixed;
            top: 8px;
            z-index: 1002;
            box-sizing: border-box;
            flex-wrap: wrap;
        }

        .header img {
            width: 150px;
        }

        .header .buttons {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
        }

        .header .buttons button {
            background-color: #5c67f2;
            color: #fff;
            padding: 8px 15px;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-weight: bold;
            transition: background-color 0.3s;
            font-size: 0.9rem;
        }

        .header .buttons button:hover {
            background-color: #4a54e1;
        }

        /* Espaço para o cabeçalho fixo */
        .header-space {
            height: 68px;
        }

        /* Seção Hero */
        .hero {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            position: relative;
            z-index: 2; /* Acima da effect-container */
            padding: 0 20px;
        }

        .hero h1 {
            color: #fff;
            font-size: 3.5rem;
            margin-bottom: 10px;
            font-weight: bold;
            position: relative;
            display: inline-block;
            text-align: center;
        }

        .highlight {
            position: relative;
            display: inline-block;
            padding: 0 10px;
            overflow: hidden;
        }

        .highlight::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            height: 100%;
            width: 0;
            background: linear-gradient(90deg, #5c67f2, rgba(0, 0, 0, 0.7));
            border-radius: 12px;
            z-index: -1;
            transition: width 2s ease-in-out;
            animation: slideIn 0.5s forwards;
            animation-delay: 0.5s;
        }

        @keyframes slideIn {
            from { width: 0; }
            to { width: 100%; }
        }

        .subtitle {
            color: #FFFF;
            font-size: 1.2rem;
            margin-bottom: 30px;
            max-width: 700px;
            text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
            text-align: center;
        }

        .hero .start-button {
            background-color: #5c67f2;
            color: #fff;
            padding: 15px 30px;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-size: 1.2rem;
            font-weight: bold;
            transition: background-color 0.3s;
            text-decoration: none;
            z-index: 2;
            margin-bottom: 50px;
        }

        .hero .start-button:hover {
            background-color: #4a54e1;
        }

        .scroll-down {
            display: flex;
            flex-direction: column;
            align-items: center;
            margin-top: 30px;
            cursor: pointer;
        }

        .scroll-down p {
            color: rgba(255, 255, 255, 0.8);
            font-size: 1rem;
            margin: 0;
            text-align: center;
        }

        .scroll-down .arrows {
            margin-top: 5px;
            display: flex;
            flex-direction: column;
            align-items: center;
            animation: bounce 1.5s infinite;
        }

        .arrow {
            width: 20px;
            height: 20px;
            border-right: 2px solid #fff;
            border-bottom: 2px solid #fff;
            transform: rotate(45deg);
            margin: 3px 0;
            opacity: 0.8;
        }

        @keyframes bounce {
            0%, 20%, 50%, 80%, 100% {
                transform: translateY(0);
            }
            40% {
                transform: translateY(10px);
            }
            60% {
                transform: translateY(5px);
            }
        }

        /* Responsividade */
        @media (max-width: 1024px) {
            .header {
                flex-direction: column;
                padding: 10px;
                gap: 10px;
            }
            .hero h1 {
                font-size: 3rem;
            }
            .subtitle {
                font-size: 0.9rem;
                margin-bottom: 20px;
            }
            .hero .start-button {
                font-size: 1rem;
                padding: 12px 25px;
            }
            .carrossel-container {
                width: 90%;
            }
        }

        @media (max-width: 768px) {
            .hero h1 {
                font-size: 2.5rem;
            }
            .subtitle {
                font-size: 0.8rem;
                margin-bottom: 15px;
            }
            .hero .start-button {
                font-size: 0.9rem;
                padding: 10px 20px;
            }
            .arrow {
                width: 15px;
                height: 15px;
            }
            .scroll-down p {
                font-size: 0.9rem;
            }
            .header img {
                width: 120px;
            }
        }

        @media (max-width: 480px) {
            .hero h1 {
                font-size: 2rem;
            }
            .subtitle {
                font-size: 0.8rem;
                margin-bottom: 15px;
            }
            .hero .start-button {
                font-size: 0.8rem;
                padding: 8px 15px;
            }
            .arrow {
                width: 12px;
                height: 12px;
            }
            .scroll-down p {
                font-size: 0.8rem;
            }
            .header img {
                width: 100px;
            }
        }

        /* Contêiner para os efeitos */
        .effect-container {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none; /* Não interfere com interações do usuário */
            overflow: hidden;
            z-index: -1; /* Atrás do conteúdo principal */
        }

        /* Estilo da nebulosa */
        .fog {
            position: absolute;
            width: 150px;
            height: 150px;
            background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, rgba(0, 0, 0, 0) 70%);
            pointer-events: none;
            opacity: 0;
            animation: fogFade 3s ease-in-out forwards;
        }

        @keyframes fogFade {
            0% { opacity: 0; }
            50% { opacity: 0.5; }
            100% { opacity: 0; }
        }

        /* Estilo das estrelas cadentes */
        .shooting-star {
            position: absolute;
            width: 2px;
            height: 80px;
            background: linear-gradient(white, transparent);
            opacity: 0;
            transform-origin: top left;
            animation: shoot 2s ease-in-out forwards;
        }

        @keyframes shoot {
            0% {
                opacity: 1;
                transform: translate(0, 0) rotate(130deg);
            }
            100% {
                opacity: 0;
                transform: translate(400px, 400px) rotate(130deg);
            }
        }

        /* Estilo da seção de clientes */
        .clientes {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 50px 20px;
            position: relative;
            z-index: 2;
        }

        .carrossel-container {
            position: relative;
            width: 80%;
            overflow: hidden;
        }

        .carrossel {
            display: flex;
            gap: 20px;
            animation: carrosselSlide 20s linear infinite;
            align-items: center;
            will-change: transform;
        }

        @keyframes carrosselSlide {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(-50%);
            }
        }

        .carrossel img {
            max-width: 100%;
            max-height: 80px;
            height: auto;
            filter: brightness(80%);
            opacity: 0.8;
            transition: filter 0.3s, opacity 0.3s;
        }
/* Estilos para a seção Agentes de IA */
.agentes-ia {
    padding: 50px 20px;
    text-align: center;
    background-color: ; /* Cor de fundo opcional para a seção */
}

.agentes-ia h2 {
    font-size: 2rem;
    color: #ffff;
    margin-bottom: 100px;
    margin-top: -100px;
}

.agentes-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
}

.agente-card {
    background-color: #fff;
    border-radius: 15px;
    width: 300px;
    position: relative;
    overflow: visible; /* Permite que a imagem ultrapasse o card */
    padding-top: 10px; /* Mantido para minimizar o espaço acima */
    padding-bottom: 20px; /* Reduzido para diminuir o espaço abaixo */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.agente-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px; /* Altura da linha na parte inferior */
    background-color: #5c67f2; /* Mesma cor da linha acima do cabeçalho */
}

.agente-imagem {
    position: absolute;
    top: -50px; /* Posiciona a imagem acima do card */
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 100px;
}

.agente-imagem img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    border: 5px solid #fff;
}

.agente-card h3 {
    color: #000;
    margin-top: 50px; /* Aumentado para mais espaço entre a foto e o nome */
    font-size: 1.5rem;
}

.agente-card p {
    color: #555;
    font-size: 1rem;
    padding: 0 20px;
    margin-bottom: 20px;
}

.agente-card button {
    background-color: #5c67f2;
    color: #fff;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-weight: bold;
    transition: background-color 0.3s;
    margin-bottom: 10px; /* Reduzido para diminuir o espaço abaixo do botão */
}

.agente-card button:hover {
    background-color: #4a54e1;
}

/* Responsividade */
@media (max-width: 768px) {
    .agentes-container {
        flex-direction: column;
        align-items: center;
    }

    .agente-card {
        width: 100%;
        max-width: 350px;
    }
}
/* Estilo do overlay do popup */
.popup {
    display: none; /* Escondido por padrão */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Fundo semi-transparente */
    z-index: 2000; /* Acima de todos os outros elementos */
    overflow: auto;
}

/* Estilo do conteúdo do popup */
.popup-content {
    background-color: #fff;
    margin: 50px auto;
    padding: 20px;
    border-radius: 15px;
    position: relative;
    max-width: 800px;
    width: 90%;
    box-sizing: border-box;
    overflow: hidden;
    height: 80vh; /* Ocupa 80% da altura da tela em desktops */
    display: flex;
    flex-direction: column;
}

/* Linha na parte inferior do popup */
.popup-content::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background-color: #5c67f2; /* Mesma cor da linha dos agentes */
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}

/* Estilo do botão de fechar */
.close-button {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 30px;
    font-weight: bold;
    color: #aaa;
    cursor: pointer;
    z-index: 10;
}

.close-button:hover {
    color: #000;
}

/* Estilo do iframe */
#popup-iframe {
    width: 100%;
    flex: 1; /* O iframe ocupa todo o espaço disponível */
    border: none;
}

/* Preloader */
.preloader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.5rem;
    color: #5c67f2;
    display: none;
}

/* Responsividade */
@media (max-width: 768px) {
    .popup-content {
        margin: 0; /* Remove as margens */
        width: 100%;
        height: 100%;
        max-height: none;
        border-radius: 0; /* Remove bordas arredondadas */
    }
    .popup-content::after {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .close-button {
        top: 15px;
        right: 20px;
    }
}
/* Estilos para a Seção de Preços */
.precos {
    padding: 60px 20px;
    text-align: center;
}

.precos h2 {
    font-size: 2.5rem;
    color: #fff; /* Título branco para fundo preto */
    margin-bottom: 40px;
    font-weight: bold;
}

.precos p {
    font-size: 1.2rem;
    color: #fff; /* Texto branco para fundo preto */
    margin-bottom: 50px;
}

.precos-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
}

/* Plano Card - Design Moderno */
.plano-card {
    background-color: #fff;
    border-radius: 15px;
    width: 320px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); /* Sombra suave */
    transition: transform 0.3s;
}

.plano-card:hover {
    transform: scale(1.05); /* Efeito de zoom ao passar o mouse */
}

.plano-header {
    background-color: #5c67f2; /* Cor principal do tema */
    padding: 25px;
    text-align: center;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

.plano-header.destaque-header {
    background-color: #f29d38; /* Cor de destaque para o plano intermediário */
}

.plano-header h3 {
    color: #fff;
    margin: 0;
    font-size: 1.75rem;
    font-weight: bold;
}

/* Lista de Benefícios */
.plano-lista {
    list-style: none;
    padding: 25px;
    margin: 0;
    flex-grow: 1;
    text-align: left; /* Alinhamento à esquerda */
}

.plano-lista li {
    display: flex;
    align-items: center;
    font-size: 1.1rem;
    color: #555;
    margin-bottom: 15px;
}

.check-icon {
    color: #5c67f2;
    margin-right: 10px;
    font-weight: bold;
    font-size: 1.3rem;
}

.destaque .check-icon {
    color: #f29d38; /* Ícone destaque para o plano intermediário */
}

/* Preço */
.plano-preco {
    text-align: center;
    font-size: 2.2rem;
    color: #000; /* Preço em preto */
    margin: 20px 0;
    font-weight: bold;
}

.plano-destaque {
    font-size: 1rem;
    color: #000; /* Texto abaixo do preço em preto */
    margin-top: 10px;
}

/* Botão dos Planos */
.plano-botao {
    background-color: #5c67f2;
    color: #fff;
    padding: 15px;
    border: none;
    cursor: pointer;
    font-weight: bold;
    font-size: 1.1rem;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    transition: background-color 0.3s;
}

.plano-botao.destaque-botao {
    background-color: #f29d38;
}

.plano-botao:hover {
    background-color: #4a54e1;
}

.destaque .plano-botao:hover {
    background-color: #e68923;
}

/* Informações Adicionais */
.info-adicional {
    margin-top: 30px;
    text-align: center; /* Alinhamento centralizado */
    font-size: 0.1rem; /* Tamanho reduzido para ser mais discreto */
    color: #bbb; /* Cor mais suave e discreta */
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.info-adicional h3 {
    font-size: 1rem;
    color: #fff; /* Título branco para fundo preto */
    margin-bottom: 10px;
}

.info-adicional p {
    line-height: 1.5;
    font-size: 0.8rem;
}

/* Responsividade */
@media (max-width: 768px) {
    .precos-container {
        flex-direction: column;
        align-items: center;
    }

    .plano-card {
        width: 100%;
        max-width: 350px;
    }

    .info-adicional {
        text-align: center;
    }
}

/* Estilos para a Seção Footer */
.footer {
    background: rgba(0, 0, 0, 0.7);
    color: #fff; /* Texto branco */
    padding: 50px 20px;
    font-family: 'Montserrat', sans-serif;
}

.footer-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    gap: 30px;
}

.footer-left {
    flex: 1;
    min-width: 250px;
    text-align: left;
}

.footer-logo {
    width: 150px;
    margin-bottom: 20px;
}

.footer-slogan {
    font-size: 1.2rem;
    color: #fff;
    line-height: 1.5;
}

.footer-right {
    flex: 1;
    min-width: 250px;
    text-align: right;
}

.footer-cta-box {
    background-color: #5c67f2; /* Cor principal do site */
    border-radius: 15px;
    padding: 20px;
    display: inline-block;
}

.cta-text {
    color: #fff;
    font-size: 1.2rem;
    margin-bottom: 15px;
}

.cta-button {
    background-color: #fff; /* Botão branco */
    color: #5c67f2; /* Texto na cor da marca */
    border: none;
    border-radius: 25px;
    padding: 12px 30px;
    cursor: pointer;
    font-weight: bold;
    font-size: 1rem;
    transition: background-color 0.3s, color 0.3s;
}

.cta-button:hover {
    background-color: #e6e6e6;
    color: #5c67f2;
}

.footer-copy {
    text-align: center;
    margin-top: 40px;
    font-size: 0.9rem;
    color: #fff;
}

/* Responsividade */
@media (max-width: 768px) {
    .footer-container {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .footer-left, .footer-right {
        text-align: center;
    }
    
    .footer-cta-box {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .footer-logo {
        width: 120px;
    }
    
    .footer-slogan {
        font-size: 1rem;
    }
    
    .cta-text {
        font-size: 1rem;
    }
    
    .cta-button {
        padding: 10px 25px;
        font-size: 0.9rem;
    }
}
/* Estilos para a Seção Funções */
.funcoes {
    padding: 50px 20px;
    text-align: center;
    background-color: transparent; /* Fundo transparente */
}

.funcoes h2 {
    font-size: 2rem;
    color: #fff; /* Título em branco */
    font-weight: bold; /* Negrito */
    margin-bottom: 40px;
}

/* Container com Grid Layout para organizar os boxes */
.funcoes-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Boxes das Funções */
.funcao-card {
    background: rgba(0, 0, 0, 0.7); /* Fundo semi-transparente */
    border-radius: 15px;
    border: 2px solid #5c67f2; /* Borda da cor do tema principal */
    padding: 20px;
    box-sizing: border-box;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s, box-shadow 0.3s;
    color: #fff; /* Texto em branco */
}

/* Efeito Hover para interatividade */
.funcao-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

/* Imagem das Funções */
.funcao-imagem {
    width: 80px;
    height: 80px;
    margin-bottom: 20px;
}

.funcao-imagem img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Ajusta a imagem para caber dentro do container sem cortar */
    border-radius: 10px; /* Opcional: Bordas arredondadas para as imagens */
}

/* Título da Função */
.funcao-card h3 {
    font-size: 1.2rem;
    color: #fff; /* Título em branco */
    margin-bottom: 10px;
    text-align: center;
    font-weight: bold; /* Negrito */
}

/* Descrição da Função */
.funcao-card p {
    font-size: 1rem;
    color: #ddd; /* Descrição em cinza claro para melhor legibilidade */
    text-align: center;
}

/* Responsividade */
@media (max-width: 1024px) {
    .funcoes-container {
        grid-template-columns: repeat(2, 1fr); /* 2 colunas em tablets */
    }
}

@media (max-width: 768px) {
    .funcoes-container {
        grid-template-columns: 1fr; /* 1 coluna em dispositivos móveis */
    }

    .funcao-card {
        width: 100%;
        max-width: 400px; /* Limita a largura máxima para melhor legibilidade */
    }
}
/* Estilos para a Seção Agendamento */
.agendamento-section {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px 20px;
    background-color: transparent; /* Fundo transparente para consistência */
    font-family: 'Montserrat', sans-serif;
}

.agendamento-container {
    background-color: #5c67f2; /* Cor principal da marca */
    border-radius: 15px;
    padding: 40px 60px;
    text-align: center;
    max-width: 600px;
    width: 100%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.agendamento-subtitle {
    color: #fff;
    font-size: 1rem;
    margin-bottom: 10px;
    font-weight: 500;
}

.agendamento-title {
    color: #fff;
    font-size: 2rem;
    margin-bottom: 30px;
    font-weight: 700;
}

.agendamento-button {
    background-color: #fff; /* Botão branco para contraste */
    color: #5c67f2; /* Texto na cor principal da marca */
    border: none;
    border-radius: 25px;
    padding: 15px 30px;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

.agendamento-button:hover {
    background-color: #f0f0f0;
    color: #3a3aa0;
}

/* Responsividade */
@media (max-width: 768px) {
    .agendamento-container {
        padding: 30px 40px;
    }

    .agendamento-title {
        font-size: 1.5rem;
    }

    .agendamento-button {
        padding: 12px 25px;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .agendamento-container {
        padding: 20px 30px;
    }

    .agendamento-title {
        font-size: 1.2rem;
    }

    .agendamento-button {
        padding: 10px 20px;
        font-size: 0.8rem;
    }
}





/* SECAO CRIAR EMPRESA */
  /* Estilos para a Seção Cadastro */
        .cadastro-section {
            display: flex;
  justify-content: center; /* Centraliza horizontalmente */
  align-items: center;    /* Centraliza verticalmente */
  height: 80vh; 
            padding: 60px 20px;
            font-family: 'Montserrat', sans-serif;
        }

        .cadastro-container {
            background: rgba(0, 0, 0, 0.7);
            border-radius: 15px;
            border: 2px solid #5c67f2; /* Borda na cor da marca */
            padding: 40px 60px;
            max-width: 800px;
            width: 100%;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        }

        .cadastro-title {
            text-align: center;
            font-size: 2rem;
            margin-bottom: 30px;
            color: #5c67f2;
            font-weight: 700;
        }

        .form-step {
            display: none;
        }

        .form-step.active {
            display: block;
        }

        .form-group {
            margin-bottom: 20px;
        }

        .form-group label {
            display: block;
            margin-bottom: 8px;
            font-weight: 600;
            color: #ffff;
        }

        .form-group input[type="text"],
        .form-group input[type="email"],
        .form-group input[type="password"],
        .form-group input[type="url"],
        .form-group textarea,
        .form-group select {
            width: 100%;
            padding: 10px 15px;
            border: 1px solid #cccccc;
            border-radius: 8px;
            font-size: 1rem;
            transition: border-color 0.3s;
        }

        .form-group input[type="text"]:focus,
        .form-group input[type="email"]:focus,
        .form-group input[type="password"]:focus,
        .form-group input[type="url"]:focus,
        .form-group textarea:focus,
        .form-group select:focus {
            border-color: #5c67f2;
            outline: none;
        }

        .button-group {
            display: flex;
            justify-content: space-between;
            margin-top: 20px;
        }

        .next-button,
        .prev-button {
            background-color: #5c67f2; /* Cor da marca */
            color: #ffffff;
            border: none;
            padding: 12px 25px;
            font-size: 1rem;
            border-radius: 25px;
            cursor: pointer;
            transition: background-color 0.3s;
            font-weight: bold;
        }

        .next-button:hover,
        .prev-button:hover {
            background-color: #4a54e1;
        }

        .plan-options {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .plan-option {
            display: flex;
            align-items: flex-start;
            background-color: #f9f9f9;
            padding: 15px;
            border-radius: 8px;
            border: 2px solid transparent;
            cursor: pointer;
            transition: border-color 0.3s, background-color 0.3s;
        }

        .plan-option:hover {
            border-color: #5c67f2;
            background-color: #f1f3ff;
        }

        .plan-option input {
            margin-top: 5px;
        }

        .plan-details {
            margin-left: 15px;
        }

        .plan-details strong {
            display: block;
            font-size: 1.1rem;
            margin-bottom: 5px;
            color: #333333;
        }

        .plan-details p {
            margin: 0;
            font-size: 0.95rem;
            color: #555555;
        }

        .plan-price {
            display: block;
            margin-top: 5px;
            font-size: 1rem;
            color: #5c67f2;
            font-weight: 600;
        }

        .error-message {
            color: #ff4d4f;
            font-size: 0.9rem;
            margin-top: 5px;
            display: none;
        }

        .error-message.active {
            display: block;
        }

        /* Spinner Styles */
        .spinner {
            border: 4px solid #f3f3f3;
            border-top: 4px solid #5c67f2;
            border-radius: 50%;
            width: 30px;
            height: 30px;
            animation: spin 2s linear infinite;
            margin: 20px auto;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        /* Estilos para Botões de Sucesso e Finalização */
        .form-step#step-10 {
            text-align: center;
        }

        .form-step#step-10 p {
            font-size: 1.1rem;
            color: #ffff;
        }

        /* Barra de Progresso (Opcional) */
        .progress-bar {
            display: flex;
            justify-content: space-between;
            margin-bottom: 30px;
        }

        .progress-step {
            width: 30px;
            height: 30px;
            background-color: #cccccc;
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            color: #ffffff;
            font-weight: bold;
        }

        .progress-step.active {
            background-color: #5c67f2;
        }

   /* Botão "Precisa de Ajuda?" */
    .ajuda-button {
        position: fixed;
        bottom: 30px;
        right: 30px;
        background-color: #5c67f2;
        color: #ffffff;
        border: none;
        padding: 15px 20px;
        border-radius: 50px;
        cursor: pointer;
        font-size: 1rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
        transition: background-color 0.3s;
        z-index: 1000;
    }

    .ajuda-button:hover {
        background-color: #4a54e1;
    }

    /* Modal de Ajuda */
    .modal {
        display: none; /* Oculto por padrão */
        position: fixed; /* Fixo */
        z-index: 1001; /* Fica acima do conteúdo */
        left: 0;
        top: 0;
        width: 100%; /* Largura total */
        height: 100%; /* Altura total */
        overflow: auto; /* Habilita scroll se necessário */
        background-color: rgba(0,0,0,0.5); /* Fundo semitransparente */
    }

    .modal-content {
        background-color: #fefefe;
        margin: 10% auto; /* 10% do topo e centralizado */
        padding: 20px;
        border: 1px solid #888;
        width: 80%; /* Largura */
        max-width: 500px;
        border-radius: 10px;
        position: relative;
    }

    .close-button {
        color: #aaaaaa;
        float: right;
        font-size: 28px;
        font-weight: bold;
        position: absolute;
        top: 10px;
        right: 20px;
        cursor: pointer;
    }

    .close-button:hover,
    .close-button:focus {
        color: #000;
        text-decoration: none;
    }

    /* Estilos para o Checklist de Senha */
    .password-checklist {
        margin-top: 10px;
        font-size: 0.9rem;
    }

    .password-checklist p {
        margin: 0 0 5px 0;
    }

    .password-checklist ul {
        list-style: none;
        padding-left: 0;
    }

    .password-checklist li {
        display: flex;
        align-items: center;
        margin-bottom: 5px;
    }

    .password-checklist li::before {
        content: '✖'; /* Marca de erro */
        display: inline-block;
        width: 20px;
        color: red;
        margin-right: 10px;
    }

    .password-checklist li.valid::before {
        content: '✔'; /* Marca de sucesso */
        color: green;
    }

    /* Estilos para o Ícone de Olho */
    .password-wrapper {
        position: relative;
    }

    .toggle-senha {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        cursor: pointer;
        font-size: 1.2rem;
    }

    /* Estilos Adicionais para o Formulário */
    .form-group {
        margin-bottom: 15px;
    }

    .form-group label {
        display: block;
        margin-bottom: 5px;
        font-weight: bold;
    }

    .form-group input {
        width: 100%;
        padding: 8px 10px;
        box-sizing: border-box;
        border: 1px solid #ccc;
        border-radius: 4px;
    }

    .error-message {
        color: red;
        font-size: 0.85rem;
        display: none;
    }

    .error-message.active {
        display: block;
    }

    .button-group {
        display: flex;
        justify-content: space-between;
        margin-top: 20px;
    }

    .next-button,
    .prev-button {
        padding: 10px 20px;
        border: none;
        background-color: #5c67f2;
        color: #fff;
        border-radius: 4px;
        cursor: pointer;
        font-size: 1rem;
        transition: background-color 0.3s;
    }

    .next-button:hover,
    .prev-button:hover {
        background-color: #4a54e1;
    }

    /* Estilos para o Checklist de Senha */
    .password-checklist li.valid {
        color: green;
    }

    .password-checklist li.invalid {
        color: red;
    }

    /* Estilos para o Campo CNPJ */
    #cnpj {
        /* Adicione estilos específicos se necessário */
    }

    
