.page-hero{padding:clamp(70px,10vh,130px) 0 clamp(40px,6vh,64px);position:relative;overflow:hidden}.page-hero .hero-glow{position:absolute;top:-30%;right:-10%;width:800px;height:800px;pointer-events:none;z-index:0;background:radial-gradient(circle,var(--glow),transparent 62%)}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{font-size:clamp(40px,6vw,76px);line-height:1;max-width:18ch;margin-top:24px;font-weight:600}.page-hero .lead{margin-top:24px;max-width:56ch}.post-list{border-top:1px solid var(--border)}.post-row{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:baseline;padding:36px 0;border-bottom:1px solid var(--border);transition:background .25s var(--ease)}.post-row:hover{background:color-mix(in oklab,var(--surface),transparent 35%)}.post-row .when{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.04em;color:var(--text-lo);text-transform:uppercase;padding-top:6px}.post-row h2{font-size:clamp(24px,3vw,32px);line-height:1.12}.post-row h2 a{transition:color .2s}.post-row:hover h2 a{color:var(--accent-text)}.post-row .excerpt{color:var(--text-mid);margin-top:12px;font-size:17px;max-width:60ch}.post-row .read{margin-top:16px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--accent-text)}.post-row .read .arr{transition:transform .2s var(--ease)}.post-row:hover .read .arr{transform:translate(3px)}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.tag-chip{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-lo);border:1px solid var(--border);border-radius:999px;padding:4px 11px}.empty{color:var(--text-mid);padding:48px 0;font-size:18px}.article{padding:clamp(48px,7vh,88px) 0 clamp(70px,10vh,120px)}.article .wrap{max-width:760px}.article-head{margin-bottom:48px}.back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-lo);margin-bottom:28px;transition:color .2s}.back:hover{color:var(--text-hi)}.back .arr{transition:transform .2s var(--ease)}.back:hover .arr{transform:translate(-3px)}.article-head h1{font-size:clamp(34px,5vw,60px);line-height:1.05;font-weight:600}.article-cover{margin:0 0 44px}.article-cover img{width:100%;height:auto;border-radius:var(--r);border:1px solid var(--border);display:block}.article-meta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:24px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.03em;color:var(--text-lo)}.article-meta .dot-sep{width:4px;height:4px;border-radius:50%;background:var(--border-strong)}.prose{font-size:19px;line-height:1.72;color:var(--text-mid)}.prose>*+*{margin-top:1.4em}.prose h2{font-size:clamp(26px,3.4vw,34px);line-height:1.15;color:var(--text-hi);margin-top:1.9em;font-weight:600}.prose h3{font-size:clamp(21px,2.6vw,25px);line-height:1.2;color:var(--text-hi);margin-top:1.7em;font-weight:600}.prose p{color:var(--text-mid)}.prose strong{color:var(--text-hi);font-weight:600}.prose em{font-style:italic}.prose a{color:var(--accent-text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--border-strong)}.prose a:hover{text-decoration-color:var(--accent)}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin-top:.5em}.prose li::marker{color:var(--text-lo)}.prose blockquote{border-left:2px solid var(--accent);padding:4px 0 4px 24px;margin-left:0;font-family:Newsreader,Georgia,serif;font-style:italic;font-size:1.1em;color:var(--text-hi)}.prose code{font-family:var(--font-mono);font-size:.86em;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:2px 6px}.prose pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;overflow-x:auto;font-size:14.5px;line-height:1.6}.prose pre code{background:none;border:none;padding:0;font-size:inherit}.prose img{border-radius:var(--r);border:1px solid var(--border);margin:0 auto}.prose hr{border:none;border-top:1px solid var(--border);margin:2.4em 0}.article-foot{margin-top:64px;padding-top:32px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.article-foot .cta-note{font-family:var(--font-mono);font-size:13px;color:var(--text-lo);letter-spacing:.03em;max-width:40ch}@media(max-width:680px){.post-row{grid-template-columns:1fr;gap:8px}.post-row .when{padding-top:0}}
