:root{--ink:#191919;--paper:#f5f4f0;--line:#d5d3cd;--muted:#66645e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #ae4c35;outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.02;letter-spacing:-.055em}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}header{display:flex;justify-content:space-between;align-items:center;padding:26px 5%;border-bottom:1px solid var(--line);position:relative;background:var(--paper);z-index:2}.wordmark{font-size:19px;font-weight:900;letter-spacing:-1px;line-height:.93;display:inline-block}.wordmark>span{display:block}.mark{margin-left:10px}nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav-contact{border-bottom:1px solid var(--ink);padding:9px 0}.nav-contact span{margin-left:30px}.menu{display:none}.skip{position:absolute;left:10px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.hero{padding:68px 5% 55px;display:grid;grid-template-columns:1.05fr 1fr;gap:35px;min-height:670px;overflow:hidden;align-items:center}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:600;text-transform:uppercase;display:flex;align-items:center;gap:9px}.dot{width:7px;height:7px;background:var(--ink);border-radius:50%;display:inline-block}.hero h1{font-size:clamp(54px,5.8vw,88px);margin:28px 0;letter-spacing:-.07em}.hero h1 em{font-size:1.09em}.intro{font-size:17px;color:#55534f;max-width:350px;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding:17px 22px;font-size:12px;border:1px solid var(--ink);transition:background .2s,color .2s}.button.dark{background:var(--ink);color:white}.button.dark:hover{background:#444}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:4px}.location{font-size:9px;letter-spacing:.17em;margin-top:38px;color:var(--muted)}.hero-art{position:relative;height:485px;margin:10px 0 15px 0}.photo-card{position:absolute;background:#fff;padding:9px 9px 28px;box-shadow:0 14px 32px #00000018}.photo-card img{height:100%;width:100%;object-fit:cover}.photo-card span{position:absolute;bottom:8px;left:12px;font-size:8px;letter-spacing:.12em}.product{width:54%;height:395px;left:1%;top:14px;transform:rotate(-8deg);z-index:1}.drink{width:53%;height:388px;right:0;top:60px;transform:rotate(8deg);z-index:0}.round-stamp{position:absolute;z-index:2;top:0;right:16%;background:var(--ink);color:white;border-radius:50%;width:103px;height:103px;font-size:11px;line-height:1.4;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg)}.art-note{position:absolute;bottom:-10px;left:18%;font-family:Georgia,serif;font-style:italic;font-size:20px;transform:rotate(-4deg)}.sector-strip{display:flex;gap:30px;justify-content:space-around;align-items:center;background:var(--ink);color:var(--paper);padding:21px 5%;font-size:12px;letter-spacing:.12em}.sector-strip b{font-size:24px;font-weight:400}.section{padding:85px 5%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.section-top h2{font-size:clamp(36px,3.7vw,58px);margin-top:22px}.section-top>p{font-size:13px;color:var(--muted);line-height:1.7}.work-tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:30px}.work-tabs button{border:0;background:none;padding:13px 0;color:var(--muted);font-size:12px;position:relative}.work-tabs button.active{color:var(--ink)}.work-tabs button.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;background:var(--ink);height:2px}.work-tabs sup{font-size:8px;margin-left:5px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px}.project[hidden]{display:none}.project-image{padding:0;border:0;display:block;width:100%;height:500px;position:relative;overflow:hidden;background:#e4e1dc}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project:nth-child(1) .project-image img{object-position:center 52%}.project-image:hover img{transform:scale(1.03)}.view{position:absolute;bottom:20px;right:20px;color:var(--ink);background:white;padding:11px 16px;font-size:11px}.project-label{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:19px 0 10px}.project-label h3{font-size:23px;letter-spacing:-.035em}.project-label span{font-size:10px;color:var(--muted)}.project>p:not(.project-description){font-size:9px;letter-spacing:.15em}.project-description{font-size:13px;color:var(--muted);margin:12px 0 5px;max-width:420px}.project small{font-size:10px;color:var(--muted)}.portfolio-note{margin:35px 0 0;font-size:11px;color:var(--muted)}.hospitality-showcase{background:#e8e6df}.hospitality-showcase-title{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:24px 0}.hospitality-showcase-title h2{font-size:clamp(40px,4.6vw,65px)}.hospitality-showcase-heading>p:last-child{max-width:600px;font-size:15px;color:#5d5a54}.partner-heading{margin:50px 0 22px}.partners{border-top:1px solid #bdbbb3;border-bottom:1px solid #bdbbb3;display:grid;grid-template-columns:repeat(6,1fr);gap:24px;align-items:center;padding:28px 0}.partner-type{text-align:center;font-weight:700;font-size:19px;letter-spacing:-.05em;line-height:1.1}.farm{font-family:Georgia,serif;font-weight:400;font-size:23px}.partners img{max-width:130px;height:65px;object-fit:contain;justify-self:center}.more-partners{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;font-size:11px;padding-top:25px;color:#55524d}.more-partners span{color:#8b8880}.partner-note{font-size:10px;text-align:center;color:var(--muted);margin-top:15px}.services .section-top{margin-bottom:45px}.service-list article{display:grid;grid-template-columns:.15fr 1fr 1fr;gap:25px;border-top:1px solid var(--line);padding:30px 0}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-list article>span{font-size:11px;color:var(--muted)}.service-list h3{font-size:30px;font-weight:400;letter-spacing:-.035em;line-height:1.13}.service-list article p{font-size:14px;color:var(--muted);max-width:510px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.tags span{border:1px solid var(--line);font-size:9px;padding:4px 9px;border-radius:20px}.about{display:grid;grid-template-columns:1fr 1fr;gap:65px;background:var(--ink);color:var(--paper)}.about h2{font-size:clamp(40px,4.5vw,65px);margin:25px 0 35px}.about-lead{font-size:30px;line-height:1.16;letter-spacing:-.045em;margin-bottom:25px}.about-right>p:not(.about-lead){color:#c7c5bf;font-size:14px;margin-bottom:20px;max-width:490px}.about-bottom{border-top:1px solid #555;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.11em}.process{padding-top:65px;padding-bottom:65px;border-bottom:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:35px}.process-grid article>span{font-size:9px;letter-spacing:.12em;color:var(--muted)}.process-grid h3{font-size:23px;margin:16px 0;letter-spacing:-.035em}.process-grid p{font-size:13px;color:var(--muted);max-width:300px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.contact h2{font-size:clamp(40px,4.5vw,68px);margin:25px 0}.contact>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}.email{display:inline-flex;gap:15px;font-size:clamp(12px,1.45vw,21px);margin-top:28px;padding-bottom:8px;border-bottom:1px solid var(--ink);overflow-wrap:anywhere}.socials{display:flex;gap:25px;font-size:11px;margin-top:25px}form h3{font-size:22px;letter-spacing:-.035em;margin:0 0 25px}label{display:block;font-size:10px;margin:20px 0 8px}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #b8b6af;padding:10px 0;color:var(--ink);border-radius:0;font-size:13px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--ink)}form .button{margin-top:25px;width:100%;background:var(--ink);color:white}.form-note{font-size:10px;color:var(--muted);margin-top:10px}#form-status{font-size:11px;margin-top:8px}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p,footer>a:last-child{font-size:8px;letter-spacing:.08em}dialog{border:0;padding:0;max-width:800px;width:90vw;background:var(--paper);max-height:90vh;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}dialog>img{max-height:65vh;width:100%;object-fit:contain;background:#e5e3de}dialog>div{padding:25px}dialog h3{font-size:27px;margin-bottom:12px}dialog p{font-size:13px;color:var(--muted)}.close{position:sticky;top:12px;margin:12px 12px 12px auto;display:block;background:var(--ink);color:white;border:0;padding:8px 15px;font-size:12px}@media(min-width:1500px){header,.hero,.section,footer{padding-left:max(5%,calc((100vw - 1350px)/2));padding-right:max(5%,calc((100vw - 1350px)/2))}}@media(max-width:900px){.hero{gap:10px;padding-top:45px;min-height:600px}.hero h1{font-size:58px}.hero-art{height:400px}.product,.drink{height:320px}.round-stamp{width:80px;height:80px;font-size:9px}.art-note{font-size:15px;bottom:0}.hero-actions{gap:15px}.section{padding:65px 5%}.project-image{height:400px}.partners{grid-template-columns:repeat(3,1fr)}.contact{gap:40px}.service-list h3{font-size:26px}.about{gap:40px}.sector-strip{gap:12px;font-size:10px}}
@media(max-width:650px){html{scroll-padding-top:25px}header{padding:22px 6%}.wordmark{font-size:17px}.menu{display:block;border:0;background:transparent;font-size:12px}.menu span{margin-left:18px}nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);align-items:start;gap:18px}nav.open{display:flex;flex-direction:column}.hero{padding:40px 6% 45px;grid-template-columns:1fr;gap:45px}.hero h1{font-size:clamp(48px,11vw,70px);margin:24px 0}.eyebrow{font-size:8px}.intro{font-size:15px;max-width:330px}.hero-art{height:390px;max-width:450px;width:100%;margin:auto}.product,.drink{height:330px;width:50%}.product{left:3%}.drink{right:3%;top:45px}.round-stamp{right:23%}.art-note{bottom:-12px;left:19%}.location{margin-top:25px}.sector-strip{flex-wrap:wrap;gap:12px 16px;padding:18px 6%}.sector-strip span:last-child{display:none}.sector-strip b:last-of-type{display:none}.sector-strip b{font-size:17px}.section{padding:55px 6%}.section-top{align-items:start;flex-direction:column;gap:22px}.section-top h2{font-size:40px}.section-top>p{font-size:12px}.work-tabs{gap:22px}.work-grid{grid-template-columns:1fr;gap:35px}.project-image{height:auto;aspect-ratio:4/5;max-height:560px}.project-label h3{font-size:22px}.hospitality-showcase-title{flex-direction:column;align-items:start}.hospitality-showcase-title h2{font-size:43px}.hospitality-showcase-heading>p:last-child{font-size:14px}.partners{gap:20px;padding:25px 0}.partner-type{font-size:16px}.partners img{max-width:90px;height:50px}.more-partners{gap:8px;font-size:10px}.service-list article{grid-template-columns:25px 1fr;gap:15px;padding:25px 0}.service-list article>div{grid-column:2}.service-list h3{font-size:27px}.about,.contact{grid-template-columns:1fr;gap:40px}.about h2{font-size:46px}.about-right p{font-size:14px}.about-bottom{flex-direction:column;gap:12px}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid p{max-width:none}.process-grid h3{margin:10px 0}.contact h2{font-size:48px}.email{font-size:13px;gap:10px}.socials{gap:20px}footer{padding:30px 6%;display:grid;grid-template-columns:1fr 1fr;gap:25px}footer p{font-size:7px}dialog{width:94vw}dialog h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.partners img[src$="jinya.svg"]{background:#191919;padding:12px;max-width:150px;width:100%;height:65px}
/* Independent freelancer portfolio */
.identity{display:flex;align-items:center;gap:13px}.identity img{width:58px;height:58px;object-fit:cover}.identity>span{font-size:13px;font-weight:700;letter-spacing:.03em;line-height:1.4}.identity small{display:block;font-size:8px;letter-spacing:.17em;font-weight:400}.freelancer-hero h1{font-size:clamp(50px,5.6vw,83px)}.freelancer-hero .intro{max-width:400px}.freelancer-hero .art-note{font-size:18px}.cpg-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cpg-gallery .project-image{height:auto;aspect-ratio:9/14}.cpg-gallery .project-label h3{font-size:20px;line-height:1.12}.cpg-gallery .project>p{font-size:8px;line-height:1.6}.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:58px;height:58px;background:#fffdf2dd;border:1px solid #fff;border-radius:50%;font-size:16px;padding-left:3px}.reel-image:hover .play-icon{background:white}.concept-note{margin:25px 0 0;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted)}.concept-note p:first-child{max-width:620px}.rail-title{margin:45px 0 20px}.logo-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.logo-tile{min-height:130px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:20px;background:#141414;border-right:1px solid #555;border-bottom:1px solid #555}.logo-tile img{width:150px;height:62px;object-fit:contain;filter:none;max-width:85%}.logo-tile>span{color:#bbb;font-size:8px;letter-spacing:.12em;text-align:center}.logo-tile img[src*="logo.png"]{background:transparent}.restaurant-logos{grid-template-columns:repeat(4,1fr)}.restaurant-logos img{height:66px}.hospitality{background:#eae9e4}.hospitality .section-top>div:last-child>p{font-size:13px;color:var(--muted)}.portfolio-link{display:inline-block;margin-top:22px}.hospitality-reels{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:55px}.hospitality-reels .project-image{height:auto;aspect-ratio:9/16}.hospitality-reels .view{font-size:8px;padding:8px 10px;right:10px;bottom:10px}.hospitality-reels .project-label h3{font-size:18px;line-height:1.1}.hospitality-reels .project>p{font-size:7px;line-height:1.6}.hospitality-editorial{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:25px;align-items:center;margin:20px 0 60px}.hospitality-editorial h3{font-size:42px;margin:22px 0}.hospitality-editorial p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:270px;margin-bottom:20px}.editorial-photo{display:block;padding:0;border:0;background:none;height:330px;width:100%;overflow:hidden}.editorial-photo img{width:100%;height:100%;object-fit:cover}.stats-block{border-top:1px solid #bab8b1;border-bottom:1px solid #bab8b1;padding:25px 0 20px}.stats-heading{display:flex;justify-content:space-between;gap:20px}.stats-heading>p:last-child{font-size:10px;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:32px 0}.stats-grid strong{display:block;font-size:clamp(42px,5vw,72px);font-weight:400;letter-spacing:-.06em;line-height:1.1}.stats-grid span{display:block;font-size:9px;letter-spacing:.16em;margin-top:10px}.stats-note{font-size:9px;color:var(--muted)}.additional-names{text-align:center;color:var(--muted);font-size:11px;line-height:2;margin-top:25px}.background{border-bottom:1px solid var(--line)}.experience-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:28px}.experience-copy p{font-size:12px;color:var(--muted);line-height:1.8}.experience-copy strong{font-size:13px;color:var(--ink)}.additional-experience{font-size:11px;color:var(--muted);margin:25px 0}.experience-logos .logo-tile{min-height:155px}.experience-logos img{height:85px;max-width:190px;width:100%}#video-dialog{padding:20px;width:min(520px,94vw);height:85vh;background:var(--paper)}#video-dialog h3{font-size:26px;margin:15px 0}#video-embed{height:60vh;min-height:340px;background:white;margin-bottom:20px}#video-embed iframe{width:100%;height:100%;border:0}#video-dialog>p{font-size:10px;margin-top:15px;color:var(--muted)}
@media(max-width:1000px){.cpg-gallery{grid-template-columns:repeat(2,1fr);gap:35px 22px}.cpg-gallery .project-image{aspect-ratio:4/5}.hospitality-reels{grid-template-columns:repeat(3,1fr);gap:25px 20px}.hospitality-editorial{gap:20px}.hospitality-editorial h3{font-size:33px}.editorial-photo{height:280px}.identity>span{display:none}nav{gap:20px}.concept-note{flex-direction:column;gap:8px}}@media(max-width:650px){.identity img{width:46px;height:46px}.identity>span{display:block;font-size:10px}.identity small{font-size:6px}.freelancer-hero h1{font-size:clamp(48px,11vw,68px)}.freelancer-hero .art-note{font-size:14px}.cpg-gallery{gap:30px 14px}.cpg-gallery .project-image{aspect-ratio:9/16}.cpg-gallery .project-label h3{font-size:17px}.cpg-gallery .view{padding:8px 10px;font-size:8px;right:9px;bottom:10px}.cpg-gallery .project>p{font-size:7px}.cpg-gallery .project-label{margin-top:14px}.play-icon{width:43px;height:43px;font-size:12px}.hospitality-reels{grid-template-columns:repeat(2,1fr);gap:30px 14px}.hospitality-reels .project-label h3{font-size:17px}.hospitality-editorial{grid-template-columns:1fr 1fr;gap:15px}.hospitality-editorial>div{grid-column:1/-1;margin-bottom:15px}.hospitality-editorial h3{font-size:40px}.editorial-photo{height:270px}.restaurant-logos{grid-template-columns:repeat(2,1fr)}.logo-tile{padding:15px 10px;min-height:120px}.logo-tile img{width:110px;height:55px}.logo-tile span{font-size:7px}.stats-heading{flex-direction:column;gap:12px}.stats-grid{grid-template-columns:1fr 1fr;gap:25px}.stats-grid strong{font-size:51px}.stats-grid span{font-size:8px}.experience-copy{grid-template-columns:1fr;gap:20px}.experience-logos{grid-template-columns:repeat(3,1fr)}.experience-logos .logo-tile{min-height:120px;padding:12px}.experience-logos img{height:65px}.additional-experience{font-size:10px}.stats-note{font-size:8px}}
.cpg .logo-tile,.logo-tile:has(img[src*="noco-logo"]),.logo-tile:has(img[src*="shed-logo"]),.logo-tile:has(img[src*="farm-official-logo"]){background:#f5f4f0;border-color:#c9c7c0}.cpg .logo-tile>span,.logo-tile:has(img[src*="noco-logo"])>span,.logo-tile:has(img[src*="shed-logo"])>span,.logo-tile:has(img[src*="farm-official-logo"])>span{color:#555}
.quick-brands{background:#141414;color:#f5f4f0;padding:34px 5%}.quick-brands>div:first-child{display:flex;justify-content:space-between;gap:20px}.quick-brands>div:first-child>p:last-child{font-size:10px;color:#bbb}.quick-logo-row{display:grid;grid-template-columns:repeat(6,1fr);align-items:center;gap:28px;padding:28px 0}.quick-logo-row img{width:100%;height:58px;object-fit:contain;filter:none}.quick-brands>.text-link{font-size:10px}.reel-direct{display:inline-block;font-size:11px;margin-top:12px;border-bottom:1px solid currentColor;padding-bottom:3px}@media(max-width:650px){.quick-brands{padding:30px 6%}.quick-brands>div:first-child{flex-direction:column;gap:10px}.quick-logo-row{grid-template-columns:repeat(3,1fr);gap:20px}.quick-logo-row img{height:48px}.reel-direct{font-size:10px}nav{gap:15px}}

/* Preserve partner brand colors; the Farm wordmark uses white on black. */
.logo-tile:has(img[src*="farm-official-logo"]){background:#000;border-color:#555}.logo-tile:has(img[src*="farm-official-logo"])>span{color:#bbb}.logo-tile img[src*="farm-official-logo"]{filter:brightness(0) invert(1)}

/* Raise the chopstick photo crop to reveal the bottom of the bowl. */
.editorial-photo img[src*="dimsum-chopsticks"]{object-position:center 85%}

.portfolio-request{font-size:12px;color:var(--muted);line-height:1.8}.portfolio-request a{display:inline-block;margin-left:8px}
