:root{--bg:#fbfaf9;--bg-dark:#0b0a09;--ink:#141414;--ink-2:#6b6762;--ink-3:#8c877f;--line:#e7e3dd;--blue:#0557fc;--blue-on-dark:#3d82ff;--green:#2db55d;--radius-card:10px;--shadow-card:0 2px 6px #4036290f, 0 24px 56px -20px #40362929;--shadow-card-hover:0 4px 10px #40362914, 0 32px 64px -20px #40362938;--shadow-pill:0 1px 0 #ffffffe6 inset, 0 2px 4px #0000000a, 0 8px 16px #0000000d, 0 16px 40px #00000012;--font:"PP Neue Montreal", system-ui, -apple-system, "Segoe UI", sans-serif;--container:1440px;--margin:calc(64 / 1440 * min(100vw, 1440px));--edge:calc((100vw - min(100vw, 1440px)) / 2 + var(--margin));--gutter:24px;--col:218.667px;--w1:195px;--w2:413px;--w3:632px;--w4:851px;--w5:1070px;--w6:1312px;--x1:64px;--x2:282.667px;--x3:501.333px;--x4:720px;--x5:938.667px;--x6:1157.33px;--x7:1376px;--ease-out:cubic-bezier(.25, 1, .5, 1)}@media (width<=767px){:root{--container:390px;--margin:calc(20 / 390 * 100vw);--gutter:24px}}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:auto;font-size:17px;line-height:1.5}html.lenis,html.lenis body{height:auto}html{transition:background-color .45s}html.nav-on-dark{background-color:#0b0a09}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}html{scrollbar-gutter:stable}body{background:0 0;min-height:100vh;margin:0;overflow-x:clip}html.has-cursor,html.has-cursor a,html.has-cursor button{cursor:none}h1,h2,h3,h4,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:0 0;border:0;padding:0}img,picture,canvas,svg{max-width:100%;display:block}img{height:auto}.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}.stage{width:min(100%, var(--container));margin-inline:auto;position:relative}.stage--bleed{width:var(--container);left:50%;transform:translate(-50%)}.container{width:min(100%, var(--container));padding-inline:var(--margin);margin-inline:auto;position:relative}.container--flush{padding-inline:0}.t-hero{letter-spacing:0;font-size:44px;font-weight:500;line-height:1.04}.t-h-work{letter-spacing:-.025em;font-size:52px;font-weight:500;line-height:1}.t-stat{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:48px;font-weight:500;line-height:1.1}.t-about{letter-spacing:-.02em;font-size:36px;font-weight:500;line-height:1.18}.t-area{letter-spacing:-.015em;font-size:26px;font-weight:500;line-height:1.2}.t-body{font-size:17px;font-weight:400;line-height:1.5}.t-body-m{font-size:17px;font-weight:500;line-height:1.5}.t-meta{font-size:13px;font-weight:400;line-height:1.3}.t-meta-15{font-size:15px;font-weight:400;line-height:1.3}.t-nav{font-size:14px;font-weight:500;line-height:1}@media (width<=767px){.t-hero,.t-h-work{font-size:32px}.t-about{font-size:28px;line-height:1.18}.t-area{font-size:22px}}.btn{background:var(--blue);color:#fff;white-space:nowrap;height:32px;transition:background .2s var(--ease-out), transform .25s var(--ease-out), box-shadow .25s var(--ease-out);border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:500;line-height:1;display:inline-flex}@media (hover:hover){.btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px #0557fc73}}.btn--lg{height:48px;padding:0 24px;font-size:15px}.link-arrow{white-space:nowrap;transition:color .2s var(--ease-out);align-items:center;gap:8px;display:inline-flex}.link-arrow .arrow{transition:transform .25s var(--ease-out);display:inline-block}.link-arrow .la{transition:background-size .3s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/0% 1px no-repeat;padding-bottom:2px}@media (hover:hover){a.link-arrow:hover,a:hover .link-arrow{color:var(--link-hover,var(--blue))}.link-arrow:hover .la,a:hover .link-arrow .la{background-size:100% 1px}.link-arrow:hover .arrow,a:hover .link-arrow .arrow{transform:translate(4px)}.link-arrow:hover .arrow--back{transform:translate(-4px)}.link-arrow:hover .arrow--up{transform:translateY(-4px)}.link-arrow:hover .arrow--ext{transform:translate(3px,-3px)}}.pill{backdrop-filter:blur(16px)saturate(1.7);height:46px;box-shadow:var(--shadow-pill), inset 0 1px 0 #ffffffd9;white-space:nowrap;background:linear-gradient(135deg,#ffffff9e,#ffffff6b);border:1px solid #ffffff8c;border-radius:999px;align-items:center;padding:0 18px;font-size:14px;font-weight:500;display:inline-flex}@supports not (backdrop-filter:blur(1px)){.pill{background:#fffffff5}}.cover{border-radius:var(--radius-card);box-shadow:var(--shadow-card);aspect-ratio:5/4;background:#ece8e2;position:relative;overflow:hidden}.cover img{object-fit:cover;width:100%;height:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}::selection{background:#0557fc2e}.lattice{z-index:0;pointer-events:none;width:min(100vw, var(--container));position:fixed;inset:0 0 0 50%;transform:translate(-50%)}.lattice svg{width:100%;height:100%}@media (width<=767px){.lattice{width:100vw}}.lattice__v,.lattice__h{stroke:var(--ink);stroke-opacity:.028;stroke-width:1px}.lattice__plus{stroke:var(--ink);stroke-opacity:.09;stroke-width:1px}[data-theme-dark] .lattice__v,[data-theme-dark] .lattice__h{stroke:#fff;stroke-opacity:.028}html[data-theme=dark]{--link-hover:var(--blue-on-dark);--bg:#0b0a09;--ink:#f2f0ec;--ink-2:#f2f0eca8;--ink-3:#f2f0ec70;--line:#ffffff1f;--shadow-card:0 2px 6px #00000059, 0 28px 60px -20px #000000b3;color-scheme:dark}html[data-theme=dark] .lattice__v,html[data-theme=dark] .lattice__h,html[data-theme=dark] .lattice__plus{stroke:#fff}[data-theme-dark] .lattice__plus{stroke:#fff;stroke-opacity:.09}.corner{z-index:40;flex-direction:column;justify-content:center;height:108px;display:flex;position:absolute;top:0}.corner--tl{left:var(--edge)}.corner--tr{right:var(--edge);text-align:right}.corner__name{font-size:14px;font-weight:500}.corner__role{color:var(--ink-2);margin-top:2px;font-size:12px}.corner__now{color:var(--ink-3);justify-content:flex-end;align-items:center;gap:5px;font-size:13px;display:flex}.corner__open{color:var(--ink);justify-content:flex-end;align-items:center;gap:7px;margin-top:6px;font-size:13px;display:flex}.corner__open .dot-green{order:-1}.dot-green{background:var(--green);border-radius:999px;flex:0 0 8px;width:8px;height:8px;animation:2.4s ease-in-out infinite dot-breathe;position:relative;box-shadow:0 0 5px #2db55d73}.dot-green:before,.dot-green:after{content:"";border:1.5px solid var(--green);border-radius:999px;animation:2.4s ease-out infinite dot-ring;position:absolute;inset:0}.dot-green:after{animation-delay:1.2s}@keyframes dot-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes dot-ring{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(3.4)}}@media (prefers-reduced-motion:reduce){.dot-green,.dot-green:before,.dot-green:after{animation:none}.dot-green:before,.dot-green:after{display:none}}.navpill{z-index:1000;height:45px;color:var(--ink-on-glass,#141414);backdrop-filter:blur(16px)saturate(1.7);transition:transform .3s var(--ease-out), color .45s ease, border-color .45s ease, box-shadow .45s ease, backdrop-filter .45s ease, -webkit-backdrop-filter .45s ease;background:0 0;border:1px solid #ffffff8c;border-radius:999px;align-items:center;gap:20px;padding:0 8px 0 20px;display:flex;position:fixed;top:32px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffffe6,0 2px 4px #0000000a,0 8px 16px #0000000d,0 16px 40px #00000012,inset 0 1px #ffffffd9,inset 0 -1px 1px #786e5f1a}.navpill:before,.navpill:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;transition:opacity .45s;position:absolute;inset:0}.navpill:before{background:linear-gradient(135deg,#ffffff9e,#ffffff6b)}.navpill:after{opacity:0;background:linear-gradient(135deg,#ffffff26,#ffffff0a 55%,#ffffff14)}html[data-theme=dark] .navpill,html.nav-on-dark .navpill{color:#f4f2ee;backdrop-filter:blur(12px)saturate(2.2)brightness(1.15);border-color:#fff3;box-shadow:inset 0 1px #ffffff4d,0 2px 4px #0003,0 8px 16px #00000047,0 16px 40px #00000061,inset 0 1px #ffffff2e,inset 0 -1px 1px #ffffff0f}html[data-theme=dark] .navpill:before,html.nav-on-dark .navpill:before{opacity:0}html[data-theme=dark] .navpill:after,html.nav-on-dark .navpill:after{opacity:1;background:linear-gradient(135deg,#ffffff26,#ffffff0a 55%,#ffffff14),#100f0e73}@media (hover:hover){html[data-theme=dark] .navpill:has(a:not(.btn):hover) a:not(.btn):not(:hover),html.nav-on-dark .navpill:has(a:not(.btn):hover) a:not(.btn):not(:hover){color:#f4f2ee6b}}html[data-theme=dark] .navpill a:not(.btn),html.nav-on-dark .navpill a:not(.btn){text-shadow:0 1px 2px #00000073}@supports not (backdrop-filter:blur(1px)){.navpill:before{background:#fffffff5}.navpill:after{background:#181614f5}}.navpill.is-hidden{transform:translate(-50%,-80px)}.navpill a{font-size:14px;font-weight:500}.navpill a:not(.btn){transition:color .2s var(--ease-out)}@media (hover:hover){.navpill:has(a:not(.btn):hover) a:not(.btn):not(:hover){color:var(--ink-3)}}.sidepill{z-index:1000;box-shadow:var(--shadow-pill), inset 0 1px 0 #ffffffd9, 0 10px 28px #0000, inset 0 0 0 999px #fff0;transition:box-shadow .2s var(--ease-out);position:fixed;top:32px}@media (hover:hover){.sidepill:hover{box-shadow:var(--shadow-pill), inset 0 1px 0 #ffffffd9, 0 10px 28px #0000001f, inset 0 0 0 999px #ffffffbf}}html[data-theme=dark] .sidepill{color:#f4f2ee;text-shadow:0 1px 2px #00000073;backdrop-filter:blur(12px)saturate(2.2)brightness(1.15);background:linear-gradient(135deg,#ffffff26,#ffffff0a 55%,#ffffff14);border-color:#fff3;box-shadow:0 8px 24px #00000061,inset 0 1px #ffffff4d,0 10px 28px #0000,inset 0 0 0 999px #fff0}@media (hover:hover){html[data-theme=dark] .sidepill:hover{box-shadow:0 8px 24px #00000061,inset 0 1px #ffffff4d,0 10px 28px #0000004d,inset 0 0 0 999px #ffffff1a}}@supports not (backdrop-filter:blur(1px)){html[data-theme=dark] .sidepill{background:#181614f5}}.sidepill .arrow{transition:transform .25s var(--ease-out);display:inline-block}@media (hover:hover){.sidepill--left:hover .arrow{transform:translate(-3px)}.sidepill--right:hover .arrow{transform:translate(3px)}}.sidepill--left{left:var(--edge)}.sidepill--right{right:var(--edge)}@media (width<=767px){.navpill{top:auto;bottom:calc(24px + env(safe-area-inset-bottom,0px));left:var(--margin);right:var(--margin);justify-content:space-between;gap:0;height:52px;padding:0 6px 0 20px;transform:none}.navpill.is-hidden{transform:none}.navpill a{font-size:16px}.navpill .btn{height:40px;padding:0 16px;font-size:16px}.corner--tr{display:none}.sidepill{top:calc(16px + env(safe-area-inset-top,0px));bottom:auto}}@media (width<=359px){.navpill{padding-left:16px}.navpill a{font-size:15px}.navpill .btn{padding:0 12px;font-size:15px}}.cursor-dot{z-index:9998;pointer-events:none;background:var(--blue);width:8px;height:8px;animation:cursor-dot .9s var(--ease-out) forwards;border-radius:999px;margin:-4px 0 0 -4px;position:fixed}@keyframes cursor-dot{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(1.6)}}canvas.dot{width:100%;height:100%;display:block}.bg-fill{z-index:-1;background:var(--bg);position:fixed;inset:0}.bg-dark{z-index:-1;pointer-events:none;background:var(--bg-dark);clip-path:ellipse(130% 0% at 50% 100%);will-change:clip-path;position:fixed;inset:0}.lattice.is-dark .lattice__v,.lattice.is-dark .lattice__h{stroke:#fff;stroke-opacity:.028}.lattice.is-dark .lattice__plus{stroke:#fff;stroke-opacity:.09}html,body{overscroll-behavior-x:none}.hero__sphere{touch-action:pan-y}.ring-scene{width:1px;height:1px;transform-style:preserve-3d;will-change:transform;position:relative}.ring-ring{transform-style:preserve-3d;will-change:transform;position:absolute}.ring-card{box-shadow:var(--shadow-card);transform-style:preserve-3d;border-radius:10px;position:absolute;overflow:hidden}.ring-art{position:absolute;inset:0}.ring-art img{object-fit:cover;width:100%;height:100%;display:block}.ring-glow{pointer-events:none;background:linear-gradient(#0000 46%,#0a0e1238);position:absolute;inset:0}html.has-cursor,html.has-cursor *{cursor:none!important}img{-webkit-user-drag:none;-khtml-user-drag:none;user-select:none}.ring-card,.work__slide,.hero__sphere{-webkit-user-select:none;user-select:none}.lattice[data-astro-cid-miaxyeyj]{height:100vh;overflow:hidden}.lattice[data-astro-cid-miaxyeyj] svg[data-astro-cid-miaxyeyj]{width:100%;height:auto}.lattice__m[data-astro-cid-miaxyeyj]{display:none}@media (width<=767px){.lattice__d[data-astro-cid-miaxyeyj]{display:none}.lattice__m[data-astro-cid-miaxyeyj]{display:block}}.page{z-index:1;transition:opacity .25s;position:relative}html.pl-loading:not(.pl-done) .page{opacity:0}html.pl-loading:not(.pl-gridsettle) .lattice__v,html.pl-loading:not(.pl-gridsettle) .lattice__h,html.pl-loading:not(.pl-gridsettle) .lattice__plus{stroke-opacity:.11}.lattice__v,.lattice__h,.lattice__plus{transition:stroke .55s,stroke-opacity 1.1s}
