/* Blog: listing cards + article typography (builds on site.css tokens) */
.post-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:rgba(242,241,234,.6)}
.post-meta span+span::before{content:"/";margin-right:18px;color:var(--lime)}

.post-hero{margin:0 0 44px}
.post-hero img{display:block;width:100%;height:auto;aspect-ratio:624/351;object-fit:cover;border:1px solid var(--line);background:var(--paper2)}

.prose{font-size:17px;line-height:1.72;color:var(--muted)}
.prose>*+*{margin-top:18px}
.prose h2{font-family:var(--display);font-weight:400;text-transform:uppercase;color:var(--ink);font-size:clamp(26px,3vw,36px);line-height:1.05;margin-top:56px}
.prose h3{font-weight:800;color:var(--ink);font-size:20px;line-height:1.3;margin-top:34px}
.prose h2+p,.prose h3+p{margin-top:14px}
.prose strong{color:var(--ink)}
.prose a{color:var(--green);font-weight:700;border-bottom:1px solid var(--lime)}
.prose ul{list-style:none;display:grid;gap:10px}
.prose ul li{position:relative;padding-left:26px}
.prose ul li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:9px;background:var(--lime)}
.prose .faq{margin-top:26px}
.prose .note{border-left:4px solid var(--lime);background:#e9e8df;padding:18px 22px;color:var(--ink)}

.contact-box{background:var(--ink);color:var(--paper);padding:34px 32px;margin-top:56px}
.contact-box h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(26px,3vw,34px);line-height:1.05;color:var(--paper)}
.contact-box h3{font-weight:800;font-size:18px;margin-top:26px;color:var(--paper)}
.contact-box p{color:var(--muted-d);margin-top:14px;line-height:1.65}
.contact-box ul{list-style:none;display:grid;gap:10px;margin-top:14px}
.contact-box li{position:relative;padding-left:26px;color:var(--muted-d);line-height:1.55}
.contact-box li::before{content:"";position:absolute;left:0;top:.55em;width:9px;height:9px;background:var(--lime)}
.contact-box li strong,.contact-box a{color:var(--paper)}
.contact-box a{border-bottom:1px solid var(--lime)}
.contact-box .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.contact-box .btns a{border-bottom:0}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);transition:transform .25s,border-color .25s}
.post-card:hover{transform:translateY(-4px);border-color:var(--green)}
.post-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--paper2)}
.post-card .pc-body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:12px;flex:1}
.post-card .pc-meta{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}
.post-card h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:23px;line-height:1.08;color:var(--ink)}
.post-card p{font-size:15px;line-height:1.6;color:var(--muted)}
.post-card .tlink{margin-top:auto;font-weight:800;font-size:14.5px;color:var(--green)}

@media (max-width:980px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){
  .blog-grid{grid-template-columns:1fr}
  .prose{font-size:16.5px}
  .contact-box{padding:28px 20px}
}
