/* ===========================
   BLOG - Medical Laudos
   =========================== */

/* (opcional) Variáveis – mantém consistência mesmo se o style.css não for carregado */
:root{
  --primary-color:#0d47a1;
  --secondary-color:#1976d2;
  --accent-color:#2196f3;
  --light-color:#f5f5f5;
  --dark-color:#333333;
  --text-color:#444444;
  --white-color:#ffffff;
  --gray-color:#f0f0f0;
  --shadow:0 2px 10px rgba(0,0,0,.1);
  --transition:all .3s ease;
  --border-radius:5px;
  --section-padding:80px 0;
}

/* (opcional) Container padrão */
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}

/* ---- Grid de postagens ---- */
.posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:2rem;
}

.post-card{
  background:#fff;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;
  box-shadow:0 2px 6px rgba(0,0,0,.05);display:flex;flex-direction:column;
  transition:transform .2s ease;
}
.post-card:hover{ transform:translateY(-5px); }

.post-card img{ width:100%; height:200px; object-fit:cover; }

.post-card h2{ font-size:1.2rem; margin:1rem; color:#222; }

.post-card p{
  margin:0 1rem 1rem; color:#555; font-size:.95rem; line-height:1.5; flex-grow:1;
}

.post-card .btn-primary{ margin:0 1rem 1rem; display:inline-block; }

.post-date{ font-size:.8rem; color:#888; margin:0 1rem 1rem; }

main.section{ margin-top:40px; } /* ou padding-top */

/* ---- Página do Post ---- */
.post-detalhe{
  max-width:800px; margin:2rem auto; padding:1rem; background:#fff;
  border-radius:8px; box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.post-detalhe h1{ font-size:2rem; margin-bottom:.5rem; color:#222; }
.post-detalhe .post-date{ display:block; font-size:.9rem; color:#888; margin-bottom:1.5rem; }
.post-detalhe .post-img{ width:100%; border-radius:6px; margin-bottom:1.5rem; }
.post-detalhe .post-conteudo{ font-size:1.05rem; color:#444; line-height:1.7; margin-bottom:2rem; }

.btn-voltar{
  display:inline-block; padding:10px 20px; background:#0066cc; color:#fff;
  text-decoration:none; border-radius:4px; transition:background .3s;
}
.btn-voltar:hover{ background:#004c99; }

/* Fix: imagens lazy no blog não devem ficar ocultas */
img[loading="lazy"]{ opacity:1 !important; transition:none; }

/* =========================
   Footer (igual à página inicial)
========================= */
.site-footer{
  background:#f8fafc;
  color:var(--dark-color);
  padding:60px 0 30px;
  border-top:1px solid #e5e7eb;
}

.site-footer a{
  color:var(--dark-color);
}

.site-footer a:hover{
  color:var(--primary-color);
}

.footer-content{
  display:grid;
  grid-template-columns:minmax(260px,1.15fr) minmax(260px,1fr) minmax(240px,1fr);
  gap:48px;
  align-items:start;
}

.footer-info,
.footer-contact,
.footer-social{
  min-width:0;
}

.footer-logo{
  max-height:44px;
  width:auto;
  margin-bottom:20px;
}

.footer-info p{
  margin-bottom:10px;
  font-size:.95rem;
  color:var(--text-color);
}

.footer-contact h3,
.footer-social h3{
  font-size:1.2rem;
  margin-bottom:16px;
  position:relative;
  color:var(--dark-color);
}

.footer-contact h3::after,
.footer-social h3::after{
  content:"";
  display:block;
  width:40px;
  height:3px;
  background:var(--accent-color);
  margin-top:10px;
}

.footer-contact address{
  font-style:normal;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer-contact p{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:0;
}

.footer-contact i{
  color:var(--primary-color);
}

.footer-contact a{
  color:var(--dark-color);
}

.footer-contact a:hover{
  color:var(--primary-color);
}

.social-icons{
  margin-bottom:20px;
}

.social-icons ul{
  display:flex;
  gap:15px;
  margin:0;
  padding:0;
  flex-wrap:wrap;
  justify-content:flex-start;
  list-style:none;
}

.social-icons li{
  display:flex;
}

.social-icons a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#f1f5f9;
  color:var(--dark-color);
  border:1px solid #e2e8f0;
  transition:transform .3s ease, background .3s ease, color .3s ease;
}

.social-icons a:hover{
  background:var(--primary-color);
  color:#fff;
  transform:translateY(-2px);
}

.social-icons i{
  font-size:1.2rem;
}

.footer-legal{
  margin-top:8px;
}

.footer-legal ul{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0;
  padding:0;
  align-items:flex-start;
  list-style:none;
}

.footer-legal li{
  display:flex;
}

.footer-legal a{
  display:inline;
  background:none !important;
  padding:0 !important;
  border-radius:0 !important;
  line-height:1.4;
  text-decoration:none;
  color:var(--text-color);
}

.footer-legal a:hover{
  text-decoration:underline;
  color:var(--primary-color);
}

/* Responsividade do footer igual ao index */
@media (max-width:1200px){
  .footer-content{
    grid-template-columns:1fr 1fr;
    gap:32px;
  }

  .footer-info{
    grid-column:1 / -1;
  }
}

@media (max-width:768px){
  .footer-content{
    grid-template-columns:1fr;
    gap:30px;
    text-align:center;
  }

  .footer-info{
    grid-column:auto;
  }

  .footer-contact h3::after,
  .footer-social h3::after{
    margin-left:auto;
    margin-right:auto;
  }

  .footer-contact p{
    justify-content:center;
  }

  .social-icons ul,
  .footer-legal ul{
    justify-content:center;
    align-items:center;
  }
}

/* --- Listas dentro do conteúdo do post --- */
.post-conteudo ul,
.post-conteudo ol {
  list-style: revert;           /* volta ao padrão do navegador */
  margin: 0 0 1rem 1.25rem;
  padding-left: 1.25rem;
}

.post-conteudo ul { list-style-type: disc; }
.post-conteudo ol { list-style-type: decimal; }

.post-conteudo li {
  display: list-item !important; /* evita resets que mudam para block/inline */
  list-style: inherit;
}

/* Níveis aninhados (opcional) */
.post-conteudo ul ul { list-style-type: circle; }
.post-conteudo ol ol { list-style-type: lower-alpha; }
