.article-header nav a { font-family: var(--mono); font-size: .76rem; text-transform: uppercase; }
.article-hero { border-bottom: 1px solid var(--ink); min-width: 0; overflow: hidden; padding: 8rem 12vw 5rem; width: 100%; }
.article-hero h1 { font-size: clamp(4rem, 8.5vw, 9.5rem); font-weight: 600; letter-spacing: -.075em; line-height: .9; margin: 0; max-width: 1300px; }
.article-hero h1 em { color: var(--blue); font-family: Georgia, serif; font-weight: 400; }
.article-deck { font-size: clamp(1.2rem, 2vw, 1.7rem); line-height: 1.55; margin: 3rem 0; max-width: 900px; }
.article-meta { display: flex; flex-wrap: wrap; gap: 1.5rem 3rem; font-family: var(--mono); font-size: .72rem; text-transform: uppercase; }
.article-layout { display: grid; gap: 7vw; grid-template-columns: 260px minmax(0, 760px); justify-content: center; padding: 6rem 7vw 9rem; }
.article-aside { align-self: start; border-top: 1px solid var(--ink); position: sticky; top: 2rem; }
.aside-label { font-family: var(--mono); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.article-aside ol { list-style: none; margin: 1.5rem 0 0; padding: 0; }
.article-aside li { border-bottom: 1px solid var(--line); font-size: .82rem; line-height: 1.4; padding: .85rem 0; }
.article-aside a:hover { color: var(--blue); }
.article-body { font-size: 1.05rem; line-height: 1.82; }
.article-body .lead { font-size: 1.35rem; font-weight: 600; line-height: 1.6; }
.article-body h2 { font-size: clamp(2.2rem, 4vw, 4rem); letter-spacing: -.055em; line-height: 1.05; margin: 5rem 0 1.5rem; }
.article-body p { margin: 0 0 1.5rem; }
.article-body li { margin-bottom: .7rem; }
.article-body table { border-collapse: collapse; font-size: .86rem; line-height: 1.5; margin: 2rem 0; width: 100%; }
.article-body th, .article-body td { border: 1px solid var(--ink); padding: .8rem; text-align: left; vertical-align: top; }
.article-body th { background: var(--ink); color: white; }
.principle { background: var(--lime); border: 1px solid var(--ink); margin: 2.5rem 0; padding: 1.5rem; }
.principle span { display: block; font-family: var(--mono); font-size: .68rem; margin-bottom: .8rem; text-transform: uppercase; }
.principle p { font-size: 1.2rem; font-weight: 700; line-height: 1.5; margin: 0; }
.system-map { background: var(--ink); color: white; display: flex; flex-wrap: wrap; font-family: var(--mono); font-size: .72rem; gap: .7rem; justify-content: center; margin: 2.5rem 0; padding: 1.4rem; text-transform: uppercase; }
.system-map i { color: var(--lime); font-style: normal; }
.checklist { list-style: none; padding: 0; }
.checklist li { border-top: 1px solid var(--ink); padding: .9rem 0 .9rem 2rem; position: relative; }
.checklist li::before { content: "□"; left: 0; position: absolute; }
.article-author { align-items: initial; background: var(--paper-2); color: var(--ink); display: block; font-family: var(--sans); font-size: inherit; margin-top: 6rem; padding: 2.5rem; text-transform: none; }
.article-author h2 { font-size: 2rem; margin: 0 0 1rem; }
.article-author div { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.article-author a { border-bottom: 1px solid var(--ink); font-family: var(--mono); font-size: .72rem; text-transform: uppercase; }
.writing-index { max-width: 100%; min-width: 0; overflow: hidden; padding: 8rem 7vw 9rem; }
.writing-index-hero { border-bottom: 1px solid var(--ink); padding: 0 5vw 5rem; }
.writing-index-hero h1 { font-size: clamp(4rem, 8vw, 8.5rem); font-weight: 600; letter-spacing: -.075em; line-height: .92; margin: 1.5rem 0 2.5rem; max-width: 1250px; }
.writing-index-hero h1 em { color: var(--blue); font-family: Georgia, serif; font-weight: 400; }
.writing-index-hero > p:last-child { font-size: clamp(1.1rem, 2vw, 1.5rem); line-height: 1.6; max-width: 850px; }
.writing-list { display: grid; gap: 0; margin: 0 5vw; min-width: 0; }
.writing-card { border-bottom: 1px solid var(--ink); display: grid; gap: 1.2rem; min-width: 0; padding: 3rem 0; }
.writing-card > div { display: flex; font-family: var(--mono); font-size: .7rem; justify-content: space-between; letter-spacing: .04em; text-transform: uppercase; }
.writing-card h2 { font-size: clamp(2rem, 4vw, 4.5rem); letter-spacing: -.055em; line-height: 1; margin: 0; max-width: 1000px; }
.writing-card p { font-size: 1rem; line-height: 1.65; margin: 0; max-width: 760px; }
.writing-card strong { font-family: var(--mono); font-size: .72rem; text-transform: uppercase; }
.writing-card:hover h2, .writing-card:hover strong { color: var(--blue); }
@media(max-width:900px){.article-layout{grid-template-columns:1fr}.article-aside{display:none}.article-hero{padding:6rem 7vw 4rem}}
@media(max-width:580px){html,body{max-width:100%;overflow-x:hidden}.article-header nav{justify-self:end}.article-hero{padding:4rem 6vw}.article-hero h1{font-size:clamp(3rem,15vw,3.7rem);overflow-wrap:anywhere}.article-deck{font-size:1.08rem}.article-meta{gap:1rem 1.4rem}.article-meta span{font-size:.65rem}.article-layout{min-width:0;padding:4rem 6vw 6rem}.article-body{font-size:1rem;min-width:0}.article-body table{display:block;max-width:88vw;overflow-x:auto}.system-map{align-items:center;flex-direction:column;max-width:88vw}.system-map i{transform:rotate(90deg)}.writing-index{padding:5rem 6vw 6rem}.writing-index-hero{min-width:0;padding:0 0 3rem}.writing-index-hero h1{font-size:clamp(3rem,15vw,4rem);overflow-wrap:anywhere}.writing-index-hero>p:last-child{overflow-wrap:anywhere}.writing-list{margin:0}.writing-card{padding:2.2rem 0}.writing-card>div{flex-wrap:wrap;gap:.5rem 1rem}.writing-card h2,.writing-card p{max-width:100%;overflow-wrap:anywhere}}
