@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17201e;--paper:#f5f5ef;--line:#c6cbc5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #df5b34;outline-offset:5px}img{display:block;width:100%;object-fit:cover}p{line-height:1.7;max-width:620px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;letter-spacing:-.065em;line-height:1.02}h1{font-size:clamp(70px,10.5vw,160px)}h2{font-size:clamp(44px,6.7vw,100px)}h3{font-size:clamp(26px,3vw,44px)}.label{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;background:var(--paper);padding:17px 3vw;border-bottom:1px solid var(--line);gap:20px}.brand{font-size:29px;font-weight:800;letter-spacing:-.08em}.nav nav{display:flex;gap:26px;align-items:center;font-size:12px}.nav a{padding:9px 0}.nav .contact{border-bottom:1px solid}.chapter{padding:95px 5vw;scroll-margin-top:65px}.topline{display:flex;justify-content:space-between;gap:20px;margin-bottom:45px}.hero{padding:55px 5vw 0}.hero h1{margin-bottom:35px;max-width:1150px}.hero .subtitle{max-width:350px;margin-left:auto}.hero-photo{height:58vw;max-height:680px;position:relative;overflow:hidden}.hero-photo img{height:100%;object-position:50% 60%}.caption{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:15px 0;font-size:11px}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw}.split>p{font-size:22px}.dark{background:var(--ink);color:var(--paper)}.dark .caption,.dark .row{border-color:#54615c}.rows{margin-top:50px}.row{display:grid;grid-template-columns:60px 1fr 1fr;gap:20px;border-top:1px solid var(--line);padding:28px 0}.row p{font-size:15px}.row h3{font-size:28px;letter-spacing:-.04em}.link{display:inline-flex;align-items:center;justify-content:space-between;gap:60px;border-bottom:1px solid;padding:15px 0;min-height:48px;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:19px 25px;min-height:52px}.dark .button{background:var(--paper);color:var(--ink)}.preview{border:1px solid var(--line);background:#fff;position:relative}.preview iframe{width:100%;height:710px;border:0;display:block}.preview.phone{width:min(390px,100%);margin:auto}.tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.tools button{background:none;border:1px solid;padding:12px 18px;min-height:44px}.tools button[aria-pressed=true]{background:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw 5vw;margin-top:60px}.project-grid article:nth-child(even){padding-top:150px}.project-grid img{height:520px;transition:filter .4s}.project-grid a:hover img{filter:brightness(.88)}.project-grid h3{margin:18px 0 10px}.project-grid .label{display:flex;justify-content:space-between}.aperture{height:min(75vw,790px);min-height:420px;position:relative;overflow:hidden;background:#101715}.aperture img{height:100%;object-position:center 55%}.aperture .shutter{position:absolute;inset:0;display:flex;pointer-events:none}.shutter i{display:block;width:33.333%;background:var(--paper);transform:scaleX(0);transform-origin:right;transition:transform 2.4s cubic-bezier(.25,.65,.1,1)}.shutter i:nth-child(2){transition-delay:.16s}.shutter i:nth-child(3){transition-delay:.32s}.js .aperture.ready:not(.opened) .shutter i{transform:scaleX(.9)}.aperture .overlay{position:absolute;bottom:30px;left:30px;right:30px;color:white;text-shadow:0 2px 20px #000}.overlay h2{font-size:clamp(45px,8vw,120px);margin:0}.replay{border:0;background:transparent;color:inherit;text-decoration:underline;min-height:44px}.bigfoot{font-size:clamp(110px,27vw,420px);letter-spacing:-.09em;line-height:.85;margin-top:75px;font-weight:700}.footer{padding:50px 5vw 20px}.footer small{display:block;font-size:10px;line-height:1.7;margin-top:25px}.dialog{border:0;width:min(1000px,94vw);max-height:90vh;padding:30px;background:var(--paper);color:var(--ink)}.dialog::backdrop{background:#101715c9}.dialog img{max-height:450px;object-fit:cover}.dialog .close{position:sticky;top:0;float:right;background:var(--ink);color:white;border:0;padding:14px;z-index:2}.dialog h2{font-size:50px;margin-top:25px}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:white;padding:20px}.skip:focus{top:0}.strip{padding:10px 3vw;background:var(--ink);color:white;font-size:10px;display:flex;justify-content:space-between}.intro-number{font-size:120px;letter-spacing:-.09em;line-height:1}.menu{display:none}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters button{border:1px solid;background:none;padding:12px 20px}.filters button[aria-pressed=true]{background:var(--ink);color:white}article[hidden]{display:none}.detail-hero{height:72vh;min-height:440px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.gallery img{height:600px}.crumb{font-size:12px;margin-bottom:45px}
@media(max-width:700px){.nav{padding:12px 5vw;gap:12px}.nav nav{gap:14px;font-size:11px}.nav .optional{display:none}.brand{font-size:25px}.chapter{padding:65px 6vw}.hero{padding:38px 6vw 0}.topline{margin-bottom:30px}.hero h1{font-size:16vw}.hero .subtitle{margin-left:0;font-size:14px}.hero-photo{height:85vw}.split{grid-template-columns:1fr;gap:25px}.split>p{font-size:18px}.row{grid-template-columns:30px 1fr;gap:15px}.row p{grid-column:2}.row h3{margin-bottom:0}.project-grid{grid-template-columns:1fr;gap:50px}.project-grid article:nth-child(even){padding-top:0}.project-grid img{height:110vw;max-height:570px}.aperture{height:115vw;min-height:400px}.aperture .overlay{left:20px;bottom:25px}.overlay h2{font-size:14vw}.caption{font-size:9px}.preview iframe{height:650px}.footer{padding:50px 6vw 20px}.gallery{grid-template-columns:1fr}.gallery img{height:110vw}.detail-hero{height:65vh}.dialog{padding:20px}.dialog h2{font-size:38px}.nav nav a{min-height:44px;display:flex;align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js .aperture.ready:not(.opened) .shutter i{transform:scaleX(0)}}
@media print{.nav,.strip,.tools,.replay,.button{display:none}.chapter{break-inside:avoid;padding:35px}.hero-photo{height:350px}.dark{background:white;color:black}.preview iframe{height:600px}body{background:white}.aperture .shutter{display:none}}

@media(min-width:701px){.hero h1{font-size:8.3vw;line-height:1}.hero{padding-top:40px}.hero .subtitle{margin-top:-35px;padding-bottom:15px}.intro-copy{grid-column:2}}
.aperture img{object-position:50% 75%}

.pitch-cover{display:grid;grid-template-columns:1.05fr 1fr;min-height:760px;height:calc(100svh - 92px);max-height:1000px}.cover-copy{padding:40px 4vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.cover-copy h1{font-size:7.2vw;line-height:1;letter-spacing:-.075em;margin:70px -8vw 35px 0;z-index:1;max-width:100%}.cover-copy p{font-size:20px;margin-top:auto}.cover-copy .link{width:100%;margin-top:20px}.pitch-cover figure{margin:0;position:relative;overflow:hidden}.pitch-cover img{height:100%;object-position:50% 55%}.pitch-cover figcaption{position:absolute;bottom:25px;left:25px;color:white;font-size:11px;text-shadow:0 2px 7px black}@media(max-width:700px){.pitch-cover{display:flex;flex-direction:column;height:auto;max-height:none;min-height:0}.cover-copy{padding:30px 6vw}.cover-copy h1{font-size:16vw;margin:40px 0 25px}.cover-copy p{font-size:16px}.pitch-cover figure{height:90vw;min-height:330px}.cover-copy .link{margin-top:0}}

.brand{white-space:nowrap;flex-shrink:0}.aperture .overlay{transition:opacity .6s .8s}.js .aperture.ready:not(.opened) .overlay{opacity:0;transition:none}.aperture.reset .shutter i{transition:none}@media(prefers-reduced-motion:reduce){.js .aperture.ready:not(.opened) .overlay{opacity:1}}@media(max-width:380px){.nav nav{gap:10px}.nav .brand span{display:none}}
.replay,.tools button{display:none}.js .replay{display:block}.js .tools button{display:inline-block}
