/* ============================================================
   SleekSky — Blog (listing cards + long-form article)
   Same warm-brutalist language as site.css · loaded on blog pages
   ============================================================ */

/* listing hero */
.blog-hero{padding-top:60px;padding-bottom:34px;position:relative;}

/* post grid */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
@media(max-width:900px){.post-grid{grid-template-columns:repeat(2,1fr);gap:22px;}}
@media(max-width:600px){.post-grid{grid-template-columns:1fr;}}

/* post card */
.post-card{display:flex;flex-direction:column;height:100%;background:var(--paper);
  border:2.5px solid var(--line);border-radius:var(--r);overflow:hidden;
  box-shadow:6px 6px 0 var(--shadow);text-decoration:none;color:var(--ink);
  transition:transform .12s ease, box-shadow .12s ease;}
.post-card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--coral);}
.post-card .thumb{aspect-ratio:16/10;border-bottom:2.5px solid var(--line);overflow:hidden;background:var(--cream-2);}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.post-card .body{display:flex;flex-direction:column;gap:11px;padding:20px 22px 24px;flex:1;}
.post-card h3{font-size:21px;line-height:1.14;}
.post-card .excerpt{color:var(--ink-2);font-size:15px;line-height:1.5;}
.post-card .more{margin-top:auto;padding-top:4px;font-family:var(--font-mono);font-weight:700;
  font-size:13px;letter-spacing:.3px;color:var(--coral-deep);display:inline-flex;align-items:center;gap:6px;
  transition:gap .12s ease;}
.post-card:hover .more{gap:10px;}

/* meta line (date · read time · author) */
.post-meta{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.5px;
  text-transform:uppercase;color:var(--ink-2);display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.post-meta .dot{width:5px;height:5px;border-radius:50%;background:var(--coral);display:inline-block;flex:none;}

/* ---------- article page ---------- */
.post-head{max-width:840px;margin:0 auto;text-align:center;}
.post-back{font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:.3px;
  color:var(--coral-deep);text-decoration:none;}
.post-back:hover{text-decoration:underline;}
.post-cover{max-width:1000px;margin:34px auto 0;border:2.5px solid var(--line);border-radius:var(--r);
  overflow:hidden;box-shadow:8px 8px 0 var(--shadow);}
.post-cover img{width:100%;display:block;}

.post-wrap{max-width:740px;margin-left:auto;margin-right:auto;}

.post-article{font-size:18px;line-height:1.72;color:var(--ink);}
.post-article > *{margin:0;}
.post-article > * + *{margin-top:1.15em;}
.post-article > :first-child{margin-top:0;}
.post-article h2{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;
  font-size:clamp(25px,3.4vw,33px);line-height:1.1;margin-top:1.7em;}
.post-article h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;
  font-size:clamp(19px,2.3vw,23px);line-height:1.15;margin-top:1.5em;}
.post-article h2 + p,.post-article h3 + p{margin-top:.6em;}
.post-article a{color:var(--coral-deep);text-decoration:underline;text-underline-offset:2px;font-weight:600;}
.post-article strong{font-weight:800;}
.post-article em{font-style:italic;}
.post-article ul,.post-article ol{padding-left:1.35em;display:flex;flex-direction:column;gap:.5em;}
.post-article li{padding-left:.15em;line-height:1.6;}
.post-article li::marker{color:var(--coral);font-weight:800;}
.post-article img{width:100%;border:2.5px solid var(--line);border-radius:var(--r-sm);
  display:block;margin:1.7em 0;box-shadow:5px 5px 0 var(--shadow);}
.post-article blockquote{margin:1.7em 0;padding:20px 24px;background:var(--yellow-tint);
  border:2.5px solid var(--line);border-radius:var(--r-sm);box-shadow:5px 5px 0 var(--coral);
  font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.42;}
.post-article blockquote p{margin:0;}
.post-article code{font-family:var(--font-mono);font-size:.86em;background:var(--cream-2);
  border:1.5px solid var(--line);border-radius:6px;padding:1px 6px;}
.post-article pre{background:var(--ink);color:var(--cream);border:2.5px solid var(--line);
  border-radius:var(--r-sm);padding:18px 20px;overflow-x:auto;}
.post-article pre code{background:none;border:none;padding:0;color:inherit;}
.post-article hr{border:none;border-top:2.5px dashed var(--line);}

/* article footer (share + back) */
.post-foot{margin-top:46px;padding-top:24px;border-top:2.5px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.post-foot .tag{cursor:pointer;text-decoration:none;}
.post-foot .tag:hover{background:var(--yellow);}