.article-header{padding:24px 0 0}.article-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:32px}.post-category{font-size:.65rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);padding:4px 10px;border:1px solid var(--border)}.meta-item{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:6px}.article-title{font-family:var(--ff-display);font-size:clamp(2.2rem,5vw,4rem);font-weight:300;line-height:1.1;color:var(--text);margin-bottom:24px}.article-title em{font-style:italic}.article-intro{font-size:1.15rem;color:var(--text-muted);line-height:1.8;margin-bottom:48px;max-width:640px}.author-bar{display:flex;align-items:center;gap:16px;padding:24px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:40px}.author-avatar{width:44px;height:44px;border-radius:50%;background:#fafafa1a;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--text);flex-shrink:0}.author-info{flex:1}.author-name{font-size:.85rem;font-weight:700;color:var(--text)}.author-role{font-size:.75rem;color:var(--text-muted)}.share-links{display:flex;gap:8px}.share-btn{width:36px;height:36px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--text-muted);text-decoration:none;transition:border-color .2s,color .2s}.share-btn:hover{border-color:var(--accent);color:var(--text)}.article-hero-img{width:100%;overflow:hidden;margin-bottom:80px}.article-hero-img span{font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#fafafa2e}.article-layout{display:grid;grid-template-columns:1fr 260px;gap:80px;align-items:start;padding-bottom:120px}.prose{max-width:100%}.prose h2{font-family:var(--ff-display);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:300;line-height:1.2;color:var(--text);margin:30px 0 20px}.prose h3{font-size:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:40px 0 16px}.prose p{color:var(--text-muted);line-height:1.85;margin-bottom:24px}.prose ul,.prose ol{padding-left:0;list-style:none;margin-bottom:24px;display:flex;flex-direction:column;gap:10px}.prose ul li,.prose ol li{font-size:1rem;color:var(--text-muted);line-height:1.7;padding-left:20px;position:relative}.prose ul li:before{content:"→";position:absolute;left:0;color:var(--accent)}.prose ul ul{margin:0}.prose ul ul li:before{content:"·";font-weight:700}.prose ol{counter-reset:list}.prose ol li{counter-increment:list}.prose ol li:before{content:counter(list) ".";position:absolute;left:0;color:var(--accent);font-weight:700;font-size:.85rem}.prose blockquote{border-left:3px solid var(--accent);padding:24px 32px;margin:40px 0;background:#00000026}.prose blockquote p{font-family:var(--ff-display);font-size:1.2rem;font-weight:300;font-style:italic;color:var(--text);margin:0;line-height:1.6}.prose .callout{padding:24px 32px;border:1px solid var(--border);background:#0000001a;margin:32px 0}.prose .callout-label{font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.prose .callout p{margin:0;font-size:.95rem}.prose a{color:var(--text);text-decoration:underline;text-underline-offset:3px;transition:opacity .2s}.prose a:hover{opacity:.7}.prose hr{border:none;border-top:1px solid var(--border);margin:48px 0}.prose img{width:100%;height:auto;margin:32px 0;display:block}.prose .img-caption{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:-20px;margin-bottom:32px}.sidebar{position:sticky;top:calc(var(--nav-h) + 32px)}.sidebar-block{padding:28px;border:1px solid var(--border);margin-bottom:24px}.sidebar-block h4{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px}.toc-list{list-style:none;display:flex;flex-direction:column;gap:10px}.toc-list a{font-size:.8rem;color:var(--text-muted);text-decoration:none;transition:color .2s;padding-left:12px;border-left:2px solid var(--border);display:block;line-height:1.4;transition:color .2s,border-color .2s}.toc-list a:hover,.toc-list a.active{color:var(--text);border-color:var(--accent)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:5px 12px;border:1px solid var(--border);font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;transition:border-color .2s,color .2s}.tag:hover{border-color:var(--accent);color:var(--text)}#related{border-top:1px solid var(--border);padding:80px 0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px}.related-card{background:var(--bg-card);text-decoration:none;padding:36px;display:flex;flex-direction:column;gap:12px;border-top:2px solid transparent;transition:border-color .3s,background .3s}.related-card:hover{border-color:var(--accent);background:var(--bg-hover)}.related-category{font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.related-title{font-family:var(--ff-display);font-size:1rem;font-weight:400;color:var(--text);line-height:1.4}.related-date{font-size:.75rem;color:var(--text-muted)}#cta{border-top:1px solid var(--border);background:#0000001f}.cta-inner{display:grid;grid-template-columns:1fr auto;gap:80px;align-items:center;padding:80px 0}.cta-title{font-family:var(--ff-display);font-size:clamp(2rem,4vw,3.2rem);font-weight:300;color:var(--text);line-height:1.15}.cta-title em{font-style:italic}.cta-sub{margin-top:16px;color:var(--text-muted);max-width:440px;line-height:1.8}.cta-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.cta-contact-links{display:flex;flex-direction:column;align-items:flex-end;gap:8px;margin-top:8px}.cta-contact-links a{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;transition:color .2s}.cta-contact-links a:hover{color:var(--text)}.cta-note{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}@media (max-width: 1024px){.article-layout{grid-template-columns:1fr;padding-bottom:20px}.sidebar{position:static}}@media (max-width: 900px){.cta-inner{grid-template-columns:1fr;gap:40px}.cta-right{align-items:flex-start}.related-grid{grid-template-columns:1fr}}@media (max-width: 580px){.container,.container--prose{padding:0 20px}}
