.article-hero{padding:72px 0 36px;background:var(--bg)}
.article-hero .wrap{max-width:820px}
.article-hero h1{font-size:clamp(2rem,4.4vw,3rem);line-height:1.1;font-weight:800;letter-spacing:-.028em;margin:18px 0 0;text-wrap:balance}
.article-lead{color:var(--mut);font-size:1.15rem;margin:20px 0 0;max-width:680px}
.article-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--mut2);font-size:.86rem;margin:20px 0 0}
.crumbs{display:flex;gap:8px;font-size:.84rem;color:var(--mut2);margin-bottom:22px}
.crumbs a{color:var(--mut);text-decoration:none}
.crumbs a:hover{color:var(--blue)}
.prose{max-width:820px;padding-bottom:70px}
.prose h2{font-size:clamp(1.45rem,2.6vw,1.85rem);line-height:1.2;letter-spacing:-.018em;margin:48px 0 14px;font-weight:700;text-wrap:balance}
.prose h3{font-size:1.18rem;letter-spacing:-.01em;margin:30px 0 10px}
.prose p,.prose li{font-size:1.06rem;line-height:1.7;color:#2b302d}
.prose p{margin:0 0 16px;max-width:68ch}
.prose ul{margin:0 0 18px;padding-left:22px;max-width:68ch}
.prose li{margin-bottom:9px}
.prose li::marker{color:var(--blue)}
.prose strong{color:var(--ink)}
.prose code{font:.9em ui-monospace,SFMono-Regular,Menlo,monospace;background:rgba(13,150,104,.08);border-radius:6px;padding:2px 6px;color:var(--ink)}
.callout{margin:44px 0 0;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:28px;display:grid;gap:10px;justify-items:start;box-shadow:0 10px 34px rgba(14,22,19,.06)}
.callout strong{font-size:1.15rem}
.callout p{color:var(--mut);margin:0 0 6px}
.read-next{margin-top:44px}
.read-next .related{margin-top:4px}
.post-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding-bottom:80px;max-width:1160px}
.post-card{display:grid;gap:12px;align-content:start;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:30px;text-decoration:none;color:inherit;box-shadow:0 6px 24px rgba(14,22,19,.05);transition:transform .2s ease,box-shadow .2s ease}
.post-card:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(14,22,19,.1)}
.post-card h2{font-size:1.32rem;line-height:1.25;letter-spacing:-.015em;margin:0;text-wrap:balance}
.post-card p{color:var(--mut);margin:0;font-size:.96rem}
.post-tag{justify-self:start;color:var(--blue);background:rgba(13,150,104,.1);border-radius:100px;font-size:.76rem;font-weight:600;padding:6px 12px}
.post-meta{color:var(--mut2);font-size:.82rem}
@media(max-width:760px){.post-list{grid-template-columns:1fr}.article-hero{padding:48px 0 24px}.prose p,.prose li{font-size:1rem}.callout{padding:22px}}
@media(prefers-reduced-motion:reduce){.post-card{transition:none}.post-card:hover{transform:none}}
