:root {
    --fundo: #07101f;
    --fundo-claro: #0d1829;
    --painel: #111f33;
    --painel-claro: #16263c;
    --texto: #f5f8ff;
    --texto-suave: #9eabc0;
    --primaria: #6d5dfc;
    --primaria-clara: #8b7fff;
    --ciano: #2ed6c5;
    --verde: #31c784;
    --vermelho: #ef5b69;
    --amarelo: #f5c451;
    --borda: rgba(255,255,255,.1);
    --sombra: 0 30px 80px rgba(0,0,0,.25);
    --raio: 20px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-height: 100vh;
    font-family:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
    background: var(--fundo);
    color: var(--texto);
}

button,
input,
select {
    font: inherit;
}

a {
    color: inherit;
    text-decoration: none;
}

.container {
    width: min(1160px, calc(100% - 40px));
    margin: 0 auto;
}

.topo {
    position: sticky;
    z-index: 50;
    top: 0;
    border-bottom: 1px solid var(--borda);
    background: rgba(7,16,31,.88);
    backdrop-filter: blur(18px);
}

.topo-conteudo {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.logo {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    font-size: 1.16rem;
    font-weight: 800;
    letter-spacing: -.03em;
}

.logo > span:last-child > span {
    color: var(--ciano);
}

.logo-icone {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background:
        linear-gradient(
            135deg,
            var(--primaria),
            var(--ciano)
        );
    color: white;
    font-size: .78rem;
    box-shadow: 0 12px 30px rgba(109,93,252,.32);
}

.menu {
    display: flex;
    align-items: center;
    gap: 27px;
    color: var(--texto-suave);
    font-weight: 650;
}

.menu a:hover,
.link-menu:hover {
    color: white;
}

.menu form {
    margin: 0;
}

.link-menu {
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--texto-suave);
    cursor: pointer;
    font-weight: 650;
}

.menu-mobile {
    display: none;
    border: 0;
    background: transparent;
    color: white;
    font-size: 1.5rem;
}

.botao {
    min-height: 50px;
    padding: 0 23px;
    border: 0;
    border-radius: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background:
        linear-gradient(
            135deg,
            var(--primaria),
            #7c6cff
        );
    color: white;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 14px 36px rgba(109,93,252,.24);
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.botao:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(109,93,252,.34);
}

.botao-menor {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 11px;
}

.botao-secundario {
    border: 1px solid var(--borda);
    background: rgba(255,255,255,.035);
    box-shadow: none;
}

.botao-claro {
    background: white;
    color: #16172c;
}

.botao-largo {
    width: 100%;
}

.etiqueta {
    display: inline-flex;
    align-items: center;
    padding: 8px 13px;
    border: 1px solid rgba(46,214,197,.25);
    border-radius: 999px;
    background: rgba(46,214,197,.08);
    color: #63eadc;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.hero {
    overflow: hidden;
    padding: 105px 0 95px;
    background:
        radial-gradient(
            circle at 82% 15%,
            rgba(109,93,252,.25),
            transparent 34rem
        ),
        radial-gradient(
            circle at 18% 95%,
            rgba(46,214,197,.12),
            transparent 28rem
        );
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.18fr .82fr;
    align-items: center;
    gap: 80px;
}

.hero h1 {
    max-width: 780px;
    margin: 24px 0 22px;
    font-size: clamp(3rem, 6.5vw, 5.35rem);
    line-height: .98;
    letter-spacing: -.065em;
}

.hero h1 span {
    display: block;
    background:
        linear-gradient(
            90deg,
            var(--ciano),
            #9b91ff
        );
    color: transparent;
    background-clip: text;
}

.hero-texto {
    max-width: 680px;
    margin: 0;
    color: var(--texto-suave);
    font-size: 1.17rem;
    line-height: 1.75;
}

.acoes {
    margin-top: 34px;
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
}

.acoes-centro {
    justify-content: center;
}

.hero-beneficios {
    margin-top: 31px;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    color: #bcc7d8;
    font-size: .9rem;
}

.painel-demo {
    padding: 29px;
    border: 1px solid var(--borda);
    border-radius: 26px;
    background:
        linear-gradient(
            155deg,
            rgba(22,38,60,.96),
            rgba(11,23,40,.92)
        );
    box-shadow: var(--sombra);
    transform: perspective(1000px) rotateY(-4deg);
}

.painel-demo-topo {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: var(--texto-suave);
}

.status-online {
    color: var(--verde);
}

.grafico-circular {
    width: 210px;
    height: 210px;
    margin: 40px auto;
    padding: 18px;
    border-radius: 50%;
    background:
        conic-gradient(
            var(--ciano) 0 82%,
            rgba(255,255,255,.08) 82%
        );
}

.grafico-circular > div {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #111f33;
}

.grafico-circular strong {
    font-size: 2.7rem;
}

.grafico-circular span {
    color: var(--texto-suave);
}

.metricas-demo {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 11px;
}

.metricas-demo div {
    padding: 16px 10px;
    border: 1px solid var(--borda);
    border-radius: 14px;
    text-align: center;
    background: rgba(255,255,255,.025);
}

.metricas-demo strong,
.metricas-demo span {
    display: block;
}

.metricas-demo span {
    margin-top: 5px;
    color: var(--texto-suave);
    font-size: .75rem;
}

.metricas {
    border-top: 1px solid var(--borda);
    border-bottom: 1px solid var(--borda);
    background: rgba(255,255,255,.02);
}

.metricas-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.metricas-grid div {
    padding: 30px;
    border-right: 1px solid var(--borda);
    text-align: center;
}

.metricas-grid div:last-child {
    border-right: 0;
}

.metricas-grid strong,
.metricas-grid span {
    display: block;
}

.metricas-grid strong {
    font-size: 1.85rem;
}

.metricas-grid span {
    margin-top: 6px;
    color: var(--texto-suave);
    font-size: .88rem;
}

.secao {
    padding: 92px 0;
}

.secao-clara {
    background: #0a1525;
}

.cabecalho-secao,
.cabecalho-pagina {
    margin-bottom: 35px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 25px;
}

.cabecalho-secao h2,
.cabecalho-pagina h1 {
    margin: 15px 0 0;
    font-size: clamp(2rem, 4vw, 3.2rem);
    letter-spacing: -.045em;
}

.cabecalho-pagina p {
    margin: 13px 0 0;
    color: var(--texto-suave);
}

.link-destaque {
    color: #7eece1;
    font-weight: 750;
}

.cards-recursos {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 19px;
}

.card-recurso {
    min-height: 265px;
    padding: 30px;
    border: 1px solid var(--borda);
    border-radius: var(--raio);
    background: var(--painel);
}

.destaque-card {
    background:
        linear-gradient(
            145deg,
            rgba(109,93,252,.25),
            rgba(17,31,51,.9)
        );
}

.icone-card {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: rgba(109,93,252,.16);
    color: #aaa2ff;
    font-weight: 900;
}

.card-recurso h3 {
    margin: 48px 0 13px;
    font-size: 1.35rem;
}

.card-recurso p {
    margin: 0;
    color: var(--texto-suave);
    line-height: 1.7;
}

.disciplinas-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 17px;
}

.disciplina-card {
    padding: 24px;
    border: 1px solid var(--borda);
    border-radius: 17px;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 15px;
    background: var(--painel);
    transition:
        transform .2s ease,
        border-color .2s ease;
}

.disciplina-card:hover {
    transform: translateY(-3px);
    border-color: rgba(46,214,197,.45);
}

.disciplina-card > span:last-child {
    grid-column: 2;
    color: var(--texto-suave);
    font-size: .82rem;
}

.disciplina-icone {
    width: 45px;
    height: 45px;
    grid-row: span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: rgba(46,214,197,.1);
    color: var(--ciano);
    font-size: .75rem;
    font-weight: 900;
}

.chamada-final {
    background:
        linear-gradient(
            135deg,
            #5f50ee,
            #2bbcad
        );
}

.chamada-conteudo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.chamada-conteudo h2 {
    margin: 15px 0 9px;
    font-size: clamp(2rem, 4vw, 3.2rem);
}

.chamada-conteudo p {
    margin: 0;
    color: rgba(255,255,255,.82);
}

.pagina-interna {
    min-height: 75vh;
    padding: 70px 0 95px;
    background:
        radial-gradient(
            circle at 90% 0,
            rgba(109,93,252,.13),
            transparent 30rem
        );
}

.container-questao,
.container-formulario {
    max-width: 900px;
}

.filtros {
    margin-bottom: 30px;
    padding: 22px;
    border: 1px solid var(--borda);
    border-radius: 18px;
    display: grid;
    grid-template-columns: repeat(3, 1fr) auto;
    align-items: end;
    gap: 14px;
    background: var(--painel);
}

.filtros label,
.grupo-campo label {
    display: block;
    margin-bottom: 8px;
    color: #dfe6f1;
    font-size: .88rem;
    font-weight: 750;
}

.filtros select,
.campo-formulario,
.formulario input[type="text"],
.formulario input[type="password"],
.formulario input[type="email"] {
    width: 100%;
    min-height: 49px;
    padding: 0 14px;
    border: 1px solid var(--borda);
    border-radius: 11px;
    outline: 0;
    background: #0b1728;
    color: white;
}

.filtros select:focus,
.campo-formulario:focus,
.formulario input:focus {
    border-color: var(--primaria-clara);
    box-shadow: 0 0 0 3px rgba(109,93,252,.13);
}

.questoes-grid {
    display: grid;
    gap: 17px;
}

.questao-resumo,
.questao-card,
.formulario-card,
.painel-bloco {
    padding: 29px;
    border: 1px solid var(--borda);
    border-radius: var(--raio);
    background: var(--painel);
    box-shadow: 0 18px 50px rgba(0,0,0,.12);
}

.questao-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.questao-meta span,
.badge {
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(109,93,252,.12);
    color: #b0a9ff;
    font-size: .76rem;
    font-weight: 800;
}

.questao-resumo h2 {
    margin: 20px 0;
    font-size: 1.15rem;
    line-height: 1.55;
    font-weight: 650;
}

.questao-rodape {
    padding-top: 17px;
    border-top: 1px solid var(--borda);
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--texto-suave);
    font-size: .88rem;
}

.questao-card > h1,
.questao-card > h2 {
    margin: 26px 0;
    font-size: 1.35rem;
    line-height: 1.65;
    font-weight: 650;
}

.alternativas {
    display: grid;
    gap: 12px;
}

.alternativa {
    min-height: 62px;
    padding: 13px 16px;
    border: 1px solid var(--borda);
    border-radius: 13px;
    display: flex;
    align-items: center;
    gap: 13px;
    background: rgba(255,255,255,.025);
    cursor: pointer;
    transition:
        border-color .2s ease,
        background .2s ease;
}

.alternativa:hover {
    border-color: rgba(109,93,252,.6);
    background: rgba(109,93,252,.07);
}

.alternativa input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.alternativa:has(input:checked) {
    border-color: var(--primaria-clara);
    background: rgba(109,93,252,.12);
}

.letra {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.07);
    font-weight: 900;
}

.alternativa-correta {
    border-color: rgba(49,199,132,.7);
    background: rgba(49,199,132,.12);
}

.alternativa-correta .letra {
    background: var(--verde);
}

.alternativa-errada {
    border-color: rgba(239,91,105,.7);
    background: rgba(239,91,105,.12);
}

.alternativa-errada .letra {
    background: var(--vermelho);
}

.resultado {
    margin-top: 23px;
    padding: 22px;
    border-radius: 15px;
}

.resultado h2 {
    margin: 0 0 9px;
}

.resultado p {
    margin: 0;
    line-height: 1.7;
}

.resultado-correto {
    border: 1px solid rgba(49,199,132,.4);
    background: rgba(49,199,132,.1);
}

.resultado-incorreto {
    border: 1px solid rgba(239,91,105,.4);
    background: rgba(239,91,105,.1);
}

.dica {
    margin-bottom: 20px;
    padding: 15px 17px;
    border: 1px solid rgba(245,196,81,.3);
    border-radius: 13px;
    background: rgba(245,196,81,.07);
}

.dica summary {
    color: var(--amarelo);
    cursor: pointer;
    font-weight: 750;
}

.dica p {
    margin-bottom: 0;
    color: #dfd6ba;
}

.contador-gratuito {
    padding: 14px 18px;
    border: 1px solid var(--borda);
    border-radius: 15px;
    display: flex;
    align-items: center;
    gap: 11px;
    background: var(--painel);
}

.contador-gratuito strong {
    font-size: 1.7rem;
    color: var(--ciano);
}

.contador-gratuito span {
    max-width: 130px;
    color: var(--texto-suave);
    font-size: .78rem;
}

.aviso-limite {
    color: var(--texto-suave);
    text-align: center;
}

.pagina-autenticacao {
    min-height: calc(100vh - 76px);
    padding: 70px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(
            circle at 50% 10%,
            rgba(109,93,252,.18),
            transparent 34rem
        );
}

.autenticacao-card {
    width: min(480px, 100%);
    padding: 36px;
    border: 1px solid var(--borda);
    border-radius: 24px;
    background: var(--painel);
    box-shadow: var(--sombra);
}

.autenticacao-maior {
    width: min(580px, 100%);
}

.autenticacao-intro {
    margin-bottom: 29px;
}

.autenticacao-intro h1 {
    margin: 17px 0 10px;
    font-size: 2.2rem;
    letter-spacing: -.045em;
}

.autenticacao-intro p {
    margin: 0;
    color: var(--texto-suave);
    line-height: 1.65;
}

.formulario,
.formulario-card {
    display: grid;
    gap: 18px;
}

.formulario-card ul {
    margin: 0;
    padding: 15px;
    border: 1px solid var(--borda);
    border-radius: 13px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    list-style: none;
    background: #0b1728;
}

.formulario-card ul label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--texto-suave);
    font-weight: 550;
}

.grupo-campo small {
    display: block;
    margin-top: 6px;
    color: var(--texto-suave);
    line-height: 1.5;
}

.grupo-campo small ul {
    padding-left: 18px;
}

.erro-campo,
.erro-formulario {
    display: block;
    margin-top: 7px;
    color: #ff8e99;
    font-size: .83rem;
}

.erro-formulario {
    padding: 13px;
    border-radius: 10px;
    background: rgba(239,91,105,.1);
}

.texto-central {
    color: var(--texto-suave);
    text-align: center;
}

.texto-central a {
    color: var(--ciano);
    font-weight: 750;
}

.mensagens {
    padding-top: 15px;
}

.mensagem {
    padding: 14px 17px;
    border: 1px solid rgba(49,199,132,.35);
    border-radius: 12px;
    background: rgba(49,199,132,.09);
    color: #9aefc3;
}

.estatisticas-grid,
.resultado-grid {
    margin-bottom: 25px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.estatistica-card,
.resultado-principal {
    padding: 22px;
    border: 1px solid var(--borda);
    border-radius: 17px;
    background: var(--painel);
}

.estatistica-card span,
.resultado-principal span {
    display: block;
    color: var(--texto-suave);
    font-size: .84rem;
}

.estatistica-card strong,
.resultado-principal strong {
    display: block;
    margin-top: 14px;
    font-size: 2rem;
}

.resultado-principal {
    background:
        linear-gradient(
            145deg,
            rgba(109,93,252,.38),
            rgba(17,31,51,.95)
        );
}

.lista-simulados,
.revisao-lista {
    display: grid;
    gap: 11px;
}

.item-simulado,
.revisao-item {
    padding: 17px 18px;
    border: 1px solid var(--borda);
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: rgba(255,255,255,.02);
}

.item-simulado strong,
.item-simulado span {
    display: block;
}

.item-simulado div > span {
    margin-top: 5px;
    color: var(--texto-suave);
    font-size: .82rem;
}

.resultado-cabecalho {
    margin-bottom: 30px;
    text-align: center;
}

.resultado-cabecalho h1 {
    margin: 18px 0 8px;
    font-size: 2.7rem;
}

.resultado-cabecalho p {
    color: var(--texto-suave);
}

.revisao-item h3 {
    margin: 7px 0 0;
    font-size: .95rem;
    line-height: 1.5;
}

.revisao-item div > span {
    color: var(--texto-suave);
    font-size: .76rem;
}

.texto-correto {
    color: var(--verde);
}

.texto-errado {
    color: var(--vermelho);
}

.estado-vazio {
    padding: 55px 25px;
    border: 1px dashed var(--borda);
    border-radius: 17px;
    text-align: center;
    color: var(--texto-suave);
}

.estado-vazio h3 {
    color: white;
}

.simulado-topo {
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.simulado-topo h1 {
    margin: 13px 0 0;
}

.cronometro {
    padding: 12px 17px;
    border: 1px solid var(--borda);
    border-radius: 12px;
    background: var(--painel);
    color: var(--ciano);
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.barra-progresso {
    height: 7px;
    margin-bottom: 25px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
}

.barra-progresso span {
    height: 100%;
    display: block;
    border-radius: inherit;
    background:
        linear-gradient(
            90deg,
            var(--primaria),
            var(--ciano)
        );
}

.rodape {
    padding: 65px 0;
    border-top: 1px solid var(--borda);
    background: #050c17;
}

.rodape-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 50px;
}

.rodape-grid > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

.rodape-grid p,
.rodape-grid a {
    margin: 0;
    color: var(--texto-suave);
    line-height: 1.7;
}

@media (max-width: 900px) {
    .hero-grid,
    .cards-recursos,
    .disciplinas-grid {
        grid-template-columns: 1fr;
    }

    .painel-demo {
        transform: none;
    }

    .metricas-grid,
    .estatisticas-grid,
    .resultado-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .filtros {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 700px) {
    .container {
        width: min(100% - 28px, 1160px);
    }

    .menu-mobile {
        display: block;
    }

    .menu {
        position: absolute;
        top: 76px;
        left: 14px;
        right: 14px;
        padding: 20px;
        border: 1px solid var(--borda);
        border-radius: 16px;
        display: none;
        flex-direction: column;
        align-items: stretch;
        background: #0c1829;
        box-shadow: var(--sombra);
    }

    .menu.aberto {
        display: flex;
    }

    .hero {
        padding: 70px 0;
    }

    .hero h1 {
        font-size: 3.25rem;
    }

    .metricas-grid,
    .estatisticas-grid,
    .resultado-grid,
    .filtros,
    .formulario-card ul {
        grid-template-columns: 1fr;
    }

    .metricas-grid div {
        border-right: 0;
        border-bottom: 1px solid var(--borda);
    }

    .cabecalho-secao,
    .cabecalho-pagina,
    .chamada-conteudo,
    .simulado-topo {
        align-items: flex-start;
        flex-direction: column;
    }

    .rodape-grid {
        grid-template-columns: 1fr;
    }

    .autenticacao-card,
    .questao-card,
    .questao-resumo,
    .formulario-card,
    .painel-bloco {
        padding: 22px;
    }
}

.demo-comercial {
    padding: 30px 0 15px;
}

.demo-circulo {
    width: 175px;
    height: 175px;
    margin: 0 auto 30px;
    padding: 13px;
    border-radius: 50%;
    background:
        conic-gradient(
            #2ed6c5 0 68%,
            rgba(255, 255, 255, .08) 68%
        );
}

.demo-circulo > div {
    width: 100%;
    height: 100%;
    padding: 20px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #111f33;
    text-align: center;
}

.demo-circulo strong {
    font-size: 1rem;
}

.demo-circulo span {
    margin-top: 5px;
    color: var(--texto-suave);
    font-size: .7rem;
}

.demo-linhas {
    display: grid;
    gap: 16px;
}

.demo-linhas div {
    display: grid;
    gap: 8px;
}

.demo-linhas span {
    color: var(--texto-suave);
    font-size: .74rem;
}

.demo-linhas div::after {
    content: "";
    height: 7px;
    grid-row: 2;
    grid-column: 1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
}

.demo-linhas i {
    z-index: 2;
    height: 7px;
    grid-row: 2;
    grid-column: 1;
    border-radius: 999px;
    background:
        linear-gradient(
            90deg,
            var(--primaria),
            var(--ciano)
        );
}

.demo-aviso {
    margin: 20px 0 0;
    color: #78879c;
    font-size: .7rem;
    line-height: 1.5;
    text-align: center;
}

.rodape-legal {
    margin-top: 18px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 18px;
}

.rodape-legal a {
    color: #8290a5;
    font-size: .68rem;
}

.cookie-transparencia {
    position: fixed;
    z-index: 60;
    left: 12px;
    right: 12px;
    bottom: 12px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 15px;
    display: grid;
    gap: 11px;
    background: rgba(9, 20, 36, .97);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .35);
    backdrop-filter: blur(18px);
}

.cookie-transparencia[hidden] {
    display: none;
}

.cookie-transparencia p {
    margin: 0;
    color: #a8b4c6;
    font-size: .7rem;
    line-height: 1.55;
}

.cookie-transparencia p a {
    color: #69e8dd;
    font-weight: 850;
}

.cookie-transparencia button {
    min-height: 42px;
    padding: 0 15px;
    border: 0;
    border-radius: 11px;
    background: #7567ff;
    color: white;
    font-size: .72rem;
    font-weight: 900;
    cursor: pointer;
}

@media (min-width: 760px) {
    .cookie-transparencia {
        left: auto;
        right: 22px;
        bottom: 22px;
        width: min(420px, calc(100% - 44px));
        grid-template-columns: 1fr auto;
        align-items: center;
    }
}


/* ==================================================
   CONFIGURAÇÃO VISUAL PELO ADMIN
   ================================================== */

.logo-imagem {
    display: block;
    width: auto;
    object-fit: contain;
    flex-shrink: 0;
}

.logo-imagem-topo {
    max-width: 210px;
    height: 42px;
    max-height: 42px;
}

.logo-imagem-rodape {
    max-width: 220px;
    height: 48px;
    max-height: 48px;
}

.topo .logo:has(.logo-imagem) {
    line-height: 1;
}

@media (max-width: 760px) {
    .logo-imagem-topo {
        max-width: 165px;
        height: 36px;
        max-height: 36px;
    }

    .logo-imagem-rodape {
        max-width: 180px;
        height: 42px;
        max-height: 42px;
    }
}
