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