/* Presentations (present.js): the gallery of related full-screen presentations under a page's stage and explainer, and
   the presentations index (presentations.html). Cards show the whole still (contain, never cropped) on the page ground,
   no boxes or hairline frames around them; kit tokens only, both themes, 5px corners. */
.nxo-pr .pr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.nxo-pr .pr-head .sub{margin-bottom:0;max-width:68ch}
.pr-grp{margin-top:44px}.pr-head+.pr-grp{margin-top:0}
.pr-gh{margin:0 0 16px;font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--t3)}
.pr-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}
.pr-card{display:flex;flex-direction:column;gap:8px;min-width:0;color:inherit;text-decoration:none}
.pr-still{display:block;aspect-ratio:16/10;border-radius:var(--r,5px);background:var(--bg);overflow:hidden;margin-bottom:6px}
.pr-still img{display:block;width:100%;height:100%;object-fit:contain}
/* a CAD still is drawn on pure black (white in light): blended, its ground is the page's, so a whole object never sits in a box */
.pr-still img{mix-blend-mode:lighten}[data-theme=light] .pr-still img{mix-blend-mode:darken}
@media (prefers-color-scheme:light){:root:not([data-theme]) .pr-still img{mix-blend-mode:darken}}
.pr-k{font:500 11px var(--mono);letter-spacing:.04em;color:var(--t3);overflow-wrap:anywhere}
.pr-t{font-weight:500;font-size:15.5px;line-height:1.3;color:var(--t1)}
.pr-d{font-size:13.5px;line-height:1.5;color:var(--t2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pr-card:hover .pr-t,.pr-card:focus-visible .pr-t{color:var(--accent-text)}
.pr-card:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--r,5px)}
@media (max-width:1100px){.pr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.pr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.pr-d{-webkit-line-clamp:2}.pr-t{font-size:14.5px}}
/* the index: filters as chips, results as the same cards */
.nxo-pr#all{padding-top:48px}
.pr-filters{display:flex;flex-direction:column;gap:14px;margin:0 0 36px}
.pr-frow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pr-frow>span{flex:none;width:112px;font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--t3)}
.pr-frow select,.pr-frow input{min-height:36px;padding:0 10px;border:1px solid var(--hair2);border-radius:var(--r,5px);background:var(--bg);color:var(--t1);font:inherit;font-size:14px;max-width:100%}
.pr-frow input{flex:1 1 240px}
.pr-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border:1px solid var(--hair2);border-radius:4px;background:transparent;color:var(--t2);font:inherit;font-size:13.5px;cursor:pointer}
.pr-chip[aria-pressed=true]{color:var(--t1);border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}
.pr-chip:hover{color:var(--t1)}.pr-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pr-meta{margin:0 0 20px;font:400 12px var(--mono);color:var(--t3)}
.pr-more{margin-top:40px;text-align:center}
@media (max-width:760px){.pr-frow>span{width:100%}.pr-frow select{flex:1 1 140px}}
