:root{--font-sans:"PP Neue Montreal", "Helvetica Neue", Helvetica, Arial, sans-serif;--bg:#050505;--fg:#fff;--fg-soft:#ffffffd9;--panel:#262626;--panel-border:#ffffff1f;--scrim:#0505058c}html[data-theme=light]{--bg:#fff;--fg:#0a0a0a;--fg-soft:#0a0a0ac7;--panel:#f2f2f2;--panel-border:#0a0a0a1f;--scrim:#ffffff80}*,:before,:after{box-sizing:border-box}html{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-weight:400;transition:background-color .4s,color .4s;overflow-x:clip}::selection{background:var(--fg);color:var(--bg)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.preloader{--preloader-item:clamp(120px, 20vh, 240px);z-index:50;background:var(--bg);transition:background-color .4s;position:fixed;inset:0;overflow:hidden}.preloader__list{will-change:transform;width:100%;margin:0;padding:0;list-style:none;position:absolute;top:0;left:0}.preloader__item{height:var(--preloader-item);place-items:center;display:grid}.preloader__name{letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap;color:var(--fg);will-change:transform, opacity, filter;font-size:clamp(2.6rem,5.4vw,7rem);font-weight:500;line-height:1;display:inline-block}.preloader__item--logo .preloader__logo-img{will-change:transform, opacity, filter;width:auto;height:clamp(44px,6.5vh,68px);display:block}.preloader__logo-img,.hero__logo img{view-transition-name:site-logo}::view-transition-old(root),::view-transition-new(root),::view-transition-group(site-logo){animation-duration:.55s;animation-timing-function:cubic-bezier(.65,0,.35,1)}.hero{--hero-bg:var(--bg);--hero-fg:var(--fg);--slot:clamp(150px, 19vh, 300px);--title-size:clamp(3.2rem, 5.9vw, 8.5rem);--title-weight:500;--focus-range:.34;--title-blur-max:13px;--image-blur-max:6px;--title-opacity-min:.42;--image-opacity-min:.5;--flow-rows:1;--image-shift-x:9vw;--title-shift-x:12vw;--title-scale-min:.86;--image-scale-min:.78;--image-scale-peak:1.02;--image-grow-y:2.5;--active-pop-rows:.45;--drag-multiplier:.65;--drag-max-speed:1.8;--fold-max:55;--fold-range:1.05;--fold-depth:60;--fold-perspective:1400px;background:var(--hero-bg);color:var(--hero-fg);-webkit-user-select:none;user-select:none;transition:background-color .4s,color .4s;position:relative}.hero__stage{position:relative}.hero.is-ready .hero__stage{cursor:grab;height:100dvh;position:sticky;top:0;overflow:hidden}.hero.is-ready.is-dragging .hero__stage{cursor:grabbing}.hero__track{gap:8vh;margin:0;padding:10vh 0 12vh;list-style:none;display:grid}.hero.is-ready .hero__track{perspective:var(--fold-perspective);padding:0;display:block;position:absolute;inset:0}.hero__probe{height:var(--slot);visibility:hidden;pointer-events:none;position:absolute}.project{--media-left:var(--m-left);--media-w:var(--m-w);--media-h:var(--m-h);--title-x:var(--t-x);height:var(--slot);position:relative}.hero.is-ready .project{will-change:transform;width:100%;position:absolute;top:0;left:0}.project__inner{width:100%;height:100%;position:relative}.project__link{z-index:1;-webkit-user-drag:none;display:block;position:absolute;inset:0}.project__link:focus-visible{outline:1px solid var(--hero-fg);outline-offset:6px}.project__media{left:var(--media-left);width:var(--media-w);height:var(--media-h);margin-top:calc(var(--media-h) / -2);will-change:transform, opacity, filter;position:absolute;top:50%}.project__image{background-color:var(--project-color);width:100%;height:100%;overflow:hidden}.project__image img{object-fit:cover;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.project__title{left:var(--title-x);font-size:var(--title-size);font-weight:var(--title-weight);letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap;color:var(--hero-fg);margin:0;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.project.is-active .project__title{text-transform:none}.project__title-text{will-change:transform, opacity, filter;display:inline-block}.hero__indicator{background:var(--hero-fg);z-index:2;pointer-events:none;width:clamp(44px,4.4vw,92px);height:2px;margin-top:-1px;position:absolute;top:50%;left:clamp(14px,1vw,22px)}.hero__scrim{background:var(--scrim);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;z-index:3;position:absolute;inset:0}.hero__menu-wrap{z-index:4;position:absolute;bottom:clamp(18px,3.4vh,36px);left:50%;transform:translate(-50%)}.hero__menu{cursor:pointer;background:0 0;border:0;gap:7px;padding:10px;display:grid}.hero__menu-bar{background:var(--hero-fg);width:30px;height:2px;transition:transform .3s;display:block}.hero__menu:hover .hero__menu-bar:first-child{transform:translateY(-2px)}.hero__menu:hover .hero__menu-bar:last-child{transform:translateY(2px)}.menu-pop{background:var(--panel);opacity:0;visibility:hidden;transform-origin:50% 100%;border-radius:16px;gap:22px;width:272px;margin-left:-136px;padding:24px 32px 30px;transition:background-color .4s;display:grid;position:absolute;bottom:calc(100% + 14px);left:50%;box-shadow:0 18px 50px #00000073}.menu-pop__theme{border-bottom:1px solid var(--panel-border);justify-content:center;align-items:center;gap:12px;padding-bottom:20px;display:flex}.theme-switch{border:1px solid var(--panel-border);cursor:pointer;background:0 0;border-radius:999px;flex:none;width:44px;height:24px;padding:0;transition:background-color .3s,border-color .3s;position:relative}.theme-switch__thumb{background:var(--fg);border-radius:50%;width:18px;height:18px;margin-top:-9px;transition:transform .35s cubic-bezier(.22,1,.36,1),background-color .3s;position:absolute;top:50%;left:2px}.theme-switch[aria-checked=true]{background:var(--fg);border-color:var(--fg)}.theme-switch[aria-checked=true] .theme-switch__thumb{background:var(--bg);transform:translate(20px)}.menu-pop__theme-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-soft);font-size:.8rem;font-weight:500}.menu-pop__nav{justify-items:center;gap:18px;display:grid}.menu-pop__link{color:var(--fg-soft);letter-spacing:.02em;text-transform:uppercase;font-size:1.8rem;font-weight:500;line-height:1.25;text-decoration:none;transition:color .3s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1);position:relative}.menu-pop__link:hover,.menu-pop__link:focus-visible{color:var(--hero-fg);transform:scale(1.15)}.menu-pop__dot{background:var(--fg);opacity:0;border-radius:50%;width:8px;height:8px;margin-top:-4px;transition:opacity .3s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;right:calc(100% + 10px);transform:translate(-8px)scale(.4)}.menu-pop__link:hover .menu-pop__dot,.menu-pop__link:focus-visible .menu-pop__dot{opacity:1;transform:translate(0)scale(1)}@media (width<=860px){.hero{--slot:clamp(120px, 16.5vh, 220px);--title-size:clamp(2rem, 10.5vw, 3.6rem);--image-shift-x:5vw;--title-shift-x:8vw}.hero__indicator{width:34px;left:12px}.project{--media-left:calc(var(--m-left) * .35);--media-w:min(calc(var(--m-w) * 1.6), 76vw);--media-h:calc(var(--m-h) * .85);--title-x:30vw}}@media (prefers-reduced-motion:reduce){.hero{--title-blur-max:6px;--image-blur-max:3px;--fold-max:0;--fold-depth:0}.project,.project__media,.project__title-text{will-change:auto}.hero__menu-bar{transition:none}}.hero__logo{z-index:10;display:block;position:fixed;top:clamp(18px,3vh,32px);left:50%;transform:translate(-50%)}.hero__logo img{width:auto;height:clamp(26px,3.4vh,38px);transition:opacity .3s,transform .45s cubic-bezier(.22,1,.36,1);display:block}.hero__logo:hover img{opacity:.7;transform:scale(1.1)}.hero.is-loading .hero__logo,.hero.is-loading .project__inner,.hero.is-loading .hero__indicator,.hero.is-loading .hero__menu-wrap,.hero.is-armed .project__inner,.hero.is-armed .hero__indicator,.hero.is-armed .hero__menu-wrap{visibility:hidden}
