/* Blog do AtendeChat — herda os tokens de design da home */
:root{
  --bg:#fafafa; --bg-soft:#f4f4f5; --ink:#18181b; --ink-2:#3f3f46; --ink-3:#71717a;
  --line:#e4e4e7; --line-2:#ededef; --white:#ffffff;
  --accent:#4E3191; --accent-2:#6b46c1; --accent-soft:#efeafb; --green:#16a34a;
  --r:16px; --r-lg:24px; --maxw:1140px; --readw:720px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:'Geist',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:17px; line-height:1.7; -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none}
/* Sublinhado so no texto corrido. Como regra global ele pegava tambem
   o menu, o rodape e os cards — a home nao faz isso em lugar nenhum. */
article a:hover,.sources a:hover,.lede a:hover{text-decoration:underline}
/* .wrap e footer vem de nav.css, extraidos da home. */
/* padding em vez de margin na migalha: margem colapsaria atraves do
   main (que nao tem padding-top) e o respiro viraria imprevisivel. */
.read{max-width:var(--readw);margin:0 auto;padding-top:40px}
/* Sem isso o prev/next e o CTA encostam na borda do rodape.
   Precisa ser "main.wrap" e nao "main": o .wrap da home usa o shorthand
   "padding:0 24px", que zera o padding-bottom e, sendo classe (0,1,0),
   vence um seletor de elemento (0,0,1) em qualquer ordem de arquivo. */
main.wrap{padding-bottom:104px}

/* ---------- topo ----------
   A navegacao vem de nav.css, extraido automaticamente do index.html
   pelo build.py. Nao redefina .nav / .btn aqui: a home e a fonte unica.
   --navh e a altura real da nav (fixed), medida no build. O conteudo
   se afasta exatamente isso e o respiro visual fica por conta de cada
   secao — assim os espacos nao se somam. */
body{padding-top:var(--navh,70px)}

/* ---------- cabecalho do artigo ---------- */
.crumbs{font-size:14px;color:var(--ink-3);margin:0 0 16px}
.crumbs a{color:var(--ink-3)}
.crumbs a:hover{color:var(--accent)}
.cat{
  display:inline-block;background:var(--accent-soft);color:var(--accent);
  font-size:12.5px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;
  padding:5px 12px;border-radius:999px;
}
h1{
  font-family:'Fraunces',Georgia,serif;font-weight:600;
  font-size:clamp(30px,5vw,46px);line-height:1.15;letter-spacing:-.02em;
  margin:18px 0 14px;
}
.lede{font-size:19px;color:var(--ink-2);margin:0 0 20px}
.byline{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;
  font-size:14.5px;color:var(--ink-3);
  padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:32px;
}
.byline .upd{color:var(--ink-3)}
.byline .by strong{color:var(--ink-2);font-weight:600}

/* ---------- corpo ---------- */
article h2{
  font-family:'Fraunces',Georgia,serif;font-weight:600;
  font-size:clamp(23px,3.4vw,31px);line-height:1.25;letter-spacing:-.015em;
  margin:46px 0 14px;
}
article h3{font-size:20px;font-weight:600;margin:32px 0 10px;line-height:1.35}
article p{margin:0 0 20px}
article ul,article ol{margin:0 0 22px;padding-left:24px}
article li{margin-bottom:9px}
article li::marker{color:var(--accent)}
article strong{font-weight:600;color:var(--ink)}
article hr{border:0;border-top:1px solid var(--line);margin:44px 0}

article blockquote{
  margin:28px 0;padding:18px 24px;background:var(--white);
  border-left:3px solid var(--accent);border-radius:0 var(--r) var(--r) 0;
  color:var(--ink-2);
}
article blockquote p:last-child{margin-bottom:0}

article code{
  background:var(--bg-soft);border:1px solid var(--line-2);border-radius:6px;
  padding:2px 6px;font-size:.88em;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
article pre{
  background:#1c1a24;color:#e9e6f2;padding:18px 20px;border-radius:var(--r);
  overflow-x:auto;margin:26px 0;font-size:14.5px;line-height:1.6;
}
article pre code{background:none;border:0;padding:0;color:inherit}

.tablewrap{overflow-x:auto;margin:26px 0}
article table{border-collapse:collapse;width:100%;font-size:15.5px;background:var(--white)}
article th,article td{padding:12px 15px;border:1px solid var(--line);text-align:left;vertical-align:top}
article th{background:var(--bg-soft);font-weight:600}

article figure{margin:30px 0}
article figcaption{font-size:14px;color:var(--ink-3);margin-top:9px;text-align:center}
article img{border-radius:var(--r);border:1px solid var(--line)}

.video{position:relative;padding-bottom:56.25%;height:0;margin:32px 0;
  border-radius:var(--r);overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- fontes ---------- */
.sources{
  margin:52px 0 0;padding:24px 26px;background:var(--white);
  border:1px solid var(--line);border-radius:var(--r);
}
.sources h2{font-family:'Geist',sans-serif;font-size:15px;font-weight:600;
  text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:0 0 12px}
.sources ol{margin:0;padding-left:20px;font-size:15px}
.sources li{margin-bottom:7px;color:var(--ink-2)}
.sources a{word-break:break-word}

/* ---------- compartilhar ---------- */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:44px 0 0;
  padding-top:26px;border-top:1px solid var(--line)}
.share-lbl{font-size:14px;color:var(--ink-3);margin-right:4px}
.sh{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:100px;
  font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;
  background:var(--white);border:1px solid var(--line);color:var(--ink-2);
  transition:.2s var(--ease)}
.sh:hover{text-decoration:none;transform:translateY(-1px);color:#fff}
.sh svg{flex:none}
.sh-whatsapp:hover{background:#25D366;border-color:#25D366}
.sh-linkedin:hover{background:#0a66c2;border-color:#0a66c2}
.sh-facebook:hover{background:#1877f2;border-color:#1877f2}
.sh-x:hover{background:#18181b;border-color:#18181b}
.sh-copiar:hover{background:var(--accent);border-color:var(--accent)}
.sh-copiar.ok{background:var(--green);border-color:var(--green);color:#fff}
@media(max-width:600px){
  .share{gap:6px;margin-top:36px;padding-top:22px}
  .sh{padding:8px 12px;font-size:13.5px}
  .sh span{display:none}
  .sh-copiar span{display:inline}
}

/* ---------- CTA ---------- */
.cta{
  margin:56px 0 0;padding:38px 34px;border-radius:var(--r-lg);
  background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);
  color:#fff;text-align:center;
}
.cta h2{font-family:'Fraunces',Georgia,serif;font-size:27px;margin:0 0 10px;color:#fff}
.cta p{margin:0 0 22px;opacity:.92;font-size:16.5px}
.cta-acoes{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.cta .btn{background:#fff;color:var(--accent)}
.cta .btn:hover{background:#f4f4f5}
.cta .btn-wa{background:#25D366;color:#fff}
.cta .btn-wa:hover{background:#1eb95a}
@media(max-width:520px){.cta-acoes .btn{width:100%}}

/* ---------- anterior/proximo ---------- */
.prevnext{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:56px 0 0}
.pn{
  padding:18px 20px;background:var(--white);border:1px solid var(--line);
  border-radius:var(--r);display:flex;flex-direction:column;gap:5px;
  transition:border-color .2s,transform .2s var(--ease);
}
.pn:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}
.pn span{font-size:13px;color:var(--ink-3)}
.pn strong{font-size:15.5px;font-weight:550;color:var(--ink);line-height:1.4}
.pn.next{text-align:right}
@media(max-width:640px){.prevnext{grid-template-columns:1fr}.pn.next{text-align:left}}

/* ---------- CTA do topo das paginas comerciais ---------- */
.pagetop-cta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 32px;
  padding-bottom:30px;border-bottom:1px solid var(--line)}

/* ---------- indice ---------- */
.hero{padding:52px 0 36px;border-bottom:1px solid var(--line);margin-bottom:40px}
.hero h1{margin:0 0 12px}
.hero p{font-size:18.5px;color:var(--ink-2);max-width:640px;margin:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);
  transition:border-color .2s,transform .2s var(--ease),box-shadow .2s}
.card:hover{border-color:var(--accent);transform:translateY(-3px);
  box-shadow:0 12px 28px -14px rgba(78,49,145,.3)}
.card a{display:block;padding:26px 26px 24px;color:inherit}
.card a:hover{text-decoration:none}
.card h2{font-family:'Fraunces',Georgia,serif;font-size:21px;font-weight:600;
  line-height:1.3;margin:13px 0 9px;letter-spacing:-.01em}
.card p{color:var(--ink-2);font-size:15.5px;margin:0 0 15px}
.card .meta{font-size:13.5px;color:var(--ink-3)}
.empty{color:var(--ink-3)}

/* ---------- busca ---------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.busca{position:relative;display:flex;align-items:center;
  max-width:480px;margin:26px 0 0}
.busca-lupa{position:absolute;left:16px;color:var(--ink-3);pointer-events:none;
  transition:color .2s var(--ease)}
.busca:focus-within .busca-lupa{color:var(--accent)}
.busca input{width:100%;box-sizing:border-box;
  padding:13px 44px 13px 44px;
  font-family:inherit;font-size:16px;color:var(--ink);
  background:var(--white);border:1px solid var(--line);border-radius:100px;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.busca input::placeholder{color:var(--ink-3)}
.busca input:focus{outline:none;border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(78,49,145,.12)}
/* O X nativo do type=search briga com o nosso botao. */
.busca input::-webkit-search-cancel-button{display:none}
.busca-x{position:absolute;right:8px;display:flex;align-items:center;
  justify-content:center;width:30px;height:30px;padding:0;
  color:var(--ink-3);background:transparent;border:0;border-radius:100px;
  cursor:pointer;transition:.2s var(--ease)}
.busca-x:hover{color:var(--accent);background:var(--bg-soft)}
.busca-status{font-size:15px;color:var(--ink-2);margin:0 0 22px}
.busca-status strong{color:var(--ink);font-weight:600}
.busca-status em{font-style:normal;color:var(--accent)}
mark{background:var(--accent-soft);color:inherit;
  padding:0 2px;border-radius:3px}

/* ---------- paginacao ---------- */
.paginacao{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:8px;margin:48px 0 0;padding-top:34px;border-top:1px solid var(--line)}
.pg{display:inline-flex;align-items:center;justify-content:center;
  min-width:42px;height:42px;padding:0 14px;border-radius:100px;
  font-size:15px;font-weight:500;color:var(--ink-2);
  background:var(--white);border:1px solid var(--line);
  transition:.2s var(--ease)}
.pg:hover{border-color:var(--accent);color:var(--accent);text-decoration:none;
  transform:translateY(-1px)}
.pg-atual{background:var(--accent);border-color:var(--accent);color:#fff;cursor:default}
.pg-atual:hover{transform:none}
.pg-nav{font-weight:500}
.hero-pg{display:inline-block;font-size:14px;color:var(--ink-3);
  background:var(--bg-soft);padding:4px 12px;border-radius:100px;margin-bottom:10px}
@media(max-width:600px){
  .paginacao{gap:6px;margin-top:36px;padding-top:26px}
  .pg{min-width:38px;height:38px;padding:0 10px;font-size:14px}
  .pg-nav{padding:0 12px}
}

/* ---------- respiro no mobile (mesmos breakpoints da home) ---------- */
@media(max-width:600px){
  .read{padding-top:28px}
  .crumbs{margin:0 0 14px}
  .hero{padding:34px 0 28px;margin-bottom:32px}
  .byline{padding-bottom:20px;margin-bottom:26px}
  article h2{margin:36px 0 12px}
  .cta{margin-top:44px;padding:30px 22px}
  .sources{margin-top:40px;padding:20px 20px}
  .prevnext{margin-top:42px}
  main.wrap{padding-bottom:76px}
  .grid{gap:16px}
}

/* ---------- sumario do artigo ---------- */
.toc{border:1px solid var(--line);border-radius:var(--r);
  padding:20px 22px;margin:0 0 34px;background:var(--bg-soft)}
.toc h2{font-family:'Geist',sans-serif;font-size:13px;font-weight:600;
  color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;
  margin:0 0 12px;border:0;padding:0}
.toc ol{margin:0;padding-left:19px;font-size:15.5px}
.toc li{margin-bottom:7px;color:var(--ink-2);line-height:1.45}
.toc li:last-child{margin-bottom:0}
.toc a{color:var(--ink-2)}
.toc a:hover{color:var(--accent)}

/* ---------- leia tambem ---------- */
.rel{margin:56px 0 0}
.rel > h2{font-family:'Geist',sans-serif;font-size:13px;font-weight:600;
  color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin:0 0 16px}
.rel-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.rel-card{background:var(--white);border:1px solid var(--line);
  border-radius:var(--r);transition:border-color .2s,transform .2s var(--ease),box-shadow .2s}
.rel-card:hover{border-color:var(--accent);transform:translateY(-2px);
  box-shadow:0 10px 24px -14px rgba(78,49,145,.3)}
.rel-card a{display:block;padding:18px 18px 16px;color:inherit}
.rel-card a:hover{text-decoration:none}
.rel-card .cat{margin-bottom:9px}
.rel-card strong{display:block;font-family:'Fraunces',Georgia,serif;
  font-size:16.5px;font-weight:600;line-height:1.32;color:var(--ink);
  letter-spacing:-.01em}
.rel-card .meta{display:block;margin-top:10px;font-size:13px;color:var(--ink-3)}
@media(max-width:860px){.rel-grid{grid-template-columns:1fr 1fr}
  .rel-card:nth-child(3){display:none}}
@media(max-width:560px){.rel-grid{grid-template-columns:1fr}
  .rel-card:nth-child(3){display:block}}

/* ---------- navegacao de categorias ---------- */
.cats{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 0}
.cats a{font-size:14px;color:var(--ink-2);background:var(--white);
  border:1px solid var(--line);border-radius:100px;padding:7px 15px;
  transition:border-color .2s,color .2s}
.cats a:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.cats a.on{background:var(--accent);border-color:var(--accent);color:#fff}
.cats .n{color:var(--ink-3);font-size:12.5px;margin-left:5px}
.cats a.on .n{color:rgba(255,255,255,.72)}

@media(max-width:600px){
  .toc{padding:17px 18px;margin-bottom:28px}
  .rel{margin-top:44px}
  .cats{gap:7px;margin-top:20px}
  .cats a{font-size:13.5px;padding:6px 13px}
}
