.page-content__body{padding-block:var(--jec-space-xl) var(--jec-space-xl)}.gallery-grid{grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2vw,2.25rem);width:100%;display:grid}@media (width>=700px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1400px){.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.gallery-photo{border-radius:var(--jec-radius-base);background:#2d72a81a;border:1px solid #2d72a829;margin:0;padding:clamp(.75rem,1.2vw,1rem);transition:transform .25s,box-shadow .25s;box-shadow:0 14px 34px #00000024}.gallery-photo__image{aspect-ratio:4/3;border-radius:var(--jec-radius-base);width:100%;display:block;overflow:hidden}.gallery-photo__trigger{appearance:none;border-radius:inherit;cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;overflow:hidden}.gallery-photo__trigger:focus-visible{outline:2px solid var(--jec-color-blue);outline-offset:3px}.gallery-photo__trigger img{object-fit:cover;object-position:center;border-radius:inherit;width:100%;height:100%;margin:0;display:block}.gallery-photo__name{color:var(--jec-color-blue-dark);margin:.6rem 0 0;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.2}@media (hover:hover) and (pointer:fine){.gallery-photo:hover{transform:translateY(-2px);box-shadow:0 18px 40px #0003}}.gallery-lightbox{z-index:9999;padding:clamp(1rem,3vw,2rem);display:none;position:fixed;inset:0}.gallery-lightbox.is-open{place-items:center;display:grid}.gallery-lightbox[hidden]{pointer-events:none!important;display:none!important}.gallery-lightbox__backdrop{z-index:0;backdrop-filter:blur(6px);cursor:zoom-out;background:#000000a6;position:absolute;inset:0}.gallery-lightbox__zone{z-index:1;cursor:pointer;background:0 0;border:0;width:clamp(70px,10vw,140px);padding:0;display:none;position:absolute;top:0;bottom:0}.gallery-lightbox__zone--prev{left:0}.gallery-lightbox__zone--next{right:0}.gallery-lightbox__dialog{z-index:2;border-radius:var(--jec-radius-base);backdrop-filter:blur(10px);touch-action:pan-y;background:#0212208c;border:1px solid #ffffff29;place-items:center;gap:.85rem;width:fit-content;max-width:min(92vw,1100px);max-height:88vh;margin:0;padding:clamp(1rem,2vw,1.25rem);display:grid;position:relative;box-shadow:0 22px 70px #00000059}.gallery-lightbox__img{object-fit:contain;border-radius:var(--jec-radius-base);cursor:zoom-out;width:auto;max-width:100%;height:auto;max-height:76vh;margin:0 auto;display:block}.gallery-lightbox__caption{z-index:1;width:max-content;max-width:calc(100% - 6rem);min-height:1em;color:var(--jec-color-white);text-align:center;background:#00000059;border-radius:999px;margin:0;padding:.35rem .75rem;font-size:clamp(.8rem,1vw,.95rem);line-height:1.3;position:absolute;bottom:.9rem;left:50%;transform:translate(-50%)}.gallery-lightbox__caption[hidden]{display:none}.gallery-lightbox__nav{z-index:3;backdrop-filter:blur(10px);width:44px;height:44px;color:var(--jec-color-white);cursor:pointer;user-select:none;background:#0212208c;border:1px solid #ffffff2e;border-radius:999px;place-items:center;padding:0;font-size:28px;line-height:1;display:grid;position:fixed;top:50%;transform:translateY(-50%);box-shadow:0 12px 30px #00000040}.gallery-lightbox__nav:disabled{opacity:.45;cursor:default}.gallery-lightbox__nav:focus-visible{outline-offset:2px;outline:2px solid #ffffffb8}.gallery-lightbox__prev{left:.75rem}.gallery-lightbox__next{right:.75rem}.gallery-lightbox__close{width:2.75rem;height:2.75rem;color:var(--jec-color-white);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;place-items:center;padding:0;font-size:1.8rem;line-height:1;display:grid;position:absolute;top:.5rem;right:.5rem}.gallery-lightbox__close:focus-visible{outline-offset:2px;outline:2px solid #ffffffb8}@media (hover:hover) and (pointer:fine){.gallery-lightbox__zone{display:block}.gallery-lightbox__prev{left:2vw}.gallery-lightbox__next{right:2vw}}@media (width<=700px){.gallery-lightbox__nav{width:40px;height:40px;font-size:24px}.gallery-lightbox__prev{left:.5rem}.gallery-lightbox__next{right:.5rem}}
