/*
| Estilo das páginas institucionais do Guarapari Virtual (Anuncie, Contato,
| Seja colaborador, Quem somos) — mesmo visual do mídia kit em /anuncie.
*/
:root{--roxo:#6d2f8f;--roxo-esc:#4a1d63;--mar:#0b7a8a;--verde:#1fa855;--tx:#1d2330;--tx2:#5c6573;--borda:#e4e7ec;--fundo:#fff;--cartao:#fff;--cinza:#f6f7f9}
@media (prefers-color-scheme:dark){:root{--tx:#e8ecf2;--tx2:#a5afbd;--borda:#2b3340;--fundo:#11151c;--cartao:#181e27;--cinza:#151a22}}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--tx);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--mar)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

/* barra do topo */
.gv-nav{background:var(--roxo-esc);color:#fff}
.gv-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;flex-wrap:wrap}
.gv-nav a{color:#fff;text-decoration:none;font-weight:600;font-size:14.5px}
.gv-nav .gv-logo{font-weight:800;letter-spacing:.3px;font-size:16px}
.gv-nav nav{display:flex;gap:18px;flex-wrap:wrap}
.gv-nav nav a{opacity:.85}
.gv-nav nav a:hover,.gv-nav nav a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:4px}

/* cabeçalho */
.topo{background:linear-gradient(135deg,var(--roxo-esc),var(--roxo) 55%,var(--mar));color:#fff;padding:52px 0 60px}
.topo .marca{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.5px;opacity:.9;font-size:14px;text-transform:uppercase}
.topo h1{font-size:clamp(30px,5vw,46px);line-height:1.1;margin:10px 0 14px;max-width:780px}
.topo p{font-size:clamp(16px,2.2vw,19px);max-width:690px;opacity:.95;margin:0 0 26px}

.botao{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:30px;font-weight:700;text-decoration:none;border:0;cursor:pointer;font-size:16px;font-family:inherit}
.botao svg{width:20px;height:20px;fill:currentColor}
.botao-wa{background:var(--verde);color:#fff}.botao-wa:hover{filter:brightness(1.08);color:#fff}
.botao-linha{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7);margin-left:8px}
.botao-roxo{background:var(--roxo);color:#fff}.botao-roxo:hover{filter:brightness(1.1);color:#fff}

section{padding:52px 0}
section.cinza{background:var(--cinza)}
h2{font-size:clamp(24px,3.4vw,32px);margin:0 0 8px;line-height:1.2}
.sub{color:var(--tx2);margin:0 0 28px;max-width:720px}
.texto{max-width:760px;font-size:17px}
.texto p{margin:0 0 16px}

/* números */
.numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.num{background:var(--cartao);border:1px solid var(--borda);border-radius:14px;padding:22px 18px}
.num b{display:block;font-size:clamp(28px,4vw,38px);line-height:1;color:var(--roxo);letter-spacing:-.5px}
@media (prefers-color-scheme:dark){.num b{color:#c99ce6}}
.num span{display:block;margin-top:8px;color:var(--tx2);font-size:14.5px}

/* cartões */
.cartoes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cartoes.dois{grid-template-columns:repeat(2,1fr)}
.cartoes.quatro{grid-template-columns:repeat(4,1fr)}
.cartao{background:var(--cartao);border:1px solid var(--borda);border-radius:14px;padding:22px;display:flex;flex-direction:column}
.cartao h3{margin:0 0 6px;font-size:18px}
.cartao p{margin:0;color:var(--tx2);font-size:15px}
.cartao .acao{margin-top:auto;padding-top:16px}
.cartao .icone{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:12px;background:#f1e8f7;color:var(--roxo)}
.cartao .icone svg{width:24px;height:24px;fill:currentColor}
.cartao .icone.verde{background:#e5f6ec;color:var(--verde)}
.cartao .icone.mar{background:#e1f2f4;color:var(--mar)}
@media (prefers-color-scheme:dark){.cartao .icone{background:#2a1f33}.cartao .icone.verde{background:#16301f}.cartao .icone.mar{background:#123840}}
a.cartao{text-decoration:none;color:var(--tx);transition:border-color .15s,transform .15s}
a.cartao:hover{border-color:var(--roxo);transform:translateY(-2px)}

/* passos */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:passo}
.passo{background:var(--cartao);border:1px solid var(--borda);border-radius:14px;padding:22px 22px 22px 70px;position:relative}
.passo::before{counter-increment:passo;content:counter(passo);position:absolute;left:20px;top:20px;width:36px;height:36px;border-radius:50%;background:var(--roxo);color:#fff;font-weight:800;display:grid;place-items:center}
.passo h3{margin:0 0 4px;font-size:17px}
.passo p{margin:0;color:var(--tx2);font-size:15px}

/* formulário */
.form{background:var(--cartao);border:1px solid var(--borda);border-radius:16px;padding:26px;max-width:680px}
.campo{display:block;margin-bottom:16px}
.campo span{display:block;font-weight:600;font-size:14.5px;margin-bottom:6px}
.campo input,.campo select,.campo textarea{width:100%;padding:12px 14px;border:1px solid var(--borda);border-radius:10px;background:var(--fundo);color:var(--tx);font:inherit}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:2px solid var(--roxo);outline-offset:1px}
.form .dica{color:var(--tx2);font-size:13.5px;margin:12px 0 0}
.grade-form{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}

/* chamada final e rodapé */
.cta{text-align:center}
.cta p{color:var(--tx2);max-width:620px;margin:0 auto 22px}
.rodape{padding:26px 0;color:var(--tx2);font-size:13.5px;text-align:center;border-top:1px solid var(--borda)}
.rodape nav{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}

@media (max-width:860px){.numeros,.cartoes.quatro{grid-template-columns:repeat(2,1fr)}.cartoes,.passos{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cartoes,.cartoes.dois,.cartoes.quatro,.passos,.grade-form{grid-template-columns:1fr}.botao-linha{margin:10px 0 0}.topo{padding:40px 0 46px}section{padding:40px 0}.gv-nav nav{gap:12px}}
@media print{.gv-nav,.botao,.nao-imprimir{display:none!important}.topo{background:var(--roxo)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}section{padding:24px 0;break-inside:avoid}}

/* documentos (política de privacidade, termos) */
.doc{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}
.indice{position:sticky;top:20px;background:var(--cinza);border:1px solid var(--borda);border-radius:14px;padding:18px}
.indice strong{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--tx2);margin-bottom:8px}
.indice ol{margin:0;padding-left:20px;font-size:14.5px}
.indice li{margin:6px 0}
.indice a{color:var(--tx);text-decoration:none}
.indice a:hover{color:var(--roxo)}
.doc-corpo{max-width:740px;font-size:16.5px}
.doc-corpo h2{font-size:22px;margin:34px 0 10px;scroll-margin-top:16px}
.doc-corpo h2:first-child{margin-top:0}
.doc-corpo p{margin:0 0 14px}
.doc-corpo ul{margin:0 0 14px;padding-left:22px}
.doc-corpo li{margin:6px 0}
.resumo{background:#f1e8f7;border-radius:14px;padding:20px 22px;margin-bottom:30px}
@media (prefers-color-scheme:dark){.resumo{background:#2a1f33}}
.resumo strong{display:block;margin-bottom:6px}
.resumo ul{margin:0;padding-left:20px}
@media (max-width:860px){.doc{grid-template-columns:1fr}.indice{position:static}}

/* busca */
.topo-busca{padding:40px 0 44px}
.topo-busca h1{font-size:clamp(26px,4vw,38px)}
.busca-grande{display:flex;gap:10px;max-width:680px;margin-top:6px}
.busca-grande input{flex:1;min-width:0;padding:14px 18px;border-radius:30px;border:0;font:inherit;font-size:17px;color:#1d2330;background:#fff}
.busca-grande input:focus{outline:3px solid rgba(255,255,255,.5)}
.resultados{display:flex;flex-direction:column;gap:14px;max-width:860px}
.resultado{display:grid;grid-template-columns:180px 1fr;gap:18px;background:var(--cartao);border:1px solid var(--borda);border-radius:14px;padding:14px;align-items:start}
.resultado-foto{display:block;border-radius:10px;overflow:hidden;background:var(--cinza);aspect-ratio:3/2}
.resultado-foto img{width:100%;height:100%;object-fit:cover;display:block}
.resultado h2{font-size:19px;margin:4px 0 6px;line-height:1.3}
.resultado h2 a{color:var(--tx);text-decoration:none}
.resultado h2 a:hover{color:var(--roxo)}
.resultado p{margin:0 0 6px;color:var(--tx2);font-size:15px}
.resultado small{color:var(--tx2);font-size:13px}
.resultado-cat{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--mar);text-decoration:none}
mark{background:#fde68a;color:inherit;padding:0 2px;border-radius:3px}
@media (prefers-color-scheme:dark){mark{background:#6b5310}}
.paginas{display:flex;gap:10px;margin-top:24px}
.sugestoes-grade{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cartao-foto{display:block;text-decoration:none;color:var(--tx);background:var(--cartao);border:1px solid var(--borda);border-radius:12px;overflow:hidden}
.cartao-foto img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.cartao-foto span{display:block;padding:12px 14px}
.cartao-foto strong{display:block;font-size:15px;line-height:1.3}
.cartao-foto small{color:var(--tx2)}
@media (max-width:860px){.sugestoes-grade{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.resultado{grid-template-columns:96px 1fr;gap:12px}.resultado h2{font-size:16.5px}.resultado p{display:none}.sugestoes-grade{grid-template-columns:1fr}.busca-grande .botao{padding:13px 16px}}
/* Sobre o autor (sobre.php) */
.autor{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.autor img{width:112px;height:112px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.85);flex:none}
.autor h1{margin:0 0 6px}
.autor p{margin:0}
