/* Conteudo SEO Engine v1.0 — layout base (cores/tamanhos vêm do CSS escopado
 * por bloco, gerado no render). Mobile-first, sem dependências. */
.cse-app{max-width:860px;margin:0 auto 28px;line-height:1.6;font-family:inherit}
.cse-app *{box-sizing:border-box}
.cse-title{margin:0 0 10px;line-height:1.25;font-weight:800}
.cse-intro{margin:0 0 18px}

/* slots de anúncio */
.cse-ad{margin:14px 0;text-align:center;overflow:hidden}

/* ---------- FAQ (accordion nativo details/summary) ---------- */
.cse-faq{display:flex;flex-direction:column;gap:10px}
.cse-faq-item{padding:0}
.cse-faq-q{position:relative;display:block;cursor:pointer;padding:14px 44px 14px 16px;list-style:none;font-weight:700}
.cse-faq-q::-webkit-details-marker{display:none}
.cse-faq-q h3{display:inline;margin:0;font-size:1.05em;font-weight:700;line-height:1.35}
.cse-faq-icon{position:absolute;right:16px;top:13px;font-weight:800;font-size:20px;line-height:1.35}
.cse-faq-icon::before{content:"+"}
.cse-faq-item[open] .cse-faq-icon::before{content:"\2212"}
.cse-faq-a{padding:0 16px 14px}
.cse-faq-a p{margin:0 0 10px}
.cse-faq-a p:last-child{margin-bottom:0}

/* ---------- Glossário ---------- */
.cse-gloss{margin:0 0 14px}
.cse-gloss-term{font-size:1.25em;font-weight:800;margin:0 0 8px}
.cse-gloss-def{margin:0;padding:14px 16px;font-weight:500}
.cse-gloss-body p{margin:0 0 12px}
.cse-gloss-syn{margin:12px 0 0;font-size:.95em}

/* ---------- Passo a passo ---------- */
.cse-steps{list-style:none;margin:0;padding:0;counter-reset:cse-step}
.cse-steps li.cse-step{counter-increment:cse-step;position:relative;padding:0 0 18px 56px;margin:0}
.cse-steps li.cse-step::before{content:counter(cse-step);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px}
.cse-step-name{margin:0 0 6px;font-size:1.08em;font-weight:700;line-height:38px;min-height:38px}
.cse-step-text{margin:0}
.cse-step-img{display:block;max-width:100%;height:auto;margin:10px 0 0;border-radius:8px}

/* ---------- Pontos-chave ---------- */
.cse-points{list-style:none;margin:0;padding:0}
.cse-points li{position:relative;padding:0 0 10px 28px;margin:0}
.cse-points li::before{content:"\2726";position:absolute;left:2px;top:0;font-size:15px;line-height:inherit}

/* ---------- Comparação (tabela responsiva: rola de lado no mobile) ---------- */
.cse-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0}
.cse-table{width:100%;border-collapse:collapse;min-width:480px}
.cse-table th,.cse-table td{padding:10px 12px;text-align:left;vertical-align:top}
.cse-table th[scope=row]{font-weight:700}

/* ---------- Captura de lead ---------- */
.cse-lead{margin:20px 0 0;padding:18px}
.cse-lead-title{margin:0 0 4px;font-weight:800;font-size:1.1em}
.cse-lead-text{margin:0 0 12px}
.cse-lead-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.cse-field{flex:1 1 180px;font-size:.9em;font-weight:600}
.cse-field input{width:100%;padding:9px 10px;border:1px solid #cfc7b8;border-radius:8px;font-size:15px}
.cse-lead-btn{border:0;cursor:pointer;padding:10px 22px;font-weight:700;font-size:15px}
.cse-lead-msg{flex-basis:100%;margin:4px 0 0;font-size:.92em}
.cse-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0}

@media(max-width:520px){
  .cse-lead-form{flex-direction:column;align-items:stretch}
}
