/* Journal-specific styles, on top of base.css (shared with the main site). */
.j-hero .lede{color:var(--on-dark-2)}
.j-cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.j-cats a{border:1px solid rgba(238,240,234,.3);padding:7px 14px;font-size:14px;text-decoration:none;color:var(--on-dark)}
.j-cats a:hover,.j-cats a[aria-current]{background:var(--flamingo);border-color:var(--flamingo);color:var(--marsh)}
.j-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.j-card{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}
.j-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--mist)}
.j-img img,.j-img svg{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.j-card:hover .j-img img,.j-card:hover .j-img svg{transform:scale(1.03)}
.j-body{padding:18px 18px 22px;display:grid;gap:10px}
.j-meta{display:flex;gap:14px;flex-wrap:wrap;font:500 12.5px var(--mono);color:var(--reed)}
.j-card h2{font-size:24px;line-height:1.15}
.j-card h2 a{text-decoration:none}
.j-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.j-ex{color:var(--muted);font-size:15.5px}
@media (min-width:900px){.j-feature{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr}.j-feature .j-img{aspect-ratio:auto;min-height:340px}.j-feature .j-body{align-content:center;padding:32px}.j-feature h2{font-size:34px}}
.j-pager{margin-top:36px}
.j-pager .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.j-pager a,.j-pager span{border:1px solid var(--line);padding:8px 14px;text-decoration:none;background:var(--paper)}
.j-pager .current{background:var(--marsh);color:var(--on-dark)}
.screen-reader-text{position:absolute;left:-9999px}
/* single */
.j-narrow{max-width:800px}
.j-post-head .lede{color:var(--on-dark-2)}
.j-post-head{padding-bottom:110px}
.j-cover{margin-top:-80px;position:relative}
.j-cover img,.j-cover svg{width:100%;aspect-ratio:2/1;object-fit:cover;display:block;border:1px solid var(--line)}
.j-content{max-width:none;margin-top:40px;font-size:18px;line-height:1.75}
.j-content h2{font-size:clamp(26px,3vw,34px);margin-top:30px}
.j-content h3{font-size:22px;margin-top:20px;font-family:var(--serif)}
.j-content p,.j-content li{color:var(--ink)}
.j-content a{color:var(--marsh);text-decoration:underline;text-decoration-color:var(--flamingo);text-underline-offset:3px;text-decoration-thickness:2px}
.j-content ul,.j-content ol{padding-left:22px;display:grid;gap:8px}
.j-content table{width:100%;border-collapse:collapse;font-size:15.5px;background:var(--paper);border:1px solid var(--line);font-variant-numeric:tabular-nums;display:block;overflow-x:auto}
.j-content th{font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
.j-content td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.j-content blockquote{margin:0;border-left:3px solid var(--flamingo);padding:6px 0 6px 18px;font-family:var(--serif);font-size:22px}
.j-content .note-box{margin:6px 0}
.j-disc{margin-top:34px;font-size:13.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}
.ap-cta{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--marsh);color:var(--on-dark);padding:22px 24px;margin:10px 0}
.ap-cta .eyebrow{color:var(--khaki)}
.ap-cta p{color:var(--on-dark-2);margin:0}
.ap-cta .ap-cta-t{font-family:var(--serif);font-size:24px;color:var(--on-dark);margin:4px 0}
.j-content .ap-cta a.btn{color:var(--marsh);text-decoration:none}
.j-content .ap-proj{display:grid;gap:4px;border:1px solid var(--line);background:var(--paper);padding:16px 18px;text-decoration:none;margin:6px 0}
.ap-proj strong{font-family:var(--serif);font-weight:400;font-size:22px}
.ap-proj span{color:var(--muted);font-size:15px}
.ap-proj .go{color:var(--marsh);font-weight:600;font-size:14px}
.ap-proj:hover{border-color:var(--marsh)}
