:root{--paper:#fafaf7;--ink:#1c1b19;--ink-soft:#6b6862;--hairline:#e4e1da;--accent:#6e2a2a;--max:760px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Archivo,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}.wrap{max-width:960px;margin:0 auto;padding:0 32px}header.site{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:32px 0;display:flex}.wordmark{font-family:Fraunces,serif;font-size:19px;font-style:italic;font-weight:500}nav.main{gap:28px;display:flex}nav.main a{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid #0000;padding-bottom:2px;font-family:IBM Plex Mono,monospace;font-size:12px;transition:color .15s,border-color .15s}nav.main a:hover,nav.main a.current{color:var(--ink);border-color:var(--accent)}.hero{padding:88px 0 64px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 22px;font-family:IBM Plex Mono,monospace;font-size:12px}.hero h1{letter-spacing:-.01em;max-width:680px;margin:0 0 28px;font-family:Fraunces,serif;font-size:44px;font-weight:400;line-height:1.22}.hero p.lede{max-width:var(--max);color:var(--ink-soft);margin:0 0 32px;font-size:17px}.hero .cta{letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--accent);padding-bottom:3px;font-family:IBM Plex Mono,monospace;font-size:13px;display:inline-block}.index-section{border-top:1px solid var(--hairline);padding:20px 0 64px}.index-section .section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:40px 0 8px;font-family:IBM Plex Mono,monospace;font-size:12px}.client-row{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:24px;padding:22px 0;display:flex}.client-row:hover .client-name{color:var(--accent)}.client-name{font-family:Fraunces,serif;font-size:24px;font-weight:400;transition:color .15s}.client-tags{color:var(--ink-soft);letter-spacing:.03em;text-align:right;max-width:340px;font-family:IBM Plex Mono,monospace;font-size:11px}.filter-bar{border-top:1px solid var(--hairline);flex-wrap:wrap;gap:8px;margin-top:12px;padding:32px 0 8px;display:flex}.filter-bar .tag-chip{letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--hairline);cursor:pointer;color:var(--ink-soft);background:0 0;border-radius:2px;padding:7px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:border-color .15s,color .15s}.filter-bar .tag-chip:hover{border-color:var(--ink-soft);color:var(--ink)}.filter-bar .tag-chip.active{border-color:var(--accent);color:var(--accent)}.client-row[hidden]{display:none}.about-strip{border-top:1px solid var(--hairline);grid-template-columns:120px 1fr;align-items:start;gap:32px;padding:56px 0 72px;display:grid}.about-strip img{object-fit:cover;border-radius:2px;width:120px;height:120px}.about-strip h2{margin:0 0 10px;font-family:Fraunces,serif;font-size:20px;font-weight:400}.about-strip p{color:var(--ink-soft);max-width:var(--max);margin:0 0 12px}footer.site{border-top:1px solid var(--hairline);color:var(--ink-soft);justify-content:space-between;align-items:center;padding:32px 0 56px;font-family:IBM Plex Mono,monospace;font-size:12px;display:flex}footer.site a{border-bottom:1px solid var(--hairline)}footer.site a:hover{color:var(--accent);border-color:var(--accent)}.client-header{border-bottom:1px solid var(--hairline);padding:64px 0 40px}.client-header .eyebrow{margin-bottom:14px}.client-header h1{margin:0;font-family:Fraunces,serif;font-size:38px;font-weight:400}.pieces{flex-direction:column;gap:44px;padding:48px 0 72px;display:flex}.piece{border-bottom:1px solid var(--hairline);padding-bottom:44px}.piece:last-child{border-bottom:none}.piece img{border:1px solid var(--hairline);border-radius:2px;width:100%;margin-bottom:16px;display:block}.piece .piece-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.piece h3{margin:0 0 8px;font-family:Fraunces,serif;font-size:22px;font-weight:400}.piece a.view{color:var(--ink-soft);border-bottom:1px solid var(--hairline);font-family:IBM Plex Mono,monospace;font-size:12px}.piece a.view:hover{color:var(--accent);border-color:var(--accent)}@media (width<=640px){.hero h1{font-size:32px}.about-strip{grid-template-columns:1fr}.client-tags{display:none}}
