.blog-hero{padding:calc(var(--pad)*1.6) var(--pad) 24px}
.blog-hero .micro{font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px}
.blog-hero .hero-title{width:100%;pointer-events:auto;cursor:auto;margin:10px 0 0}
.blog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:24px var(--pad) 80px}
.blog-card{display:block;color:var(--ink);text-decoration:none}
.blog-card .thumb{aspect-ratio:16/10;background:#e9e8e3;overflow:hidden}
.blog-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.blog-card:hover .thumb img{transform:scale(1.03)}
.blog-card time{display:block;font-size:12px;letter-spacing:.04em;text-transform:uppercase;margin:14px 0 6px;opacity:.7}
.blog-card h2{font-size:clamp(20px,1.8vw,26px);line-height:1.2;font-weight:600;letter-spacing:-.02em;margin:0 0 8px;color:var(--blue)}
.blog-card p{margin:0;font-size:15px;line-height:1.5}
.blog-empty{padding:24px var(--pad) 120px;font-size:18px}
.post{max-width:820px;margin:0 auto;padding:calc(var(--pad)*1.4) var(--pad) 90px}
.post .meta{font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.7;margin:0 0 14px}
.post h1{font-size:clamp(34px,5vw,64px);line-height:1.06;letter-spacing:-.05em;font-weight:500;color:var(--blue);margin:0 0 22px}
.post .lead{font-size:clamp(18px,1.6vw,22px);line-height:1.5;margin:0 0 30px}
.post .cover{margin:0 0 34px}.post .cover img{width:100%;height:auto;display:block}
.post-body{font-size:18px;line-height:1.65}
.post-body h2{font-size:clamp(24px,2.4vw,32px);line-height:1.2;letter-spacing:-.03em;margin:44px 0 12px;font-weight:600}
.post-body h3{font-size:20px;margin:30px 0 8px;font-weight:600}
.post-body p{margin:0 0 18px}.post-body ul{margin:0 0 18px;padding-left:22px}
.post-body a{color:var(--blue)}
.post-body blockquote{margin:26px 0;padding:4px 0 4px 20px;border-left:3px solid var(--blue);font-size:20px}
.post-body figure{margin:30px 0}.post-body figure img{width:100%;height:auto;display:block}
.post-back{display:inline-block;margin-top:40px;color:var(--blue)}
.preview-bar{position:relative;background:#fff3b0;color:#141414;font:600 13px Montserrat,sans-serif;padding:10px var(--pad)}
@media(max-width:900px){.blog-list{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.blog-list{grid-template-columns:1fr;gap:26px}}
