.blog-head{padding-top:168px;padding-bottom:0}.blog-head .inner{max-width:760px}.blog-head h1{font-size:clamp(40px,5.4vw,74px);margin:22px 0}.blog-head .lead{max-width:54ch}.post-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:0;border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--surface);margin-top:56px;transition:border-color .35s,box-shadow .35s,transform .35s var(--ease)}.post-feature:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));box-shadow:0 30px 70px -45px #8a2f2a80;transform:translateY(-4px)}.post-feature .body{padding:52px 48px;display:flex;flex-direction:column;justify-content:center}.post-feature h2{font-size:clamp(26px,3vw,40px);margin:18px 0 16px}.post-feature .excerpt{color:var(--fg-2);font-size:16.5px;max-width:48ch}.post-feature .readmore{margin-top:28px}.post-feature .cover{min-height:340px;position:relative;border-left:1px solid var(--border)}.post-feature.no-cover{grid-template-columns:1fr}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}.post-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden;transition:border-color .35s,box-shadow .35s,transform .35s var(--ease)}.post-card:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));box-shadow:0 24px 56px -42px #8a2f2a80;transform:translateY(-4px)}.post-card .cover{height:168px;position:relative;border-bottom:1px solid var(--border)}.post-card .body{padding:26px 26px 30px;display:flex;flex-direction:column;flex:1}.post-card h3{font-size:20px;line-height:1.18;margin:14px 0 10px}.post-card .excerpt{color:var(--fg-2);font-size:14.5px;flex:1}.post-card .readmore{margin-top:22px}@media(max-width:920px){.post-grid{grid-template-columns:1fr 1fr}.post-feature{grid-template-columns:1fr}.post-feature .cover{border-left:none;border-top:1px solid var(--border);min-height:220px;order:-1}}@media(max-width:600px){.post-grid{grid-template-columns:1fr}}.cover-ph{position:absolute;inset:0;background:repeating-linear-gradient(135deg,var(--surface-2) 0 11px,var(--bg-2) 11px 22px)}.cover-ph:after{content:attr(data-label);position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.post-meta{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.post-meta .topic{color:var(--accent)}.post-meta .series{color:var(--accent-2)}.post-meta .sep{width:4px;height:4px;border-radius:50%;background:var(--border)}.readmore{font-family:var(--font-body);font-weight:600;font-size:14.5px;color:var(--accent);display:inline-flex;align-items:center;gap:8px}.readmore .arrow{transition:transform .25s var(--ease)}a:hover .readmore .arrow,.readmore:hover .arrow{transform:translate(4px)}.card-link{color:inherit;display:contents}.post-shell{padding-top:150px}.post-back{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;color:var(--fg-2);display:inline-flex;align-items:center;gap:8px;margin-bottom:40px;transition:color .2s}.post-back:hover{color:var(--accent)}.post-back .arrow{transition:transform .25s var(--ease)}.post-back:hover .arrow{transform:translate(-4px)}.post-header{max-width:760px;margin:0 auto;text-align:center}.post-header h1{font-size:clamp(34px,4.6vw,60px);margin:22px 0 24px}.post-header .dek{font-size:clamp(18px,1.9vw,22px);color:var(--fg-2);line-height:1.5;max-width:56ch;margin:0 auto}.post-header .post-meta{justify-content:center;margin-top:30px}.post-byline{display:inline-flex;align-items:center;gap:12px;margin-top:30px;padding-top:28px;border-top:1px solid var(--border)}.post-byline .avatar{width:40px;height:40px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border)}.post-byline img.avatar{object-fit:cover;object-position:50% 8%}.post-byline .who{text-align:left}.post-byline .who b{font-family:var(--font-display);font-weight:600;font-size:15px;display:block}.post-byline .who span{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);letter-spacing:.04em}.post-cover{max-width:980px;margin:56px auto 0;height:clamp(280px,42vw,480px);border:1px solid var(--border);border-radius:18px;overflow:hidden;position:relative}.post-cover img,.post-feature .cover img,.post-card .cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.prose{max-width:720px;margin:56px auto 0;font-size:18px;line-height:1.72;color:var(--fg-2)}.prose>*+*{margin-top:26px}.prose h2{font-family:var(--font-display);font-weight:600;font-size:clamp(24px,2.6vw,34px);line-height:1.12;letter-spacing:-.02em;color:var(--fg);margin-top:56px}.prose h3{font-family:var(--font-display);font-weight:600;font-size:clamp(20px,2vw,25px);color:var(--fg);margin-top:44px}.prose p{color:var(--fg-2)}.prose strong{color:var(--fg);font-weight:600}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.prose ul,.prose ol{padding-left:24px;display:flex;flex-direction:column;gap:10px}.prose li{color:var(--fg-2);padding-left:6px}.prose li::marker{color:var(--accent)}.prose img{width:100%;border-radius:14px;border:1px solid var(--border)}.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:2px 7px;color:var(--accent)}.prose pre{background:var(--fg);color:var(--surface);border-radius:14px;padding:24px 26px;overflow-x:auto;font-family:var(--font-mono);font-size:14px;line-height:1.6}.prose pre code{background:none;border:none;color:inherit;padding:0;font-size:inherit}.prose blockquote{border-left:2px solid var(--accent);padding:4px 0 4px 30px;margin-left:0}.prose blockquote p{font-family:var(--font-display);font-size:clamp(20px,2.1vw,27px);line-height:1.4;color:var(--fg);font-weight:500}.prose hr{border:none;border-top:1px solid var(--border);margin:48px 0}.post-foot{max-width:720px;margin:72px auto 0;padding-top:40px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.post-foot .label{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}@media(max-width:640px){.prose{font-size:16.5px}}
