.work{background:var(--white)}.work-grid{grid-template-columns:repeat(12,1fr);gap:10px;display:grid}.wk{background:var(--ink);border-radius:2px;text-decoration:none;display:block;position:relative;overflow:hidden}.wk img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease)}.wk:hover img{transform:scale(1.05)}.wk-cap{z-index:2;opacity:0;width:100%;transition:opacity .45s var(--ease), transform .45s var(--ease);background:linear-gradient(#0000,#0e0e0ed1);flex-direction:column;gap:5px;padding:14px 16px;display:flex;position:absolute;bottom:0;left:0;transform:translateY(12px)}.wk:hover .wk-cap,.wk:focus-visible .wk-cap{opacity:1;transform:translateY(0)}.wk-cap .t{font-family:var(--font-display), sans-serif;color:#fff;letter-spacing:-.02em;font-size:.92rem;font-weight:700;line-height:1.12}.wk-cap .meta{font-family:var(--font-mono), monospace;letter-spacing:.09em;text-transform:uppercase;color:#ffffffb3;flex-wrap:wrap;align-items:center;gap:8px;font-size:.62rem;display:flex}.wk-cap .meta .sep{opacity:.45}.wk-cap .meta .svc-lbl{color:#fff}.wk-job{appearance:none;width:100%;font:inherit;text-align:left;cursor:pointer;border:0;margin:0;padding:0}.wk-tag{z-index:2;background:var(--paper);color:var(--ink);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;opacity:0;transition:opacity .45s var(--ease), transform .45s var(--ease);border-radius:2px;padding:6px 9px;font-size:.6rem;font-weight:700;position:absolute;top:12px;right:12px;transform:translateY(-6px)}.wk:hover .wk-tag,.wk:focus-visible .wk-tag{opacity:1;transform:translateY(0)}.wa,.wb,.wc{aspect-ratio:4/3;grid-column:span 4}.wd,.we,.wf,.wg{aspect-ratio:3/4;grid-column:span 3}.wh,.wi,.wj,.w11,.w12,.w13{aspect-ratio:4/3;grid-column:span 4}@media (max-width:768px){.work-grid{grid-template-columns:repeat(2,1fr);gap:8px}.wa,.wb,.wc,.wd,.we,.wf,.wg,.wh,.wi,.wj,.w11,.w12,.w13{aspect-ratio:1;grid-column:span 1}.wk-cap,.wk-tag{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.wk img,.wk-cap,.wk-tag{transition:none}}
.js-scrim{z-index:200;animation:js-fade .25s var(--ease);background:#0e0e0ebd;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0}.js-modal{background:var(--ink);width:min(1200px,100%);height:min(640px,100dvh - 56px);animation:js-in .25s var(--ease);border-radius:2px;outline:none;display:flex;position:relative;overflow:hidden}@keyframes js-fade{0%{opacity:0}to{opacity:1}}@keyframes js-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.js-close{z-index:6;color:#fff;cursor:pointer;background:#0e0e0e8c;border:0;border-radius:50%;place-items:center;width:38px;height:38px;transition:background .25s;display:grid;position:absolute;top:14px;right:14px}.js-close:hover{background:#0e0e0ed9}.js-photo{aspect-ratio:1;background:var(--ink-soft);flex:none;max-width:58%;height:100%;position:relative}.js-frame{opacity:0;transition:opacity .35s var(--ease);pointer-events:none;position:absolute;inset:0}.js-frame.on{opacity:1}.js-nav{z-index:5;color:#fff;cursor:pointer;background:#0e0e0e8c;border:0;border-radius:50%;place-items:center;width:38px;height:38px;transition:background .25s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.js-nav:hover{background:#0e0e0ed9}.js-prev{left:12px}.js-next{right:12px}.js-count{z-index:5;font-family:var(--font-mono), monospace;letter-spacing:.14em;color:#fff;background:#0e0e0e8c;border-radius:2px;padding:5px 9px;font-size:.62rem;font-weight:700;position:absolute;bottom:12px;left:14px}.js-panel{min-width:0;color:var(--paper);flex-direction:column;flex:1;padding:36px 40px 30px;display:flex;overflow-y:auto}.js-eyebrow{font-family:var(--font-mono), monospace;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in srgb, var(--paper) 55%, transparent);font-size:.66rem;font-weight:700}.js-name{font-family:var(--font-display), sans-serif;letter-spacing:-.025em;color:var(--paper);margin:12px 0 0;font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;line-height:1.05}.js-sub{color:color-mix(in srgb, var(--paper) 62%, transparent);margin:8px 0 0;font-size:.92rem;line-height:1.4}.js-chips{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.js-chip{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--paper) 32%, transparent);color:var(--paper);border-radius:2px;padding:7px 11px;font-size:.62rem;font-weight:700;text-decoration:none;transition:background .25s,color .25s,border-color .25s}.js-chip:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}.js-specs{margin:22px 0 0}.js-spec{border-top:1px solid color-mix(in srgb, var(--paper) 16%, transparent);justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;display:flex}.js-spec-k{font-family:var(--font-mono), monospace;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb, var(--paper) 55%, transparent);font-size:.64rem;font-weight:700}.js-spec-v{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;text-align:right;color:var(--paper);margin:0;font-size:.72rem;font-weight:700}.js-reveal{border:0;border-top:1px solid color-mix(in srgb, var(--paper) 16%, transparent);cursor:pointer;background:0 0;width:100%}.js-ballpark .js-dots{white-space:nowrap;letter-spacing:.3em;color:color-mix(in srgb, var(--paper) 30%, transparent);flex:1;font-size:.72rem;overflow:hidden}.js-ballpark .js-tap{font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--paper);font-size:.64rem;font-weight:700;transition:opacity .25s}.js-reveal:hover .js-tap{opacity:.65}.js-band{font-family:var(--font-display), sans-serif;letter-spacing:-.01em;color:var(--paper);font-size:19px;font-weight:800}.js-ctas{flex-direction:column;gap:10px;margin-top:auto;padding-top:26px;display:flex}.js-cta-primary,.js-cta-ghost{font-family:var(--font-display), sans-serif;letter-spacing:-.01em;transition:transform .4s var(--ease), background .25s ease, color .25s ease;border-radius:2px;justify-content:center;align-items:center;gap:10px;padding:14px 22px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.js-cta-primary{background:var(--paper);color:var(--ink)!important}.js-cta-ghost{border:1px solid color-mix(in srgb, var(--paper) 35%, transparent);color:var(--paper)}.js-cta-primary:hover,.js-cta-ghost:hover{transform:translateY(-2px)}.js-cta-ghost:hover{background:var(--paper);color:var(--ink)}@media (max-width:859px){.js-scrim{align-items:flex-start;padding:14px;overflow-y:auto}.js-modal{flex-direction:column;width:100%;height:auto;margin:auto 0}.js-photo{aspect-ratio:16/10;width:100%;max-width:none;height:auto}.js-panel{padding:26px 22px 24px;overflow:visible}.js-name{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){.js-scrim,.js-modal{animation:none}.js-frame,.js-chip,.js-close,.js-nav,.js-cta-primary,.js-cta-ghost{transition:none}}
