.post-cards{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  margin-left:var(--edge-ruler);
  margin-right:var(--edge-ruler);
  padding-inline:0;
}

@media (min-width:768px){
  .post-cards{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}

@media (min-width:1024px){
  .post-cards{ grid-template-columns:repeat(3, minmax(0,1fr)); gap:22px; }
}

.post-card{
  min-width:0;
  overflow:hidden;
  color:var(--body-copy-text);
  background:
    radial-gradient(circle at 100% 0, var(--theme-tint), transparent 32%),
    linear-gradient(180deg, color-mix(in srgb, var(--card-bg) 92%, var(--theme-panel-mix)), var(--card-bg));
  border:1px solid var(--theme-border);
  border-radius:22px;
  box-shadow:var(--card-shadow-soft);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.post-card:hover{
  transform:translateY(-2px);
  border-color:var(--theme-border-strong);
  box-shadow:0 20px 42px rgba(0,0,0,.28);
}

.post-card .thumb{
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  background:linear-gradient(135deg, var(--theme-border-soft), var(--theme-primary-soft));
}

.post-card .thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .25s ease;
}

.post-card:hover .thumb img{ transform:scale(1.03); }
.post-card .thumb-fallback{ min-height:220px; background:linear-gradient(135deg, var(--theme-border-soft), var(--theme-primary-soft)); }
.post-card .inner{ padding:18px 18px 20px; }

.post-card__date{
  display:inline-flex;
  align-items:center;
  margin:0 0 12px;
  padding:4px 10px;
  color:var(--btn-text);
  background:var(--btn-gradient);
  border-radius:10px;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.post-card .title{
  display:block;
  width:100%;
  margin:0 0 10px;
  color:var(--entry-h1-text);
  background:transparent;
  border:0;
  box-shadow:none;
  font-size:clamp(1.08rem,.94rem + .55vw,1.36rem);
  font-weight:950;
  line-height:1.32;
  text-align:left;
  text-shadow:none;
}

.post-card .title::before,
.post-card .title::after{ content:none; display:none; }

.post-card .title a{
  display:block;
  color:inherit;
  text-decoration:none;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.post-card .title a:hover{ color:var(--accent); }

.post-card .excerpt{
  min-width:0;
  margin:0;
  color:var(--muted);
  font-size:.98rem;
  line-height:1.72;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.post-card .excerpt-more{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:14px;
  padding:9px 14px;
  color:var(--btn-text);
  background:var(--btn-gradient);
  border:1px solid var(--btn-border);
  border-radius:10px;
  font-size:.9rem;
  font-weight:900;
  text-decoration:none;
}

.post-card .excerpt-more:hover{ filter:brightness(1.04); text-decoration:none; }

.pagination{
  margin:28px var(--edge-ruler) 0;
  padding-inline:0;
}

.pagination ul{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin:0;
  padding:8px;
  list-style:none;
  background:var(--theme-sheen);
  border:1px solid var(--btn-border);
  border-radius:10px;
  box-shadow:var(--card-shadow-soft);
}

.pagination li{ margin:0; padding:0; }

.pagination a,
.pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 14px;
  color:var(--entry-h1-text);
  text-decoration:none;
  background:var(--theme-field-bg);
  border:1px solid var(--btn-border);
  border-radius:10px;
  font-weight:900;
}

.pagination a:hover,
.pagination .current{
  color:var(--btn-text);
  background:var(--btn-gradient);
  border-color:var(--btn-border);
}

@media (max-width:767px){
  .post-card .inner{ padding:16px; }
  .pagination ul{ border-radius:22px; }
}

@media (prefers-reduced-motion:reduce){
  .post-card,
  .post-card .thumb img{ transition:none; }
}
