:root{--bg:#0e0e0d;--ink:#f2f0ea;--mute:#f2f0ea94;--faint:#f2f0ea24;--card:#191917;--dot:#ff6a38;--pad:clamp(16px, 2.6vw, 40px);--ease:cubic-bezier(.16, 1, .3, 1);--curtain:cubic-bezier(.76, 0, .24, 1);--display:"Bricolage Grotesque", "Bricolage", system-ui, sans-serif;--text:"Inter", "InterV", system-ui, sans-serif}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);font:400 16px/1.55 var(--text);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}html.intro-on body,html.lb-on body{overflow:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--dot);color:var(--bg)}.bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bg i{background:radial-gradient(closest-side,#f2f0ea12,#f2f0ea06 45%,#f2f0ea00 100%);border-radius:50%;width:120vmax;height:120vmax;margin:-60vmax 0 0 -60vmax;position:absolute;top:50%;left:50%}.bg i:first-child{animation:46s ease-in-out infinite alternate drift1}.bg i+i{opacity:.8;width:90vmax;height:90vmax;margin:-45vmax 0 0 -45vmax;animation:63s ease-in-out infinite alternate drift2}.bg:after{content:"";opacity:.07;background:url(/build/grain-IhFEA-JG.png) 0 0/256px;position:absolute;inset:0}@keyframes drift1{0%{transform:translate(-34vw,-26vh)scale(1)}to{transform:translate(30vw,22vh)scale(1.15)}}@keyframes drift2{0%{transform:translate(38vw,30vh)scale(1.1)}to{transform:translate(-28vw,-18vh)scale(.9)}}main,.foot{z-index:1;position:relative}#intro{z-index:50;background:var(--bg);clip-path:inset(0);position:fixed;inset:0}canvas.stage{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s ease, transform 1.2s var(--curtain);display:block;position:absolute;inset:0}canvas.stage.on{opacity:1}html.revealed #intro{clip-path:inset(0 0 100%);transition:clip-path 1.1s var(--curtain);pointer-events:none}html.revealed canvas.stage{transform:translateY(-14vh)}html.skip-intro #intro{display:none}.top{z-index:20;padding:20px var(--pad);pointer-events:none;justify-content:space-between;align-items:baseline;display:flex;position:fixed;top:0;left:0;right:0}.top>*{pointer-events:auto}.top{transition:transform .5s var(--ease)}.top.hide{transform:translateY(-110%)}.logo{font:650 22px/1 var(--display);letter-spacing:-.02em}.logo .dot{color:var(--dot)}.top nav{color:var(--mute);gap:22px;font-size:14px;display:flex}.top nav a{transition:color .2s}.top nav a:hover{color:var(--ink)}.lead{padding:clamp(84px, 13vh, 170px) var(--pad) 0}.lead h1{font:650 clamp(34px, min(4.6vw, 8.2vh), 84px)/.98 var(--display);letter-spacing:-.035em;margin:0}.lead .line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.lead .line>span{display:block;transform:translateY(105%)}.lead .who{color:var(--mute);opacity:0;margin:clamp(12px,2.2vh,22px) 0 0}html.revealed .lead .line>span{transition:transform 1.1s var(--ease) .45s;transform:none}html.revealed .lead .line+.line>span{transition-delay:.55s}html.revealed .lead .who{opacity:1;transition:opacity .8s .9s}.reel{margin-top:clamp(24px,5vh,80px);overflow:clip}.strip{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;width:100%;position:relative}.strip.grab{cursor:grabbing}.card{background:var(--card);-webkit-tap-highlight-color:transparent;border-radius:6px;outline:none;position:absolute;top:0;left:0;overflow:hidden}.card video,.card img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;transition:transform .9s var(--ease);display:block}.card:hover video,.card:hover img{transform:scale(1.025)}.card:focus-visible{box-shadow:0 0 0 2px var(--ink)}.cap{color:var(--ink);opacity:0;transition:opacity .3s ease, transform .4s var(--ease);pointer-events:none;background:linear-gradient(#0e0e0d00,#0e0e0d9e);padding:28px 14px 12px;font-size:13px;line-height:1.3;position:absolute;bottom:0;left:0;right:0;transform:translateY(6px)}.cap b{font-weight:500;display:block}.card:hover .cap,.card:focus-visible .cap{opacity:1;transform:none}@media (hover:none){.cap{opacity:1;padding:22px 10px 9px;font-size:12px;transform:none}}.hint{margin:14px var(--pad) 0;color:var(--mute);opacity:.8;font-size:13px}.about{padding:0 var(--pad);grid-template-columns:minmax(0,1fr);margin-top:clamp(120px,22vh,260px);display:grid;position:relative}.portrait{aspect-ratio:1440/956;width:min(64vw,1100px);margin:0 calc(var(--pad) * -1) 0 0;-webkit-mask-composite:source-in;grid-area:1/1;justify-self:end;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 34%),linear-gradient(#0000 0%,#00000059 12%,#000 30% 74%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 34%),linear-gradient(#0000 0%,#00000059 12%,#000 30% 74%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.portrait img{object-fit:cover;width:100%;height:100%;display:block}.about-text{z-index:1;grid-area:1/1;align-self:end;max-width:min(48vw,640px);padding-bottom:clamp(0px,2vh,24px);position:relative}.about h2{font:650 clamp(36px, 4.4vw, 72px)/1 var(--display);letter-spacing:-.035em;margin:0 0 22px}.about p{color:#f2f0ead9;text-shadow:0 1px 18px #0e0e0d99;max-width:34em;margin:0 0 16px;font-size:clamp(16px,1.15vw,18px)}.services{font:500 clamp(19px, 1.6vw, 24px)/1.5 var(--display);letter-spacing:-.01em;margin:30px 0 0;padding:0;list-style:none}.contact{padding:0 var(--pad);margin:clamp(120px,22vh,260px) 0 clamp(80px,14vh,160px)}.contact .ask{color:var(--mute);margin:0 0 14px}.mail{font:650 clamp(34px, 7vw, 120px)/1 var(--display);letter-spacing:-.04em;background:linear-gradient(var(--dot), var(--dot)) 0 100% / 0 3px no-repeat;transition:background-size .5s var(--ease);overflow-wrap:anywhere;padding-bottom:6px;display:inline-block}.mail:hover{background-size:100% 3px}.foot{padding:22px var(--pad) 28px;color:var(--mute);justify-content:space-between;font-size:13px;display:flex}.lb{z-index:60;position:fixed;inset:0}.lb[hidden]{display:none}.lb-bg{opacity:0;background:#0e0e0df9;transition:opacity .35s;position:absolute;inset:0}.lb.on .lb-bg{opacity:1}.lb-body{padding:clamp(64px, 9vh, 96px) var(--pad) clamp(28px, 5vh, 56px);pointer-events:none;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,4vw,64px);display:grid;position:absolute;inset:0}.lb-body>*{pointer-events:auto}.lb-media{justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.lb-el{background:var(--card);transform-origin:0 0;border-radius:10px;max-width:100%;max-height:100%;display:block;overflow:hidden}video.lb-el,img.lb-el{object-fit:cover}.lb-arrow{z-index:2;width:44px;height:44px;color:var(--ink);cursor:pointer;transition:background .2s, transform .3s var(--ease);background:#0e0e0d99;border:0;border-radius:50%;place-items:center;margin-top:-22px;padding:0;animation:.35s .55s both fsIn;display:grid;position:absolute}.lb-arrow.next{transform:translate(-100%)}.lb-arrow:hover{background:#0e0e0de6}.lb-arrow.prev:hover{transform:translate(-2px)}.lb-arrow.next:hover{transform:translate(calc(2px - 100%))}.lb-arrow svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.lb-arrow:focus{outline:none}.lb-arrow:focus-visible{box-shadow:0 0 0 1.5px var(--ink)}.lb-fs{z-index:2;color:var(--ink);font:500 13px/1 var(--text);white-space:nowrap;cursor:pointer;background:#0e0e0da8;border:0;border-radius:999px;align-items:center;gap:7px;padding:8px 12px 8px 10px;transition:background .2s;display:inline-flex;position:absolute;transform:translate(-100%,-100%)}.lb-fs:hover{background:#0e0e0de6}.lb-fs svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.lb-fs-video{opacity:0;pointer-events:none;width:2px;height:2px;position:absolute;top:0;left:0}:is(.lb-fs-video.on,.lb-fs-video:fullscreen){opacity:1}:is(.lb-el:fullscreen,.lb-fs-video:fullscreen){object-fit:contain;background:#000;border-radius:0;aspect-ratio:auto!important;width:100%!important;height:100%!important}.lb-fs{animation:.35s .55s both fsIn}@keyframes fsIn{0%{opacity:0}to{opacity:1}}.lb-info{opacity:0;transition:opacity .4s ease .15s, transform .6s var(--ease) .15s;align-self:center;transform:translateY(10px)}.lb.on .lb-info{opacity:1;transform:none}.lb-info h3{font:650 clamp(28px, 2.6vw, 40px)/1.02 var(--display);letter-spacing:-.03em;margin:0}.lb-kind{color:var(--mute);margin:10px 0 0;font-size:14px}.lb-desc{color:#f2f0ead9;margin:22px 0 0;font-size:15.5px}.lb-meta{gap:10px;margin:24px 0 0;font-size:14px;display:grid}.lb-meta div{grid-template-columns:84px 1fr;gap:12px;display:grid}.lb-meta dt{color:var(--mute)}.lb-meta dd{margin:0}.lb-thumbs{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.thumb{background:var(--card);cursor:pointer;opacity:.55;outline-offset:2px;border:0;border-radius:4px;height:58px;padding:0;transition:opacity .2s;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb:hover,.thumb.on{opacity:1}.thumb.on{outline:1px solid var(--ink)}.lb-link[hidden]{display:none}.lb-link{font:650 18px/1 var(--display);background:linear-gradient(var(--dot), var(--dot)) 0 100% / 100% 2px no-repeat;margin-top:26px;padding-bottom:5px;display:inline-block}.lb-close{top:18px;right:var(--pad);cursor:pointer;opacity:0;background:0 0;border:0;width:44px;height:44px;transition:opacity .3s .1s;position:absolute}.lb.on .lb-close{opacity:1}.lb-close:focus{outline:none}.lb-close:focus-visible{outline:1px solid var(--mute);outline-offset:2px;border-radius:4px}.lb-close span{background:var(--ink);height:1.5px;position:absolute;top:21px;left:11px;right:11px;transform:rotate(45deg)}.lb-close span+span{transform:rotate(-45deg)}@media (width<=800px){.top{padding-top:16px}.top nav{gap:16px;font-size:13px}.portrait{width:auto;margin:0 calc(var(--pad) * -1);aspect-ratio:4/4.2;-webkit-mask-composite:source-over;justify-self:stretch;-webkit-mask-image:linear-gradient(#0000 0%,#00000059 10%,#000 26% 62%,#0000 100%);mask-image:linear-gradient(#0000 0%,#00000059 10%,#000 26% 62%,#0000 100%);-webkit-mask-composite:source-over;mask-composite:add}.portrait img{object-position:52% 30%}.about-text{grid-area:auto;max-width:none;margin-top:-26vw}.lb-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:auto;padding:0;display:block;overflow-y:auto}.lb-media{height:auto;padding:68px var(--pad) 0;display:block}.lb-el{border-radius:8px;max-height:none;margin:0 auto}.lb-info{padding:26px var(--pad) 48px;transform:none}.lb-info h3{font-size:30px}.lb-desc{margin-top:16px;font-size:15px;line-height:1.6}.lb-meta{margin-top:20px}.lb-meta div{grid-template-columns:72px 1fr}.lb-thumbs{margin:24px calc(var(--pad) * -1) 0;padding:2px var(--pad);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.lb-thumbs::-webkit-scrollbar{display:none}.thumb{flex:none;height:64px}.lb-close{background:#0e0e0db8;border-radius:50%;position:fixed;top:12px;right:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bg i{animation:none!important}.lead .line>span,.lead .who{opacity:1!important;transition:none!important;transform:none!important}}
