/* categories — ported from categories.html */
.cat-block{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,6vw,110px);align-items:center;padding:clamp(60px,10vh,110px) var(--gutter);border-top:1px solid var(--line)}
.cat-block:nth-child(even) .cb-media{order:2}
.cb-media{position:relative;aspect-ratio:5/4;overflow:hidden;border-radius:0 var(--arch) 0 0;display:block;background:var(--ink-2)}
.cb-media img{position:absolute;inset:-8% 0;height:116%;transition:transform 1.6s var(--ease)}
.cb-media:hover img{transform:scale(1.04)}
.cb-num{font-size:12px;letter-spacing:.2em;color:var(--olive);font-weight:500}
.cb-title{font-weight:300;font-size:clamp(46px,6.4vw,110px);line-height:.95;letter-spacing:-.055em;margin:18px 0 24px}
.cb-title a{transition:color .5s}
.cb-title a:hover{color:var(--olive)}
.cb-subs{list-style:none;margin:34px 0 40px;border-top:1px solid var(--line)}
.cb-subs a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);font-size:17px;letter-spacing:-.015em;transition:padding .6s var(--ease),color .4s}
.cb-subs a span{font-size:12px;color:var(--muted);letter-spacing:.06em}
.cb-subs a:hover{padding-left:14px;color:var(--olive)}
.cb-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.cb-thumbs a{width:64px;height:64px;background:var(--white);overflow:hidden;transition:border-radius .6s var(--ease)}
.cb-thumbs a:hover{border-radius:0 18px 0 0}
.cb-thumbs .contain img{object-fit:contain;padding:6px}
.viz-band{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:end}
.viz-band .lead{margin-top:24px}
@media (max-width:860px){.cat-block,.viz-band{grid-template-columns:1fr}.cat-block:nth-child(even) .cb-media{order:0}}
