.article-content{max-width:860px;margin:0 auto;font-size:1.05rem;line-height:1.8;color:var(--color-text)}.article-title{font-family:var(--font-primary);font-size:clamp(1.65rem,1.4rem + 1.2vw,2.15rem);color:var(--color-black);margin-bottom:var(--spacing-md);line-height:1.25;font-weight:700;letter-spacing:-.01em}.article-hero-image{width:100%;border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);box-shadow:0 4px 20px #0000001a}.article-body{min-width:0}.article-body img{width:100%;height:auto;border-radius:var(--radius-lg);margin:var(--spacing-lg) 0;box-shadow:0 4px 20px #0000001a}.article-body h1,.article-body h2,.article-body h3,.article-body h4,.article-body h5,.article-body h6{font-family:var(--font-primary);color:var(--color-black);font-weight:700;line-height:var(--leading-snug);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.article-body h1:first-child,.article-body h2:first-child,.article-body h3:first-child,.article-body h4:first-child,.article-body h5:first-child,.article-body h6:first-child{margin-top:0}.article-body h1{font-size:1.65rem;letter-spacing:-.01em}.article-body h2{font-size:1.4rem;padding-bottom:.35rem;border-bottom:1px solid var(--color-border-gray)}.article-body h3{font-size:1.25rem;font-weight:700;color:var(--gray-800)}.article-body h4{font-size:1.15rem;font-weight:700;color:var(--gray-800)}.article-body h5{font-size:1.08rem;font-weight:700;color:var(--gray-800)}.article-body h6{font-size:1.05rem;font-weight:700;color:var(--color-text-secondary);letter-spacing:.02em;text-transform:none}.article-body h1 strong,.article-body h1 b,.article-body h2 strong,.article-body h2 b,.article-body h3 strong,.article-body h3 b,.article-body h4 strong,.article-body h4 b,.article-body h5 strong,.article-body h5 b,.article-body h6 strong,.article-body h6 b{font-weight:700;color:inherit;font-size:inherit}.article-body p{margin-bottom:var(--spacing-md)}.article-body strong,.article-body b{font-weight:700;color:var(--color-text)}.article-body em,.article-body i{font-style:italic}.article-body a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.article-body a:hover{color:var(--color-green-forest)}.article-body ul,.article-body ol{margin:0 0 var(--spacing-md);padding-left:1.5rem}.article-body ul{list-style:disc}.article-body ol{list-style:decimal}.article-body li{margin-bottom:.5rem;padding-left:.25rem}.article-body li>ul,.article-body li>ol{margin-top:.35rem;margin-bottom:.35rem}.article-body blockquote{margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--gray-800);background:var(--color-bg-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;font-family:var(--font-narrative);font-style:italic;font-size:1.08rem;line-height:1.65;color:var(--color-text)}.article-body blockquote p{margin-bottom:.65em}.article-body blockquote p:last-child{margin-bottom:0}.article-body blockquote strong,.article-body blockquote b{font-style:normal;font-family:var(--font-primary);color:var(--color-black)}.article-body blockquote cite,.article-body blockquote footer{display:block;margin-top:var(--spacing-sm);font-family:var(--font-secondary);font-style:normal;font-size:.92rem;font-weight:600;color:var(--color-text-secondary)}.article-body blockquote+p{margin-top:calc(var(--spacing-sm) * -.5);margin-bottom:var(--spacing-md);font-size:.92rem;font-weight:600;color:var(--color-text-secondary);line-height:1.45}.article-body .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:var(--spacing-lg) 0;border-radius:var(--radius-md);border:1px solid var(--color-border-gray);box-shadow:0 1px 4px #0000000a}.article-body table{display:table;width:100%;min-width:280px;border-collapse:collapse;font-size:.98rem;line-height:1.45;background:var(--color-white)}.article-body thead{background:var(--gray-800);color:var(--color-white)}.article-body th{font-family:var(--font-primary);font-weight:700;text-align:left;padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.12)}.article-body td{padding:.7rem 1rem;border-bottom:1px solid var(--color-border-gray);vertical-align:top;color:var(--color-text)}.article-body tbody tr:nth-child(2n){background:var(--color-bg-soft)}.article-body tbody tr:last-child td{border-bottom:none}.article-body tbody tr:hover{background:#ebebeb}.article-body hr{border:none;border-top:1px solid var(--color-border-gray);margin:var(--spacing-xl) 0}.article-body code{font-size:.9em;background:var(--color-bg-soft);padding:.1em .35em;border-radius:var(--radius-sm)}.article-body pre{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:var(--color-bg-soft);border-radius:var(--radius-md);overflow-x:auto;font-size:.9rem}.article-related{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(0,0,0,.08)}.article-related h2{color:var(--color-green-forest);font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.article-related ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.article-related a{color:var(--color-green-forest);font-weight:600;text-decoration:none}.article-related a:hover{color:var(--color-primary);text-decoration:underline}.section--soft{background-color:var(--color-bg-soft)}.project-nav__label{margin:var(--spacing-lg) 0 0;text-align:center;color:var(--color-green-forest);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}
