/* vircos.ai: branco, faixas azul-marinho (cor do logo da Vircos), acento azul; Plus Jakarta Sans. */
:root{
  --fundo:#ffffff; --suave-fundo:#f3f6fa; --cartao:#ffffff; --texto:#0f1a2e; --suave:#55637a; --linha:#dfe5ee;
  --ardosia:#0b1a33; --ardosia-texto:#eaf0f8; --ardosia-suave:#a9b7cc; --ardosia-linha:#24344f;
  --acento:#1f5eff; --acento-hover:#1747c4; --sobre:#ffffff; --alerta-fundo:#e9f0ff;
  --sans:"Plus Jakarta Sans", "Helvetica Neue", Arial, sans-serif; --mono:"JetBrains Mono", ui-monospace, Menlo, monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --fundo:#0a1322; --suave-fundo:#0f1a2e; --cartao:#12203a; --texto:#e8eef7; --suave:#a9b7cc; --linha:#24344f;
  --ardosia:#06101f; --ardosia-texto:#e8eef7; --ardosia-suave:#9fb0c8; --ardosia-linha:#1f2f4a;
  --acento:#6b9bff; --acento-hover:#8db2ff; --sobre:#06101f; --alerta-fundo:#14264a; color-scheme:dark}}
:root[data-theme="dark"]{--fundo:#0a1322; --suave-fundo:#0f1a2e; --cartao:#12203a; --texto:#e8eef7; --suave:#a9b7cc; --linha:#24344f; --ardosia:#06101f; --ardosia-texto:#e8eef7; --ardosia-suave:#9fb0c8; --ardosia-linha:#1f2f4a; --acento:#6b9bff; --acento-hover:#8db2ff; --sobre:#06101f; --alerta-fundo:#14264a; color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--texto);font:17px/1.65 var(--sans)}
.faixa{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.miolo{max-width:1120px;margin:0 auto}
h1,h2,h3{font-weight:700;text-wrap:balance;margin:0;letter-spacing:-.4px;line-height:1.15}
a{color:var(--acento)}
:focus-visible{outline:2px solid var(--acento);outline-offset:3px}
.botao{display:inline-block;background:var(--acento);color:var(--sobre);text-decoration:none;font-weight:600;font-size:16px;padding:13px 22px;border-radius:10px;transition:background .15s}
.botao:hover{background:var(--acento-hover)}
.botao.sec{background:transparent;color:var(--texto);border:1px solid var(--linha)}
.botao.sec:hover{background:var(--suave-fundo)}
.botao.largo{display:block;text-align:center;margin-top:16px}
.botao.inativo{opacity:.45;pointer-events:none;cursor:not-allowed}

/* cabeçalho */
nav{border-bottom:1px solid var(--linha);background:var(--fundo)}
nav .miolo{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:16px;flex-wrap:wrap}
.marca{font-weight:800;font-size:20px;letter-spacing:-.5px}
.marca small{display:block;font-weight:500;font-size:12.5px;color:var(--suave);letter-spacing:.2px}
.menu{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.menu a{color:var(--texto);text-decoration:none;font-size:15px;font-weight:500}
.menu a:hover{color:var(--acento)}
.menu a.botao{color:var(--sobre);font-size:15px;padding:10px 18px}

.chapeu,.rotulo{display:block;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--acento);margin-bottom:14px}

/* herói */
.heroi{padding-block:80px 76px}
.heroi .grade{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.heroi h1{font-size:clamp(36px,5vw,58px);font-weight:800;line-height:1.05;letter-spacing:-1.2px}
.heroi p{font-size:20px;color:var(--suave);max-width:34em;margin:22px 0 30px}
.acoes{display:flex;gap:12px;flex-wrap:wrap}
.quadro{background:var(--ardosia);color:var(--ardosia-texto);border-radius:16px;padding:24px;min-width:0}
.quadro-topo{font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ardosia-suave);margin-bottom:16px}
.quadro-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.quadro-col div{min-width:0}
.quadro-col b{display:block;font-size:18px;margin-bottom:8px}
.quadro-col div:last-child b{color:var(--acento)}
.quadro ul{margin:0;padding-left:18px;color:var(--ardosia-suave);font-size:15px}
.quadro li{margin:6px 0}

/* seções */
section{padding-block:76px}
.suave{background:var(--suave-fundo)}
.escura{background:var(--ardosia);color:var(--ardosia-texto)}
.escura .cab p,.escura p{color:var(--ardosia-suave)}
.escura a{color:var(--acento)}
.cab{max-width:720px;margin-bottom:36px}
.cab h2{font-size:clamp(28px,3.4vw,40px)}
.cab p{color:var(--suave);font-size:19px;margin:12px 0 0}

.etapas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px;counter-reset:e}
.etapas li{counter-increment:e;background:rgba(255,255,255,.05);border:1px solid var(--ardosia-linha);border-radius:14px;padding:20px;min-width:0}
.etapas li::before{content:counter(e);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--acento);color:#fff;font-weight:700;font-size:14px;margin-bottom:12px}
.etapas strong{display:block;font-size:18px;margin-bottom:6px;line-height:1.2}
.etapas span{color:var(--ardosia-suave);font-size:15px}

.trilhas{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.trilhas a{display:block;border:1px solid var(--linha);border-radius:16px;padding:26px;text-decoration:none;color:var(--texto);background:var(--cartao);min-width:0;transition:border-color .15s,transform .15s}
.trilhas a:hover{border-color:var(--acento);transform:translateY(-2px)}
.trilhas b{display:block;font-size:13px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--acento);margin-bottom:10px}
.trilhas h3{font-size:22px;margin-bottom:8px}
.trilhas p{color:var(--suave);margin:0;font-size:16px}

.partes{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 32px}
.partes div{min-width:0;padding-top:18px;border-top:2px solid var(--linha)}
.partes h3{font-size:20px;margin-bottom:6px}
.partes p{color:var(--suave);margin:0;font-size:16px}

.porte{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.porte div{border:1px solid var(--linha);border-radius:14px;background:var(--cartao);padding:24px;min-width:0}
.porte b{display:block;font-size:13px;font-weight:700;color:var(--acento);margin-bottom:10px;letter-spacing:.3px}
.porte h3{font-size:22px;margin-bottom:8px}
.porte p{color:var(--suave);margin:0;font-size:16px}

.tabela{overflow-x:auto;margin:20px 0}
.tabela table{width:100%;border-collapse:collapse;font-size:16px}
.tabela th,.tabela td{text-align:left;padding:12px 14px 12px 0;border-bottom:1px solid var(--linha);vertical-align:top}
.tabela thead th{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--suave);border-bottom:2px solid var(--texto)}
.nota{font-size:13.5px;color:var(--suave);line-height:1.55;margin:14px 0 0}

details{border-bottom:1px solid var(--linha);padding-block:18px}
details:first-of-type{border-top:1px solid var(--linha)}
summary{cursor:pointer;font-weight:700;font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--acento);font-weight:600}
details[open] summary::after{content:"−"}
details p{color:var(--suave);margin:10px 0 0}

.diag{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.diag h2{font-size:clamp(28px,3.4vw,40px)}
.canais{display:grid;gap:12px}
.canal{border:1px solid var(--linha);border-radius:12px;background:var(--cartao);padding:16px 18px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.escura .canal{background:rgba(255,255,255,.05);border-color:var(--ardosia-linha)}
.canal span{color:var(--suave);font-size:14px;font-weight:600}
.escura .canal span{color:var(--ardosia-suave)}
.canal strong{font-weight:700}

/* ferramenta de pedido */
.calc-bloco{border:1px solid var(--linha);border-radius:18px;background:var(--cartao);padding:34px}
.calc-bloco .cab{margin-bottom:26px}
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px}
.calc form{display:grid;gap:22px;align-content:start}
fieldset{border:none;padding:0;margin:0;display:grid;gap:12px;min-width:0}
legend{font-weight:700;font-size:13px;letter-spacing:.6px;text-transform:uppercase;color:var(--suave);margin-bottom:8px;padding:0}
label{display:grid;gap:4px;font-size:15px;font-weight:600}
input,select{font:inherit;font-weight:500;font-size:15.5px;padding:10px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--fundo);color:var(--texto);width:100%}
input:focus,select:focus{border-color:var(--acento);outline:none}
input.erro{border-color:#b3261e;outline:1px solid #b3261e}
.resultado{min-width:0;align-self:start}
.resumo-pedido{border:1px solid var(--linha);border-radius:14px;overflow:hidden}
.resumo-pedido div{display:flex;justify-content:space-between;gap:14px;padding:11px 16px;border-bottom:1px solid var(--linha);font-size:15px}
.resumo-pedido div:last-child{border-bottom:none}
.resumo-pedido span{color:var(--suave)}
.resumo-pedido b{text-align:right;overflow-wrap:anywhere}
.veredito{margin:14px 0 0;padding:13px 16px;background:var(--suave-fundo);font-size:15.5px;border-radius:10px;border-left:3px solid var(--ardosia)}
.veredito.alerta{background:var(--alerta-fundo);border-left-color:var(--acento)}

/* rodapé */
footer{background:var(--ardosia);color:var(--ardosia-texto);padding-block:32px;font-size:13.5px}
footer .miolo{display:grid;gap:8px;opacity:.88}
footer a{color:var(--ardosia-texto)}
footer .mapa{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:8px}
footer .mapa a{text-decoration:none;font-weight:600}

/* páginas de guia */
.migalhas{font-size:14px;color:var(--suave);padding-block:18px 0}
.migalhas a{color:var(--suave);text-decoration:none}
.migalhas a:hover{text-decoration:underline}
.guia-topo{padding-block:34px 38px;border-bottom:1px solid var(--linha)}
.guia-topo h1{font-size:clamp(32px,4.4vw,50px);line-height:1.08;letter-spacing:-1px;max-width:22em;font-weight:800}
.guia-topo .resumo{font-size:19px;color:var(--suave);max-width:38em;margin:18px 0 0}
.guia-topo .data{font-family:var(--mono);font-size:12.5px;color:var(--suave);margin-top:18px}
.guia{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:64px;padding-block:44px 72px}
.artigo{min-width:0;max-width:740px}
.artigo h2{font-size:28px;margin:44px 0 12px}
.artigo h2:first-child{margin-top:0}
.artigo h3{font-size:21px;margin:28px 0 6px}
.artigo ul,.artigo ol{padding-left:22px}
.artigo li{margin:7px 0}
.destaque-caixa{border-left:3px solid var(--acento);background:var(--suave-fundo);border-radius:0 10px 10px 0;padding:16px 20px;margin:24px 0}
.destaque-caixa p{margin:0}
.fontes{font-size:14px;color:var(--suave);border-top:1px solid var(--linha);margin-top:44px;padding-top:18px}
.fontes ol{padding-left:20px}
.fontes a{word-break:break-word}
.lateral{position:sticky;top:24px;align-self:start;display:grid;gap:18px}
.cartao-cta{background:var(--ardosia);color:var(--ardosia-texto);border-radius:16px;padding:22px}
.cartao-cta h3{font-size:20px;margin-bottom:8px}
.cartao-cta p{color:var(--ardosia-suave);font-size:15px;margin:0 0 16px}
.cartao-cta .botao{display:block;text-align:center}
.indice{font-size:15px}
.indice strong{display:block;font-size:12.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--suave);margin-bottom:8px;font-weight:700}
.indice a{display:block;color:var(--texto);text-decoration:none;padding:6px 0;border-bottom:1px solid var(--linha)}
.indice a:hover{color:var(--acento)}

@media (max-width:1000px){
  .etapas{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .heroi .grade,.calc,.diag{grid-template-columns:1fr;gap:36px}
  .guia{grid-template-columns:1fr;gap:32px}
  .lateral{position:static}
  .partes,.porte,.trilhas{grid-template-columns:1fr}
  .menu a:not(.botao){display:none}
}
@media (max-width:560px){
  .etapas,.quadro-col{grid-template-columns:1fr}
  .calc-bloco{padding:20px}
  .heroi{padding-block:48px}
  .resumo-pedido div{flex-direction:column;gap:2px}
  .resumo-pedido b{text-align:left}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* vircos.ai: peças próprias */
.escura .botao{color:var(--sobre)}
.escura .botao.sec{color:var(--ardosia-texto);border-color:var(--ardosia-linha)}
.escura .botao.sec:hover{background:rgba(255,255,255,.08)}
.escura .canal{color:var(--ardosia-texto)}
.escura .canal a{color:var(--ardosia-texto)}
.marca-logo{display:block;height:56px;width:auto;margin-bottom:26px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .marca-logo{content:url("/assets/img/logo-vircos-branco.png")}}
.logos-titulo{text-align:center;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--suave);margin:0 0 22px}
.logos{display:grid;grid-template-columns:repeat(8,1fr);gap:14px;align-items:center}
.logos img{width:100%;height:64px;object-fit:contain;background:#fff;border:1px solid var(--linha);border-radius:10px;padding:8px}
.numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.numeros div{border:1px solid var(--ardosia-linha);border-radius:14px;padding:22px;background:rgba(255,255,255,.04);min-width:0}
.numeros strong{display:block;font-size:40px;font-weight:800;letter-spacing:-1px;line-height:1.05;color:#fff}
.numeros span{display:block;color:var(--ardosia-suave);font-size:15px;margin-top:8px}
.casos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.casos a{display:block;border:1px solid var(--linha);border-radius:16px;padding:24px;background:var(--cartao);color:var(--texto);text-decoration:none;min-width:0;transition:border-color .15s,transform .15s}
.casos a:hover{border-color:var(--acento);transform:translateY(-2px)}
.casos strong{display:block;font-size:30px;font-weight:800;letter-spacing:-.6px;line-height:1.1}
.casos b{display:block;font-size:12.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--acento);margin:6px 0 12px}
.casos p{color:var(--suave);margin:0;font-size:15.5px}
.porte{grid-template-columns:repeat(4,1fr)}
.fotos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}
.fotos img{width:100%;height:320px;object-fit:cover;border-radius:12px;border:1px solid var(--linha)}
.fotos figcaption{grid-column:1/-1;font-size:14px;color:var(--suave)}
@media (max-width:900px){.logos{grid-template-columns:repeat(4,1fr)}.numeros,.casos,.porte{grid-template-columns:1fr 1fr}.fotos{grid-template-columns:1fr}}
@media (max-width:560px){.logos{grid-template-columns:repeat(3,1fr)}.numeros,.casos,.porte{grid-template-columns:1fr}}
