/* ============================================================
   Teraply — Blog
   Folha compartilhada. Foco em leitura longa: medida curta,
   entrelinha generosa, serifa no corpo do texto.
   ============================================================ */

:root{
  --tinta:#1A2740;        /* títulos */
  --texto:#2B3642;        /* corpo — um pouco mais leve que o título */
  --suave:#6B7784;        /* metadados, legendas */
  --azul:#256D9E;
  --azul-claro:#EEF6FC;
  --verde:#287F51;
  --verde-claro:#EAF8EF;
  --ambar:#B8791A;
  --ambar-claro:#FBF5E9;
  --linha:#E8ECEF;
  --papel:#FDFDFC;        /* fundo levemente quente */
  --branco:#FFFFFF;
  --medida:700px;         /* largura de leitura ~68 caracteres */
}

*{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}

body{
  font-family:'Lora',Georgia,serif;
  font-size:19px;
  line-height:1.8;
  color:var(--texto);
  background:var(--papel);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

a{color:var(--azul);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}

/* ── Barra de progresso de leitura ──────────────────── */
.progresso{
  position:fixed;top:0;left:0;height:3px;width:0%;
  background:linear-gradient(90deg,var(--azul),var(--verde));
  z-index:100;transition:width .1s linear;
}

/* ── Cabeçalho ─────────────────────────────────────── */
.bh{
  background:rgba(253,253,252,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--linha);
  position:sticky;top:0;z-index:60;
}
.bh-in{
  max-width:1120px;margin:0 auto;padding:16px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.bh-logo{
  font-family:'Sora',sans-serif;font-weight:800;font-size:1.28rem;
  color:var(--azul);letter-spacing:-.5px;
}
.bh-logo span{
  font-family:'DM Sans',sans-serif;color:var(--suave);
  font-weight:400;font-size:.8rem;margin-left:9px;letter-spacing:0;
}
.bh-nav{display:flex;gap:22px;align-items:center;
  font-family:'DM Sans',sans-serif;font-size:.9rem}
.bh-nav a{color:var(--texto)}
.bh-btn{
  background:var(--verde);color:var(--branco)!important;
  padding:9px 20px;border-radius:10px;font-weight:700;font-size:.86rem;
}
.bh-btn:hover{background:#20663f;text-decoration:none}
@media(max-width:700px){
  .bh-nav a:not(.bh-btn){display:none}
  .bh-logo span{display:none}
  .bh-in{padding:14px 20px}
}

/* ── Abertura do índice ────────────────────────────── */
.abertura{
  max-width:var(--medida);margin:0 auto;
  padding:76px 28px 56px;text-align:center;
}
.abertura .selo{
  font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--verde);
  display:block;margin-bottom:18px;
}
.abertura h1{
  font-family:'Sora',sans-serif;font-size:2.6rem;line-height:1.14;
  font-weight:800;color:var(--tinta);letter-spacing:-1.1px;margin-bottom:20px;
}
.abertura p{font-size:1.14rem;color:var(--suave);line-height:1.7}
@media(max-width:700px){
  .abertura{padding:52px 22px 40px}
  .abertura h1{font-size:1.85rem;letter-spacing:-.6px}
  .abertura p{font-size:1.02rem}
}

/* ── Lista de artigos ──────────────────────────────── */
.lista{max-width:var(--medida);margin:0 auto;padding:0 28px 90px}

.post{
  padding:38px 0;border-top:1px solid var(--linha);
  display:block;color:inherit;
}
.post:first-child{border-top:none;padding-top:8px}
.post:hover{text-decoration:none}
.post:hover h2{color:var(--azul)}

.post .marca{
  font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--verde);
  display:block;margin-bottom:10px;
}
.post h2{
  font-family:'Sora',sans-serif;font-size:1.6rem;line-height:1.28;
  font-weight:700;color:var(--tinta);letter-spacing:-.4px;
  margin-bottom:12px;transition:color .15s;
}
.post .resumo{color:var(--suave);font-size:1.02rem;line-height:1.72;margin-bottom:14px}
.post .meta{
  font-family:'DM Sans',sans-serif;font-size:.84rem;color:var(--suave);
  display:flex;gap:14px;align-items:center;flex-wrap:wrap;
}
.post .meta .ponto{width:3px;height:3px;border-radius:50%;background:var(--linha)}
@media(max-width:700px){.post h2{font-size:1.3rem}.lista{padding:0 22px 60px}}

/* ── Artigo ────────────────────────────────────────── */
.artigo{max-width:var(--medida);margin:0 auto;padding:52px 28px 40px}
@media(max-width:700px){.artigo{padding:36px 22px 30px}}

.trilha{
  font-family:'DM Sans',sans-serif;font-size:.84rem;
  color:var(--suave);margin-bottom:26px;
}
.trilha a{color:var(--suave)}

.marca-cat{
  font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--verde);
  display:block;margin-bottom:16px;
}

.artigo h1{
  font-family:'Sora',sans-serif;font-size:2.5rem;line-height:1.16;
  font-weight:800;color:var(--tinta);letter-spacing:-1px;margin-bottom:22px;
}
.abre{
  font-size:1.2rem;line-height:1.68;color:var(--suave);
  margin-bottom:34px;
}
@media(max-width:700px){
  .artigo h1{font-size:1.72rem;letter-spacing:-.5px}
  .abre{font-size:1.05rem}
}

/* assinatura */
.assina{
  display:flex;align-items:center;gap:14px;
  padding:20px 0;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);
  margin-bottom:44px;font-family:'DM Sans',sans-serif;
}
.assina-av{
  width:42px;height:42px;border-radius:50%;flex-shrink:0;
  background:var(--azul-claro);color:var(--azul);
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:.95rem;
}
.assina-nome{font-size:.92rem;font-weight:700;color:var(--tinta);line-height:1.35}
.assina-info{font-size:.82rem;color:var(--suave);line-height:1.4}

/* corpo do texto */
.corpo > p{margin-bottom:26px}
.corpo h2{
  font-family:'Sora',sans-serif;font-size:1.5rem;line-height:1.3;
  font-weight:700;color:var(--tinta);letter-spacing:-.3px;
  margin:52px 0 18px;
}
.corpo h3{
  font-family:'Sora',sans-serif;font-size:1.13rem;font-weight:700;
  color:var(--tinta);margin:36px 0 12px;
}
.corpo ul,.corpo ol{margin:0 0 26px 26px}
.corpo li{margin-bottom:11px}
.corpo strong{font-weight:700;color:var(--tinta)}
.corpo em{font-style:italic}
@media(max-width:700px){.corpo h2{font-size:1.28rem;margin:40px 0 14px}}

/* citação de destaque */
.destaque{
  font-family:'Sora',sans-serif;font-size:1.32rem;line-height:1.5;
  font-weight:700;color:var(--tinta);letter-spacing:-.3px;
  border-left:3px solid var(--verde);padding:6px 0 6px 26px;
  margin:44px 0;
}
@media(max-width:700px){.destaque{font-size:1.1rem;padding-left:20px;margin:34px 0}}

/* caixas */
.caixa{
  border-radius:14px;padding:24px 28px;margin:38px 0;
  font-size:1rem;line-height:1.7;
}
.caixa p:last-child{margin-bottom:0}
.caixa p{margin-bottom:14px}
.caixa .rot{
  font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;display:block;
}
.cx-azul{background:var(--azul-claro)}
.cx-azul .rot{color:var(--azul)}
.cx-verde{background:var(--verde-claro)}
.cx-verde .rot{color:var(--verde)}
.cx-ambar{background:var(--ambar-claro)}
.cx-ambar .rot{color:var(--ambar)}
@media(max-width:700px){.caixa{padding:20px 22px;margin:30px 0}}

/* separador */
.sep{
  border:none;height:1px;background:var(--linha);
  margin:52px auto;max-width:180px;
}

/* chamada para o produto */
.cta{
  background:var(--tinta);border-radius:18px;
  padding:36px 34px;margin:52px 0;text-align:center;
}
.cta h3{
  font-family:'Sora',sans-serif;font-size:1.32rem;font-weight:800;
  color:var(--branco);margin-bottom:12px;letter-spacing:-.3px;
}
.cta p{
  font-family:'DM Sans',sans-serif;font-size:.98rem;line-height:1.65;
  color:rgba(255,255,255,.72);margin-bottom:22px;
}
.cta a{
  display:inline-block;background:var(--verde);color:var(--branco);
  font-family:'DM Sans',sans-serif;font-weight:700;font-size:.95rem;
  padding:14px 30px;border-radius:11px;
}
.cta a:hover{background:#2E9159;text-decoration:none}
.cta .obs{
  font-family:'DM Sans',sans-serif;font-size:.8rem;
  color:rgba(255,255,255,.5);margin:14px 0 0;
}
@media(max-width:700px){.cta{padding:28px 24px;border-radius:14px}}

/* leia também */
.tambem{max-width:var(--medida);margin:0 auto;padding:0 28px 80px}
.tambem-rot{
  font-family:'DM Sans',sans-serif;font-size:.76rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--suave);
  margin-bottom:18px;padding-top:44px;border-top:1px solid var(--linha);
}
.tambem a{
  display:block;padding:20px 0;border-bottom:1px solid var(--linha);
  color:inherit;
}
.tambem a:hover{text-decoration:none}
.tambem a:hover .t{color:var(--azul)}
.tambem .t{
  font-family:'Sora',sans-serif;font-size:1.06rem;font-weight:700;
  color:var(--tinta);line-height:1.4;transition:color .15s;
}
.tambem .d{font-size:.94rem;color:var(--suave);margin-top:5px}
@media(max-width:700px){.tambem{padding:0 22px 56px}}

/* nota de rodapé do artigo */
.nota-fim{
  font-family:'DM Sans',sans-serif;font-size:.86rem;line-height:1.65;
  color:var(--suave);background:var(--branco);
  border:1px solid var(--linha);border-radius:12px;
  padding:20px 24px;margin:44px 0 0;
}

/* ── Rodapé ────────────────────────────────────────── */
.bf{
  background:var(--branco);border-top:1px solid var(--linha);
  padding:44px 28px;font-family:'DM Sans',sans-serif;
}
.bf-in{
  max-width:1120px;margin:0 auto;display:flex;
  justify-content:space-between;gap:22px;flex-wrap:wrap;align-items:center;
  font-size:.88rem;color:var(--suave);
}
.bf-links{display:flex;gap:22px;flex-wrap:wrap}
