:root{color-scheme:dark}
.article{max-width:720px;padding-top:32px;padding-bottom:64px}
.article__back{display:inline-block;color:var(--lp-muted,#9aa3b7);text-decoration:none;font-size:14px;margin-bottom:22px}
.article__back:hover{color:var(--text-primary)}
.article__head{margin-bottom:30px;border-bottom:1px solid var(--border);padding-bottom:24px}
.article__head h1{font-size:clamp(28px,5vw,42px);line-height:1.12;margin:12px 0 0;letter-spacing:-.02em}
.article__meta{color:var(--lp-muted,#9aa3b7);font-size:14px;margin-top:14px}
.prose{font-size:17.5px;line-height:1.75;color:var(--text-secondary)}
.prose h2{color:var(--text-primary);font-size:clamp(22px,3.2vw,28px);line-height:1.25;margin:42px 0 14px;letter-spacing:-.01em}
.prose h3{color:var(--text-primary);font-size:20px;margin:32px 0 10px}
.prose p{margin:0 0 20px}
.prose a{color:var(--brand-300,#c4a3ff);text-decoration:underline;text-underline-offset:3px}
.prose strong{color:var(--text-primary);font-weight:600}
.prose ul,.prose ol{margin:0 0 20px;padding-left:22px}
.prose li{margin:6px 0}
.prose blockquote{margin:26px 0;padding:14px 22px;border-left:3px solid var(--brand-500);background:var(--bg-surface-2);border-radius:8px;color:var(--text-primary)}
.prose img{max-width:100%;height:auto;border-radius:12px;margin:26px 0;border:1px solid var(--border)}
.prose code{font-family:var(--font-mono,ui-monospace,monospace);font-size:.9em;background:var(--bg-surface-2);padding:2px 6px;border-radius:5px}
.prose pre{background:var(--bg-surface-2);border:1px solid var(--border);border-radius:10px;padding:16px;overflow:auto;margin:0 0 22px}
.prose pre code{background:none;padding:0}
.prose hr{border:0;border-top:1px solid var(--border);margin:34px 0}
.prose small{font-size:14px;color:var(--lp-muted,#9aa3b7)}
.prose table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top}
.prose thead th{background:var(--bg-surface-2);color:var(--text-primary);font-weight:600;white-space:nowrap}
.prose tbody td:first-child{color:var(--text-primary);font-weight:500}
.article__cta{max-width:720px;margin:52px auto 0;padding:44px 24px 4px;border-top:1px solid var(--border);text-align:center}
.article__cta-lead{color:var(--text-secondary);font-size:17px;line-height:1.6;max-width:560px;margin:0 auto 24px}
.article__cta .cta-note{color:var(--lp-muted,#9aa3b7);font-size:13.5px;margin:16px 0 0}
.related{max-width:720px;margin:48px auto 0;padding-top:40px;border-top:1px solid var(--border)}
.related__h{font-size:clamp(20px,3vw,24px);color:var(--text-primary);margin:0 0 20px;letter-spacing:-.01em}
.related__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;padding-bottom:8px}
.blog-hero{padding:48px 0 30px;max-width:680px}
.blog-hero h1{font-size:clamp(32px,6vw,52px);line-height:1.06;margin:12px 0 0;letter-spacing:-.02em}
.post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;padding:10px 0 72px}
.post-card{position:relative;display:block;padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--bg-surface);transition:border-color .15s,transform .15s}
.post-card:hover{border-color:var(--brand-500);transform:translateY(-2px)}
.post-card h2{color:var(--text-primary);font-size:20px;line-height:1.25;margin:10px 0 8px}
.post-card__link{color:inherit;text-decoration:none}
.post-card__link::after{content:"";position:absolute;inset:0;z-index:0}
.post-card__cat{position:relative;z-index:1}
.post-card__cat:hover{border-color:var(--brand-500);color:var(--brand-300,#c4a3ff)}
.post-card p{color:var(--text-secondary);font-size:15px;line-height:1.55;margin:0 0 14px}
.post-card__meta{color:var(--lp-muted,#9aa3b7);font-size:13px}
a.eyebrow{text-decoration:none;transition:border-color .15s,color .15s}
a.eyebrow:hover{border-color:var(--brand-500);color:var(--brand-300,#c4a3ff)}
.cluster-nav{max-width:720px;margin:36px auto 0;text-align:center}
.cluster-nav a{color:var(--brand-300,#c4a3ff);text-decoration:none;font-size:15px;font-weight:500}
.cluster-nav a:hover{text-decoration:underline}
.pillar-crumb{font-size:13.5px;color:var(--lp-muted,#9aa3b7);margin-bottom:18px}
.pillar-crumb a{color:var(--lp-muted,#9aa3b7);text-decoration:none}
.pillar-crumb a:hover{color:var(--text-primary)}
.pillar-crumb .sep{margin:0 8px;opacity:.6}
.pillar-intro{color:var(--text-secondary);font-size:17.5px;line-height:1.7;margin:16px 0 0}
.pillar-list{margin-top:36px}
.pillar-list .related__grid{padding-bottom:0}
.blog-sub{margin:6px 0 34px;padding:30px 24px;border:1px solid var(--border-strong);border-radius:18px;background:var(--bg-surface)}
.blog-sub__in{max-width:560px;margin:0 auto;text-align:center}
.blog-sub h2{color:var(--text-primary);font-size:clamp(19px,2.6vw,23px);line-height:1.25;margin:0 0 8px}
.blog-sub p{color:var(--text-secondary);font-size:15px;margin:0 0 18px}
.blog-sub__form{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.blog-sub__form input{flex:1 1 240px;min-width:0;padding:12px 14px;border-radius:10px;border:1px solid var(--border-strong);background:var(--bg-sunken);color:var(--text-primary);font:inherit;font-size:15px}
.blog-sub__form input:focus{outline:none;border-color:var(--brand-500)}
.blog-sub__form .btn{flex:0 0 auto}
.blog-sub__msg{margin:14px 0 0;font-size:14px;color:var(--brand-300,#c4a3ff)}
