.article-page{max-width:1200px;margin:0 auto;padding:var(--space-20) var(--space-10) var(--space-16);position:relative}.article-header{padding-bottom:var(--space-10);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-16)}.article-eyebrow{font-family:var(--font-mono);font-size:12px;color:var(--color-accent-primary);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-5)}.article-title{font-size:clamp(2.5rem,5vw,3.75rem);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--color-fg-primary)}.article-subtitle{font-size:19px;line-height:1.6;color:var(--color-fg-secondary);max-width:640px;margin-top:var(--space-5)}.article-meta{display:flex;flex-wrap:wrap;gap:var(--space-8);margin:var(--space-8) 0 0;padding-top:var(--space-5);border-top:1px dashed var(--color-accent-primary-25)}.article-meta>div{display:flex;flex-direction:column;gap:4px}.article-meta dt{font-family:var(--font-mono);font-size:12px;color:var(--color-fg-muted);letter-spacing:.15em;text-transform:uppercase}.article-meta dd{font-family:var(--font-mono);font-size:13px;color:var(--color-fg-primary);margin:0;letter-spacing:.02em}.article-lead{margin-bottom:var(--space-16)}.article-prose{counter-reset:section-h2}.article-prose h2{counter-increment:section-h2;position:relative;margin-block:var(--space-20) var(--space-6)}.article-prose h2:before{content:counter(section-h2,decimal-leading-zero);display:block;font-family:var(--font-mono);font-size:12px;color:var(--color-accent-primary);letter-spacing:.25em;margin-bottom:var(--space-3)}.article-prose h2:after{content:"";display:block;width:36px;height:1px;background:var(--color-accent-primary);margin-top:var(--space-4);margin-bottom:var(--space-2)}.article-prose h2:first-of-type{margin-top:var(--space-4)}.article-prose ul li>strong:first-child{display:inline-block;color:var(--color-accent-primary);font-family:var(--font-mono);font-weight:700;font-size:15px;letter-spacing:.02em;margin-right:4px}.article-prose blockquote{border-left:2px solid var(--color-accent-primary);padding:var(--space-2) 0 var(--space-2) var(--space-6);margin:var(--space-8) 0;font-size:20px;line-height:1.55;color:var(--color-fg-primary);font-style:normal;font-weight:500}.article-prose blockquote p{margin-bottom:0}.article-prose ul{gap:var(--space-4)}.article-prose ul li{line-height:1.7}.article-footer{margin-top:var(--space-16);padding-top:var(--space-6);border-top:1px dashed var(--color-accent-primary-25)}.article-footer-line{font-family:var(--font-mono);font-size:12px;color:var(--color-fg-muted);letter-spacing:.15em;text-align:center;margin:0}.article-page:before,.article-page:after{content:"";position:absolute;width:18px;height:18px;pointer-events:none}.article-page:before{top:var(--space-8);left:0;border-top:1px solid var(--color-accent-primary);border-left:1px solid var(--color-accent-primary)}.article-page:after{bottom:var(--space-4);right:0;border-bottom:1px solid var(--color-accent-primary);border-right:1px solid var(--color-accent-primary)}@media(max-width:640px){.article-page:before,.article-page:after{display:none}}.prose{color:var(--color-fg-secondary);line-height:1.9;font-size:17px}.prose h2{font-size:30px;font-weight:700;color:var(--color-fg-primary);line-height:1.25}.prose h3{font-size:20px;font-weight:600;color:var(--color-fg-primary);margin-block:var(--space-10) var(--space-4)}.prose p{margin-bottom:var(--space-6)}.prose strong{color:var(--color-fg-primary);font-weight:600}.prose ul{list-style:none;padding:0;margin-block:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.prose ul li{padding-left:var(--space-6);position:relative}.prose ul li:before{content:"";position:absolute;left:0;top:14px;width:12px;height:1px;background:var(--color-accent-primary)}.prose a{color:var(--color-accent-primary);text-decoration:underline;text-decoration-color:var(--color-accent-primary-40);text-underline-offset:3px;transition:text-decoration-color var(--motion-fast)}.prose a:hover{text-decoration-color:var(--color-accent-primary)}.prose table{width:100%;border-collapse:collapse;font-size:15px;margin-block:var(--space-6)}.prose th,.prose td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:top}.prose th{font-family:var(--font-mono);font-size:12px;color:var(--color-fg-muted);letter-spacing:.1em;text-transform:uppercase;font-weight:600}
