@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/newsreader-latin-500-normal.B66TYsaK.woff2)format("woff2"),url(/_astro/newsreader-latin-500-normal.DFwuUcdu.woff)format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/geist-sans-latin-400-normal.gapTbOY8.woff2)format("woff2"),url(/_astro/geist-sans-latin-400-normal.BOaIZNA2.woff)format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/geist-sans-latin-500-normal.uokXdC-Q.woff2)format("woff2"),url(/_astro/geist-sans-latin-500-normal.CN2lyvyL.woff)format("woff")}:root{--paper:#0a0a0a;--ink:#f3f1ec;--muted:#a39e96;--well:#141414;--hairline:#ffffff29;--scrim:#000000b3;--ease-enter:cubic-bezier(.22, 1, .36, 1);--ease-leave:cubic-bezier(.4, 0, 1, 1);--page-pad:20px;--header-pad:28px;--stack-gap:28px;color-scheme:dark}@media (width>=720px){:root{--page-pad:32px;--header-pad:40px;--stack-gap:36px}}@media (width>=1100px){:root{--page-pad:48px;--header-pad:48px;--stack-gap:40px}}*,:before,:after{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-family:Geist Sans,Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.45}.wrap{width:min(1560px, calc(100% - (2 * var(--page-pad))));padding-top:var(--header-pad);margin-inline:auto;padding-bottom:80px}.header{margin-bottom:var(--stack-gap);justify-content:center;align-items:center;gap:16px;display:flex}.portrait{object-fit:cover;flex:none;width:108px;height:108px}.identity{text-align:center;min-width:0}.name{letter-spacing:-.02em;margin:0;font-family:Newsreader,Georgia,serif;font-size:clamp(1.75rem,2vw,2.25rem);font-weight:500;line-height:1.1}.gallery-title{width:100%;margin:0 0 var(--stack-gap);letter-spacing:-.02em;text-align:center;align-items:center;gap:20px;font-family:Newsreader,Georgia,serif;font-size:clamp(1.6rem,1.85vw,2.05rem);font-weight:500;line-height:1.15;display:flex}.gallery-title span{flex:0 auto}.gallery-title:before,.gallery-title:after{content:"";background:#f3f1ec66;flex:2rem;min-width:1.5rem;height:1px}.descriptor{color:var(--muted);margin:4px 0 0;font-size:.9375rem;line-height:1.4}.pitch{max-width:40rem;margin:0 auto var(--stack-gap);text-align:center}.pitch h2{letter-spacing:-.02em;margin:0;font-family:Newsreader,Georgia,serif;font-size:clamp(1.35rem,1.6vw,1.7rem);font-weight:500;line-height:1.2}.pitch p{color:var(--muted);margin:12px 0 0;font-size:.9375rem;line-height:1.5}.pitch a{color:var(--ink);letter-spacing:.08em;text-underline-offset:4px;margin-top:16px;font-size:.8125rem;font-weight:500;display:inline-block}.pitch a:hover,.pitch a:focus-visible{text-decoration-thickness:2px}.links{flex-wrap:wrap;justify-content:center;gap:8px 16px;margin:8px 0 0;padding:0;list-style:none;display:flex}.links a,.play{color:var(--ink);font:inherit;font-size:.875rem;line-height:1}.links a{text-underline-offset:3px;text-decoration-color:#0000}.links a:hover,.links a:focus-visible,.play:hover,.play:focus-visible{text-underline-offset:3px;text-decoration:underline}.play{cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:8px 0 0;padding:0;text-decoration:underline}.gallery{grid-template-columns:1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.gallery{grid-template-columns:1fr 1fr}}@media (width>=1100px){.gallery{grid-template-columns:1fr 1fr 1fr}}.tile{scroll-margin-top:24px}.tile:focus{outline:none}.tile:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.frame{aspect-ratio:16/9;background:var(--well);box-shadow:inset 0 0 0 1px var(--hairline);position:relative;overflow:hidden}.frame video{object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;display:block}.caption{scrollbar-width:thin;scrollbar-color:#f3f1ec59 transparent;background:var(--scrim);opacity:0;pointer-events:none;text-align:center;transition:opacity .2s var(--ease-leave);flex-direction:column;justify-content:safe center;align-items:center;gap:8px;padding:16px 10px;display:flex;position:absolute;inset:0;overflow-y:auto}.caption h3,.caption p{margin:0}.caption h3{font-size:1rem;font-weight:500;line-height:1.3}.summary{width:100%;font-size:.9375rem;line-height:1.45}.summary p+p{margin-top:.35em}.meta{color:#f3f1ecc7;font-size:.75rem;line-height:1.4}.project-links{flex-wrap:wrap;justify-content:center;gap:8px 14px;width:100%;margin:0;padding:0;list-style:none;display:flex}.project-links a,.project-links span{color:inherit;text-underline-offset:3px;align-items:center;gap:6px;font-size:.875rem;line-height:1.2;text-decoration-color:#0000;display:inline-flex}.project-links a:hover,.project-links a:focus-visible{text-decoration:underline}.project-links img{object-fit:contain;width:16px;height:16px}@media (width<=719px){.summary{font-size:.875rem}}@media (hover:hover) and (pointer:fine){.tile:hover .caption{opacity:1;pointer-events:auto;transition-duration:.48s;transition-timing-function:var(--ease-enter)}}.tile:focus-within .caption,.tile.is-open .caption,.tile:target .caption{opacity:1;pointer-events:auto;transition-duration:.48s;transition-timing-function:var(--ease-enter)}@media (prefers-reduced-motion:reduce){.caption{transition:none}}.clients{margin-top:var(--stack-gap)}.client-grid{grid-template-rows:repeat(2,auto);grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.client-grid a{aspect-ratio:1;justify-content:center;align-items:center;display:flex}.client-grid img{object-fit:contain;width:72%;height:72%}.colophon{color:var(--muted);text-align:center;margin:40px 0 0;font-size:.75rem;line-height:1.4}
