/* Shared case-page bits. Next case: a flat take on the Home carousel, on light cards like the Work page. Cards drift past; hovering a card shrinks its image
   inside the card to show the case name above and the services below. Markup in each case page. */
.nx{padding:var(--sec) 0 32px;overflow-x:clip}
.nx-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin:0 0 28px}
.nx-all{font-size:var(--t-ui);color:#363636;text-decoration:none}
.nx-all:hover{color:#0a0a0a}
.nx-view{position:relative;margin:0 calc(50% - 50vw);overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.nx-view:active{cursor:grabbing}
.nx-track{display:flex;gap:16px;width:max-content;margin:0;padding:0 0 0 max(32px, calc(50vw - 720px));list-style:none;will-change:transform}
.nx-card{position:relative;display:block;width:clamp(260px, 28vw, 440px);aspect-ratio:4 / 3;border-radius:16px;overflow:hidden;background:#e6e6e6;color:#0a0a0a;text-decoration:none;-webkit-user-drag:none}
.nx-m{position:absolute;inset:0;border-radius:16px;overflow:hidden;background:#dcdcdc;transition:inset .7s cubic-bezier(.22,1,.36,1),border-radius .7s cubic-bezier(.22,1,.36,1)}
.nx-m img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.nx-t,.nx-s{position:absolute;left:20px;right:20px;opacity:0;transition:opacity .4s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.nx-t{top:16px;font-family:'GT Walsheim','DM Sans',system-ui,sans-serif;font-weight:500;font-size:var(--t-accent);line-height:1.2;letter-spacing:-0.01em;transform:translateY(-8px)}
.nx-s{bottom:16px;font-size:var(--t-small);color:#5a5a5a;transform:translateY(8px)}
.nx-card:hover .nx-m,.nx-card:focus-visible .nx-m{inset:58px 12px 46px;border-radius:10px}
.nx-card:hover :is(.nx-t,.nx-s),.nx-card:focus-visible :is(.nx-t,.nx-s){opacity:1;transform:none}
.nx-card:focus-visible{outline:2px solid #0a0a0a;outline-offset:4px}
/* Touch screens have no hover: show names and services all the time. */
@media (hover:none){.nx-m{inset:58px 12px 46px;border-radius:10px}.nx-t,.nx-s{opacity:1;transform:none}}
/* Reduced motion: no drift, a plain sideways scroll. */
.nx-still{overflow-x:auto;scroll-snap-type:x mandatory;cursor:auto}
.nx-still .nx-card{scroll-snap-align:start}
@media (max-width:767px){.nx-track{padding-left:16px;gap:10px}.nx-card{width:78vw}}
@media (min-width:1800px){.nx-track{padding-left:calc(50vw - 800px)}}
@media (prefers-reduced-motion:reduce){.nx-m,.nx-t,.nx-s{transition:none}}

/* Case titles: a quiet pill saying how the imagery below was made (AI imagery, AI video). */
.ai-pill{display:inline-flex;align-items:center;margin-left:.6em;padding:.42em .8em;border:1px solid rgba(10,10,10,0.12);border-radius:999px;font-family:'Geist',sans-serif;font-size:var(--t-caption);font-weight:500;font-style:normal;line-height:1;letter-spacing:0;color:#5a5a5a;vertical-align:middle;white-space:nowrap;position:relative;top:-.12em}
