.ProjectCarousel-module__LUcQ_q__page{background-color:var(--slate);width:100%;height:100svh;position:relative;overflow:hidden}.ProjectCarousel-module__LUcQ_q__bg{z-index:0;background-color:var(--slate);position:fixed;inset:0}.ProjectCarousel-module__LUcQ_q__bgImg{opacity:0;transition:opacity var(--duration-slow) var(--ease-out);position:absolute;inset:0}.ProjectCarousel-module__LUcQ_q__bgImg[data-active]{opacity:1}.ProjectCarousel-module__LUcQ_q__bgImgInner{object-fit:cover;opacity:0;transition:opacity var(--duration-mid) var(--ease-out)}.ProjectCarousel-module__LUcQ_q__bgImg[data-loaded] .ProjectCarousel-module__LUcQ_q__bgImgInner{opacity:1}.ProjectCarousel-module__LUcQ_q__scrim{z-index:1;pointer-events:none;background:linear-gradient(to top, rgba(var(--scrim-ink), .86) 0%, rgba(var(--scrim-ink), .45) 42%, rgba(var(--scrim-ink), 0) 70%);height:48vh;position:fixed;bottom:0;left:0;right:0}.ProjectCarousel-module__LUcQ_q__scrimTop{z-index:1;pointer-events:none;background:linear-gradient(to bottom, rgba(var(--scrim-ink), .5), rgba(var(--scrim-ink), 0));height:20vh;position:fixed;top:0;left:0;right:0}.ProjectCarousel-module__LUcQ_q__surface{z-index:2;cursor:grab;touch-action:none;position:absolute;inset:0}.ProjectCarousel-module__LUcQ_q__surface.ProjectCarousel-module__LUcQ_q__dragging{cursor:grabbing}.ProjectCarousel-module__LUcQ_q__carousel{padding-bottom:max(clamp(56px, 9vh, 92px), calc(env(safe-area-inset-bottom) + 32px));position:absolute;bottom:0;left:0;right:0}.ProjectCarousel-module__LUcQ_q__viewport{outline:none;width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 13% 87%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 13% 87%,#0000 100%)}.ProjectCarousel-module__LUcQ_q__viewport:focus-visible{outline:2px solid var(--wool);outline-offset:-2px;box-shadow:inset 0 0 0 3px var(--slate)}.ProjectCarousel-module__LUcQ_q__track{will-change:transform;visibility:hidden;width:max-content;transition:transform var(--duration-slow) var(--ease-out);align-items:flex-end;gap:clamp(44px,8vw,132px);display:flex;transform:translate(0)}.ProjectCarousel-module__LUcQ_q__track[data-ready]{visibility:visible}.ProjectCarousel-module__LUcQ_q__track.ProjectCarousel-module__LUcQ_q__dragging{transition:none}.ProjectCarousel-module__LUcQ_q__item{min-height:44px;color:var(--wool);text-align:center;opacity:.9;transition:opacity var(--duration-mid) var(--ease-out);-webkit-user-select:none;user-select:none;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:8px;padding:10px;text-decoration:none;display:flex}.ProjectCarousel-module__LUcQ_q__item[data-active]{opacity:1}.ProjectCarousel-module__LUcQ_q__item:focus-visible{outline:1px solid var(--wool);outline-offset:6px;border-radius:2px}.ProjectCarousel-module__LUcQ_q__itemTitle{font-family:var(--font-display);letter-spacing:.01em;white-space:nowrap;font-size:clamp(.9375rem,1.5vw,1.1875rem);font-weight:400;line-height:1.15}.ProjectCarousel-module__LUcQ_q__item[data-active] .ProjectCarousel-module__LUcQ_q__itemTitle{font-weight:600}.ProjectCarousel-module__LUcQ_q__itemMeta{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:400}.ProjectCarousel-module__LUcQ_q__baseline{z-index:3;pointer-events:none;height:3px;position:absolute;bottom:clamp(24px,4vh,38px);left:clamp(24px,5vw,60px);right:clamp(24px,5vw,60px)}.ProjectCarousel-module__LUcQ_q__baseline:before{content:"";background:#f6f2eb57;height:1px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.ProjectCarousel-module__LUcQ_q__progress{transform-origin:0;width:100%;transition:transform var(--duration-slow) var(--ease-out);will-change:transform;background:#f6f2ebf2;position:absolute;top:0;bottom:0;left:0}@media (prefers-reduced-motion:reduce){.ProjectCarousel-module__LUcQ_q__bgImg,.ProjectCarousel-module__LUcQ_q__track,.ProjectCarousel-module__LUcQ_q__item,.ProjectCarousel-module__LUcQ_q__progress{transition:none!important}}@media (max-width:767px){.ProjectCarousel-module__LUcQ_q__itemTitle{font-size:clamp(.8125rem,3.4vw,1rem)}.ProjectCarousel-module__LUcQ_q__track{gap:clamp(20px,6vw,40px)}.ProjectCarousel-module__LUcQ_q__carousel{padding-bottom:max(56px, calc(env(safe-area-inset-bottom) + 32px))}}
