/* Blog: article and index */
.post-wrap{max-width:820px}
.post-head{padding:clamp(40px,6vw,72px) 0 20px}
.post-head h1{font-size:clamp(34px,4.6vw,58px);line-height:1.05;letter-spacing:-.02em;margin:0 0 18px;text-wrap:balance}
.post-meta{font-size:15px;color:var(--ink-2);margin:0}
.quick-answer{background:#fff8ec;border:3px solid var(--ink);border-left:10px solid var(--yellow);padding:18px 22px;margin:8px 0 28px;box-shadow:6px 6px 0 var(--ink)}
.quick-answer b{display:block;font:700 13px/1.2 "League Spartan","Jost",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:8px}
.quick-answer p{margin:0;font-size:18px;line-height:1.55}
.post-fig{margin:0 0 32px;border:3px solid var(--ink)}
.post-fig img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.prose{font-size:18px;line-height:1.7}
.prose h2{font-size:clamp(26px,3vw,34px);margin:48px 0 14px;line-height:1.15}
.prose h2::after{content:".";color:var(--red)}
.prose h3{font-size:21px;margin:30px 0 8px}
.prose p{margin:0 0 18px}
.prose ul,.prose ol{margin:0 0 20px;padding-inline-start:1.3em}
.prose li{margin:0 0 8px}
.prose ol>li::marker{font-weight:800;color:var(--red)}
.prose ul>li::marker{color:var(--red)}
.prose a{color:inherit;text-decoration-color:var(--red);text-decoration-thickness:2px;text-underline-offset:3px}
.prose blockquote{margin:26px 0;padding:6px 0 6px 22px;border-left:5px solid var(--red);font-size:19px}
.prose blockquote p:last-child{margin:0}
.table-wrap{overflow-x:auto;margin:10px 0 26px;border:3px solid var(--ink);background:#fff8ec}
.prose table{border-collapse:collapse;width:100%;font-size:15.5px;line-height:1.45;min-width:560px}
.prose th{background:var(--ink);color:var(--cream);text-align:start;padding:10px 14px;font-weight:600}
.prose td{padding:10px 14px;border-top:1px solid rgba(27,26,24,.18);vertical-align:top}
.author-box{display:grid;grid-template-columns:96px 1fr;gap:18px;align-items:center;border-top:3px solid var(--ink);margin:44px 0 0;padding:24px 0 clamp(40px,6vw,64px)}
.author-box img{width:96px;height:96px;object-fit:cover;border-radius:50%;border:3px solid var(--ink)}
.author-box p{margin:6px 0 0;font-size:15.5px}
.post-cta{padding:clamp(40px,6vw,64px) 0}
.post-related,.post-more{padding:clamp(40px,6vw,64px) 0;border-top:3px solid var(--ink)}
.post-related h2,.post-more h2{font-size:clamp(24px,2.6vw,32px);margin:0 0 20px}
.post-related .rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.blog-hero{padding-bottom:20px}
.blog-hero .hero-sub{max-width:720px}
.post-list{padding:20px 0 clamp(48px,7vw,80px)}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.post-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;background:#fff8ec;border:3px solid var(--ink);padding:24px;box-shadow:6px 6px 0 var(--ink);transition:transform .15s}
.post-card:hover{transform:translate(-2px,-2px);background:var(--yellow)}
.post-card b{font:800 22px/1.2 "Jost",sans-serif}
.pc-k{font:700 12px/1.2 "League Spartan","Jost",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.pc-d{font-size:15.5px;line-height:1.5}
.pc-m{font-size:13.5px;color:var(--ink-2);margin-top:auto}
@media (max-width:560px){.author-box{grid-template-columns:64px 1fr}.author-box img{width:64px;height:64px}}
html[dir=rtl] .prose blockquote{padding:6px 22px 6px 0;border-left:0;border-right:5px solid var(--red)}
html[dir=rtl] .quick-answer{border-left:3px solid var(--ink);border-right:10px solid var(--yellow)}
