.services-panel{position:relative;width:100%;min-width:0;overflow:hidden;isolation:isolate;background:var(--black);aspect-ratio:1.15}.services-art{position:absolute;inset:0;overflow:hidden}.services-track{position:absolute;overflow:hidden}.services-track-top{inset:0 0 66.666667%}.services-track-bottom{inset:66.666667% 0 0}.services-track-side{inset:0 66.666667% 0 0}.services-tile{position:absolute;will-change:transform}.services-top,.services-bottom{height:100%;width:33.333333%}.services-top{background:var(--lavender);transform:translate(200%);overflow:hidden}.services-tile-inset{position:absolute;top:-100%;right:0;width:50%;height:100%;background:var(--black);will-change:transform}.services-side{width:100%;height:33.333333%;top:33.333333%;background:var(--projects-lime)}.services-bottom{background:var(--contact-cyan)}.services-face{position:absolute;left:33.333333%;top:33.333333%;width:33.333334%;height:33.333334%;background:var(--contact-cyan);display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;overflow:hidden}.services-label{font-size:clamp(16px,1.55vw,36px);line-height:1.12;letter-spacing:-.04em;max-width:100%;text-wrap:balance}.services-cover{position:absolute;inset:-1px;background:var(--black);will-change:transform;transform:translate(101%)}.services-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,#ffffff38 1px,transparent 1px),linear-gradient(to bottom,#ffffff38 1px,transparent 1px);background-size:33.333333% 33.333333%}.services-motion{position:absolute;bottom:12px;right:12px;padding:8px 10px;background:var(--black);color:var(--white);border:0;font-size:11px;opacity:0}.services-panel:hover .services-motion,.services-panel[data-reduced=true] .services-motion,.services-motion:focus-visible{opacity:1}@media(max-width:760px){.services-label{font-size:clamp(16px,3.3vw,26px)}}@media(prefers-reduced-motion:reduce){.services-tile,.services-cover,.services-tile-inset{will-change:auto}}:root{--hero-nav-gap: clamp(24px, 4svh, 48px);--hero-height: clamp(340px, 55svh, 680px);--hero-mobile-height: clamp(340px, 55svh, 540px);--hero-landscape-height: clamp(230px, 55svh, 420px)}square-hero,.square-hero{display:block;position:relative;width:100%;height:var(--hero-height);margin-block-start:var(--hero-nav-gap);overflow:hidden;contain:layout paint;background:#fff;touch-action:pan-y pinch-zoom}.square-hero__canvas{display:block;width:100%;height:100%;touch-action:pan-y pinch-zoom}@media(max-width:599px){square-hero,.square-hero{height:var(--hero-mobile-height)}}@media(orientation:landscape)and (max-height:539px)and (max-width:1099px){square-hero,.square-hero{height:var(--hero-landscape-height)}}:root{--white: #fff;--black: #000;--projects-lime: #d5ef73;--lavender: #a89fe2;--contact-cyan: #83d2e2;--cta-violet: #5f41eb;--header-height: 46px;--font: "Helvetica Neue", Helvetica, Arial, sans-serif;color:var(--black);background:var(--white);font-family:var(--font);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}h1,h2,p,blockquote{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;left:10px;top:-100px;z-index:200;background:#fff;padding:12px}.skip-link:focus{top:5px}.site-header{position:fixed;z-index:80;inset:0 0 auto;height:var(--header-height);display:flex;align-items:stretch;justify-content:space-between;background:#fff;transform:translateY(0);transition:transform .18s ease-out}.site-header.is-hidden{transform:translateY(-100%)}.site-header:focus-within{transform:translateY(0)}.brand{display:flex;align-items:center;padding:7px 22px}.brand img{width:clamp(156px,15vw,250px);height:auto;max-height:32px;object-fit:contain}.site-header nav{display:flex;align-items:stretch;font-size:clamp(12px,.95vw,15px)}.site-header nav a,.site-header nav button{display:flex;align-items:center;justify-content:center;padding:0 27px;white-space:nowrap;border:0;background:#fff}.site-header nav button{gap:7px;min-width:130px}.site-header nav button:hover,.site-header nav button:focus-visible{background:var(--projects-lime)}.overlay-open .brand,.overlay-open .nav-about{visibility:hidden}.overlay-open nav button{background:#fff}.site-main{padding-top:var(--header-height)}.home-hero{position:relative;margin:0;padding:0;overflow:hidden;--hero-nav-gap: 0px}.home-hero .square-hero{margin:0;padding:0}.motion-toggle{position:absolute;bottom:3px;right:20px;background:#fff;border:0;font-size:10px;padding:5px;opacity:0}.home-hero:hover .motion-toggle,.motion-toggle:focus-visible{opacity:1}.home-statement{min-height:clamp(260px,25vw,460px);display:flex;align-items:center;justify-content:flex-end;padding:6vw 4.5vw}.home-statement h1{font-size:clamp(38px,4.6vw,85px);line-height:1.13;font-weight:600;letter-spacing:-.045em;white-space:pre-line;text-align:right}.studio-intro{background:var(--lavender);padding:clamp(60px,5vw,98px) 20px;color:#171329}.studio-intro p{width:55%;max-width:880px;margin:auto;text-align:center;font-size:clamp(16px,1.65vw,28px);line-height:1.2;letter-spacing:-.025em}.impact{display:grid;grid-template-columns:42.5% 57.5%;background:var(--white);scroll-margin-top:var(--header-height)}.impact-title{align-self:center;padding:60px 3.5vw 60px 7.5vw}.impact-label{font-size:clamp(18px,1.6vw,35px);font-weight:400;letter-spacing:-.035em;margin-bottom:3.2vw}.eyebrow{font-size:clamp(9px,.65vw,12px);letter-spacing:.075em;font-weight:500;margin-bottom:30px}.impact h2{font-size:clamp(27px,2.4vw,60px);font-weight:400;line-height:1.22;letter-spacing:-.04em}.impact-cta{display:inline-block;padding:1.6vw 1.9vw;margin:1.4vw 0 0 -1.9vw;background:var(--white);color:var(--black);border:0;font-size:clamp(19px,1.6vw,35px);letter-spacing:-.035em;line-height:1.2}.impact-cta:hover{background:var(--lavender);color:var(--white)}.utility-link{display:inline-block;font-size:clamp(10px,.75vw,13px);letter-spacing:.055em;text-decoration:underline;text-underline-offset:3px;margin-top:32px}.testimonial{background:#000;color:#fff;display:grid;grid-template-columns:57% 43%;padding:5.3vw 1.5vw 5.3vw 9.2vw;min-height:46vw}.testimonial-copy{padding:0 11vw 0 0;display:flex;align-items:flex-start;flex-direction:column}.testimonial .eyebrow{margin:0 0 24px}.quote-mark{font-size:54px;height:43px;line-height:1}.testimonial blockquote{font-size:clamp(24px,2.15vw,39px);font-weight:400;line-height:1.12;letter-spacing:-.03em}.attribution{font-size:clamp(13px,.9vw,17px);margin-top:34px}.attribution small{display:block;font-size:clamp(10px,.7vw,13px);margin-top:8px;color:#bbb;line-height:1.4}.testimonial .utility-link{margin-top:auto;padding-top:52px}.testimonial-image{width:100%;height:100%;min-height:32vw;max-height:700px;object-fit:cover;filter:grayscale(1)}.concept-band{background:var(--lavender);color:#171329;min-height:20vw;padding:7.5vw 3.2vw 4vw;display:flex;align-items:center}.concept-band h2{font-size:clamp(29px,3vw,56px);line-height:1.16;white-space:pre-line;letter-spacing:-.025em;font-weight:600}.site-footer{background:#000;color:#fff;min-height:34vw;display:grid;grid-template-columns:52% 1fr;grid-template-rows:auto 1fr auto;padding:2.2vw 3.2vw 2vw;position:relative;gap:5vw 3vw}.footer-wordmark{font-size:clamp(76px,10.3vw,195px);font-weight:600;letter-spacing:-.055em;line-height:1}.footer-links{justify-self:end;display:flex;flex-direction:column;text-align:right;padding:4vw 1vw 0;font-size:clamp(14px,1.2vw,20px);gap:12px}.footer-contact{grid-column:2;grid-row:2/4;align-self:end}.talk-cta{display:block;background:var(--cta-violet);font-size:clamp(20px,1.65vw,29px);font-weight:500;padding:22px 25px;margin-bottom:30px}.talk-cta:hover{background:#4d31d4}.socials{display:flex;gap:25px;font-size:clamp(12px,1.15vw,19px)}.socials span{color:#b6b6b6}.copyright{grid-row:3;font-size:clamp(10px,.75vw,13px);align-self:end}.projects-overlay{position:fixed;inset:var(--header-height) 0 0;background:var(--projects-lime);z-index:70;display:flex;align-items:center;overflow:auto}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(38px,7vh,84px) 5vw;width:86%;margin:auto;padding:8vh 0}.category-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #727d4b;padding:12px 0 4px;min-height:57px;font-size:clamp(24px,2.6vw,50px);letter-spacing:-.025em;line-height:1.2;position:relative}.category-link:before{content:"";position:absolute;inset:-10px -24px -11px;background:#fff;z-index:-1;opacity:0}.category-link:hover:before,.category-link:focus-visible:before{opacity:1}.category-link:hover{border-color:#000}.category-link span:last-child{font-size:1.4em;font-weight:400;line-height:1}.about-page{min-height:calc(100svh - var(--header-height));display:flex;justify-content:center;align-items:flex-start;flex-direction:column;gap:25px;padding:12vw}.about-page h1{font-size:clamp(32px,5vw,90px);font-weight:400;letter-spacing:-.04em}.about-page a{font-size:18px;text-decoration:underline;text-underline-offset:6px}.contact-page{background:var(--contact-cyan);min-height:calc(100svh - var(--header-height));position:relative;display:grid;grid-template-columns:52% 1fr;grid-template-rows:auto 1fr;gap:35px 1vw;padding:25px 2.5vw 6vw}.contact-page h1{grid-column:2;font-size:clamp(42px,5.3vw,100px);font-weight:600;letter-spacing:-.035em;line-height:1.12;white-space:nowrap;color:#13353c}.contact-details{grid-column:1;grid-row:2;align-self:end;padding:0 2vw 3vw;color:#173e46;display:flex;flex-direction:column;gap:8px;font-size:clamp(16px,1.55vw,27px)}.contact-form-block{grid-column:2;grid-row:2;background:#fff;padding:clamp(25px,3.6vw,70px);min-height:53vh}.contact-form-block form{display:grid;gap:clamp(18px,2.3vh,28px)}.contact-form-block label{display:flex;flex-direction:column;gap:7px;font-size:clamp(14px,1.1vw,18px)}.contact-form-block input,.contact-form-block textarea,.contact-form-block select{border:0;border-bottom:1px solid #aaa;border-radius:0;background:transparent;color:#000;padding:8px 0;min-width:0;width:100%;resize:vertical;font-size:16px}.contact-form-block input:focus,.contact-form-block textarea:focus,.contact-form-block select:focus{outline:0;border-bottom:2px solid #000}.submit-enquiry{display:flex;justify-content:space-between;align-items:center;background:#000;color:#fff;padding:15px 17px;border:0;font-size:17px}.form-status:empty{display:none}.form-status{font-size:14px;line-height:1.4;color:#a02020}.form-privacy{font-size:11px;color:#555}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-success{display:flex;flex-direction:column;justify-content:center;gap:25px;min-height:45vh}.contact-success h2{font-size:clamp(40px,5vw,80px);font-weight:400}.contact-success button{border:0;border-bottom:1px solid;background:#fff;padding:10px 0;align-self:flex-start}.preview-banner{position:fixed;z-index:100;bottom:0;left:0;right:0;background:#fff2b5;color:#000;padding:8px;text-align:center;font-size:12px}.project-stage{position:relative;height:calc(100svh - var(--header-height));min-height:480px;background:#000;color:#fff;overflow:hidden;touch-action:pan-y pinch-zoom;outline:none;user-select:none}.project-stage:focus-visible{outline:2px solid #fff;outline-offset:-5px}.project-track{position:absolute;inset:0}.stage-project{position:absolute;top:50%;left:50%;width:49vw;max-width:1040px;transform:translate(calc(-50% + var(--slot) * 57vw),-50%) scale(var(--scale));filter:brightness(var(--brightness));will-change:transform,filter;pointer-events:none}.stage-project img{width:100%;height:min(68vh,calc(49vw / var(--ratio)));object-fit:cover;background:#131313}.project-caption{position:relative;margin-top:-10px;text-align:center;opacity:var(--caption);padding:0 5px;filter:none}.project-caption h2{font-size:clamp(23px,3.4vw,64px);line-height:1.08;letter-spacing:-.045em;font-weight:400}.project-caption p{font-size:clamp(8px,.7vw,12px);line-height:1.35;letter-spacing:.07em;margin-top:8px}.project-caption p+p{margin-top:2px}.stage-navigation button{position:absolute;top:50%;transform:translateY(-50%);background:#fff;color:#000;border:0;padding:13px 11px;font-size:10px;letter-spacing:.06em;min-height:44px;z-index:5}.stage-navigation button:disabled{opacity:.55}.stage-prev{left:8vw}.stage-next{right:8vw}.stage-navigation button span{font-size:12px}.stage-position{position:absolute;bottom:21px;left:25px;font-size:10px;letter-spacing:.12em;color:#bbb}.empty-stage{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px}.empty-stage h1{font-size:6vw;font-weight:400}.empty-stage p{font-size:20px}@media(min-width:1800px){.brand{padding-left:28px}.contact-form-block{min-height:58vh}.site-header{--header-height: 48px}}@media(max-width:1024px){.brand{padding-left:17px}.site-header nav a,.site-header nav button{padding:0 21px}.studio-intro p{width:66%}.testimonial-copy{padding-right:6vw}.testimonial{padding-left:6vw}.contact-page{grid-template-columns:43% 1fr}.contact-page h1{font-size:5.5vw}.contact-form-block{padding:30px}.stage-project{width:57vw}.stage-project img{height:min(64vh,calc(57vw / var(--ratio)))}.stage-prev{left:3vw}.stage-next{right:3vw}}@media(max-width:600px){:root{--header-height: 44px}.brand{padding:9px 10px}.brand img{width:154px;max-height:26px}.site-header nav{font-size:12px}.site-header nav a,.site-header nav button{padding:0 11px}.site-header nav button{min-width:88px;gap:5px}.home-statement{min-height:250px;padding:60px 22px}.home-statement h1{font-size:clamp(31px,8.4vw,48px)}.studio-intro{padding:56px 26px}.studio-intro p{width:100%;font-size:17px;line-height:1.27}.eyebrow{font-size:9px;margin-bottom:22px}.utility-link{font-size:10px;margin-top:24px}.testimonial{grid-template-columns:1fr;padding:57px 22px 28px;gap:36px}.testimonial-copy{padding-right:14vw}.testimonial blockquote{font-size:29px}.testimonial .utility-link{padding-top:0;margin-top:36px}.testimonial-image{height:91vw;min-height:0;max-height:500px}.attribution{font-size:13px}.attribution small{font-size:10px}.concept-band{padding:60px 23px;min-height:230px}.concept-band h2{font-size:34px}.site-footer{padding:30px 22px 23px;grid-template-columns:1fr;gap:38px;min-height:480px}.footer-wordmark{font-size:21vw}.footer-links{grid-row:2;grid-column:1;padding:0;justify-self:start;flex-direction:row;font-size:14px;gap:25px}.footer-contact{grid-row:3;grid-column:1;width:100%}.talk-cta{font-size:19px;padding:19px;margin-bottom:24px}.socials{font-size:13px;gap:25px}.copyright{grid-row:4;grid-column:1;font-size:10px}.category-grid{grid-template-columns:1fr;gap:22px;width:83%;padding:6vh 0}.category-link{font-size:27px;min-height:61px}.category-link:before{inset:-3px -13px}.contact-page{display:flex;flex-direction:column;gap:30px;padding:38px 22px 40px;min-height:calc(100svh - 44px)}.contact-page h1{font-size:10.2vw;white-space:normal;text-align:right;align-self:flex-end}.contact-form-block{width:100%;padding:28px;order:2;min-height:0}.contact-details{order:3;padding:15px 0 0;font-size:16px;align-self:flex-start}.contact-form-block form{gap:20px}.contact-form-block label{font-size:14px}.contact-success{min-height:50vh}.about-page{padding:80px 25px}.about-page h1{font-size:37px}.about-page a{font-size:16px}.project-stage{min-height:420px}.stage-project{width:78vw;transform:translate(calc(-50% + var(--slot) * 83vw),-55%) scale(var(--scale))}.stage-project img{height:53vh;max-height:650px}.project-caption{margin-top:15px;padding:0 5px}.project-caption h2{font-size:clamp(25px,7.5vw,38px)}.project-caption p{font-size:8px;margin-top:9px}.stage-navigation button{top:auto;bottom:37px;transform:none;min-width:76px}.stage-prev{left:22px}.stage-next{right:22px}.stage-position{bottom:53px;left:50%;transform:translate(-50%);font-size:9px}}@media(prefers-reduced-motion:reduce){.site-header{transition:none}html{scroll-behavior:auto}}.category-link{isolation:isolate}.site-header.overlay-open nav button:hover{background:#fff}@media(max-width:600px){.stage-project{transform:translate(calc(-50% + var(--slot) * 74vw),-55%) scale(var(--scale))}}@media(max-width:760px){.impact{grid-template-columns:1fr}.impact-title{padding:76px 7vw 58px}.impact-label{font-size:19px;margin-bottom:32px}.impact h2{max-width:560px;font-size:clamp(30px,5.5vw,40px)}.impact-cta{margin:24px 0 0 -20px;padding:18px 20px;font-size:21px}}
