/* reset css */
* { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
html, body { margin:0; padding:0; font-family:'Open Sans', Arial, Verdana, sans-serif; font-weight:400; font-size:16px; color:#000; }
html, body, div, main, section, article, aside, figure, fieldset, header, footer { position:relative; display:block; }
input, button, select, option, optgroup, textarea { margin:0; padding:0; outline:none; border:none; font-family:'Open Sans', Arial, Verdana, sans-serif; font-size:16px; color:#000; }
input[type="button"], input[type="submit"] { cursor:pointer; }
fieldset { margin:0; padding:0; }
p { margin-top:0; }
h1, h2, h3, h4, h5, h6 { margin-top:0; }
figure { margin:0; }
ul, ol { margin:0 0 30px; padding:0; list-style-position:inside; }
body p:last-child, body ul:last-child, body ol:last-child { margin-bottom:0; }
img, embed, object, video { max-width:100%; height:auto !important; border:none; vertical-align:top; }
fieldset { border:none; vertical-align:top; }

input:focus::-moz-placeholder { opacity:0 !important; }
input:focus:-moz-placeholder { opacity:0 !important; }
input:focus:-ms-input-placeholder { opacity:0 !important; }
input:focus::-webkit-input-placeholder { opacity:0 !important; }

textarea:focus:-moz-placeholder { opacity:0 !important; }
textarea:focus::-moz-placeholder { opacity:0 !important; }
textarea:focus:-ms-input-placeholder { opacity:0 !important; }
textarea:focus::-webkit-input-placeholder { opacity:0 !important; }

:-moz-placeholder { opacity:1 !important; color:#a5a5a5; }
::-moz-placeholder { opacity:1 !important; color:#a5a5a5; }
:-ms-input-placeholder { opacity:1 !important; color:#a5a5a5; }
::-webkit-input-placeholder { opacity:1 !important; color:#a5a5a5; }

/* geral */
main { z-index:1; }
.central { max-width:1200px; margin:0 auto; padding:0 10px; }
.clear { clear:both; }

.video-container { position:relative; padding-bottom:56.25%; height:0; overflow:hidden; }
.video-container iframe, .video-container object, .video-container embed { position:absolute; top:0; left:0; width:100%; height:100%; border:0; }

.retorno { margin-top:4px; line-height:1; font-size:12px; color:#F00; display:block; }
.retorno:empty { display:none; }
.sucesso { color:#66b34e !important; font-size:18px !important; display:block; }
.sucesso:empty { display:none; }

.titulo-pagina { margin:0 0 20px; padding:10px; background:#003866; text-align:center; text-transform:uppercase; font-size:20px; color:#FFF; }

/* topo */
#topo { z-index:2; }
#topo .superior { padding:10px 0; }

/* index */
.banner .imagem { position:relative; overflow:hidden; }
.banner .imagem .cycle-slideshow { z-index:1; }
.banner .imagem picture { position:relative; width:100%; height:500px; }
.banner .imagem picture img { position:absolute; width:auto; max-width:900px; height:500px; top:0px; left:50%; margin-left:-450px; }
.banner .imagem picture a { position:absolute; width:100%; height:100%; top:0px; }
.banner .cycle-pager { position:absolute; width:100%; bottom:30px; text-align:center; line-height:1; z-index:2; }
.banner .cycle-pager span { width:18px; height:19px; margin:0px 5px; text-align:left; font-size:0px; border-radius:50px; background-color:#FFF; opacity:0.5; cursor:pointer; vertical-align:top; display:inline-block; }
.banner .cycle-pager span.cycle-pager-active { opacity:1; cursor:default; }

.introducao { padding:20px 0; text-align:center; }
.introducao .central { max-width:850px; }
.introducao p { color:#58595b; }
.introducao h1 { margin:20px 0; font-size:20px; color:#003882; }

.home-icones { padding:20px 0; background:#00a3e0; }
.home-icones .central { max-width:1000px; }
.home-icones .home-icones-slides { text-align:center; }
.home-icones .home-icones-slides .slide { width:100%; }
.home-icones .home-icones-slides .slide div { max-width:450px; margin:0 auto; }
.home-icones .home-icones-slides figure { max-width:140px; margin:15px 3px; vertical-align:top; display:inline-block; }
.home-icones .home-icones-slides figure figcaption { margin-top:25px; font-weight:700; font-size:18px; color:#FFF; }
.home-icones .cycle-pager { width:100%; margin:0; text-align:center; line-height:1; z-index:2; }
.home-icones .cycle-pager span { width:18px; height:19px; margin:0px 5px; text-align:left; font-size:0px; border-radius:50px; background-color:#FFF; opacity:0.5; cursor:pointer; vertical-align:top; display:inline-block; }
.home-icones .cycle-pager span.cycle-pager-active { opacity:1; cursor:default; }

.simulador { padding:20px 0; }
.simulador .formulario { max-width:576px; margin:0 auto; text-align:center; }
.simulador .formulario h1 { font-size:18px; color:#58595b; }
.simulador .formulario p { color:#58595b; }
.simulador .formulario h2 { margin:40px 0 20px; text-transform:uppercase; line-height:1; font-weight:400; font-size:36px; color:#f79432; }
.simulador .formulario h2 strong { font-weight:900; }
#formulario-simulador fieldset { width:100%; padding-bottom:42px; }
#formulario-simulador .campo { margin:0 0 20px; display:block; }
#formulario-simulador .campo > input { width:100%; padding:8px 30px; border:1px solid #00a3e0; border-radius:20px; font-weight:700; font-size:15px; color:#58595b; }
#formulario-simulador .campo > select { width:100%; padding:8px 25px; border:1px solid #00a3e0; border-radius:20px; background:#FFF; font-weight:700; font-size:15px; color:#a5a5a5; }
#formulario-simulador .campo > select.selecionado { color:#58595b; }
#formulario-simulador .campo .rotulo { display:block; }
#formulario-simulador .campo label { width:48%; margin-top:10px; float:left; }
#formulario-simulador .campo label:nth-child(2n+1) { float:right; }
#formulario-simulador .campo label input { vertical-align:middle; display:inline-block; }
#formulario-simulador .campo label span { vertical-align:middle; display:inline-block; }
#formulario-simulador .campo label.radio-casa { cursor:pointer; }
#formulario-simulador .campo label.radio-casa input { display:none; }
#formulario-simulador .campo label.radio-casa input + .ico { width:100px; height:100px; background:url(../img/ico-casa.png) no-repeat center; display:block; }
#formulario-simulador .campo label.radio-casa input:checked + .ico { background-image:url(../img/ico-casa.png); }
#formulario-simulador .campo label.radio-casa input + .ico + span { width:100px; text-align:center; text-transform:uppercase; font-weight:bold; display:block; }
#formulario-simulador .campo label.radio-casa input:checked + .ico + span { color:#f79432; }
#formulario-simulador .campo label.radio-empresa { cursor:pointer; }
#formulario-simulador .campo label.radio-empresa input { display:none; }
#formulario-simulador .campo label.radio-empresa input + .ico { width:100px; height:100px; background:url(../img/ico-empresa.png) no-repeat center; display:block; }
#formulario-simulador .campo label.radio-empresa input:checked + .ico { background-image:url(../img/ico-empresa.png); }
#formulario-simulador .campo label.radio-empresa input + .ico + span { width:100px; text-align:center; text-transform:uppercase; font-weight:bold; display:block; }
#formulario-simulador .campo label.radio-empresa input:checked + .ico + span { color:#f79432; }
#formulario-simulador .enviar-formulario { position:absolute; bottom:0; left:0; right:0; text-align:left; }
#formulario-simulador .enviar-formulario .paginacao-simulacao { height:14px; margin:13px 4px 13px 0; line-height:1; vertical-align:middle; display:inline-block; }
#formulario-simulador .enviar-formulario .paginacao-simulacao span { width:14px; height:14px; margin:0px 8px 0 0; text-align:left; font-size:0px; border-radius:50px; background-color:#ccc; cursor:pointer; vertical-align:top; display:inline-block; }
#formulario-simulador .enviar-formulario .paginacao-simulacao span.cycle-pager-active { background:#00a3e0; cursor:default; }
#formulario-simulador .enviar-formulario .caption-simulacao { font-weight:700; font-size:12px; color:#58595b }
#formulario-simulador .enviar-formulario input { padding:10px 25px; border-radius:25px; background:#00a3e0; text-transform:uppercase; color:#FFF; float:right; transition:0.15s; }
#formulario-simulador .enviar-formulario input:hover { background:#003866; }

.simulador-retorno p { line-height:1.9; }
.simulador-retorno p input { padding:10px 25px; border-radius:25px; background:#f79432; text-transform:uppercase; color:#FFF; }

/* sobre */
.sobre .dir { margin-top:30px; }
.sobre p { margin-bottom:30px; }
.sobre-texto { margin-bottom:20px; }
.diferenciais-texto { padding:20px 0; background:#fef5e8; }
.diferenciais-texto > h2 { margin:0 0 30px; text-transform:uppercase; text-align:center; }
.diferenciais-texto h3 { margin:0 0 20px; font-size:20px; }

/* simulador de economia */
.simulador-de-economia .esq { margin-bottom:20px; }
.simulador-de-economia .dir { margin-bottom:20px; }
.simulador-de-economia h2 { margin:0 0 20px; text-transform:uppercase; line-height:1; font-weight:400; font-size:36px; color:#00a3e0; }
.simulador-de-economia h2 strong { font-weight:800; }
.simulador-de-economia h3 { margin:0 0 20px; text-transform:uppercase; font-size:20px; color:#58595b; }
.simulador-de-economia p { color:#58595b; }

/* como funciona */
.como-funciona { color:#58595b; }
.como-funciona .como-funciona-introducao { max-width:950px; margin-bottom:0; text-align:center; }
.como-funciona .como-funciona-introducao > h2 { text-transform:uppercase; line-height:1; font-size:20px; color:#003767; }
.como-funciona .etapa h3 { margin:0 0 20px; text-transform:uppercase; font-size:25px; color:#00a3e0; }
.como-funciona .etapa-1 { overflow:hidden; }
.como-funciona .etapa-1 figure { max-width:250px; margin:0 0 20px; }
.como-funciona .etapa-2 { margin:40px auto; overflow:hidden; }
.como-funciona .etapa-2 figure { max-width:250px; margin:0 0 20px; }
.como-funciona .etapa-3 { overflow:hidden; }
.como-funciona .etapa-3 figure { max-width:250px; margin:0 0 20px; }

.como-funciona-icones { margin-top:20px; padding-bottom:20px; padding-top:20px; background:#00a3e0; text-align:center; color:#FFF; }
.como-funciona-icones .como-funciona-icones-introducao { max-width:950px; margin-bottom:20px; text-align:center; }
.como-funciona-icones .como-funciona-icones-introducao > h2 { text-transform:uppercase; line-height:1; font-size:20px; color:#003767; }

.como-funciona-icones figure { max-width:225px; margin:0 4% 40px; vertical-align:top; display:inline-block; }
.como-funciona-icones figure figcaption { margin-top:20px; color:#FFF; }
.como-funciona-icones figure figcaption strong { margin-bottom:20px; text-transform:uppercase; font-weight:700; font-size:20px; color:#003767; vertical-align:top; display:inline-block; }
.como-funciona-icones .links { text-align:center; }
.como-funciona-icones .links a { margin:20px 15px 0; padding:10px 25px; border-radius:25px; background:#003866; text-transform:uppercase; text-decoration:none; color:#FFF; vertical-align:top; display:inline-block; }

/* cases */
.cases { padding-bottom:20px; }
.cases h2 { text-transform:uppercase; line-height:1; font-size:20px; color:#00a3e0; }
.cases .cases-introducao { text-align:center; color:#58595b; }
.cases > .central > ul { padding-top:1px; list-style:none; }
.cases > .central > ul::after { content:""; clear:both; }
.cases > .central > ul > li { margin-top:20px; border-radius:8px; box-shadow:0 0 10px 0px rgba(0,0,0,0.3); overflow:hidden; }
.cases > .central > ul > li figure { border-bottom:6px solid #00a3e0; }
.cases > .central > ul > li figure a img { width:100%; transition:0.25s; }
.cases > .central > ul > li:hover figure a img { opacity:0.5; }
.cases > .central > ul > li figure a::after { content:""; position:absolute; width:100%; height:100%; top:0; left:0; background:#003866 no-repeat left bottom; mix-blend-mode:color; transition:0.25s; opacity:0; }
.cases > .central > ul > li:hover figure a::after { opacity:1; }
.cases > .central > ul > li .texto p a { padding:15px 10px; text-decoration:none; color:#000; display:block; }
.cases > .central > ul > li .texto p strong { font-size:17px; color:#444444; }

.cases .cases-detalhes h2 { margin-bottom:20px; }
.cases .cases-detalhes h2 span { padding-bottom:10px; border-bottom:6px solid #00a3e0; display:inline-block; }
.cases .cases-detalhes figure { margin-bottom:20px; border-radius:8px; box-shadow:0 0 10px 0px rgba(0,0,0,0.3); overflow:hidden; }
.cases .cases-detalhes figure img { width:100%; }
.cases .cases-detalhes p { line-height:1.9; color:#444444; }
.cases .cases-detalhes .galeria { margin:10px 0; overflow:hidden; }
.cases .cases-detalhes .galeria a { width:48%; margin:10px 4% 10px 0; display:inline-block; float:left; }
.cases .cases-detalhes .galeria a:nth-child(2n) { margin-right:0; }
.cases .cases-detalhes .voltar { margin-top:20px; float:left; }
.cases .cases-detalhes .voltar a { margin:15px 0; text-transform:uppercase; text-decoration:none; font-weight:bold; font-size:13px; color:#444444; vertical-align:top; display:inline-block; }
.cases .cases-detalhes .orcamento { margin-top:20px; float:right; }
.cases .cases-detalhes .orcamento a { padding:10px 15px; border:3px solid #00a3e0; border-radius:25px; text-transform:uppercase; text-decoration:none; font-weight:700; color:#00a3e0; vertical-align:top; display:inline-block; }

/* duvidas */
.duvidas .central > ul { list-style:none; }
.duvidas .central > ul > li { margin-bottom:35px; padding-bottom:35px; padding-right:10px; border-bottom:1px solid #00a3e0; }
.duvidas .central > ul > li:last-child { margin-bottom:20px; }
.duvidas .central > ul > li > h2 { position:relative; margin:0; padding-right:30px; font-size:18px; color:#003767; cursor:pointer; }
.duvidas .central > ul > li > h2:hover { color:#00a3e0; }
.duvidas .central > ul > li > h2::after { content:''; position:absolute; width:21px; height:12px; top:50%; right:0; margin-top:-6px; background:url(../img/seta-duvida-fechada.png) no-repeat center; }
.duvidas .central > ul > li.aberto > h2 { color:#00a3e0; }
.duvidas .central > ul > li.aberto > h2::after { background-image:url(../img/seta-duvida-aberta.png); }
.duvidas .central > ul > li .texto { margin-top:15px; }

/* contato */
.contato { padding-bottom:20px; }
.contato .formulario-contato h2 { margin-bottom:20px; text-transform:uppercase; line-height:1; font-size:20px; color:#003767; }
.contato .formulario-contato .campo { margin:0 0 12px; display:block; }
.contato .formulario-contato .campo input, .contato .formulario-contato .campo select, .contato .formulario-contato .campo textarea { width:100%; padding:8px 20px; border:1px solid #a6a6a6; border-radius:20px; font-size:13px; color:#58595b; }
.contato .formulario-contato .campo input:focus, .contato .formulario-contato .campo select:focus { border-color:#f79432; }
.contato .formulario-contato .campo select { padding:8px 15px; color:#a5a5a5; }
.contato .formulario-contato .campo select.selecionado { color:#58595b; }
.contato .formulario-contato .campo textarea { height:90px; }
.contato .formulario-contato .campo #estado { width:49%; float:left; }
.contato .formulario-contato .campo #cidade { width:49%; float:right; }
.contato .formulario-contato .enviar-formulario { text-align:right; }
.contato .formulario-contato .enviar-formulario input { padding:10px 25px; border-radius:25px; background:#00a3e0; font-weight:700; font-size:15px; color:#FFF; float:right; transition:0.15s; }
.contato .formulario-contato .enviar-formulario input:hover { background:#003767; }

.contato .unidades { margin-top:20px; }
.contato .unidades figure { margin-bottom:25px; }
.contato .unidades p { margin-bottom:20px; line-height:1.5; }
.contato .unidades p span { min-width:250px; padding-bottom:25px; border-bottom:1px solid #fbe2bf; color:#444444; display:inline-block; }
.contato .unidades p:last-child span { padding-bottom:0; border-bottom:none; }
.contato .unidades p span strong { text-transform:uppercase; font-size:18px; color:#00a3e0; }
.contato .unidades p span a { margin-right:10px; background:no-repeat left center; text-decoration:none; font-weight:bold; color:#444444; vertical-align:top; display:inline-block; }
.contato .unidades p span a.telefone { padding:0 0 0 18px; background-image:url(../img/ico-telefone-unidade.png); }
.contato .unidades p span a.whatsapp { padding:0 0 0 18px; background-image:url(../img/ico-whatsapp-unidade.png); }

/* 404 */
.pagina-404 .central { padding-bottom:20px; }
.pagina-404 .central p { text-align:center; line-height:1.9; font-size:18px; }

/* paginacao */
.paginacao { margin:50px auto 0; padding:0; width:auto; text-align:center; }
.paginacao span { display:inline-block; }
.paginacao ul { display:inline-block; vertical-align:top; margin:0; padding:0; list-style:none; overflow:hidden; }
.paginacao ul li { display:block; margin:0; list-style:none; float:left; }
.paginacao a { display:inline-block; vertical-align:top; margin:0 2px; padding:0; width:45px; height:45px; font-weight:700; font-size:18px; line-height:46px; text-decoration:none; color:#003767; }
.paginacao a:hover { text-decoration:underline; }
.paginacao a.ativo { color:#ffffff; background-color:#003767; }
.paginacao .paginacao-seta-esq { padding:0; width:45px; height:45px; background:#003767 url('../img/seta-esquerda-branca.png') no-repeat center; }
.paginacao .paginacao-seta-dir { padding:0; width:45px; height:45px; background:#003767 url('../img/seta-direita-branca.png') no-repeat center; }
.paginacao .desabilitada { display:none; }

/* rodape */
#rodape .materiais-especiais h1 { margin:0; padding:20px 10px; background:#474747; text-align:center; text-transform:uppercase; font-weight:800; font-size:20px; color:#FFF; }
#rodape .materiais-especiais ul { margin:0; padding:0; list-style:none; overflow:hidden; }
#rodape .materiais-especiais ul li a { padding:20px; background:#CCC no-repeat center; background-size:cover; text-align:right; text-decoration:none; text-transform:uppercase; font-weight:800; font-size:16px; color:#FFF; display:block; justify-content:flex-end; align-items:center; display:flex; transition:background 0.2s; }
#rodape .materiais-especiais ul li:nth-child(2n) a { background-color:#999; text-align:left; justify-content:flex-start; }
#rodape .materiais-especiais ul li a span { width:100%; max-width:525px; padding:20px; border:1px solid #FFF; border-radius:10px; text-align:center; color:#FFF; display:inline-block; }
#rodape .materiais-especiais ul li:last-child:nth-child(2n+1) { width:100%; text-align:center; }
#rodape .materiais-especiais ul li:last-child:nth-child(2n+1) a { justify-content:center; }
#rodape .menu { display:none; }
#rodape .contatos { padding:10px 0; text-align:center; line-height:1; }
#rodape .contatos > span { margin:10px 0; vertical-align:middle; display:inline-block; }
#rodape .contatos > span.email { display:block; }
#rodape .contatos > span.logo { display:none; }
#rodape .contatos > span > a { vertical-align:middle; display:inline-block; }
#rodape .contatos .link-email { padding:4px 0; text-decoration:none; line-height:24px; font-weight:700; font-size:12px; color:#003767; }
#rodape .contatos .link-telefone { margin:0 5px; padding-left:35px; padding-bottom:10px; background:url(../img/ico-telefone.png) no-repeat left bottom; text-decoration:none; font-weight:900; font-size:26px; color:#003767; }
#rodape .contatos .link-telefone span { font-weight:700; font-size:20px; }
#rodape .contatos .link-whatsapp { margin:2px 5px; }
#rodape .contatos .link-facebook { margin:2px 5px; }
#rodape .autores { padding-bottom:10px; text-align:right; }
#rodape .autores .woop { display:inline-block; vertical-align:top; margin:0 auto; color:#a5a5a5; }
#rodape .autores .woop:after { content:'+'; vertical-align:top; display:inline-block; margin:0 6px 0 10px; line-height:15px; font-weight:bold; }
#rodape .autores .dataprisma { display:inline-block; vertical-align:top; margin:0 auto; }