/* Our Work — product media gallery, scoped to the work page. */
.work-project { gap:clamp(1.6rem,3.2vw,3.4rem); align-items:center; }
.work-project .feature-body { min-width:0; }
.work-project .feature-body .lead { max-width:56ch; }
.work-project .feature-list { gap:.6rem 1rem; margin-block:1.15rem; }
.work-project .feature-meta { margin-block-start:1rem; }
.work-showcase { min-width:0; padding:0; border:1px solid var(--line); overflow:hidden; border-radius:clamp(1rem,2vw,1.45rem); background:var(--card); box-shadow:var(--shadow-2); }
.work-showcase__heading { display:flex; gap:.8rem; justify-content:space-between; align-items:center; min-height:3rem; padding:.75rem clamp(.8rem,1.6vw,1.15rem); border-block-end:1px solid var(--line); }
.work-showcase__type { display:inline-flex;align-items:center;gap:.5rem;font-weight:650;font-size:.78rem;letter-spacing:.015em;color:var(--ink); }
.work-showcase__type svg{ width:1.05rem;height:1.05rem;flex:none;color:var(--blue); }
.work-showcase__count{ font-variant-numeric:tabular-nums;color:var(--ink-3);font-size:.78rem;font-weight:650;letter-spacing:.07em; white-space:nowrap; }
.work-media-stage { position:relative; width:100%;aspect-ratio:16/9;display:block;padding:0;border:0;background:#111926; overflow:hidden; }
.work-media-stage img, .work-media-stage video{display:block;width:100%;height:100%;object-fit:contain;background:#17212c; }
.work-media-stage--image{cursor:zoom-in;color:inherit;text-align:inherit; }
.work-media-stage--image:focus-visible{outline:3px solid var(--blue);outline-offset:-4px; }
.work-media-stage--image img{transition:transform .6s cubic-bezier(.2,.75,.3,1);}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.work-media-stage--image:hover img{transform:scale(1.018)}}
.work-media-stage__zoom { display:inline-flex;gap:.45rem;align-items:center;position:absolute;inset-inline-end:.85rem;inset-block-end:.85rem;border-radius:30px;color:white;background:rgba(9,18,30,.83);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);padding:.4rem .65rem;font-size:.72rem;font-weight:600;line-height:1.2;box-shadow:0 3px 12px rgba(0,0,0,.2); }
.work-media-stage__zoom svg {width:.87rem;height:.87rem;}
.work-media-stage--video video{aspect-ratio:16/9;}
.work-showcase__footer {padding:.7rem clamp(.75rem,1.6vw,1.1rem) .85rem; background:var(--card); }
.work-showcase__actions {display:flex;align-items:center;gap:.45rem;justify-content:space-between;min-height:2.3rem;}
.work-showcase__actions > button {display:grid;place-items:center;flex:none;inline-size:2.15rem;block-size:2.15rem;border:1px solid var(--line-2);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s;}
.work-showcase__actions > button:hover{border-color:var(--blue);background:var(--surface,rgba(100,140,180,.12));}
.work-showcase__actions > button:focus-visible {outline:2px solid var(--blue);outline-offset:2px;}
.work-showcase__actions svg{width:.9rem;height:.9rem;}
.work-showcase__caption { flex:1;min-width:0;text-align:center;font-size:.83rem;line-height:1.35;font-weight:650;color:var(--ink);}
.work-showcase__caption strong{display:block;font-weight:650;}
.work-showcase__caption small{font-weight:400;color:var(--ink-3);display:block;margin-block-start:.25rem;font-size:.72rem;}
.work-showcase__bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.3rem .9rem;margin-block-start:.4rem;}
.work-showcase__bottom .work-showcase__disclaimer{margin:0;}
.work-showcase__video-link{font-size:.72rem;font-weight:650;color:var(--blue);text-decoration:none;white-space:nowrap;}
.work-showcase__video-link:hover{text-decoration:underline;}
.work-showcase__video-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
.work-showcase__disclaimer{margin:.45rem 0 0;font-size:.68rem;color:var(--ink-3);line-height:1.35;}
.work-showcase--video .work-showcase__footer{padding-block:.8rem;}
.work-showcase--video .work-showcase__caption{text-align:start;}
/* Browser-native dialog: expands software screens without cropping or losing focus. */
.work-lightbox{ width:min(95vw,1450px); max-width:none;max-height:min(94dvh,970px);padding:0;border:1px solid rgba(255,255,255,.16);border-radius:1.2rem;background:#131b26;color:white;box-shadow:0 25px 100px #0009;overflow:hidden;}
.work-lightbox::backdrop{background:rgba(5,9,14,.88);backdrop-filter:blur(7px);}
.work-lightbox__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #ffffff2a;}
.work-lightbox__title{font-size:.95rem;font-weight:650;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.work-lightbox__close{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid #ffffff4d;border-radius:50%;background:#ffffff18;color:#fff;cursor:pointer;font-size:1.4rem;flex:none;}
.work-lightbox__stage{display:flex;align-items:center;justify-content:center;position:relative;min-height:150px;max-height:calc(94dvh - 150px);background:#0f161f;}
.work-lightbox__stage img{display:block;max-width:100%;max-height:calc(94dvh - 150px);width:auto;height:auto;object-fit:contain;}
.work-lightbox__control{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;border-radius:50%;width:2.6rem;height:2.6rem;border:1px solid #ffffff80;color:white;background:#07121bcc;cursor:pointer;z-index:2;}
.work-lightbox__control svg{width:1.05rem;height:1.05rem;}
.work-lightbox__control--prev{left:.7rem}.work-lightbox__control--next{right:.7rem}
.work-lightbox__foot{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem 1rem;color:#dde5eb;font-size:.82rem;border-top:1px solid #ffffff2a;}
.work-lightbox button:focus-visible{outline:2px solid #80caff;outline-offset:3px;}
@media(min-width:920px){.work-project {grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);} }
@media(max-width:919px){.work-project .work-showcase{order:-1}.work-project.is-flipped .feature-body{order:initial;} }
@media(max-width:520px){.work-showcase__heading{padding:.55rem .8rem;min-height:2.5rem}.work-showcase__footer{padding:.55rem .65rem .7rem}.work-showcase__disclaimer{font-size:.63rem}.work-media-stage__zoom{font-size:.65rem}.work-showcase__caption{font-size:.76rem}.work-lightbox{width:100vw;border-radius:.6rem}.work-lightbox__control{height:2.2rem;width:2.2rem}}
@media(prefers-reduced-motion:reduce){.work-media-stage--image img{transition:none}}


/* V3: gallery index is stored as hidden data, not rendered as pagination. */
.work-gallery__sources[hidden]{display:none!important}
/* Prevent native image/text selection tint while browsing with arrows or swipes. */
.work-media-stage--image,.work-media-stage--image img,.work-lightbox,.work-lightbox *{-webkit-user-select:none!important;user-select:none!important}
.work-media-stage--image img,.work-lightbox__stage img{-webkit-user-drag:none!important;user-drag:none!important}
.work-media-stage--image img,.work-lightbox__stage img{pointer-events:none}
.work-lightbox__control,.work-showcase__actions>button{touch-action:manipulation}
.work-lightbox__foot [data-lightbox-count]{display:none!important}
