@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f6f4ed;--ink:#192e25;--green:#154735;--lime:#d7ef98;--coral:#e69477;--line:#d3d8cc;--muted:#536259;--white:#fff;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--font)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b04b2f;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);line-height:1.13;letter-spacing:-.045em}h1{font-size:clamp(3rem,6.3vw,6.5rem);font-weight:600}h2{font-size:clamp(2rem,4vw,3.6rem);font-weight:600}h3{font-size:1.7rem;font-weight:600}em{font-family:Georgia,serif;font-weight:400}.eyebrow{font-size:.75rem;letter-spacing:.15em;font-weight:700;line-height:1.6;text-transform:uppercase}.accent{color:#aa4b32}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;max-width:1600px;padding:0 5%;margin:auto;gap:24px}.wordmark{font-family:var(--display);font-size:1.7rem;font-weight:800;letter-spacing:-.07em;white-space:nowrap}.wordmark span{color:#a94c32}.site-header nav{display:flex;gap:34px;font-size:.9rem}.site-header nav a{padding:5px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current]{border-color:var(--green)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.18fr 1fr;min-height:665px;margin:0 2%;max-width:1600px;background:var(--green);color:var(--paper)}.hero-intro{padding:54px 8% 50px}.hero h1{margin:26px 0 34px;font-size:clamp(3rem,5.55vw,6rem);letter-spacing:-.058em;line-height:1.05}.hero h1 em{color:var(--lime)}.hero-bottom{max-width:420px}.hero-bottom p{font-size:1rem;line-height:1.7;color:#e0e6dc;margin-bottom:27px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 22px;background:var(--green);color:white;border:1px solid var(--green);font-size:.9rem;font-weight:500;border-radius:2px;transition:background .18s,transform .18s}.button:hover{background:#236449;transform:translateY(-2px)}.button.light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.hero-collage{height:665px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr .88fr;gap:12px;padding:22px 22px 22px 0}.hero-collage a{position:relative;overflow:hidden}.hero-collage img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.hero-collage a:hover img{transform:scale(1.035)}.collage-photo{grid-column:1/3}.collage-photo img{object-position:center 44%}.collage-photo>span,.collage-brand>span{position:absolute;bottom:16px;left:16px;background:var(--paper);color:var(--ink);padding:6px 12px;font-size:.75rem}.collage-motion{background:#e4ebf1;color:#103849;padding:24px 20px;display:flex;flex-direction:column;justify-content:space-between}.collage-motion img{height:auto;max-height:70px;object-fit:contain}.collage-motion>span:last-child{font-size:.8rem;display:flex;justify-content:space-between;gap:10px}.collage-brand img{object-position:50% 35%}.discipline-strip{display:flex;justify-content:space-around;gap:20px;padding:30px 5%;border-bottom:1px solid var(--line);font-size:.78rem;letter-spacing:.07em;text-transform:uppercase}.section{max-width:1440px;padding:95px 5%;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px;gap:25px}.section-heading .eyebrow{margin-bottom:15px}.text-link{font-size:.9rem;border-bottom:1px solid;padding-bottom:4px;display:inline-block}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 30px}.project-card{min-width:0}.project-art{height:380px;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:transform .25s}.project-art>img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.project-card:hover .project-art>img{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;margin:20px 0 9px;text-transform:uppercase;letter-spacing:.1em;font-size:.73rem}.project-meta>span:last-child{font-size:1.3rem;line-height:1}.project-card h3{margin-bottom:12px}.project-card p{font-size:.95rem;line-height:1.7;max-width:520px;color:var(--muted)}.lightspeed{background:#e4ebf1;padding:12%}.lightspeed>img{height:auto!important;object-fit:contain!important}.chesaco{background:#082f43}.chesaco>img{object-fit:contain}.oz{background:#700900}.oz>img{object-fit:contain;padding:20px}.scented{background:#e8e6d9;padding:35px}.scented>img{object-fit:contain}.photo>img{object-position:center 40%}.app{background:#dcebbf}.workflow{width:100%;height:100%;padding:30px 35px;color:#204131}.workflow>strong{display:block;font:600 clamp(1.7rem,3vw,2.6rem)/1.1 var(--display);letter-spacing:-.04em;margin:18px 0}.workflow ol{list-style:none;margin:20px 0 12px;padding:0;display:flex;gap:8px}.workflow li{background:#f6f4ed;padding:12px;font-size:.78rem;line-height:1.4;flex:1}.workflow li span{display:block;font-size:.7rem;margin-bottom:10px}.workflow-label{font-size:.72rem}.about-band{padding:75px 7%;display:grid;grid-template-columns:1fr 1fr;background:#e5eacb;gap:30px 10%;}.about-band>.eyebrow{grid-column:1/3}.about-band p{max-width:500px}.about-band .text-link{margin-top:28px}.page-heading{max-width:1440px;margin:auto;padding:65px 5% 65px}.page-heading h1{margin:25px 0 30px;max-width:1100px}.page-heading>p:not(.eyebrow){max-width:650px;font-size:1.2rem;color:var(--muted)}.work-section{padding-top:0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:45px}.filters button{padding:10px 20px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:.85rem;border-radius:30px}.filters button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.project-card[hidden]{display:none}.back-link{font-size:.85rem;display:inline-block;margin-bottom:32px}.case-heading h1{font-size:clamp(3rem,6vw,5.6rem)}.case-media{margin:0 5%}.case-art{height:560px;display:flex;justify-content:center;align-items:center;overflow:hidden}.case-art>img{max-height:100%;width:100%;object-fit:contain}.case-art.photo>img{object-fit:cover}.case-art .workflow{max-width:800px;padding:60px}.case-art .workflow>strong{font-size:4rem}.video-feature{margin:0;background:#082f43;color:white}.video-feature video{display:block;max-height:620px;width:100%;background:#082f43}.video-feature figcaption{padding:15px 25px;font-size:.8rem}.case-intro{max-width:1440px;margin:auto;padding:75px 5%;display:grid;grid-template-columns:1.35fr 1fr;gap:10%}.case-intro h2{font-size:clamp(1.7rem,2.8vw,2.8rem);line-height:1.3}.case-intro dl{margin:0}.case-intro dl div{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--line)}dt{font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:6px}dd{margin:0;font-size:.95rem}.case-story{max-width:1440px;margin:auto;padding:20px 5% 60px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.case-story h2{font-size:1.7rem;margin:18px 0}.case-story p{color:var(--muted);font-size:1rem}.case-note{max-width:1000px;margin:0 auto 70px;padding:0 5%;font-size:.85rem;color:var(--muted)}.gallery{columns:3;column-gap:18px}.gallery-item{display:block;padding:0;border:0;background:none;margin:0 0 18px;width:100%;break-inside:avoid}.gallery-item img{width:100%;height:auto}.next-project{padding:55px 5%;background:#e4eaca;display:block}.next-project strong{display:block;font:600 clamp(2rem,4vw,3.5rem)/1.2 var(--display);letter-spacing:-.04em;margin-top:15px}.about-layout{max-width:1440px;display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:10px 5% 70px;margin:auto}.about-image img{width:100%;height:560px;object-fit:cover}.about-image span{display:block;font-size:.8rem;color:var(--muted);margin-top:12px}.prose h2{font-size:2.1rem;line-height:1.3;margin-bottom:25px}.prose p{margin-bottom:22px;color:var(--muted)}.capabilities{border-top:1px solid var(--line)}.capabilities h2{margin:20px 0 45px}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.capability-grid article{border-top:1px solid var(--ink);padding-top:20px}.capability-grid h3{font-size:1.4rem;line-height:1.25;margin:23px 0 16px}.capability-grid span{font-size:.8rem}.capability-grid p{font-size:.95rem;color:var(--muted)}.print-button{margin-top:30px}.resume-content{max-width:1100px;padding:0 5% 80px;margin:auto}.resume-section{padding:30px 0;border-top:1px solid var(--line)}.resume-section h2{font-size:1.8rem;margin-bottom:30px}.resume-section article{margin:0 0 34px}.resume-section h3{font-size:1.25rem;line-height:1.35;margin-bottom:5px}.resume-section article span{color:var(--muted);font-size:.9rem}.resume-section p{margin-top:12px;max-width:850px}.print-heading{display:none}.contact-page{padding:75px 7% 110px;display:grid;grid-template-columns:1.1fr 1fr;gap:50px 7%;background:#e5eacb}.contact-page>.eyebrow{grid-column:1/3}.contact-page h1{font-size:clamp(3rem,7vw,7rem)}.contact-page>div{align-self:center}.contact-page p:not(.eyebrow){font-size:1.2rem;max-width:500px;margin-bottom:30px}.contact-email{display:block;font-size:clamp(1rem,2vw,1.6rem);margin-bottom:35px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:7px}.contact-page .text-link{display:table;margin-bottom:20px}footer{background:var(--green);color:var(--paper);padding:65px 5% 30px}.footer-top{border-bottom:1px solid #51715f;padding-bottom:50px}.footer-top p{font-size:.85rem;margin-bottom:10px}.footer-top>a{font-family:var(--display);font-size:clamp(2rem,4vw,4rem);letter-spacing:-.05em;line-height:1.25}.footer-top>a span{color:var(--lime)}.footer-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:25px;padding-top:28px;font-size:.8rem}.footer-bottom>span{flex:1}.footer-bottom>div{display:flex;gap:20px}.footer-bottom small{font-size:.75rem}dialog{max-width:94vw;max-height:94vh;padding:20px;border:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#082018e8}dialog img{max-height:76vh;max-width:85vw;margin:auto}dialog p{font-size:.85rem;margin-top:10px}.lightbox-close{display:block;margin:0 0 15px auto;background:var(--green);color:white;border:0;padding:8px 15px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1700px){.hero{margin:auto}}@media(max-width:1000px){.hero{min-height:600px}.hero-intro{padding:40px 7%}.hero-collage{grid-template-columns:1fr;grid-template-rows:1.2fr .6fr}.collage-photo{grid-column:auto}.collage-brand{display:none}.collage-motion{gap:25px}.project-art{height:320px}.workflow{padding:25px}.capability-grid{grid-template-columns:repeat(2,1fr)}.case-story{gap:25px}.about-layout{gap:6%}.about-image img{height:500px}}
@media(max-width:700px){.site-header{height:80px;padding:0 6%;position:relative;z-index:5}.menu-toggle{display:flex;align-items:center;gap:16px;background:none;border:0;padding:10px 0;color:var(--ink)}.site-header nav{display:none;position:absolute;top:79px;left:0;right:0;padding:20px 6%;background:var(--paper);box-shadow:0 12px 18px #192e2510;flex-direction:column;gap:15px}.site-header nav.is-open{display:flex}.hero{display:block;margin:0 3%}.hero-intro{padding:40px 7%}.hero h1{font-size:clamp(3rem,10vw,4.5rem);margin:24px 0}.hero-bottom p{font-size:1rem}.hero-collage{height:400px;padding:0 16px 16px;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr}.collage-photo{grid-column:auto}.collage-photo img{object-position:58% center}.collage-motion{padding:25px 14px}.collage-motion>span:last-child{font-size:.75rem}.discipline-strip{display:grid;grid-template-columns:1fr 1fr;padding:25px 7%;gap:14px;font-size:.69rem}.section{padding:60px 6%}.section-heading{margin-bottom:30px}.section-heading>.text-link{white-space:nowrap;font-size:.8rem}.project-grid{grid-template-columns:1fr;gap:40px}.project-art{height:360px}.project-card h3{font-size:1.6rem}.about-band{display:block;padding:50px 7%}.about-band h2{margin:25px 0}.page-heading{padding:45px 6%}.page-heading h1{font-size:clamp(2.8rem,10vw,4rem);overflow-wrap:break-word}.page-heading>p:not(.eyebrow){font-size:1.05rem}.work-section{padding-top:0}.filters{gap:8px;margin-bottom:30px}.filters button{padding:8px 13px;font-size:.79rem}.case-media{margin:0 4%}.case-art{height:360px}.case-art .workflow{padding:30px}.case-art .workflow>strong{font-size:2.5rem}.case-intro{grid-template-columns:1fr;gap:35px;padding:45px 6%}.case-story{grid-template-columns:1fr;gap:40px;padding:10px 6% 45px}.case-story h2{margin:12px 0}.gallery{columns:2;column-gap:12px}.gallery-item{margin-bottom:12px}.about-layout{grid-template-columns:1fr;gap:35px;padding:0 6% 50px}.about-image img{height:380px}.prose h2{font-size:1.9rem}.capability-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.capability-grid h3{font-size:1.2rem}.capability-grid p{font-size:.9rem}.contact-page{display:block;padding:40px 7% 65px}.contact-page h1{font-size:clamp(3.5rem,12vw,5rem);margin:25px 0 35px}.contact-page p:not(.eyebrow){font-size:1.05rem}.contact-email{font-size:1rem}.footer-bottom{display:grid;grid-template-columns:1fr 1fr}.footer-bottom>span{grid-column:1/3;grid-row:2}.footer-bottom small{grid-column:1/3}.footer-top{padding-bottom:35px}footer{padding:45px 6% 25px}.resume-content{padding:0 6% 50px}.workflow ol{flex-wrap:wrap}.workflow li{min-width:80px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}@media print{body{background:white;color:black;font:11pt/1.4 Arial,sans-serif}.site-header,.page-heading,footer,.skip,dialog{display:none}.print-heading{display:block;margin-bottom:22px}.print-heading h1{font-size:25pt;margin-bottom:5px}.resume-content{padding:0;max-width:none}.resume-section{padding:14px 0}.resume-section h2{font-size:16pt;margin-bottom:12px}.resume-section h3{font-size:12pt}.resume-section article{margin-bottom:17px;break-inside:avoid}.resume-section p{margin-top:5px}.resume-section article span{font-size:10pt}}
