.blog-hero{padding:64px 0 32px}
.blog-hero p{margin-top:14px;font-size:18px;color:var(--ink-2);max-width:40em}
.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:28px 0 8px}
.toolbar input{font:16px var(--body);padding:11px 14px;border:1.5px solid var(--line);border-radius:999px;background:var(--white);min-width:260px;flex:1;max-width:380px}
.toolbar input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(224,54,13,.25)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips button{border:1.5px solid var(--line);background:var(--white);border-radius:999px;padding:9px 16px;font-size:15px;cursor:pointer}
.chips button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.post-list{list-style:none;border-top:2px solid var(--ink);margin:24px 0 96px}
.post-list li a{display:grid;grid-template-columns:140px 1fr 120px;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:baseline}
.post-list li a:hover h2{color:var(--brand)}
.post-list time{font-size:14px;color:var(--ink-2)}
.post-list h2{font-family:var(--display);font-weight:700;font-size:23px;line-height:1.25;letter-spacing:-.01em;transition:color .15s}
.post-list p{color:var(--ink-2);font-size:16px;margin-top:6px;max-width:44em}
.cat{font-size:13px;font-weight:600;justify-self:end}
.cat-incident{color:var(--red)}.cat-vulnerability{color:#B26B00}.cat-advisory{color:var(--teal)}.cat-guide{color:var(--ink-2)}
.empty{padding:32px 0;color:var(--ink-2)}
@media (max-width:760px){.post-list li a{grid-template-columns:1fr;gap:4px}.cat{justify-self:start}}

/* single post */
.post{max-width:720px;margin:0 auto;padding:56px 24px 40px}
.back{font-size:15px;color:var(--ink-2);text-decoration:none}
.back:hover{color:var(--brand)}
.post .meta{margin-top:28px;font-size:14px;color:var(--ink-2);display:flex;flex-wrap:wrap;gap:16px}
.post h1{font-family:var(--display);font-weight:800;font-size:clamp(32px,4.4vw,48px);line-height:1.08;letter-spacing:-.03em;margin-top:10px}
.prose{margin-top:32px;font-size:18px;line-height:1.7}
.prose > * + *{margin-top:1em}
.prose h2{font-family:var(--display);font-weight:700;font-size:26px;line-height:1.2;letter-spacing:-.02em;margin-top:1.8em}
.prose h3{font-family:var(--display);font-weight:700;font-size:21px;margin-top:1.5em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li + li{margin-top:.35em}
.prose a{color:var(--brand);text-underline-offset:3px}
.prose code{font-family:var(--mono);font-size:.88em;background:#E8EEF0;padding:2px 6px;border-radius:4px}
.prose pre{background:var(--console);color:#D7E3EE;padding:16px 18px;border-radius:10px;overflow-x:auto;font:14px/1.6 var(--mono)}
.prose pre code{background:none;padding:0;font-size:inherit;color:inherit}
.prose blockquote{border-left:4px solid var(--brand);padding-left:18px;color:var(--ink-2)}
.post-cta{max-width:720px;margin:0 auto 96px;padding:28px 24px;border-top:2px solid var(--ink);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.post-cta p{font-family:var(--display);font-weight:700;font-size:22px;max-width:22em;line-height:1.25}
