:root{--bg: #1a1a23;--bg-raised: #20202a;--ink: #f2efe9;--ink-2: rgb(242 239 233 / .62);--ink-3: rgb(242 239 233 / .38);--accent: #f0c75e;--line: rgb(242 239 233 / .12);--line-strong: rgb(242 239 233 / .28);--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--gutter: clamp(20px, 4vw, 64px);--ease-out: cubic-bezier(.2, .75, 0, 1);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-font-smoothing:antialiased}body{margin:0;overflow-x:clip;color:var(--ink);font:400 1rem/1.6 var(--font-body)}html:not(.has-field) body{background-image:radial-gradient(rgb(255 255 255 / .14) 1px,transparent 1.6px);background-size:28px 28px}::selection{background:var(--accent);color:var(--bg)}a{color:inherit}.field{position:fixed;inset:0;width:100%;height:100%;background:var(--bg);pointer-events:none;opacity:0;transition:opacity .8s}.is-live .field{opacity:1}main{position:relative}.hero{position:relative;display:grid;align-items:end;min-height:100svh;padding:var(--gutter)}.hero__portrait{position:absolute;right:2vw;bottom:0;width:min(94svh,54vw);aspect-ratio:1;margin:0}.hero__portrait img{display:block;width:100%;height:auto;filter:grayscale(1) contrast(1.1);-webkit-mask-image:linear-gradient(#000 68%,transparent);mask-image:linear-gradient(#000 68%,transparent)}.has-field .hero__portrait img{opacity:0}.has-field .hero__portrait{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.has-field .hero__portrait img{-webkit-user-drag:none}.hero__caption{position:absolute;top:var(--gutter);right:var(--gutter);display:grid;gap:4px;justify-items:end;font:400 11px/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}html:not(.has-field) .hero__caption{display:none}.hero__copy{position:relative;max-width:min(640px,46vw);padding-bottom:7svh}.hero__role{margin:0;font:500 12px/1.2 var(--font-body);letter-spacing:.18em;text-transform:uppercase}.hero__name{margin:.32em 0 .38em;font:400 clamp(54px,7vw,120px) / .92 var(--font-display);letter-spacing:-.005em}.hero__name span{display:block}.hero__name span:first-child{font-style:italic}.hero__name span+span{color:var(--ink-2)}.hero__lede{max-width:32em;margin:0;font-size:clamp(17px,1.3vw,20px);line-height:1.55;color:var(--ink-2)}.hero__lede em{font-style:normal;color:var(--accent)}.hero__lede strong{font-weight:500;color:var(--ink)}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px;margin-top:40px}.cta{display:inline-flex;align-items:center;gap:14px;padding:18px 30px;border-radius:999px;background:var(--ink);color:var(--bg);font:500 16px/1 var(--font-body);text-decoration:none;border:0;cursor:pointer;transition:transform .5s var(--ease-out),background-color .25s}.cta svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .4s var(--ease-out)}.cta:hover,.cta:focus-visible{background:var(--accent)}.cta:hover svg{transform:translate(4px)}.socials{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;font:400 12px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.socials a{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 0;color:var(--ink-2);text-decoration:none;transition:color .25s}.socials svg{width:15px;height:15px;flex:none;opacity:.8;transition:color .25s,opacity .25s}.socials a:hover svg,.socials a:focus-visible svg{color:var(--accent);opacity:1}.socials a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease-out)}.socials a:hover,.socials a:focus-visible{color:var(--ink)}.socials a:hover:after,.socials a:focus-visible:after{transform:scaleX(1);transform-origin:left}:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.hero__scroll{position:absolute;left:var(--gutter);bottom:26px;display:flex;align-items:center;gap:14px;font:400 11px/1 var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);text-decoration:none}.hero__scroll:after{content:"";width:40px;height:1px;background:linear-gradient(90deg,var(--ink-3),transparent);animation:scroll-cue 2.4s var(--ease-out) infinite;transform-origin:left}@keyframes scroll-cue{0%{transform:scaleX(0)}50%{transform:scaleX(1)}to{transform:scaleX(1);opacity:0}}.reveal{opacity:0}.is-ready .reveal{animation:reveal 1.2s var(--ease-out) both;animation-delay:calc(var(--i) * 90ms + 1.1s)}html:not(.has-field).is-ready .reveal{animation-delay:calc(var(--i) * 90ms)}@keyframes reveal{0%{opacity:0;transform:translateY(28px);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}.topbar{position:fixed;inset:0 0 auto;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:16px var(--gutter) 28px;background:linear-gradient(var(--bg) 45%,transparent);transform:translateY(-100%);transition:transform .6s var(--ease-out)}.topbar.is-visible{transform:none}.topbar__name{font:400 21px/1 var(--font-display);text-decoration:none}.topbar__cta{padding:10px 18px;border:1px solid var(--line-strong);border-radius:999px;background:none;color:inherit;font:500 14px/1 var(--font-body);text-decoration:none;cursor:pointer;transition:background-color .25s,color .25s,border-color .25s}.topbar__cta:hover,.topbar__cta:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--bg)}.label{margin:0 0 48px;font:400 12px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.statement{max-width:21em;margin:0;font:400 clamp(33px,4.4vw,68.4px) / 1.16 var(--font-display);letter-spacing:-.01em;color:var(--ink-2)}.statement--lg{max-width:16em;font-size:clamp(36px,5.6vw,96px);line-height:1.04;color:var(--ink)}.statement b{font-weight:inherit;color:var(--ink)}.w{transition:opacity .5s}[data-words] .w:not(.is-lit){opacity:.16}.method{position:relative}.method__pin{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:0 var(--gutter)}.method__stage{position:sticky;top:8svh;grid-area:1 / 2;align-self:start;height:84svh}.method__steps{grid-area:1 / 1;margin:0;padding:0;list-style:none}.method__step{display:grid;align-content:center;gap:28px;min-height:100svh;opacity:calc(.12 + .88 * var(--focus, 1))}.method__step p{max-width:11em;margin:0;font:400 clamp(44.8px,5.7vw,96.8px) / 1.04 var(--font-display);letter-spacing:-.012em}.method__step em{font-style:normal;color:var(--accent)}.method__index{font:400 12px/1 var(--font-mono);letter-spacing:.16em;color:var(--ink-3)}.method__index b{display:block;margin-bottom:12px;font-weight:400;text-transform:uppercase;color:var(--accent)}.method__step p.method__note{max-width:26em;font:400 clamp(16px,1.2vw,19px) / 1.6 var(--font-body);letter-spacing:0;color:var(--ink-2)}.method__progress{position:absolute;top:50%;right:0;display:flex;flex-direction:column;gap:8px;transform:translateY(-50%);opacity:0;transition:opacity .5s}.method__progress.is-visible{opacity:1}.method__progress span{width:2px;height:32px;background:var(--line-strong);transition:background-color .5s}.method__progress span.is-active{background:var(--ink)}.language,.toolkit,.work,.side,.clients,.offhours{max-width:1320px;padding:22vh var(--gutter) 0}.language__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6vw;align-items:start;margin-top:10vh}.language__body p{max-width:32em;margin:0;font-size:clamp(17px,1.3vw,20px);line-height:1.7;color:var(--ink-2)}.stream{margin:0;padding-left:28px;border-left:1px solid var(--accent);font:400 clamp(28.3px,2.7vw,42.5px) / 1.3 var(--font-display);letter-spacing:-.01em}.stream:not(.is-done) .w:not(.is-lit){opacity:0}.stream .w{transition:opacity .25s}.stream .is-current:after,.stream.is-done .w:last-child:after{content:"";display:inline-block;width:.45em;height:.9em;margin-left:.12em;background:var(--accent);vertical-align:-.08em}.stream.is-done .w:last-child:after{animation:caret 1.1s steps(1) infinite}@keyframes caret{50%{opacity:0}}.toolkit__head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:40px}.toolkit__head .label{margin:0}.toolkit__nav{display:flex;gap:8px}.toolkit__nav button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:none;color:var(--ink);cursor:pointer;transition:border-color .3s,color .3s,opacity .3s}.toolkit__nav button:first-child svg{transform:scaleX(-1)}.toolkit__nav button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.toolkit__nav button:disabled{opacity:.3;cursor:default}.toolkit__nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.toolkit__list{--fade-l: 56px;--fade-r: 56px;display:grid;grid-auto-flow:column;grid-auto-columns:clamp(232px,20vw,272px);gap:0 28px;margin:0 calc(-1 * var(--gutter) - max(0px,100vw - 1320px)) 0 calc(-1 * var(--gutter));padding:0 var(--gutter) 6px;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--fade-l),#000 calc(100% - var(--fade-r)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--fade-l),#000 calc(100% - var(--fade-r)),transparent)}.toolkit__list::-webkit-scrollbar{display:none}.toolkit__list.is-start{--fade-l: 0px}.toolkit__list.is-end{--fade-r: 0px}.toolkit__list:focus-visible{outline:1px solid var(--accent);outline-offset:8px}.toolkit__list li{position:relative;display:flex;flex-direction:column;gap:12px;padding-top:22px;border-top:1px solid var(--line);scroll-snap-align:start}.toolkit__list li:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease-out)}.toolkit__list li:hover:before{transform:none}.toolkit__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px}.toolkit__icon{width:30px;height:30px;fill:none;stroke:var(--accent);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transition:transform .6s var(--ease-out)}.toolkit__list li:hover .toolkit__icon{transform:translateY(-3px)}.toolkit__stage{font:400 clamp(27px,2.2vw,34px) / 1.1 var(--font-display);letter-spacing:-.012em}.toolkit__what{flex:1;font-size:15px;line-height:1.55;color:var(--ink-2)}.toolkit__tools{font:400 11px/1.6 var(--font-mono);letter-spacing:.04em;color:var(--ink-3)}.cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8vh 5vw;margin:0;padding:0;list-style:none}.case{position:relative;padding-top:26px;border-top:1px solid var(--line)}.case:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease-out)}.case:hover:before{transform:none}.case__meta{display:flex;justify-content:space-between;margin:0 0 28px;font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.case__meta span:first-child{color:var(--accent)}.case__title{max-width:14em;margin:0 0 22px;font:400 clamp(33px,3.4vw,54.3px) / 1.08 var(--font-display);letter-spacing:-.01em}.case__body{max-width:32em;margin:0;color:var(--ink-2)}.case__link{display:inline-block;margin-left:.4em;color:var(--ink);text-decoration:underline 1px var(--accent);text-underline-offset:.2em}.side__also{margin-top:12vh}.side__also summary{display:flex;align-items:center;gap:16px;width:fit-content;margin:0;padding:10px 0;list-style:none;color:var(--ink-2);cursor:pointer;transition:color .3s}.side__also summary::-webkit-details-marker{display:none}.side__also summary:after{content:"+";font-size:16px;color:var(--accent);transition:transform .4s var(--ease-out)}.side__also[open] summary:after{transform:rotate(45deg)}.side__also summary:hover{color:var(--ink)}.side__count{color:var(--ink-3)}.side__also[open] .side__count{display:none}.side__also[open] .cases{margin-top:40px;animation:also-in .6s var(--ease-out)}@keyframes also-in{0%{opacity:0;transform:translateY(12px)}}.cases--compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:6vh 3vw}.cases--compact .case__meta{margin-bottom:20px}.cases--compact .case__media.media{--inset: clamp(10px, 1.2vw, 18px);margin-bottom:22px}.cases--compact .case:hover .case__media{--inset: clamp(5px, .5vw, 8px)}.cases--compact .case__title{font-size:clamp(26px,2.2vw,34px)}.cases--compact .case__body{font-size:15px}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9vh 3vw;margin:0;padding:0;list-style:none}.pcard{display:block;color:inherit;text-decoration:none}.pcard__media.media,.case__media.media{--inset: clamp(14px, 2vw, 28px);aspect-ratio:16 / 10;margin:0 0 26px;background:radial-gradient(rgb(242 239 233 / .16) 1px,transparent 1.6px) 0 0 / 14px 14px;transition:background-color .4s}.pcard__media.media>img,.pcard__media.media>video,.case__media.media>img{inset:var(--inset);width:calc(100% - 2 * var(--inset));height:calc(100% - 2 * var(--inset));filter:grayscale(.9) contrast(.95) brightness(.9);transition:inset .8s var(--ease-out),width .8s var(--ease-out),height .8s var(--ease-out),filter .7s var(--ease-out)}.pcard:hover .pcard__media,.pcard:focus-visible .pcard__media,.case:hover .case__media{--inset: clamp(6px, .8vw, 10px)}.pcard:hover .pcard__media>*,.pcard:focus-visible .pcard__media>*,.case:hover .case__media>*{filter:none}@media(hover:none){.pcard__media>*,.case__media>*{filter:none}}.pcard .case__meta{margin-bottom:18px}.pcard__title{max-width:14em;margin:0 0 12px;font:400 clamp(25px,2vw,32px) / 1.06 var(--font-display);letter-spacing:-.01em}.pcard__line{max-width:30em;margin:0 0 20px;color:var(--ink-2)}.pcard__more{display:inline-flex;align-items:center;gap:10px;font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);transition:color .25s}.pcard__more:after{content:"→";font-family:var(--font-body);font-size:14px;transition:transform .4s var(--ease-out)}.pcard:hover .pcard__more,.pcard:focus-visible .pcard__more{color:var(--accent)}.pcard:hover .pcard__more:after,.pcard:focus-visible .pcard__more:after{transform:translate(4px)}.media{position:relative;overflow:hidden;container-type:inline-size;background:#ffffff06}.media>img,.media>video,.media>iframe{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border:0}.media:empty{background:radial-gradient(rgb(242 239 233 / .14) 1px,transparent 1.6px) 0 0 / 14px 14px,radial-gradient(circle at 78% 22%,rgb(240 199 94 / .1),transparent 55%),#ffffff05}.media:empty:before{content:attr(data-fig);position:absolute;top:16px;left:18px;font:400 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.media:empty:after{content:attr(data-title);position:absolute;left:16px;right:16px;bottom:.08em;overflow:hidden;font:italic 400 16cqi / 1 var(--font-display);letter-spacing:-.02em;white-space:nowrap;color:#f2efe917}html:has(.project[open]){overflow:hidden}.project{width:min(1180px,calc(100vw - 48px));max-width:none;max-height:calc(100svh - 48px);margin:auto;padding:0;border:1px solid var(--line-strong);background:var(--bg-raised);color:var(--ink);overflow:hidden}.project[open]{display:flex;flex-direction:column;animation:sheet-in .7s var(--ease-out)}.project::backdrop{background:#0c0c11bd;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.project[open]::backdrop{animation:fade-in .4s ease-out}.project[open].is-closing{animation:sheet-out .28s ease-in forwards}.project[open].is-closing::backdrop{animation:fade-out .28s ease-in forwards}@keyframes sheet-in{0%{opacity:0;transform:translateY(36px) scale(.985)}}@keyframes sheet-out{to{opacity:0;transform:translateY(18px)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.project__bar{display:flex;flex:none;justify-content:space-between;align-items:center;gap:16px;padding:12px clamp(24px,4vw,56px);border-bottom:1px solid var(--line);font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.project__close{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:999px;background:none;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;transition:background-color .25s,color .25s,border-color .25s}.project__close svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}.project__close:hover,.project__close:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--bg)}.project__sheet{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px clamp(28px,4vw,56px);padding:clamp(28px,3vw,40px) clamp(24px,4vw,56px) clamp(32px,3.4vw,48px);overflow-y:auto;overscroll-behavior:contain}.project__head{align-self:end}.project__head .case__meta{margin-bottom:22px}.project__title{margin:0 0 18px;font:400 clamp(42px,4.8vw,76px) / 1 var(--font-display);letter-spacing:-.015em}.project__lede{max-width:32em;margin:0;font-size:clamp(16px,1.25vw,19px);line-height:1.55;color:var(--ink-2)}.project__media{align-self:start;height:0;margin:0;padding-top:58%;border:1px solid var(--line)}.project__media--duo{grid-column:1 / -1;padding-top:40.1%}.project__media--duo>img{width:calc(56.3% - 1px)}.project__media--duo>img:last-child{inset:0 0 0 auto;width:calc(43.7% - 1px)}.project__media--video{grid-column:1 / -1;padding-top:56.25%}.project__media--pages{grid-column:1 / -1;padding-top:36.2%}.project__media--pages>img{width:calc(24.35% - 2px)}.project__media--pages>img:nth-child(2){left:24.35%;width:calc(24.85% - 2px)}.project__media--pages>img:nth-child(3){left:49.2%;width:calc(25.4% - 2px)}.project__media--pages>img:nth-child(4){left:auto;right:0;width:25.4%}.project__facts{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 32px;margin:0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project__facts dt{margin-bottom:8px;font:400 10.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.project__facts dd{margin:0;font-size:14.5px;line-height:1.45}.project__boxes{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px clamp(24px,3vw,44px);counter-reset:box}.box{counter-increment:box}.box h3{display:flex;align-items:baseline;gap:12px;margin:0 0 10px;font:400 clamp(22px,1.9vw,28px) / 1.15 var(--font-display);letter-spacing:-.005em}.box h3:before{content:counter(box,decimal-leading-zero);flex:none;font:400 11px/1 var(--font-mono);letter-spacing:.14em;color:var(--ink-3)}.box p,.box ul{margin:0;font-size:15px;line-height:1.6;color:var(--ink-2)}.box ul{padding:0;list-style:none}.box li{position:relative;padding-left:18px}.box li+li{margin-top:4px}.box li:before{content:"";position:absolute;left:0;top:.8em;width:8px;height:1px;background:var(--accent)}.box code{font:400 .9em var(--font-mono);color:var(--ink)}.project__takeaway{align-self:center;margin:0;padding-left:22px;border-left:1px solid var(--accent);font:italic 400 clamp(21px,1.7vw,25px) / 1.25 var(--font-display);color:var(--ink)}.project[open] :is(.box,.project__takeaway){animation:reveal .9s var(--ease-out) both}.project[open] :is(.box,.project__takeaway):nth-child(2){animation-delay:60ms}.project[open] :is(.box,.project__takeaway):nth-child(3){animation-delay:.12s}.project[open] :is(.box,.project__takeaway):nth-child(4){animation-delay:.18s}.project[open] :is(.box,.project__takeaway):nth-child(5){animation-delay:.24s}.project[open] :is(.box,.project__takeaway):nth-child(6){animation-delay:.3s}.clients__rows{--logo: clamp(30px, 3vw, 46px);--pad: clamp(32px, 5vw, 72px);display:grid;gap:12px;border-block:1px solid var(--line);padding-block:12px;overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.clients__row{display:flex;align-items:center;width:max-content;margin:0;padding:0;list-style:none;animation:drift 90s linear infinite}.clients__row--b{animation-direction:reverse;animation-duration:110s;animation-delay:-37s}.clients__row--c{animation-duration:100s;animation-delay:-61s}@keyframes drift{to{transform:translate(-50%)}}.clients__row li{display:grid;place-items:center;height:calc(var(--logo) * 2.4);padding-inline:var(--pad)}.clients__row img{width:calc(var(--logo) * pow(var(--ar),.6));height:auto;opacity:.7;transition:opacity .3s}.clients__row li:hover img{opacity:1}.clients__note{max-width:36em;margin:40px 0 0;color:var(--ink-3)}.offhours .statement{max-width:24em}.interest{position:relative;display:inline-block;color:var(--ink);text-decoration:underline dotted 1px var(--ink-3);text-underline-offset:.2em;cursor:default;outline-offset:6px;transition:color .3s,transform .35s var(--ease-out),text-shadow .35s var(--ease-out)}a.interest{cursor:pointer}.interest:hover,.interest:focus-visible{color:var(--accent);text-decoration-color:transparent}.interest[data-fx=photo]{--c: var(--accent);margin:0 -.12em;padding:0 .12em;background:linear-gradient(var(--c),var(--c)) left top / 0 1.5px,linear-gradient(var(--c),var(--c)) left top / 1.5px 0,linear-gradient(var(--c),var(--c)) right top / 0 1.5px,linear-gradient(var(--c),var(--c)) right top / 1.5px 0,linear-gradient(var(--c),var(--c)) left bottom / 0 1.5px,linear-gradient(var(--c),var(--c)) left bottom / 1.5px 0,linear-gradient(var(--c),var(--c)) right bottom / 0 1.5px,linear-gradient(var(--c),var(--c)) right bottom / 1.5px 0;background-repeat:no-repeat;transition:color .3s,background-size .35s var(--ease-out)}.interest[data-fx=photo]:hover,.interest[data-fx=photo]:focus-visible{background-size:.4em 1.5px,1.5px .4em,.4em 1.5px,1.5px .4em,.4em 1.5px,1.5px .4em,.4em 1.5px,1.5px .4em}.interest[data-fx=photo]:after{content:"";position:absolute;inset:0;background:var(--ink);opacity:0;pointer-events:none}.interest[data-fx=photo]:hover:after,.interest[data-fx=photo]:focus-visible:after{animation:flash .5s ease-out}@keyframes flash{0%{opacity:.85}to{opacity:0}}.interest[data-fx=rally]:hover,.interest[data-fx=rally]:focus-visible{transform:translate(.2em) skew(-14deg);text-shadow:-.12em 0 rgb(240 199 94 / .45),-.26em 0 rgb(240 199 94 / .25),-.42em 0 rgb(240 199 94 / .1)}.interest[data-fx=signs]{white-space:nowrap}.interest[data-fx=signs] .slot{display:inline-block;text-align:center;text-decoration:inherit}.interest[data-fx=signs] .slot.is-sign{font-size:.72em;line-height:1}.interest[data-fx=chain]{display:inline}.interest[data-fx=chain] .block,.interest[data-fx=chain] .gap{text-decoration:inherit}.interest[data-fx=chain] .block{display:inline-block;border:1px solid transparent;transition:border-color .2s,transform .4s var(--ease-out);transition-delay:calc(var(--i) * 22ms)}.interest[data-fx=chain]:hover .block,.interest[data-fx=chain]:focus-visible .block{border-color:#f0c75e99;transform:translateY(-.04em)}.interest[data-fx=chain]:before{content:attr(data-hash);position:absolute;left:0;bottom:-1.3em;font:400 12px/1 var(--font-mono);letter-spacing:.1em;color:var(--accent);opacity:0;transition:opacity .3s .35s}.interest[data-fx=chain]:hover:before,.interest[data-fx=chain]:focus-visible:before{opacity:1}.contact{padding:26vh var(--gutter) 40px}.contact__title{margin:8vh 0 7vh;font:400 clamp(61.4px,11.8vw,212.4px) / .94 var(--font-display);letter-spacing:-.02em}.contact__title em{font-style:normal;color:var(--accent)}.contact__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.cta--lg{padding:26px 40px;font-size:19px}.copy{display:inline-flex;align-items:center;gap:18px;padding:24px 30px;border:1px solid var(--line-strong);border-radius:999px;background:none;color:var(--ink);font:400 15px/1 var(--font-mono);cursor:pointer;transition:border-color .25s}.copy:hover,.copy:focus-visible{border-color:var(--ink)}.copy__hint{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);transition:color .25s}.copy.is-copied{border-color:var(--accent)}.copy.is-copied .copy__hint{color:var(--accent)}.contact-menu{width:min(280px,calc(100vw - 24px));margin:0;inset:auto;padding:6px;border:1px solid var(--line-strong);border-radius:20px;background:var(--bg-raised);color:var(--ink);box-shadow:0 24px 60px #00000073;opacity:0;transform:translateY(var(--rise, 6px));transition:opacity .2s,transform .3s var(--ease-out),overlay .3s allow-discrete,display .3s allow-discrete}.contact-menu:popover-open{opacity:1;transform:none}@starting-style{.contact-menu:popover-open{opacity:0;transform:translateY(var(--rise, 6px))}}.contact-menu__item{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:14px 16px;border:0;border-radius:14px;background:none;color:inherit;font:400 15px/1.2 var(--font-body);text-align:left;text-decoration:none;cursor:pointer;transition:background-color .2s}.contact-menu__item[hidden]{display:none}.contact-menu__item:hover,.contact-menu__item:focus-visible{background:#f2efe914}.contact-menu__hint{font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);transition:color .25s}.contact-menu__item:hover .contact-menu__hint,.contact-menu__item:focus-visible .contact-menu__hint,.contact-menu__item.is-copied .contact-menu__hint{color:var(--accent)}@media(prefers-reduced-motion:reduce){.contact-menu{transition:none;transform:none}}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:22vh;padding-top:24px;border-top:1px solid var(--line);font:400 12px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.footer p{margin:0}@media(max-width:820px){.hero{display:flex;flex-direction:column;justify-content:flex-end}.hero__portrait{position:relative;right:auto;width:min(100%,56svh);margin:0 auto -10%}.hero__caption{position:relative;top:auto;right:auto;display:flex;gap:14px;margin-bottom:22px}.hero__copy{max-width:none;padding-bottom:9svh}.hero__scroll{display:none}.method__pin{grid-template-columns:minmax(0,1fr)}.method__stage{top:0;grid-area:1 / 1;height:52svh}.method__steps{grid-area:1 / 1}.method__step{align-content:end;gap:16px;min-height:86svh;padding-bottom:12svh;opacity:calc(var(--focus, 1) * 1.5 - .5)}.method__progress{display:none}.language__body,.cases{grid-template-columns:minmax(0,1fr)}.toolkit__list{grid-auto-columns:74vw;gap:0 20px}.clients__rows{--logo: 26px;--pad: 28px}.projects,.cases--compact{grid-template-columns:minmax(0,1fr)}.project{width:100vw;max-height:100svh;height:100svh;border:0}.project__sheet,.project__boxes{grid-template-columns:minmax(0,1fr)}.project__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:821px)and (max-width:1100px){.cases--compact,.projects,.project__boxes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(hover:none){.toolkit__nav{display:none}}@media(prefers-reduced-motion:reduce){.reveal,.is-ready .reveal{opacity:1;animation:none}.hero__scroll:after{animation:none}.clients__rows{overflow-x:auto;scrollbar-width:none}.clients__row,.side__also[open] .cases{animation:none}.project[open],.project[open]::backdrop,.project[open] :is(.box,.project__takeaway){animation:none}}.project__screens{--shot: clamp(104px, 12.5vw, 146px);--gap: 10px;grid-column:1 / -1;display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-auto-columns:var(--shot);gap:var(--gap);margin:0;padding:0 48px 14px 0;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;cursor:grab;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent)}.project__screens.is-dragging{cursor:grabbing;scroll-snap-type:none;-webkit-user-select:none;user-select:none}.project__screens li:nth-child(2n){translate:calc((var(--shot) + var(--gap)) / 2) 0}.project__screens li{scroll-snap-align:start;border:1px solid var(--line);background:#000;line-height:0}.project__screens img{width:100%;height:auto;-webkit-user-drag:none}
