/* Edital 2h — identidade visual aprovada pelo Edson em 10/11/2026 (canvas "Edital 2h — novo visual do site").
   Um arquivo só para a home (index.html) e para a pagina de cada concurso (functions/concurso/[slug].js). */
:root{--tinta:#0B1B3F;--papel:#F6F5F1;--branco:#FFFFFF;--linha:#E4E2DA;--linha2:#D5D2C8;--tx2:#4A5168;--mut:#5A6072;
--ambar:#F5A524;--ambar-cl:#FFF4DC;--ambar-tx:#5A4210;--ambar-tx2:#7A4A00;--azul:#2F5BEA;--azul-cl:#EEF2FD;--azul-tx:#1E3FB0;
--verde:#1D6B47;--verde-cl:#E9F5EF;--erro:#A8261B;--erro-cl:#FBEAE8;--claro:#C9D3EE;--claro2:#AFC0E8;--claro3:#DCE3F5;
--titulo:'Space Grotesk',system-ui,sans-serif;--texto:Inter,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 var(--texto);color:var(--tinta);background:var(--papel);-webkit-font-smoothing:antialiased}
a{color:var(--azul)}a:hover{color:var(--azul-tx)}
h1,h2,h3{font-family:var(--titulo);letter-spacing:-.02em;line-height:1.1;margin:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.mut{color:var(--mut);font-size:14px}

/* topo */
.topo{background:var(--branco);border-bottom:1px solid var(--linha);position:sticky;top:0;z-index:10}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tinta)}
.marca span.ic{width:36px;height:36px;border-radius:10px;background:var(--tinta);display:flex;align-items:center;justify-content:center}
.marca b{font-family:var(--titulo);font-size:22px;letter-spacing:-.5px}
.nav{display:flex;gap:28px;align-items:center}
.nav a{color:var(--tinta);text-decoration:none;font-weight:500;font-size:15px}
.nav a.btn{color:var(--branco)}

/* botoes e campos */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border:0;border-radius:10px;
background:var(--tinta);color:var(--branco);font:600 16px/1 var(--texto);text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s}
.btn:hover{color:var(--branco);transform:translateY(-1px);box-shadow:0 8px 20px rgba(11,27,63,.18)}
.btn:disabled{opacity:.6;cursor:wait;transform:none}
.btn.ambar{background:var(--ambar);color:var(--tinta);font-weight:700}.btn.ambar:hover{color:var(--tinta)}
.btn.borda{background:transparent;color:var(--tinta);border:2px solid var(--tinta)}.btn.borda:hover{color:var(--tinta)}
.btn.largo{width:100%}
.campo{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px}
.campo label{font-size:13px;font-weight:600;color:var(--tx2)}
.campo input,.campo select,textarea{height:50px;border:1px solid var(--linha2);border-radius:10px;padding:0 14px;font:16px var(--texto);color:var(--tinta);background:var(--branco);width:100%}
textarea{height:auto;padding:12px 14px}
.campo input:focus,.campo select:focus,textarea:focus{outline:3px solid rgba(47,91,234,.25);border-color:var(--azul)}
.ck{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ambar-tx);cursor:pointer}
.ck input{width:18px;height:18px;margin-top:2px;flex:none}
.msg{min-height:1.3em;font-size:14px;margin:0}

/* chips */
.chip{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:12px;padding:5px 10px;border-radius:999px}
.chip.uf{background:var(--azul-cl);color:var(--azul-tx);border-radius:6px}
.chip.dias{background:var(--ambar-cl);color:var(--ambar-tx2)}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--ambar-cl);color:var(--ambar-tx2);font-weight:600;font-size:14px;padding:8px 14px;border-radius:999px}

/* home: hero */
.hero{padding:72px 0 64px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(36px,5.2vw,56px);letter-spacing:-1.5px;margin:20px 0 18px}
.hero .lead{font-size:19px;color:var(--tx2);margin:0 0 32px;max-width:560px}
.busca{display:grid;grid-template-columns:150px 1fr auto;gap:12px;align-items:end;background:var(--branco);border:1px solid var(--linha);border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(11,27,63,.06)}
.busca .campo{min-width:0}
.garantias{font-size:14px;color:var(--mut);margin:16px 0 0;display:flex;gap:18px;flex-wrap:wrap}
.exemplo{background:var(--tinta);border-radius:24px;padding:28px;color:var(--branco);box-shadow:0 24px 48px rgba(11,27,63,.18)}
.exemplo .cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px}
.exemplo .rot{font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--claro2)}
.exemplo .chip.dias{background:var(--ambar);color:var(--tinta)}
.exemplo h3{font-size:22px;margin:0 0 4px}
.exemplo .sub{font-size:15px;color:var(--claro);margin:0 0 24px}
.exemplo .linha{background:rgba(255,255,255,.08);border-radius:12px;padding:14px 16px;display:flex;gap:14px;align-items:center;margin-bottom:10px;font-size:15px}
.exemplo .n{flex:none;width:34px;height:34px;border-radius:8px;background:var(--branco);color:var(--tinta);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}
.exemplo .linha:first-of-type .n{background:var(--ambar)}
.exemplo .mais{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:14px 16px;font-size:14px;color:var(--claro)}

/* home: secoes */
.secao{padding:24px 0 72px}
.secao-cab{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.secao h2{font-size:36px;letter-spacing:-.8px;margin:0 0 8px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--branco);border:1px solid var(--linha);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s,box-shadow .15s,transform .15s}
.card:hover{border-color:var(--tinta);box-shadow:0 12px 28px rgba(11,27,63,.08);transform:translateY(-2px)}
.card .lin{display:flex;justify-content:space-between;align-items:center;gap:8px}
.card .org{font-size:14px;color:var(--mut);margin:0 0 4px}
.card h3{font-size:21px;line-height:1.2}
.card .det{font-size:14px;color:var(--tx2);margin:0}
.card .btn{margin-top:auto}
.vazio{grid-column:1/-1;background:var(--branco);border:1px dashed var(--linha2);border-radius:18px;padding:32px;text-align:center;color:var(--mut)}
.faixa-branca{background:var(--branco);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);padding:72px 0}
.centro{text-align:center}
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.passo{display:flex;flex-direction:column;gap:12px}
.passo .ic{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center}
.passo h3{font-size:21px}
.passo p{font-size:16px;color:var(--tx2);margin:0}
.planos{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:40px auto 0}
.plano{background:var(--branco);border:1px solid var(--linha);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:16px}
.plano.escuro{background:var(--tinta);color:var(--branco);border-color:var(--tinta)}
.plano .nome{font-weight:600;color:var(--mut);margin:0}.plano.escuro .nome{color:var(--claro2)}
.plano .preco{font-family:var(--titulo);font-size:40px;font-weight:700;margin:0;line-height:1}
.plano .preco small{font-size:16px;font-weight:500;color:var(--claro2)}
.plano ul{margin:0;padding-left:20px;line-height:2;color:var(--tx2)}.plano.escuro ul{color:var(--claro3)}
.plano .btn{margin-top:auto}
.aviso{background:var(--ambar-cl);border-radius:24px;padding:40px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.aviso h2{font-size:28px;margin:0 0 8px}.aviso p{color:var(--ambar-tx);margin:0;max-width:560px}

/* rodape */
.rodape{background:var(--tinta);color:var(--claro);padding:40px 0;font-size:14px;line-height:1.6}
.rodape b.m{font-family:var(--titulo);font-size:20px;color:var(--branco);display:block;margin-bottom:10px}
.rodape p{margin:0 0 8px;max-width:780px}.rodape a{color:#F5C36B}

/* pagina do concurso */
.kit-topo{background:var(--tinta);color:var(--branco);padding:48px 0 56px}
.kit-topo .wrap{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:end}
.trilha{font-size:14px;color:var(--claro2);margin:0 0 18px}.trilha a{color:var(--claro2)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.chips span{background:rgba(255,255,255,.12);font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px}
.kit-topo h1{font-size:clamp(32px,4.4vw,48px);letter-spacing:-1.2px;margin:0 0 10px}
.kit-topo .cargo{font-size:22px;color:var(--claro3);margin:0 0 22px}
.kit-topo .edital{color:#F5C36B;font-weight:600;font-size:15px}
.contador{background:var(--ambar);color:var(--tinta);border-radius:20px;padding:24px;text-align:center}
.contador .t{font-size:14px;font-weight:600;margin:0 0 4px}
.contador .n{font-family:var(--titulo);font-size:64px;font-weight:700;line-height:1;margin:0}
.contador .d{font-size:15px;font-weight:600;margin:8px 0 0}
.corpo{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start;padding:48px 24px 72px}
/* barra de compra fixa: so no celular, onde a caixa de compra fica no fim da pagina */
.barra-compra{display:none}
.coluna{display:flex;flex-direction:column;gap:48px;min-width:0}
.coluna h2{font-size:28px;margin:0 0 20px}
.coluna h2+.mut{margin:-14px 0 20px;font-size:16px}
.cai{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cai div{background:var(--branco);border:1px solid var(--linha);border-radius:16px;padding:20px;font-size:15px;line-height:1.55;color:var(--tx2)}
.cai b{display:block;font-family:var(--titulo);font-size:15px;color:var(--ambar-tx2);margin-bottom:8px}
.dicas{margin:0;padding-left:22px;font-size:16px;line-height:1.8;color:var(--tx2)}
.semanas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.semanas li{background:var(--branco);border:1px solid var(--linha);border-radius:14px;padding:18px 20px;display:flex;gap:16px;align-items:flex-start}
.semanas .n{flex:none;width:44px;height:44px;border-radius:12px;background:var(--tinta);color:var(--branco);font-weight:700;display:flex;align-items:center;justify-content:center}
.semanas b{display:block;margin-bottom:4px}.semanas p{font-size:15px;color:var(--tx2);margin:0}
.trava{margin-top:16px;background:var(--ambar-cl);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px}
.trava .tt{display:flex;gap:12px;align-items:center;font-weight:700;margin:0}
.trava .lin{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
.trava .campo label{color:var(--ambar-tx)}
.trava .campo input{border-color:#E2C98A}
.questao{background:var(--branco);border:1px solid var(--linha);border-radius:18px;padding:28px}
.questao .rot{font-size:13px;font-weight:600;color:var(--mut);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}
.questao .enun{font-size:17px;margin:0 0 20px}
.alt{width:100%;text-align:left;display:flex;gap:14px;align-items:center;background:var(--branco);border:1px solid var(--linha2);border-radius:12px;padding:14px 16px;font:16px/1.5 var(--texto);color:var(--tinta);cursor:pointer;margin-bottom:10px;transition:border-color .15s}
.alt:hover{border-color:var(--tinta)}
.alt .l{flex:none;width:30px;height:30px;border-radius:8px;background:#F0EFEA;font-weight:700;display:flex;align-items:center;justify-content:center}
.alt.certa{background:var(--verde-cl);border-color:var(--verde)}.alt.certa .l{background:var(--verde);color:var(--branco)}
.alt.errada{background:var(--erro-cl);border-color:var(--erro)}.alt.errada .l{background:var(--erro);color:var(--branco)}
.com{display:none;margin-top:12px;padding:16px;border-radius:12px;background:var(--papel);font-size:15px;color:var(--tx2)}
.questao.feita .com{display:block}
.lateral{position:sticky;top:96px}
.compra{background:var(--branco);border:1px solid var(--linha);border-radius:20px;padding:28px;box-shadow:0 16px 40px rgba(11,27,63,.08);display:flex;flex-direction:column;gap:18px}
.compra .nome{font-weight:600;color:var(--mut);margin:0}
.compra .preco{font-family:var(--titulo);font-size:44px;font-weight:700;margin:0;line-height:1}
.inclui{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;font-size:15px}
.inclui li{display:flex;gap:10px;align-items:flex-start}.inclui svg{flex:none;margin-top:2px}
.lateral .aviso-ia{font-size:13px;color:var(--mut);margin:16px 4px 0}
.caixa{background:var(--branco);border:1px solid var(--linha);border-radius:18px;padding:28px}

@media (max-width:900px){
.hero .wrap,.kit-topo .wrap,.corpo,.planos,.passos{grid-template-columns:1fr}
.cards,.cai{grid-template-columns:1fr}
.busca{grid-template-columns:1fr}
.nav a:not(.btn){display:none}
.hero{padding:40px 0}.secao h2{font-size:28px}
.lateral{position:static}
.contador .n{font-size:48px}
.aviso{padding:28px}
.barra-compra{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--branco);border-top:1px solid var(--linha);box-shadow:0 -8px 24px rgba(11,27,63,.08)}
.barra-compra b{font-family:var(--titulo);font-size:22px}.barra-compra span{display:block;font-size:12px;color:var(--mut)}
.tem-barra .rodape{padding-bottom:110px}
}
@media (min-width:901px) and (max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}}
