.blog-card{background:var(--surface); border:var(--border-w) solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-sm); display:flex; flex-direction:column; overflow:hidden; transition:box-shadow 0.2s ease, transform 0.2s ease;}
.blog-card:hover{box-shadow:var(--shadow); transform:translateY(-2px);}
.blog-card-media{display:block; height:160px; overflow:hidden; border-bottom:var(--border-w) solid var(--line);}
.blog-card-media img{width:100%; height:100%; object-fit:cover;}
.blog-card-body{padding:16px;}
.blog-card-body h3{font-family:var(--font-body); font-weight:600; font-size:16px; margin-bottom:8px; line-height:1.2;}
.blog-card-body h3 a:hover{color:var(--red);}
.blog-card-excerpt{font-size:13px; color:var(--ink-soft); line-height:1.6;}

.blog-single-title{font-family:var(--font-body); font-weight:700; font-size:clamp(26px,4vw,40px); letter-spacing:-0.01em; margin:8px 0 6px; line-height:1.1;}
.blog-single-meta{font-family:var(--font-mono); font-size:11px; color:var(--ink-soft); margin-bottom:20px;}
.blog-single-media{border:var(--border-w) solid var(--line); border-radius:var(--radius-lg); box-shadow:var(--shadow); margin-bottom:28px; overflow:hidden;}
.blog-single-content{font-size:15.5px; line-height:1.75; max-width:720px;}
.blog-single-content p{margin-bottom:1.2em;}
.blog-single-content h2, .blog-single-content h3{font-family:var(--font-body); font-weight:700; margin:1.4em 0 0.6em; letter-spacing:-0.01em;}
.blog-single-content img{border:var(--border-w) solid var(--line); border-radius:var(--radius); margin:1em 0;}
.blog-single-content a{text-decoration:underline; text-decoration-color:var(--red);}

.comments-area{max-width:720px; margin-top:48px; border-top:1px solid var(--line); padding-top:28px;}
.comments-title{font-family:var(--font-body); font-weight:600; font-size:18px; margin-bottom:20px;}
.comment-list{list-style:none;}
.comment-list .comment{border-bottom:1px solid var(--line); padding:16px 0;}
.comment-form input, .comment-form textarea{
  width:100%; border:var(--border-w) solid var(--line); border-radius:var(--radius-sm); padding:10px 12px; font-family:var(--font-body); font-size:14px; background:var(--bg); margin-bottom:12px;
}
.comment-form .form-submit input{
  width:auto; border:var(--border-w) solid var(--ink); border-radius:var(--radius-sm); background:var(--ink); color:#fff; font-family:var(--font-mono);
  font-size:12px; font-weight:700; padding:10px 20px; cursor:pointer;
}