@import url('/fonts.css');
@font-face{font-family:NewYork;src:url('/assets/new-york.otf');font-display:swap}
:root{--white:#fffcfa;--cream:#eae2da;--black:#000;--line:#d6cec7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:#000;font-family:Jost,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}img{max-width:100%;display:block}header{display:flex;justify-content:space-between;align-items:center;padding:34px 6%;gap:30px}.logo img{width:138px}nav{display:flex;gap:34px;font-size:15px}nav a{border-bottom:1px solid transparent}nav a[aria-current=page],nav a:hover{border-color:#000}.mono,.eyebrow,.number,.tag{font-family:'Fira Code',monospace;font-size:10px;line-height:1.6;font-weight:400}.location{font-size:10px}.wrap{padding:65px 6% 90px}.hero{padding-top:54px}.kicker{display:flex;justify-content:space-between;gap:20px}h1,h2,h3,p{margin:0}h1,h2{font-family:NewYork,Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(60px,7.6vw,116px);margin:50px 0 36px}h2{font-size:clamp(40px,4.5vw,68px)}h3{font-size:22px;font-weight:400;letter-spacing:-.02em}em{font-family:'Playfair Display',Georgia,serif;font-weight:800;letter-spacing:-.055em}p{max-width:580px}.intro{font-size:20px;max-width:520px;line-height:1.55}.hero-foot{display:flex;justify-content:space-between;align-items:end;gap:30px}.link{display:inline-flex;gap:45px;border-bottom:1px solid;padding:8px 0;font-size:12px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-top h2{margin-top:16px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px}.card:nth-child(even){padding-top:85px}.card-meta{display:flex;justify-content:space-between;align-items:start;padding-top:18px;gap:15px}.card-meta p{font-size:13px;margin-top:3px;color:#514b45}.arrow{font-size:24px;transition:transform .2s}.card:hover .arrow{transform:translate(4px,-4px)}.art{height:auto;aspect-ratio:1.15;position:relative;overflow:hidden;background:#eae2da;display:flex;align-items:center;justify-content:center}.art:after{content:'';inset:0;position:absolute;pointer-events:none;background:url('/assets/grain.svg');opacity:.07}.tag{position:absolute;left:22px;top:20px;z-index:2}.caption{position:absolute;bottom:20px;left:22px;font-size:9px}.paper{width:47%;height:66%;background:#fffcfa;box-shadow:12px 16px 28px #0002;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(-9deg);position:relative}.paper b{font-family:NewYork,serif;font-size:clamp(35px,4vw,65px);font-weight:400;line-height:1}.paper small{font-family:'Fira Code',monospace;font-size:7px;margin-top:14px;letter-spacing:2px}.mini-paper{position:absolute;right:12%;bottom:15%;width:35%;height:29%;background:#000;color:#fff;transform:rotate(9deg);display:grid;place-content:center;font-family:NewYork,serif;font-size:24px;box-shadow:7px 9px 20px #0002}.art-content{background:#d6cec7}.phone{height:76%;width:37%;background:#000;border:6px solid #181818;border-radius:23px;transform:rotate(9deg);box-shadow:15px 20px 30px #0003;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fffcfa;gap:15px}.phone .circle{width:65%;aspect-ratio:1;border:1px solid #eae2da;border-radius:50%;position:relative}.circle:after{content:'';position:absolute;inset:16%;border:1px solid #eae2da;border-radius:50%}.phone strong{font-family:NewYork,serif;font-size:clamp(27px,3.5vw,55px);line-height:1.05;font-weight:400}.phone small{font-size:7px;font-family:'Fira Code',monospace}.art-experience{background:#171717;color:#fffcfa}.poster{width:58%;height:74%;background:#eae2da;color:#000;padding:9%;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-6deg);box-shadow:15px 20px 30px #0006}.poster b{font:400 clamp(36px,4.5vw,70px)/.95 NewYork,serif}.poster small{font:8px 'Fira Code',monospace}.art-direction{background:#e1dbd3}.frame{position:absolute;inset:15% 12%;border:1px solid #0004}.still{width:42%;aspect-ratio:1;background:#fffcfa;border-radius:50%;box-shadow:20px 30px 0 #bcb3aa;position:relative;transform:rotate(-18deg)}.still:before{content:'';position:absolute;inset:25%;border:1px solid #000;border-radius:50%}.still:after{content:'S';font:70px NewYork,serif;position:absolute;left:39%;top:23%}.dark{position:relative;isolation:isolate;background:#000;color:#fffcfa}.dark:before{content:'';position:absolute;inset:0;background:url('/assets/grain.svg');opacity:.12;z-index:-1}.split{display:grid;grid-template-columns:1fr 1.6fr;gap:70px}.split h2{margin-bottom:27px}.split p{color:inherit;opacity:.8;margin-bottom:26px}.references{background:var(--cream)}.brands{display:grid;grid-template-columns:repeat(4,1fr);margin-top:46px;border-top:1px solid #bfb8b1}.brand{padding:38px 15px;text-align:center;border-bottom:1px solid #bfb8b1;font-family:NewYork,serif;font-size:31px}.brand:nth-child(2n){font-family:Jost,sans-serif;font-weight:500;letter-spacing:-2px}.brand:nth-child(3n){font-style:italic}.note{font-size:11px;color:#615950;margin-top:22px}.cta{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:75px 6%}.cta h2{margin-top:18px}footer{background:#000;color:#fffcfa;padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .logo img{filter:invert(1);width:115px}footer .mono{font-size:9px}.footer-nav{display:flex;gap:25px;font-size:12px}.page-title{max-width:1000px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 45px}.filters button{border:1px solid #bfb8b1;background:transparent;border-radius:30px;padding:8px 18px;font-size:13px;cursor:pointer}.filters button[aria-pressed=true]{background:#000;color:#fffcfa;border-color:#000}.card[hidden]{display:none}.service-row{padding:27px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;gap:20px}.service-row p{font-size:17px;margin-top:10px;color:#514b45}.portrait{aspect-ratio:1;background:var(--cream);position:relative;display:grid;place-content:center;text-align:center}.portrait span{font-family:NewYork,serif;font-size:64px;line-height:1.05}.portrait small{margin-top:25px}.contact-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:100px}.contact-layout h1{margin-top:40px}.contact-info{padding-top:55px}.contact-info section{border-top:1px solid var(--line);padding:24px 0 35px}.contact-info h3{font-size:29px;margin:12px 0}.contact-info p{font-size:16px;color:#5a524a}.back{font-size:12px}.project-lead{display:grid;grid-template-columns:2fr 1fr;gap:80px}.project-lead h1{margin-bottom:20px}.project-facts{padding-top:65px}.project-facts div{border-top:1px solid var(--line);padding:15px 0}.project-facts p{font-size:15px;margin-top:8px}.project-hero{padding:0 6% 80px}.project-hero .art{aspect-ratio:2.05}.project-hero .paper{width:27%;height:76%}.project-hero .mini-paper{width:22%;right:24%}.project-hero .phone{width:20%}.project-hero .poster{width:36%;padding:5%}.project-hero .still{width:23%}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:0 6% 80px}.gallery-placeholder{aspect-ratio:1.1;background:var(--cream);display:flex;flex-direction:column;justify-content:space-between;padding:28px;border:1px solid #d6cec7}.gallery-placeholder b{font:400 60px NewYork,serif}.gallery-placeholder:last-child{background:#000;color:#fffcfa}.preview-note{font:10px 'Fira Code',monospace;opacity:.65;margin-top:22px}.about-intro{max-width:850px;font-size:25px;line-height:1.5}.accent{background:var(--cream)}
@media(max-width:750px){header{padding:25px 6%;gap:20px;flex-wrap:wrap}.logo img{width:110px}.location{display:none}nav{gap:20px;font-size:13px}.wrap{padding:45px 6% 58px}.hero{padding-top:35px}.kicker span:last-child{display:none}h1{font-size:clamp(48px,10.5vw,78px);margin:40px 0 28px}h2{font-size:43px}.intro{font-size:18px}.hero-foot{display:block}.hero-foot .link{margin-top:25px}.section-top{gap:20px;align-items:start}.section-top .link{gap:12px;white-space:nowrap;margin-top:25px}.work-grid{gap:38px;grid-template-columns:1fr}.card:nth-child(even){padding-top:0}.art{aspect-ratio:1.13}.paper b{font-size:53px}.phone strong{font-size:45px}.poster b{font-size:58px}.split,.contact-layout,.project-lead{grid-template-columns:1fr;gap:32px}.split h2{margin-bottom:22px}.brands{grid-template-columns:1fr 1fr}.brand{font-size:28px;padding:30px 8px}.cta{padding:55px 6%;display:block}.cta .link{margin-top:27px}.footer-nav{gap:18px}footer{flex-wrap:wrap}footer>.mono{width:100%;order:3}.contact-info{padding-top:0}.contact-layout h1{margin-top:30px}.project-facts{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:15px}.project-hero{padding-bottom:45px}.project-hero .art{aspect-ratio:1.15}.project-hero .paper{width:47%;height:66%}.project-hero .mini-paper{width:35%;right:12%}.project-hero .phone{width:37%}.project-hero .poster{width:58%;padding:9%}.project-hero .still{width:42%}.project-gallery{grid-template-columns:1fr;padding-bottom:55px}.about-intro{font-size:21px}.portrait{max-height:430px}.preview-note{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.arrow{transition:none}}

/* Static, irregular grain sits behind type and images. */
body,.references,.accent,.portrait,.gallery-placeholder,.paper,.poster,.art{background-image:url('/assets/grain-light.png');background-repeat:repeat;background-size:512px 512px}
.dark,footer,.mini-paper,.phone,.gallery-placeholder:last-child,.art-experience{background-image:url('/assets/grain-dark.png');background-repeat:repeat;background-size:512px 512px}
.dark:before,.art:after{content:none}
.opening-slogan{font-size:clamp(64px,7.2vw,106px);max-width:700px;line-height:.99;text-align:center;margin:38px 0 42px;letter-spacing:-.035em}
.opening-slogan .slogan-line,.opening-slogan .slogan-plain,.opening-slogan em{display:block;white-space:nowrap}
.opening-slogan .slogan-line:first-child .slogan-plain{padding-right:8%}
.opening-slogan .slogan-line:last-child .slogan-plain{padding-right:13%}
.opening-slogan .slogan-line:last-child em{padding-left:15%}
.opening-slogan em{line-height:1.09}
@media(min-width:751px){
.hero:has(.opening-slogan){min-height:min(760px,calc(100svh - 106px));display:flex;flex-direction:column;justify-content:space-between;padding-top:45px;padding-bottom:60px}
.opening-slogan{max-width:none;width:100%;font-size:clamp(60px,7.6vw,132px);text-align:left;line-height:1.16;margin:60px 0}
.opening-slogan .slogan-line{display:flex;align-items:baseline;gap:.22em}
.opening-slogan .slogan-line:last-child{justify-content:flex-end}
.opening-slogan .slogan-line .slogan-plain,.opening-slogan .slogan-line em{padding:0;line-height:1.16}
.hero:has(.opening-slogan) .hero-foot{margin-top:0}
}
@media(max-width:750px){
.opening-slogan{font-size:clamp(42px,10.8vw,76px);max-width:550px;margin:42px 0 44px;line-height:1.16;letter-spacing:0}
.opening-slogan .slogan-plain{word-spacing:.08em}
.opening-slogan em{line-height:1.18;letter-spacing:-.02em;margin-top:.06em}
.opening-slogan .slogan-line+.slogan-line{margin-top:.22em}
}

@media(min-width:751px){.opening-slogan .slogan-line:first-child .slogan-plain,.opening-slogan .slogan-line:last-child .slogan-plain,.opening-slogan .slogan-line:last-child em{padding:0}}

/* A distinct quotation composition, using the agency's sans-serif voice. */
.quote-section{padding-top:100px;padding-bottom:100px}
.quote-composition{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:140px minmax(0,1fr);gap:40px;align-items:start}
.quote-mark{font-family:Arial,sans-serif;font-size:200px;font-weight:400;line-height:1;height:125px;display:block;margin-top:-16px;color:#000}
.quote-content{padding-top:12px}
.quote-section blockquote{margin:0}
.quote-section blockquote p{font-family:Jost,sans-serif;font-size:clamp(28px,3.1vw,46px);font-weight:400;line-height:1.35;letter-spacing:-.025em;max-width:29ch;text-wrap:pretty}
.quote-emphasis{font-weight:500;display:block;margin-top:.35em}
.quote-section figcaption{display:flex;flex-direction:column;align-items:flex-start;margin-top:38px;padding-top:20px;border-top:1px solid #000;width:180px;gap:6px}
.quote-credit-label{font-family:'Fira Code',monospace;font-size:10px;letter-spacing:.025em}
.quote-section cite{font-family:Jost,sans-serif;font-style:normal;font-size:23px;line-height:1.2;font-weight:500;letter-spacing:-.02em}
@media(max-width:750px){
.quote-section{padding-top:60px;padding-bottom:64px}
.quote-composition{grid-template-columns:minmax(0,1fr);gap:0}
.quote-mark{font-size:122px;height:76px;margin-top:-8px}
.quote-content{padding-top:0}
.quote-section blockquote p{font-size:clamp(25px,6.3vw,36px);line-height:1.4;max-width:30ch}
.quote-section figcaption{margin-top:30px;padding-top:16px;width:150px}
.quote-section cite{font-size:21px}
}

/* Approved editorial portfolio composition. */
.selected-editorial{padding-top:76px;padding-bottom:76px}
.editorial-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:52px}
.editorial-heading h2{font-size:clamp(46px,6.6vw,96px);margin-top:18px;white-space:nowrap;line-height:1.12}
.editorial-heading h2 em{font-size:.96em;letter-spacing:-.055em}
.editorial-all{font:11px 'Fira Code',monospace;border-bottom:1px solid #000;padding:10px 0;white-space:nowrap;display:flex;gap:16px;align-items:center;min-height:44px}
.editorial-grid{display:grid;grid-template-columns:1.88fr 1fr;gap:24px;align-items:start}
.editorial-project{min-width:0;display:block}
.editorial-image{width:100%;height:auto;object-fit:cover;aspect-ratio:4/3}
.editorial-project:nth-child(2) .editorial-image{aspect-ratio:1/1.41}
.editorial-caption{border-top:1px solid #000;margin-top:20px;padding-top:14px;display:grid;grid-template-columns:40px minmax(0,1fr) 22px;gap:12px;align-items:start}
.editorial-caption h3{font-family:Jost,sans-serif;font-size:clamp(21px,2vw,30px);font-weight:400;line-height:1.2;letter-spacing:-.025em}
.editorial-caption p{font:10px/1.7 'Fira Code',monospace;margin-top:8px}
.editorial-caption>.mono{font-size:10px}
.editorial-arrow{font-family:Jost,sans-serif;font-size:26px;line-height:1;transition:transform .2s}
.editorial-project:hover .editorial-arrow{transform:translateX(4px)}
.selected-editorial .preview-note{margin-top:32px}
@media(max-width:750px){
.selected-editorial{padding-top:48px;padding-bottom:48px}
.editorial-heading{align-items:flex-start;gap:12px;position:relative;margin-bottom:28px}
.editorial-heading>div{width:100%}
.editorial-heading h2{font-size:clamp(38px,10.5vw,70px);margin-top:22px}
.editorial-all{position:absolute;right:0;top:-12px;font-size:9px;gap:8px;border-bottom:0}
.editorial-heading .eyebrow{font-size:9px}
.editorial-grid{grid-template-columns:1fr;gap:32px}
.editorial-project .editorial-image{aspect-ratio:4/3}
.editorial-project:nth-child(2) .editorial-image{aspect-ratio:3/4}
.editorial-caption{margin-top:14px;padding-top:10px;grid-template-columns:1fr 22px;gap:4px 12px}
.editorial-caption>.mono{grid-column:1/-1}
.editorial-caption h3{font-size:24px}
.editorial-caption p{font-size:9px;margin-top:5px}
.editorial-arrow{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.editorial-arrow{transition:none}}
/* Inner pages: the approved editorial language, with hosted type throughout. */
.refined-page{font-family:Jost,sans-serif}
.refined-page .inner-hero{padding-top:50px;padding-bottom:76px}
.inner-hero h1{font-size:clamp(58px,7.5vw,112px);line-height:1.12;margin:40px 0}
.inner-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
.inner-introduction .intro{font-size:25px;line-height:1.4;max-width:440px}
.inner-introduction>div p+p{margin-top:22px}
.refined-page .split h2{margin-top:22px}
.refined-page .split{gap:8%;grid-template-columns:1fr 1.45fr}
.refined-page h2 em{letter-spacing:-.045em}
.agency-facts{margin-top:58px;border-top:1px solid #fffcfa66;padding-top:24px;display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:32px}
.agency-facts p{font:400 clamp(24px,3vw,40px)/1.3 Jost,sans-serif;margin-top:12px;letter-spacing:-.03em}
.expertise-intro{font-size:17px;max-width:360px;margin-top:28px}
.refined-page .service-row{padding:25px 0;gap:18px;grid-template-columns:26px 1fr}
.refined-page .service-row:first-child{border-top:1px solid var(--line)}
.refined-page .service-row h3{font-size:25px;line-height:1.3;font-family:Jost,sans-serif}
.refined-page .service-row p{font-size:16px;line-height:1.65}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:40px}
.process-grid h3{font:400 29px/1.25 Jost,sans-serif;margin:20px 0 14px}
.process-grid p{font-size:17px;line-height:1.65}
.work-intro .intro{max-width:650px;font-size:22px}
.portfolio-section{padding-top:0}
.portfolio-note{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;margin-bottom:28px;border-top:1px solid var(--line)}
.portfolio-note p{font:10px/1.6 'Fira Code',monospace;max-width:330px}
.contact-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;align-items:start}
.contact-sidebar{padding-top:54px}
.contact-sidebar>div{padding:24px 0 32px;border-top:1px solid var(--line)}
.contact-sidebar h2{font-size:clamp(32px,3vw,46px);line-height:1.2;margin-top:18px}
.contact-sidebar p{font-size:17px;margin:18px 0}
.enquiry-section{display:grid;grid-template-columns:1fr 1fr;gap:10%}
.enquiry-section h2{margin:22px 0}
.enquiry-section>div>p{max-width:420px;font-size:18px}
.enquiry-prompts>div{display:grid;grid-template-columns:25px 1fr;gap:18px;padding:24px 0;border-top:1px solid #bfb8b1}
.enquiry-prompts h3{font-size:25px;margin-bottom:8px;line-height:1.2}
.enquiry-prompts p{font-size:16px}
.concept-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-top:42px}
.concept-heading h1{margin:18px 0 24px}
.concept-heading>p{padding-bottom:32px;max-width:240px}
.concept-visual{padding-top:0}
.concept-visual img{width:100%;max-height:900px;object-fit:contain;background:var(--cream)}
.refined-page .inner-hero>.intro{max-width:700px}
@media(max-width:750px){
.refined-page .inner-hero{padding-top:30px;padding-bottom:48px}
.inner-hero h1{font-size:clamp(46px,10.8vw,76px);margin:30px 0;line-height:1.12}
.inner-introduction,.refined-page .split,.contact-columns,.enquiry-section{grid-template-columns:1fr;gap:28px}
.inner-introduction .intro{font-size:22px}
.inner-introduction p{font-size:17px}
.refined-page h2{font-size:clamp(36px,8.5vw,52px)}
.agency-facts{grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}
.agency-facts>div:last-child{grid-column:1/-1}
.agency-facts p{font-size:27px}
.process-grid{grid-template-columns:1fr;gap:30px;margin-top:26px}
.process-grid>div{border-top:1px solid #bfb8b1;padding-top:20px}
.process-grid h3{margin:12px 0}
.portfolio-note{display:block;padding:16px 0;margin-bottom:20px}
.portfolio-note p{margin-top:10px}
.work-intro .intro{font-size:20px}
.contact-sidebar{padding-top:8px}
.contact-sidebar h2{font-size:37px}
.refined-page .service-row h3{font-size:23px}
.concept-heading{display:block;margin-top:30px}
.concept-heading>p{padding-bottom:20px;max-width:none}
.concept-visual img{max-height:none}
}
