.intro{padding-block:clamp(56px,8vw,96px) clamp(28px,4vw,48px)}.intro p{font-weight:500;font-size:clamp(1.4rem,2.6vw,2.1rem);line-height:1.25;letter-spacing:-.02em;margin:0;max-width:30ch;text-wrap:pretty}.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,56px)}.case-tile{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;font:inherit;color:inherit;text-align:left}.case-tile:focus-visible{outline:none;box-shadow:0 0 0 2px var(--signal)}.tile-img{position:relative;margin:0;aspect-ratio:4 / 5;overflow:hidden;background:var(--ink)}.tile-img img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.001);transition:transform .7s var(--ease),filter .7s var(--ease)}.tile-img:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#14140f75,#14140f14 42%,#14140f00 60%);transition:background .5s var(--ease)}.case-tile:hover .tile-img img,.case-tile:focus-visible .tile-img img{filter:blur(22px) saturate(1.15);transform:scale(1.14)}.case-tile:hover .tile-img:after,.case-tile:focus-visible .tile-img:after{background:#14140f75}.tile-head,.tile-foot{position:absolute;left:22px;right:22px;z-index:2;color:#fff}.tile-head{top:20px}.tile-foot{bottom:22px;display:flex;flex-direction:column;align-items:flex-start;opacity:0;transform:translateY(8px);transition:opacity .35s var(--ease) .05s,transform .35s var(--ease) .05s}.case-tile:hover .tile-foot,.case-tile:focus-visible .tile-foot{opacity:1;transform:none}.figure{margin:0;font-weight:500;font-size:clamp(2.6rem,4.6vw,4rem);line-height:.95;letter-spacing:-.03em}.figure-note{margin:6px 0 0;font-size:15px;color:#ffffffe0}.blurb{margin:0 0 16px;font-size:15.5px;line-height:1.45;max-width:30ch;text-shadow:0 1px 12px rgba(20,20,15,.25)}.open-cue{display:inline-flex;align-items:center;font-size:13px;line-height:1;color:#fff;padding:9px 14px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:#ffffff24;backdrop-filter:blur(8px);transition:background .2s var(--ease),border-color .2s var(--ease)}.case-tile:hover .open-cue{background:#ffffff38;border-color:#fffc}.tile-top{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px}.tile-top .year{font-family:var(--code);font-size:12px;color:var(--ink-45);font-variant-numeric:tabular-nums}.clients{padding-block:clamp(54px,7vw,84px) clamp(28px,4vw,48px);text-align:center}.clients .label{display:block;margin-bottom:26px}.logo-row{list-style:none;margin:0 auto;padding:0;max-width:820px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:26px clamp(28px,3.4vw,48px)}.logo-row img{height:30px;width:auto;max-width:150px;display:block;mix-blend-mode:multiply;filter:grayscale(1);opacity:.55;transition:opacity .25s var(--ease),filter .25s var(--ease)}.logo-row li:hover img{opacity:1;filter:none}.list-head{display:flex;justify-content:space-between;align-items:baseline;padding-block:clamp(40px,6vw,72px) 14px}.list-head h2{margin:0;font-weight:400}.archive{padding-bottom:clamp(80px,12vw,140px)}.arch-head,.arch-row{display:grid;grid-template-columns:54px minmax(0,2.4fr) minmax(0,1.3fr) minmax(0,1fr) 62px;gap:20px;align-items:center}.arch-head{padding-bottom:12px;border-bottom:1px solid var(--ink)}.arch-head button{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:13px;color:var(--ink-45);text-align:left;display:inline-flex;align-items:center;gap:6px;transition:color .2s var(--ease)}.arch-head button:hover,.arch-head button.is-active{color:var(--ink)}.arch-head .caret{font-size:8px;opacity:.55;transition:transform .25s var(--ease)}.arch-head button.is-active .caret{opacity:1}.arch-head button.is-desc .caret{transform:rotate(180deg)}.arch-head .num{font-size:13px;color:var(--ink-45)}.arch-list{border-bottom:1px solid var(--rule)}.arch-row{position:relative;padding-block:15px;border-bottom:1px solid var(--rule);transition:opacity .22s var(--ease)}.arch-row:last-child{border-bottom:0}.arch-row .n,.arch-row .year{font-family:var(--code);font-size:12px;font-variant-numeric:tabular-nums}.arch-row .n{color:var(--ink-25)}.arch-row .title{font-size:17px}.arch-row .client,.arch-row .kind{font-size:13px;color:var(--ink-45)}.arch-row .year{color:var(--ink-45);text-align:right}.arch-list.is-hovering .arch-row{opacity:.3}.arch-list.is-hovering .arch-row.is-hot{opacity:1}.arch-row .tick{position:absolute;left:-22px;top:50%;width:14px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .25s var(--ease)}.arch-row.is-hot .tick{transform:scaleX(1)}.preview{position:fixed;z-index:60;pointer-events:none;width:340px;background:var(--paper-lift);border:1px solid var(--ink);box-shadow:6px 6px #14140f29;padding:12px 12px 16px;opacity:0;transform:translate(-50%,-50%) scale(.97);transition:opacity .16s var(--ease),transform .16s var(--ease)}.preview.is-on{opacity:1;transform:translate(-50%,-50%) scale(1)}.preview .pv-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;margin-bottom:12px;background:var(--paper)}.preview .pv-img[hidden]{display:none}.preview .pv-label{font-size:13px;color:var(--ink-45);padding-inline:6px}.preview .pv-title{font-size:18px;line-height:1.2;margin:6px 0;font-weight:500;padding-inline:6px}.preview .pv-note{font-size:14px;line-height:1.45;color:var(--ink-70);margin:0;padding-inline:6px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}@media(hover:none){.tile-foot{opacity:1;transform:none}.tile-img:after{background:linear-gradient(180deg,#14140f75,#14140f00 40% 50%,#14140f8c)}}@media(max-width:900px){.cases{grid-template-columns:1fr}.arch-head,.arch-row{grid-template-columns:34px minmax(0,1fr) 54px;gap:12px}.arch-row .client,.arch-head .c-client,.arch-row .kind,.arch-head .c-kind,.preview{display:none}}@media(max-width:720px){.intro{padding-block:36px 24px}.intro p{font-size:1.35rem}.cases{gap:28px}.tile-img{aspect-ratio:1 / 1}.tile-head{top:16px;left:16px;right:16px}.tile-foot{left:16px;right:16px;bottom:16px}.figure{font-size:2.4rem}.blurb{font-size:14.5px;margin-bottom:12px}.clients{padding-block:40px}.list-head{padding-block:36px 12px}.logo-row img{height:26px}.arch-row{padding-block:12px}.arch-row .title{font-size:15px;line-height:1.35}.arch-head,.arch-row{grid-template-columns:28px minmax(0,1fr) 44px;gap:10px}}
