:root{
  --roxo:#b84dff; --roxo-escuro:#8b2fd6; --tinta:#1c1230; --tinta-suave:#4a4360;
  --muted:#6b6b7b; --linha:#ececf2; --bg:#ffffff; --bg-suave:#faf7ff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--tinta);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.7;font-size:18px;-webkit-font-smoothing:antialiased;
}
a{color:var(--roxo-escuro);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

/* Cabecalho */
.topo{
  position:sticky;top:0;z-index:10;background:rgba(255,255,255,.92);
  backdrop-filter:saturate(150%) blur(8px);border-bottom:1px solid var(--linha);
}
.topo .barra{max-width:880px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:12px}
.topo .logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--tinta)}
.topo .logo img{width:34px;height:34px;border-radius:9px}
.topo nav{margin-left:auto;display:flex;gap:18px;font-weight:600}
.topo nav a{color:var(--tinta-suave)}

/* Conteudo */
.conteudo{max-width:760px;margin:0 auto;padding:32px 20px 8px}
.eyebrow{color:var(--roxo-escuro);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:13px;margin:0 0 8px}
h1{font-size:34px;line-height:1.2;margin:0 0 10px;letter-spacing:-.01em}
h2{font-size:25px;line-height:1.25;margin:38px 0 10px}
h3{font-size:20px;margin:26px 0 8px}
.meta{color:var(--muted);font-size:15px;margin:0 0 22px}
.lead{font-size:21px;color:var(--tinta-suave)}
figure{margin:26px 0}
figure img{border-radius:16px;border:1px solid var(--linha);margin:0 auto;box-shadow:0 12px 40px rgba(120,60,200,.12)}
figure.tela img{max-width:300px}
figcaption{color:var(--muted);font-size:14px;text-align:center;margin-top:10px}
ul,ol{padding-left:22px}
li{margin:8px 0}
blockquote{margin:24px 0;padding:14px 20px;border-left:4px solid var(--roxo);background:var(--bg-suave);border-radius:0 12px 12px 0;color:var(--tinta-suave)}

/* Caixa de CTA */
.cta{
  margin:40px 0;padding:26px;border-radius:20px;text-align:center;
  background:linear-gradient(135deg,#b84dff,#7a2fd0);color:#fff;
}
.cta h3{margin:0 0 6px;color:#fff;font-size:22px}
.cta p{margin:0 0 16px;opacity:.92}
.btn{
  display:inline-block;background:#fff;color:var(--roxo-escuro);font-weight:800;
  padding:14px 26px;border-radius:999px;text-decoration:none
}
.btn:hover{text-decoration:none;transform:translateY(-1px)}

/* Grade do indice do blog */
.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0}
.card{border:1px solid var(--linha);border-radius:18px;overflow:hidden;background:#fff;transition:.15s}
.card:hover{box-shadow:0 14px 40px rgba(120,60,200,.14);transform:translateY(-2px)}
.card a{color:inherit}
.card .thumb{aspect-ratio:16/9;background:var(--bg-suave);display:flex;align-items:center;justify-content:center;overflow:hidden}
.card .thumb img{max-height:150px;border-radius:10px}
.card .corpo{padding:16px 18px}
.card h3{margin:0 0 6px;font-size:19px}
.card p{margin:0;color:var(--muted);font-size:15px}

/* Rodape */
footer{max-width:760px;margin:30px auto 0;padding:24px 20px 40px;border-top:1px solid var(--linha);color:var(--muted);font-size:14px}
footer a{color:var(--muted)}
.voltar{display:inline-block;margin:8px 0 0;font-weight:600}

@media (max-width:640px){
  body{font-size:17px}
  h1{font-size:28px}
  .cards{grid-template-columns:1fr}
}
