:root {
    --branco: #fff;
    --azul-escuro: #121e54;
    --azul-claro: #3163ff;
    --verde-neon: #06f477;
}

.w-form-formradioinput--inputType-custom {
    width: 12px;
    height: 12px;
    border: 1px solid #ccc;
    border-radius: 50%;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
    box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
    border-width: 4px;
    border-color: #3898ec;
}

h1 {
    color: var(--branco);
    letter-spacing: -1px;
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 60px;
    font-weight: 900;
    line-height: 70px;
}

.body {
    color: var(--azul-escuro);
    font-family: Satoshi, sans-serif;
    font-size: 20px;
    line-height: 30px;
}

.header {
    background-color: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
}

.menu-navegacao {
    color: var(--azul-escuro);
    padding-left: 10px;
    padding-right: 10px;
    font-size: 17px;
    font-weight: 700;
    transition: color 0.5s ease-in-out;
}

.menu-navegacao:hover {
    color: var(--azul-claro);
}

.nav-menu {
    justify-content: flex-end;
    align-items: center;
    display: flex;
}

.menu-container {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.cta-menu-topo {
    background-color: var(--verde-neon);
    border-radius: 35px;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
    padding: 10px 20px;
    text-decoration: none;
    transition: background-color 0.5s ease-in-out;
    display: flex;
}

.cta-menu-topo:hover {
    background-color: var(--azul-claro);
}

.text-cta-telefone {
    color: var(--azul-escuro);
    font-size: 18px;
    font-weight: 900;
}

.icon-telefone {
    margin-right: 5px;
}

.section-topo-form {
    background-image: url("../images/iumg-banner-topo.png");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 100px;
    padding-bottom: 100px;
}

.padding-page {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
}

.container {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.conteudo-form-banner {
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.text-titulo-banner {
    width: 100%;
    max-width: 437px;
}

.text-block {
    width: 100%;
    max-width: 260px;
    color: var(--branco);
    font-size: 24px;
    line-height: 34px;
}

.text-verde-destaque {
    color: var(--verde-neon);
}

.form-simuleagora {
    width: 100%;
    max-width: 500px;
    background-color: rgba(18, 30, 84, 0.8);
    border-radius: 30px;
    padding: 58px;
}

.text-simuleagoramesmo {
    color: var(--verde-neon);
    margin-bottom: 10px;
    font-size: 30px;
    font-weight: 900;
    line-height: 30px;
}

.text-block-3 {
    color: var(--branco);
    line-height: 30px;
}

.text-pergunta-valores {
    color: var(--branco);
    margin-bottom: 5px;
    font-weight: 400;
}

.campo-text {
    height: 70px;
    border: 2px solid var(--azul-claro);
    color: var(--verde-neon);
    background-color: rgba(255, 255, 255, 0);
    border-radius: 24px;
    margin-bottom: 20px;
    padding: 15px 30px;
    font-size: 35px;
    font-weight: 700;
}

.campo-text:focus {
    border-color: var(--verde-neon);
}

.campo-text::-ms-input-placeholder {
    color: var(--azul-claro);
    font-weight: 900;
}

.campo-text::placeholder {
    color: var(--azul-claro);
    font-weight: 900;
}

.radio-button {
    width: 20px;
    height: 20px;
    border: 1px solid var(--azul-claro);
    background-color: rgba(255, 255, 255, 0);
    margin-top: 0;
    margin-left: 0;
    margin-right: 10px;
}

.radio-button.w--redirected-checked {
    border-width: 2px;
    border-color: var(--azul-claro);
    background-color: var(--verde-neon);
}

.text-modalidade {
    color: var(--branco);
    margin-right: 4px;
    font-weight: 700;
}

.price {
    align-items: center;
    padding-left: 0;
    display: flex;
}

.price.sac {
    margin-left: 40px;
}

.modalidade-credito {
    align-items: center;
    display: flex;
}

.submit-button {
    width: 100%;
    background-color: var(--verde-neon);
    color: var(--azul-escuro);
    border-radius: 35px;
    margin-top: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 18px;
    font-weight: 900;
    transition: background-color 0.5s ease-in-out;
}

.submit-button:hover {
    background-color: var(--azul-claro);
}

.section-diferenciais {
    padding-top: 140px;
    padding-bottom: 140px;
}

.titulo-diferenciais {
    justify-content: center;
    margin-bottom: 50px;
    display: flex;
}

.h2-titulos {
    color: var(--azul-claro);
    margin-top: 0;
    margin-bottom: 0;
    font-size: 40px;
    font-weight: 900;
    line-height: 50px;
}

.box-diferenciais {
    justify-content: space-around;
    align-items: center;
    display: flex;
}

.diferenciais-content {
    width: 100%;
    height: 400px;
    max-width: 288px;
    background-color: #f2f2f2;
    border-radius: 28px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
}

.icon-diferenciais {
    margin-bottom: 30px;
}

.text-diferenciais {
    width: 100%;
    max-width: 202px;
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    line-height: 40px;
}

.text-diferenciais._24h-ajust {
    max-width: 219px;
}

.text-span,
.text-span-2,
.text-span-3,
.text-span-4 {
    color: var(--azul-claro);
}

.cta-centralizado {
    flex-direction: column;
    align-items: center;
    display: flex;
}

.button-simular {
    background-color: var(--verde-neon);
    color: var(--azul-escuro);
    text-transform: uppercase;
    border-radius: 35px;
    margin-top: 50px;
    padding: 20px 50px;
    font-size: 18px;
    font-weight: 900;
    transition: background-color 0.5s ease-in-out;
}

.button-simular:hover {
    background-color: var(--azul-claro);
}

.button-simular.cta-simulacao {
    width: 100%;
    max-width: 532px;
    text-align: center;
}

.section-passoapasso {
    padding-bottom: 140px;
}

.conteudo-passo-passo {
    justify-content: space-between;
    display: flex;
}

.titulo-passoapasso {
    width: 100%;
    max-width: 412px;
    margin-bottom: 30px;
}

.itens-passoapasso {
    margin-bottom: 40px;
}

.titulo-passo-passo-descricao {
    align-items: center;
    margin-bottom: 10px;
    display: flex;
}

.text-titulo-passo {
    color: var(--azul-claro);
    font-size: 30px;
    font-weight: 700;
    line-height: 30px;
}

.icon-check {
    margin-right: 10px;
}

.text-descricao-passo {
    width: 100%;
    max-width: 360px;
    margin-left: 35px;
}

.text-descricao-passo.passo-02 {
    max-width: 572px;
}

.text-descricao-passo.passo4 {
    max-width: 470px;
}

.section-garantiaimovel {
    background-color: #f2f2f2;
    padding-top: 40px;
    padding-bottom: 40px;
}

.conteudo-garantia-imovel {
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.titulo-garantia-imovel {
    width: 100%;
    max-width: 472px;
    margin-bottom: 20px;
}

.text-block-4 {
    width: 100%;
    max-width: 579px;
}

.img-casa-predio {
    width: 100%;
    max-width: 593px;
}

.section-quemsomos {
    padding-top: 140px;
    padding-bottom: 140px;
}

.conteudo-quemsomos {
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.titulo-quemsomos {
    margin-bottom: 20px;
}

.text-corrido-quemsomos {
    width: 100%;
    max-width: 446px;
}

.section-frase-cta {
    height: 600px;
    background-image: url("../images/img-frase-familia.png");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    display: flex;
}

.text-block-5 {
    width: 100%;
    max-width: 431px;
    color: var(--branco);
    font-size: 70px;
    font-weight: 900;
    line-height: 80px;
}

.section-duvidas {
    padding-top: 140px;
    padding-bottom: 140px;
}

.conteudo-duvidas,
.titulo-duvidas {
    flex-direction: column;
    align-items: center;
    display: flex;
}

.duvidas {
    margin-top: 40px;
}

.titulo-duvidas-lista {
    width: 100%;
    max-width: 950px;
    background-color: #f2f2f2;
    border-radius: 38px;
    align-items: center;
    padding: 20px 40px;
    display: flex;
}

.text-duvida {
    color: var(--azul-claro);
    font-size: 30px;
    font-weight: 700;
    line-height: 40px;
}

.text-duvida.ajust-pergunta-size {
    width: 100%;
    max-width: 700px;
}

.text-resposta-duvida {
    width: 100%;
    max-width: 700px;
    margin-top: 20px;
    margin-left: 40px;
}

.text-resposta-duvida.ajust-size-text-garantia {
    max-width: 760px;
}

.text-resposta-duvida.size-ajust-valoresdisponiveis {
    max-width: 801px;
}

.icon-arrow {
    margin-right: 20px;
}

.section-rodape {
    background-color: #121e54;
    padding-top: 60px;
    padding-bottom: 60px;
}

.logo-phone-email-socialmedia {
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.link-rodape {
    color: var(--verde-neon);
    font-weight: 700;
    text-decoration: none;
    font-size: 16px;
    transition: color 0.5s ease-in-out;
}

.link-rodape:hover {
    color: var(--azul-claro);
}

.link-2 {
    color: var(--verde-neon);
    text-decoration: none;
}

.link-socialmedia {
    margin-right: 10px;
    position: relative;
}

.link-socialmedia.zap-margin-0 {
    margin-right: 0;
}

.icon-socialmedia.hover-azul {
    position: absolute;
    top: 0%;
    bottom: auto;
    left: 0%;
    right: auto;
}

.linha-azul-horizontal {
    width: 100%;
    height: 1px;
    background-color: var(--azul-claro);
    margin-top: 60px;
    margin-bottom: 60px;
}

.textos-legais {
    flex-direction: column;
    align-items: center;
    display: flex;
}

.text-acesso-de-contato {
    width: 100%;
    max-width: 830px;
    color: var(--branco);
    text-align: center;
    font-size: 16px;
    line-height: 22px;
}

.exemplo-informacoes {
    justify-content: space-around;
    align-items: flex-start;
    margin-top: 40px;
    display: flex;
}

.titulo-info-exemplo {
    color: var(--branco);
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
}

.text-exmplo-explicativo {
    width: 100%;
    max-width: 536px;
    color: var(--branco);
    font-size: 16px;
    line-height: 22px;
}

.linha-azul-vertical {
    width: 1px;
    height: 142px;
    background-color: var(--azul-claro);
    color: var(--azul-claro);
    margin-left: 35px;
    margin-right: 35px;
}

.direitos-assinatura-genia {
    justify-content: space-between;
    display: flex;
}

.direitos-reservados {
    color: var(--branco);
}

.assinatura-genia {
    align-items: center;
    display: flex;
}

.produzido-por {
    color: var(--branco);
}

.link-site-genia {
    margin-left: 10px;
}

.text-block-6 {
    color: var(--azul-claro);
}

.body-2 {
    font-family: Satoshi, sans-serif;
    font-size: 20px;
    line-height: 30px;
}

.conteudo-resultado-simulacao {
    justify-content: space-between;
    display: flex;
}

.box-valores-resultado {
    width: 100%;
    height: 600px;
    max-width: 571px;
    background-color: #f2f2f2;
    border-radius: 30px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
}

.titulo-simulacao {
    color: var(--azul-claro);
    margin-bottom: 30px;
    font-size: 30px;
    font-weight: 900;
    line-height: 40px;
}

.valor-credito-imovel {
    color: var(--azul-claro);
    margin-bottom: 30px;
    font-size: 40px;
    font-weight: 900;
    line-height: 60px;
}

.linha-cinza-horizontal {
    width: 100%;
    height: 1px;
    max-width: 462px;
    background-color: #dcdcdc;
    margin-bottom: 20px;
}

.texto-legal-simulacao {
    width: 100%;
    max-width: 430px;
}

.titulo-proposta-resposta {
    margin-bottom: 20px;
}

.button-modalidade-price-sac {
    align-items: center;
    display: flex;
}

.cta-modalidade {
    width: 100%;
    height: 53px;
    max-width: 228px;
    border: 2px solid var(--azul-escuro);
    border-radius: 20px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 35px;
    text-decoration: none;
    transition: border-color 0.5s, background-color 0.5s;
    display: flex;
}

.cta-modalidade:hover {
    border-color: var(--verde-neon);
    background-color: var(--verde-neon);
}

.cta-modalidade.selecionado {
    background-color: var(--verde-neon);
    border-color: rgba(49, 99, 255, 0);
}

.text-cta-modalidade {
    color: var(--azul-escuro);
    font-weight: 700;
}

.linha-azul-simulacao {
    width: 100%;
    height: 1px;
    max-width: 532px;
    background-color: var(--azul-claro);
    margin-top: 30px;
    margin-bottom: 30px;
}

.parcelas {
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.text-titulo-valoresparcela {
    margin-bottom: 10px;
}

.valor-parcelas {
    color: var(--azul-claro);
    font-size: 30px;
    font-weight: 900;
}

.linha-azul-valoreparcela {
    width: 1px;
    height: 80px;
    background-color: var(--azul-claro);
    margin-left: 70px;
    margin-right: 70px;
}

.text-prazo-pagamento {
    margin-bottom: 20px;
}

.select-quantidade-parcelas {
    align-items: center;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 5px;
}

@media screen and (max-width: 479px) {
    .select-quantidade-parcelas {
        grid-template-columns: repeat(3, 1fr) !important;
        width: 100% !important;
    }
}

.select-quantidade-parcelas.espaco-mais-topo {
    margin-top: 10px;
}

._36x-240x {
    width: 80px;
    height: 53px;
    border: 2px solid #b2b2b2;
    border-radius: 20px;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    transition: background-color 0.5s ease-in-out;
    display: flex;
}

._36x-240x:hover {
    background-color: var(--azul-claro);
    border-color: rgba(178, 178, 178, 0);
}

._36x-240x.zero-margin {
    margin-right: 0;
}

.text-36x {
    color: #b2b2b2;
    font-weight: 700;
}

._168x {
    width: 80px;
    height: 53px;
    background-color: var(--azul-claro);
    border-radius: 20px;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    display: flex;
    color: white !important;
}

._168x .text-36x {
    color: white !important;
}

.text-168x {
    color: var(--branco);
    font-weight: 700;
}

.linha-carregamento-azul {
    width: 212px;
    height: 10px;
    background-color: var(--azul-claro);
}

.linha-cinza-fixa {
    width: 80px;
    height: 10px;
    background-color: #d9d9d9;
}

.diferenca-price-sac {
    flex-direction: column;
    align-items: center;
    padding-top: 60px;
    padding-bottom: 0;
    display: flex;
}

.text-modalidade-difereca {
    width: 100%;
    max-width: 780px;
    text-align: center;
}

.conteudo-form-contato {
    justify-content: space-around;
    align-items: center;
    display: flex;
}

.text-formulario-contato {
    width: 100%;
    max-width: 276px;
}

.form-contato {
    width: 550px;
    height: 500px;
    background-color: var(--azul-escuro);
    border-radius: 40px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
}

.text-campo {
    width: 400px;
    height: 70px;
    border: 1px solid var(--branco);
    background-color: var(--azul-escuro);
    color: var(--branco);
    border-radius: 20px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 20px;
}

.text-campo:focus {
    border-color: var(--verde-neon);
    color: var(--verde-neon);
}

.text-campo::-ms-input-placeholder {
    color: var(--branco);
}

.text-campo::placeholder {
    color: var(--branco);
}

.submit-button-2 {
    width: 100%;
    background-color: var(--verde-neon);
    color: var(--azul-escuro);
    text-transform: uppercase;
    border-radius: 40px;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 18px;
    font-weight: 900;
    transition: background-color 0.5s ease-in-out;
}

.submit-button-2:hover {
    background-color: var(--azul-claro);
}

.success-message {
    background-color: var(--verde-neon);
    border-radius: 20px;
}

.text-block-7 {
    font-weight: 700;
}

.text-block-8 {
    text-align: center;
}

.error-message {
    border-radius: 12px;
}

.image {
    width: 100%;
    max-width: 500px;
}

.img-dinheiro-passoapasso {
    width: 100%;
    max-width: 374px;
}

.text-block-9 {
    color: var(--azul-claro);
}

.text-block-10 {
    color: var(--azul-claro);
    text-align: center;
    font-size: 14px;
}

@media screen and (max-width: 479px) {
    .cta-menu-topo {
        margin-bottom: 10px;
    }

    .menu-navegacao {
        text-align: center;
        padding-top: 40px;
        padding-bottom: 40px;
        font-size: 30px;
    }

    .nav-menu {
        background-color: var(--branco);
        padding-top: 40px;
        padding-bottom: 100px;
    }

    .padding-page {
        padding-left: 20px;
        padding-right: 20px;
    }

    .conteudo-form-banner {
        flex-direction: column;
    }

    .form-simuleagora {
        margin-top: 40px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .h2-titulos {
        font-size: 35px;
        line-height: 45px;
    }

    .box-diferenciais {
        flex-direction: column;
    }

    .diferenciais-content {
        margin-top: 10px;
    }

    .conteudo-passo-passo {
        flex-direction: column;
        align-items: flex-start;
    }

    .bloco-text-img {
        margin-bottom: 60px;
    }

    .text-descricao-passo,
    .text-descricao-passo.passo-02,
    .text-descricao-passo.passo4 {
        max-width: 240px;
    }

    .conteudo-garantia-imovel {
        flex-direction: column;
    }

    .img-casa-predio {
        margin-top: 40px;
    }

    .conteudo-quemsomos {
        flex-direction: column;
    }

    .section-frase-cta {
        background-position: 2%;
    }

    .text-block-5 {
        font-size: 60px;
        line-height: 70px;
    }

    .text-resposta-duvida {
        max-width: 280px;
        margin-left: 0;
    }

    .logo-phone-email-socialmedia {
        flex-direction: column;
    }

    .link-rodape,
    .socialmedia-icons {
        margin-top: 40px;
    }

    .exemplo-informacoes {
        flex-direction: column;
        align-items: center;
    }

    .linha-azul-vertical {
        width: 100%;
        height: 1px;
        margin: 20px 0;
    }

    .direitos-assinatura-genia {
        flex-direction: column;
        align-items: center;
    }

    .direitos-reservados {
        text-align: center;
    }

    .assinatura-genia {
        margin-top: 40px;
    }

    .conteudo-resultado-simulacao {
        flex-direction: column;
        align-items: center;
    }

    .box-valores-resultado {
        padding-left: 20px;
        padding-right: 20px;
    }

    .valor-credito-imovel {
        font-size: 30px;
    }

    .modalidade-parcelas {
        padding-top: 40px;
    }

    .titulo-proposta-resposta {
        width: 100%;
        max-width: 280px;
    }

    .button-modalidade-price-sac {
        flex-direction: column;
    }

    .cta-modalidade {
        margin-right: 0;
    }

    .cta-modalidade.selecionado {
        margin-top: 20px;
    }

    .linha-azul-simulacao {
        max-width: none;
    }

    .parcelas {
        flex-direction: column;
    }

    .linha-azul-valoreparcela {
        width: 100%;
        height: 1px;
        margin: 40px 0;
    }

    .linha-carregamento-azul {
        width: 40px;
    }

    .linha-cinza-fixa {
        width: 18px;
    }

    .section-form-contato {
        padding-top: 40px;
        padding-bottom: 100px;
    }

    .conteudo-form-contato {
        flex-direction: column;
    }

    .form-contato {
        width: 100%;
        margin-top: 40px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .text-campo {
        width: 100%;
    }

    .image {
        margin-bottom: 40px;
    }

    .image-2 {
        max-width: 100%;
    }

    .menu-button {
        background-color: rgba(200, 200, 200, 0);
    }

    .menu-button.w--open {
        background-color: rgba(49, 99, 255, 0);
    }

    .icon {
        color: var(--azul-escuro);
    }

    .image-3,
    .image-4 {
        max-width: 100%;
    }

    .brand,
    .brand-2 {
        flex-direction: column;
        align-items: center;
    }
}

@font-face {
    font-family: "Satoshi";
    src: url("../fonts/Satoshi-Black.otf") format("opentype");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Satoshi";
    src: url("../fonts/Satoshi-Bold.otf") format("opentype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Satoshi";
    src: url("../fonts/Satoshi-Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
