:root{--cyan:#007a6e;--blue:#0057c2;--fg:#0d1117;--fg-dim:#0d11178c;--ease-out:cubic-bezier(.22, 1, .36, 1)}.work-header{padding:140px 60px 56px}.work-header__inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;display:flex}.work-subhead{margin:0 0 40px;display:block;overflow:hidden}.fit-line{white-space:nowrap;letter-spacing:-.5px;color:var(--fg-dim);font-weight:500;line-height:1.12;display:block}.work-header__rule{background:#0d11171a;height:1px}.work-eyebrow{letter-spacing:3.5px;text-transform:uppercase;color:var(--cyan);margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px}.work-title{letter-spacing:-4px;color:var(--fg);margin:0;font-size:clamp(64px,8vw,128px);font-weight:700;line-height:.95}.featured-wrap{padding:32px 60px 16px}.featured-card{border-radius:4px;text-decoration:none;display:block;position:relative;overflow:hidden}.featured-img-clip{height:clamp(420px,62vh,720px);position:relative;overflow:hidden}.featured-img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);transform:scale(1.04)}.featured-card:hover .featured-img{transform:scale(1)}.featured-overlay{pointer-events:none;background:linear-gradient(#0000 30%,#080a102e 56%,#080a10d1 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.featured-meta{align-items:flex-end;gap:24px;width:100%;padding:36px 40px;display:flex}.meta-index{letter-spacing:3px;color:#fff6;flex-shrink:0;padding-bottom:4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;line-height:1}.meta-body{flex-direction:column;flex:1;gap:10px;display:flex}.meta-client{letter-spacing:-1.5px;color:#fff;font-size:clamp(28px,3.2vw,52px);font-weight:700;line-height:1}.meta-services{flex-wrap:wrap;gap:6px;display:flex}.service-tag{letter-spacing:2.5px;text-transform:uppercase;color:#ffffff8c;border:1px solid #ffffff2e;border-radius:2px;padding:4px 8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:9.5px;transition:color .2s,border-color .2s}.featured-card:hover .service-tag{color:#ffffffd9;border-color:#ffffff59}.meta-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.meta-year{letter-spacing:2px;color:#ffffff61;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px}.meta-arrow{letter-spacing:.3px;color:#fff;opacity:0;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);font-size:13px;font-weight:500;transform:translate(-8px)}.featured-card:hover .meta-arrow{opacity:1;transform:translate(0)}.grid-section{grid-template-columns:1fr 1fr;gap:16px;padding:16px 60px 120px;display:grid}@media (width<=768px){.grid-section{grid-template-columns:1fr;padding:16px 24px 80px}.featured-wrap{padding:24px 24px 12px}.work-header{padding:100px 24px 40px}.work-title{letter-spacing:-2px}}.grid-card{border-radius:4px;text-decoration:none;display:block;overflow:hidden}.grid-img-clip{height:clamp(260px,34vw,440px);position:relative;overflow:hidden}.grid-img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease-out);transform:scale(1.05)}.grid-card:hover .grid-img{transform:scale(1)}.grid-meta{border-top:1px solid #0d111714;align-items:center;gap:16px;margin-top:1px;padding:18px 4px 4px;display:flex}.grid-meta-body{flex-direction:column;flex:1;gap:6px;display:flex}.grid-client{letter-spacing:-.4px;color:var(--fg);font-size:clamp(16px,1.6vw,22px);font-weight:600;transition:color .2s}.grid-card:hover .grid-client{color:var(--cyan)}.grid-meta .service-tag{color:var(--fg-dim);border-color:#0d11171f}.grid-card:hover .grid-meta .service-tag{color:var(--fg);border-color:#0d111740}.grid-meta .meta-year{color:var(--fg-dim);flex-shrink:0}.reveal-up{opacity:0;transition:opacity .7s var(--ease-out) var(--d,0s), transform .7s var(--ease-out) var(--d,0s);transform:translateY(22px)}.reveal-up.is-visible{opacity:1;transform:translateY(0)}.reveal-clip{clip-path:inset(0 0 100%);transition:clip-path .9s var(--ease-out) calc(var(--d,0s) + var(--stagger,0s))}.reveal-clip.is-visible{clip-path:inset(0 0 0%)}.grid-card .reveal-up{transition-delay:calc(var(--stagger,0s) + .18s)}
