@font-face {
    font-family:'cvc';
    src:url('font/cvcsans-medium-webfont.woff2') format('woff2'),
         url('font/cvcsans-medium-webfont.woff') format('woff');
    font-weight:normal;
    font-style:normal;
}

*{
    box-sizing:border-box;
    padding:0;
    margin:0;
    position:relative;
    font-family:'Nunito', sans-serif;
}

body{
    background-color:#fff; /*#FEE600*/
    overscroll-behavior-y:contain;
    margin:0;
    padding:0;
}

input:-internal-autofill-selected{ background-color:transparent !important; }
a{ display:block; cursor:pointer; text-decoration:none; }
h1,h2,h3,h4,h5,h6,b,strong{ font-weight:normal; }
li{ list-style:none }
input,textarea,select{
	border:none;
	-webkit-appearance:none;
    -moz-appearance:none;
    -ms-appearance:none;
    -o-appearance:none;
    appearance:none;
	outline:none;
	box-shadow:none;
    background:transparent;
}

.boxAzul{ 
    background-color:#1100BC;
    width:calc(100% + ((100vw - 665px) / 2));
    height:90%;
    position:absolute;
    z-index:1;
    top:100px;
    left:95px;
    border-radius:15px 0 0 30px;
}

.box-amarelo{
    background:#FEE600;
    width:100%;
    position:fixed;
    left:0;
}
.box-amarelo.superior{
    top:0;
    border-radius:0 0 20px 20px;
    height:320px;
    padding:25px 0 0 0;
}
.box-amarelo.inferior{
    bottom:0;
    border-radius:20px 115px 0 0;
    height:43%;
    display:none;
}

.overlay{ position:fixed; width:100%; height:100vh; z-index:999; background-color:#FEE600D4; top:0; left:0; }
.loader{ margin:0 auto; top:50%; transform:translateY(-50%); width:75px; display:block; }

.btSair{ position:fixed; top:10px; right:10px; text-decoration:none; cursor:pointer; z-index:2; display:none; padding:10px; }
.btVoltar{ position:fixed; top:12px; left:12px; text-decoration:none; cursor:pointer; z-index:2; display:none; padding:10px; }

.modal{
    position: absolute;
    width: 320px;
    border-radius: 20px;
    background: #fff;
    padding: 40px 30px 30px 30px;
    display: none;
    z-index: 999;
    box-shadow:1px 1px 20px 0px rgba(0, 0, 0, 0.3);
}
.modal .closeOverlay{
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    padding: 5px;
}

.w-50{
    width: 50% !important;
    float: left;
    margin-top: 5px;
}
input.w-50{
    width: calc(50% - 10px) !important;
    margin: 0 5px;
}
.SimFachada span{
    display: none;
    font-size: 12px;
    margin: -10px 0 20px 0;
    padding: 0 15px;
}

h1{ color:#1100BC; font-family:'cvc'; font-size:42px; }
#simulador h1{ font-size:24px; padding:0 15px 25px; }
#simulador h1 small{ display:block; padding:15px 0 0 0; font-size:65%; }
#simulador #passo1 h1{ text-align:center; font-size:24px; padding:0; }
table{ width:100%; margin:0; padding:0; border:none; height:100%; }
tr td{ vertical-align:top; }

.campos{ border-radius:10px; border:1px solid #CBCBCE; padding:13px 20px; font-size:15px; margin:0 0 10px 0; text-align:center; width:100%; color:#727376; position:relative; }
.botoes{
    background-color:#1100BC;
    color:#fff;
    font-size:16px;
    border-radius:10px;
    text-align:center;
    cursor:pointer;
    letter-spacing:1px;
    box-shadow:1px 1px 5px 0px rgba(0, 0, 0, 0.3);
    padding: 12px 0;
    font-weight: bold;
    width: 100%;
}

.logo-cvc{ width:65px; display:block; margin:0 auto 35px; }

.content{
    display:block;
    background-color:#fff;
    z-index:2;
    padding:75px;
    box-shadow:10px 15px 30px 5px rgba(0, 0, 0, 0.3);
    min-height:300px;
}
.clear{ clear:both }
#login{ position:relative; max-width:320px; margin:110px auto 0; }
#login .content{ width:100%; border-radius:15px; padding:35px 15px 5px 15px; }
#login .btEsqueci{ color:#727376; text-decoration:underline; font-size:24px; margin:20px 0 0 20px; font-weight:bold; }
#login .botoes{
    width:90%;
    font-size:21px;
    font-weight:bold;
    margin:20px auto 0;
    display:block;
    text-align:center;
    border-radius:10px;
}
#login h1{ margin-bottom:30px; font-size:35px; padding:0 25px; font-weight:bold; }
#login h1 small{ color:#000; font-size:50%; font-weight:normal; }



#simulador{ display:none; }
#simulador .campos{ text-align:left; padding:13px 15px; margin-bottom:15px; color:#000; }
#simulador.content{
    position:relative;
    max-width:320px;
    margin:110px auto 40px;
    border-radius:15px;
    padding:35px 15px 15px 15px;
}
#simulador .passos{ display:none; }
#simulador #passo1.passos{ display:block; }
#simulador .passos .icon{ width:85px; margin-bottom:20px; }
#simulador .passos p{ color:#1100BC; font-size:16px; padding:15px 0 30px; }
#simulador .passos .botoes{
    margin:20px auto 0;
    display:block;
    padding:12px 0;
    font-weight:bold;
    width:100%;
    text-align:center;
    border-radius:10px;
}

#formSimulador .boxAzul{ width:calc(50vw + 220px); height:90%; top:-95px; right:0; border-radius:30px 0 0 0; left:auto; display:none; }
#formSimulador .boxAzul .timeline{ margin:34px 0 0 85px; padding:0; display:none; }
#formSimulador .boxAzul .timeline li{
    text-align:center;
    float:left;
    color:#fff;
    font-size:13px;
    border:1px solid #fff;
    border-radius:50%;
    width:23px;
    height:23px;
    padding:2px;
    margin:0px 35px 0 0;
}
#formSimulador .boxAzul .timeline li::before{
    content:'......';
    color:#fff;
    position:absolute;
    top:-3px;
    right:-33px;
    display:block;
    font-size:15px;
}
#formSimulador .boxAzul .timeline li:last-of-type{ margin:0px 0 0 0; }
#formSimulador .boxAzul .timeline li:last-of-type:before{ display:none; }
#formSimulador .boxAzul .timeline li.ativo{
    background-color:#FEE600;
    border-color:#FEE600;
    color:#1100BC;
    font-size:20px;
    width:30px;
    height:30px;
    padding:1px;
    margin-top:-3px;
    font-weight:bold;
}
#formSimulador .boxAzul .timeline li.ativo::before{ top:0px; }
#formSimulador .boxAzul .timeline li.ativo::after{
    content:'';
    position:absolute;
    bottom:-2px;
    left:3px;
    background-color:#FEE600;
    width:22px;
    height:22px;
    border-radius:5px;
    transform:rotate(45deg);
    z-index:-1;
}
#simulador label{
    display:block;
    padding:0 0 2px 15px;
    color:#000;
    font-size:14px;
}
#login label{
    display:grid;
    grid-template-columns:1em auto;
    gap:0.8em;
    padding:5px 0;
    margin:15px auto 0;
    width:max-content;
    font-size:14px;
    color:#727376;
}
#login .olho{ position:relative; }
#login .olho img{
    display:block;
    position:absolute;
    top:0;
    right:0;
    padding:16px;
    cursor:pointer;
    filter:invert(100%) sepia(80%) saturate(6486%) hue-rotate(253deg) brightness(68%) contrast(131%);
}

#simulador label small{
    display:block;
    position:absolute;
    top:24px;
    left:22px;
    color:#727376;
}
.radio{
    font:inherit;
    color:#1100BC;
    width:1.4em;
    height:1.4em;
    border:1px solid #CBCBCE;
    border-radius:50%;
    transform:translateY(-0.075em);
    display:grid;
    place-content:center;
}
.radio::before{
    content:"";
    width:0.70em;
    height:0.70em;
    border-radius:50%;
    transform:scale(0);
    transition:120ms transform ease-in-out;
    box-shadow:inset 1em 1em #1100BC;
    background-color:#1100BC;
}
.radio:checked::before{ transform:scale(1); }
.checkbox{
    font:inherit;
    width:1.4em;
    height:1.4em;
    border:0.20em solid #1100BC;
    border-radius:5px;
    transform:translateY(-0.075em);
    display:grid;
    place-content:center;
    position:relative;
    color:#FEE600;
}
.checkbox::before{
    content:"\2714";
    transform:scale(0);
    transition:120ms transform ease-in-out;
    color:#FEE600;
    top:8px;
    position:absolute;
    left:3px;
    line-height:0;
    font-size:14px;
}
.checkbox:checked::before{ transform:scale(1); }

#simulador select.campos{
    background-image:url('../images/ico_seta.png');
    background-repeat:no-repeat;
    background-position:95% 6px;
    background-size:auto;
    padding:13px 55px 13px 15px;
}
#SimConstrucao optgroup{ display:none; }

#agradecimento{ display:none; }
#agradecimento h1{ text-align:center; font-size:28px; }
#agradecimento.passos p{
    color:#2c2e35;
    font-size:14px;
    text-align:center;
    font-size:14px;
    padding:0;
}
#agradecimento.passos .botoes{ margin:15px 0 0 0; }
#agradecimento #btNovaSimulacao.botoes{ margin:15px 0 0 0; color:#1100BC; background-color:#FEE600; border-color:#FEE600; }
#agradecimento #qrcode{ width:max-content; margin:0 auto 10px; }