.work-shot{position:relative;display:block;width:100%;margin:0;padding:0;border:1px solid #2a2a2a;background:#000;overflow:hidden;cursor:zoom-in;transition:border-color .14s linear,box-shadow .14s linear,transform .14s linear}.work-shot img{display:block;width:100%;height:auto;filter:grayscale(1) brightness(.42) contrast(1.12);transition:filter .26s linear,transform .32s cubic-bezier(.22,1,.36,1)}.work-shot__view{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;background:linear-gradient(180deg,#00000059,#0000008c);transition:background .24s linear;pointer-events:none}.work-shot__frame{--c: rgba(255, 255, 255, .9);--t: 2px;--l: 16px;width:clamp(44px,11%,76px);aspect-ratio:1;background:linear-gradient(var(--c),var(--c)) 0 0 / var(--l) var(--t),linear-gradient(var(--c),var(--c)) 0 0 / var(--t) var(--l),linear-gradient(var(--c),var(--c)) 100% 0 / var(--l) var(--t),linear-gradient(var(--c),var(--c)) 100% 0 / var(--t) var(--l),linear-gradient(var(--c),var(--c)) 0 100% / var(--l) var(--t),linear-gradient(var(--c),var(--c)) 0 100% / var(--t) var(--l),linear-gradient(var(--c),var(--c)) 100% 100% / var(--l) var(--t),linear-gradient(var(--c),var(--c)) 100% 100% / var(--t) var(--l);background-repeat:no-repeat;animation:work-frame-breathe 2.4s ease-in-out infinite}.work-shot__label{font-family:var(--font-mono);font-size:.66rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#fff;opacity:.85;animation:work-label-blink 2.4s ease-in-out infinite}@keyframes work-frame-breathe{0%,to{transform:scale(.86);opacity:.55}50%{transform:scale(1);opacity:1}}@keyframes work-label-blink{0%,to{opacity:.4}50%{opacity:.95}}.work-shot:hover img,.work-shot:focus-visible img{filter:grayscale(0) brightness(1) contrast(1);transform:scale(1.015)}.work-shot:hover .work-shot__view,.work-shot:focus-visible .work-shot__view{background:linear-gradient(180deg,#0000,#0000001f)}.work-shot:hover .work-shot__frame,.work-shot:focus-visible .work-shot__frame{animation:none;transform:scale(1.12);--c: #fff}.work-shot:hover .work-shot__label,.work-shot:focus-visible .work-shot__label{animation:none;opacity:1}.work-shot:hover,.work-shot:focus-visible{border-color:#fff;box-shadow:8px 8px #000000e6,8px 8px 0 1px #2a2a2a;transform:translate(-3px,-3px);outline:none}@media(max-width:640px){.work-shot:hover{transform:none;box-shadow:5px 5px #000000e6}}@media(prefers-reduced-motion:reduce){.work-shot__frame,.work-shot__label{animation:none}}.lightbox{position:fixed;inset:0;z-index:200;display:none;flex-direction:column;background:#000000eb;backdrop-filter:blur(2px);padding:clamp(.75rem,3vw,2.5rem)}.lightbox.is-open{display:flex}.lightbox__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex:0 0 auto;padding-bottom:.75rem}.lightbox__meta{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#707070;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lightbox__close{flex:0 0 auto;border:1px solid #2a2a2a;background:transparent;color:#fff;padding:.4rem .75rem;font-family:var(--font-mono);font-size:.8rem;font-weight:800;letter-spacing:.1em;cursor:pointer;transition:border-color 80ms linear,background 80ms linear,color 80ms linear}.lightbox__close:hover{border-color:#fff;background:#fff;color:#000}.lightbox__img{flex:1 1 auto;min-height:0;width:100%;object-fit:contain;border:1px solid #2a2a2a}.case-body{counter-reset:case-section}.prose-brut{color:#a0a0a0;font-size:1.05rem;line-height:1.75}.prose-brut h2{counter-increment:case-section;color:#fff;font-family:var(--font-mono);font-size:1.15rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:0;padding:2.75rem 0 .4rem;border-top:1px solid #2a2a2a;position:relative}.prose-brut h2:before{content:counter(case-section,decimal-leading-zero);display:block;font-size:.72rem;font-weight:700;letter-spacing:.18em;color:var(--accent);margin-bottom:.55rem}.prose-brut h2:first-child{padding-top:0;border-top:none}.prose-brut p,.prose-brut ul,.prose-brut ol,.prose-brut blockquote{max-width:68ch}.prose-brut p{margin:0 0 1rem}@media(min-width:900px){.prose-brut{padding-left:18rem}.prose-brut h2{position:relative;margin:4rem 0 1.25rem;padding:1.5rem 0 0;border-top:1px solid #2a2a2a;font-size:1.05rem;letter-spacing:.06em}.prose-brut h2:first-child{margin-top:0;padding-top:0;border-top:none}.prose-brut h2{width:14rem;margin-left:-18rem;position:sticky;top:6rem}.prose-brut h2:after{content:"";position:absolute;top:-1px;left:0;width:calc(100% + 18rem);border-top:1px solid #2a2a2a}.prose-brut h2:first-child:after{display:none}.prose-brut h2{border-top:none}.prose-brut h2+*{margin-top:-2.4rem}}.prose-brut a{color:#fff;text-decoration:underline;text-underline-offset:3px}.prose-brut a:hover{background:#fff;color:#000;text-decoration:none}.prose-brut pre{background:#050505;border:1px solid #2a2a2a;padding:1rem 1.2rem;margin:1.2rem 0;overflow-x:auto;color:#fff;font-family:var(--font-mono);font-size:.8rem;line-height:1.5}.prose-brut code{font-family:var(--font-mono);background:#0a0a0a;padding:.1rem .35rem;border:1px solid #2a2a2a;color:#fff;font-size:.85em}.prose-brut pre code{background:none;border:none;padding:0;font-size:inherit}.prose-brut ul,.prose-brut ol{padding-left:1.4rem;margin:0 0 1rem}.prose-brut li{margin:.25rem 0}.prose-brut strong{color:#fff;font-weight:700}.prose-brut blockquote{border-left:2px solid #ff3b00;padding-left:1rem;margin:1.2rem 0;color:#fff;font-style:normal}.prose-brut hr{border:none;border-top:1px solid #2a2a2a;margin:2rem 0}
