/* ============================================================
   Nicracan — Blog (listado y entrada individual).
   Requiere brand.css y style.css antes.
   ============================================================ */

.page-hero{
  background:var(--ink); color:var(--bone); text-align:center;
  padding:120px 24px 72px;
}
.page-hero h1{ color:#fff; font-size:34px; }
@media(min-width:900px){ .page-hero h1{ font-size:46px; } }
.page-hero p{
  margin-top:18px; font-family:'Cormorant Garamond', serif; font-style:italic;
  font-size:18px; color:var(--gold-light); max-width:520px; margin-left:auto; margin-right:auto;
}

.blog-list{ background:var(--bone); padding:72px 0 100px; }
.blog-grid{
  display:grid; grid-template-columns:1fr; gap:24px; margin-top:20px;
}
@media(min-width:680px){ .blog-grid{ grid-template-columns:1fr 1fr; gap:26px; } }
@media(min-width:1020px){ .blog-grid{ grid-template-columns:repeat(3,1fr); } }

.post-card{
  display:block; background:var(--white); text-decoration:none; color:var(--ink);
  border:1px solid rgba(13,13,13,0.08); overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}
.post-card:hover{ transform:translateY(-3px); box-shadow:0 16px 34px -18px rgba(13,13,13,0.22); }
.post-card-img{
  width:100%; aspect-ratio:16/10; object-fit:cover; background:var(--stone);
}
.post-card-body{ padding:22px 22px 26px; }
.post-card-date{
  font-family:'Oswald'; font-size:11px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--gold-deep); opacity:0.85;
}
.post-card h2{
  margin-top:10px; font-size:18px; letter-spacing:0.01em;
}
.post-card-excerpt{
  margin-top:10px; font-size:14px; line-height:1.6; color:var(--graphite); opacity:0.85;
}
.post-empty{
  margin-top:40px; font-family:'Cormorant Garamond', serif; font-style:italic;
  font-size:19px; color:var(--stone);
}

/* ---------- entrada individual ---------- */
.post-article{ background:var(--bone); padding:0 0 100px; }
.post-article-img{
  width:100%; max-height:440px; object-fit:cover; background:var(--stone);
}
.post-article-body{
  max-width:720px; margin:0 auto; padding:56px 24px 0;
}
.post-article-date{
  font-family:'Oswald'; font-size:12px; letter-spacing:0.16em; text-transform:uppercase;
  color:var(--gold-deep);
}
.post-article-body h1{ margin-top:16px; font-size:30px; }
@media(min-width:900px){ .post-article-body h1{ font-size:40px; } }
.post-article-body p{
  margin-top:22px; font-size:17px; line-height:1.85; color:var(--graphite);
}
.post-back{
  display:inline-block; margin-top:48px; font-size:13.5px; text-decoration:none;
  color:var(--ink); border-bottom:1px solid var(--hair);
}
.post-back:hover{ border-color:var(--gold-deep); }
