
/* ============================================
   SIMULADOR CONSULT VIDA — IDENTIDADE AMIL
   ROXO / AZUL / BRANCO
============================================ */

.cv-simulador {
    --cv-gold: #6847ff;
    --cv-gold-light: #c5b6ff;
    --cv-purple: #4218d9;
    --cv-purple-bright: #481aff;
    --cv-lilac: #ded5ff;

    padding: 76px 24px;
    margin: 55px 0;
    border-radius: 20px;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(112, 83, 255, .32),
            transparent 45%
        ),
        linear-gradient(
            135deg,
            #140b38 0%,
            #28106a 55%,
            #35138b 100%
        );

    color: #ffffff;
}

.cv-simulador,
.cv-simulador * {
    box-sizing: border-box;
}

/* CONTAINER */

.cv-simulador__container {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

/* ETIQUETA */

.cv-simulador__etiqueta {
    color: #c9baff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 18px;
}

/* TÍTULO */

.cv-simulador__titulo {
    color: #ffffff;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(30px, 4vw, 43px);
    font-weight: 500;
    line-height: 1.2;
    margin: 0 0 22px;
}

.cv-simulador__titulo span {
    color: #b9a8ff;
}

.cv-simulador__titulo .cv-cidade {
    color: #ffffff;
}

/* DESCRIÇÃO */

.cv-simulador__descricao {
    color: #ece8ff;
    font-size: 17px;
    line-height: 1.85;
    max-width: 690px;
    margin: 0 auto 34px;
}

/* ============================================
   PAINEL DA SIMULAÇÃO
============================================ */

.cv-simulador__painel {
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(190, 170, 255, .35);
    border-radius: 16px;
    padding: 32px 35px 27px;
    margin-bottom: 23px;
    box-shadow: 0 12px 35px rgba(10, 4, 45, .12);
}

.cv-simulador__instrucao {
    color: #cfc3ff;
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 22px;
}

/* VALOR PRINCIPAL */

.cv-simulador__valor {
    color: #ffffff;
    font-size: clamp(43px, 6vw, 60px);
    font-weight: 800;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.cv-simulador__valor small {
    font-size: 24px;
    color: #cbbcff;
}

.cv-simulador__legenda {
    color: #ddd5ff;
    font-size: 13px;
    margin: 8px 0 30px;
}

/* ============================================
   BARRA DESLIZANTE
============================================ */

.cv-simulador__range {
    display: block;
    width: 100%;
    height: 9px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 20px;
    background: #57458b;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    outline-offset: 8px;
}

/* CHROME / EDGE / SAFARI */

.cv-simulador__range::-webkit-slider-thumb {
    appearance: none;
    -webkit-appearance: none;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #c6b5ff;
    border: 5px solid #ffffff;
    box-shadow: 0 0 0 5px rgba(178, 153, 255, .28);
    cursor: pointer;
}

/* FIREFOX */

.cv-simulador__range::-moz-range-thumb {
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #c6b5ff;
    border: 5px solid #ffffff;
    box-shadow: 0 0 0 5px rgba(178, 153, 255, .28);
    cursor: pointer;
}

.cv-simulador__range:focus-visible {
    outline: 2px solid #ffffff;
}

/* VALORES MÍNIMO E MÁXIMO */

.cv-simulador__limites {
    display: flex;
    justify-content: space-between;
    margin-top: 18px;
    color: #ddd5ff;
    font-size: 13px;
}

/* ============================================
   MENSAGEM AUTOMÁTICA DO WHATSAPP
============================================ */

.cv-simulador__mensagem {
    text-align: left;
    padding: 22px 25px;
    border: 1px solid rgba(190, 170, 255, .28);
    border-radius: 12px;
    background: rgba(255, 255, 255, .06);
    margin-bottom: 25px;
}

.cv-simulador__mensagem-titulo {
    color: #cbbcff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.cv-simulador__mensagem p {
    color: #f0ecff;
    font-size: 14px;
    line-height: 1.75;
    margin: 0;
}

/* ============================================
   BOTÃO DE COTAÇÃO
============================================ */

.cv-simulador__botao {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    min-height: 56px;
    max-width: 100%;
    padding: 17px 35px;
    border-radius: 7px;

    background: linear-gradient(
        110deg,
        #ffffff 0%,
        #ded5ff 100%
    );

    color: #3612a7 !important;
    font-size: 16px;
    font-weight: 800;
    text-decoration: none !important;

    box-shadow: 0 6px 20px rgba(10, 4, 45, .18);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.cv-simulador__botao:hover {
    transform: translateY(-3px);
    background: linear-gradient(
        110deg,
        #e4dbff 0%,
        #ffffff 100%
    );
    box-shadow: 0 12px 30px rgba(10, 4, 45, .3);
    color: #3612a7 !important;
}

.cv-simulador__botao:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 4px;
}

.cv-simulador__botao span {
    font-size: 21px;
}

/* RODAPÉ DO SIMULADOR */

.cv-simulador__rodape {
    color: #d9d1f5;
    font-size: 12px;
    margin: 22px 0 0;
}

/* ============================================
   RESPONSIVO
============================================ */

@media (max-width: 600px) {

    .cv-simulador {
        padding: 48px 18px;
        margin: 35px 0;
        border-radius: 14px;
    }

    .cv-simulador__descricao {
        font-size: 15px;
        line-height: 1.75;
    }

    .cv-simulador__painel {
        padding: 28px 20px;
    }

    .cv-simulador__valor {
        font-size: clamp(40px, 10vw, 54px);
    }

    .cv-simulador__mensagem {
        padding: 20px;
    }

    .cv-simulador__botao {
        width: 100%;
        font-size: 14px;
        padding: 16px 12px;
    }

    .cv-simulador__rodape {
        line-height: 1.8;
    }

}
