.project-bits-carousel{touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain;width:100%;position:relative}.project-bits-carousel-viewport{padding:0 16px;overflow:hidden}.project-bits-carousel-track{cursor:grab;transform-style:preserve-3d;will-change:transform;touch-action:pan-y pinch-zoom;align-items:stretch;display:flex}.project-bits-carousel-track:active{cursor:grabbing}.project-bits-carousel-slide{transform-style:preserve-3d;backface-visibility:hidden;flex-shrink:0;display:flex}.project-bits-carousel-slide .project-card--carousel{flex-direction:column;flex:1;width:100%;display:flex;transform:translateZ(1px)}.project-bits-carousel-indicators{justify-content:center;align-items:center;gap:10px;margin-top:18px;padding:0 16px 4px;display:flex}.project-bits-carousel-dot{appearance:none;cursor:pointer;background:#ffffff59;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background-color .15s}.project-bits-carousel-dot.is-active{background:#1eada0}.project-bits-carousel-dot:focus-visible{outline-offset:2px;outline:2px solid #1eada0}
.logoloop{--logoloop-gap:32px;--logoloop-logoHeight:28px;--logoloop-fadeColorAuto:#061312;position:relative}.logoloop--vertical{height:100%;display:inline-block}.logoloop--scale-hover{padding-top:calc(var(--logoloop-logoHeight) * .1);padding-bottom:calc(var(--logoloop-logoHeight) * .1)}.logoloop__track{will-change:transform;-webkit-user-select:none;user-select:none;z-index:0;width:max-content;display:flex;position:relative}.logoloop--vertical .logoloop__track{flex-direction:column;width:100%;height:max-content}.logoloop__list{align-items:center;margin:0;padding:0;list-style:none;display:flex}.logoloop--vertical .logoloop__list{flex-direction:column}.logoloop__item{margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);flex:none;line-height:1}.logoloop--vertical .logoloop__item{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__item:last-child{margin-right:var(--logoloop-gap)}.logoloop--vertical .logoloop__item:last-child{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__node{align-items:center;display:inline-flex}.logoloop__item img{height:var(--logoloop-logoHeight);object-fit:contain;width:auto;image-rendering:-webkit-optimize-contrast;-webkit-user-drag:none;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1);display:block}.logoloop--scale-hover .logoloop__item{overflow:visible}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform-origin:50%;transform:scale(1.15)}.logoloop--scale-hover .logoloop__node{transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop__link{border-radius:4px;align-items:center;text-decoration:none;transition:opacity .2s;display:inline-flex}.logoloop__link:hover{opacity:.85}.logoloop__link:focus-visible{outline-offset:2px;outline:2px solid}.logoloop--fade:before,.logoloop--fade:after{content:"";pointer-events:none;z-index:10;width:clamp(24px,8%,120px);position:absolute;top:0;bottom:0}.logoloop--fade:before{background:linear-gradient(to right, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);left:0}.logoloop--fade:after{background:linear-gradient(to left, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);right:0}@media (prefers-reduced-motion:reduce){.logoloop__track{transform:translate(0,0)!important}.logoloop__item img,.logoloop__node{transition:none!important}}
.scroll-reveal{margin:0}.scroll-reveal-text{display:block}.word{display:inline-block}
.paint-container{object-fit:contain;width:100%;height:100%;display:block}
