:root{color:#0a0a0a;font-synthesis:none;text-rendering:optimizelegibility;--page-gutter:clamp(10px, 1.22vw, 18px);--grid-gutter:clamp(10px, 1.22vw, 18px);background:#f7f7f7;font-family:Geist,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html{background:#f7f7f7;min-width:320px;min-height:100%}body{background:#f7f7f7;min-width:320px;min-height:100%;margin:0;overflow-x:hidden}img{max-width:100%;display:block}button{color:inherit;font:inherit}.portfolio{width:100%;padding:0 var(--page-gutter)}.portfolio__work{position:relative}.portfolio__title{z-index:2;color:#fff;letter-spacing:0;white-space:nowrap;mix-blend-mode:exclusion;pointer-events:none;justify-content:space-between;align-items:flex-start;width:100%;height:0;margin:0;font-family:Libre Bodoni,"Bodoni 72",Didot,serif;font-size:170px;font-weight:700;line-height:1;display:flex;position:sticky;top:0}.portfolio__title span:first-child{text-align:left}.portfolio__title span:last-child{text-align:right}.portfolio__grid{gap:var(--grid-gutter);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:clamp(28px,2.45vw,36px) 0 0;list-style:none;display:grid}.portfolio__tile{aspect-ratio:3/2;background:#eee;min-width:0;overflow:hidden}.portfolio__tile img{object-fit:cover;width:100%;height:100%}.portfolio__tile>a{cursor:pointer;background:0 0;width:100%;height:100%;padding:0;display:block}.portfolio__tile>a:focus-visible{outline-offset:-3px;outline:3px solid #000}.portfolio__clients{min-height:clamp(420px,34vw,520px);padding:clamp(22px,2vw,30px) 0 clamp(40px,4vw,64px)}.portfolio__intro{color:#090909;letter-spacing:-.035em;max-width:690px;margin:0 0 20px;font-size:clamp(22px,1.75vw,28px);font-weight:500;line-height:.97}.portfolio__intro button{cursor:pointer;text-underline-offset:.1em;background:0 0;border:0;margin:0;padding:0;text-decoration:none;text-decoration-thickness:.06em}.portfolio__intro button:hover{text-decoration:underline}.portfolio__intro button:focus-visible,.sheet__close:focus-visible{outline-offset:4px;outline:2px solid}.portfolio__clients h2{color:#747474;margin:0 0 6px;font-size:18px;font-weight:700;line-height:1.2}.portfolio__clients ul{color:#747474;margin:0;padding:0;font-size:16px;font-weight:500;line-height:1.55;list-style:none}.sheet-layer{z-index:20;position:fixed;inset:0}.project-lock{background:#fff;grid-template-columns:minmax(0,5fr) minmax(0,7fr);height:100dvh;min-height:100vh;display:grid;overflow:hidden}.project-lock__art{background:#ddd;min-width:0;overflow:hidden}.project-lock__art img{object-fit:cover;width:100%;max-width:none;height:100%}.project-lock__content{background:#fff;place-items:center;min-width:0;display:grid;position:relative;overflow:hidden}.project-lock__brand{letter-spacing:0;pointer-events:none;margin:0;font-family:Libre Bodoni,"Bodoni 72",Didot,serif;font-size:clamp(92px,9.25vw,150px);font-weight:700;line-height:1;position:absolute;inset:0}.project-lock__brand a{color:#000;pointer-events:auto;text-decoration:none;position:absolute}.project-lock__brand a:first-child{top:6px;left:0}.project-lock__brand a:last-child{bottom:0;right:0}.project-lock__access{text-align:center;justify-items:center;width:min(350px,100% - 48px);display:grid}.project-lock__icon{width:64px;height:64px;margin-bottom:30px}.project-lock__icon circle{fill:none;stroke:#000;stroke-dasharray:1 9;stroke-linecap:round;stroke-width:6px}.project-lock__icon rect{fill:#000}.project-lock__icon path{fill:none;stroke:#000;stroke-width:5px}.project-lock__access>p{letter-spacing:0;margin:0 0 34px;font-size:34px;font-weight:700;line-height:.92}.project-lock__access form{width:100%}.project-lock__access input{color:#000;width:100%;height:40px;font:inherit;background:#fff;border:1px solid #000;border-radius:999px;padding:0 12px;font-size:16px}.project-lock__access input:focus{outline-offset:3px;outline:2px solid #000}.project-lock__error{color:#b00020;text-align:left;margin:12px 14px 0;font-size:14px;font-weight:500}.project-lock__contact{color:#fff;background:#000;border-radius:7px;place-items:center;width:100%;height:41px;margin-top:64px;font-size:16px;text-decoration:none;display:grid}.project-lock__contact:hover{background:#222}.project-lock__contact:focus-visible,.project-lock__brand a:focus-visible{outline-offset:4px;outline:2px solid #000}.case-study-shell{min-height:100vh;padding-bottom:var(--page-gutter);background:#f7f7f7}.case-study-shell__copy dl{margin:0}.case-study-shell__copy dl>div{grid-template-columns:136px minmax(0,1fr);font-size:16px;line-height:1.5;display:grid}.case-study-shell dt{color:#7a7a7a}.case-study-shell dd{margin:0;font-weight:500}.case-study-shell__rows{gap:var(--grid-gutter);padding-inline:var(--page-gutter);display:grid}.case-study-shell__row{gap:var(--grid-gutter);display:grid}.case-study-shell__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study-shell__media{aspect-ratio:3/2;background:#fff;min-width:0;margin:0;overflow:hidden}.case-study-shell__row--2 .case-study-shell__media,.case-study-shell__row--2 .case-study-shell__copy{aspect-ratio:1}.case-study-shell__media img,.case-study-shell__media video{object-fit:cover;width:100%;height:100%}.case-study-shell__copy{background:#fff;border-radius:28px;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(28px,3.5vw,72px);display:flex}.case-study-shell__copy p{letter-spacing:-.025em;max-width:760px;margin:0 0 1em;font-size:24px;font-weight:500;line-height:1.05}.case-study-shell__copy p:last-child{margin-bottom:0}.case-study-shell__copy h2{letter-spacing:-.02em;text-transform:uppercase;margin:48px 0 0;font-size:18px;font-weight:900;line-height:1}.case-study-shell__copy dl{margin-top:56px}.case-study-shell__copy--metrics>div{width:100%;height:100%}.case-study-shell__copy--metrics dl{flex-direction:column;justify-content:space-between;width:100%;height:100%;margin:0;display:flex}.case-study-shell__copy--metrics dl>div{flex-direction:column;grid-template-columns:none;gap:32px;line-height:1;display:flex}.case-study-shell__copy--metrics dt{color:#999;letter-spacing:0;text-transform:uppercase;font-size:clamp(24px,2.2vw,40px);font-weight:700}.case-study-shell__copy--metrics dd{color:#000;letter-spacing:-.04em;font-size:clamp(72px,7vw,112px);font-weight:700;line-height:.85}.case-study-shell__opening{gap:var(--grid-gutter);min-height:100svh;margin-bottom:var(--grid-gutter);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.case-study-shell__hero{background:#fff;min-width:0;min-height:0;margin:0;overflow:hidden}.case-study-shell__hero img,.case-study-shell__hero video{object-fit:cover;width:100%;height:100%}.case-study-shell__overview{flex-direction:column;justify-content:space-between;min-width:0;padding:40px 0;display:flex}.case-study-shell__overview dl{width:min(100%,640px);margin:0}.case-study-shell__overview dl>div{grid-template-columns:100px minmax(0,1fr);font-size:16px;line-height:1.5;display:grid}.case-study-shell__overview dt{color:#7a7a7a}.case-study-shell__overview dd{margin:0;font-weight:500}.case-study-shell__overview>p{letter-spacing:0;text-transform:uppercase;width:100%;margin:0;font-size:56px;font-weight:900;line-height:.94}.sheet-backdrop{cursor:pointer;background:#00000059;border:0;width:100%;padding:0;position:absolute;inset:0}.sheet{background:#fff;position:absolute;inset:4vh 0 0;overflow:hidden}.sheet__scroll{overscroll-behavior:contain;height:100%;overflow-y:auto}.sheet__sticky-header{z-index:2;min-height:64px;padding:0 var(--page-gutter);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.sheet__compact-title{opacity:var(--collapse);margin:0;font-size:16px;font-weight:700}.sheet__close{cursor:pointer;background:0 0;border:0;place-items:center;width:42px;height:42px;padding:8px;display:grid}.sheet__close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px;width:26px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.about-sheet{padding:0 var(--page-gutter) 96px}.about-sheet__socials{flex-wrap:wrap;gap:12px 28px;margin:0;padding:0;font-size:clamp(21px,2vw,30px);line-height:1.12;list-style:none;display:flex}.about-sheet__socials a{color:inherit;text-decoration:none}.about-sheet__socials a:hover{text-underline-offset:.12em;text-decoration:underline}.case-study__intro h1{letter-spacing:0;margin:0 0 clamp(72px,10vw,150px);font-family:Libre Bodoni,"Bodoni 72",Didot,serif;font-size:clamp(84px,15vw,220px);font-weight:700;line-height:.9}.case-study__section{gap:var(--grid-gutter);border-top:1px solid #bbb;grid-template-columns:minmax(140px,1fr) minmax(0,3fr);padding:28px 0 64px;display:grid}.case-study__section h2{margin:0;font-size:16px;font-weight:700}.case-study__copy{max-width:820px}.case-study__copy p{letter-spacing:-.025em;margin:0 0 1em;font-size:clamp(21px,2vw,30px);line-height:1.12}.case-study__copy p:last-child{margin-bottom:0}@media (width<=1100px){.portfolio__title{font-size:11.55vw}}@media (width<=600px){:root{--page-gutter:8px;--grid-gutter:8px}.portfolio__grid{grid-template-columns:minmax(0,1fr);padding-top:18px}.portfolio__clients{min-height:0;padding:18px 0 36px}.portfolio__intro{margin-bottom:20px;font-size:22px;line-height:1}.portfolio__clients h2{font-size:16px}.portfolio__clients ul{font-size:14px;line-height:1.5}.sheet{inset:2vh 0 0}.case-study__intro h1{margin-bottom:64px}.case-study__section{grid-template-columns:1fr;gap:24px;padding-bottom:48px}.case-study__copy p{font-size:21px}.project-lock{grid-template-rows:34svh minmax(0,1fr);grid-template-columns:1fr}.project-lock__brand{font-size:clamp(62px,20vw,92px)}.project-lock__access{width:min(350px,100% - 32px)}.project-lock__access>p{margin-bottom:28px;font-size:30px}.project-lock__contact{margin-top:40px}.case-study-shell__copy p{font-size:24px}.case-study-shell__copy dl>div{grid-template-columns:92px minmax(0,1fr);font-size:14px}.case-study-shell__row--2{grid-template-columns:1fr}.case-study-shell__row--2 .case-study-shell__copy{aspect-ratio:auto}.case-study-shell__copy{border-radius:20px;min-height:560px;padding:28px 22px}.case-study-shell__opening{grid-template-columns:1fr}.case-study-shell__hero{min-height:60svh}.case-study-shell__overview{min-height:75svh;padding:24px 0}.case-study-shell__overview dl>div{grid-template-columns:88px minmax(0,1fr);font-size:14px}.case-study-shell__overview>p{font-size:clamp(36px,12vw,52px)}}
