/* Journal index (/zhurnal/): article list with typographic covers and the method block. Loaded by the page template after site.css (scripts/site-lib.mjs, SECTION_CSS). */
.page-hero .wrap.narrow,.page-body .wrap.narrow{max-width:1240px}
.page-hero .kick i{background:var(--tomato);box-shadow:14px 0 0 var(--cobalt),28px 0 0 var(--ink);margin-right:28px}
.page-hero .lead{font-size:clamp(20px,1.7vw,26px);line-height:1.4;color:var(--ink);max-width:34ch;text-wrap:balance}
.prose .btn{text-decoration:none}
.prose .btn-pri{color:#fff}
.prose .btn-sec{color:var(--ink)}
.jz{font-size:17px;line-height:1.55}
.jz-list{border-bottom:1.5px solid var(--ink)}
.prose .jz a.jz-it{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(20px,3.4vw,64px);padding:clamp(22px,2.6vw,40px) 0;border-top:1.5px solid var(--ink);color:var(--ink);text-decoration:none}
.jz-it .cover{border-radius:26px;aspect-ratio:16/10;transition:transform .25s ease}
.jz-it:hover .cover{transform:translateY(-4px)}
.jz-it .cover span{font-size:14.5px;max-width:30ch}
.jz-it .cover b{font-size:clamp(80px,7.4vw,142px)}
.jz-b{display:flex;flex-direction:column;gap:14px;padding:4px 0}
.prose .jz-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font:500 14.5px/1.3 var(--f-b);color:var(--ink-2)}
.jz-k{display:inline-flex;align-items:center;gap:9px;color:var(--ink)}
.jz-k::before{content:"";flex:none;width:10px;height:10px;border-radius:3px;background:var(--c)}
.prose .jz-t{margin:0;font:700 clamp(26px,2.5vw,42px)/1.06 var(--f-d);letter-spacing:-.03em;text-wrap:balance}
.jz-l{color:var(--ink-2);max-width:58ch}
.jz-it .lnk{margin-top:auto;width:fit-content}
.jz-it:hover .lnk{gap:10px}
.jm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:center;margin-top:clamp(64px,7vw,120px);padding:clamp(24px,3.4vw,56px);border-radius:32px;background:var(--paper-2)}
.prose .jm-h{margin:14px 0 22px;font:700 clamp(32px,3.4vw,58px)/1 var(--f-d);letter-spacing:-.035em}
.prose .jm-rules{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.prose .jm-rules li{position:relative;margin:0;padding-left:28px}
.jm-rules li::before{content:"";position:absolute;left:0;top:.78em;width:14px;height:2px;background:var(--ink)}
.jm-obj{display:flex;flex-direction:column;gap:12px}
.jm-card{border-radius:20px;padding:18px 20px}
.jm-card.is-ok{background:var(--obj);color:#16140F;box-shadow:inset 5px 0 0 var(--cobalt),var(--sh-2)}
.jm-card.is-out{background:var(--sheet);color:var(--ink-2);border:1.5px dashed var(--line-2)}
.jm-tag{display:inline-flex;align-items:center;gap:6px;font:600 13px/1 var(--f-b);padding:6px 9px;border-radius:8px}
.jm-tag svg{width:14px;height:14px}
.is-ok .jm-tag{background:#DFE3FF;color:#16140F}
.is-out .jm-tag{background:var(--paper-2);color:var(--ink-2)}
.prose .jm-claim{margin-top:12px;font:700 clamp(19px,1.6vw,24px)/1.2 var(--f-d);letter-spacing:-.02em}
.jm-src{margin-top:6px;font-size:14px;line-height:1.4}
.is-ok .jm-src{color:#5E5A50}
.jm-obj .lnk{margin-top:6px;width:fit-content}
.jz .next{margin-top:clamp(40px,5vw,72px)}
.prose .jz .next .h2{margin:0;font-size:clamp(28px,2.8vw,46px);line-height:1.04;letter-spacing:-.035em}
@media (max-width:760px){
  .page-hero .lead{font-size:20px}
  .prose .jz a.jz-it{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px 0 26px}
  .jz-it .cover{aspect-ratio:auto;min-height:180px;border-radius:20px}
  .jz-it .cover b{font-size:clamp(64px,21vw,96px)}
  .prose .jz-t{font-size:24px}
  .jm{grid-template-columns:minmax(0,1fr);padding:20px;border-radius:24px}
}
/* the <style> block that used to open the page body pushed the first block down by the .prose rhythm; keep that offset */
.page-body .prose > .jz:first-child{margin-top:14px}
