@font-face{font-family:DelcanMono;src:url(/fonts/DelcanMono-Regular0.5.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:FKGroteskMono;src:url(/fonts/FKGroteskMono-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:SunOilCo;src:url(/fonts/SunOilCo-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:BlackMountain;src:url(/fonts/blackmountaintest1-REGULAR_Accents.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .5s ease}button{font-family:inherit}.hero-title{opacity:0;transform:translateY(30px);animation:heroEntrance 1s cubic-bezier(.16,1,.3,1) .2s forwards}@keyframes heroEntrance{to{opacity:1;transform:translateY(0)}}.homepage-project .project-image-wrapper{overflow:hidden}.homepage-project .project-image{transition:transform .7s cubic-bezier(.16,1,.3,1)!important}.homepage-project:hover .project-image{transform:scale(1.03)}.homepage-project .project-overlay{transition:opacity .4s ease!important}.homepage-project:hover .project-overlay{opacity:1!important}.projects-reveal{animation:projectsReveal .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes projectsReveal{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.projects-reveal .homepage-project{opacity:0;transform:translateY(40px);animation:projectEntrance .8s cubic-bezier(.16,1,.3,1) forwards}.projects-reveal .homepage-project:nth-child(2){animation-delay:.15s}.projects-reveal .homepage-project:nth-child(3){animation-delay:.3s}.projects-reveal .homepage-project:nth-child(4){animation-delay:.45s}.projects-reveal .homepage-project:nth-child(5){animation-delay:.6s}.projects-reveal .homepage-project:nth-child(6){animation-delay:.75s}.projects-reveal .homepage-project:nth-child(7){animation-delay:.9s}.projects-reveal .homepage-project:nth-child(8){animation-delay:1.05s}@keyframes projectEntrance{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.work-spinner{animation:spin .8s linear infinite}.wf-strip{scrollbar-width:none;-ms-overflow-style:none}.wf-strip::-webkit-scrollbar{display:none}.ea-masonry{column-count:4;column-gap:14px}@media(max-width:1180px){.ea-masonry{column-count:3}}@media(max-width:760px){.ea-masonry{column-count:2;column-gap:10px}}.ea-cell{position:relative;display:block;width:100%;margin:0 0 14px;break-inside:avoid;cursor:zoom-in;box-sizing:border-box;transition:transform .35s cubic-bezier(.16,1,.3,1)}@media(max-width:760px){.ea-cell{margin-bottom:10px}}.ea-cell:hover{transform:translateY(-2px)}.ea-cell img{border-radius:4px}@media(prefers-reduced-motion:reduce){.ea-cell,.ea-cell img{transition:none!important}}.vg-cell{transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}.vg-cell:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000002e}@keyframes inviteIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes modalFadeIn{0%{background-color:#0000}to{background-color:#000000d9}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lab-dropdown-item:hover{background-color:#f0efeb!important}html{scroll-behavior:smooth}::selection{background-color:#1a1a1a;color:#fafaf8}.homepage::-webkit-scrollbar{width:6px}.homepage::-webkit-scrollbar-track{background:transparent}.homepage::-webkit-scrollbar-thumb{background:#e8e6e1;border-radius:3px}.homepage::-webkit-scrollbar-thumb:hover{background:#ccc}.modal-content::-webkit-scrollbar{width:4px}.modal-content::-webkit-scrollbar-track{background:transparent}.modal-content::-webkit-scrollbar-thumb{background:#e8e6e1;border-radius:2px}body.dark-mode .lab-dropdown-item:hover{background-color:#2a2a2a!important}body.dark-mode .homepage::-webkit-scrollbar-thumb{background:#ffffff1a}body.dark-mode .homepage::-webkit-scrollbar-thumb:hover{background:#fff3}body.dark-mode .modal-content::-webkit-scrollbar-thumb{background:#ffffff1a}body.dark-mode ::selection{background-color:#ffffff26;color:#e8e6e1}.store-snap{height:100vh;height:100dvh;overflow-y:scroll;overflow-x:hidden;overflow-anchor:none;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none}.store-snap::-webkit-scrollbar{display:none}.store-slide{scroll-snap-align:start;height:100vh;height:100dvh}:root{--settle: cubic-bezier(.22, 1, .36, 1);--move: cubic-bezier(.16, 1, .3, 1);--store-t1: .22s;--store-t2: .38s;--store-t3: .56s;--store-t4: .9s;--store-arrive: 1.1s;--store-stagger: 60ms}@media(prefers-reduced-motion:reduce){:root{--store-t1: 0ms;--store-t2: 0ms;--store-t3: 0ms;--store-t4: 0ms;--store-arrive: 0ms;--store-stagger: 0ms}}@keyframes storeSettle{0%{opacity:0;transform:scale(1.035)}to{opacity:1;transform:none}}@keyframes storeChromeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.store-media{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.store-media.arrived{animation:storeSettle var(--store-arrive) var(--settle) both}.store-chrome{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0}.store-chrome>*{pointer-events:auto}.store-chrome.arrived{animation:storeChromeIn var(--store-t3) var(--settle) var(--store-t2) both}.store-in{opacity:0;animation:storeChromeIn var(--store-t3) var(--settle) var(--store-t2) both}.store-roll{display:inline-flex;vertical-align:top}.store-roll .col{display:inline-block;height:1em;overflow:hidden;line-height:1}.store-roll .strip{display:block;transition:transform var(--store-t2) var(--move);will-change:transform}.store-roll .strip span{display:block;height:1em;line-height:1}.store-buy{box-shadow:0 3px 16px #0003;transition:transform var(--store-t1) var(--settle),box-shadow var(--store-t1) var(--settle)}.store-buy .arr{display:inline-block;transition:transform var(--store-t1) var(--settle)}.store-buy .div{display:inline-block;width:1px;height:var(--divh-base, 10px);transition:height var(--store-t1) var(--settle)}.store-buy:hover{transform:translateY(-1px);box-shadow:0 5px 20px #00000042}.store-buy:hover .arr{transform:translate(2px,-2px)}.store-buy:hover .div{height:var(--divh, 16px)}.store-buy:active{transform:translateY(0) scale(.965);box-shadow:0 2px 10px #0000002e}.store-ring{position:absolute;left:0;top:0;width:32px;height:32px;margin:-16px 0 0 -16px;border-radius:50%;border:1px solid rgba(0,0,0,.55);background:#f5f0eb6b;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:9;opacity:0;transition:opacity .16s ease,width var(--store-t1) var(--settle),height var(--store-t1) var(--settle),margin var(--store-t1) var(--settle);will-change:transform}.store-ring.on{opacity:1}.store-ring.edge{width:40px;height:40px;margin:-20px 0 0 -20px}.store-ring.dark{border-color:#fff9;background:#00000047}.store-ring .g{font-family:FKGroteskMono,SF Mono,ui-monospace,monospace;font-size:13px;line-height:1;color:#000000bf}.store-ring.dark .g{color:#ffffffe6}.store-ring.pop .g{animation:storePop var(--store-t1) var(--settle)}@keyframes storePop{0%{transform:scale(.6)}to{transform:none}}.store-paper{position:relative;isolation:isolate}.store-grain{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.16;mix-blend-mode:multiply;background-size:220px 220px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.store-rule{position:absolute;left:0;right:0;top:0;height:1px;background:#00000024;transform:scaleX(0);transform-origin:left;transition:transform var(--store-t4) var(--move)}.store-draw.in .store-rule{transform:scaleX(1)}.store-draw .store-cap{opacity:0;transform:translateY(4px);transition:opacity var(--store-t3) var(--settle),transform var(--store-t3) var(--settle)}.store-draw.in .store-cap{opacity:1;transform:none}.store-draw.in .store-row>*{transition-delay:calc(var(--i, 0) * var(--store-stagger))}.store-nav{position:relative}.store-nav-ind{position:absolute;top:3px;bottom:3px;left:0;width:0;border-radius:13px;background:#1a1a1a;z-index:0;opacity:0;transition:left var(--store-t2) var(--move),width var(--store-t2) var(--move),opacity var(--store-t1) var(--settle)}.store-nav-ind.snap{transition:none}.store-nav>a,.store-nav>span{position:relative;z-index:1}.store-see{transition:transform var(--store-t1) var(--settle)}.store-see .arr{display:inline-block;transition:transform var(--store-t1) var(--settle)}.store-see:hover .arr{transform:translate(3px)}.store-see:active{transform:scale(.965)}.store-plus{display:inline-block;transition:transform var(--store-t1) var(--settle),color var(--store-t1) var(--settle)}.store-plus.open{transform:rotate(45deg)}.store-ruler{position:fixed;right:16px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:5px;align-items:flex-end;z-index:30;margin:0;padding:0}.store-ruler .tick{position:relative;width:22px;height:9px;display:flex;align-items:center;justify-content:flex-end;padding:0;background:none;border:0;cursor:pointer}.store-ruler .tick i{display:block;height:1px;width:9px;background:#fff;mix-blend-mode:difference;opacity:.55;transition:width var(--store-t2) var(--move),opacity var(--store-t2) var(--settle)}.store-ruler .tick:hover i{width:16px;opacity:.9}.store-ruler .tick.on i{width:22px;height:1.5px;opacity:1}.store-ruler .tick .lab{position:absolute;right:30px;top:50%;transform:translateY(-50%);font-size:9px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:#000000b3;background:#f5f0ebe6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:4px 8px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity var(--store-t1) var(--settle)}.store-ruler .tick:hover .lab,.store-ruler .tick:focus-visible .lab{opacity:1}@media(max-height:560px){.store-ruler{display:none}}
