.pattern-waves{position:relative;width:100%;height:100%;overflow:hidden}.circular-carousel{--cc-fade: #000000;--cc-radius: 12px;--cc-inner: .4;position:relative;width:100%;height:100%;overflow:hidden;outline:none;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.circular-carousel[data-axis=x]{touch-action:pan-x}.circular-carousel[data-draggable]{cursor:grab}.circular-carousel[data-dragging]{cursor:grabbing}.circular-carousel:focus-visible{box-shadow:inset 0 0 0 2px #80808c8c}.circular-carousel__view{position:absolute;top:0;right:0;bottom:0;left:0}.circular-carousel[data-shape=wheel] .circular-carousel__view{-webkit-mask-image:linear-gradient(to bottom,transparent,#000000 18%,#000000 82%,transparent);mask-image:linear-gradient(to bottom,transparent,#000000 18%,#000000 82%,transparent)}.circular-carousel[data-shape=panorama] .circular-carousel__view{-webkit-mask-image:linear-gradient(to right,transparent,#000000 12%,#000000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000000 12%,#000000 88%,transparent)}.circular-carousel__stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .45s ease}.circular-carousel[data-ready] .circular-carousel__stage{opacity:1}.circular-carousel__camera,.circular-carousel__ring,.circular-carousel__card{width:0;height:0;transform-style:preserve-3d}.circular-carousel__camera{position:relative}.circular-carousel__ring,.circular-carousel__card{position:absolute;left:0;top:0}.circular-carousel__tile{position:absolute;outline:1px solid transparent;backface-visibility:hidden;-webkit-backface-visibility:hidden}.circular-carousel__frame{position:absolute;left:0;top:0;width:100%;overflow:hidden}.circular-carousel__photo{position:absolute;display:block;max-width:none;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.circular-carousel__photo--leaving{animation:circular-carousel-leave .7s cubic-bezier(.33,1,.68,1) both}.circular-carousel__shade,.circular-carousel__inner{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.circular-carousel__shade{background:var(--cc-fade);opacity:var(--cc-depth, 0)}.circular-carousel__inner{background:#000;opacity:var(--cc-inner)}.circular-carousel__caption{position:absolute;left:0;right:0;bottom:22px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 16px;color:inherit;text-align:center;pointer-events:none;animation:circular-carousel-reveal .9s ease both}.circular-carousel__title{display:flex;max-width:100%;flex-direction:column;align-items:center;font-size:15px;font-weight:500;line-height:1.35;animation:circular-carousel-title .52s cubic-bezier(.22,1,.36,1)}.circular-carousel__subtitle{font-weight:400;opacity:.6}.circular-carousel__count{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-variant-numeric:tabular-nums;line-height:1;opacity:.5}.circular-carousel__slash{opacity:.6}.circular-carousel__digits{display:inline-flex}.circular-carousel__digit{display:inline-block;height:1em;overflow:hidden}.circular-carousel__reel{display:flex;flex-direction:column;transition:transform .6s cubic-bezier(.22,1,.36,1)}.circular-carousel__reel>span{height:1em}.circular-carousel__live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes circular-carousel-title{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes circular-carousel-leave{0%{opacity:1}to{opacity:0}}@keyframes circular-carousel-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.circular-carousel__stage,.circular-carousel__reel{transition:none}.circular-carousel__caption,.circular-carousel__title{animation:none}}.masonry{position:relative;width:100%}.masonry__item{position:absolute;top:0;left:0;will-change:transform}.masonry__item[data-dragging]{z-index:10}.masonry__item[data-hidden]{visibility:hidden}.masonry__card{position:relative;display:block;width:100%;height:100%;padding:0;border:0;border-radius:var(--masonry-radius, 12px);background:none;color:inherit;font:inherit;text-align:left;text-decoration:none;outline:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transform:perspective(900px) rotateX(var(--masonry-tilt-x, 0deg)) rotateY(var(--masonry-tilt-y, 0deg)) translateY(var(--masonry-lift, 0px)) scale(var(--masonry-scale, 1));transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s cubic-bezier(.2,.8,.2,1),opacity .35s ease}.masonry__card:focus-visible{outline:2px solid currentColor;outline-offset:3px}.masonry[data-hover=lift] .masonry__item:hover .masonry__card{--masonry-lift: -6px;--masonry-scale: 1.02;box-shadow:0 22px 40px -22px #0000008c}.masonry[data-hover=tilt] .masonry__card{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .5s cubic-bezier(.2,.8,.2,1),opacity .35s ease}.masonry[data-hover=tilt] .masonry__item:hover .masonry__card{--masonry-scale: 1.03;box-shadow:0 26px 44px -24px #0000008c}.masonry__item[data-dragging] .masonry__card{--masonry-scale: 1.05;box-shadow:0 34px 60px -26px #0009;cursor:grabbing}.masonry__item[data-dimmed] .masonry__card{opacity:.35}.masonry__media{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:var(--masonry-radius, 12px);background:var(--surface);isolation:isolate}.masonry__parallax{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.masonry__image{display:block;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:grayscale(1) brightness(1.14);transition:opacity .5s ease,filter .4s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.masonry__image[data-loaded]{opacity:1}.masonry[data-hover=zoom] .masonry__item:hover .masonry__image,.masonry__card:focus-visible .masonry__image{filter:grayscale(0) brightness(1);transform:scale(1.045)}.masonry__caption{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:2px;padding:40px 14px 12px;color:var(--foreground);background:linear-gradient(180deg,#0000,#00000005,#00000014,#0000002e,#0000004d,#0000006b 75%,#00000080 88%,#0000008a);pointer-events:none;transition:opacity .35s ease,transform .5s cubic-bezier(.2,.8,.2,1)}.masonry__caption[data-mode=hover]{opacity:0;transform:translateY(6px)}.masonry__item:hover .masonry__caption[data-mode=hover],.masonry__card:focus-visible .masonry__caption[data-mode=hover]{opacity:1;transform:none}.masonry__title{font-size:14px;font-weight:600;line-height:1.3;letter-spacing:-.01em}.masonry__text{font-size:12px;line-height:1.4;opacity:.8}.masonry__ghost{position:absolute;top:0;left:0;pointer-events:none}.masonry-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.masonry-lightbox__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--background) 96%,transparent)}.masonry-lightbox__image{position:fixed;top:0;left:0;display:block;object-fit:cover;transform-origin:0 0;will-change:transform;cursor:zoom-out;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.masonry-lightbox__caption{position:fixed;right:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0 clamp(20px,8vw,120px);color:var(--foreground);font-size:14px;line-height:1.5;text-align:center;pointer-events:none}.masonry-lightbox__caption a{display:inline-flex;align-items:center;gap:4px;color:inherit;font-weight:600;text-decoration:none;pointer-events:auto;opacity:.8;transition:opacity .2s ease}.masonry-lightbox__caption a:hover,.masonry-lightbox__caption a:focus-visible{opacity:1}.masonry-lightbox__muted{opacity:.6}.masonry-lightbox__button{position:absolute;display:grid;width:44px;height:44px;place-items:center;padding:0;border:0;border-radius:999px;color:var(--foreground);background:color-mix(in srgb,var(--surface) 86%,transparent);box-shadow:inset 0 0 0 1px var(--line-strong);cursor:pointer;transition:background .2s ease}.masonry-lightbox__button:hover{background:color-mix(in srgb,var(--surface-2) 86%,transparent)}.masonry-lightbox__button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.masonry-lightbox__close{top:16px;right:16px}.masonry-lightbox__prev{top:calc(50% - 22px);left:16px}.masonry-lightbox__next{top:calc(50% - 22px);right:16px}.engineering-gallery-host{width:100%;margin-top:2rem}.masonry{min-height:1px}.masonry__item{touch-action:manipulation}.masonry__image[data-loaded]{filter:grayscale(1) brightness(1.14)}.masonry__item:hover .masonry__image[data-loaded],.masonry__card:focus-visible .masonry__image[data-loaded]{filter:grayscale(0) brightness(1)}.masonry-lightbox__caption{z-index:1001}.masonry-lightbox__caption>span:first-child{font-size:clamp(1rem,1.35vw,1.35rem);font-weight:600}.masonry-lightbox__muted{max-width:min(900px,84vw);font-size:clamp(.9rem,1.05vw,1.06rem);opacity:.82}.masonry-lightbox__image{object-fit:contain}@media (max-width: 640px){.engineering-gallery-host{margin-top:1.5rem}.masonry{--masonry-radius: 2px !important}.masonry-lightbox__caption{padding-inline:58px}.masonry-lightbox__muted{max-width:86vw}.masonry-lightbox__close{top:10px;right:10px}}
