@font-face {
    font-family: 'Axiforma';
    src: url('fontes/subset-Axiforma-Thin.eot');
    src: url('fontes/subset-Axiforma-Thin.eot?#iefix') format('embedded-opentype'),
         url('fontes/subset-Axiforma-Thin.woff2') format('woff2'),
         url('fontes/subset-Axiforma-Thin.woff') format('woff'),
         url('fontes/subset-Axiforma-Thin.ttf') format('truetype'),
         url('fontes/subset-Axiforma-Thin.svg#Axiforma-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Axiforma';
    src: url('fontes/subset-Axiforma-Light.eot');
    src: url('fontes/subset-Axiforma-Light.eot?#iefix') format('embedded-opentype'),
         url('fontes/subset-Axiforma-Light.woff2') format('woff2'),
         url('fontes/subset-Axiforma-Light.woff') format('woff'),
         url('fontes/subset-Axiforma-Light.ttf') format('truetype'),
         url('fontes/subset-Axiforma-Light.svg#Axiforma-Light') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Axiforma';
    src: url('fontes/subset-Axiforma-Regular.eot');
    src: url('fontes/subset-Axiforma-Regular.eot?#iefix') format('embedded-opentype'),
         url('fontes/subset-Axiforma-Regular.woff2') format('woff2'),
         url('fontes/subset-Axiforma-Regular.woff') format('woff'),
         url('fontes/subset-Axiforma-Regular.ttf') format('truetype'),
         url('fontes/subset-Axiforma-Regular.svg#Axiforma-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Axiforma';
    src: url('fontes/subset-Axiforma-SemiBold.eot');
    src: url('fontes/subset-Axiforma-SemiBold.eot?#iefix') format('embedded-opentype'),
         url('fontes/subset-Axiforma-SemiBold.woff2') format('woff2'),
         url('fontes/subset-Axiforma-SemiBold.woff') format('woff'),
         url('fontes/subset-Axiforma-SemiBold.ttf') format('truetype'),
         url('fontes/subset-Axiforma-SemiBold.svg#Axiforma-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Axiforma';
    src: url('fontes/subset-Axiforma-Black.eot');
    src: url('fontes/subset-Axiforma-Black.eot?#iefix') format('embedded-opentype'),
         url('fontes/subset-Axiforma-Black.woff2') format('woff2'),
         url('fontes/subset-Axiforma-Black.woff') format('woff'),
         url('fontes/subset-Axiforma-Black.ttf') format('truetype'),
         url('fontes/subset-Axiforma-Black.svg#Axiforma-Black') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* reset css */
* { box-sizing: border-box; }
html { 
    --cor-primaria: #ffffff; /* branco */
    --cor-secundaria: #4c4c4c; /* cinza medio */
    --cor-terciaria: #1eabf9; /* azul claro */
    --cor-fundo: #1e1e1b; /* cinza escuro */
    --cor-fundo-claro: #e2e2e2; /* cinza claro */
    --gap-lista: 15px;
    --column-count-lista: 1;

    /*
    lilas escuro #4a007f
    azul escuro #002638
    azul escuro do meio #0E1094
    azul super claro #03F7F8
    */

}

html, body { margin: 0px; padding: 0px; font: 300 15px/1.6 'Axiforma', sans-serif; text-size-adjust: none; color: var(--cor-primaria); background: url('../img/fundo-degrade.webp') top left repeat-y; background-size: 100%; }
header, main, section, div, article, aside, form, fieldset, footer { display: block; margin: 0px; padding: 0px; border: none; }
h1, h2, h3, h4, h5, h6, p { margin: 0px; padding: 0px; letter-spacing: 0.3px;}
ul, ol { margin: 0px 0px 0px 17px; padding: 0px; list-style-position: outside; }
img, figure, iframe, embed, object, video { display: block; margin: 0px; padding: 0px; max-width: 100%; border: none; }
input[type="submit"], [type="button"], input[type="file"] { cursor: pointer; }
input, button, select, option, optgroup, textarea { display: block; margin: 0px; padding: 0px; font: 300 15px/1 'Axiforma', sans-serif; text-size-adjust: none; color: var(--cor-primaria); outline: none; border: none; }
input:focus::placeholder { opacity: 0 !important; }
textarea:focus::placeholder { opacity: 0 !important; }
::placeholder { opacity: 1 !important; color: var(--cor-secundaria) !important; }
img { height: auto; }
a { text-decoration: none; color: var(--cor-primaria); }
a:hover { text-decoration: underline; }
strong { font-weight: 900; }

/* geral */
.fancybox-container * { position: static; }
.fancybox-button { color: var(--cor-terciaria) !important; background-color: var(--cor-fundo) !important; }
.esconde-paragrafo-vazio { display: none; }
.cycle-slideshow { z-index: 1; }
.central { margin: 0px auto; padding: 0px 20px; width: 100%; max-width: 1200px; }
.clear { clear: both; }

.editor {
    --ck-image-style-spacing: 1.5em;

    & .image {
        margin-left: auto; margin-right: auto; text-align: center;
        &.image-style-block-align-left, &.image-style-block-align-right { max-width: calc(100% - var(--ck-image-style-spacing)); }
        &.image-style-align-left, &.image-style-align-right { clear: none; }
        &.image-style-side { margin-left: var(--ck-image-style-spacing); max-width: 50%; float: right; }
        &.image-style-align-left { margin-right: var(--ck-image-style-spacing); float: left; }
        &.image-style-align-right { margin-left: var(--ck-image-style-spacing); float: right; }
        &.image-style-block-align-right { margin-left: auto; margin-right: 0px; text-align: right; }
        &.image-style-block-align-left { margin-left: 0px; margin-right: auto; text-align: left; }
    }

    & .image-style-align-center { margin-left: auto; margin-right: auto; text-align: center; }
    & .image-style-align-left { margin-right: var(--ck-image-style-spacing); text-align: left; float: left; }
    & .image-style-align-right { margin-left: var(--ck-image-style-spacing); text-align: right; float: right; }

    & p + .image.image-style-align-left, & p + .image.image-style-align-right, & p + .image.image-style-side { margin-top: 0px; }

    & .image-inline {
        &.image-style-align-left, &.image-style-align-right { margin-top: var(--ck-inline-image-style-spacing); margin-bottom: var(--ck-inline-image-style-spacing); }
        &.image-style-align-left { margin-right: var(--ck-inline-image-style-spacing); }
        &.image-style-align-right { margin-left: var(--ck-inline-image-style-spacing); }
    }
}
.editor * { margin: 0px !important; padding-inline-start: 0px !important; font-family: 'Axiforma', sans-serif !important; font-size: 15px !important; line-height: 1.6 !important; }
.editor > * { padding-top: 20px; }
.editor > :first-child { margin-top: 0px !important; padding-top: 0px !important; }
.editor :is(h1, h2, h3, h4, h5, h6),
.editor :is(h1, h2, h3, h4, h5, h6) * { font-size: 17px !important; line-height: 1.3 !important; font-weight: 600 !important; }
.editor table { margin-top: 20px !important; padding-top: 0px !important; }
.editor time { display: block; }
.editor a { text-decoration: underline; }
.editor ul { margin-left: 17px !important; }
.editor ul li + li { padding-top: 5px; }
.editor img { display: inline-block !important; vertical-align: top !important; max-width: 100%; }
.editor blockquote { margin-top: 20px !important; padding: 0px 0px 0px 10px !important; font-style: italic; color: inherit; border-left: 3px solid var(--cor-primaria); }
.editor hr { display: block; margin-top: 20px !important; padding-top: 0px !important; height: 1px; border: 0px; background-color: var(--cor-primaria); }
.editor .table {
    display: table;

    & table {
        width: 100%; height: 100%; border: 1px double hsl(0, 0%, 70%); border-collapse: collapse; border-spacing: 0px;
        & td, & th { padding: .4em; min-width: 2em; border: 1px solid hsl(0, 0%, 75%); }
        & th { font-weight: 700; background: hsla(0, 0%, 0%, 5%); }
    }
}

.titulo { text-align: center; }
.titulo h1,
.titulo h2 { font-size: 26px; line-height: 1.3; font-weight: 600; }

.botao a { display: inline-block; vertical-align: middle; padding: 10px 15px; font-size: 14px; line-height: 1; font-weight: 600; text-decoration: none; border-radius: 20px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); overflow: hidden; transform: scale(1); transition: all .30s linear; }
.botao a:hover { transform: scale(1.05); transition: all .30s linear; }
.botao p { padding: 10px 15px; font-size: 14px; line-height: 1; font-weight: 600; text-decoration: none; border-radius: 20px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); overflow: hidden; }

.lista { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; gap: var(--gap-lista); }
.lista .bloco { flex: none; width: calc((100% - (var(--gap-lista) * (var(--column-count-lista) - 1))) / var(--column-count-lista)); }

main { padding-top: 105px; overflow: hidden; }

/* internas */
.internas main > section { padding: 30px 0px; }
.internas .conteudo-internas { margin-top: 30px; }

/* abre menu sanduiche */
.sanduiche-aberto header .menu .desktop { display: flex; flex-wrap: wrap; align-items: center; flex-direction: column; justify-content: center; overflow-x: hidden; overflow-y: auto; transform: translateY(0px); transition: all .30s linear; z-index: 2; }
.sanduiche-aberto { overflow: hidden; }

/* validacao formulario */
.sucesso { font-weight: 700; color: #66b34e; }
.retorno { margin-top: 10px; padding: 0px 15px; font-weight: 700; color: #cc0000; }
.retorno.erro { color: #cc0000 !important; }
.retorno.sucesso { color: #66b34e !important; }
.retorno:empty { display: none !important; }
.erro:focus { color: #cc0000 !important; border: 1px solid #cc0000 !important; }

/* formulario */
.formulario form .duas-colunas { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; }
.formulario form .duas-colunas > div { flex: auto; width: 100%; }
.formulario form .duas-colunas + .duas-colunas { margin-top: 15px; }
.formulario form .duas-colunas + .campo { margin-top: 15px; }
.formulario form .campo { position: relative; }
.formulario form .campo input[type="text"] { padding: 0px 26px 0px 40px; width: 100%; height: 40px; line-height: 1; color: var(--cor-secundaria); border: 1px solid #1badf9; border-radius: 20px; overflow: hidden; }
.formulario form .campo input[type="text"]:focus { padding-left: 10px; color: #8e3cec; border-color: #8e3cec; background-color: var(--cor-primaria); }
.formulario form .campo textarea { padding: 12px 26px 12px 40px; width: 100%; height: 100px; color: var(--cor-secundaria); border: 1px solid #1badf9; border-radius: 20px; resize: vertical; overflow: hidden; }
.formulario form .campo textarea:focus { padding-left: 10px; color: #8e3cec; border-color: #8e3cec; background-color: var(--cor-primaria); }
.formulario form .campo label { display: block; padding: 0px 15px 5px 15px; font-size: 12px; line-height: 18px; font-weight: 400; color: #1badf9; }
.formulario form .campo label a { color: #1badf9; }
.formulario form .campo + .campo { margin-top: 5px; }
.formulario form .campo + .duas-colunas { margin-top: 15px; }
.formulario form .campo #nome-contato { background: url('../img/form-01-nome.svg') center left 10px no-repeat; background-size: 20px; }
.formulario form .campo #nome-contato:focus { background: none; }
.formulario form .campo #empresa-contato { background: url('../img/form-02-empresa.svg') center left 10px no-repeat; background-size: 20px; }
.formulario form .campo #empresa-contato:focus { background: none; }
.formulario form .campo #email-contato { background: url('../img/form-03-email.svg') center left 10px no-repeat; background-size: 20px; }
.formulario form .campo #email-contato:focus { background: none; }
.formulario form .campo #telefone-contato { background: url('../img/form-04-fone.svg') center left 10px no-repeat; background-size: 20px; }
.formulario form .campo #telefone-contato:focus { background: none; }
.formulario form .campo #mensagem-contato { background: url('../img/form-05-mensagem.svg') top 15px left 10px no-repeat; background-size: 20px; }
.formulario form .campo #mensagem-contato:focus { background: none; }
.formulario form .campo.obrigatorio:before { display: none; content: ''; position: absolute; top: 32px; right: 10px; width: 6px; height: 6px; border-radius: 50%; background-color: #cc0000; }
.formulario form .campo.concordo { margin-top: 13px; }
.formulario form .campo.concordo input[type="checkbox"] { display: none; }
.formulario form .campo.concordo input[type="checkbox"] + label { position: relative; padding: 0px 0px 0px 30px; }
.formulario form .campo.concordo input[type="checkbox"] + label a { text-decoration: underline; }
.formulario form .campo.concordo input[type="checkbox"] + label:before { content: '\00a0'; position: absolute; display: block; top: 0px; left: 0px; width: 15px; height: 15px; border: 1px solid #1badf9; border-radius: 5px; cursor: pointer; overflow: hidden; }
.formulario form .campo.concordo input[type="checkbox"]:checked + label:before { content: '\2713'; line-height: 15px; font-weight: 700; text-align: center; color: var(--cor-primaria); border-color: var(--cor-terciaria); background-color: var(--cor-terciaria); }
.formulario form .campo.enviar { margin-top: 15px; text-align: center; }
.formulario form .campo.enviar input[type="submit"] { display: inline-block; vertical-align: middle;padding: 10px 15px; font-size: 14px; line-height: 1; font-weight: 600; text-decoration: none; border-radius: 20px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); overflow: hidden; transform: scale(1); transition: all .30s linear; }
.formulario form .campo.enviar input[type="submit"]:hover { transform: scale(1.05); transition: all .30s linear; }
.formulario form.loading .campo.enviar button { width: 20px; height: 20px; margin: 0px auto; font-size: 0px; background: url('../img/loading.gif') no-repeat center; }

/* topo */
header { position: fixed; top: 0px; left: 0px; width: 100%; background: url('../img/fundo-degrade.webp') top left repeat-y; background-size: 100%; z-index: 3; transition: all .30s linear; }
header .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 20px 0px; transition: all .30s linear; }
header .container > div { flex: 1; }
header .logo { margin: 0px auto; width: 100%; max-width: 192px; transition: all .30s linear; }
header .logo figure img { width: 100%; }
header .menu { width: 100%; max-width: 38px; }
header .menu .mobile { position: fixed; top: 41px; right: 10px; z-index: 3; transition: all .30s linear; }
header .menu .mobile .mais { display: block; position: relative; width: 38px; height: 24px; cursor: pointer; }
header .menu .mobile .mais span { display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 4px; background-color: var(--cor-primaria); opacity: 1; transition: all .30s linear; }
header .menu .mobile .mais.fechado span:nth-child(1) { transform: rotate(0deg); }
header .menu .mobile .mais.fechado span:nth-child(2) { top: 10px; }
header .menu .mobile .mais.fechado span:nth-child(3) { top: 20px; transform: rotate(0deg); }
header .menu .mobile .mais.aberto { height: 29px; }
header .menu .mobile .mais.aberto span { background-color: var(--cor-primaria); }
header .menu .mobile .mais.aberto span:nth-child(1) { top: -1px; left: auto; right: 6px; transform: rotate(-45deg); transform-origin: right center; }
header .menu .mobile .mais.aberto span:nth-child(2) { display: none; }
header .menu .mobile .mais.aberto span:nth-child(3) { top: 26px; left: auto; right: 6px; transform: rotate(45deg); transform-origin: right center; }
header .menu .desktop { position: fixed; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 25px; top: 0px; right: 0px; padding: 0px 20px; width: 100%; height: 100vh; transform: translateY(-100%); background-color: var(--cor-fundo); overflow: auto; transition: all .30s linear; }
header .menu .desktop nav { flex: none; width: 100%; display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; gap: 25px; text-align: center; }
header .menu .desktop nav a { flex: none; width: 100%; display: block; font-weight: 400; white-space: nowrap; text-decoration: none; color: var(--cor-primaria); }
header .menu .desktop nav a span { display: inline-block; vertical-align: middle; width: 200px; padding: 3px 0px; border: 1px solid transparent; border-radius: 20px; background: linear-gradient(var(--cor-fundo),var(--cor-fundo)) padding-box,  linear-gradient(to right, #1eabf9, #8e3cec) border-box; background-clip: padding-box, border-box; }
header .menu .desktop nav a:hover,
header .menu .desktop nav .ativo { color: var(--cor-terciaria); }
header .menu .desktop nav .ativo { font-weight: 600; }

/* topo reduzido */
header.topo-reduzido .container { padding: 10px 0px; transition: all .30s linear; }
header.topo-reduzido .logo { max-width: 170px; transition: all .30s linear; }
header.topo-reduzido .menu .mobile { top: 27px; transition: all .30s linear; }

/* index */
#slides { position: relative; z-index: 2; }
#slides .central { max-width: 330px; }
#slides .conteudo { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; text-align: center; }
#slides .conteudo > div { flex: none; width: 100%; }
#slides .conteudo .texto { order: 2; }
#slides .conteudo .texto h1 { font-size: 24px; line-height: 1.3; font-weight: 600; }
#slides .conteudo .texto p { font-size: 19px; line-height: 1.3; font-weight: 600; }
#slides .conteudo .texto .botao { margin-top: 20px; }
#slides .conteudo .imagem { order: 1; }
#slides .conteudo .imagem figure img { width: 100%; }
#slides .paginacao-slides { position: absolute; bottom: -50px; left: 0px; right: 0px; margin: 0px auto; padding: 0px 10px; width: 100%; max-width: 1280px; height: 13px; text-align: center; z-index: 2; }
#slides .paginacao-slides span { display: inline-block; vertical-align: top; margin: 0px 5px; width: 13px; height: 13px; font-size: 0px; border-radius: 50%; background-color: var(--cor-primaria); cursor: pointer; overflow: hidden; }
#slides .paginacao-slides span.cycle-pager-active { background-color: var(--cor-terciaria); cursor: default; }

#gestao { margin-top: 5%; padding-bottom: 65px; }
#gestao .fundo-brilho { position: relative; z-index: 1; }
#gestao .fundo-brilho:before { content: ''; display: block; position: absolute; top: 80%; right: 0px; width: 107px; height: 213px; background: url('../img/detalhe-direita.png') top right no-repeat; background-size: 107px 213px; }
#gestao .fundo-brilho figure img { width: 100%; }
#gestao .container { position: relative; margin-top: -7.5%; z-index: 2; }
#gestao .chamada { margin: 0px auto; width: 100%; max-width: 850px; text-align: center; }
#gestao .chamada h2 { margin: 0px auto; padding: 0px 15px 20px 15px; width: 100%; max-width: 550px; font-size: 24px; line-height: 1.3; font-weight: 600; }
#gestao .lista { align-items: stretch; --gap-lista: 55px; --column-count-lista: 1; margin-top: 55px; }
#gestao .lista .bloco { padding: 15px; border: 1px solid var(--cor-terciaria); border-radius: 20px; }
#gestao .lista .bloco .item { text-align: center; }
#gestao .lista .bloco .item figure { margin: -50px auto 0px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 85px; height: 45px; background-color: var(--cor-fundo); }
#gestao .lista .bloco .item figure img { margin: 0px auto; max-width: 45px; max-height: 45px; object-fit: contain; }
#gestao .lista .bloco .item h3 { padding: 20px 0px 10px; font-size: 19px; line-height: 1.4; font-weight: 600; color: var(--cor-terciaria); }

#desafios { position: relative; padding: 70px 0px 50px; color: #000000; background-color: var(--cor-primaria); }
#desafios a { color: #000000; }
#desafios .central { max-width: 1200px; }
#desafios:before { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 30px; background: #002638; background: linear-gradient(90deg, rgba(0, 38, 56, 1) 0%, rgba(14, 16, 148, 1) 50%, rgba(74, 0, 127, 1) 100%); }
#desafios .titulo h2 { display: inline-block; vertical-align: top; background-image: linear-gradient(to right, #1eabf9, #8e3cec); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
#desafios .lista { position: relative; margin-top: 40px; --gap-lista: 25px; --column-count-lista: 1; z-index: 2; }
#desafios .lista .bloco { position: relative; padding: 20px; border: 1px solid var(--cor-primaria); border-radius: 10px; background-color: #ececec; }
#desafios .lista .bloco:before { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; border-radius: 10px; box-shadow: 7px 14px 14px -7px rgba(30,30,27,0.7); z-index: 1; }
#desafios .lista .bloco:after { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; border-radius: 10px; box-shadow: -7px -14px 14px -7px rgba(255,255,255,0.7); }
#desafios .lista .bloco .item { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; flex-direction: column; padding: 20px; border-radius: 10px; overflow: hidden; }
#desafios .lista .bloco .item figure { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; height: 35px; }
#desafios .lista .bloco .item figure img { margin: 0px auto; max-width: 35px; max-height: 35px; object-fit: contain; }
#desafios .lista .bloco .item h3 { font-size: 14px; line-height: 1.3; font-weight: 600; }
#desafios .lista .bloco .item .sobreposicao { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 20px; }
#desafios .lista .bloco .item .sobreposicao figure { flex: none; }
#desafios .lista .bloco .item .sobreposicao h3 { flex: 1; }
#desafios .lista .bloco:nth-child(odd) .item { color: var(--cor-primaria); box-shadow: -7px -14px 14px -7px rgba(255,255,255,1); background: #03f7f8; background: linear-gradient(45deg,rgba(3, 247, 248, 1) 0%, rgba(142, 60, 236, 1) 90%); }
#desafios .lista .bloco:nth-child(odd) .item a { color: var(--cor-primaria); }
#desafios .lista .bloco:nth-child(even) .item { position: relative; padding: 2px; background: #03f7f8; background: linear-gradient(90deg,rgba(3, 247, 248, 1) 0%, rgba(142, 60, 236, 1) 90%); }
#desafios .lista .bloco:nth-child(even) .item:before { content: ''; display: block; position: absolute; top: 2px; left: 2px; width: calc(100% - 4px); height: calc(100% - 4px); border-radius: 10px; background-color: #ececec; overflow: hidden; }
#desafios .lista .bloco:nth-child(even) .item .sobreposicao { position: relative; padding: 20px; z-index: 2; }
#desafios .lista .bloco:nth-child(even) .item h3 { color: #4a007f; }

#solucoes { position: relative; padding: 30px 0px 135px; color: var(--cor-fundo-claro); background-color: var(--cor-secundaria); z-index: 1; }
#solucoes:before { content: ''; display: block; position: absolute; top: 13%; left: 0px; width: 107px; height: 213px; background: url('../img/detalhe-esquerda.png') top left no-repeat; background-size: 107px 213px; }
#solucoes:after { content: ''; display: block; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 5px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); }
#solucoes a { color: var(--cor-fundo-claro); }
#solucoes .central { max-width: 1200px; }
#solucoes .lista { --gap-lista: 30px; --column-count-lista: 1; margin-top: 30px; }
#solucoes .lista .bloco { padding: 20px 20px 10px 60px; border-radius: 10px; background-color: #666666; }
#solucoes .lista .bloco h3 { font-size: 17px; line-height: 1; font-weight: 600; }
#solucoes .lista .bloco h3 img { object-fit: cover; width: 28px; }
#solucoes .lista .bloco h3 img.gestao-de-projetos { margin-top: 4px; }
#solucoes .lista .bloco h3 span { margin: 0px 7px 0px -50px; width: 43px; height: 43px; display: inline-block; vertical-align: middle; padding: 10px; border-radius: 50%; background-color: #b327f8; }
#solucoes .lista .bloco p { padding: 5px 0px 15px; }

#imagem-solucao { margin-top: -105px; color: var(--cor-secundaria); background: var(--cor-primaria); }
#imagem-solucao .central { max-width: 950px; }
#imagem-solucao .imagem { position: relative; z-index: 2; }

#beneficios { padding: 30px 0px; color: var(--cor-secundaria); background: var(--cor-primaria); overflow: hidden; }
#beneficios .central { max-width: 1200px; border-top: 1px solid var(--cor-fundo-claro); }
#beneficios .titulo { margin-top: 20px; }
#beneficios .lista { align-items: flex-end; --gap-lista: 20px; margin: 30px auto 0px; width: 100%; max-width: 375px; --column-count-lista: 1; }
#beneficios .lista .bloco { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 20px; }
#beneficios .lista .bloco .item { flex: none; width: 100%; position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; flex-direction: column; padding: 30px 20px 20px 20px; text-align: center; color: #000000; border: 1px solid #bf79f4; border-radius: 20px; overflow: hidden; }
#beneficios .lista .bloco .item a { color: #000000; }
#beneficios .lista .bloco .item > figure { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; height: 35px; }
#beneficios .lista .bloco .item > figure img { margin: 0px auto; max-width: 35px; max-height: 35px; object-fit: contain; }
#beneficios .lista .bloco .item.notebook { margin-top: 160px; padding-top: 90px; overflow: visible; }
#beneficios .lista .bloco .item.notebook .imagem { position: absolute; top: -160px; left: -10px; right: 0px; margin: 0px auto; width: 320px; height: 250px; }
#beneficios .lista .bloco .item.notebook .imagem figure img { width: 100%; }
#beneficios .lista .bloco .item h3 { padding-top: 20px; font-size: 14px; line-height: 1.3; font-weight: 600; }

#por-que-escolher { padding-top: 30px; }
#por-que-escolher .central { max-width: 1080px; }
#por-que-escolher .container { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; gap: 20px; margin-top: 64px; }
#por-que-escolher .container .bloco { flex: none; width: 100%; }
#por-que-escolher .container .bloco .item { position: relative; padding: 20px; text-align: center; border-radius: 20px; border: 1px solid #49587b; background: #3c4667; background: linear-gradient(90deg, rgba(60, 70, 103, 1) 0%, rgba(60, 70, 103, 1) 50%, rgba(0, 38, 56, 1) 100%); }
#por-que-escolher .container .bloco .item.expertise:before { content: ''; position: absolute; top: -34px; left: 0px; width: 100%; height: 34px; background: url('../img/expertise-topo.svg') top center no-repeat; background-size: 209px 34px; }
#por-que-escolher .container .bloco .item.indicadores { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 20px; margin-top: 40px; padding: 10px 15px 10px 25px; text-align: left; }
#por-que-escolher .container .bloco .item.indicadores h3 { flex: 1; font-size: 15px; }
#por-que-escolher .container .bloco .item.indicadores .imagem { flex: 1.6; margin: -50px 0px 0px 0px; }
#por-que-escolher .container .bloco .item > figure { margin-bottom: 20px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; height: 35px; }
#por-que-escolher .container .bloco .item > figure img { margin: 0px auto; max-width: 35px; max-height: 35px; object-fit: contain; }
#por-que-escolher .container .bloco .item .imagem { margin: 6px 0px 30px; }
#por-que-escolher .container .bloco .item .imagem figure img { margin: 0px auto; width: 100%; max-width: 200px; }
#por-que-escolher .container .bloco .item h3 { font-size: 14px; line-height: 1.3; font-weight: 600; }
#por-que-escolher .container .bloco .item .botao { text-align: center; }
#por-que-escolher .container .bloco .item .botao p img { display: inline-block; vertical-align: middle; margin-right: 5px; max-width: 20px; max-height: 20px; object-fit: contain; }
#por-que-escolher .container .bloco .item .botao + .botao { margin-top: 20px; }
#por-que-escolher .container .bloco .conteudo { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; gap: var(--gap-lista); --gap-lista: 20px; --column-count-lista: 1; }
#por-que-escolher .container .bloco .conteudo .item { flex: none; width: calc((100% - (var(--gap-lista) * (var(--column-count-lista) - 1))) / var(--column-count-lista)); }
#por-que-escolher .container .bloco .conteudo .item:first-child .botao p { padding: 7px 15px; }

#quem-somos { padding-bottom: 30px; }
#quem-somos .fundo-brilho figure img { width: 100%; }
#quem-somos .conteudo { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 30px; margin-top: 30px; }
#quem-somos .conteudo > div { flex: none; width: 100%; }
#quem-somos .imagem figure { border-radius: 20px; overflow: hidden; }
#quem-somos .imagem figure img { width: 100%; }

#clientes { position: relative; padding: 40px 0px 30px; color: var(--cor-secundaria); background-color: var(--cor-primaria); }
#clientes:before { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 5px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); }
#clientes a { color: var(--cor-secundaria); }
#clientes .central { max-width: 1200px; }
#clientes .lista-clientes { margin-top: 30px; padding-bottom: 30px; font-size: 0px; text-align: center; border-bottom: 1px solid var(--cor-fundo-claro);}
#clientes .lista-clientes .bloco { display: inline-block; vertical-align: middle; margin: 0px 20px; }
#clientes .lista-clientes .bloco figure { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; height: 70px; }
#clientes .lista-clientes .bloco figure img { margin: 0px auto; max-width: 100px; max-height: 70px; object-fit: contain; }
#clientes .depoimentos { margin: 30px auto 0px; max-width: 100%; max-width: 950px; }
#clientes .depoimentos .owl-carousel { padding-top:30px }
#clientes .depoimentos .owl-carousel .owl-item { padding-top: 20px; }
#clientes .depoimentos .owl-carousel .bloco { position: relative; padding: 60px 30px 30px 30px; text-align: center; color: #000000; border: 1px solid var(--cor-fundo-claro); border-radius: 20px; }
#clientes .depoimentos .owl-carousel .bloco:before { content: ''; position: absolute; top: -20px; left: 0px; width: 100%; height: 40px; background: url('../img/depoimento-icone.svg') top center no-repeat; background-size: 66px 40px; }
#clientes .depoimentos .owl-carousel .bloco a { font-weight: 600; color: #000000; }
#clientes .depoimentos .owl-carousel .bloco h3 { padding-bottom: 20px; font-size: 17px; line-height: 1.3; font-weight: 600; text-transform: uppercase; }
#clientes .depoimentos .owl-carousel .owl-dots { margin-top: 30px; text-align: center; }
#clientes .depoimentos .owl-carousel .owl-dots .owl-dot { display: inline-block; vertical-align: middle; margin: 0px 10px; width: 12px; height: 12px; border-radius: 50%; background-color: var(--cor-terciaria); }
#clientes .depoimentos .owl-carousel .owl-dots .owl-dot.active { width: 35px; border-radius: 10px; }

#contato { padding: 30px 0px 50px; background: #1badf9; background: linear-gradient(90deg, rgba(27, 173, 249, 1) 0%, rgba(142, 60, 236, 1) 90%); }
#contato .central { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; gap: 30px; }
#contato .central > div { flex: none; width: 100%; }
#contato .informacoes { padding: 0px 30px; }
#contato .informacoes > div { min-height: 20px; }
#contato .informacoes > div p { padding: 0px 0px 5px 30px; font-size: 18px; font-weight: 400; }
#contato .informacoes > div a { display: block; padding-left: 30px; font-size: 14px; line-height: 20px; font-weight: 400; }
#contato .informacoes > div + div { margin-top: 25px; }
#contato .informacoes .whatsapp { background: url('../img/ico-whatsapp.svg') center left no-repeat; background-size: 20px; }
#contato .informacoes .email { background: url('../img/ico-email.svg') center left no-repeat; background-size: 20px; }
#contato .informacoes .site { background: url('../img/ico-site.svg') center left no-repeat; background-size: 20px; }
#contato .formulario { border-radius: 20px; background-color: var(--cor-primaria); box-shadow: 5px 5px 10px 0px rgba(76,76,76,1); overflow: hidden; }
#contato .formulario .titulo { padding: 30px 25px 0px 25px; }
#contato .formulario .titulo h2 { display: inline-block; vertical-align: top; background-image: linear-gradient(to right, #1eabf9, #8e3cec); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
#contato .formulario form { padding: 30px; }

/* erro 404 */
#erro-404 .texto { text-align: center; }

/* rodape */
footer { padding: 30px 0px; }
footer .lista-rodape { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 40px; }
footer .lista-rodape .bloco { flex: 1; width: 50%; }
footer .lista-rodape .bloco a { white-space: nowrap; font-size: 14px; font-weight: 400; }
footer .lista-rodape .bloco.logo figure figcaption { margin: 0px auto; padding-bottom: 10px; width: 100%; max-width: 120px; text-align: center; font-size: 13px; line-height: 1.3; }
footer .lista-rodape .bloco.logo figure img { margin: 0px auto; width: 100%; max-width: 120px; }
footer .lista-rodape .bloco.infos { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; }
footer .lista-rodape .bloco.infos > div { flex: none; width: auto; }
footer .lista-rodape .bloco.infos > div + div { margin-top: 10px; }
footer .lista-rodape .bloco.infos .site { width: 20px; height: 20px; background: url('../img/ico-site.svg') center left no-repeat; background-size: 20px; }
footer .lista-rodape .bloco.infos .site a { display: none; }
footer .lista-rodape .bloco.infos .instagram { margin: 0px 0px 0px 20px; width: 20px; height: 20px; background: url('../img/ico-instagram.svg') center left no-repeat; background-size: 20px; }
footer .lista-rodape .bloco.infos .instagram a { display: none; }
footer .lista-rodape .bloco.infos .email { width: 100%; }
footer .lista-rodape .bloco.infos .email a + a { display: block; margin-top: 10px; }
footer .lista-rodape .bloco.infos .whatsapp { display: block; width: 100%; }
footer .copyright { margin-top: 30px; }
footer .copyright .texto { font-size: 12px; }
footer .whatsapp-fixo { position: fixed; bottom: 20px; right: 20px; z-index: 999; }
footer .whatsapp-fixo figure img { width: 40px; }

@media screen and (min-width:380px){

    /* geral */
    .central.com-padding-maior { padding: 0px 40px; }

    .com-padding { padding: 0px 25px; }

    .com-padding-texto { padding: 0px 10px; }

    /* index */
    #gestao .lista .bloco { padding: 20px; }

    #beneficios { padding-bottom: 150px; }
    #beneficios .lista { justify-content: flex-start; }
    #beneficios .lista .bloco:last-child { width: 95%; max-width: 285px; }
    #beneficios .lista .bloco:last-child .item { padding: 30px 30px 20px 30px; align-items: flex-start; }
    #beneficios .lista .bloco .item { flex: 1; }
    #beneficios .lista .bloco .item.notebook { margin-top: 0px; padding-top: 0px; overflow: visible; }
    #beneficios .lista .bloco .item.notebook .imagem { top: -40px; right: -180px; }

    #por-que-escolher .container .bloco .item.indicadores h3 { font-size: 18px; }

}

@media screen and (min-width:440px){

    /* geral */
    .central.com-padding-maior { padding: 0px 60px; }

    .com-padding { padding: 0px 40px; }

    .titulo h1,
    .titulo h2 { font-size: 28px; }

    /* index */
    #gestao .lista .bloco { padding: 25px; }

    #beneficios .lista .bloco:last-child { max-width: 300px; }
    #beneficios .lista .bloco .item.notebook .imagem { right: -190px; }

}