.media-mosaic-gallery,.media-mosaic-gallery--project-detail{--media-mosaic-size: 72px;--media-mosaic-gap: .5rem;--media-mosaic-rows: 6}.media-mosaic-gallery--projects-index{--media-mosaic-size: 128px;--media-mosaic-gap: .5rem;--media-mosaic-rows: 4}.media-mosaic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--media-mosaic-size),1fr));grid-auto-rows:var(--media-mosaic-size);gap:var(--media-mosaic-gap);height:auto;overflow-y:visible;padding-right:0}.media-mosaic-grid__item{position:relative;overflow:hidden;border-radius:.75rem;border-width:1px;border-color:#0000001a;background-color:#ffffff80;padding:0;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1)}.media-mosaic-grid__item:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-color:#0003}.media-mosaic-grid__item:is(.dark *){border-color:#ffffff26;background-color:#ffffff0f}.media-mosaic-grid__item:hover:is(.dark *){border-color:#ffffff4d}.media-mosaic-grid__item{aspect-ratio:1 / 1}.media-mosaic-gallery--project-detail .media-mosaic-grid{grid-template-columns:repeat(auto-fill,72px);grid-auto-rows:72px;justify-content:start;height:auto;overflow-y:visible;padding-right:0}.media-mosaic-gallery--project-detail .media-mosaic-grid__item{width:72px;height:72px;max-width:72px;max-height:72px}.media-mosaic-gallery--projects-index .media-mosaic-grid{grid-template-columns:repeat(auto-fill,128px);grid-auto-rows:128px;justify-content:start;height:auto;overflow-y:visible;padding-right:0}.media-mosaic-gallery--projects-index .media-mosaic-grid__item{width:128px;height:128px;max-width:128px;max-height:128px}.media-mosaic-grid__item img{height:100%;width:100%;-o-object-fit:cover;object-fit:cover;aspect-ratio:1 / 1}.media-mosaic-grid__badge{pointer-events:none;position:absolute;bottom:.25rem;left:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;border-radius:.375rem;background-color:#000000a6;padding:.125rem .375rem;font-size:.65rem;font-weight:500;line-height:1.25;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.media-lightbox{border-width:0px;background-color:transparent;padding:0;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));width:min(1120px,96vw);max-width:96vw}.media-lightbox::backdrop{background-color:#0c0a09e6;--tw-backdrop-blur: blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);animation:media-fade-in .24s ease-out}.media-lightbox__panel{display:flex;max-height:92vh;flex-direction:column;gap:.75rem;border-radius:1rem;border-width:1px;border-color:#ffffff26;background-color:#0c0a09f2;padding:.75rem;--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media(min-width:768px){.media-lightbox__panel{gap:1rem;padding:1rem}}.media-lightbox__panel{animation:media-slide-up .24s ease-out}.media-lightbox__header{display:flex;align-items:flex-start;gap:.75rem}.media-lightbox__project{min-height:1.5rem;flex:1 1 0%;font-size:1rem;line-height:1.65;font-weight:500;color:#ffffffe6}.media-lightbox__project a{color:#ffffffe6;text-decoration-line:underline;text-decoration-color:#ffffff59;text-underline-offset:2px}.media-lightbox__project a:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));text-decoration-color:#fff9}.media-lightbox__counter{font-size:.75rem;line-height:1.5;--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);color:#fffc}.media-lightbox__close{border-radius:.5rem;border-width:1px;border-color:#ffffff4d;padding:.25rem .625rem;font-size:.75rem;line-height:1.5;font-weight:500;color:#ffffffe6;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.media-lightbox__close:hover{background-color:#ffffff1a;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.media-lightbox__stage{display:flex;min-height:0px;align-items:center;gap:.5rem}.media-lightbox__nav{display:none;height:2.5rem;width:2.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;border-color:#ffffff40;background-color:#0006;font-size:1.333rem;line-height:1.35;color:#fffffff2}@media(min-width:768px){.media-lightbox__nav{display:inline-flex}}.media-lightbox__nav{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.media-lightbox__nav:hover{background-color:#000000b3}.media-lightbox__image{min-height:0px;width:100%;border-radius:.75rem;border-width:1px;border-color:#ffffff26;--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));-o-object-fit:contain;object-fit:contain;max-height:62vh}@media(min-width:768px){.media-lightbox__image{max-height:68vh}}.media-lightbox__caption{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:1.5rem;font-size:1rem;line-height:1.65;color:#ffffffd9}.media-lightbox__strip{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.media-lightbox__strip-item{flex-shrink:0;overflow:hidden;border-radius:.5rem;border-width:1px;border-color:transparent;padding:0;opacity:.7;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.media-lightbox__strip-item:hover{opacity:1}.media-lightbox__strip-item img{height:56px;width:56px;-o-object-fit:cover;object-fit:cover}.media-lightbox__strip-item.is-active{border-color:#fffc;opacity:1}html.media-gallery-open,html.media-gallery-open body{overflow:hidden}@media(min-width:768px){.media-mosaic-gallery{--media-mosaic-size: 80px}.media-mosaic-gallery--project-detail{--media-mosaic-size: 72px}.media-mosaic-gallery--projects-index{--media-mosaic-size: 128px}}@keyframes media-fade-in{0%{opacity:0}to{opacity:1}}@keyframes media-slide-up{0%{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
