/* ---------- article layout ---------- */
.post-head{padding:var(--s5) 0 var(--s3);border-bottom:1px solid var(--line-2);
  max-width:var(--wrap);margin:0 auto;padding-left:28px;padding-right:28px}
.post-meta{font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--fog);margin-bottom:16px}
.post-title{font-family:var(--display);font-weight:700;letter-spacing:-.045em;
  line-height:.98;font-size:clamp(2.2rem,5.6vw,4.2rem);color:var(--ghost);margin:0;max-width:20ch}
.post-standfirst{margin-top:var(--s2);font-size:1.1rem;color:var(--mist);max-width:60ch;line-height:1.55}
.article{max-width:72ch;margin:0 auto;padding:var(--s4) 28px var(--s5)}
.article p{font-size:1.05rem;line-height:1.75;color:var(--mist);margin-bottom:22px}
.article h2{font-family:var(--display);font-weight:600;letter-spacing:-.03em;
  font-size:clamp(1.5rem,3vw,2.1rem);color:var(--ghost);margin:var(--s4) 0 14px}
.article h3{font-family:var(--display);font-weight:600;font-size:1.25rem;color:var(--ghost);margin:var(--s3) 0 10px}
.article ul,.article ol{margin:0 0 22px 22px;color:var(--mist)}
.article li{margin-bottom:10px;line-height:1.65;font-size:1.02rem}
.article a{color:var(--ghost);text-decoration:underline;text-underline-offset:3px}
.article blockquote{border-left:2px solid var(--ghost);margin:var(--s3) 0;padding-left:22px;
  font-size:1.1rem;color:var(--ghost)}
.article code{font-family:var(--mono);font-size:.9em;background:var(--surface);padding:2px 6px}
.article img{margin:var(--s3) 0;width:100%;height:auto}
.article table{width:100%;border-collapse:collapse;margin:var(--s3) 0}
.article th,.article td{text-align:left;padding:12px 14px 12px 0;
  border-bottom:1px solid var(--line-2);font-size:.96rem}
.article th{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--fog)}
.post-foot{max-width:72ch;margin:0 auto;padding:var(--s3) 28px var(--s5);
  border-top:1px solid var(--line-2)}
/* ---------- archive list ---------- */
.arch{max-width:var(--wrap);margin:0 auto;padding:var(--s4) 28px var(--s5)}
.arch-item{display:grid;grid-template-columns:12ch 1fr;gap:26px;padding:22px 0;
  border-bottom:1px solid var(--line-2);align-items:baseline}
.arch-item:first-child{border-top:1px solid var(--line-2)}
.arch-date{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--fog)}
.arch-item h2{font-family:var(--display);font-weight:600;letter-spacing:-.03em;
  font-size:clamp(1.2rem,2.4vw,1.75rem);color:var(--ghost);margin:0}
.arch-item h2 a{color:inherit}
.arch-item h2 a:hover{opacity:.75}
.arch-ex{margin-top:9px;font-size:.95rem;color:var(--fog);line-height:1.55;max-width:70ch}
@media(max-width:640px){.arch-item{grid-template-columns:1fr;gap:8px}}
.pager{display:flex;gap:14px;margin-top:var(--s4)}
.pager a{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  border:1px solid var(--line-2);padding:11px 18px;color:var(--ghost)}
.pager a:hover{background:var(--ghost);color:var(--btn-fg)}
